cJSON

mirror of Dave's cJSON
git clone git://git.thc420.xyz/cJSON
Log | Files | Refs | README | LICENSE

commit f47271f4556c6b4fa2f6cd8e50806bb1d7f35237
parent 7cc52f60356909b3dd260304c7c50c0693699353
Author: Max Bruckner <max@maxbruckner.de>
Date:   Tue,  6 Feb 2018 11:24:03 +0100

Fix pkgconfig and installation. Thanks @zeerd for reporting

CMAKE_INSTALL_FULL_... needs to be used.

Diffstat:
MCMakeLists.txt | 28+++++++++++-----------------
Mlibrary_config/cJSONConfig.cmake.in | 4++--
Mlibrary_config/libcjson.pc.in | 7+++----
Mlibrary_config/libcjson_utils.pc.in | 7+++----
4 files changed, 19 insertions(+), 27 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt @@ -107,12 +107,6 @@ endforeach() set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${supported_compiler_flags}") -#variables for pkg-config -set(prefix "${CMAKE_INSTALL_PREFIX}") -set(libdir "${CMAKE_INSTALL_LIBDIR}") -set(version "${PROJECT_VERSION}") -set(includedir "${CMAKE_INSTALL_INCLUDEDIR}") - option(BUILD_SHARED_LIBS "Build shared libraries" ON) option(ENABLE_TARGET_EXPORT "Enable exporting of CMake targets. Disable when it causes problems!" ON) @@ -149,15 +143,15 @@ endif() configure_file("${CMAKE_CURRENT_SOURCE_DIR}/library_config/libcjson.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/libcjson.pc" @ONLY) -install(FILES cJSON.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/cjson") -install (FILES "${CMAKE_CURRENT_BINARY_DIR}/libcjson.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig") -install(TARGETS "${CJSON_LIB}" DESTINATION "${CMAKE_INSTALL_LIBDIR}" EXPORT "${CJSON_LIB}") +install(FILES cJSON.h DESTINATION "${CMAKE_INSTALL_FULL_INCLUDEDIR}/cjson") +install (FILES "${CMAKE_CURRENT_BINARY_DIR}/libcjson.pc" DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig") +install(TARGETS "${CJSON_LIB}" DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}" EXPORT "${CJSON_LIB}") if (BUILD_SHARED_AND_STATIC_LIBS) - install(TARGETS "${CJSON_LIB}-static" DESTINATION "${CMAKE_INSTALL_LIBDIR}") + install(TARGETS "${CJSON_LIB}-static" DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}") endif() if(ENABLE_TARGET_EXPORT) # export library information for CMake projects - install(EXPORT "${CJSON_LIB}" DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/cJSON") + install(EXPORT "${CJSON_LIB}" DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/cmake/cJSON") endif() set_target_properties("${CJSON_LIB}" @@ -188,15 +182,15 @@ if(ENABLE_CJSON_UTILS) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/library_config/libcjson_utils.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/libcjson_utils.pc" @ONLY) - install(TARGETS "${CJSON_UTILS_LIB}" DESTINATION "${CMAKE_INSTALL_LIBDIR}" EXPORT "${CJSON_UTILS_LIB}") + install(TARGETS "${CJSON_UTILS_LIB}" DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}" EXPORT "${CJSON_UTILS_LIB}") if (BUILD_SHARED_AND_STATIC_LIBS) - install(TARGETS "${CJSON_UTILS_LIB}-static" DESTINATION "${CMAKE_INSTALL_LIBDIR}") + install(TARGETS "${CJSON_UTILS_LIB}-static" DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}") endif() - install(FILES cJSON_Utils.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/cjson") - install (FILES "${CMAKE_CURRENT_BINARY_DIR}/libcjson_utils.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig") + install(FILES cJSON_Utils.h DESTINATION "${CMAKE_INSTALL_FULL_INCLUDEDIR}/cjson") + install (FILES "${CMAKE_CURRENT_BINARY_DIR}/libcjson_utils.pc" DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig") if(ENABLE_TARGET_EXPORT) # export library information for CMake projects - install(EXPORT "${CJSON_UTILS_LIB}" DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/cJSON") + install(EXPORT "${CJSON_UTILS_LIB}" DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/cmake/cJSON") endif() set_target_properties("${CJSON_UTILS_LIB}" @@ -216,7 +210,7 @@ configure_file( # Install package config files install(FILES ${PROJECT_BINARY_DIR}/cJSONConfig.cmake ${PROJECT_BINARY_DIR}/cJSONConfigVersion.cmake - DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/cJSON") + DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}/cmake/cJSON") option(ENABLE_CJSON_TEST "Enable building cJSON test" ON) if(ENABLE_CJSON_TEST) diff --git a/library_config/cJSONConfig.cmake.in b/library_config/cJSONConfig.cmake.in @@ -2,8 +2,8 @@ set(CJSON_UTILS_FOUND @ENABLE_CJSON_UTILS@) # The include directories used by cJSON -set(CJSON_INCLUDE_DIRS "@prefix@/@includedir@") -set(CJSON_INCLUDE_DIR "@prefix@/@includedir@") +set(CJSON_INCLUDE_DIRS "@CMAKE_INSTALL_FULL_INCLUDEDIR@") +set(CJSON_INCLUDE_DIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@") get_filename_component(_dir "${CMAKE_CURRENT_LIST_FILE}" PATH) diff --git a/library_config/libcjson.pc.in b/library_config/libcjson.pc.in @@ -1,9 +1,8 @@ -prefix=@prefix@ -libdir=${prefix}/@libdir@ -includedir=${prefix}/@includedir@ +libdir=@CMAKE_INSTALL_FULL_LIBDIR@ +includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@ Name: libcjson -Version: @version@ +Version: @PROJECT_VERSION@ Description: Ultralightweight JSON parser in ANSI C URL: https://github.com/DaveGamble/cJSON Libs: -L${libdir} -lcjson diff --git a/library_config/libcjson_utils.pc.in b/library_config/libcjson_utils.pc.in @@ -1,9 +1,8 @@ -prefix=@prefix@ -libdir=${prefix}/@libdir@ -includedir=${prefix}/@includedir@ +libdir=@CMAKE_INSTALL_FULL_LIBDIR@ +includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@ Name: libcjson_utils -Version: @version@ +Version: @PROJECT_VERSION@ Description: An implementation of JSON Pointer, Patch and Merge Patch based on cJSON. URL: https://github.com/DaveGamble/cJSON Libs: -L${libdir} -lcjson_utils