summaryrefslogtreecommitdiffstats
path: root/meta/classes/multilib.bbclass
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2018-09-29 15:23:10 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-10-01 13:04:44 +0100
commit25f7c6c329038b443d36074fff45a30ba3712f7a (patch)
tree83e491c5490eab4abf922a4887706ef0aeee8323 /meta/classes/multilib.bbclass
parent72c37b06b034e97e7dd7e1a20fb0ff5f96088440 (diff)
downloadopenembedded-core-contrib-25f7c6c329038b443d36074fff45a30ba3712f7a.tar.gz
multilib: avoid expanding grub and grub-efi to multilib
It doesn't make much sense to expand them to multilib, and there is an error on qemuarm64 since grub-efi supports arm64, but doesn't support armv7a or armv7ve: * Fixed: MACHINE = "qemuarm64" require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "armv7a" MACHINE_FEATURES_append = " efi" $ bitbake lib32-core-image-minimal Also introduced a variable NON_MULTILIB_RECIPES in multilib.conf, so that we can easily add other recipes, such as syslinux if needed. 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.bbclass8
1 files changed, 6 insertions, 2 deletions
diff --git a/meta/classes/multilib.bbclass b/meta/classes/multilib.bbclass
index db39e02d42..6c6499a23e 100644
--- a/meta/classes/multilib.bbclass
+++ b/meta/classes/multilib.bbclass
@@ -11,8 +11,12 @@ python multilib_virtclass_handler () {
# There should only be one kernel in multilib configs
# We also skip multilib setup for module packages.
provides = (e.data.getVar("PROVIDES") or "").split()
- if "virtual/kernel" in provides or bb.data.inherits_class('module-base', e.data) or "make-mod-scripts" in e.data.getVar("PN"):
- raise bb.parse.SkipRecipe("We shouldn't have multilib variants for the kernel")
+ non_ml_recipes = d.getVar('NON_MULTILIB_RECIPES').split()
+ bpn = e.data.getVar("BPN")
+ if "virtual/kernel" in provides or \
+ bb.data.inherits_class('module-base', e.data) or \
+ bpn in non_ml_recipes:
+ raise bb.parse.SkipRecipe("We shouldn't have multilib variants for %s" % bpn)
save_var_name=e.data.getVar("MULTILIB_SAVE_VARNAME") or ""
for name in save_var_name.split():