Skip to content

Commit

Permalink
cmake: Prevent regenerating dfu multi image on every build
Browse files Browse the repository at this point in the history
* Move running dfu_multi_image_tool.py out of custom target to stop
regenerating the image on every build.
* Fix DEPENDS for dfu_multi_image_package.

Signed-off-by: Adrian Gielniewski <[email protected]>
  • Loading branch information
adigie committed Jan 7, 2025
1 parent cac49ac commit a5dac68
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 3 deletions.
8 changes: 6 additions & 2 deletions cmake/dfu_multi_image.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -37,14 +37,18 @@ function(dfu_multi_image_package TARGET_NAME)
string(REPLACE ";" "\n" SCRIPT_ARGS "${SCRIPT_ARGS}")
file(GENERATE OUTPUT ${ARG_OUTPUT}.args CONTENT ${SCRIPT_ARGS})

add_custom_target(${TARGET_NAME} ALL
add_custom_command(
COMMAND
${Python3_EXECUTABLE}
${ZEPHYR_NRF_MODULE_DIR}/scripts/bootloader/dfu_multi_image_tool.py
@${ARG_OUTPUT}.args
BYPRODUCTS
OUTPUT
${ARG_OUTPUT}
DEPENDS
${ARG_DEPENDS}
)
add_custom_target(${TARGET_NAME} ALL
DEPENDS
${ARG_OUTPUT}
)
endfunction()
2 changes: 1 addition & 1 deletion subsys/bootloader/cmake/packaging.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ if(SB_CONFIG_DFU_MULTI_IMAGE_PACKAGE_BUILD)

list(APPEND dfu_multi_image_ids 0)
list(APPEND dfu_multi_image_paths "${${DEFAULT_IMAGE}_image_dir}/zephyr/${${DEFAULT_IMAGE}_kernel_name}.signed.bin")
list(APPEND dfu_multi_image_targets ${DEFAULT_IMAGE}_extra_byproducts)
list(APPEND dfu_multi_image_targets ${DEFAULT_IMAGE}_extra_byproducts ${dfu_multi_image_paths})
endif()

if(SB_CONFIG_DFU_MULTI_IMAGE_PACKAGE_NET)
Expand Down

0 comments on commit a5dac68

Please sign in to comment.