I post here a single msg from the mega-thread, because even if it is rejected by Linus we could reuse it in OE :) The idea is reducing the defconfigs: for Zaurus we have very much in common between defconfigs, so much that Iwas thinking to just create the diffs. Now Eric seems having a better method...
Opinions? Andrea ---------- Forwarded message ---------- From: Eric Miao <eric.y.m...@gmail.com> Date: Tue, Jun 8, 2010 at 4:51 PM Subject: Re: Heads up: Linus plans to kill ARM defconfigs To: Russell King - ARM Linux <li...@arm.linux.org.uk> Cc: Amit Kucheria <amit.kuche...@canonical.com>, Nicolas Pitre <n...@fluxnic.net>, Tony Lindgren <t...@atomide.com>, Martin Guy <martinw...@gmail.com>, Marek Vasut <marek.va...@gmail.com>, Ryan Mallon <r...@bluewatersys.com>, Andy Whitcroft <a...@canonical.com>, linux-arm-ker...@lists.infradead.org On Tue, Jun 8, 2010 at 9:13 PM, Russell King - ARM Linux <li...@arm.linux.org.uk> wrote: > On Tue, Jun 08, 2010 at 09:01:35AM -0400, Nicolas Pitre wrote: >> I wouldn't give up on that option just yet though. I don't think he >> fully understood your idea, and without an actual patch it might be hard >> to understand as well, especially for people who are not used to deal >> with the target varieties we have on ARM. Linus is also known to change >> his mind when presented with evidences. > > The two ideas are very close to each other - and can be generated > together. > > If we create something like Linus' preferred solution, we can then do > in the main arch/arm/Kconfig: > > config STD_CONFIG > bool "blah" > > if STD_CONFIG > > if MACH_WHATEVER > include arch/arm/config/Kconfig.whatever > endif > > if MACH_BLAH > include arch/arm/config/Kconfig.blah > endif > > endif > > which should work as per my idea. > Anyway, we might need a tool to analyze those common config options across all boards, and those not. Attached is a script used when updating debian kernel configs, which I found might be useful. The result is still a _big_ mess to sort out though. Below is what I did: 1. Generating a complete list of configs (updated) ycm...@macbook-lucid:~/kernel/linux-2.6$ for i in arch/arm/configs/*; do j=`echo $i | sed 's/.*configs\/\(.*\)_defconfig/\1/'`; echo $j; mkdir ../build/tmp; make ARCH=arm O=../build/tmp `basename $i`; make ARCH=arm O=../build/tmp oldconfig; cp ../build/tmp/.config ../configs/config.$j; rm -fr ../build/tmp; done 2. Use splitconfigs.pl shows the reduction of config options ycm...@macbook-lucid:~/kernel/configs$ cat * | wc -l 258408 ycm...@macbook-lucid:~/kernel/configs$ splitconfig.pl . Reading config's ... Merging lists ... Creating common config ... done. Creating stub configs ... ycm...@macbook-lucid:~/kernel/configs$ cat * | wc -l 142062 3. A config.common includes those options common to all config.* and the remaining config.* now only includes those could be different across boards. _______________________________________________ linux-arm-kernel mailing list linux-arm-ker...@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
splitconfig.pl
Description: Binary data
_______________________________________________ Zaurus-devel mailing list Zaurus-devel@lists.linuxtogo.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/zaurus-devel