[v2,1/1] sdk: force set IMAGE_FSTYPES to SDK_FORMATS

Message ID 20260323102706.3280629-2-benedikt.niedermayr@siemens.com
State Under Review
Headers show
Series sdk: force set IMAGE_FSTYPES to SDK_FORMATS | expand

Commit Message

Benedikt Niedermayr March 23, 2026, 10:26 a.m. UTC
The image formats for the SDK should be set with SDK_FORMATS rather than
configuring the IMAGE_FSTYPES.
There are even cases were unwanted image types make it into the sdk
image format because of using append syntax which is stronger than:

```
IMAGE_FSTYPES:class-sdk = "${SDK_FORMATS}"
```

Setting IMAGE_FSTYPES to SDK_FORMATS during recipe pre finalize time
force overrides the value and thus ignores every append syntax override
assignment before.

This fixes a build error when building the isar-cip-core
(swupdate and fTPM support enabled) SDK without building the image
upfront.

Signed-off-by: Benedikt Niedermayr <benedikt.niedermayr@siemens.com>
---
 meta/classes-recipe/sdk.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Patch

diff --git a/meta/classes-recipe/sdk.bbclass b/meta/classes-recipe/sdk.bbclass
index 17b56bcf7371..dc5863465958 100644
--- a/meta/classes-recipe/sdk.bbclass
+++ b/meta/classes-recipe/sdk.bbclass
@@ -18,6 +18,7 @@  python sdk_virtclass_handler() {
         # sdkchroot deploy only for sdk image
         bb.build.addtask('deploy_sdkchroot', 'do_build', 'do_rootfs', d)
         bb.build.deltask('copy_boot_files', d)
+        e.data.setVar('IMAGE_FSTYPES', e.data.getVar('SDK_FORMATS'))
     else:
         # add do_populate_sdk only to the non-sdk variant
         # it only exists to preserve the interface...
@@ -52,7 +53,6 @@  ROOTFS_FEATURES:append:class-sdk = " clean-package-cache generate-manifest expor
 ROOTFS_MANIFEST_DEPLOY_DIR:class-sdk = "${DEPLOY_DIR_SDKCHROOT}"
 ROOTFS_DPKGSTATUS_DEPLOY_DIR:class-sdk = "${DEPLOY_DIR_SDKCHROOT}"
 
-IMAGE_FSTYPES:class-sdk = "${SDK_FORMATS}"
 TAR_TRANSFORM:class-sdk = " --transform='s|rootfs|${IMAGE_FULLNAME}|'"
 
 # bitbake dependencies