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 <[email protected]>


Signed-off-by: Alexandre Belloni <[email protected]>
---
  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() {


_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to