summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2017-10-26 15:45:52 +0800
committerRobert Yang <liezhi.yang@windriver.com>2018-01-08 18:08:32 +0800
commitbb62e54769d47b1dae4faf23b08334509ee1842a (patch)
treebc786e6d66327a786f43df7e077a1d5262833749
parentef12290da9742855bfd370e806a00a4987a48567 (diff)
downloadopenembedded-core-contrib-bb62e54769d47b1dae4faf23b08334509ee1842a.tar.gz
openembedded-core-contrib-bb62e54769d47b1dae4faf23b08334509ee1842a.tar.bz2
openembedded-core-contrib-bb62e54769d47b1dae4faf23b08334509ee1842a.zip
staging.bbclass: extend_recipe_sysroot(): search multilib manifest
Fixed: MACHINE = "qemux86-64" require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "core2-32" $ bitbake lib32-wrlinux-image-glibc-small WARNING: lib32-wrlinux-image-glibc-small-1.0-r1 do_rootfs: Manifest for lib32-qemuwrapper-cross not found, searched manifests: /path/to/tmp/sstate-control/manifest-qemux86_64-lib32-qemuwrapper-cross.populate_sysroot /path/to/tmp/sstate-control/manifest-core2-64-lib32-qemuwrapper-cross.populate_sysroot /path/to/tmp/sstate-control/manifest-x86_64-lib32-qemuwrapper-cross.populate_sysroot /path/to/tmp/sstate-control/manifest-allarch-lib32-qemuwrapper-cross.populate_sysroot It was because image recipes' multilib PACKAGE_EXTRA_ARCHS are not changed by mutlilib.bbclass, so extend_recipe_sysroot() didn't know anything about mutlilib's PACKAGE_EXTRA_ARCHS, now fix it. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
-rw-r--r--meta/classes/staging.bbclass9
1 files changed, 9 insertions, 0 deletions
diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass
index 75bec84127..91ae1e8fc1 100644
--- a/meta/classes/staging.bbclass
+++ b/meta/classes/staging.bbclass
@@ -519,6 +519,15 @@ python extend_recipe_sysroot() {
else:
pkgarchs = ['${MACHINE_ARCH}']
pkgarchs = pkgarchs + list(reversed(d2.getVar("PACKAGE_EXTRA_ARCHS").split()))
+ # Search multilib archs for multilib image recipe like lib32-core-image-minimal
+ mlprefix = d2.getVar('MLPREFIX')
+ if bb.data.inherits_class('image', d2) and mlprefix:
+ ml_variant = mlprefix.rstrip('-')
+ override = ":virtclass-multilib-" + ml_variant
+ localdata = bb.data.createCopy(d2)
+ overrides = localdata.getVar("OVERRIDES", False) + ":virtclass-multilib-" + ml_variant
+ localdata.setVar("OVERRIDES", overrides)
+ pkgarchs = pkgarchs + list(reversed(localdata.getVar("PACKAGE_EXTRA_ARCHS").split()))
pkgarchs.append('allarch')
for pkgarch in pkgarchs:
manifest = d2.expand("${SSTATE_MANIFESTS}/manifest-%s-%s.populate_sysroot" % (pkgarch, c))