25 lines
881 B
CMake
25 lines
881 B
CMake
# Runs rdfu for the flash/flash-bl/flash-uf2 targets in radio/src/CMakeLists.txt.
|
|
# Invoked via `cmake -P` so resolving/fetching the binary happens at build
|
|
# time, not on every configure.
|
|
#
|
|
# -D args: RDFU_SUBCOMMAND, RDFU_FILE, RDFU_VENDOR, RDFU_PRODUCT,
|
|
# RDFU_START_ADDRESS (optional, omitted for UF2 writes)
|
|
cmake_minimum_required(VERSION 3.14)
|
|
|
|
include(${CMAKE_CURRENT_LIST_DIR}/FetchRdfuCli.cmake)
|
|
|
|
set(RDFU_ARGS ${RDFU_SUBCOMMAND} --vendor ${RDFU_VENDOR} --product ${RDFU_PRODUCT})
|
|
if(DEFINED RDFU_START_ADDRESS AND NOT RDFU_START_ADDRESS STREQUAL "")
|
|
list(APPEND RDFU_ARGS --start-address ${RDFU_START_ADDRESS})
|
|
endif()
|
|
list(APPEND RDFU_ARGS ${RDFU_FILE})
|
|
|
|
execute_process(
|
|
COMMAND ${RDFU_EXECUTABLE} ${RDFU_ARGS}
|
|
RESULT_VARIABLE RDFU_RESULT
|
|
)
|
|
|
|
if(NOT RDFU_RESULT EQUAL 0)
|
|
message(FATAL_ERROR "rdfu ${RDFU_SUBCOMMAND} failed (exit code ${RDFU_RESULT})")
|
|
endif()
|