diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2017-10-16 11:15:29 +0800 |
---|---|---|
committer | Robert Yang <liezhi.yang@windriver.com> | 2018-01-08 18:08:31 +0800 |
commit | 671cd320573cc2ba85d5dee67e471a5780e83681 (patch) | |
tree | 7787eb1d1a86992792266778464bbd240313f7f7 /meta | |
parent | e9dfe7eb7f61b909ae7d034e80cfbebc1fad018b (diff) | |
download | openembedded-core-contrib-671cd320573cc2ba85d5dee67e471a5780e83681.tar.gz |
staging.bbclass: fix for multilib
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>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/staging.bbclass | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass index 1b9e84d97e..412e269bd2 100644 --- a/meta/classes/staging.bbclass +++ b/meta/classes/staging.bbclass @@ -480,6 +480,13 @@ python extend_recipe_sysroot() { multilibs[variant] = get_multilib_datastore(variant, d) d2 = multilibs[variant] destsysroot = d2.getVar("RECIPE_SYSROOT") + if variant not in fixme: + fixme[variant] = [] + # Clear variant when variant == current_variant since we + # don't need handle it as multilib in this case, just handle + # it as normal is OK. + else: + variant = '' native = False if c.endswith("-native"): @@ -508,6 +515,9 @@ python extend_recipe_sysroot() { if native: fm = fixme['native'] targetdir = recipesysrootnative + elif variant: + fm = fixme[variant] + targetdir = destsysroot else: fm = fixme[''] targetdir = destsysroot |