lambda-shuttle / mbed-os-example-ble-fota

MbedOS Example for BLE FOTA Service
Apache License 2.0
0 stars 0 forks source link

Add CMakeLists.txt to MCUBoot example #3

Closed lambda-shuttle closed 3 years ago

lambda-shuttle commented 3 years ago

Currently, the MCUBoot example requires the use of mbed-cli to build the bootloader and primary application. However, mbed-tools is the new, future command-line tool for MbedOS. The Mock example has already been updated to use this.

Note: mbed-tools is also known as Mbed CLI 2. This new tool makes use of "Ninja as a build system, and CMake to generate the build environment and manage the build process in a compiler-independent manner." More information can be found here.

A CMakeLists.txt file "contains a set of directives and instructions describing the project's source files and targets (executable, library, or both)" as mentioned here.

The aim is to update the MCUBoot example with CMakeLists.txt files for use with mbed-tools. Please refer to CMake file in the Mock example as well as other BLE examples as a point of reference; the requirements and relevant resources are listed below.

Requirements:

Resources:

Associated branch: cmake-support

lambda-shuttle commented 3 years ago

Development work associated with this issue has been currently put on hold until the 17th of August, 2021. The reason for this decision is because the MCUboot port for Mbed OS was built with the old cli in mind; as a result, writing a CMakeLists.txt isn't entirely trivial without understanding how the port actually works. This would involve discussions with the original contributors (AGlassOfMilk and LDong-ARM) among others.

Note: This issue would see modifications to the MCUboot Mbed OS port and would require a pull request to the MCUBoot repository to add support for CMake.

For the time-being, #1 would use both cli tools and #2 would contain a note referencing this issue and further details on why it isn't trivial to solve.