diff options
author | Bruce Ashfield <bruce.ashfield@windriver.com> | 2011-07-20 16:22:31 -0400 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-07-22 11:47:44 +0100 |
commit | 4f03d922ce32f602a5a407cf422d82a0d036e4a0 (patch) | |
tree | ec2f568b85dbf0dd86fdc573ec015b838cb55d4e /meta/classes | |
parent | 0b163efe5536555867f71561914414648b08ed24 (diff) | |
download | openembedded-core-4f03d922ce32f602a5a407cf422d82a0d036e4a0.tar.gz openembedded-core-4f03d922ce32f602a5a407cf422d82a0d036e4a0.tar.bz2 openembedded-core-4f03d922ce32f602a5a407cf422d82a0d036e4a0.tar.xz openembedded-core-4f03d922ce32f602a5a407cf422d82a0d036e4a0.zip |
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.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Diffstat (limited to 'meta/classes')
-rw-r--r-- | meta/classes/kernel-yocto.bbclass | 6 | ||||
-rw-r--r-- | meta/classes/kernel.bbclass | 4 |
2 files changed, 2 insertions, 8 deletions
diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass index 98272fcc3..a374df13b 100644 --- a/meta/classes/kernel-yocto.bbclass +++ b/meta/classes/kernel-yocto.bbclass @@ -118,12 +118,6 @@ python do_kernel_configcheck() { bb.plain( "%s" % result ) } -# overrides the base kernel_do_configure, since we don't want all the -# defconfig processing in there -kernel_do_configure() { - yes '' | oe_runmake oldconfig -} - # Ensure that the branches (BSP and meta) are on the locatios specified by # 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 2e36e86eb..9c492a3ec 100644 --- a/meta/classes/kernel.bbclass +++ b/meta/classes/kernel.bbclass @@ -181,8 +181,8 @@ sysroot_stage_all_append() { kernel_do_configure() { # Copy defconfig to .config if .config does not exist. This allows # recipes to manage the .config themselves in do_configure_prepend(). - if [ -f "${WORKDIR}/defconfig" ] && [ ! -f "${S}/.config" ]; then - cp "${WORKDIR}/defconfig" "${S}/.config" + if [ -f "${WORKDIR}/defconfig" ] && [ ! -f "${B}/.config" ]; then + cp "${WORKDIR}/defconfig" "${B}/.config" fi yes '' | oe_runmake oldconfig |