oblogproxy/cmake/jsoncpp.cmake

29 lines
1.0 KiB
CMake

include(ExternalProject)
set(JSONCPP_INSTALL_DIR ${THIRD_PARTY_PATH}/install/jsoncpp)
if (NOT EXISTS ${JSONCPP_INSTALL_DIR}/include)
execute_process(COMMAND mkdir -p ${JSONCPP_INSTALL_DIR}/include COMMAND_ERROR_IS_FATAL ANY)
endif ()
ExternalProject_Add(
extern_jsoncpp
${EXTERNAL_PROJECT_LOG_ARGS}
GIT_REPOSITORY "https://github.com/open-source-parsers/jsoncpp.git"
GIT_TAG "1.9.0"
PREFIX ${THIRD_PARTY_PATH}/jsoncpp
UPDATE_COMMAND ""
CMAKE_ARGS
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_INSTALL_PREFIX=${JSONCPP_INSTALL_DIR}
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
-DJSONCPP_WITH_TESTS=OFF
-DJSONCPP_WITH_POST_BUILD_UNITTEST=OFF
-DCMAKE_BUILD_TYPE=${THIRD_PARTY_BUILD_TYPE}
)
add_library(jsoncpp STATIC IMPORTED GLOBAL)
add_dependencies(jsoncpp extern_jsoncpp)
set_target_properties(jsoncpp PROPERTIES IMPORTED_LOCATION ${JSONCPP_INSTALL_DIR}/lib64/libjsoncpp.a)
target_include_directories(jsoncpp INTERFACE ${JSONCPP_INSTALL_DIR}/include)