Files
itgmania212121/extern/CMakeProject-json.cmake
T

43 lines
1.5 KiB
CMake
Raw Normal View History

if(WITH_SYSTEM_JSONCPP)
find_package(PkgConfig REQUIRED)
pkg_check_modules(JSONCPP REQUIRED jsoncpp)
else()
list(APPEND JSON_SRC
"jsoncpp/src/lib_json/json_reader.cpp"
"jsoncpp/src/lib_json/json_value.cpp"
"jsoncpp/src/lib_json/json_writer.cpp")
2014-10-17 21:23:00 -04:00
list(APPEND JSON_HPP
"jsoncpp/include/json/config.h"
"jsoncpp/include/json/features.h"
"jsoncpp/include/json/forwards.h"
"jsoncpp/include/json/json.h"
"jsoncpp/include/json/reader.h"
"jsoncpp/include/json/value.h"
"jsoncpp/include/json/writer.h")
2014-10-17 21:23:00 -04:00
source_group("" FILES ${JSON_SRC} ${JSON_HPP})
2014-10-17 21:23:00 -04:00
add_library("jsoncpp" STATIC ${JSON_SRC} ${JSON_HPP})
2014-10-17 21:23:00 -04:00
set_property(TARGET "jsoncpp" PROPERTY FOLDER "External Libraries")
2014-10-17 21:23:00 -04:00
disable_project_warnings("jsoncpp")
2014-10-17 21:23:00 -04:00
target_include_directories("jsoncpp" PUBLIC "jsoncpp/include")
2014-10-17 21:23:00 -04:00
if(MSVC)
sm_add_compile_definition("jsoncpp" _CRT_SECURE_NO_WARNINGS)
elseif(APPLE)
set_target_properties("jsoncpp"
PROPERTIES XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD
"gnu++14"
XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY
"libc++")
sm_add_compile_flag("jsoncpp" "-std=${SM_CPP_STANDARD}")
2017-06-18 11:55:16 -04:00
sm_add_compile_flag("jsoncpp" "-stdlib=libc++")
else() # Unix/Linux
sm_add_compile_flag("jsoncpp" "-std=gnu++11")
2017-06-18 11:55:16 -04:00
endif()
endif()