23 lines
911 B
CMake
23 lines
911 B
CMake
# Copyright (c) 2026 Dominic Masters
|
|
#
|
|
# This software is released under the MIT License.
|
|
# https://opensource.org/licenses/MIT
|
|
|
|
function(dusk_csv_to_array INPUT_PATH OUTPUT_NAME_RELATIVE VARIABLE INDEX_INCLUDE_PATH INDEX_PREFIX INDEX_COLUMN DATA_COLUMN)
|
|
set(DUSK_DEFS_TARGET_NAME "DUSK_DEFS_${OUTPUT_NAME_RELATIVE}")
|
|
string(REPLACE "." "_" DUSK_DEFS_TARGET_NAME ${DUSK_DEFS_TARGET_NAME})
|
|
string(REPLACE "/" "_" DUSK_DEFS_TARGET_NAME ${DUSK_DEFS_TARGET_NAME})
|
|
|
|
dusk_run_python(
|
|
${DUSK_DEFS_TARGET_NAME}
|
|
tools.csv_to_array
|
|
--csv ${INPUT_PATH}
|
|
--output ${DUSK_GENERATED_HEADERS_DIR}/${OUTPUT_NAME_RELATIVE}
|
|
--variable ${VARIABLE}
|
|
--index-include-path ${INDEX_INCLUDE_PATH}
|
|
--index-prefix ${INDEX_PREFIX}
|
|
--index-column ${INDEX_COLUMN}
|
|
--data-column ${DATA_COLUMN}
|
|
)
|
|
add_dependencies(${DUSK_LIBRARY_TARGET_NAME} ${DUSK_DEFS_TARGET_NAME})
|
|
endfunction() |