[oe-commits] Bruce Ashfield : multilib: skip packages that provide virtual/kernel
git at git.openembedded.org
git at git.openembedded.org
Fri Feb 1 15:56:04 UTC 2013
Module: openembedded-core.git
Branch: master-next
Commit: dc7d181ab03ceab87a24d932130109003334dbf8
URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=dc7d181ab03ceab87a24d932130109003334dbf8
Author: Bruce Ashfield <bruce.ashfield at windriver.com>
Date: Thu Jan 31 13:31:04 2013 -0500
multilib: skip packages that provide virtual/kernel
Rather than keying on recipes that inherit kernel.bbclass, we should
be checking for providers of virtual/kernel when skipping kernel
recipes in multlib builds.
Not all providers of virtual/kernel inherit kernel.bbclass (notably
linux-dummy), so checking on the provider is a more complete check.
We need to be sure to check for inheritance of module-base as well, this
allows for packages that provides modules to avoid the multilib renaming.
Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>
Signed-off-by: Mark Hatle <mark.hatle at windriver.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
meta/classes/multilib.bbclass | 4 +++-
meta/lib/oe/classextend.py | 2 +-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/meta/classes/multilib.bbclass b/meta/classes/multilib.bbclass
index f5f3c69..f1696b6 100644
--- a/meta/classes/multilib.bbclass
+++ b/meta/classes/multilib.bbclass
@@ -10,7 +10,9 @@ python multilib_virtclass_handler () {
e.data.setVar('STAGING_KERNEL_DIR', e.data.getVar('STAGING_KERNEL_DIR', True))
# There should only be one kernel in multilib configs
- if bb.data.inherits_class('kernel', e.data) or bb.data.inherits_class('module-base', e.data):
+ # We also skip multilib setup for module packages.
+ provides = (e.data.getVar("PROVIDES", True) or "").split()
+ if "virtual/kernel" in provides or bb.data.inherits_class('module-base', e.data):
raise bb.parse.SkipPackage("We shouldn't have multilib variants for the kernel")
if bb.data.inherits_class('image', e.data):
diff --git a/meta/lib/oe/classextend.py b/meta/lib/oe/classextend.py
index 19e1254..61cbb8f 100644
--- a/meta/lib/oe/classextend.py
+++ b/meta/lib/oe/classextend.py
@@ -5,7 +5,7 @@ class ClassExtender(object):
self.pkgs_mapping = []
def extend_name(self, name):
- if name.startswith("kernel-module"):
+ if name.startswith("kernel-module") or name == "virtual/kernel":
return name
if name.startswith("rtld"):
return name
More information about the Openembedded-commits
mailing list