CMake: Use the GNUInstallDirs module

This commit is contained in:
Max Bruckner 2016-11-05 23:16:57 +07:00
parent 78cdb0d6ec
commit 8a7f9a2101

View File

@ -1,5 +1,7 @@
cmake_minimum_required(VERSION 2.8) cmake_minimum_required(VERSION 2.8)
include(GNUInstallDirs)
project(cJSON C) project(cJSON C)
set(CJSON_VERSION_MAJOR 1) set(CJSON_VERSION_MAJOR 1)
@ -15,7 +17,7 @@ endif()
#variables for pkg-config #variables for pkg-config
set(prefix "${CMAKE_INSTALL_PREFIX}") set(prefix "${CMAKE_INSTALL_PREFIX}")
set(libdir "${CMAKE_INSTALL_PREFIX}/lib") set(libdir "${CMAKE_INSTALL_FULL_LIBDIR}")
set(version "${CJSON_VERSION}") set(version "${CJSON_VERSION}")
option(BUILD_SHARED_LIBS "Build shared libraries" ON) option(BUILD_SHARED_LIBS "Build shared libraries" ON)
@ -34,9 +36,9 @@ endif()
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/libcjson.pc.in" configure_file("${CMAKE_CURRENT_SOURCE_DIR}/libcjson.pc.in"
"${CMAKE_CURRENT_BINARY_DIR}/libcjson.pc" @ONLY) "${CMAKE_CURRENT_BINARY_DIR}/libcjson.pc" @ONLY)
install(TARGETS "${CJSON_LIB}" DESTINATION "lib${LIB_SUFFIX}") install(TARGETS "${CJSON_LIB}" DESTINATION "${CMAKE_INSTALL_LIBDIR}")
install(FILES cJSON.h DESTINATION include/cjson) install(FILES cJSON.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/cjson")
install (FILES "${CMAKE_CURRENT_BINARY_DIR}/libcjson.pc" DESTINATION lib/pkgconfig) install (FILES "${CMAKE_CURRENT_BINARY_DIR}/libcjson.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
set_target_properties("${CJSON_LIB}" set_target_properties("${CJSON_LIB}"
PROPERTIES PROPERTIES
@ -57,9 +59,9 @@ if(ENABLE_CJSON_UTILS)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/libcjson_utils.pc.in" configure_file("${CMAKE_CURRENT_SOURCE_DIR}/libcjson_utils.pc.in"
"${CMAKE_CURRENT_BINARY_DIR}/libcjson_utils.pc" @ONLY) "${CMAKE_CURRENT_BINARY_DIR}/libcjson_utils.pc" @ONLY)
install(TARGETS "${CJSON_UTILS_LIB}" DESTINATION "lib${LIB_SUFFIX}") install(TARGETS "${CJSON_UTILS_LIB}" DESTINATION "${CMAKE_INSTALL_LIBDIR}")
install(FILES cJSON_Utils.h DESTINATION include/cjson) install(FILES cJSON_Utils.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/cjson")
install (FILES "${CMAKE_CURRENT_BINARY_DIR}/libcjson_utils.pc" DESTINATION lib/pkgconfig) install (FILES "${CMAKE_CURRENT_BINARY_DIR}/libcjson_utils.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
set_target_properties("${CJSON_UTILS_LIB}" set_target_properties("${CJSON_UTILS_LIB}"
PROPERTIES PROPERTIES