* [PATCH] bitbake: bblayers/query: Add --show-variants option to display BBCLASSEXTEND variants
@ 2025-10-24 16:40 Osama Abdelkader
2025-10-25 0:48 ` [OE-core] " Peter Kjellerstedt
2025-12-08 17:28 ` adrian.freihofer
0 siblings, 2 replies; 4+ messages in thread
From: Osama Abdelkader @ 2025-10-24 16:40 UTC (permalink / raw)
To: openembedded-core, ross.burton; +Cc: Osama Abdelkader
The bitbake-layers show-recipes command was hiding BBCLASSEXTEND recipe
variants (e.g., devupstream, nativesdk, cross-canadian) by design, to
avoid clutter in the output. However, this made it impossible to see
recipes like linux-firmware's devupstream variant which uses git snapshots
instead of release tarballs.
This patch adds a new --show-variants (-v) option to show-recipes that
allows users to view all BBCLASSEXTEND variants when needed, while
maintaining the default behavior of hiding them for a cleaner output.
Example usage:
bitbake-layers show-recipes -v linux-firmware
This will now show both:
- Base version: 1:20251011
- Devupstream version: 1:20251011+git
Signed-off-by: Osama Abdelkader <osama.abdelkader@gmail.com>
---
bitbake/lib/bblayers/query.py | 23 ++++++++++++++++-------
1 file changed, 16 insertions(+), 7 deletions(-)
diff --git a/bitbake/lib/bblayers/query.py b/bitbake/lib/bblayers/query.py
index eb7cb465b4..11341d5d53 100644
--- a/bitbake/lib/bblayers/query.py
+++ b/bitbake/lib/bblayers/query.py
@@ -52,7 +52,7 @@ layer, with the preferred version first. Note that skipped recipes that
are overlayed will also be listed, with a " (skipped)" suffix.
"""
- items_listed = self.list_recipes('Overlayed recipes', None, True, args.same_version, args.filenames, False, True, None, False, None, args.mc)
+ items_listed = self.list_recipes('Overlayed recipes', None, True, args.same_version, args.filenames, False, True, None, False, None, args.mc, False)
# Check for overlayed .bbclass files
classes = collections.defaultdict(list)
@@ -119,9 +119,9 @@ skipped recipes will also be listed, with a " (skipped)" suffix.
title = 'Matching recipes:'
else:
title = 'Available recipes:'
- self.list_recipes(title, args.pnspec, False, False, args.filenames, args.recipes_only, args.multiple, args.layer, args.bare, inheritlist, args.mc)
+ self.list_recipes(title, args.pnspec, False, False, args.filenames, args.recipes_only, args.multiple, args.layer, args.bare, inheritlist, args.mc, args.show_variants)
- def list_recipes(self, title, pnspec, show_overlayed_only, show_same_ver_only, show_filenames, show_recipes_only, show_multi_provider_only, selected_layer, bare, inherits, mc):
+ def list_recipes(self, title, pnspec, show_overlayed_only, show_same_ver_only, show_filenames, show_recipes_only, show_multi_provider_only, selected_layer, bare, inherits, mc, show_variants=False):
if inherits:
bbpath = str(self.tinfoil.config_data.getVar('BBPATH'))
for classname in inherits:
@@ -203,8 +203,10 @@ skipped recipes will also be listed, with a " (skipped)" suffix.
# We only display once per recipe, we should prefer non extended versions of the
# recipe if present (so e.g. in OpenEmbedded, openssl rather than nativesdk-openssl
# which would otherwise sort first).
+ # However, if show_variants is True, we show all BBCLASSEXTEND variants.
if realfn[1] and realfn[0] in self.tinfoil.cooker.recipecaches[mc].pkg_fn:
- continue
+ if not show_variants:
+ continue
if inherits:
matchcount = 0
@@ -229,7 +231,11 @@ skipped recipes will also be listed, with a " (skipped)" suffix.
for prov in allproviders[p]:
provfile = bb.cache.virtualfn2realfn(prov[1])[0]
provlayer = self.get_file_layer(provfile)
- provs.append((provfile, provlayer, prov[0]))
+ # When show_variants is True, use the virtual filename to distinguish BBCLASSEXTEND variants
+ if show_variants:
+ provs.append((prov[1], provlayer, prov[0]))
+ else:
+ provs.append((provfile, provlayer, prov[0]))
if provlayer != preflayer:
multilayer = True
if prov[0] != pref[0]:
@@ -238,10 +244,12 @@ skipped recipes will also be listed, with a " (skipped)" suffix.
if not items_listed:
logger.plain('=== %s ===' % title)
items_listed = True
+ # When show_variants is True, use the virtual filename for preference check
+ pref_cmp_file = pref[1] if show_variants else preffile
print_item(preffile, p, self.version_str(pref[0][0], pref[0][1]), preflayer, True)
for (provfile, provlayer, provver) in provs:
- if provfile != preffile:
- print_item(provfile, p, self.version_str(provver[0], provver[1]), provlayer, False)
+ if provfile != pref_cmp_file:
+ print_item(bb.cache.virtualfn2realfn(provfile)[0] if show_variants else provfile, p, self.version_str(provver[0], provver[1]), provlayer, False)
# Ensure we don't show two entries for BBCLASSEXTENDed recipes
preffiles.append(preffile)
@@ -530,6 +538,7 @@ NOTE: .bbappend files can impact the dependencies.
parser_show_recipes.add_argument('-i', '--inherits', help='only list recipes that inherit the named class(es) - separate multiple classes using , (without spaces)', metavar='CLASS', default='')
parser_show_recipes.add_argument('-l', '--layer', help='only list recipes from the selected layer', default='')
parser_show_recipes.add_argument('-b', '--bare', help='output just names without the "(skipped)" marker', action='store_true')
+ parser_show_recipes.add_argument('-v', '--show-variants', help='show all BBCLASSEXTEND recipe variants (e.g., devupstream, nativesdk)', action='store_true')
parser_show_recipes.add_argument('--mc', help='use specified multiconfig', default='')
parser_show_recipes.add_argument('pnspec', nargs='*', help='optional recipe name specification (wildcards allowed, enclose in quotes to avoid shell expansion)')
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* RE: [OE-core] [PATCH] bitbake: bblayers/query: Add --show-variants option to display BBCLASSEXTEND variants
2025-10-24 16:40 [PATCH] bitbake: bblayers/query: Add --show-variants option to display BBCLASSEXTEND variants Osama Abdelkader
@ 2025-10-25 0:48 ` Peter Kjellerstedt
2025-12-08 17:28 ` adrian.freihofer
1 sibling, 0 replies; 4+ messages in thread
From: Peter Kjellerstedt @ 2025-10-25 0:48 UTC (permalink / raw)
To: osama.abdelkader@gmail.com,
openembedded-core@lists.openembedded.org, ross.burton@arm.com
> -----Original Message-----
> From: openembedded-core@lists.openembedded.org <openembedded-core@lists.openembedded.org> On Behalf Of Osama Abdelkader via lists.openembedded.org
> Sent: den 24 oktober 2025 18:40
> To: openembedded-core@lists.openembedded.org; ross.burton@arm.com
> Cc: Osama Abdelkader <osama.abdelkader@gmail.com>
> Subject: [OE-core] [PATCH] bitbake: bblayers/query: Add --show-variants option to display BBCLASSEXTEND variants
This should go to the bitbake-devel@lists.openembedded.org list instead.
And drop the "bitbake:" prefix from the subject. It is added by
combo-layer when updating the poky repository.
>
> The bitbake-layers show-recipes command was hiding BBCLASSEXTEND recipe
> variants (e.g., devupstream, nativesdk, cross-canadian) by design, to
> avoid clutter in the output. However, this made it impossible to see
> recipes like linux-firmware's devupstream variant which uses git snapshots
> instead of release tarballs.
>
> This patch adds a new --show-variants (-v) option to show-recipes that
> allows users to view all BBCLASSEXTEND variants when needed, while
> maintaining the default behavior of hiding them for a cleaner output.
>
> Example usage:
> bitbake-layers show-recipes -v linux-firmware
>
> This will now show both:
> - Base version: 1:20251011
> - Devupstream version: 1:20251011+git
>
> Signed-off-by: Osama Abdelkader <osama.abdelkader@gmail.com>
> ---
> bitbake/lib/bblayers/query.py | 23 ++++++++++++++++-------
> 1 file changed, 16 insertions(+), 7 deletions(-)
>
> diff --git a/bitbake/lib/bblayers/query.py b/bitbake/lib/bblayers/query.py
> index eb7cb465b4..11341d5d53 100644
> --- a/bitbake/lib/bblayers/query.py
> +++ b/bitbake/lib/bblayers/query.py
> @@ -52,7 +52,7 @@ layer, with the preferred version first. Note that skipped recipes that
> are overlayed will also be listed, with a " (skipped)" suffix.
> """
>
> - items_listed = self.list_recipes('Overlayed recipes', None, True, args.same_version, args.filenames, False, True, None, False, None, args.mc)
> + items_listed = self.list_recipes('Overlayed recipes', None, True, args.same_version, args.filenames, False, True, None, False, None, args.mc, False)
Since False is the default for show_variants, there is no add it
here explicitly.
>
> # Check for overlayed .bbclass files
> classes = collections.defaultdict(list)
> @@ -119,9 +119,9 @@ skipped recipes will also be listed, with a " (skipped)" suffix.
> title = 'Matching recipes:'
> else:
> title = 'Available recipes:'
> - self.list_recipes(title, args.pnspec, False, False, args.filenames, args.recipes_only, args.multiple, args.layer, args.bare, inheritlist, args.mc)
> + self.list_recipes(title, args.pnspec, False, False, args.filenames, args.recipes_only, args.multiple, args.layer, args.bare, inheritlist, args.mc, args.show_variants)
>
> - def list_recipes(self, title, pnspec, show_overlayed_only, show_same_ver_only, show_filenames, show_recipes_only, show_multi_provider_only, selected_layer, bare, inherits, mc):
> + def list_recipes(self, title, pnspec, show_overlayed_only, show_same_ver_only, show_filenames, show_recipes_only, show_multi_provider_only, selected_layer, bare, inherits, mc, show_variants=False):
> if inherits:
> bbpath = str(self.tinfoil.config_data.getVar('BBPATH'))
> for classname in inherits:
> @@ -203,8 +203,10 @@ skipped recipes will also be listed, with a " (skipped)" suffix.
> # We only display once per recipe, we should prefer non extended versions of the
> # recipe if present (so e.g. in OpenEmbedded, openssl rather than nativesdk-openssl
> # which would otherwise sort first).
> + # However, if show_variants is True, we show all BBCLASSEXTEND variants.
> if realfn[1] and realfn[0] in self.tinfoil.cooker.recipecaches[mc].pkg_fn:
> - continue
> + if not show_variants:
> + continue
>
> if inherits:
> matchcount = 0
> @@ -229,7 +231,11 @@ skipped recipes will also be listed, with a " (skipped)" suffix.
> for prov in allproviders[p]:
> provfile = bb.cache.virtualfn2realfn(prov[1])[0]
> provlayer = self.get_file_layer(provfile)
> - provs.append((provfile, provlayer, prov[0]))
> + # When show_variants is True, use the virtual filename to distinguish BBCLASSEXTEND variants
> + if show_variants:
> + provs.append((prov[1], provlayer, prov[0]))
> + else:
> + provs.append((provfile, provlayer, prov[0]))
> if provlayer != preflayer:
> multilayer = True
> if prov[0] != pref[0]:
> @@ -238,10 +244,12 @@ skipped recipes will also be listed, with a " (skipped)" suffix.
> if not items_listed:
> logger.plain('=== %s ===' % title)
> items_listed = True
> + # When show_variants is True, use the virtual filename for preference check
> + pref_cmp_file = pref[1] if show_variants else preffile
> print_item(preffile, p, self.version_str(pref[0][0], pref[0][1]), preflayer, True)
> for (provfile, provlayer, provver) in provs:
> - if provfile != preffile:
> - print_item(provfile, p, self.version_str(provver[0], provver[1]), provlayer, False)
> + if provfile != pref_cmp_file:
> + print_item(bb.cache.virtualfn2realfn(provfile)[0] if show_variants else provfile, p, self.version_str(provver[0], provver[1]), provlayer, False)
> # Ensure we don't show two entries for BBCLASSEXTENDed recipes
> preffiles.append(preffile)
>
> @@ -530,6 +538,7 @@ NOTE: .bbappend files can impact the dependencies.
> parser_show_recipes.add_argument('-i', '--inherits', help='only list recipes that inherit the named class(es) - separate multiple classes using , (without spaces)', metavar='CLASS', default='')
> parser_show_recipes.add_argument('-l', '--layer', help='only list recipes from the selected layer', default='')
> parser_show_recipes.add_argument('-b', '--bare', help='output just names without the "(skipped)" marker', action='store_true')
> + parser_show_recipes.add_argument('-v', '--show-variants', help='show all BBCLASSEXTEND recipe variants (e.g., devupstream, nativesdk)', action='store_true')
> parser_show_recipes.add_argument('--mc', help='use specified multiconfig', default='')
> parser_show_recipes.add_argument('pnspec', nargs='*', help='optional recipe name specification (wildcards allowed, enclose in quotes to avoid shell expansion)')
>
> --
> 2.43.0
//Peter
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [OE-core] [PATCH] bitbake: bblayers/query: Add --show-variants option to display BBCLASSEXTEND variants
2025-10-24 16:40 [PATCH] bitbake: bblayers/query: Add --show-variants option to display BBCLASSEXTEND variants Osama Abdelkader
2025-10-25 0:48 ` [OE-core] " Peter Kjellerstedt
@ 2025-12-08 17:28 ` adrian.freihofer
2025-12-08 19:46 ` Osama Abdelkader
1 sibling, 1 reply; 4+ messages in thread
From: adrian.freihofer @ 2025-12-08 17:28 UTC (permalink / raw)
To: osama.abdelkader; +Cc: openembedded-core
On Fri, 2025-10-24 at 19:40 +0300, Osama Abdelkader via
lists.openembedded.org wrote:
> The bitbake-layers show-recipes command was hiding BBCLASSEXTEND
> recipe
> variants (e.g., devupstream, nativesdk, cross-canadian) by design, to
> avoid clutter in the output. However, this made it impossible to see
> recipes like linux-firmware's devupstream variant which uses git
> snapshots
> instead of release tarballs.
>
> This patch adds a new --show-variants (-v) option to show-recipes
> that
> allows users to view all BBCLASSEXTEND variants when needed, while
> maintaining the default behavior of hiding them for a cleaner output.
>
> Example usage:
> bitbake-layers show-recipes -v linux-firmware
>
> This will now show both:
> - Base version: 1:20251011
> - Devupstream version: 1:20251011+git
>
> Signed-off-by: Osama Abdelkader <osama.abdelkader@gmail.com>
> ---
> bitbake/lib/bblayers/query.py | 23 ++++++++++++++++-------
> 1 file changed, 16 insertions(+), 7 deletions(-)
>
> diff --git a/bitbake/lib/bblayers/query.py
> b/bitbake/lib/bblayers/query.py
> index eb7cb465b4..11341d5d53 100644
> --- a/bitbake/lib/bblayers/query.py
> +++ b/bitbake/lib/bblayers/query.py
> @@ -52,7 +52,7 @@ layer, with the preferred version first. Note that
> skipped recipes that
> are overlayed will also be listed, with a " (skipped)" suffix.
> """
>
> - items_listed = self.list_recipes('Overlayed recipes', None,
> True, args.same_version, args.filenames, False, True, None, False,
> None, args.mc)
> + items_listed = self.list_recipes('Overlayed recipes', None,
> True, args.same_version, args.filenames, False, True, None, False,
> None, args.mc, False)
>
> # Check for overlayed .bbclass files
> classes = collections.defaultdict(list)
> @@ -119,9 +119,9 @@ skipped recipes will also be listed, with a "
> (skipped)" suffix.
> title = 'Matching recipes:'
> else:
> title = 'Available recipes:'
> - self.list_recipes(title, args.pnspec, False, False,
> args.filenames, args.recipes_only, args.multiple, args.layer,
> args.bare, inheritlist, args.mc)
> + self.list_recipes(title, args.pnspec, False, False,
> args.filenames, args.recipes_only, args.multiple, args.layer,
> args.bare, inheritlist, args.mc, args.show_variants)
>
> - def list_recipes(self, title, pnspec, show_overlayed_only,
> show_same_ver_only, show_filenames, show_recipes_only,
> show_multi_provider_only, selected_layer, bare, inherits, mc):
> + def list_recipes(self, title, pnspec, show_overlayed_only,
> show_same_ver_only, show_filenames, show_recipes_only,
> show_multi_provider_only, selected_layer, bare, inherits, mc,
> show_variants=False):
> if inherits:
> bbpath = str(self.tinfoil.config_data.getVar('BBPATH'))
> for classname in inherits:
> @@ -203,8 +203,10 @@ skipped recipes will also be listed, with a "
> (skipped)" suffix.
> # We only display once per recipe, we should prefer
> non extended versions of the
> # recipe if present (so e.g. in OpenEmbedded,
> openssl rather than nativesdk-openssl
> # which would otherwise sort first).
> + # However, if show_variants is True, we show all
> BBCLASSEXTEND variants.
> if realfn[1] and realfn[0] in
> self.tinfoil.cooker.recipecaches[mc].pkg_fn:
> - continue
> + if not show_variants:
> + continue
>
> if inherits:
> matchcount = 0
> @@ -229,7 +231,11 @@ skipped recipes will also be listed, with a "
> (skipped)" suffix.
> for prov in allproviders[p]:
> provfile =
> bb.cache.virtualfn2realfn(prov[1])[0]
> provlayer = self.get_file_layer(provfile)
> - provs.append((provfile, provlayer, prov[0]))
> + # When show_variants is True, use the
> virtual filename to distinguish BBCLASSEXTEND variants
> + if show_variants:
> + provs.append((prov[1], provlayer,
> prov[0]))
> + else:
> + provs.append((provfile, provlayer,
> prov[0]))
> if provlayer != preflayer:
> multilayer = True
> if prov[0] != pref[0]:
> @@ -238,10 +244,12 @@ skipped recipes will also be listed, with a "
> (skipped)" suffix.
> if not items_listed:
> logger.plain('=== %s ===' % title)
> items_listed = True
> + # When show_variants is True, use the
> virtual filename for preference check
> + pref_cmp_file = pref[1] if show_variants
> else preffile
> print_item(preffile, p,
> self.version_str(pref[0][0], pref[0][1]), preflayer, True)
> for (provfile, provlayer, provver) in provs:
> - if provfile != preffile:
> - print_item(provfile, p,
> self.version_str(provver[0], provver[1]), provlayer, False)
> + if provfile != pref_cmp_file:
> +
> print_item(bb.cache.virtualfn2realfn(provfile)[0] if show_variants
> else provfile, p, self.version_str(provver[0], provver[1]),
> provlayer, False)
> # Ensure we don't show two entries for
> BBCLASSEXTENDed recipes
> preffiles.append(preffile)
>
> @@ -530,6 +538,7 @@ NOTE: .bbappend files can impact the
> dependencies.
> parser_show_recipes.add_argument('-i', '--inherits',
> help='only list recipes that inherit the named class(es) - separate
> multiple classes using , (without spaces)', metavar='CLASS',
> default='')
> parser_show_recipes.add_argument('-l', '--layer', help='only
> list recipes from the selected layer', default='')
> parser_show_recipes.add_argument('-b', '--bare',
> help='output just names without the "(skipped)" marker',
> action='store_true')
> + parser_show_recipes.add_argument('-v', '--show-variants',
> help='show all BBCLASSEXTEND recipe variants (e.g., devupstream,
> nativesdk)', action='store_true')
During the patch review session, we concluded that -v usually stands
for “verbose” or often for “version.” Would it be possible to remove -v
for this somewhat more specific feature and only keep the long option?
Thank you.
Adrian
> parser_show_recipes.add_argument('--mc', help='use specified
> multiconfig', default='')
> parser_show_recipes.add_argument('pnspec', nargs='*',
> help='optional recipe name specification (wildcards allowed, enclose
> in quotes to avoid shell expansion)')
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#225300):
> https://lists.openembedded.org/g/openembedded-core/message/225300
> Mute This Topic: https://lists.openembedded.org/mt/115931358/4454582
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe:
> https://lists.openembedded.org/g/openembedded-core/unsub [
> adrian.freihofer@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [OE-core] [PATCH] bitbake: bblayers/query: Add --show-variants option to display BBCLASSEXTEND variants
2025-12-08 17:28 ` adrian.freihofer
@ 2025-12-08 19:46 ` Osama Abdelkader
0 siblings, 0 replies; 4+ messages in thread
From: Osama Abdelkader @ 2025-12-08 19:46 UTC (permalink / raw)
To: adrian.freihofer; +Cc: openembedded-core, bitbake-devel
On Mon, Dec 08, 2025 at 06:28:12PM +0100, adrian.freihofer@gmail.com wrote:
> On Fri, 2025-10-24 at 19:40 +0300, Osama Abdelkader via
> lists.openembedded.org wrote:
> > The bitbake-layers show-recipes command was hiding BBCLASSEXTEND
> > recipe
> > variants (e.g., devupstream, nativesdk, cross-canadian) by design, to
> > avoid clutter in the output. However, this made it impossible to see
> > recipes like linux-firmware's devupstream variant which uses git
> > snapshots
> > instead of release tarballs.
> >
> > This patch adds a new --show-variants (-v) option to show-recipes
> > that
> > allows users to view all BBCLASSEXTEND variants when needed, while
> > maintaining the default behavior of hiding them for a cleaner output.
> >
> > Example usage:
> > bitbake-layers show-recipes -v linux-firmware
> >
> > This will now show both:
> > - Base version: 1:20251011
> > - Devupstream version: 1:20251011+git
> >
> > Signed-off-by: Osama Abdelkader <osama.abdelkader@gmail.com>
> > ---
> > bitbake/lib/bblayers/query.py | 23 ++++++++++++++++-------
> > 1 file changed, 16 insertions(+), 7 deletions(-)
> >
> > diff --git a/bitbake/lib/bblayers/query.py
> > b/bitbake/lib/bblayers/query.py
> > index eb7cb465b4..11341d5d53 100644
> > --- a/bitbake/lib/bblayers/query.py
> > +++ b/bitbake/lib/bblayers/query.py
> > @@ -52,7 +52,7 @@ layer, with the preferred version first. Note that
> > skipped recipes that
> > are overlayed will also be listed, with a " (skipped)" suffix.
> > """
> >
> > - items_listed = self.list_recipes('Overlayed recipes', None,
> > True, args.same_version, args.filenames, False, True, None, False,
> > None, args.mc)
> > + items_listed = self.list_recipes('Overlayed recipes', None,
> > True, args.same_version, args.filenames, False, True, None, False,
> > None, args.mc, False)
> >
> > # Check for overlayed .bbclass files
> > classes = collections.defaultdict(list)
> > @@ -119,9 +119,9 @@ skipped recipes will also be listed, with a "
> > (skipped)" suffix.
> > title = 'Matching recipes:'
> > else:
> > title = 'Available recipes:'
> > - self.list_recipes(title, args.pnspec, False, False,
> > args.filenames, args.recipes_only, args.multiple, args.layer,
> > args.bare, inheritlist, args.mc)
> > + self.list_recipes(title, args.pnspec, False, False,
> > args.filenames, args.recipes_only, args.multiple, args.layer,
> > args.bare, inheritlist, args.mc, args.show_variants)
> >
> > - def list_recipes(self, title, pnspec, show_overlayed_only,
> > show_same_ver_only, show_filenames, show_recipes_only,
> > show_multi_provider_only, selected_layer, bare, inherits, mc):
> > + def list_recipes(self, title, pnspec, show_overlayed_only,
> > show_same_ver_only, show_filenames, show_recipes_only,
> > show_multi_provider_only, selected_layer, bare, inherits, mc,
> > show_variants=False):
> > if inherits:
> > bbpath = str(self.tinfoil.config_data.getVar('BBPATH'))
> > for classname in inherits:
> > @@ -203,8 +203,10 @@ skipped recipes will also be listed, with a "
> > (skipped)" suffix.
> > # We only display once per recipe, we should prefer
> > non extended versions of the
> > # recipe if present (so e.g. in OpenEmbedded,
> > openssl rather than nativesdk-openssl
> > # which would otherwise sort first).
> > + # However, if show_variants is True, we show all
> > BBCLASSEXTEND variants.
> > if realfn[1] and realfn[0] in
> > self.tinfoil.cooker.recipecaches[mc].pkg_fn:
> > - continue
> > + if not show_variants:
> > + continue
> >
> > if inherits:
> > matchcount = 0
> > @@ -229,7 +231,11 @@ skipped recipes will also be listed, with a "
> > (skipped)" suffix.
> > for prov in allproviders[p]:
> > provfile =
> > bb.cache.virtualfn2realfn(prov[1])[0]
> > provlayer = self.get_file_layer(provfile)
> > - provs.append((provfile, provlayer, prov[0]))
> > + # When show_variants is True, use the
> > virtual filename to distinguish BBCLASSEXTEND variants
> > + if show_variants:
> > + provs.append((prov[1], provlayer,
> > prov[0]))
> > + else:
> > + provs.append((provfile, provlayer,
> > prov[0]))
> > if provlayer != preflayer:
> > multilayer = True
> > if prov[0] != pref[0]:
> > @@ -238,10 +244,12 @@ skipped recipes will also be listed, with a "
> > (skipped)" suffix.
> > if not items_listed:
> > logger.plain('=== %s ===' % title)
> > items_listed = True
> > + # When show_variants is True, use the
> > virtual filename for preference check
> > + pref_cmp_file = pref[1] if show_variants
> > else preffile
> > print_item(preffile, p,
> > self.version_str(pref[0][0], pref[0][1]), preflayer, True)
> > for (provfile, provlayer, provver) in provs:
> > - if provfile != preffile:
> > - print_item(provfile, p,
> > self.version_str(provver[0], provver[1]), provlayer, False)
> > + if provfile != pref_cmp_file:
> > +
> > print_item(bb.cache.virtualfn2realfn(provfile)[0] if show_variants
> > else provfile, p, self.version_str(provver[0], provver[1]),
> > provlayer, False)
> > # Ensure we don't show two entries for
> > BBCLASSEXTENDed recipes
> > preffiles.append(preffile)
> >
> > @@ -530,6 +538,7 @@ NOTE: .bbappend files can impact the
> > dependencies.
> > parser_show_recipes.add_argument('-i', '--inherits',
> > help='only list recipes that inherit the named class(es) - separate
> > multiple classes using , (without spaces)', metavar='CLASS',
> > default='')
> > parser_show_recipes.add_argument('-l', '--layer', help='only
> > list recipes from the selected layer', default='')
> > parser_show_recipes.add_argument('-b', '--bare',
> > help='output just names without the "(skipped)" marker',
> > action='store_true')
> > + parser_show_recipes.add_argument('-v', '--show-variants',
> > help='show all BBCLASSEXTEND recipe variants (e.g., devupstream,
> > nativesdk)', action='store_true')
>
>
> During the patch review session, we concluded that -v usually stands
> for “verbose” or often for “version.” Would it be possible to remove -v
> for this somewhat more specific feature and only keep the long option?
>
Sure, I'm going to send v2.
Thanks,
Osama
> Thank you.
> Adrian
>
> > parser_show_recipes.add_argument('--mc', help='use specified
> > multiconfig', default='')
> > parser_show_recipes.add_argument('pnspec', nargs='*',
> > help='optional recipe name specification (wildcards allowed, enclose
> > in quotes to avoid shell expansion)')
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#225300):
> > https://lists.openembedded.org/g/openembedded-core/message/225300
> > Mute This Topic: https://lists.openembedded.org/mt/115931358/4454582
> > Group Owner: openembedded-core+owner@lists.openembedded.org
> > Unsubscribe:
> > https://lists.openembedded.org/g/openembedded-core/unsub [
> > adrian.freihofer@gmail.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2025-12-08 19:46 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-24 16:40 [PATCH] bitbake: bblayers/query: Add --show-variants option to display BBCLASSEXTEND variants Osama Abdelkader
2025-10-25 0:48 ` [OE-core] " Peter Kjellerstedt
2025-12-08 17:28 ` adrian.freihofer
2025-12-08 19:46 ` Osama Abdelkader
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox