Make Catch2ConfigVersion.cmake be generated as arch-independent

As it turns out, there is a fairly reasonable workaround available.

Closes #1368
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 21f52ff..8156fda 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -125,11 +125,22 @@
         ${CATCH_CMAKE_CONFIG_DESTINATION}
     )
 
+    # By default, FooConfigVersion is tied to architecture that it was
+    # generated on. Because Catch2 is header-only, it is arch-independent
+    # and thus Catch2ConfigVersion should not be tied to the architecture
+    # it was generated on.
+    #
+    # CMake does not provide a direct customization point for this in
+    # `write_basic_package_version_file`, but it can be accomplished
+    # indirectly by temporarily undefining `CMAKE_SIZEOF_VOID_P`.
+    set(CATCH2_CMAKE_SIZEOF_VOID_P ${CMAKE_SIZEOF_VOID_P})
+    unset(CMAKE_SIZEOF_VOID_P)
     write_basic_package_version_file(
       "${CMAKE_CURRENT_BINARY_DIR}/Catch2ConfigVersion.cmake"
       COMPATIBILITY
         SameMajorVersion
     )
+    set(CMAKE_SIZEOF_VOID_P ${CATCH2_CMAKE_SIZEOF_VOID_P})
 
     install(
       DIRECTORY