diff options
Diffstat (limited to 'scripts/kconfig/zconf.y')
-rw-r--r-- | scripts/kconfig/zconf.y | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/scripts/kconfig/zconf.y b/scripts/kconfig/zconf.y index 9d08582f2aa6..ab44feb3c600 100644 --- a/scripts/kconfig/zconf.y +++ b/scripts/kconfig/zconf.y | |||
@@ -481,7 +481,9 @@ void conf_parse(const char *name) | |||
481 | 481 | ||
482 | sym_init(); | 482 | sym_init(); |
483 | menu_init(); | 483 | menu_init(); |
484 | modules_sym = sym_lookup("MODULES", 0); | 484 | modules_sym = sym_lookup(NULL, 0); |
485 | modules_sym->type = S_BOOLEAN; | ||
486 | modules_sym->flags |= SYMBOL_AUTO; | ||
485 | rootmenu.prompt = menu_add_prompt(P_MENU, "Linux Kernel Configuration", NULL); | 487 | rootmenu.prompt = menu_add_prompt(P_MENU, "Linux Kernel Configuration", NULL); |
486 | 488 | ||
487 | #if YYDEBUG | 489 | #if YYDEBUG |
@@ -491,6 +493,12 @@ void conf_parse(const char *name) | |||
491 | zconfparse(); | 493 | zconfparse(); |
492 | if (zconfnerrs) | 494 | if (zconfnerrs) |
493 | exit(1); | 495 | exit(1); |
496 | if (!modules_sym->prop) { | ||
497 | struct property *prop; | ||
498 | |||
499 | prop = prop_alloc(P_DEFAULT, modules_sym); | ||
500 | prop->expr = expr_alloc_symbol(sym_lookup("MODULES", 0)); | ||
501 | } | ||
494 | menu_finalize(&rootmenu); | 502 | menu_finalize(&rootmenu); |
495 | for_all_symbols(i, sym) { | 503 | for_all_symbols(i, sym) { |
496 | sym_check_deps(sym); | 504 | sym_check_deps(sym); |