30 lines
961 B
CMake
30 lines
961 B
CMake
include(FetchContent)
|
|
|
|
set(FETCHCONTENT_QUIET TRUE)
|
|
set(JSONCPP_WITH_TESTS OFF CACHE STRING "" FORCE)
|
|
set(JSONCPP_WITH_POST_BUILD_UNITTEST OFF CACHE STRING "" FORCE)
|
|
set(JSONCPP_WITH_WARNING_AS_ERROR OFF CACHE STRING "" FORCE)
|
|
set(JSONCPP_WITH_PKGCONFIG_SUPPORT OFF CACHE STRING "" FORCE)
|
|
set(JSONCPP_WITH_CMAKE_PACKAGE OFF CACHE STRING "" FORCE)
|
|
if(STATIC_JSON_CPP)
|
|
set(BUILD_SHARED_LIBS OFF CACHE STRING "" FORCE)
|
|
set(BUILD_STATIC_LIBS ON CACHE STRING "" FORCE)
|
|
else()
|
|
set(BUILD_SHARED_LIBS ON CACHE STRING "" FORCE)
|
|
set(BUILD_STATIC_LIBS OFF CACHE STRING "" FORCE)
|
|
endif()
|
|
|
|
FetchContent_Declare(
|
|
jsoncpp
|
|
GIT_REPOSITORY https://github.com/open-source-parsers/jsoncpp.git
|
|
GIT_TAG 0.y.z
|
|
GIT_SHALLOW TRUE
|
|
OVERRIDE_FIND_PACKAGE)
|
|
|
|
FetchContent_MakeAvailable(jsoncpp)
|
|
|
|
if(TARGET jsoncpp_lib_static)
|
|
target_compile_options(jsoncpp_lib_static PRIVATE ${COMPILE_FLAGS} -fPIC)
|
|
target_link_options(jsoncpp_lib_static PRIVATE ${LINK_FLAGS})
|
|
endif()
|