blob: 368725d0c388c6d0d10cc786b24ae637e27044e1 [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001--- a/kconf/conf.c
2+++ b/kconf/conf.c
3@@ -598,40 +598,12 @@ int main(int ac, char **av)
4 case oldconfig:
5 case listnewconfig:
6 case olddefconfig:
7- conf_read(NULL);
8- break;
9 case allnoconfig:
10 case allyesconfig:
11 case allmodconfig:
12 case alldefconfig:
13 case randconfig:
14- name = getenv("KCONFIG_ALLCONFIG");
15- if (!name)
16- break;
17- if ((strcmp(name, "") != 0) && (strcmp(name, "1") != 0)) {
18- if (conf_read_simple(name, S_DEF_USER)) {
19- fprintf(stderr,
20- _("*** Can't read seed configuration \"%s\"!\n"),
21- name);
22- exit(1);
23- }
24- break;
25- }
26- switch (input_mode) {
27- case allnoconfig: name = "allno.config"; break;
28- case allyesconfig: name = "allyes.config"; break;
29- case allmodconfig: name = "allmod.config"; break;
30- case alldefconfig: name = "alldef.config"; break;
31- case randconfig: name = "allrandom.config"; break;
32- default: break;
33- }
34- if (conf_read_simple(name, S_DEF_USER) &&
35- conf_read_simple("all.config", S_DEF_USER)) {
36- fprintf(stderr,
37- _("*** KCONFIG_ALLCONFIG set, but no \"%s\" or \"all.config\" file found\n"),
38- name);
39- exit(1);
40- }
41+ conf_read(NULL);
42 break;
43 default:
44 break;
45--- a/kconf/confdata.c
46+++ b/kconf/confdata.c
47@@ -1170,6 +1170,8 @@ bool conf_set_all_new_symbols(enum conf_
48 }
49 bool has_changed = false;
50
51+ sym_clear_all_valid();
52+
53 for_all_symbols(i, sym) {
54 if (sym_has_value(sym) || (sym->flags & SYMBOL_VALID))
55 continue;
56@@ -1213,8 +1215,6 @@ bool conf_set_all_new_symbols(enum conf_
57
58 }
59
60- sym_clear_all_valid();
61-
62 /*
63 * We have different type of choice blocks.
64 * If curr.tri equals to mod then we can select several