Open eulersson opened 10 months ago
try this
cmake_minimum_required(VERSION 3.28...3.30)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
project(cJSON-test VERSION 0.1.0 LANGUAGES CXX)
add_compile_options(-std=c17)
set(CMAKE_C_STANDARD 17)
set(CMAKE_C_EXTENSIONS NO)
set(CMAKE_C_STANDARD_REQUIRED YES)
set(CMAKE_BUILD_TYPE Release)
set(CMAKE_INSTALL_PREFIX ${CMAKE_SOURCE_DIR}/stagedir)
enable_testing()
include(FetchContent)
FetchContent_Declare(
cJSON
GIT_REPOSITORY https://github.com/DaveGamble/cJSON.git
GI_TAG "v1.7.18"
SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/cJSON-src"
GIT_SHALLOW TRUE
)
set(ENABLE_CUSTOM_COMPILER_FLAGS OFF)
set(BUILD_SHARED_AND_STATIC_LIBS ON)
FetchContent_MakeAvailable(cJSON)
set(CPACK_GENERATOR TGZ)
include(cpack)
Hello, I am trying to install cJSON with CMake's FetchContent and I managed to do it but I find it strange that the header files are not included in the
cjson
target.I am not an expert with CMake so apologies if my question is stupid.
I am wondering if there's a way that I can compile against
cjson
without hacking a build-time${CMAKE_BINARY_DIR}/include/cJSON/cJSON.h
file. As far as I know it would work if the developers of cJSON would have usedtarget_include_directories
on the root CMakeLists.txt?Thank you!