1
1
2
- cmake_minimum_required (VERSION 3.9)
2
+ cmake_minimum_required (VERSION 3.9...3.31 )
3
3
project (aws-c-io C)
4
4
5
- if (DEFINED CMAKE_PREFIX_PATH )
6
- file (TO_CMAKE_PATH "${CMAKE_PREFIX_PATH} " CMAKE_PREFIX_PATH )
5
+ if (NOT IN_SOURCE_BUILD)
6
+ # this is required so we can use aws-c-common's CMake modules
7
+ find_package (aws-c-common REQUIRED)
7
8
endif ()
8
9
9
- if (DEFINED CMAKE_INSTALL_PREFIX )
10
- file (TO_CMAKE_PATH "${CMAKE_INSTALL_PREFIX} " CMAKE_INSTALL_PREFIX )
11
- endif ()
12
-
13
-
14
- if (UNIX AND NOT APPLE )
15
- include (GNUInstallDirs)
16
- elseif (NOT DEFINED CMAKE_INSTALL_LIBDIR)
17
- set (CMAKE_INSTALL_LIBDIR "lib" )
18
- endif ()
19
-
20
- # This is required in order to append /lib/cmake to each element in CMAKE_PREFIX_PATH
21
- set (AWS_MODULE_DIR "/${CMAKE_INSTALL_LIBDIR} /cmake" )
22
- string (REPLACE ";" "${AWS_MODULE_DIR} ;" AWS_MODULE_PATH "${CMAKE_PREFIX_PATH}${AWS_MODULE_DIR} " )
23
- # Append that generated list to the module search path
24
- list (APPEND CMAKE_MODULE_PATH ${AWS_MODULE_PATH} )
25
-
26
10
include (AwsCFlags)
27
11
include (AwsCheckHeaders)
28
12
include (AwsSharedLibSetup)
29
13
include (AwsSanitizers)
30
14
include (AwsFindPackage)
31
15
include (CTest)
16
+ include (GNUInstallDirs)
32
17
33
18
option (BUILD_RELOCATABLE_BINARIES
34
19
"Build Relocatable Binaries, this will turn off features that will fail on older kernels than used for the build."
@@ -230,8 +215,8 @@ target_link_libraries(${PROJECT_NAME} PRIVATE ${PLATFORM_LIBS})
230
215
231
216
aws_prepare_shared_lib_exports(${PROJECT_NAME} )
232
217
233
- install (FILES ${AWS_IO_HEADERS} DESTINATION "include /aws/io" COMPONENT Development)
234
- install (FILES ${AWS_IO_TESTING_HEADERS} DESTINATION "include /aws/testing" COMPONENT Development)
218
+ install (FILES ${AWS_IO_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR} /aws/io" COMPONENT Development)
219
+ install (FILES ${AWS_IO_TESTING_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR} /aws/testing" COMPONENT Development)
235
220
236
221
if (BUILD_SHARED_LIBS )
237
222
set (TARGET_DIR "shared" )
@@ -240,7 +225,7 @@ else()
240
225
endif ()
241
226
242
227
install (EXPORT "${PROJECT_NAME} -targets"
243
- DESTINATION "${LIBRARY_DIRECTORY} / ${PROJECT_NAME} /cmake /${TARGET_DIR} "
228
+ DESTINATION "${CMAKE_INSTALL_LIBDIR} /cmake/ ${PROJECT_NAME} /${TARGET_DIR} "
244
229
NAMESPACE AWS::
245
230
COMPONENT Development)
246
231
@@ -249,7 +234,7 @@ configure_file("cmake/${PROJECT_NAME}-config.cmake"
249
234
@ONLY)
250
235
251
236
install (FILES "${CMAKE_CURRENT_BINARY_DIR} /${PROJECT_NAME} -config.cmake"
252
- DESTINATION "${LIBRARY_DIRECTORY} / ${PROJECT_NAME} /cmake /"
237
+ DESTINATION "${CMAKE_INSTALL_LIBDIR} /cmake/ ${PROJECT_NAME} /"
253
238
COMPONENT Development)
254
239
255
240
if (NOT CMAKE_CROSSCOMPILING )
0 commit comments