--- a/kconf/conf.c +++ b/kconf/conf.c @@ -593,40 +593,12 @@ int main(int ac, char **av) case oldconfig: case listnewconfig: case olddefconfig: - conf_read(NULL); - break; case allnoconfig: case allyesconfig: case allmodconfig: case alldefconfig: case randconfig: - name = getenv("KCONFIG_ALLCONFIG"); - if (!name) - break; - if ((strcmp(name, "") != 0) && (strcmp(name, "1") != 0)) { - if (conf_read_simple(name, S_DEF_USER)) { - fprintf(stderr, - _("*** Can't read seed configuration \"%s\"!\n"), - name); - exit(1); - } - break; - } - switch (input_mode) { - case allnoconfig: name = "allno.config"; break; - case allyesconfig: name = "allyes.config"; break; - case allmodconfig: name = "allmod.config"; break; - case alldefconfig: name = "alldef.config"; break; - case randconfig: name = "allrandom.config"; break; - default: break; - } - if (conf_read_simple(name, S_DEF_USER) && - conf_read_simple("all.config", S_DEF_USER)) { - fprintf(stderr, - _("*** KCONFIG_ALLCONFIG set, but no \"%s\" or \"all.config\" file found\n"), - name); - exit(1); - } + conf_read(NULL); break; default: break; --- a/kconf/confdata.c +++ b/kconf/confdata.c @@ -1169,6 +1169,8 @@ bool conf_set_all_new_symbols(enum conf_ } bool has_changed = false; + sym_clear_all_valid(); + for_all_symbols(i, sym) { if (sym_has_value(sym) || (sym->flags & SYMBOL_VALID)) continue; @@ -1212,8 +1214,6 @@ bool conf_set_all_new_symbols(enum conf_ } - sym_clear_all_valid(); - /* * We have different type of choice blocks. * If curr.tri equals to mod then we can select several