diff options
author | xengineering <me@xengineering.eu> | 2025-02-23 17:45:06 +0100 |
---|---|---|
committer | xengineering <me@xengineering.eu> | 2025-02-23 20:15:41 +0100 |
commit | d24bdfcca2eb9d3ef9c5a77d5e96dc80c73cf13e (patch) | |
tree | 57f44f1848d6d1a5a6588b6d774387c188dc32a9 /fw | |
parent | 2fa7bd797bff2b232d7c2ef28b295437987ced58 (diff) | |
download | iot-contact-d24bdfcca2eb9d3ef9c5a77d5e96dc80c73cf13e.tar iot-contact-d24bdfcca2eb9d3ef9c5a77d5e96dc80c73cf13e.tar.zst iot-contact-d24bdfcca2eb9d3ef9c5a77d5e96dc80c73cf13e.zip |
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.
Diffstat (limited to 'fw')
-rw-r--r-- | fw/CMakeLists.txt | 17 |
1 files changed, 17 insertions, 0 deletions
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 |