aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/ztd-idk
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/ztd-idk
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/ztd-idk')
-rw-r--r--vcpkg/ports/ztd-idk/fix-cmake-install.patch187
-rw-r--r--vcpkg/ports/ztd-idk/portfile.cmake22
-rw-r--r--vcpkg/ports/ztd-idk/vcpkg.json17
3 files changed, 226 insertions, 0 deletions
diff --git a/vcpkg/ports/ztd-idk/fix-cmake-install.patch b/vcpkg/ports/ztd-idk/fix-cmake-install.patch
new file mode 100644
index 0000000..e657f49
--- /dev/null
+++ b/vcpkg/ports/ztd-idk/fix-cmake-install.patch
@@ -0,0 +1,187 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 746afa7..803b82e 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -34,11 +34,6 @@ cmake_policy(VERSION 3.21)
+ # # Project kickstart
+ # Includes a bunch of basic flags and utilities shared across projects
+ # See more at the github repository link below
+-include(FetchContent)
+-FetchContent_Declare(ztd.cmake
+- GIT_REPOSITORY https://github.com/soasis/cmake.git
+- GIT_TAG main)
+-FetchContent_MakeAvailable(ztd.cmake)
+ set(CMAKE_PROJECT_INCLUDE ${ZTD_CMAKE_PROJECT_PRELUDE})
+
+ # # Project declaration
+@@ -50,6 +45,8 @@ project(ztd.idk
+ HOMEPAGE_URL "https://ztdidk.rtfd.io/"
+ LANGUAGES CXX C)
+
++include(GNUInstallDirs)
++include(CMakePackageConfigHelpers)
+ if(ZTD_IDK_READTHEDOCS)
+ # ReadTheDocs seems unable to handle the include at the project level: something must be going wrong?
+ include(CheckCXXCompilerFlag)
+@@ -89,9 +86,6 @@ if(ZTD_IDK_IS_TOP_LEVEL_PROJECT)
+ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bin")
+ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bin")
+
+- if(NOT DEFINED CMAKE_CXX_STANDARD)
+- set(CMAKE_CXX_STANDARD 17)
+- endif()
+
+ if(NOT DEFINED CMAKE_C_STANDARD)
+ set(CMAKE_C_STANDARD 11)
+@@ -133,6 +127,7 @@ endif()
+ # ztd.version
+ add_library(ztd.version INTERFACE)
+ add_library(ztd::version ALIAS ztd.version)
++target_compile_features(ztd.version INTERFACE cxx_std_20)
+ target_include_directories(ztd.version
+ INTERFACE
+ $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>
+@@ -143,20 +138,32 @@ install(DIRECTORY include/
+ ${CMAKE_INSTALL_INCLUDEDIR}
+ )
+
++install(TARGETS ztd.version
++ EXPORT ztd.version-targets
++ DESTINATION lib)
+ configure_package_config_file(
+ cmake/ztd.version-config.cmake.in
+ "${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.version/ztd.version-config.cmake"
+- INSTALL_DESTINATION lib/cmake/ztd.version
++ INSTALL_DESTINATION share/ztd.version
+ NO_CHECK_REQUIRED_COMPONENTS_MACRO
+ )
+ write_basic_package_version_file(
+ "${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.version/ztd.version-config-version.cmake"
+ COMPATIBILITY SameMajorVersion
+ )
++install(FILES
++ ${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.version/ztd.version-config.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.version/ztd.version-config-version.cmake
++ DESTINATION share/ztd.version
++ )
+ export(TARGETS ztd.version
+ FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.version/ztd.version-targets.cmake"
+ )
++install(EXPORT ztd.version-targets
++ FILE ztd.version-targets.cmake
++ DESTINATION share/ztd.version
++)
+
+ # ztd.tag_invoke
+ file(GLOB_RECURSE ztd.tag_invoke.includes
+@@ -166,6 +173,7 @@ file(GLOB_RECURSE ztd.tag_invoke.includes
+ )
+
+ add_library(ztd.tag_invoke INTERFACE)
++target_compile_features(ztd.tag_invoke INTERFACE cxx_std_20)
+ add_library(ztd::tag_invoke ALIAS ztd.tag_invoke)
+ target_include_directories(ztd.tag_invoke
+ INTERFACE
+@@ -179,10 +187,14 @@ install(DIRECTORY include/
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+ )
+
++install(TARGETS ztd.tag_invoke
++ EXPORT ztd.tag_invoke-targets
++ DESTINATION lib)
++
+ configure_package_config_file(
+ cmake/ztd.tag_invoke-config.cmake.in
+ "${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.tag_invoke/ztd.tag_invoke-config.cmake"
+- INSTALL_DESTINATION lib/cmake/ztd.tag_invoke
++ INSTALL_DESTINATION share/ztd.tag_invoke
+ NO_CHECK_REQUIRED_COMPONENTS_MACRO
+ )
+ write_basic_package_version_file(
+@@ -193,6 +205,16 @@ export(TARGETS ztd.tag_invoke
+ FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.tag_invoke/ztd.tag_invoke-targets.cmake"
+ )
++install(FILES
++ ${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.tag_invoke/ztd.tag_invoke-config.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.tag_invoke/ztd.tag_invoke-config-version.cmake
++ DESTINATION share/ztd.tag_invoke
++)
++install(EXPORT ztd.tag_invoke-targets
++ FILE ztd.tag_invoke-targets.cmake
++ DESTINATION share/ztd.tag_invoke
++)
++
+
+ # ztd.idk
+ file(GLOB_RECURSE ztd.idk.includes
+@@ -241,7 +263,9 @@ if(ZTD_IDK_IS_TOP_LEVEL_PROJECT)
+ )
+ endif()
+
+-install(TARGETS ztd.idk)
++install(TARGETS ztd.idk
++ EXPORT ztd.idk-targets
++ DESTINATION lib)
+ install(DIRECTORY include/
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+ )
+@@ -249,7 +273,7 @@ install(DIRECTORY include/
+ configure_package_config_file(
+ cmake/ztd.idk-config.cmake.in
+ "${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.idk/ztd.idk-config.cmake"
+- INSTALL_DESTINATION lib/cmake/ztd.idk
++ INSTALL_DESTINATION share/ztd.idk
+ NO_CHECK_REQUIRED_COMPONENTS_MACRO
+ )
+ write_basic_package_version_file(
+@@ -261,11 +285,17 @@ export(TARGETS ztd.idk
+ "${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.idk/ztd.idk-targets.cmake"
+ )
+
+-install(
+- DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/cmake"
+- TYPE DATA
++install(FILES
++ ${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.idk/ztd.idk-config.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.idk/ztd.idk-config-version.cmake
++ DESTINATION share/ztd.idk/
++ )
++install(EXPORT ztd.idk-targets
++ FILE ztd.idk-targets.cmake
++ DESTINATION share/ztd.idk/
+ )
+
++
+ if(ZTD_IDK_GENERATE_SINGLE)
+ add_subdirectory(single)
+ endif()
+diff --git a/cmake/ztd.idk-config.cmake.in b/cmake/ztd.idk-config.cmake.in
+index 4ceb0ec..8377221 100644
+--- a/cmake/ztd.idk-config.cmake.in
++++ b/cmake/ztd.idk-config.cmake.in
+@@ -1,7 +1,8 @@
+ @PACKAGE_INIT@
+
+-find_package(ztd.version CONFIG REQUIRED)
+-find_package(ztd.tag_invoke CONFIG REQUIRED)
++include(CMakeFindDependencyMacro)
++find_dependency(ztd.version CONFIG )
++find_dependency(ztd.tag_invoke CONFIG)
+ include(${CMAKE_CURRENT_LIST_DIR}/ztd.idk-targets.cmake)
+
+ if (TARGET ztd.idk)
+diff --git a/cmake/ztd.tag_invoke-config.cmake.in b/cmake/ztd.tag_invoke-config.cmake.in
+index 504c60b..ee2f5cd 100644
+--- a/cmake/ztd.tag_invoke-config.cmake.in
++++ b/cmake/ztd.tag_invoke-config.cmake.in
+@@ -1,6 +1,6 @@
+ @PACKAGE_INIT@
+-
+-find_package(ztd.version CONFIG REQUIRED)
++include(CMakeFindDependencyMacro)
++find_dependency(ztd.version CONFIG )
+ include(${CMAKE_CURRENT_LIST_DIR}/ztd.tag_invoke-targets.cmake)
+
+ if (TARGET ztd.tag_invoke)
diff --git a/vcpkg/ports/ztd-idk/portfile.cmake b/vcpkg/ports/ztd-idk/portfile.cmake
new file mode 100644
index 0000000..4cfbb57
--- /dev/null
+++ b/vcpkg/ports/ztd-idk/portfile.cmake
@@ -0,0 +1,22 @@
+if (VCPKG_TARGET_IS_WINDOWS)
+ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
+endif()
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO soasis/idk
+ REF ad64a1759a506bb0761c7b20c40da8c91865f50e
+ SHA512 b6f1afa78b23331ba19116101667bb9dd070deafb9d685f99f165c75ec30d7bfe90443034b6f1882c3186c490f3fc4ed648cdc3fff6fa8450375676d8e9c4727
+ HEAD_REF main
+ PATCHES
+ fix-cmake-install.patch
+)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH ${SOURCE_PATH}
+)
+vcpkg_cmake_install()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
diff --git a/vcpkg/ports/ztd-idk/vcpkg.json b/vcpkg/ports/ztd-idk/vcpkg.json
new file mode 100644
index 0000000..0a28ce6
--- /dev/null
+++ b/vcpkg/ports/ztd-idk/vcpkg.json
@@ -0,0 +1,17 @@
+{
+ "name": "ztd-idk",
+ "version-date": "2023-11-03",
+ "description": "The IDK (Industrial Development Kit) library!",
+ "homepage": "https://github.com/soasis/idk",
+ "license": "Apache-2.0",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}