blob: 1e6849f86ba59904ea06f7c1ad07adb5a9de8327 [file] [log] [blame] [edit]
function(UPDATE_ARCH_TIMINGS)
set(options)
set(oneValueArgs INPUT OUTPUT)
set(multiValueArgs)
cmake_parse_arguments(
UPDATE_ARCH_TIMINGS
"${options}"
"${oneValueArgs}"
"${multiValueArgs}"
${ARGN}
)
set(input ${UPDATE_ARCH_TIMINGS_INPUT})
set(output ${UPDATE_ARCH_TIMINGS_OUTPUT})
add_file_target(FILE ${output} GENERATED)
if(IS_DIRECTORY ${SDF_TIMING_DIRECTORY} AND EXISTS ${BELS_MAP})
get_target_property_required(PYTHON3 env PYTHON3)
set(update_arch_timings ${f4pga-arch-defs_SOURCE_DIR}/utils/update_arch_timings.py)
add_custom_command(
OUTPUT ${output}
DEPENDS
${PYTHON3}
${update_arch_timings}
${input}
COMMAND
PYTHONPATH=${f4pga-arch-defs_SOURCE_DIR}/third_party/python-sdf-timing:${f4pga-arch-defs_BINARY_DIR}/env/conda/lib/python3.7/site-packages
${PYTHON3} ${update_arch_timings}
--sdf_dir ${SDF_TIMING_DIRECTORY}
--bels_map ${BELS_MAP}
--input_arch ${input}
--out_arch ${output}
)
else()
configure_file(${input} ${output} COPY_ONLY)
endif()
endfunction(UPDATE_ARCH_TIMINGS)