aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/ztd-platform
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/ztd-platform')
-rw-r--r--vcpkg/ports/ztd-platform/fix-cmake-install.patch72
-rw-r--r--vcpkg/ports/ztd-platform/portfile.cmake22
-rw-r--r--vcpkg/ports/ztd-platform/vcpkg.json18
3 files changed, 112 insertions, 0 deletions
diff --git a/vcpkg/ports/ztd-platform/fix-cmake-install.patch b/vcpkg/ports/ztd-platform/fix-cmake-install.patch
new file mode 100644
index 0000000..f793fd6
--- /dev/null
+++ b/vcpkg/ports/ztd-platform/fix-cmake-install.patch
@@ -0,0 +1,72 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 57c97c4..d0e0da9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -49,6 +49,8 @@ project(ztd.platform
+ HOMEPAGE_URL "https://ztdplatform.readthedocs.io/en/latest/"
+ LANGUAGES C CXX)
+
++include(CMakePackageConfigHelpers)
++include(GNUInstallDirs)
+ if(ZTD_PLATFORM_READTHEDOCS)
+ # ReadTheDocs seems unable to handle the include at the project level: something must be going wrong?
+ include(CheckCXXCompilerFlag)
+@@ -121,10 +123,7 @@ option(ZTD_PLATFORM_USE_ENCODING_C "Enable encoding_rs's C bindings with ztd::pl
+
+ # # Dependencies
+ # ztd.idk
+-FetchContent_Declare(ztd.idk
+- GIT_REPOSITORY https://github.com/soasis/idk.git
+- GIT_TAG main)
+-FetchContent_MakeAvailable(ztd.idk)
++find_package(ztd.idk CONFIG REQUIRED)
+
+ # encoding_c
+ if (ZTD_PLATFORM_USE_ENCODING_C)
+@@ -408,11 +407,8 @@ install(DIRECTORY include/
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+ )
+ install(TARGETS ztd.platform
+- PUBLIC_HEADER
+- RUNTIME
+- ARCHIVE
+- LIBRARY
+-)
++ EXPORT ztd.platform-targets
++ DESTINATION lib)
+
+ # # Config / Version packaging
+ # Version configurations
+@@ -430,6 +426,15 @@ export(TARGETS ztd.platform
+ FILE
+ "${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.platform/ztd.platform-targets.cmake")
+
++install(FILES
++ ${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.platform/ztd.platform-config.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.platform/ztd.platform-config-version.cmake
++ DESTINATION share/ztd.platform
++ )
++install(EXPORT ztd.platform-targets
++ FILE ztd.platform-targets.cmake
++ DESTINATION share/ztd.platform
++)
+ # # Benchmarks, Tests, Examples
+ if(ZTD_PLATFORM_TESTS)
+ include(CTest)
+diff --git a/cmake/ztd.platform-config.cmake.in b/cmake/ztd.platform-config.cmake.in
+index 37629fc..5d5886c 100644
+--- a/cmake/ztd.platform-config.cmake.in
++++ b/cmake/ztd.platform-config.cmake.in
+@@ -1,6 +1,11 @@
+ @PACKAGE_INIT@
+
+-if (TARGET ztd::platform)
++include(CMakeFindDependencyMacro)
++find_dependency(ztd.idk CONFIG)
++
++include(${CMAKE_CURRENT_LIST_DIR}/ztd.platform-targets.cmake)
++if (TARGET ztd.platform)
++ add_library(ztd::platform ALIAS ztd.platform)
+ get_target_property(ZTD_PLATFORM_INCLUDE_DIRS
+ ztd.platform INTERFACE_INCLUDE_DIRECTORIES)
+ set_and_check(ZTD_PLATFORM_INCLUDE_DIRS "${ZTD_PLATFORM_INCLUDE_DIRS}")
diff --git a/vcpkg/ports/ztd-platform/portfile.cmake b/vcpkg/ports/ztd-platform/portfile.cmake
new file mode 100644
index 0000000..0d2a972
--- /dev/null
+++ b/vcpkg/ports/ztd-platform/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/platform
+ REF d92b8e5b85a4cabae62ad19ccfcc5c3f94ab1a14
+ SHA512 d7482bbfa00c6c8226e368fde664ee77e915b4d01ea93e79dffb43b51b44808628c1d3d3daa5e6c8e5cd239dcd4c1ae31c3d0f534df9e1e9bf7a134b24322cfa
+ 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-platform/vcpkg.json b/vcpkg/ports/ztd-platform/vcpkg.json
new file mode 100644
index 0000000..e028378
--- /dev/null
+++ b/vcpkg/ports/ztd-platform/vcpkg.json
@@ -0,0 +1,18 @@
+{
+ "name": "ztd-platform",
+ "version-date": "2022-12-30",
+ "description": "A library for messing with platfom-dependent configurations and libraries, and sometimes hiding their cores.",
+ "homepage": "https://github.com/soasis/platform",
+ "license": "Apache-2.0",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ },
+ "ztd-idk"
+ ]
+}