# generate init_global.cpp add_custom_command( OUTPUT init_global.cpp COMMAND ${CMAKE_CURRENT_LIST_DIR}/gen-default-cfg.py --config ${PROJECT_SOURCE_DIR}/linux/config.yaml --template ${CMAKE_CURRENT_LIST_DIR}/init_global.cpp.in --output init_global.cpp DEPENDS ${CMAKE_CURRENT_LIST_DIR}/gen-default-cfg.py ${PROJECT_SOURCE_DIR}/linux/config.yaml ) add_library(configuration STATIC configuration.cpp configuration.h init_global.cpp qt_specialization.cpp qt_specialization.h ) target_link_libraries(configuration PUBLIC Qt6::Gui spdlog::spdlog) target_include_directories(configuration PUBLIC ${CMAKE_CURRENT_LIST_DIR}) add_executable(test_configuration test/configuration.cpp) target_link_libraries(test_configuration PUBLIC configuration GTest::gtest_main) gtest_add_tests(TARGET test_configuration SOURCES test/configuration.cpp WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/test)