aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/check
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/check
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/check')
-rw-r--r--vcpkg/ports/check/fix-lib-path.patch43
-rw-r--r--vcpkg/ports/check/linkage.patch20
-rw-r--r--vcpkg/ports/check/portfile.cmake36
-rw-r--r--vcpkg/ports/check/usage4
-rw-r--r--vcpkg/ports/check/vcpkg.json18
5 files changed, 121 insertions, 0 deletions
diff --git a/vcpkg/ports/check/fix-lib-path.patch b/vcpkg/ports/check/fix-lib-path.patch
new file mode 100644
index 0000000..d3086e7
--- /dev/null
+++ b/vcpkg/ports/check/fix-lib-path.patch
@@ -0,0 +1,43 @@
+diff --git a/doc/example/src/CMakeLists.txt b/doc/example/src/CMakeLists.txt
+index b5e211e..2a92a1a 100644
+--- a/doc/example/src/CMakeLists.txt
++++ b/doc/example/src/CMakeLists.txt
+@@ -18,7 +18,7 @@ target_link_libraries(main money)
+
+ install(TARGETS money
+ RUNTIME DESTINATION bin
+- LIBRARY DESTINATION lib
+- ARCHIVE DESTINATION lib)
++ LIBRARY DESTINATION lib/manual-link
++ ARCHIVE DESTINATION lib/manual-link)
+
+ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/money.h DESTINATION include)
+diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
+index 38cbc53..d8a4272 100644
+--- a/lib/CMakeLists.txt
++++ b/lib/CMakeLists.txt
+@@ -75,5 +75,11 @@ set(HEADERS libcompat.h)
+
+ add_library(compat STATIC ${SOURCES} ${HEADERS})
+
++install(TARGETS compat
++ RUNTIME DESTINATION bin
++ LIBRARY DESTINATION lib/manual-link
++ ARCHIVE DESTINATION lib/manual-link
++)
++
+ # vim: shiftwidth=2:softtabstop=2:tabstop=2:expandtab:autoindent
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 4a02dbe..3bf2fa6 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -191,7 +191,7 @@ if(NOT THIS_IS_SUBPROJECT)
+ install(TARGETS check checkShared
+ EXPORT check-targets
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/manual-link
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+ )
diff --git a/vcpkg/ports/check/linkage.patch b/vcpkg/ports/check/linkage.patch
new file mode 100644
index 0000000..3c18c52
--- /dev/null
+++ b/vcpkg/ports/check/linkage.patch
@@ -0,0 +1,20 @@
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 4a02dbe..3e147e4 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -188,7 +188,14 @@ target_include_directories(checkShared
+ )
+
+ if(NOT THIS_IS_SUBPROJECT)
+- install(TARGETS check checkShared
++ if(BUILD_SHARED_LIBS)
++ set(lib checkShared)
++ set_target_properties(check PROPERTIES EXCLUDE_FROM_ALL 1)
++ else()
++ set(lib check)
++ set_target_properties(checkShared PROPERTIES EXCLUDE_FROM_ALL 1)
++ endif()
++ install(TARGETS ${lib}
+ EXPORT check-targets
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/manual-link
diff --git a/vcpkg/ports/check/portfile.cmake b/vcpkg/ports/check/portfile.cmake
new file mode 100644
index 0000000..3033360
--- /dev/null
+++ b/vcpkg/ports/check/portfile.cmake
@@ -0,0 +1,36 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO libcheck/check
+ REF 11970a7e112dfe243a2e68773f014687df2900e8 # 0.15.2
+ SHA512 210c9617fa1c1ce16bef983b0e6cb587b1774c3f7ce27a53ca7799642dc7a14be8de567d69dc0e57845684c6f7991d772c73654f63c8755afda3b37a35c7156e
+ HEAD_REF master
+ PATCHES
+ fix-lib-path.patch
+ linkage.patch
+)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ -DBUILD_TESTING=OFF
+ -DCHECK_ENABLE_GCOV=OFF
+ -DCHECK_ENABLE_TESTS=OFF
+ -DCHECK_ENABLE_TIMEOUT_TESTS=OFF
+ -DENABLE_MEMORY_LEAKING_TESTS=OFF
+ -DINSTALL_CHECKMK=OFF
+)
+
+vcpkg_cmake_install()
+vcpkg_copy_pdbs()
+vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/check)
+vcpkg_fixup_pkgconfig()
+
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic" AND VCPKG_TARGET_IS_WINDOWS)
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/check.h" "#define CK_DLL_EXP" "#define CK_DLL_EXP __declspec(dllimport)")
+endif()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/man")
+
+file(COPY "${CURRENT_PORT_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/COPYING.LESSER")
diff --git a/vcpkg/ports/check/usage b/vcpkg/ports/check/usage
new file mode 100644
index 0000000..a511e13
--- /dev/null
+++ b/vcpkg/ports/check/usage
@@ -0,0 +1,4 @@
+check provides CMake targets:
+
+ find_package(check CONFIG REQUIRED)
+ target_link_libraries(main PRIVATE $<IF:$<TARGET_EXISTS:Check::check>,Check::check,Check::checkShared>)
diff --git a/vcpkg/ports/check/vcpkg.json b/vcpkg/ports/check/vcpkg.json
new file mode 100644
index 0000000..dbc06c3
--- /dev/null
+++ b/vcpkg/ports/check/vcpkg.json
@@ -0,0 +1,18 @@
+{
+ "name": "check",
+ "version": "0.15.2",
+ "port-version": 5,
+ "description": "A unit testing framework for C",
+ "homepage": "https://github.com/libcheck/check",
+ "license": "LGPL-2.1-only",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}