aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes/kernel-yocto.bbclass
diff options
context:
space:
mode:
authorChristopher Larson <kergoth@gmail.com>2014-03-06 11:10:43 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-03-07 14:45:22 +0000
commitc859853f3206c77332ca5bf972dcd70e7d625cf6 (patch)
treeaae5b02f9628a04b6f864d6f8b219eaa010cb186 /meta/classes/kernel-yocto.bbclass
parente8c99b37b27e6f7dd6fb685343398280de750c9c (diff)
downloadopenembedded-core-contrib-c859853f3206c77332ca5bf972dcd70e7d625cf6.tar.gz
kernel-yocto: fix diffconfig/kernel_configme breakage
The bbclass did the following: do_diffconfig[depends] += "virtual/kernel:do_kernel_configme" This clearly introduces a cross-kernel task dependency if the recipe inheriting this class isn't the preferred provider of virtual/kernel, which is obviously wrong, but further, will break the build if a kernel-yocto based kernel is parsed and not skipped, but virtual/kernel refers to a non-kernel-yocto recipe, which would not have the do_kernel_configme task. Work around this by adding the in-recipe task dep programmatically with bb.build.addtask when do_diffconfig exists. (From OE-Core rev: 0e6881146d87f0d214d80bc92e54c113906db63a) Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/kernel-yocto.bbclass')
-rw-r--r--meta/classes/kernel-yocto.bbclass8
1 files changed, 7 insertions, 1 deletions
diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass
index 7913dd8c00..707a219f65 100644
--- a/meta/classes/kernel-yocto.bbclass
+++ b/meta/classes/kernel-yocto.bbclass
@@ -263,6 +263,8 @@ do_kernel_configme() {
echo "CONFIG_LOCALVERSION="\"${LINUX_VERSION_EXTENSION}\" >> ${B}/.config
}
+addtask kernel_configme after do_patch
+
python do_kernel_configcheck() {
import re, string, sys
@@ -407,4 +409,8 @@ OE_TERMINAL_EXPORTS += "GUILT_BASE KBUILD_OUTPUT"
GUILT_BASE = "meta"
KBUILD_OUTPUT = "${B}"
-do_diffconfig[depends] += "virtual/kernel:do_kernel_configme"
+python () {
+ # If diffconfig is available, ensure it runs after kernel_configme
+ if 'do_diffconfig' in d:
+ bb.build.addtask('do_diffconfig', None, 'do_kernel_configme', d)
+}