diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2018-01-08 16:27:34 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-01-19 12:37:14 +0000 |
commit | e153efde9754a650e555f46cba09680baabd7d7e (patch) | |
tree | 9e19a6808916a0fac76317f888df400130af1fad /meta/classes/multilib.bbclass | |
parent | 4e9bb03238af48c70075037a77094a8c1bddf284 (diff) | |
download | poky-e153efde9754a650e555f46cba09680baabd7d7e.tar.gz |
multilib.bbclass: deltask populate_sdk and populate_sdk_ext
The "bitbake image -cpopulate_sdk/ext" generates SDK/eSDK for all multilib
variants, so "bitbake lib32-image -cpopulate_sdk/ext" is not needed, and it
doesn't work well, for example:
MACHINE ?= "qemux86-64"
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"
$ bitbake lib32-core-image-minimal -cpopulate_sdk_ext
[snip]
Exception: FileExistsError: [Errno 17] File exists: '/buildarea/lyang1/test_q64/tmp/sysroots-components/core2-64/openssl/sysroot-providers/openssl10' -> '/buildarea/lyang1/test_q64/tmp/work/qemux86_64-pokymllib32-linux/lib32-core-image-minimal/1.0-r0/lib32-recipe-sysroot/sysroot-providers/openssl10'
[snip]
The problem is populate_sdk_ext installs all multilib variants, and
extend_recipe_sysroot() handles foo-image depends lib32-foo-image, but doesn't
handle lib32-foo-image depends foo-image, we can use a lot of trick ways to make
it work:
1) Get foo-image's RECIPE_SYSROOT when build lib32-foo-image
2) Handle conflicts with foo-image.do_rootfs
3) Handle conflicts when "bitbake lib32-foo-image foo-image -cpopulate_sdk_ext"
And maybe other potential problems, this looks painful, so just delete the task.
[YOCTO #12210]
(From OE-Core rev: 77144bc808be02deb3351c9c1bf5b4f2b8c3a6ec)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/multilib.bbclass')
-rw-r--r-- | meta/classes/multilib.bbclass | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/meta/classes/multilib.bbclass b/meta/classes/multilib.bbclass index dc0868be3e..6dca2e84cd 100644 --- a/meta/classes/multilib.bbclass +++ b/meta/classes/multilib.bbclass | |||
@@ -99,6 +99,8 @@ python __anonymous () { | |||
99 | d.setVar("LINGUAS_INSTALL", "") | 99 | d.setVar("LINGUAS_INSTALL", "") |
100 | # FIXME, we need to map this to something, not delete it! | 100 | # FIXME, we need to map this to something, not delete it! |
101 | d.setVar("PACKAGE_INSTALL_ATTEMPTONLY", "") | 101 | d.setVar("PACKAGE_INSTALL_ATTEMPTONLY", "") |
102 | bb.build.deltask('do_populate_sdk', d) | ||
103 | bb.build.deltask('do_populate_sdk_ext', d) | ||
102 | return | 104 | return |
103 | 105 | ||
104 | clsextend.map_depends_variable("DEPENDS") | 106 | clsextend.map_depends_variable("DEPENDS") |