Jamie McCrae | 4c7942e | 2023-10-30 11:59:57 +0000 | [diff] [blame] | 1 | function(mathup num align result) |
| 2 | math(EXPR out "(((${num}) + ((${align}) - 1)) & ~((${align}) - 1))") |
| 3 | set(${result} "${out}" PARENT_SCOPE) |
| 4 | endfunction() |
| 5 | |
| 6 | function(${SYSBUILD_CURRENT_MODULE_NAME}_pre_image_cmake) |
| 7 | cmake_parse_arguments(POST_IMAGE_CMAKE "" "IMAGE" "IMAGES" ${ARGN}) |
| 8 | |
| 9 | if(NOT "${POST_IMAGE_CMAKE_IMAGE}" STREQUAL "mcuboot") |
| 10 | return() |
| 11 | endif() |
| 12 | |
| 13 | set_property( |
| 14 | DIRECTORY APPEND PROPERTY |
| 15 | CMAKE_CONFIGURE_DEPENDS |
| 16 | ${CMAKE_BINARY_DIR}/mcuboot/CMakeCache.txt |
| 17 | ${CMAKE_BINARY_DIR}/mcuboot/zephyr/.config |
| 18 | ) |
| 19 | endfunction(${SYSBUILD_CURRENT_MODULE_NAME}_pre_image_cmake) |
| 20 | |
| 21 | function(${SYSBUILD_CURRENT_MODULE_NAME}_post_image_cmake) |
| 22 | cmake_parse_arguments(POST_IMAGE_CMAKE "" "IMAGE" "IMAGES" ${ARGN}) |
| 23 | |
| 24 | if(NOT "${POST_IMAGE_CMAKE_IMAGE}" STREQUAL "mcuboot") |
| 25 | return() |
| 26 | endif() |
| 27 | |
| 28 | foreach(image ${IMAGES}) |
| 29 | set(app_type) |
| 30 | get_property(app_type TARGET ${image} PROPERTY APP_TYPE) |
| 31 | |
| 32 | if("${app_type}" STREQUAL "MAIN") |
| 33 | sysbuild_get(mcuboot_image_footer_size IMAGE mcuboot CACHE) |
Jamie McCrae | a4eda30 | 2024-01-29 11:00:25 +0000 | [diff] [blame] | 34 | sysbuild_get(mcuboot_image_upgrade_footer_size IMAGE mcuboot CACHE) |
Jamie McCrae | 4c7942e | 2023-10-30 11:59:57 +0000 | [diff] [blame] | 35 | math(EXPR mcuboot_image_footer_size "${mcuboot_image_footer_size}" OUTPUT_FORMAT HEXADECIMAL) |
Jamie McCrae | a4eda30 | 2024-01-29 11:00:25 +0000 | [diff] [blame] | 36 | math(EXPR mcuboot_image_upgrade_footer_size "${mcuboot_image_upgrade_footer_size}" OUTPUT_FORMAT HEXADECIMAL) |
Jamie McCrae | 4c7942e | 2023-10-30 11:59:57 +0000 | [diff] [blame] | 37 | |
| 38 | set_property(TARGET ${image} APPEND_STRING PROPERTY CONFIG "CONFIG_ROM_END_OFFSET=${mcuboot_image_footer_size}\n") |
Jamie McCrae | a4eda30 | 2024-01-29 11:00:25 +0000 | [diff] [blame] | 39 | set_property(TARGET ${image} APPEND_STRING PROPERTY CONFIG "CONFIG_MCUBOOT_UPDATE_FOOTER_SIZE=${mcuboot_image_upgrade_footer_size}\n") |
Jamie McCrae | 4c7942e | 2023-10-30 11:59:57 +0000 | [diff] [blame] | 40 | return() |
| 41 | endif() |
| 42 | endforeach() |
| 43 | endfunction(${SYSBUILD_CURRENT_MODULE_NAME}_post_image_cmake) |