X-Git-Url: http://git.ozo.com/?a=blobdiff_plain;f=scripts%2Fconfig%2Fzconf.y;h=9689a3ed80af076c206b8e4a57ea73443fb3e671;hb=dd63d29cdd8b6015f5b615b9da85818c5c38adff;hp=ce13f0269561fc1e8dea27386669e674913728c2;hpb=cbc765de67bc4e947a61323fbcf9b0e01f66c606;p=openwrt-10.03%2F.git diff --git a/scripts/config/zconf.y b/scripts/config/zconf.y index ce13f0269..9689a3ed8 100644 --- a/scripts/config/zconf.y +++ b/scripts/config/zconf.y @@ -69,6 +69,7 @@ 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 @@ -119,7 +120,7 @@ stmt_list: ; option_name: - T_DEPENDS | T_PROMPT | T_TYPE | T_SELECT | T_OPTIONAL | T_RANGE | T_DEFAULT | T_RESET + T_DEPENDS | T_PROMPT | T_TYPE | T_DESELECT | T_SELECT | T_OPTIONAL | T_RANGE | T_DEFAULT | T_RESET ; common_stmt: @@ -204,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); @@ -275,9 +282,9 @@ choice_option: T_OPTIONAL T_EOL printd(DEBUG_PARSE, "%s:%d:optional\n", zconf_curname(), zconf_lineno()); }; -choice_option: T_RESET T_EOL +choice_option: T_RESET if_expr T_EOL { - current_entry->sym->flags |= SYMBOL_RESET; + menu_add_prop(P_RESET, NULL, NULL, $2); }; choice_option: T_DEFAULT T_WORD if_expr T_EOL