--- ./scripts/kconfig/conf.c
|
|
+++ ./scripts/kconfig/conf.c
|
|
@@ -22,6 +22,7 @@
|
|
ask_all,
|
|
ask_new,
|
|
ask_silent,
|
|
+ ask_no2mod,
|
|
set_default,
|
|
set_yes,
|
|
set_mod,
|
|
@@ -92,6 +93,14 @@
|
|
}
|
|
|
|
switch (input_mode) {
|
|
+ case ask_no2mod:
|
|
+ if (type == S_TRISTATE && sym_get_tristate_value(sym) == no) {
|
|
+ fprintf(stderr, "Setting %s to 'm'.\n", sym->name);
|
|
+ line[0] = 'm';
|
|
+ line[1] = '\n';
|
|
+ line[2] = 0;
|
|
+ break;
|
|
+ }
|
|
case ask_new:
|
|
case ask_silent:
|
|
if (sym_has_value(sym)) {
|
|
@@ -301,6 +310,7 @@
|
|
break;
|
|
}
|
|
check_stdin();
|
|
+ case ask_no2mod:
|
|
case ask_all:
|
|
fflush(stdout);
|
|
fgets(line, 128, stdin);
|
|
@@ -438,7 +448,7 @@
|
|
bindtextdomain(PACKAGE, LOCALEDIR);
|
|
textdomain(PACKAGE);
|
|
|
|
- while ((opt = getopt(ac, av, "osdD:nmyrh")) != -1) {
|
|
+ while ((opt = getopt(ac, av, "osdD:nmMyrh")) != -1) {
|
|
switch (opt) {
|
|
case 'o':
|
|
input_mode = ask_silent;
|
|
@@ -460,6 +470,9 @@
|
|
case 'm':
|
|
input_mode = set_mod;
|
|
break;
|
|
+ case 'M':
|
|
+ input_mode = ask_no2mod;
|
|
+ break;
|
|
case 'y':
|
|
input_mode = set_yes;
|
|
break;
|
|
@@ -510,6 +523,7 @@
|
|
case ask_silent:
|
|
case ask_all:
|
|
case ask_new:
|
|
+ case ask_no2mod:
|
|
conf_read(NULL);
|
|
break;
|
|
case set_no:
|
|
@@ -572,6 +586,7 @@
|
|
input_mode = ask_silent;
|
|
/* fall through */
|
|
case ask_silent:
|
|
+ case ask_no2mod:
|
|
/* Update until a loop caused no more changes */
|
|
do {
|
|
conf_cnt = 0;
|
|
--- ./scripts/kconfig/Makefile
|
|
+++ ./scripts/kconfig/Makefile
|
|
@@ -42,7 +42,7 @@
|
|
$(Q)rm -f arch/um/Kconfig_arch
|
|
$(Q)rm -f scripts/kconfig/linux_*.pot scripts/kconfig/config.pot
|
|
|
|
-PHONY += randconfig allyesconfig allnoconfig allmodconfig defconfig
|
|
+PHONY += randconfig allyesconfig allnoconfig allmodconfig no2modconfig defconfig
|
|
|
|
randconfig: $(obj)/conf
|
|
$< -r $(Kconfig)
|
|
@@ -56,6 +56,9 @@
|
|
allmodconfig: $(obj)/conf
|
|
$< -m $(Kconfig)
|
|
|
|
+no2modconfig: scripts/kconfig/conf
|
|
+ $< -M $(Kconfig)
|
|
+
|
|
defconfig: $(obj)/conf
|
|
ifeq ($(KBUILD_DEFCONFIG),)
|
|
$< -d $(Kconfig)
|
|
@@ -77,6 +80,7 @@
|
|
@echo ' randconfig - New config with random answer to all options'
|
|
@echo ' defconfig - New config with default answer to all options'
|
|
@echo ' allmodconfig - New config selecting modules when possible'
|
|
+ @echo ' no2modconfig - New config selecting modules for disabled options'
|
|
@echo ' allyesconfig - New config where all options are accepted with yes'
|
|
@echo ' allnoconfig - New config where all options are answered with no'
|
|
|