mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-08-08 01:45:21 +00:00
Refactor the code to support the new runners.yaml file created by the build system. Compared to fishing around in the CMake cache, this makes it trivial to put all the command line arguments to a runner-based command on equal footing, regardless of if they're defined in the runners package proper or defined in run_common.py. This allows board.cmake files to do things like this: board_set_runner_args(foo --bin-file=${PROJECT_BINARY_DIR}/my-signed.bin) While at it, make some other cleanups: - Stop using the obsolete and deprecated west.cmake module while we're here in favor of the zcmake.py module which was added to Zephyr a long time ago. Yikes. I had forgotten this was still here. - Stop using west.util's wrap function in favor of raw use of textwrap. The west function splits on hyphens, which is breaking runner names like "em-starterkit". - Clean up the --context output a bit Fixes: #22563 Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no> |
||
---|---|---|
.. | ||
completion | ||
runners | ||
tests | ||
boards.py | ||
build_helpers.py | ||
build.py | ||
completion.py | ||
debug.py | ||
flash.py | ||
README.txt | ||
run_common.py | ||
sign.py | ||
zcmake.py | ||
zephyr_ext_common.py |
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!