zephyr/scripts/west_commands
Martí Bolívar 877fc59e30 scripts: west build: handle missing CMAKE_PROJECT_NAME
If there is an error in the CMake configuration phase (this can happen
if a script run using execute_process() fails, for instance), the
build system is incompletely generated and future attempts to run
'west build' will fail. This manifests in the following error:

    Error: could not find CMAKE_PROJECT_NAME in Cache

Whenever we see that the cache exists but this variable is missing,
let's just force CMake to run again. This avoids the error in my
testing and is a bit more user friendly. I've seen multiple users
asking what to do in this situation; the answer is always "just build
it again", so we might as well do it for them.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-04-11 15:04:04 -04:00
..
completion cmake: West extension command for Zephyr config package registration 2020-03-27 16:23:46 +01:00
runners boards: nrf52_pca10040: Rename to nrf52dk_nrf52832 2020-04-06 13:09:07 +02:00
tests board: arc: Switch to generic OpenOCD runner 2020-02-13 10:45:44 +02:00
boards.py scripts: west-commands: Updates needed when removing ZEPHYR_BASE env 2020-03-27 16:23:46 +01:00
build_helpers.py scripts: west_commands: fix argument handling with runners.yaml 2020-02-20 09:06:09 +02:00
build.py scripts: west build: handle missing CMAKE_PROJECT_NAME 2020-04-11 15:04:04 -04:00
completion.py west: completion.py: Fix bad indentation and blank lines at end of file 2019-09-07 08:09:56 -04:00
debug.py scripts: west_commands: fix argument handling with runners.yaml 2020-02-20 09:06:09 +02:00
export.py cmake: Relocating Zephyr Unittest CMake package. 2020-03-31 10:00:15 -04:00
flash.py scripts: west_commands: fix argument handling with runners.yaml 2020-02-20 09:06:09 +02:00
README.txt west: require v0.6.0 or higher 2019-08-05 15:17:45 +02:00
run_common.py scripts: run_common: don't dump stack on unavailable runner 2020-03-25 19:43:30 +01:00
sign.py scripts: west-commands: Updates needed when removing ZEPHYR_BASE env 2020-03-27 16:23:46 +01:00
zcmake.py scripts: west_commands: verify minimum cmake version 2019-09-07 10:08:23 -04:00
zephyr_ext_common.py scripts: west-commands: Updates needed when removing ZEPHYR_BASE env 2020-03-27 16:23:46 +01:00

This directory contains implementations for west commands which are
tightly coupled to the zephyr tree. Currently, those are 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 just those files that change along with Zephyr
itself.

When extending this code, please keep the unit tests (in tests/) up to
date. You can run the tests with this command from this directory:

$ PYTHONPATH=$PWD py.test

Windows users will need to find the path to .west/west/src in their
Zephyr installation, then run something like this:

> cmd /C "set PYTHONPATH=path\to\zephyr\scripts\west_commands && py.test"

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!