11
2- cmake_minimum_required (VERSION 3.9)
2+ cmake_minimum_required (VERSION 3.9...3.31 )
33project (aws-c-s3 C)
44
55option (ASSERT_LOCK_HELD "Enable ASSERT_SYNCED_DATA_LOCK_HELD for checking thread issue" OFF )
@@ -11,32 +11,17 @@ if (ASSERT_LOCK_HELD)
1111 add_definitions (-DASSERT_LOCK_HELD)
1212endif ()
1313
14- if (DEFINED CMAKE_PREFIX_PATH )
15- file (TO_CMAKE_PATH "${CMAKE_PREFIX_PATH} " CMAKE_PREFIX_PATH )
14+ if (NOT IN_SOURCE_BUILD)
15+ # this is required so we can use aws-c-common's CMake modules
16+ find_package (aws-c-common REQUIRED)
1617endif ()
1718
18- if (DEFINED CMAKE_INSTALL_PREFIX )
19- file (TO_CMAKE_PATH "${CMAKE_INSTALL_PREFIX} " CMAKE_INSTALL_PREFIX )
20- endif ()
21-
22-
23- if (UNIX AND NOT APPLE )
24- include (GNUInstallDirs)
25- elseif (NOT DEFINED CMAKE_INSTALL_LIBDIR)
26- set (CMAKE_INSTALL_LIBDIR "lib" )
27- endif ()
28-
29- # This is required in order to append /lib/cmake to each element in CMAKE_PREFIX_PATH
30- set (AWS_MODULE_DIR "/${CMAKE_INSTALL_LIBDIR} /cmake" )
31- string (REPLACE ";" "${AWS_MODULE_DIR} ;" AWS_MODULE_PATH "${CMAKE_PREFIX_PATH}${AWS_MODULE_DIR} " )
32- # Append that generated list to the module search path
33- list (APPEND CMAKE_MODULE_PATH ${AWS_MODULE_PATH} )
34-
3519include (AwsCFlags)
3620include (AwsCheckHeaders)
3721include (AwsSharedLibSetup)
3822include (AwsSanitizers)
3923include (AwsFindPackage)
24+ include (GNUInstallDirs)
4025
4126file (GLOB AWS_S3_ROOT_HEADERS
4227 "include/aws/s3/*.h"
@@ -100,7 +85,7 @@ target_link_libraries(${PROJECT_NAME} PUBLIC ${DEP_AWS_LIBS})
10085
10186aws_prepare_shared_lib_exports(${PROJECT_NAME} )
10287
103- install (FILES ${AWS_S3_ROOT_HEADERS} DESTINATION "include /aws/s3" COMPONENT Development)
88+ install (FILES ${AWS_S3_ROOT_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR} /aws/s3" COMPONENT Development)
10489
10590if (BUILD_SHARED_LIBS )
10691 set (TARGET_DIR "shared" )
@@ -109,7 +94,7 @@ else()
10994endif ()
11095
11196install (EXPORT "${PROJECT_NAME} -targets"
112- DESTINATION "${LIBRARY_DIRECTORY} / ${PROJECT_NAME} /cmake /${TARGET_DIR} /"
97+ DESTINATION "${CMAKE_INSTALL_LIBDIR} /cmake/ ${PROJECT_NAME} /${TARGET_DIR} /"
11398 NAMESPACE AWS::
11499 COMPONENT Development)
115100
@@ -118,7 +103,7 @@ configure_file("cmake/${PROJECT_NAME}-config.cmake"
118103 @ONLY)
119104
120105install (FILES "${CMAKE_CURRENT_BINARY_DIR} /${PROJECT_NAME} -config.cmake"
121- DESTINATION "${LIBRARY_DIRECTORY} / ${PROJECT_NAME} /cmake /"
106+ DESTINATION "${CMAKE_INSTALL_LIBDIR} /cmake/ ${PROJECT_NAME} /"
122107 COMPONENT Development)
123108
124109include (CTest)
0 commit comments