X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/5c472fc895c32a189d574b338057164e95430825..15a81dae2ac4c0b4af17937969eb8799cceeddb2:/scripts/config/zconf.y?ds=sidebyside diff --git a/scripts/config/zconf.y b/scripts/config/zconf.y index 1f61fba6a..9689a3ed8 100644 --- a/scripts/config/zconf.y +++ b/scripts/config/zconf.y @@ -69,9 +69,11 @@ static struct menu *current_menu, *current_entry; %token T_PROMPT %token T_TYPE %token T_DEFAULT +%token T_DESELECT %token T_SELECT %token T_RANGE %token T_ON +%token T_RESET %token T_WORD %token T_WORD_QUOTE %token T_UNEQUAL @@ -118,7 +120,7 @@ stmt_list: ; option_name: - T_DEPENDS | T_PROMPT | T_TYPE | T_SELECT | T_OPTIONAL | T_RANGE | T_DEFAULT + T_DEPENDS | T_PROMPT | T_TYPE | T_DESELECT | T_SELECT | T_OPTIONAL | T_RANGE | T_DEFAULT | T_RESET ; common_stmt: @@ -203,6 +205,12 @@ config_option: T_DEFAULT expr if_expr T_EOL $1->stype); }; +config_option: T_DESELECT T_WORD if_expr T_EOL +{ + menu_add_symbol(P_DESELECT, sym_lookup($2, 0), $3); + printd(DEBUG_PARSE, "%s:%d:deselect\n", zconf_curname(), zconf_lineno()); +}; + config_option: T_SELECT T_WORD if_expr T_EOL { menu_add_symbol(P_SELECT, sym_lookup($2, 0), $3); @@ -274,6 +282,11 @@ choice_option: T_OPTIONAL T_EOL printd(DEBUG_PARSE, "%s:%d:optional\n", zconf_curname(), zconf_lineno()); }; +choice_option: T_RESET if_expr T_EOL +{ + menu_add_prop(P_RESET, NULL, NULL, $2); +}; + choice_option: T_DEFAULT T_WORD if_expr T_EOL { if ($1->stype == S_UNKNOWN) { @@ -459,7 +472,7 @@ void conf_parse(const char *name) sym_init(); menu_init(); modules_sym = sym_lookup("MODULES", 0); - rootmenu.prompt = menu_add_prompt(P_MENU, "Linux Kernel Configuration", NULL); + rootmenu.prompt = menu_add_prompt(P_MENU, "OpenWrt Configuration", NULL); #if YYDEBUG if (getenv("ZCONF_DEBUG"))