Hi Trevor,

Firstly, thanks for the patches, this is the right general direction
but we need to get the details right and I think there are a few tweaks
needed to make this as usable as we need it.

In 5/10 you introduce SDK_FEATURES and document it as behaving as
IMAGE_FEATURES, bit as implemented below, it wouldn't.

[cont. below]

On Fri, 2026-07-24 at 05:01 -0400, Trevor Woerner via lists.openembedded.org 
wrote:
> wic is useful from an installed SDK for assembling or inspecting a wic
> image, but adding it is not free: nativesdk-wic pulls in the tools it
> runs (parted, gptfdisk, dosfstools, mtools, bmaptool, grub, btrfs-tools,
> squashfs-tools, e2fsprogs, util-linux, tar, erofs-utils, and syslinux on
> x86). Most SDKs do not need any of that, so wic should not be in the
> host packagegroup unconditionally.
> 
> Gate wic in the host packagegroup on the "wic" SDK feature, which is not
> enabled by default. A configuration that wants wic in its SDK adds the
> "wic" feature to SDK_FEATURES and gets a working wic, together with the
> tools it invokes, in the SDK.
> 
> AI-Generated: codex/claude-opus 4.8 (xhigh)
> Signed-off-by: Trevor Woerner <[email protected]>
> ---
> changes in v4:
> - split out from the v3 "add wic via a new SDK_FEATURES lever" patch:
>   this patch now only wires wic to the "wic" SDK feature
> ---
>  .../packagegroups/nativesdk-packagegroup-sdk-host.bb             | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git 
> a/meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb 
> b/meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb
> index 51e48f250b19..c2974a57fe3e 100644
> --- a/meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb
> +++ b/meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb
> @@ -29,6 +29,7 @@ RDEPENDS:${PN} = "\
>      nativesdk-bison \
>      nativesdk-flex \
>      nativesdk-perl-module-integer \
> +    ${@bb.utils.contains('SDK_FEATURES', 'wic', 'nativesdk-wic', '', d)} \
>     "

This means that the recipe/package would rebuild every time you change
SDK_FEATURES. IMAGE_FEATURES can be set per image recipe, this would
mean SDK_FEATURES can be set once, globally.

This is why SDK_TOOLCHAIN_LANGS is handled at the class level in
populate_sdk_base.bbclass. It looks for values and pulls in a
packagegroup for a given feature. You can then change the langs on a
per sdk basis.

Instead of the above, you could add:

  ${@bb.utils.contains('SDK_FEATURES', 'wic', 'nativesdk-wic', '', d)} 

there, probably for TOOLCHAIN_HOST_TASK.

Generally we'd create a packagegroup if there are multiple items being
gated on a config. wic is probably fine, sbom might need a
packagegroup.

Other feedback on the series:

* patch 5/10 should have a subject prefix of bitbake.conf as 
  it doesn't touch nativesdk-packagegroup-sdk-host

* We need to migrate SDK_TOOLCHAIN_LANGS to SDK_FEATURES, 
  probably using BB_RENAMED_VARIABLES


Are these tweaks you're ok to make?

Cheers,

Richard

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#242336): 
https://lists.openembedded.org/g/openembedded-core/message/242336
Mute This Topic: https://lists.openembedded.org/mt/120422970/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to