On Sun, Aug 03, 2008 at 01:07:32PM +0300, Adrian Bunk wrote: > On Sun, Aug 03, 2008 at 10:00:19AM +0200, Sam Ravnborg wrote: > > On Sat, Aug 02, 2008 at 10:26:47PM +0300, Adrian Bunk wrote: > > > On Sat, Aug 02, 2008 at 12:03:33PM -0400, Josh Boyer wrote: > > > > I was going through the somewhat tedious task of updating the 4xx > > > > defconfigs today, and I noticed some odd behavior from Kconfig. > > > > Basically, I would do: > > > > > > > > make ppc44x_defconfig > > > > make oldconfig > > > > <build> > > > > cp .config arch/powerpc/configs/ppc44x_defconfig > > > > make distclean > > > > > > > > I did this for a number of configs. Then I went back and tried to build > > > > ppc44x_defconfig again and I got this result: > > > > > > > > [jwboyer@localhost linux-2.6]$ make ppc44x_defconfig > > > > HOSTCC scripts/basic/fixdep > > > > HOSTCC scripts/basic/docproc > > > > HOSTCC scripts/kconfig/conf.o > > > > HOSTCC scripts/kconfig/kxgettext.o > > > > SHIPPED scripts/kconfig/zconf.tab.c > > > > SHIPPED scripts/kconfig/lex.zconf.c > > > > SHIPPED scripts/kconfig/zconf.hash.c > > > > HOSTCC scripts/kconfig/zconf.tab.o > > > > scripts/kconfig/lex.zconf.c:1628: warning: ‘input’ defined but not used > > > > HOSTLD scripts/kconfig/conf > > > > [jwboyer@localhost linux-2.6]$ make oldconfig > > > > scripts/kconfig/conf -o arch/powerpc/Kconfig > > > > # > > > > # using defaults found in /boot/config-2.6.25.13-104.fc9.ppc64 > > > > # > > > > > > > > There was no .config file present after the initial 'make > > > > ppc44x_defconfig', so it defaulted to using something in /boot. I'm a > > > > bit baffled here, but that seems to be common to any newly updated > > > > defconfig I've done. > > > > > > > > Was there a change to Kconfig recently that won't copy the defconfig > > > > file to .config if there are no symbol changes or something like that? > > > > > > Thanks for your bug report, this should have worked. > > > > > > @Sam: > > > I've bisected this and it is caused by > > > commit f443d2eccf077afd8a839cc7ed66cc4d520c5f05 > > > (kconfig: speed up all*config + randconfig). > > > > > > Minimal example for reproducing it: > > > > > > make x86_64_defconfig > > > cp .config arch/x86/configs/x86_64_defconfig > > > rm .config > > > make x86_64_defconfig > > > ls .config > > > > Thanks Adrian. > > > > The code has started to check if anything changed > > and if not - then do not write out a new config. > > So in your sample above we would not see any changes > > compared to what we read in autoconf.h so we did nto write > > out a new autoconf.h (and thus no .config). > > > > The right fix seems to check for .config and for changes > > and in both cases to write a new config. > > > > Patch below. > > This breaks with: > > make ARCH=x86 x86_64_defconfig > cp .config arch/x86/configs/x86_64_defconfig > make ARCH=x86 i386_defconfig > make ARCH=x86 x86_64_defconfig > > Why can't we simply always write the .config? Hi Adrian. I just pushed a patch that does this. Thanks, Sam -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html