summaryrefslogtreecommitdiff
path: root/json4cpp/src/modules/CMakeLists.txt
blob: f8b79d0ef6092b3f6c68c15054c495422125973c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
cmake_minimum_required(VERSION 3.28)

add_library(nlohmann_json_modules)

set(NLOHMANN_JSON_MODULES
    json.cppm
)

if(NOT COMMAND configure_cpp_module_target)
    function(configure_cpp_module_target target)
        target_sources(${target} PUBLIC FILE_SET CXX_MODULES FILES ${NLOHMANN_JSON_MODULES})
    endfunction()
endif()

configure_cpp_module_target(nlohmann_json_modules)

target_link_libraries(nlohmann_json_modules
    PUBLIC
    nlohmann_json::nlohmann_json
)

target_include_directories(nlohmann_json_modules
    PRIVATE
    ${PROJECT_SOURCE_DIR}/include
)

target_compile_features(nlohmann_json_modules PUBLIC cxx_std_20)