summaryrefslogtreecommitdiff
path: root/json4cpp/src/modules/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'json4cpp/src/modules/CMakeLists.txt')
-rw-r--r--json4cpp/src/modules/CMakeLists.txt27
1 files changed, 27 insertions, 0 deletions
diff --git a/json4cpp/src/modules/CMakeLists.txt b/json4cpp/src/modules/CMakeLists.txt
new file mode 100644
index 0000000000..f8b79d0ef6
--- /dev/null
+++ b/json4cpp/src/modules/CMakeLists.txt
@@ -0,0 +1,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)