Skip to content

Commit b513db4

Browse files
authored
A bunch of CMake fixes (#258)
1 parent 274a1d2 commit b513db4

File tree

1 file changed

+8
-23
lines changed

1 file changed

+8
-23
lines changed

CMakeLists.txt

Lines changed: 8 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,18 @@
11

2-
cmake_minimum_required(VERSION 3.9)
2+
cmake_minimum_required(VERSION 3.9...3.31)
33
project(aws-c-auth C)
44

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)
78
endif()
89

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-
2610
include(AwsCFlags)
2711
include(AwsCheckHeaders)
2812
include(AwsSharedLibSetup)
2913
include(AwsSanitizers)
3014
include(AwsFindPackage)
15+
include(GNUInstallDirs)
3116

3217
option(BUILD_RELOCATABLE_BINARIES
3318
"Build Relocatable Binaries, this will turn off features that will fail on older kernels than used for the build."
@@ -89,7 +74,7 @@ target_link_libraries(${PROJECT_NAME} PUBLIC ${DEP_AWS_LIBS})
8974

9075
aws_prepare_shared_lib_exports(${PROJECT_NAME})
9176

92-
install(FILES ${AWS_AUTH_ROOT_HEADERS} DESTINATION "include/aws/auth" COMPONENT Development)
77+
install(FILES ${AWS_AUTH_ROOT_HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/aws/auth" COMPONENT Development)
9378

9479
if (BUILD_SHARED_LIBS)
9580
set (TARGET_DIR "shared")
@@ -98,7 +83,7 @@ else()
9883
endif()
9984

10085
install(EXPORT "${PROJECT_NAME}-targets"
101-
DESTINATION "${LIBRARY_DIRECTORY}/${PROJECT_NAME}/cmake/${TARGET_DIR}/"
86+
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/${TARGET_DIR}/"
10287
NAMESPACE AWS::
10388
COMPONENT Development)
10489

@@ -107,7 +92,7 @@ configure_file("cmake/${PROJECT_NAME}-config.cmake"
10792
@ONLY)
10893

10994
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-config.cmake"
110-
DESTINATION "${LIBRARY_DIRECTORY}/${PROJECT_NAME}/cmake/"
95+
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}/"
11196
COMPONENT Development)
11297

11398
include(CTest)

0 commit comments

Comments
 (0)