aboutsummaryrefslogtreecommitdiff
path: root/ports
diff options
context:
space:
mode:
authorMichael Wild <michael.andreas.wild@gmail.com>2021-04-20 01:48:12 +0200
committerGitHub <noreply@github.com>2021-04-19 16:48:12 -0700
commitf9bd4c8740f3f4e5261eb5df2aeefaff1f1571d0 (patch)
treef3130006ca3de73d23d327ad064b36f92c9160aa /ports
parent4c830b15161ac060fb48d175e0031677ba6e773e (diff)
downloadvcpkg-f9bd4c8740f3f4e5261eb5df2aeefaff1f1571d0.tar.gz
vcpkg-f9bd4c8740f3f4e5261eb5df2aeefaff1f1571d0.zip
[catch2] Fix share/catch2 directory name conflict (#17271)
Catch2 installs into share/Catch2/ and lib/cmake/Catch2. The vcpkg_fixup_cmake_targets() function tries to move the contents from the latter directory to share/catch2, i.e. differing in case w.r.t. the former. On Linux this results in both names being present. On pure Windows the first name "wins". It breaks in a Linux Docker container where the installation root is located on a bound directory that is on a case-insensitive file system, such as from a host running Windows. Fixes: #17228.
Diffstat (limited to 'ports')
-rw-r--r--ports/catch2/CONTROL1
-rw-r--r--ports/catch2/portfile.cmake11
2 files changed, 8 insertions, 4 deletions
diff --git a/ports/catch2/CONTROL b/ports/catch2/CONTROL
index add0f035e..3d56f8060 100644
--- a/ports/catch2/CONTROL
+++ b/ports/catch2/CONTROL
@@ -1,4 +1,5 @@
Source: catch2
Version: 2.13.1
+Port-Version: 1
Description: A modern, header-only test framework for unit testing.
Homepage: https://github.com/catchorg/Catch2
diff --git a/ports/catch2/portfile.cmake b/ports/catch2/portfile.cmake
index 72365eb46..f767f9eec 100644
--- a/ports/catch2/portfile.cmake
+++ b/ports/catch2/portfile.cmake
@@ -16,13 +16,16 @@ vcpkg_configure_cmake(
vcpkg_install_cmake()
+file(RENAME "${CURRENT_PACKAGES_DIR}/share/Catch2" "${CURRENT_PACKAGES_DIR}/share/catch2")
+file(RENAME "${CURRENT_PACKAGES_DIR}/debug/share/Catch2" "${CURRENT_PACKAGES_DIR}/debug/share/catch2")
+
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Catch2)
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib)
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug" "${CURRENT_PACKAGES_DIR}/lib")
-if(NOT EXISTS ${CURRENT_PACKAGES_DIR}/include/catch2/catch.hpp)
+if(NOT EXISTS "${CURRENT_PACKAGES_DIR}/include/catch2/catch.hpp")
message(FATAL_ERROR "Main includes have moved. Please update the forwarder.")
endif()
-file(WRITE ${CURRENT_PACKAGES_DIR}/include/catch.hpp "#include <catch2/catch.hpp>")
-file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
+file(WRITE "${CURRENT_PACKAGES_DIR}/include/catch.hpp" "#include <catch2/catch.hpp>")
+file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)