[OE-core] [PATCH] kernel: use oldnoconfig instead of yes '' | make oldconfig

Alexandre Belloni alexandre.belloni at free-electrons.com
Tue Jan 7 14:18:37 UTC 2014


When using a defconfig, using yes '' | make oldconfig may not result in
the correct configuration being set. For example:

 $ grep USB_ETH .config
 CONFIG_USB_ETH=y
 CONFIG_USB_ETH_RNDIS=y
 CONFIG_USB_ETH_EEM=y
 $ make savedefconfig
 scripts/kconfig/conf --savedefconfig=defconfig Kconfig
 $ cp defconfig .config
 ‘defconfig’ -> ‘.config’
 $ yes '' | make oldconfig
 [...]
 #
 # configuration written to .config
 #
 $ grep USB_ETH .config
 CONFIG_USB_ETH=m
 CONFIG_USB_ETH_RNDIS=y
 CONFIG_USB_ETH_EEM=y

Using make olddefconfig solves that but we'll use oldnoconfig for
backward compatibility with older kernels.

 $ cp defconfig .config
 ‘defconfig’ -> ‘.config’
 $ make oldnoconfig
 scripts/kconfig/conf --olddefconfig Kconfig
 #
 # configuration written to .config
 #
 $ grep USB_ETH .config
 CONFIG_USB_ETH=y
 CONFIG_USB_ETH_RNDIS=y
 CONFIG_USB_ETH_EEM=y

For more information, please refer to:
http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=fbe98bb9ed3dae23e320c6b113e35f129538d14a

Signed-off-by: Alexandre Belloni <alexandre.belloni at free-electrons.com>
---
 meta/classes/kernel.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
index 61a6d102d7a8..644d7937923d 100644
--- a/meta/classes/kernel.bbclass
+++ b/meta/classes/kernel.bbclass
@@ -313,7 +313,7 @@ kernel_do_configure() {
 	if [ -f "${WORKDIR}/defconfig" ] && [ ! -f "${B}/.config" ]; then
 		cp "${WORKDIR}/defconfig" "${B}/.config"
 	fi
-	yes '' | oe_runmake oldconfig
+	oe_runmake oldnoconfig
 }
 
 do_savedefconfig() {
-- 
1.8.3.2




More information about the Openembedded-core mailing list