diff --git a/lang/CMakeLists.txt b/lang/CMakeLists.txt index 6603580..0d85a8a 100644 --- a/lang/CMakeLists.txt +++ b/lang/CMakeLists.txt @@ -17,6 +17,7 @@ file(GLOB SRC_MODULES "${PROJECT_SOURCE_DIR}/modules/*.txt") set(MODULE_COMPILER ${CMAKE_CURRENT_SOURCE_DIR}/compile.py) set(MODULE_C_FILES "") +set(MODULE_IDS "") foreach(MODULE ${SRC_MODULES}) get_filename_component(ID ${MODULE} NAME_WLE) set(MODULE_OUT modules/${ID}.c) @@ -26,13 +27,16 @@ DEPENDS ${MODULE} ${MODULE_COMPILER} ) list(APPEND MODULE_C_FILES ${MODULE_OUT}) + set(MODULE_IDS "${MODULE_IDS}X(${ID})\n") endforeach() +file(CONFIGURE OUTPUT include/module_ids.x CONTENT ${MODULE_IDS}) # Create TardisLang library project(TardisLang) file(GLOB SRC_FILES "${PROJECT_SOURCE_DIR}/*.c") add_library(TardisLang ${SRC_FILES} ${MODULE_C_FILES}) target_include_directories(TardisLang PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}") +target_include_directories(TardisLang PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/include") set_property(TARGET TardisLang PROPERTY C_STANDARD 11) target_compile_options(TardisLang PRIVATE ${compile_opts}) target_link_libraries(TardisLang PUBLIC mini-gmp)