confdata.c (d6ee35764f270c699e165b15dc59f4e55546bfda) confdata.c (7a962923359768e04137125bd479fd0dfa6117d3)
1/*
2 * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org>
3 * Released under the terms of the GNU GPL v2.0.
4 */
5
6#include <sys/stat.h>
7#include <ctype.h>
8#include <fcntl.h>

--- 298 unchanged lines hidden (view full) ---

307
308 if (modules_sym)
309 sym_calc_value(modules_sym);
310 return 0;
311}
312
313int conf_read(const char *name)
314{
1/*
2 * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org>
3 * Released under the terms of the GNU GPL v2.0.
4 */
5
6#include <sys/stat.h>
7#include <ctype.h>
8#include <fcntl.h>

--- 298 unchanged lines hidden (view full) ---

307
308 if (modules_sym)
309 sym_calc_value(modules_sym);
310 return 0;
311}
312
313int conf_read(const char *name)
314{
315 struct symbol *sym;
315 struct symbol *sym, *choice_sym;
316 struct property *prop;
317 struct expr *e;
318 int i, flags;
319
320 sym_set_change_count(0);
321
322 if (conf_read_simple(name, S_DEF_USER))
323 return 1;

--- 24 unchanged lines hidden (view full) ---

348 sym_ok:
349 if (!sym_is_choice(sym))
350 continue;
351 /* The choice symbol only has a set value (and thus is not new)
352 * if all its visible childs have values.
353 */
354 prop = sym_get_choice_prop(sym);
355 flags = sym->flags;
316 struct property *prop;
317 struct expr *e;
318 int i, flags;
319
320 sym_set_change_count(0);
321
322 if (conf_read_simple(name, S_DEF_USER))
323 return 1;

--- 24 unchanged lines hidden (view full) ---

348 sym_ok:
349 if (!sym_is_choice(sym))
350 continue;
351 /* The choice symbol only has a set value (and thus is not new)
352 * if all its visible childs have values.
353 */
354 prop = sym_get_choice_prop(sym);
355 flags = sym->flags;
356 for (e = prop->expr; e; e = e->left.expr)
357 if (e->right.sym->visible != no)
358 flags &= e->right.sym->flags;
356 expr_list_for_each_sym(prop->expr, e, choice_sym)
357 if (choice_sym->visible != no)
358 flags &= choice_sym->flags;
359 sym->flags &= flags | ~SYMBOL_DEF_USER;
360 }
361
362 for_all_symbols(i, sym) {
363 if (sym_has_value(sym) && !sym_is_choice_value(sym)) {
364 /* Reset values of generates values, so they'll appear
365 * as new, if they should become visible, but that
366 * doesn't quite work if the Kconfig and the saved

--- 448 unchanged lines hidden ---
359 sym->flags &= flags | ~SYMBOL_DEF_USER;
360 }
361
362 for_all_symbols(i, sym) {
363 if (sym_has_value(sym) && !sym_is_choice_value(sym)) {
364 /* Reset values of generates values, so they'll appear
365 * as new, if they should become visible, but that
366 * doesn't quite work if the Kconfig and the saved

--- 448 unchanged lines hidden ---