diff options
| -rw-r--r-- | scripts/kconfig/conf.c | 2 | ||||
| -rw-r--r-- | scripts/kconfig/expr.h | 1 | ||||
| -rw-r--r-- | scripts/kconfig/menu.c | 7 | ||||
| -rw-r--r-- | scripts/kconfig/symbol.c | 2 |
4 files changed, 5 insertions, 7 deletions
diff --git a/scripts/kconfig/conf.c b/scripts/kconfig/conf.c index 5b7c86ea43a1..7ef429cd5cb3 100644 --- a/scripts/kconfig/conf.c +++ b/scripts/kconfig/conf.c | |||
| @@ -427,7 +427,7 @@ static void check_conf(struct menu *menu) | |||
| 427 | if (sym->name && !sym_is_choice_value(sym)) { | 427 | if (sym->name && !sym_is_choice_value(sym)) { |
| 428 | printf("CONFIG_%s\n", sym->name); | 428 | printf("CONFIG_%s\n", sym->name); |
| 429 | } | 429 | } |
| 430 | } else { | 430 | } else if (input_mode != oldnoconfig) { |
| 431 | if (!conf_cnt++) | 431 | if (!conf_cnt++) |
| 432 | printf(_("*\n* Restart config...\n*\n")); | 432 | printf(_("*\n* Restart config...\n*\n")); |
| 433 | rootEntry = menu_get_parent_menu(menu); | 433 | rootEntry = menu_get_parent_menu(menu); |
diff --git a/scripts/kconfig/expr.h b/scripts/kconfig/expr.h index 6ee2e4fb1481..170459c224a1 100644 --- a/scripts/kconfig/expr.h +++ b/scripts/kconfig/expr.h | |||
| @@ -165,7 +165,6 @@ struct menu { | |||
| 165 | struct symbol *sym; | 165 | struct symbol *sym; |
| 166 | struct property *prompt; | 166 | struct property *prompt; |
| 167 | struct expr *dep; | 167 | struct expr *dep; |
| 168 | struct expr *dir_dep; | ||
| 169 | unsigned int flags; | 168 | unsigned int flags; |
| 170 | char *help; | 169 | char *help; |
| 171 | struct file *file; | 170 | struct file *file; |
diff --git a/scripts/kconfig/menu.c b/scripts/kconfig/menu.c index 4fb590247f33..edda8b49619d 100644 --- a/scripts/kconfig/menu.c +++ b/scripts/kconfig/menu.c | |||
| @@ -107,7 +107,6 @@ static struct expr *menu_check_dep(struct expr *e) | |||
| 107 | void menu_add_dep(struct expr *dep) | 107 | void menu_add_dep(struct expr *dep) |
| 108 | { | 108 | { |
| 109 | current_entry->dep = expr_alloc_and(current_entry->dep, menu_check_dep(dep)); | 109 | current_entry->dep = expr_alloc_and(current_entry->dep, menu_check_dep(dep)); |
| 110 | current_entry->dir_dep = current_entry->dep; | ||
| 111 | } | 110 | } |
| 112 | 111 | ||
| 113 | void menu_set_type(int type) | 112 | void menu_set_type(int type) |
| @@ -291,10 +290,6 @@ void menu_finalize(struct menu *parent) | |||
| 291 | for (menu = parent->list; menu; menu = menu->next) | 290 | for (menu = parent->list; menu; menu = menu->next) |
| 292 | menu_finalize(menu); | 291 | menu_finalize(menu); |
| 293 | } else if (sym) { | 292 | } else if (sym) { |
| 294 | /* ignore inherited dependencies for dir_dep */ | ||
| 295 | sym->dir_dep.expr = expr_transform(expr_copy(parent->dir_dep)); | ||
| 296 | sym->dir_dep.expr = expr_eliminate_dups(sym->dir_dep.expr); | ||
| 297 | |||
| 298 | basedep = parent->prompt ? parent->prompt->visible.expr : NULL; | 293 | basedep = parent->prompt ? parent->prompt->visible.expr : NULL; |
| 299 | basedep = expr_trans_compare(basedep, E_UNEQUAL, &symbol_no); | 294 | basedep = expr_trans_compare(basedep, E_UNEQUAL, &symbol_no); |
| 300 | basedep = expr_eliminate_dups(expr_transform(basedep)); | 295 | basedep = expr_eliminate_dups(expr_transform(basedep)); |
| @@ -325,6 +320,8 @@ void menu_finalize(struct menu *parent) | |||
| 325 | parent->next = last_menu->next; | 320 | parent->next = last_menu->next; |
| 326 | last_menu->next = NULL; | 321 | last_menu->next = NULL; |
| 327 | } | 322 | } |
| 323 | |||
| 324 | sym->dir_dep.expr = parent->dep; | ||
| 328 | } | 325 | } |
| 329 | for (menu = parent->list; menu; menu = menu->next) { | 326 | for (menu = parent->list; menu; menu = menu->next) { |
| 330 | if (sym && sym_is_choice(sym) && | 327 | if (sym && sym_is_choice(sym) && |
diff --git a/scripts/kconfig/symbol.c b/scripts/kconfig/symbol.c index 943712ca6c0a..1f8b305449db 100644 --- a/scripts/kconfig/symbol.c +++ b/scripts/kconfig/symbol.c | |||
| @@ -350,6 +350,7 @@ void sym_calc_value(struct symbol *sym) | |||
| 350 | } | 350 | } |
| 351 | } | 351 | } |
| 352 | calc_newval: | 352 | calc_newval: |
| 353 | #if 0 | ||
| 353 | if (sym->dir_dep.tri == no && sym->rev_dep.tri != no) { | 354 | if (sym->dir_dep.tri == no && sym->rev_dep.tri != no) { |
| 354 | fprintf(stderr, "warning: ("); | 355 | fprintf(stderr, "warning: ("); |
| 355 | expr_fprint(sym->rev_dep.expr, stderr); | 356 | expr_fprint(sym->rev_dep.expr, stderr); |
| @@ -358,6 +359,7 @@ void sym_calc_value(struct symbol *sym) | |||
| 358 | expr_fprint(sym->dir_dep.expr, stderr); | 359 | expr_fprint(sym->dir_dep.expr, stderr); |
| 359 | fprintf(stderr, ")\n"); | 360 | fprintf(stderr, ")\n"); |
| 360 | } | 361 | } |
| 362 | #endif | ||
| 361 | newval.tri = EXPR_OR(newval.tri, sym->rev_dep.tri); | 363 | newval.tri = EXPR_OR(newval.tri, sym->rev_dep.tri); |
| 362 | } | 364 | } |
| 363 | if (newval.tri == mod && sym_get_type(sym) == S_BOOLEAN) | 365 | if (newval.tri == mod && sym_get_type(sym) == S_BOOLEAN) |
