aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/ztd-platform/fix-cmake-install.patch
blob: f793fd614e23b9072e894b730e509cd652e7541f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
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}")