aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/ztd-text/fix-cmake-install.patch
blob: 4496825fd0eb720abd9ee100f82e0f52a1d73949 (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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 607394b..d80fb23 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -34,12 +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_SHALLOW    ON
-	GIT_TAG        main)
-FetchContent_MakeAvailable(ztd.cmake)
 set(CMAKE_PROJECT_INCLUDE ${ZTD_CMAKE_PROJECT_PRELUDE})
 
 # # Project declaration
@@ -51,6 +45,8 @@ project(ztd.text
 	HOMEPAGE_URL "https://ztdtext.readthedocs.io/en/latest/"
 	LANGUAGES C CXX)
 
+include(GNUInstallDirs)
+include(CMakePackageConfigHelpers)
 if(ZTD_TEXT_READTHEDOCS)
 	# ReadTheDocs seems unable to handle the include at the project level: something must be going wrong?
 	include(CheckCXXCompilerFlag)
@@ -139,40 +135,18 @@ option(ZTD_TEXT_BOOST.TEXT "Enable usage of Boost.Text benchmarks and examples"
 
 # # Dependencies
 # ztd.idk
-FetchContent_Declare(ztd.idk
-	GIT_REPOSITORY https://github.com/soasis/idk.git
-	GIT_SHALLOW    ON
-	GIT_TAG        main)
-FetchContent_MakeAvailable(ztd.idk)
 
 # ztd.static_containers
-FetchContent_Declare(ztd.static_containers
-	GIT_REPOSITORY https://github.com/soasis/static_containers.git
-	GIT_SHALLOW    ON
-	GIT_TAG        main)
-FetchContent_MakeAvailable(ztd.static_containers)
+find_package(ztd.static_containers CONFIG REQUIRED)
 
 # ztd.encoding_tables
-FetchContent_Declare(ztd.encoding_tables
-	GIT_REPOSITORY https://github.com/soasis/encoding_tables.git
-	GIT_SHALLOW    ON
-	GIT_TAG        main)
-FetchContent_MakeAvailable(ztd.encoding_tables)
 
 # ztd.cuneicode
+find_package(ztd.cuneicode CONFIG REQUIRED)
 set(ZTD_CUNEICODE_SIMDUTF_SHARED ${ZTD_TEXT_BENCHMARKS})
-FetchContent_Declare(ztd.cuneicode
-	GIT_REPOSITORY https://github.com/soasis/cuneicode.git
-	GIT_SHALLOW    ON
-	GIT_TAG        main)
-FetchContent_MakeAvailable(ztd.cuneicode)
 
 # ztd.platform
-FetchContent_Declare(ztd.platform
-	GIT_REPOSITORY https://github.com/soasis/platform.git
-	GIT_SHALLOW    ON
-	GIT_TAG        main)
-FetchContent_MakeAvailable(ztd.platform)
+find_package(ztd.platform CONFIG REQUIRED)
 
 if (ZTD_TEXT_BENCHAMRKS OR ZTD_TEXT_GENERATE_SINGLE OR ZTD_TEXT_DOCUMENTATION)
 	find_package(Python3 REQUIRED COMPONENTS Interpreter)
@@ -187,16 +161,17 @@ target_include_directories(ztd.text
 	INTERFACE
 	$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
 	$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
-target_sources(ztd.text INTERFACE ${ztd.text.includes})
 target_link_libraries(ztd.text
 	INTERFACE
-	ztd::idk
 	ztd::static_containers
 	ztd::platform
 	ztd::cuneicode)
 install(DIRECTORY include/
 	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
 
+install(TARGETS ztd.text
+        EXPORT ztd.text-targets
+        DESTINATION lib)
 # # Config / Version packaging
 # Version configurations
 configure_package_config_file(
@@ -213,6 +188,15 @@ export(TARGETS ztd.text
 	FILE
 	"${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.text/ztd.text-targets.cmake")
 
+install(FILES
+  ${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.text/ztd.text-config.cmake
+  ${CMAKE_CURRENT_BINARY_DIR}/cmake/ztd.text/ztd.text-config-version.cmake
+  DESTINATION share/ztd.text
+  )
+install(EXPORT ztd.text-targets
+  FILE ztd.text-targets.cmake
+  DESTINATION share/ztd.text
+)
 if(ZTD_TEXT_GENERATE_SINGLE)
 	add_subdirectory(single)
 endif()
diff --git a/cmake/ztd.text-config.cmake.in b/cmake/ztd.text-config.cmake.in
index a526740..e11ce0c 100644
--- a/cmake/ztd.text-config.cmake.in
+++ b/cmake/ztd.text-config.cmake.in
@@ -1,6 +1,11 @@
 @PACKAGE_INIT@
+include(CMakeFindDependencyMacro)
+find_dependency(ztd.platform CONFIG)
+find_dependency(ztd.static_containers CONFIG)
 
-if (TARGET ztd::text)
+include (${CMAKE_CURRENT_LIST_DIR}/ztd.text-targets.cmake)
+if (TARGET ztd.text)
+	add_library(ztd::text ALIAS ztd.text)
 	get_target_property(ZTD_TEXT_INCLUDE_DIRS
 		ztd.text INTERFACE_INCLUDE_DIRECTORIES)
 	set_and_check(ZTD_TEXT_INCLUDE_DIRS "${ZTD_TEXT_INCLUDE_DIRS}")