Add proper C++20 module support (#4799)

This commit is contained in:
Miko
2025-06-29 16:02:31 -04:00
committed by GitHub
parent d70e46bc65
commit b7f741165b
10 changed files with 123 additions and 24 deletions
+27
View File
@@ -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)