Arve Hjønnevåg
fbe98bb9ed
kconfig: Fix defconfig when one choice menu selects options that another choice menu depends on
The defconfig and Kconfig combination below, which is based on 3.10-rc4
Kconfigs, resulted in several options getting set to "m" instead of "y".
defconfig.choice:
---8<---
CONFIG_MODULES=y
CONFIG_USB_ZERO=y
---8<---
Kconfig.choice:
---8<---
menuconfig MODULES
bool "Enable loadable module support"
config CONFIGFS_FS
tristate "Userspace-driven configuration filesystem"
config OCFS2_FS
tristate "OCFS2 file system support"
depends on CONFIGFS_FS
select CRC32
config USB_LIBCOMPOSITE
tristate
select CONFIGFS_FS
choice
tristate "USB Gadget Drivers"
default USB_ETH
config USB_ZERO
tristate "Gadget Zero (DEVELOPMENT)"
select USB_LIBCOMPOSITE
config USB_ETH
tristate "Ethernet Gadget (with CDC Ethernet support)"
select USB_LIBCOMPOSITE
endchoice
config CRC32
tristate "CRC32/CRC32c functions"
default y
choice
prompt "CRC32 implementation"
depends on CRC32
default CRC32_SLICEBY8
config CRC32_SLICEBY8
bool "Slice by 8 bytes"
endchoice
---8<---
$ scripts/kconfig/conf --defconfig=defconfig.choice Kconfig.choice
would result in:
.config:
---8<---
CONFIG_MODULES=y
CONFIG_CONFIGFS_FS=m
CONFIG_USB_LIBCOMPOSITE=m
CONFIG_USB_ZERO=m
CONFIG_CRC32=y
CONFIG_CRC32_SLICEBY8=y
---8<---
when the expected result would be:
.config:
---8<---
CONFIG_MODULES=y
CONFIG_CONFIGFS_FS=y
CONFIG_USB_LIBCOMPOSITE=y
CONFIG_USB_ZERO=y
CONFIG_CRC32=y
CONFIG_CRC32_SLICEBY8=y
---8<---
Signed-off-by: Arve Hjønnevåg <arve@android.com>
[yann.morin.1998@free.fr: add the resulting .config to commit log,
remove unneeded USB_GADGET from the defconfig]
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2013-06-16 11:00:30 +02:00
..
2013-04-16 22:00:32 +02:00
2012-07-13 15:08:25 +02:00
2012-10-03 09:03:24 +02:00
2013-04-25 00:16:25 +02:00
2013-06-16 11:00:30 +02:00
2012-11-20 12:12:47 +01:00
2013-06-16 11:00:30 +02:00
2012-11-20 11:20:08 +01:00
2010-09-17 16:54:42 +02:00
2011-06-06 15:32:20 -04:00
2013-04-29 19:55:56 +02:00
2012-10-25 15:06:00 +02:00
2013-06-16 11:00:30 +02:00
2013-03-07 00:21:11 +01:00
2013-04-16 22:00:31 +02:00
2013-05-07 07:55:36 -07:00
2013-04-10 10:55:22 +02:00
2013-02-09 01:42:41 +01:00
2013-01-24 11:43:44 +01:00
2011-09-09 14:40:08 +02:00
2008-01-28 23:14:39 +01:00
2013-01-30 10:16:43 +01:00
2011-07-25 15:50:34 +02:00
2013-04-29 15:41:51 -04:00
2013-06-16 11:00:30 +02:00
2012-11-20 12:12:47 +01:00
2011-06-09 14:04:42 -04:00
2011-06-09 14:04:45 -04:00
2012-11-20 12:12:47 +01:00
2012-11-20 12:12:57 +01:00
2011-07-30 00:17:06 -07:00
2011-07-30 00:17:06 -07:00