lesi/scripts/CMakeLists.txt
2023-11-18 10:24:37 -07:00

28 lines
1.3 KiB
CMake

include("${CMAKE_SOURCE_DIR}/config/scripts_to_embed.cmake")
set(SCRIPT_SOURCES_C)
file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/generated)
foreach(script_source ${SCRIPT_SOURCES})
get_filename_component(GEN_BASE_NAME ${script_source} NAME_WLE)
set(file_c "script_${GEN_BASE_NAME}.c")
add_custom_command(
OUTPUT ${CMAKE_BINARY_DIR}/generated/${file_c}
COMMAND ${LUA_BINARY} ${CMAKE_SOURCE_DIR}/src/lua2c.lua ${script_source} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_BINARY_DIR}/generated
VERBATIM
COMMENT "Generating: ${CMAKE_BINARY_DIR}/generated/${file_c}"
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${script_source}
)
list(APPEND SCRIPT_BASE_NAMES ${GEN_BASE_NAME})
list(APPEND SCRIPT_SOURCES_C ${CMAKE_BINARY_DIR}/generated/${file_c})
endforeach()
add_custom_command(
OUTPUT ${CMAKE_BINARY_DIR}/generated/generated_scripts.c
COMMAND ${LUA_BINARY} ${CMAKE_SOURCE_DIR}/src/embedded_generate.lua ${CMAKE_BINARY_DIR}/generated ${SCRIPT_BASE_NAMES}
COMMENT "Generating: ${CMAKE_BINARY_DIR}/generated/generated_scripts.c"
DEPENDS ${SCRIPT_SOURCES_C} ${CMAKE_SOURCE_DIR}/src/embedded_generate.lua
)
add_custom_target(generate_scripts DEPENDS ${CMAKE_BINARY_DIR}/generated/generated_scripts.c)