diff -urN RC13-git3-amigahw/scripts/kconfig/Makefile RC13-git3-kconfig/scripts/kconfig/Makefile --- RC13-git3-amigahw/scripts/kconfig/Makefile 2005-06-17 15:48:29.000000000 -0400 +++ RC13-git3-kconfig/scripts/kconfig/Makefile 2005-09-04 08:52:18.000000000 -0400 @@ -42,7 +42,11 @@ $< -n arch/$(ARCH)/Kconfig allmodconfig: $(obj)/conf +ifdef FIXED_CONF + $< -M $(FIXED_CONF) arch/$(ARCH)/Kconfig +else $< -m arch/$(ARCH)/Kconfig +endif defconfig: $(obj)/conf ifeq ($(KBUILD_DEFCONFIG),) diff -urN RC13-git3-amigahw/scripts/kconfig/conf.c RC13-git3-kconfig/scripts/kconfig/conf.c --- RC13-git3-amigahw/scripts/kconfig/conf.c 2005-08-10 10:37:55.000000000 -0400 +++ RC13-git3-kconfig/scripts/kconfig/conf.c 2005-09-04 08:52:18.000000000 -0400 @@ -23,6 +23,7 @@ set_default, set_yes, set_mod, + set_Mod, set_no, set_random } input_mode = ask_all; @@ -117,7 +118,14 @@ line[2] = 0; break; } + case set_Mod: case set_mod: + if (input_mode == set_Mod && sym_has_value(sym)) { + printf("%s\n", def); + line[0] = '\n'; + line[1] = 0; + return; + } if (type == S_TRISTATE) { if (sym_tristate_within_range(sym, mod)) { line[0] = 'm'; @@ -366,6 +374,7 @@ case set_default: case set_yes: case set_mod: + case set_Mod: case set_no: cnt = def; printf("%d\n", cnt); @@ -512,6 +521,15 @@ case 'n': input_mode = set_no; break; + case 'M': + defconfig_file = av[i++]; + if (!defconfig_file) { + printf("%s: No default config file specified\n", + av[0]); + exit(1); + } + input_mode = set_Mod; + break; case 'm': input_mode = set_mod; break; @@ -535,6 +553,7 @@ conf_parse(name); //zconfdump(stdout); switch (input_mode) { + case set_Mod: case set_default: if (!defconfig_file) defconfig_file = conf_get_default_confname();