As exposed in the ML
https://lists.openembedded.org/g/openembedded-core/message/153000
up to commit 86142da in Gatesgarth it was possible to build a second mini-kernel w/out
modules to be just deployed and collected by other recipes.
These kernels use special care to avoid packaging:
inherit nopackages
PACKAGES = ""
PROVIDES = ""
Now the change in kernel.bblass calls a packaging routine:
do_deploy[prefuncs] += "read_subpackage_metadata"
As a result the kernel build fails.
Fix this using bb.data.inherits_class() to verify the
possible previous inherit of nopackages.bbclass.
Signed-off-by: Andrea Adami <redacted>
---
meta/classes/kernel.bbclass | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
index 379bed44f2..06e6446a08 100644
--- a/meta/classes/kernel.bbclass
+++ b/meta/classes/kernel.bbclass
@@ -771,8 +771,8 @@ kernel_do_deploy() {
}
# We deploy to filenames that include PKGV and PKGR, read the saved data to
-# ensure we get the right values for both
-do_deploy[prefuncs] += "read_subpackage_metadata"
+# ensure we get the right values for both. Do this only if packaging is enabled.
+do_deploy[prefuncs] += "${@ '' if bb.data.inherits_class('nopackages', d) else 'read_subpackage_metadata' }"
addtask deploy after do_populate_sysroot do_packagedata
--
2.17.1