cmake_minimum_required(VERSION 3.20) project(DebugWorldGenModule LANGUAGES CXX) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) # MINIMAL DEPS ONLY - NO WARFACTORY AUTOMATION find_package(PkgConfig REQUIRED) find_package(nlohmann_json QUIET) # If nlohmann_json not found, use FetchContent for this one only if(NOT nlohmann_json_FOUND) include(FetchContent) FetchContent_Declare(nlohmann_json URL https://github.com/nlohmann/json/releases/download/v3.11.3/json.tar.xz URL_HASH SHA256=d6c65aca6b1ed68e7a182f4757257b107ae403032760ed6ef121c9d55e81757d ) FetchContent_MakeAvailable(nlohmann_json) endif() # Core includes include_directories(../../core/include) # Create shared library module - MINIMAL add_library(debug-world-gen-light MODULE src/DebugWorldGenModuleLight.cpp ) # Link only essential libs target_link_libraries(debug-world-gen-light PRIVATE nlohmann_json::nlohmann_json PRIVATE ${CMAKE_DL_LIBS} ) # Module naming set_target_properties(debug-world-gen-light PROPERTIES PREFIX "" OUTPUT_NAME "debug-world-gen-light" SUFFIX ".so" ) # Lightweight test add_executable(test-light src/test_light.cpp src/DebugWorldGenModuleLight.cpp )