zephyr/scripts/west_commands
Martí Bolívar 9ca1de18eb scripts: west_commands: add .config parsing helper
Rolling yet another parser turns out to be the best way to let west
extensions respond to Kconfig values. See source code comments in the
patch for details.

The sanitylib library has some similar functionality but it isn't
exactly the same, and it gets strings wrong. For example, that parser
can't handle this option:

CONFIG_FOO="he said \"no\" to me"

This one can, and it has a couple of other features we'll find useful
for west extensions eventually besides.

(Not to mention that sanitylib also rolled its own CMake cache parser,
which also exists in west_commands.)

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-08-19 09:51:13 -04:00
..
completion
runners nrfjprog.py: Allow passing a glob to --snr 2020-08-14 13:32:36 +02:00
tests nrfjprog.py: Allow passing a glob to --snr 2020-08-14 13:32:36 +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: clean up west build/flash/debug help 2020-06-29 08:47:04 -04:00
build.py cmake: west: invoke west using same python as rest of build system 2020-07-08 23:23:04 -04:00
completion.py
debug.py scripts: clean up west build/flash/debug help 2020-06-29 08:47:04 -04:00
export.py scripts: fix west zephyr-export error handling 2020-04-16 07:46:18 -04:00
flash.py scripts: clean up west build/flash/debug help 2020-06-29 08:47:04 -04:00
README.txt
run_common.py cmake: west: west flash dependencies in sync with CMake flash target 2020-07-01 07:58:10 -04:00
sign.py west: sign: Move imgtool specific docs to appropriate place 2020-08-03 13:49:17 +02:00
zcmake.py cmake: west: invoke west using same python as rest of build system 2020-07-08 23:23:04 -04:00
zephyr_ext_common.py scripts: west_commands: add .config parsing helper 2020-08-19 09:51:13 -04: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!