1
- cmake_minimum_required (VERSION 3.9)
1
+ cmake_minimum_required (VERSION 3.9...3.31 )
2
2
project (aws-c-http C)
3
3
4
4
option (ENABLE_PROXY_INTEGRATION_TESTS "Whether to run the proxy integration tests that rely on pre-configured proxy" OFF )
5
5
option (ENABLE_LOCALHOST_INTEGRATION_TESTS "Whether to run the integration tests that rely on pre-configured localhost" OFF )
6
6
7
- if (DEFINED CMAKE_PREFIX_PATH )
8
- file (TO_CMAKE_PATH "${CMAKE_PREFIX_PATH} " CMAKE_PREFIX_PATH )
7
+ if (NOT IN_SOURCE_BUILD)
8
+ # this is required so we can use aws-c-common's CMake modules
9
+ find_package (aws-c-common REQUIRED)
9
10
endif ()
10
11
11
- if (DEFINED CMAKE_INSTALL_PREFIX )
12
- file (TO_CMAKE_PATH "${CMAKE_INSTALL_PREFIX} " CMAKE_INSTALL_PREFIX )
13
- endif ()
14
-
15
- if (UNIX AND NOT APPLE )
16
- include (GNUInstallDirs)
17
- elseif (NOT DEFINED CMAKE_INSTALL_LIBDIR)
18
- set (CMAKE_INSTALL_LIBDIR "lib" )
19
- endif ()
20
-
21
- # This is required in order to append /lib/cmake to each element in CMAKE_PREFIX_PATH
22
- set (AWS_MODULE_DIR "/${CMAKE_INSTALL_LIBDIR} /cmake" )
23
- string (REPLACE ";" "${AWS_MODULE_DIR} ;" AWS_MODULE_PATH "${CMAKE_PREFIX_PATH}${AWS_MODULE_DIR} " )
24
- # Append that generated list to the module search path
25
- list (APPEND CMAKE_MODULE_PATH ${AWS_MODULE_PATH} )
26
-
27
12
include (AwsCFlags)
28
13
include (AwsCheckHeaders)
29
14
include (AwsSharedLibSetup)
30
15
include (AwsSanitizers)
31
16
include (CheckCCompilerFlag)
32
17
include (AwsFindPackage)
18
+ include (GNUInstallDirs)
33
19
34
20
file (GLOB AWS_HTTP_HEADERS
35
21
"include/aws/http/*.h"
@@ -71,7 +57,7 @@ target_link_libraries(${PROJECT_NAME} PUBLIC ${DEP_AWS_LIBS})
71
57
aws_prepare_shared_lib_exports(${PROJECT_NAME} )
72
58
73
59
aws_check_headers(${PROJECT_NAME} ${AWS_HTTP_HEADERS} )
74
- install (FILES ${AWS_HTTP_HEADERS} DESTINATION "include /aws/http" )
60
+ install (FILES ${AWS_HTTP_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR} /aws/http" )
75
61
76
62
if (BUILD_SHARED_LIBS )
77
63
set (TARGET_DIR "shared" )
80
66
endif ()
81
67
82
68
install (EXPORT "${PROJECT_NAME} -targets"
83
- DESTINATION "${LIBRARY_DIRECTORY} / ${PROJECT_NAME} /cmake /${TARGET_DIR} /"
69
+ DESTINATION "${CMAKE_INSTALL_LIBDIR} /cmake/ ${PROJECT_NAME} /${TARGET_DIR} /"
84
70
NAMESPACE AWS::
85
71
COMPONENT Development)
86
72
@@ -89,7 +75,7 @@ configure_file("cmake/${PROJECT_NAME}-config.cmake"
89
75
@ONLY)
90
76
91
77
install (FILES "${CMAKE_CURRENT_BINARY_DIR} /${PROJECT_NAME} -config.cmake"
92
- DESTINATION "${LIBRARY_DIRECTORY} / ${PROJECT_NAME} /cmake /"
78
+ DESTINATION "${CMAKE_INSTALL_LIBDIR} /cmake/ ${PROJECT_NAME} /"
93
79
COMPONENT Development)
94
80
95
81
include (CTest)
0 commit comments