mcuboot/samples/zephyr
David Brown 358ca1ae4f Use Ninja instead of Makefiles for Zephyr
Zephyr builds use 'cmake' which can generate either makefiles, or use
the Ninja build tools.  There are several significant advantages to
using Ninja as the build tool:

  - It is significantly faster.  Ninja reads a directory and stats the
    files in it once.  Make often stats a given directory thousands of
    times, many for files that don't even exist.

  - It has better output.  Ninja collects commands together with their
    error output.  When doing multi-cpu builds, Ninja prints a status
    indicator, and only prints fully verbose commands when that command
    fails.  Instead of having to try an piece together a given command
    with its errors, they will always be together.

  - Make's support of multiple CPUs is a crude hack.  Make forks off
    multiple processes to use multiple CPUs.  These processes don't
    communicate with each other (very much), which causes make to often
    continue after enountering errors.  It is common for a multi-CPU
    make invocation to print hundreds or thousands of additional lines
    after an error message.

Nearly all distros have a version of Ninja available in their package
manager, making this change of low cost.

Signed-off-by: David Brown <david.brown@linaro.org>
2019-07-29 11:29:21 -05:00
..
bad-keys zephyr: Move testplan into sample Makefile 2017-09-14 16:10:50 -06:00
hello-world zephyr: cmake: Remove obsolete code 2019-04-10 10:06:35 -03:00
.gitignore samples: Add .gitignore to ignore output files 2017-07-20 14:55:50 -06:00
Makefile Use Ninja instead of Makefiles for Zephyr 2019-07-29 11:29:21 -05:00
README.md Use Ninja instead of Makefiles for Zephyr 2019-07-29 11:29:21 -05:00
build-boot.sh zephyr: port build system to CMake 2017-11-20 18:10:29 -07:00
build-hello.sh zephyr: port build system to CMake 2017-11-20 18:10:29 -07:00
overlay-ecdsa-p256.conf samples/zephyr: Build ECDSA tests with ECDSA key 2019-01-22 16:08:46 -07:00
overlay-rsa.conf zephyr: migrate signature type to Kconfig 2018-04-25 18:44:03 -03:00
overlay-skip-primary-slot-validate.conf Replace flash partitioning terminology 2019-03-13 15:40:21 -06:00
overlay-upgrade-only.conf zephyr: migrate upgrade-only to Kconfig 2018-04-25 18:44:03 -03:00
run-tests.go docs: samples: Update pyocd calls to unified tool subcommands 2019-02-19 14:09:36 -03:00
run-tests.sh docs: samples: Update pyocd calls to unified tool subcommands 2019-02-19 14:09:36 -03:00

README.md

Zephyr sample application.

In order to successfully deploy an application using mcuboot, it is necessary to build at least one other binary: the application itself. It is beyond the scope of this documentation to describe what an application is able to do, however a working example is certainly useful.

Please see the comments in the Makefile in this directory for more details on how to build and test this application.

Note that this sample uses the "ninja" build tool, which can be installed on most systems using the system package manager, e.g., for a Debian-based distro:

$ sudo apt-get install ninja

or in Fedora:

$ sudo dnf install ninja