From: Jackie Huang <jackie.hu...@windriver.com> If a BSP supports two or more multilibs, for example:
MULTILIBS = "multilib:lib32 multilib:lib64" and a variable is already extended to include multilib variants, for example in populate_sdk_base: commit 396371588c7fd2d691ca9c39cd02287e43cb665b Author: Richard Purdie <richard.pur...@linuxfoundation.org> Date: Thu Jul 24 22:09:09 2014 +0100 populate_sdk_base: Extend TOOLCHAIN_TARGET_TASK to include multilib variants Most people expect the toolchain from a multilib build to contain multilib components. This change makes that happen and is easy for users to override should they want something different. Signed-off-by: Richard Purdie <richard.pur...@linuxfoundation.org> The mapping clsextend.map_depends_variable("TOOLCHAIN_TARGET_TASK") ends up with a wrong double extended package name like: lib32-lib64-packagegroup-core-standalone-sdk-target This patch avoid such issues. Signed-off-by: Jackie Huang <jackie.hu...@windriver.com> --- meta/lib/oe/classextend.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/meta/lib/oe/classextend.py b/meta/lib/oe/classextend.py index 68efca3..5c993de 100644 --- a/meta/lib/oe/classextend.py +++ b/meta/lib/oe/classextend.py @@ -57,6 +57,13 @@ class ClassExtender(object): if dep.endswith(("-native", "-native-runtime")) or ('nativesdk-' in dep) or ('cross-canadian' in dep) or ('-crosssdk-' in dep): return dep else: + # Do not extend for that already have multilib prefix + var = self.d.getVar("MULTILIB_VARIANTS", True) or "" + if var: + var = var.split() + for v in var: + if dep.startswith(v): + return dep return self.extend_name(dep) def map_depends_variable(self, varname, suffix = ""): -- 2.0.0 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core