[oe-commits] Robert Yang : multilib.bbclass: install all bits toochains when populate mlprefix SDK
git at git.openembedded.org
git at git.openembedded.org
Thu Sep 24 16:56:11 UTC 2015
Module: openembedded-core.git
Branch: master-next
Commit: c3d38b6b75cbf4548881f08a010464e028af796c
URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=c3d38b6b75cbf4548881f08a010464e028af796c
Author: Robert Yang <liezhi.yang at windriver.com>
Date: Tue Sep 15 19:04:12 2015 -0700
multilib.bbclass: install all bits toochains when populate mlprefix SDK
Fixed when:
$ bitbake lib32-core-image-minimal -cpopulate_sdk
Only 32 bit toolchain was installed but there were both
environment-setup-core2-64-poky-linux and
environment-setup-core2-64-pokymllib32-linux in extracted sdk, this was
becase multilib.bbclass mapped TOOLCHAIN_TARGET_TASK into only lib32-
ones, and dropped 64 bit ones. This patches fixes the problem.
[YOCTO #8089]
Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
meta/classes/multilib.bbclass | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/meta/classes/multilib.bbclass b/meta/classes/multilib.bbclass
index 8f61d8d..465e208 100644
--- a/meta/classes/multilib.bbclass
+++ b/meta/classes/multilib.bbclass
@@ -94,8 +94,22 @@ python __anonymous () {
d.setVar("PACKAGE_INSTALL_ATTEMPTONLY", "")
if bb.data.inherits_class('populate_sdk_base', d):
+ orig_task = (d.getVar('TOOLCHAIN_TARGET_TASK', True) or "").split()
+ orig_task_attemptonly = (d.getVar('TOOLCHAIN_TARGET_TASK_ATTEMPTONLY', True) or "").split()
clsextend.map_depends_variable("TOOLCHAIN_TARGET_TASK")
clsextend.map_depends_variable("TOOLCHAIN_TARGET_TASK_ATTEMPTONLY")
+ # Append original tasks since all bits (such as 32 and 64)
+ # toolchains should be installed when mutilib.
+ task = (d.getVar('TOOLCHAIN_TARGET_TASK', True) or "").split()
+ task_attemptonly = (d.getVar('TOOLCHAIN_TARGET_TASK_ATTEMPTONLY', True) or "").split()
+ for t in orig_task:
+ if t not in task:
+ task.append(t)
+ for t in orig_task_attemptonly:
+ if t not in task_attemptonly:
+ task_attemptonly.append(t)
+ d.setVar("TOOLCHAIN_TARGET_TASK", " ".join(task))
+ d.setVar("TOOLCHAIN_TARGET_TASK_ATTEMPTONLY", " ".join(task_attemptonly))
if bb.data.inherits_class('image', d):
return
More information about the Openembedded-commits
mailing list