From d24bdfcca2eb9d3ef9c5a77d5e96dc80c73cf13e Mon Sep 17 00:00:00 2001 From: xengineering Date: Sun, 23 Feb 2025 17:45:06 +0100 Subject: fw: btl: Integrate bootloader build This allows to build the MCUboot bootloader as part of the existing CMake build system. The bootloader is embedded as external project since multiple Zephyr applications in one build are not easily feasible. --- fw/CMakeLists.txt | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/fw/CMakeLists.txt b/fw/CMakeLists.txt index 000039e..8c229e0 100644 --- a/fw/CMakeLists.txt +++ b/fw/CMakeLists.txt @@ -8,7 +8,24 @@ set(BOARD "nucleo_f767zi") set(ZEPHYR_MODULES "${CMAKE_CURRENT_SOURCE_DIR}/zephyrproject/modules/hal/cmsis" "${CMAKE_CURRENT_SOURCE_DIR}/zephyrproject/modules/hal/stm32" + "${CMAKE_CURRENT_SOURCE_DIR}/zephyrproject/modules/crypto/mbedtls" + "${CMAKE_CURRENT_SOURCE_DIR}/zephyrproject/bootloader/mcuboot" ) + +string(REPLACE ";" "," ZEPHYR_MODULES_COMMA "${ZEPHYR_MODULES}") +include(ExternalProject) +ExternalProject_Add( + bootloader + PREFIX bootloader + SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/zephyrproject/bootloader/mcuboot/boot/zephyr" + BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/bootloader" + INSTALL_COMMAND "" + LIST_SEPARATOR "," + CMAKE_ARGS + "-DBOARD=${BOARD}" + "-DZEPHYR_MODULES=${ZEPHYR_MODULES_COMMA}" +) + find_package(Zephyr REQUIRED HINTS -- cgit v1.2.3-70-g09d2