zephyr/scripts/west_commands
Torsten Rasmussen a9efb1dae6 west: update build extension command to use APP_DIR
`west build` can be invoked without specifying the source directory when
being invoked from the source directory itself.
When using `west build` for incremental builds, then the build command
will examine the CMake cache to determine the application dir by using
the value of CMAKE_HOME_DIRECTORY.

With sysbuild, this leads to the wrong assumption that the sysbuild
itself is the application to build.

Instead, have west build look for APP_DIR which points to the correct
source dir when sysbuild is used. Use APPLICATION_SOURCE_DIR when
APP_DIR is not set, as this indicates a no-sysbuild build.

Keep CMAKE_HOME_DIRECTORY behavior as last fallback mechanism.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-06-17 12:09:45 -04:00
..
completion scripts: west: commands: completion: bash: support shield argument 2024-05-21 16:47:24 -04:00
fetchers
runners west: runners: openocd: handle empty --elf-file 2024-06-14 21:05:49 -04:00
tests West: Add west robot command 2024-05-28 12:54:52 +02:00
zspdx scripts: zephyr_module: Move SPDX name normalization to writer.py 2024-06-14 19:07:48 -04:00
bindesc.py
blobs.py scripts: west: blobs: Check for existence of modules 2024-06-12 12:50:12 -04:00
boards.py terminology: adopt CMake, python, and Kconfig code to use qualifiers 2024-03-21 15:32:17 +01:00
build_helpers.py
build.py west: update build extension command to use APP_DIR 2024-06-17 12:09:45 -04:00
completion.py
debug.py
export.py
flash.py scripts: west: flash: Fix issue with loading outdated domain file 2024-06-13 17:53:00 +02:00
mypy.ini
README.txt
robot.py West: Add west robot command 2024-05-28 12:54:52 +02:00
run_common.py scripts: west: flash: Fix issue with loading outdated domain file 2024-06-13 17:53:00 +02:00
run_tests.py
shields.py scripts: west: commands: shields: add cmd for listing supported shields 2024-05-21 16:47:24 -04:00
sign.py build: namespace autoconf.h with zephyr/ 2024-05-28 22:03:55 +02:00
simulate.py West: Add west simulate command 2024-05-28 12:54:52 +02:00
spdx.py
twister_cmd.py west: twister: Fix default options setup 2024-05-16 09:21:35 +02:00
zcmake.py
zephyr_ext_common.py

This directory contains implementations for west commands which are
tightly coupled to the zephyr tree. This includes the build, flash,
and debug commands.

Before adding more here, consider whether you might want to put new
extensions in upstream west. For example, any commands which operate
on the multi-repo need to be in upstream west, not here. Try to limit
what goes in here to Zephyr-specific features.

When extending this code, please keep the unit tests (in tests/) up to
date. The mypy static type checker is also run on the runners package.

To run these tests locally on Windows, run:

   py -3 run_tests.py

On macOS and Linux:

   ./run_tests.py

Note that these tests are run as part of Zephyr's CI when submitting
an upstream pull request, and pull requests which break the tests
cannot be merged.

Thanks!