diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2017-10-26 15:45:52 +0800 |
---|---|---|
committer | Robert Yang <liezhi.yang@windriver.com> | 2017-11-22 11:02:15 +0800 |
commit | 4db51a35e342347f258605e0bde7e67af9d2dac5 (patch) | |
tree | 4d72406309bce29cc11e39cd237ec6b892686a51 /meta | |
parent | 00d0cb8f1d11d72765b0eeea234fc706ec5f34dd (diff) | |
download | openembedded-core-contrib-4db51a35e342347f258605e0bde7e67af9d2dac5.tar.gz |
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>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/staging.bbclass | 9 |
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)) |