summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYu Ke <ke.yu@intel.com>2011-07-16 10:02:53 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-07-27 16:15:48 +0100
commita4bc86713892502aeefbbdb3053e8cf1e1fc0bdb (patch)
tree87b7c78f4afed29975cd126a38e63ec966156eca
parent20dd241052afa5ff80b91ebf09b0b48765bc3412 (diff)
downloadopenembedded-core-a4bc86713892502aeefbbdb3053e8cf1e1fc0bdb.tar.gz
openembedded-core-a4bc86713892502aeefbbdb3053e8cf1e1fc0bdb.tar.bz2
openembedded-core-a4bc86713892502aeefbbdb3053e8cf1e1fc0bdb.zip
do_split_packages: revise for multilib case
in multilib case, the PACKAGE_DYNAMIC is overrided with multilib prefix. Take multilib:lib64-perl as example. the "perl-module-*" will become "lib64-perl-module-*" the output_pattern in do_split_packages is designed to work with PACKAGE_DYNAMIC, so it should be applied with the same logic, i.e. overriding with multilib prefix. otherwise the do_split_package will split incorrect files this patch implements the mulitlib override logic for do_split_packages We also need to rename the extra_depends to support multilib case (from Dongxaio Xu). Signed-off-by: Yu Ke <ke.yu@intel.com> Signed-off-by: Xu Dongxiao <dongxiao.xu@intel.com>
-rw-r--r--meta/classes/package.bbclass14
1 files changed, 14 insertions, 0 deletions
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass
index 0caab6dcf9..bb0ba68e02 100644
--- a/meta/classes/package.bbclass
+++ b/meta/classes/package.bbclass
@@ -70,6 +70,20 @@ def do_split_packages(d, root, file_regex, output_pattern, description, postinst
given package, usually plugins or modules.
"""
+ ml = d.getVar("MLPREFIX", True)
+ if ml:
+ if not output_pattern.startswith(ml):
+ output_pattern = ml + output_pattern
+
+ newdeps = []
+ for dep in (extra_depends or "").split():
+ if dep.startswith(ml):
+ newdeps.append(dep)
+ else:
+ newdeps.append(ml + dep)
+ if newdeps:
+ extra_depends = " ".join(newdeps)
+
dvar = bb.data.getVar('PKGD', d, True)
packages = bb.data.getVar('PACKAGES', d, True).split()