From: Jan Kiszka <
jan.k...@siemens.com>
The attempt to translate IMAGER_BUILD_DEPS into do_image_tools[depends]
via an anonymous python functions failed because of an ordering issue
between the anonymous functions in image-tools-extension.bbclass and
image.bbclass. The latter was expanding IMAGER_BUILD_DEPS:<image-type>
after image-tools-extension translated this variable into
do_image_tools[depends]. Resolve this by using an inline function for
the latter step.
Signed-off-by: Jan Kiszka <
jan.k...@siemens.com>
---
Too bad that none of the isar tests detected it, only isar-cip-core 
after updating its isar revision far enough. Looks like we have no self-
built packages for IMAGER_BUILD_DEPS here.
 meta/classes/image-tools-extension.bbclass | 8 +++-----
 meta/classes/image.bbclass                 | 2 +-
 2 files changed, 4 insertions(+), 6 deletions(-)
diff --git a/meta/classes/image-tools-extension.bbclass b/meta/classes/image-tools-extension.bbclass
index 5e248f2e..3f284b39 100644
--- a/meta/classes/image-tools-extension.bbclass
+++ b/meta/classes/image-tools-extension.bbclass
@@ -1,5 +1,5 @@
 # This software is a part of ISAR.
-# Copyright (C) Siemens AG, 2019-2024
+# Copyright (C) Siemens AG, 2019-2025
 #
 # SPDX-License-Identifier: MIT
 #
@@ -10,10 +10,8 @@ inherit sbuild
 IMAGER_INSTALL ??= ""
 IMAGER_BUILD_DEPS ??= ""
 
-python() {
-    for dep in d.getVar('IMAGER_BUILD_DEPS').split():
-        d.appendVarFlag('do_image_tools', 'depends', ' ' + dep + ':do_deploy_deb')
-}
+do_image_tools[depends] += " \
+    ${@' '.join(dep + ':do_deploy_deb' for dep in d.getVar('IMAGER_BUILD_DEPS').split())}"
 
 SCHROOT_MOUNTS = "${WORKDIR}:${PP_WORK} ${IMAGE_ROOTFS}:${PP_ROOTFS} ${DEPLOY_DIR_IMAGE}:${PP_DEPLOY}"
 SCHROOT_MOUNTS += "${REPO_ISAR_DIR}/${DISTRO}:/isar-apt"
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index bd1b8552..441ea936 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -373,7 +373,7 @@ python do_image_tools() {
 addtask image_tools before do_build after do_rootfs
 
 # all imagetypes are depend on schroot and isar-apt
-do_image_tools[depends] = "${SCHROOT_DEP} isar-apt:do_cache_config"
+do_image_tools[depends] += "${SCHROOT_DEP} isar-apt:do_cache_config"
 do_image_tools[deptask] = "do_deploy_deb"
 
 python do_image() {
-- 
2.51.0