mirror of
https://git.yoctoproject.org/poky
synced 2026-02-06 00:38:45 +01:00
Add a command to bitbake-layers to list the machines available in the current configuration. (From OE-Core rev: 837d32dafc125d58bb11da990ac251bd5aad027e) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
38 lines
1.2 KiB
Python
38 lines
1.2 KiB
Python
#
|
|
# Copyright OpenEmbedded Contributors
|
|
#
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
|
#
|
|
|
|
import logging
|
|
import pathlib
|
|
|
|
from bblayers.common import LayerPlugin
|
|
|
|
logger = logging.getLogger('bitbake-layers')
|
|
|
|
def plugin_init(plugins):
|
|
return ShowMachinesPlugin()
|
|
|
|
class ShowMachinesPlugin(LayerPlugin):
|
|
def do_show_machines(self, args):
|
|
"""List the machines available in the currently configured layers."""
|
|
|
|
for layer_dir in self.bblayers:
|
|
layer_name = self.get_layer_name(layer_dir)
|
|
|
|
if args.layer and args.layer != layer_name:
|
|
continue
|
|
|
|
for p in sorted(pathlib.Path(layer_dir).glob("conf/machine/*.conf")):
|
|
if args.bare:
|
|
logger.plain("%s" % (p.stem))
|
|
else:
|
|
logger.plain("%s (%s)" % (p.stem, layer_name))
|
|
|
|
|
|
def register_commands(self, sp):
|
|
parser_show_machines = self.add_command(sp, "show-machines", self.do_show_machines)
|
|
parser_show_machines.add_argument('-b', '--bare', help='output just the machine names, not the source layer', action='store_true')
|
|
parser_show_machines.add_argument('-l', '--layer', help='Limit to machines in the specified layer')
|