summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBruce Ashfield <bruce.ashfield@windriver.com>2011-07-20 16:22:31 -0400
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-07-22 11:51:03 +0100
commitd5b665bb187082e5ac6512b51145a270271c7846 (patch)
tree2ed30683619b62551e6cfa870df35022231b1170
parentf352f1ba03238292ce1ed128dc476ae99995c2c9 (diff)
downloadpoky-d5b665bb187082e5ac6512b51145a270271c7846.tar.gz
kernel: copy defconfig to {B} vs {S}
For kernel's that use a split source/object build the copy of defconfig to {S} in the base kernel class is problematic. The previous solution for this was to override the do_configure of the base kernel class in a subclass. While this is still a viable/valid option, it does mean that changes to the base do_configure will be missed. The solution to this is to copy a defconfig to {B} which is typically the same as {S}, so most kernel recipes won't see or care about this change. With this change in place, linux-yocto.bbclass can drop its override of do_configure. Tested with linux-yocto and oe linux recipes. (From OE-Core rev: 4f03d922ce32f602a5a407cf422d82a0d036e4a0) Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/kernel-yocto.bbclass6
-rw-r--r--meta/classes/kernel.bbclass4
2 files changed, 2 insertions, 8 deletions
diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass
index 98272fcc3b..a374df13be 100644
--- a/meta/classes/kernel-yocto.bbclass
+++ b/meta/classes/kernel-yocto.bbclass
@@ -118,12 +118,6 @@ python do_kernel_configcheck() {
118 bb.plain( "%s" % result ) 118 bb.plain( "%s" % result )
119} 119}
120 120
121# overrides the base kernel_do_configure, since we don't want all the
122# defconfig processing in there
123kernel_do_configure() {
124 yes '' | oe_runmake oldconfig
125}
126
127 121
128# Ensure that the branches (BSP and meta) are on the locatios specified by 122# Ensure that the branches (BSP and meta) are on the locatios specified by
129# their SRCREV values. If they are NOT on the right commits, the branches 123# their SRCREV values. If they are NOT on the right commits, the branches
diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
index 2e36e86eb8..9c492a3ecc 100644
--- a/meta/classes/kernel.bbclass
+++ b/meta/classes/kernel.bbclass
@@ -181,8 +181,8 @@ sysroot_stage_all_append() {
181kernel_do_configure() { 181kernel_do_configure() {
182 # Copy defconfig to .config if .config does not exist. This allows 182 # Copy defconfig to .config if .config does not exist. This allows
183 # recipes to manage the .config themselves in do_configure_prepend(). 183 # recipes to manage the .config themselves in do_configure_prepend().
184 if [ -f "${WORKDIR}/defconfig" ] && [ ! -f "${S}/.config" ]; then 184 if [ -f "${WORKDIR}/defconfig" ] && [ ! -f "${B}/.config" ]; then
185 cp "${WORKDIR}/defconfig" "${S}/.config" 185 cp "${WORKDIR}/defconfig" "${B}/.config"
186 fi 186 fi
187 yes '' | oe_runmake oldconfig 187 yes '' | oe_runmake oldconfig
188 188