Update to the latest west. This includes a new 'attach' command. There are also multi-repo commands, but those won't get exposed to the user unless they install Zephyr using "west init" + "west fetch" (and not, say, "git clone"). Replace the launchers; they now detect whether zephyr is part of a multi-repo installation, and run the west code in its own repository if that is the case. This also requires an update to: - the flash/debug CMakeLists.txt, as the new west package is no longer executable as a module and must have its main script run by the interpreter instead. - the documentation, to reflect a rename and with a hack to fix the automodule directive in flash-debug.rst for now Signed-off-by: Marti Bolivar <marti@foundries.io>
35 lines
990 B
Python
35 lines
990 B
Python
# Copyright (c) 2017 Linaro Limited.
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
from runners.core import ZephyrBinaryRunner
|
|
|
|
# We import these here to ensure the ZephyrBinaryRunner subclasses are
|
|
# defined; otherwise, ZephyrBinaryRunner.create_for_shell_script()
|
|
# won't work.
|
|
|
|
# Explicitly silence the unused import warning.
|
|
# flake8: noqa: F401
|
|
from runners import arc
|
|
from runners import bossac
|
|
from runners import dfu
|
|
from runners import esp32
|
|
from runners import jlink
|
|
from runners import nios2
|
|
from runners import nrfjprog
|
|
from runners import nsim
|
|
from runners import openocd
|
|
from runners import pyocd
|
|
from runners import qemu
|
|
from runners import xtensa
|
|
from runners import intel_s1000
|
|
|
|
def get_runner_cls(runner):
|
|
'''Get a runner's class object, given its name.'''
|
|
for cls in ZephyrBinaryRunner.get_runners():
|
|
if cls.name() == runner:
|
|
return cls
|
|
raise ValueError('unknown runner "{}"'.format(runner))
|
|
|
|
__all__ = ['ZephyrBinaryRunner', 'get_runner_cls']
|