[OE-core] [PATCH v3] kernel: use oldnoconfig before yes '' | make oldconfig

Bruce Ashfield bruce.ashfield at windriver.com
Fri Feb 7 16:43:08 UTC 2014


On 14-02-07 11:30 AM, Alexandre Belloni wrote:
> When using a defconfig, using yes '' | make oldconfig may not result in
> the correct configuration being set. For example:

Thanks for your patience, v3 looks good to me. Obviously RP will
over rule as he sees fit :)

>
>   $ ARCH=mips make qi_lb60_defconfig
>   #
>   # configuration written to .config
>   #
>   $ grep USB_ETH .config
>   CONFIG_USB_ETH=y
>   # CONFIG_USB_ETH_RNDIS is not set
>   # CONFIG_USB_ETH_EEM is not set
>
>   $ cp arch/mips/configs/qi_lb60_defconfig .config
>   $ yes '' | make ARCH=mips oldconfig
> [...]
>   $ grep USB_ETH .config
>   CONFIG_USB_ETH=m
>   # CONFIG_USB_ETH_RNDIS is not set
>   # CONFIG_USB_ETH_EEM is not set
>
> Using make olddefconfig solves that but we'll use the oldnoconfig alias
> for backward compatibility with older kernels.
>
>   $ cp arch/mips/configs/qi_lb60_defconfig .config
>   $ make ARCH=mips oldnoconfig
>   scripts/kconfig/conf --olddefconfig Kconfig
>   #
>   # configuration written to .config
>   #
>   $ grep USB_ETH .config
>   CONFIG_USB_ETH=y
>   # CONFIG_USB_ETH_RNDIS is not set
>   # CONFIG_USB_ETH_EEM is not set

Acked-by: Bruce Ashfield <bruce.ashfield at windriver.com>

>
> Signed-off-by: Alexandre Belloni <alexandre.belloni at free-electrons.com>
> ---
>   meta/classes/kernel.bbclass | 4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
> index 51626b03f824..9f1d669b3cf6 100644
> --- a/meta/classes/kernel.bbclass
> +++ b/meta/classes/kernel.bbclass
> @@ -301,6 +301,8 @@ python sysroot_stage_all () {
>       oe.path.copyhardlinktree(d.expand("${D}${KERNEL_SRC_PATH}"), d.expand("${SYSROOT_DESTDIR}${KERNEL_SRC_PATH}"))
>   }
>
> +KERNEL_CONFIG_COMMAND ?= "oe_runmake oldnoconfig || yes '' | oe_runmake oldconfig"
> +
>   kernel_do_configure() {
>   	# fixes extra + in /lib/modules/2.6.37+
>   	# $ scripts/setlocalversion . => +
> @@ -313,7 +315,7 @@ kernel_do_configure() {
>   	if [ -f "${WORKDIR}/defconfig" ] && [ ! -f "${B}/.config" ]; then
>   		cp "${WORKDIR}/defconfig" "${B}/.config"
>   	fi
> -	yes '' | oe_runmake oldconfig
> +	eval ${KERNEL_CONFIG_COMMAND}
>   }
>
>   do_savedefconfig() {
>




More information about the Openembedded-core mailing list