kconfig: add savedefconfig
commit7cf3d73b4360e91b14326632ab1aeda4cb26308d
authorSam Ravnborg <sam@ravnborg.org>
Sat, 31 Jul 2010 21:35:34 +0000 (31 23:35 +0200)
committerMichal Marek <mmarek@suse.cz>
Tue, 3 Aug 2010 11:49:32 +0000 (3 13:49 +0200)
tree547bc52c631c9fb99ecd5c4be5ba25610505397a
parent49192f266ffa187bd7adaf5c2d881f85bd53e0ed
kconfig: add savedefconfig

savedefconfig will save a minimal config to a file
named "defconfig".

The config symbols are saved in the same order as
they appear in the menu structure so it should
be possible to map them to the relevant menus
if desired.

The implementation was tested against several minimal
configs for arm which was created using brute-force.

There was one regression related to default numbers
which had their valid range further limited by another symbol.

Sample:

config FOO
int "foo"
default 4

config BAR
int "bar"
range 0 FOO

If FOO is set to 3 then BAR cannot take a value higher than 3.
But the current implementation will set BAR equal to 4.

This is seldomly used and the final configuration is OK,
and the fix was non-trivial.
So it was documented in the code and left as is.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Michal Marek <mmarek@suse.cz>
scripts/kconfig/Makefile
scripts/kconfig/conf.c
scripts/kconfig/confdata.c
scripts/kconfig/lkc.h
scripts/kconfig/lkc_proto.h
scripts/kconfig/symbol.c