aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2018-03-13 11:02:26 +0800
committerRobert Yang <liezhi.yang@windriver.com>2018-03-14 11:20:46 +0800
commit470983be8bc8e91c505981a333c584da6aa22ec2 (patch)
tree0289c21c9775b86727989ff156cd0e531a1ac478
parent7730d95ac5ec306de56f2d6d15e783e2487f0fdf (diff)
downloadopenembedded-core-contrib-rbt/mlib.tar.gz
openembedded-core-contrib-rbt/mlib.tar.bz2
openembedded-core-contrib-rbt/mlib.zip
staging.bbclass: extend_recipe_sysroot: fix multilib manifestrbt/mlib
Fixed: MACHINE = "qemux86-64" MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "x86" $ bitbake <image> -cpopulate_sdk_ext [snip] Exception: subprocess.CalledProcessError: Command 'sed -e [snip]' [snip] Subprocess output: [snip] sed: can't read /path/to/work/qemux86_64-wrs-linux/wrlinux-image-glibc-small/1.0-r1/recipe-sysroot/usr/lib/perl/5.24.1/ExtUtils/Liblist/Kid.pm: No such file or directory [snip] It was failed because "/usr/lib" is in qemux86_64-wrsmllib32-linux/, not in qemux86_64-wrs-linux. The code has considered mutitlib, but seems not completed, the multilib "variant" was not in fixme, so it wasn't handled correctly, this patch fixes the problem. Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
-rw-r--r--meta/classes/staging.bbclass10
1 files changed, 10 insertions, 0 deletions
diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass
index c45ada418c..1c2028c113 100644
--- a/meta/classes/staging.bbclass
+++ b/meta/classes/staging.bbclass
@@ -492,11 +492,21 @@ python extend_recipe_sysroot() {
if c.endswith("-native") or "-cross-" in c or "-crosssdk" in c:
native = True
+ multilib = False
+ if setscenedeps[dep][2].startswith("virtual:multilib"):
+ variant = setscenedeps[dep][2].split(":")[2]
+ if variant not in fixme:
+ fixme[variant] = []
+ multilib = True
+
if manifest:
newmanifest = collections.OrderedDict()
if native:
fm = fixme['native']
targetdir = recipesysrootnative
+ elif multilib:
+ fm = fixme[variant]
+ targetdir = destsysroot
else:
fm = fixme['']
targetdir = destsysroot