mirror of https://github.com/hak5/openwrt-owl.git
force a config reset when the user changes the target platform in menuconfig
SVN-Revision: 6503owl
parent
026e6046eb
commit
eea7bb328d
|
@ -94,6 +94,7 @@ struct symbol {
|
|||
#define SYMBOL_AUTO 0x1000
|
||||
#define SYMBOL_CHECKED 0x2000
|
||||
#define SYMBOL_WARNED 0x8000
|
||||
#define SYMBOL_RESET 0x10000
|
||||
|
||||
#define SYMBOL_MAXLENGTH 256
|
||||
#define SYMBOL_HASHSIZE 257
|
||||
|
|
|
@ -920,6 +920,9 @@ static void conf_choice(struct menu *menu)
|
|||
case 0:
|
||||
if (sscanf(input_buf, "%p", &child) != 1)
|
||||
break;
|
||||
if ((menu->sym->flags & SYMBOL_RESET) &&
|
||||
sym_get_tristate_value(child->sym) != yes)
|
||||
conf_reset();
|
||||
sym_set_tristate_value(child->sym, yes);
|
||||
return;
|
||||
case 1:
|
||||
|
|
|
@ -25,6 +25,7 @@ endif, T_ENDIF, TF_COMMAND
|
|||
depends, T_DEPENDS, TF_COMMAND
|
||||
requires, T_REQUIRES, TF_COMMAND
|
||||
optional, T_OPTIONAL, TF_COMMAND
|
||||
reset, T_RESET, TF_COMMAND
|
||||
default, T_DEFAULT, TF_COMMAND, S_UNKNOWN
|
||||
prompt, T_PROMPT, TF_COMMAND
|
||||
tristate, T_TYPE, TF_COMMAND, S_TRISTATE
|
||||
|
|
|
@ -53,10 +53,10 @@ kconf_id_hash (register const char *str, register unsigned int len)
|
|||
47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
|
||||
47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
|
||||
47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
|
||||
47, 47, 47, 47, 47, 47, 47, 25, 10, 15,
|
||||
0, 0, 5, 47, 0, 0, 47, 47, 0, 10,
|
||||
0, 20, 20, 20, 5, 0, 0, 20, 47, 47,
|
||||
20, 47, 47, 47, 47, 47, 47, 47, 47, 47,
|
||||
47, 47, 47, 47, 47, 47, 47, 0, 10, 15,
|
||||
0, 0, 5, 47, 5, 0, 47, 47, 10, 10,
|
||||
0, 20, 20, 20, 5, 15, 0, 15, 47, 47,
|
||||
15, 47, 47, 47, 47, 47, 47, 47, 47, 47,
|
||||
47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
|
||||
47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
|
||||
47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
|
||||
|
@ -90,31 +90,32 @@ struct kconf_id_strings_t
|
|||
{
|
||||
char kconf_id_strings_str2[sizeof("if")];
|
||||
char kconf_id_strings_str3[sizeof("int")];
|
||||
char kconf_id_strings_str4[sizeof("help")];
|
||||
char kconf_id_strings_str5[sizeof("endif")];
|
||||
char kconf_id_strings_str6[sizeof("select")];
|
||||
char kconf_id_strings_str6[sizeof("enable")];
|
||||
char kconf_id_strings_str7[sizeof("endmenu")];
|
||||
char kconf_id_strings_str8[sizeof("tristate")];
|
||||
char kconf_id_strings_str9[sizeof("endchoice")];
|
||||
char kconf_id_strings_str10[sizeof("range")];
|
||||
char kconf_id_strings_str11[sizeof("string")];
|
||||
char kconf_id_strings_str12[sizeof("default")];
|
||||
char kconf_id_strings_str13[sizeof("def_bool")];
|
||||
char kconf_id_strings_str14[sizeof("menu")];
|
||||
char kconf_id_strings_str16[sizeof("def_boolean")];
|
||||
char kconf_id_strings_str17[sizeof("def_tristate")];
|
||||
char kconf_id_strings_str18[sizeof("mainmenu")];
|
||||
char kconf_id_strings_str19[sizeof("help")];
|
||||
char kconf_id_strings_str20[sizeof("menuconfig")];
|
||||
char kconf_id_strings_str21[sizeof("config")];
|
||||
char kconf_id_strings_str22[sizeof("on")];
|
||||
char kconf_id_strings_str23[sizeof("hex")];
|
||||
char kconf_id_strings_str26[sizeof("source")];
|
||||
char kconf_id_strings_str25[sizeof("reset")];
|
||||
char kconf_id_strings_str26[sizeof("string")];
|
||||
char kconf_id_strings_str27[sizeof("depends")];
|
||||
char kconf_id_strings_str28[sizeof("optional")];
|
||||
char kconf_id_strings_str31[sizeof("enable")];
|
||||
char kconf_id_strings_str31[sizeof("select")];
|
||||
char kconf_id_strings_str32[sizeof("comment")];
|
||||
char kconf_id_strings_str33[sizeof("requires")];
|
||||
char kconf_id_strings_str34[sizeof("bool")];
|
||||
char kconf_id_strings_str36[sizeof("source")];
|
||||
char kconf_id_strings_str37[sizeof("boolean")];
|
||||
char kconf_id_strings_str41[sizeof("choice")];
|
||||
char kconf_id_strings_str46[sizeof("prompt")];
|
||||
|
@ -123,31 +124,32 @@ static struct kconf_id_strings_t kconf_id_strings_contents =
|
|||
{
|
||||
"if",
|
||||
"int",
|
||||
"help",
|
||||
"endif",
|
||||
"select",
|
||||
"enable",
|
||||
"endmenu",
|
||||
"tristate",
|
||||
"endchoice",
|
||||
"range",
|
||||
"string",
|
||||
"default",
|
||||
"def_bool",
|
||||
"menu",
|
||||
"def_boolean",
|
||||
"def_tristate",
|
||||
"mainmenu",
|
||||
"help",
|
||||
"menuconfig",
|
||||
"config",
|
||||
"on",
|
||||
"hex",
|
||||
"source",
|
||||
"reset",
|
||||
"string",
|
||||
"depends",
|
||||
"optional",
|
||||
"enable",
|
||||
"select",
|
||||
"comment",
|
||||
"requires",
|
||||
"bool",
|
||||
"source",
|
||||
"boolean",
|
||||
"choice",
|
||||
"prompt"
|
||||
|
@ -161,7 +163,7 @@ kconf_id_lookup (register const char *str, register unsigned int len)
|
|||
{
|
||||
enum
|
||||
{
|
||||
TOTAL_KEYWORDS = 30,
|
||||
TOTAL_KEYWORDS = 31,
|
||||
MIN_WORD_LENGTH = 2,
|
||||
MAX_WORD_LENGTH = 12,
|
||||
MIN_HASH_VALUE = 2,
|
||||
|
@ -173,14 +175,14 @@ kconf_id_lookup (register const char *str, register unsigned int len)
|
|||
{-1}, {-1},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str2, T_IF, TF_COMMAND|TF_PARAM},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str3, T_TYPE, TF_COMMAND, S_INT},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str4, T_HELP, TF_COMMAND},
|
||||
{-1},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str5, T_ENDIF, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str6, T_SELECT, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str7, T_ENDMENU, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str8, T_TYPE, TF_COMMAND, S_TRISTATE},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str9, T_ENDCHOICE, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str10, T_RANGE, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str11, T_TYPE, TF_COMMAND, S_STRING},
|
||||
{-1},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str12, T_DEFAULT, TF_COMMAND, S_UNKNOWN},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str13, T_DEFAULT, TF_COMMAND, S_BOOLEAN},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str14, T_MENU, TF_COMMAND},
|
||||
|
@ -188,13 +190,14 @@ kconf_id_lookup (register const char *str, register unsigned int len)
|
|||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str16, T_DEFAULT, TF_COMMAND, S_BOOLEAN},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str17, T_DEFAULT, TF_COMMAND, S_TRISTATE},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str18, T_MAINMENU, TF_COMMAND},
|
||||
{-1},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str19, T_HELP, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str20, T_MENUCONFIG, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str21, T_CONFIG, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str22, T_ON, TF_PARAM},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str23, T_TYPE, TF_COMMAND, S_HEX},
|
||||
{-1}, {-1},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str26, T_SOURCE, TF_COMMAND},
|
||||
{-1},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str25, T_RESET, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str26, T_TYPE, TF_COMMAND, S_STRING},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str27, T_DEPENDS, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str28, T_OPTIONAL, TF_COMMAND},
|
||||
{-1}, {-1},
|
||||
|
@ -202,7 +205,8 @@ kconf_id_lookup (register const char *str, register unsigned int len)
|
|||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str32, T_COMMENT, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str33, T_REQUIRES, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str34, T_TYPE, TF_COMMAND, S_BOOLEAN},
|
||||
{-1}, {-1},
|
||||
{-1},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str36, T_SOURCE, TF_COMMAND},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str37, T_TYPE, TF_COMMAND, S_BOOLEAN},
|
||||
{-1}, {-1}, {-1},
|
||||
{(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str41, T_CHOICE, TF_COMMAND},
|
||||
|
|
|
@ -84,16 +84,17 @@
|
|||
T_SELECT = 277,
|
||||
T_RANGE = 278,
|
||||
T_ON = 279,
|
||||
T_WORD = 280,
|
||||
T_WORD_QUOTE = 281,
|
||||
T_UNEQUAL = 282,
|
||||
T_CLOSE_PAREN = 283,
|
||||
T_OPEN_PAREN = 284,
|
||||
T_EOL = 285,
|
||||
T_OR = 286,
|
||||
T_AND = 287,
|
||||
T_EQUAL = 288,
|
||||
T_NOT = 289
|
||||
T_RESET = 280,
|
||||
T_WORD = 281,
|
||||
T_WORD_QUOTE = 282,
|
||||
T_UNEQUAL = 283,
|
||||
T_CLOSE_PAREN = 284,
|
||||
T_OPEN_PAREN = 285,
|
||||
T_EOL = 286,
|
||||
T_OR = 287,
|
||||
T_AND = 288,
|
||||
T_EQUAL = 289,
|
||||
T_NOT = 290
|
||||
};
|
||||
#endif
|
||||
#define T_MAINMENU 258
|
||||
|
@ -118,16 +119,17 @@
|
|||
#define T_SELECT 277
|
||||
#define T_RANGE 278
|
||||
#define T_ON 279
|
||||
#define T_WORD 280
|
||||
#define T_WORD_QUOTE 281
|
||||
#define T_UNEQUAL 282
|
||||
#define T_CLOSE_PAREN 283
|
||||
#define T_OPEN_PAREN 284
|
||||
#define T_EOL 285
|
||||
#define T_OR 286
|
||||
#define T_AND 287
|
||||
#define T_EQUAL 288
|
||||
#define T_NOT 289
|
||||
#define T_RESET 280
|
||||
#define T_WORD 281
|
||||
#define T_WORD_QUOTE 282
|
||||
#define T_UNEQUAL 283
|
||||
#define T_CLOSE_PAREN 284
|
||||
#define T_OPEN_PAREN 285
|
||||
#define T_EOL 286
|
||||
#define T_OR 287
|
||||
#define T_AND 288
|
||||
#define T_EQUAL 289
|
||||
#define T_NOT 290
|
||||
|
||||
|
||||
|
||||
|
@ -317,20 +319,20 @@ union yyalloc
|
|||
/* YYFINAL -- State number of the termination state. */
|
||||
#define YYFINAL 3
|
||||
/* YYLAST -- Last index in YYTABLE. */
|
||||
#define YYLAST 264
|
||||
#define YYLAST 275
|
||||
|
||||
/* YYNTOKENS -- Number of terminals. */
|
||||
#define YYNTOKENS 35
|
||||
#define YYNTOKENS 36
|
||||
/* YYNNTS -- Number of nonterminals. */
|
||||
#define YYNNTS 42
|
||||
/* YYNRULES -- Number of rules. */
|
||||
#define YYNRULES 104
|
||||
#define YYNRULES 106
|
||||
/* YYNRULES -- Number of states. */
|
||||
#define YYNSTATES 175
|
||||
#define YYNSTATES 178
|
||||
|
||||
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
|
||||
#define YYUNDEFTOK 2
|
||||
#define YYMAXUTOK 289
|
||||
#define YYMAXUTOK 290
|
||||
|
||||
#define YYTRANSLATE(YYX) \
|
||||
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
|
||||
|
@ -366,7 +368,8 @@ static const unsigned char yytranslate[] =
|
|||
2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
|
||||
5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
|
||||
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
|
||||
25, 26, 27, 28, 29, 30, 31, 32, 33, 34
|
||||
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
|
||||
35
|
||||
};
|
||||
|
||||
#if YYDEBUG
|
||||
|
@ -376,68 +379,68 @@ static const unsigned short int yyprhs[] =
|
|||
{
|
||||
0, 0, 3, 5, 6, 9, 12, 15, 20, 23,
|
||||
28, 33, 37, 39, 41, 43, 45, 47, 49, 51,
|
||||
53, 55, 57, 59, 61, 63, 67, 70, 74, 77,
|
||||
81, 84, 85, 88, 91, 94, 97, 100, 104, 109,
|
||||
114, 119, 125, 128, 131, 133, 137, 138, 141, 144,
|
||||
147, 150, 153, 158, 162, 165, 170, 171, 174, 178,
|
||||
180, 184, 185, 188, 191, 194, 198, 201, 203, 207,
|
||||
208, 211, 214, 217, 221, 225, 228, 231, 234, 235,
|
||||
238, 241, 244, 249, 253, 257, 258, 261, 263, 265,
|
||||
268, 271, 274, 276, 279, 280, 283, 285, 289, 293,
|
||||
297, 300, 304, 308, 310
|
||||
53, 55, 57, 59, 61, 63, 65, 69, 72, 76,
|
||||
79, 83, 86, 87, 90, 93, 96, 99, 102, 106,
|
||||
111, 116, 121, 127, 130, 133, 135, 139, 140, 143,
|
||||
146, 149, 152, 155, 160, 164, 167, 170, 175, 176,
|
||||
179, 183, 185, 189, 190, 193, 196, 199, 203, 206,
|
||||
208, 212, 213, 216, 219, 222, 226, 230, 233, 236,
|
||||
239, 240, 243, 246, 249, 254, 258, 262, 263, 266,
|
||||
268, 270, 273, 276, 279, 281, 284, 285, 288, 290,
|
||||
294, 298, 302, 305, 309, 313, 315
|
||||
};
|
||||
|
||||
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
|
||||
static const yysigned_char yyrhs[] =
|
||||
{
|
||||
36, 0, -1, 37, -1, -1, 37, 39, -1, 37,
|
||||
50, -1, 37, 61, -1, 37, 3, 71, 73, -1,
|
||||
37, 72, -1, 37, 25, 1, 30, -1, 37, 38,
|
||||
1, 30, -1, 37, 1, 30, -1, 16, -1, 19,
|
||||
37, 0, -1, 38, -1, -1, 38, 40, -1, 38,
|
||||
51, -1, 38, 62, -1, 38, 3, 72, 74, -1,
|
||||
38, 73, -1, 38, 26, 1, 31, -1, 38, 39,
|
||||
1, 31, -1, 38, 1, 31, -1, 16, -1, 19,
|
||||
-1, 20, -1, 22, -1, 18, -1, 23, -1, 21,
|
||||
-1, 30, -1, 56, -1, 65, -1, 42, -1, 44,
|
||||
-1, 63, -1, 25, 1, 30, -1, 1, 30, -1,
|
||||
10, 25, 30, -1, 41, 45, -1, 11, 25, 30,
|
||||
-1, 43, 45, -1, -1, 45, 46, -1, 45, 69,
|
||||
-1, 45, 67, -1, 45, 40, -1, 45, 30, -1,
|
||||
20, 70, 30, -1, 19, 71, 74, 30, -1, 21,
|
||||
75, 74, 30, -1, 22, 25, 74, 30, -1, 23,
|
||||
76, 76, 74, 30, -1, 7, 30, -1, 47, 51,
|
||||
-1, 72, -1, 48, 53, 49, -1, -1, 51, 52,
|
||||
-1, 51, 69, -1, 51, 67, -1, 51, 30, -1,
|
||||
51, 40, -1, 19, 71, 74, 30, -1, 20, 70,
|
||||
30, -1, 18, 30, -1, 21, 25, 74, 30, -1,
|
||||
-1, 53, 39, -1, 14, 75, 73, -1, 72, -1,
|
||||
54, 57, 55, -1, -1, 57, 39, -1, 57, 61,
|
||||
-1, 57, 50, -1, 4, 71, 30, -1, 58, 68,
|
||||
-1, 72, -1, 59, 62, 60, -1, -1, 62, 39,
|
||||
-1, 62, 61, -1, 62, 50, -1, 6, 71, 30,
|
||||
-1, 9, 71, 30, -1, 64, 68, -1, 12, 30,
|
||||
-1, 66, 13, -1, -1, 68, 69, -1, 68, 30,
|
||||
-1, 68, 40, -1, 16, 24, 75, 30, -1, 16,
|
||||
75, 30, -1, 17, 75, 30, -1, -1, 71, 74,
|
||||
-1, 25, -1, 26, -1, 5, 30, -1, 8, 30,
|
||||
-1, 15, 30, -1, 30, -1, 73, 30, -1, -1,
|
||||
14, 75, -1, 76, -1, 76, 33, 76, -1, 76,
|
||||
27, 76, -1, 29, 75, 28, -1, 34, 75, -1,
|
||||
75, 31, 75, -1, 75, 32, 75, -1, 25, -1,
|
||||
26, -1
|
||||
-1, 25, -1, 31, -1, 57, -1, 66, -1, 43,
|
||||
-1, 45, -1, 64, -1, 26, 1, 31, -1, 1,
|
||||
31, -1, 10, 26, 31, -1, 42, 46, -1, 11,
|
||||
26, 31, -1, 44, 46, -1, -1, 46, 47, -1,
|
||||
46, 70, -1, 46, 68, -1, 46, 41, -1, 46,
|
||||
31, -1, 20, 71, 31, -1, 19, 72, 75, 31,
|
||||
-1, 21, 76, 75, 31, -1, 22, 26, 75, 31,
|
||||
-1, 23, 77, 77, 75, 31, -1, 7, 31, -1,
|
||||
48, 52, -1, 73, -1, 49, 54, 50, -1, -1,
|
||||
52, 53, -1, 52, 70, -1, 52, 68, -1, 52,
|
||||
31, -1, 52, 41, -1, 19, 72, 75, 31, -1,
|
||||
20, 71, 31, -1, 18, 31, -1, 25, 31, -1,
|
||||
21, 26, 75, 31, -1, -1, 54, 40, -1, 14,
|
||||
76, 74, -1, 73, -1, 55, 58, 56, -1, -1,
|
||||
58, 40, -1, 58, 62, -1, 58, 51, -1, 4,
|
||||
72, 31, -1, 59, 69, -1, 73, -1, 60, 63,
|
||||
61, -1, -1, 63, 40, -1, 63, 62, -1, 63,
|
||||
51, -1, 6, 72, 31, -1, 9, 72, 31, -1,
|
||||
65, 69, -1, 12, 31, -1, 67, 13, -1, -1,
|
||||
69, 70, -1, 69, 31, -1, 69, 41, -1, 16,
|
||||
24, 76, 31, -1, 16, 76, 31, -1, 17, 76,
|
||||
31, -1, -1, 72, 75, -1, 26, -1, 27, -1,
|
||||
5, 31, -1, 8, 31, -1, 15, 31, -1, 31,
|
||||
-1, 74, 31, -1, -1, 14, 76, -1, 77, -1,
|
||||
77, 34, 77, -1, 77, 28, 77, -1, 30, 76,
|
||||
29, -1, 35, 76, -1, 76, 32, 76, -1, 76,
|
||||
33, 76, -1, 26, -1, 27, -1
|
||||
};
|
||||
|
||||
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
|
||||
static const unsigned short int yyrline[] =
|
||||
{
|
||||
0, 103, 103, 105, 107, 108, 109, 110, 111, 112,
|
||||
113, 117, 121, 121, 121, 121, 121, 121, 121, 125,
|
||||
126, 127, 128, 129, 130, 134, 135, 141, 149, 155,
|
||||
163, 173, 175, 176, 177, 178, 179, 182, 190, 196,
|
||||
206, 212, 220, 229, 234, 242, 245, 247, 248, 249,
|
||||
250, 251, 254, 260, 271, 277, 287, 289, 294, 302,
|
||||
310, 313, 315, 316, 317, 322, 329, 334, 342, 345,
|
||||
347, 348, 349, 352, 360, 367, 374, 380, 387, 389,
|
||||
390, 391, 394, 399, 404, 412, 414, 419, 420, 423,
|
||||
424, 425, 429, 430, 433, 434, 437, 438, 439, 440,
|
||||
441, 442, 443, 446, 447
|
||||
0, 104, 104, 106, 108, 109, 110, 111, 112, 113,
|
||||
114, 118, 122, 122, 122, 122, 122, 122, 122, 122,
|
||||
126, 127, 128, 129, 130, 131, 135, 136, 142, 150,
|
||||
156, 164, 174, 176, 177, 178, 179, 180, 183, 191,
|
||||
197, 207, 213, 221, 230, 235, 243, 246, 248, 249,
|
||||
250, 251, 252, 255, 261, 272, 278, 283, 293, 295,
|
||||
300, 308, 316, 319, 321, 322, 323, 328, 335, 340,
|
||||
348, 351, 353, 354, 355, 358, 366, 373, 380, 386,
|
||||
393, 395, 396, 397, 400, 405, 410, 418, 420, 425,
|
||||
426, 429, 430, 431, 435, 436, 439, 440, 443, 444,
|
||||
445, 446, 447, 448, 449, 452, 453
|
||||
};
|
||||
#endif
|
||||
|
||||
|
@ -450,10 +453,10 @@ static const char *const yytname[] =
|
|||
"T_SOURCE", "T_CHOICE", "T_ENDCHOICE", "T_COMMENT", "T_CONFIG",
|
||||
"T_MENUCONFIG", "T_HELP", "T_HELPTEXT", "T_IF", "T_ENDIF", "T_DEPENDS",
|
||||
"T_REQUIRES", "T_OPTIONAL", "T_PROMPT", "T_TYPE", "T_DEFAULT",
|
||||
"T_SELECT", "T_RANGE", "T_ON", "T_WORD", "T_WORD_QUOTE", "T_UNEQUAL",
|
||||
"T_CLOSE_PAREN", "T_OPEN_PAREN", "T_EOL", "T_OR", "T_AND", "T_EQUAL",
|
||||
"T_NOT", "$accept", "input", "stmt_list", "option_name", "common_stmt",
|
||||
"option_error", "config_entry_start", "config_stmt",
|
||||
"T_SELECT", "T_RANGE", "T_ON", "T_RESET", "T_WORD", "T_WORD_QUOTE",
|
||||
"T_UNEQUAL", "T_CLOSE_PAREN", "T_OPEN_PAREN", "T_EOL", "T_OR", "T_AND",
|
||||
"T_EQUAL", "T_NOT", "$accept", "input", "stmt_list", "option_name",
|
||||
"common_stmt", "option_error", "config_entry_start", "config_stmt",
|
||||
"menuconfig_entry_start", "menuconfig_stmt", "config_option_list",
|
||||
"config_option", "choice", "choice_entry", "choice_end", "choice_stmt",
|
||||
"choice_option_list", "choice_option", "choice_block", "if_entry",
|
||||
|
@ -472,24 +475,24 @@ static const unsigned short int yytoknum[] =
|
|||
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
|
||||
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
|
||||
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
|
||||
285, 286, 287, 288, 289
|
||||
285, 286, 287, 288, 289, 290
|
||||
};
|
||||
# endif
|
||||
|
||||
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
|
||||
static const unsigned char yyr1[] =
|
||||
{
|
||||
0, 35, 36, 37, 37, 37, 37, 37, 37, 37,
|
||||
37, 37, 38, 38, 38, 38, 38, 38, 38, 39,
|
||||
39, 39, 39, 39, 39, 40, 40, 41, 42, 43,
|
||||
44, 45, 45, 45, 45, 45, 45, 46, 46, 46,
|
||||
46, 46, 47, 48, 49, 50, 51, 51, 51, 51,
|
||||
51, 51, 52, 52, 52, 52, 53, 53, 54, 55,
|
||||
56, 57, 57, 57, 57, 58, 59, 60, 61, 62,
|
||||
62, 62, 62, 63, 64, 65, 66, 67, 68, 68,
|
||||
68, 68, 69, 69, 69, 70, 70, 71, 71, 72,
|
||||
72, 72, 73, 73, 74, 74, 75, 75, 75, 75,
|
||||
75, 75, 75, 76, 76
|
||||
0, 36, 37, 38, 38, 38, 38, 38, 38, 38,
|
||||
38, 38, 39, 39, 39, 39, 39, 39, 39, 39,
|
||||
40, 40, 40, 40, 40, 40, 41, 41, 42, 43,
|
||||
44, 45, 46, 46, 46, 46, 46, 46, 47, 47,
|
||||
47, 47, 47, 48, 49, 50, 51, 52, 52, 52,
|
||||
52, 52, 52, 53, 53, 53, 53, 53, 54, 54,
|
||||
55, 56, 57, 58, 58, 58, 58, 59, 60, 61,
|
||||
62, 63, 63, 63, 63, 64, 65, 66, 67, 68,
|
||||
69, 69, 69, 69, 70, 70, 70, 71, 71, 72,
|
||||
72, 73, 73, 73, 74, 74, 75, 75, 76, 76,
|
||||
76, 76, 76, 76, 76, 77, 77
|
||||
};
|
||||
|
||||
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
|
||||
|
@ -497,15 +500,15 @@ static const unsigned char yyr2[] =
|
|||
{
|
||||
0, 2, 1, 0, 2, 2, 2, 4, 2, 4,
|
||||
4, 3, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 3, 2, 3, 2, 3,
|
||||
2, 0, 2, 2, 2, 2, 2, 3, 4, 4,
|
||||
4, 5, 2, 2, 1, 3, 0, 2, 2, 2,
|
||||
2, 2, 4, 3, 2, 4, 0, 2, 3, 1,
|
||||
3, 0, 2, 2, 2, 3, 2, 1, 3, 0,
|
||||
2, 2, 2, 3, 3, 2, 2, 2, 0, 2,
|
||||
2, 2, 4, 3, 3, 0, 2, 1, 1, 2,
|
||||
2, 2, 1, 2, 0, 2, 1, 3, 3, 3,
|
||||
2, 3, 3, 1, 1
|
||||
1, 1, 1, 1, 1, 1, 3, 2, 3, 2,
|
||||
3, 2, 0, 2, 2, 2, 2, 2, 3, 4,
|
||||
4, 4, 5, 2, 2, 1, 3, 0, 2, 2,
|
||||
2, 2, 2, 4, 3, 2, 2, 4, 0, 2,
|
||||
3, 1, 3, 0, 2, 2, 2, 3, 2, 1,
|
||||
3, 0, 2, 2, 2, 3, 3, 2, 2, 2,
|
||||
0, 2, 2, 2, 4, 3, 3, 0, 2, 1,
|
||||
1, 2, 2, 2, 1, 2, 0, 2, 1, 3,
|
||||
3, 3, 2, 3, 3, 1, 1
|
||||
};
|
||||
|
||||
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
|
||||
|
@ -515,158 +518,160 @@ static const unsigned char yydefact[] =
|
|||
{
|
||||
3, 0, 0, 1, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 12, 16, 13, 14,
|
||||
18, 15, 17, 0, 19, 0, 4, 31, 22, 31,
|
||||
23, 46, 56, 5, 61, 20, 78, 69, 6, 24,
|
||||
78, 21, 8, 11, 87, 88, 0, 0, 89, 0,
|
||||
42, 90, 0, 0, 0, 103, 104, 0, 0, 0,
|
||||
96, 91, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 92, 7, 65, 73, 74, 27, 29, 0,
|
||||
100, 0, 0, 58, 0, 0, 9, 10, 0, 0,
|
||||
0, 0, 0, 85, 0, 0, 0, 0, 36, 35,
|
||||
32, 0, 34, 33, 0, 0, 85, 0, 50, 51,
|
||||
47, 49, 48, 57, 45, 44, 62, 64, 60, 63,
|
||||
59, 80, 81, 79, 70, 72, 68, 71, 67, 93,
|
||||
99, 101, 102, 98, 97, 26, 76, 0, 0, 0,
|
||||
94, 0, 94, 94, 94, 0, 0, 77, 54, 94,
|
||||
0, 94, 0, 83, 84, 0, 0, 37, 86, 0,
|
||||
0, 94, 25, 0, 53, 0, 82, 95, 38, 39,
|
||||
40, 0, 52, 55, 41
|
||||
18, 15, 17, 19, 0, 20, 0, 4, 32, 23,
|
||||
32, 24, 47, 58, 5, 63, 21, 80, 71, 6,
|
||||
25, 80, 22, 8, 11, 89, 90, 0, 0, 91,
|
||||
0, 43, 92, 0, 0, 0, 105, 106, 0, 0,
|
||||
0, 98, 93, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 94, 7, 67, 75, 76, 28, 30,
|
||||
0, 102, 0, 0, 60, 0, 0, 9, 10, 0,
|
||||
0, 0, 0, 0, 87, 0, 0, 0, 0, 37,
|
||||
36, 33, 0, 35, 34, 0, 0, 87, 0, 0,
|
||||
51, 52, 48, 50, 49, 59, 46, 45, 64, 66,
|
||||
62, 65, 61, 82, 83, 81, 72, 74, 70, 73,
|
||||
69, 95, 101, 103, 104, 100, 99, 27, 78, 0,
|
||||
0, 0, 96, 0, 96, 96, 96, 0, 0, 79,
|
||||
55, 96, 0, 96, 56, 0, 85, 86, 0, 0,
|
||||
38, 88, 0, 0, 96, 26, 0, 54, 0, 84,
|
||||
97, 39, 40, 41, 0, 53, 57, 42
|
||||
};
|
||||
|
||||
/* YYDEFGOTO[NTERM-NUM]. */
|
||||
static const short int yydefgoto[] =
|
||||
{
|
||||
-1, 1, 2, 25, 26, 99, 27, 28, 29, 30,
|
||||
64, 100, 31, 32, 114, 33, 66, 110, 67, 34,
|
||||
118, 35, 68, 36, 37, 126, 38, 70, 39, 40,
|
||||
41, 101, 102, 69, 103, 141, 142, 42, 73, 156,
|
||||
59, 60
|
||||
-1, 1, 2, 26, 27, 100, 28, 29, 30, 31,
|
||||
65, 101, 32, 33, 116, 34, 67, 112, 68, 35,
|
||||
120, 36, 69, 37, 38, 128, 39, 71, 40, 41,
|
||||
42, 102, 103, 70, 104, 143, 144, 43, 74, 159,
|
||||
60, 61
|
||||
};
|
||||
|
||||
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
|
||||
STATE-NUM. */
|
||||
#define YYPACT_NINF -78
|
||||
#define YYPACT_NINF -134
|
||||
static const short int yypact[] =
|
||||
{
|
||||
-78, 2, 159, -78, -21, 0, 0, -12, 0, 1,
|
||||
4, 0, 27, 38, 60, 58, -78, -78, -78, -78,
|
||||
-78, -78, -78, 100, -78, 104, -78, -78, -78, -78,
|
||||
-78, -78, -78, -78, -78, -78, -78, -78, -78, -78,
|
||||
-78, -78, -78, -78, -78, -78, 86, 113, -78, 114,
|
||||
-78, -78, 125, 127, 128, -78, -78, 60, 60, 210,
|
||||
65, -78, 141, 142, 39, 103, 182, 200, 6, 66,
|
||||
6, 131, -78, 146, -78, -78, -78, -78, -78, 196,
|
||||
-78, 60, 60, 146, 40, 40, -78, -78, 155, 156,
|
||||
-2, 60, 0, 0, 60, 105, 40, 194, -78, -78,
|
||||
-78, 206, -78, -78, 183, 0, 0, 195, -78, -78,
|
||||
-78, -78, -78, -78, -78, -78, -78, -78, -78, -78,
|
||||
-78, -78, -78, -78, -78, -78, -78, -78, -78, -78,
|
||||
-78, 197, -78, -78, -78, -78, -78, 60, 213, 216,
|
||||
212, 203, 212, 190, 212, 40, 208, -78, -78, 212,
|
||||
222, 212, 219, -78, -78, 60, 223, -78, -78, 224,
|
||||
225, 212, -78, 226, -78, 227, -78, 47, -78, -78,
|
||||
-78, 228, -78, -78, -78
|
||||
-134, 2, 160, -134, -21, -10, -10, -8, -10, -1,
|
||||
21, -10, 64, 68, 212, 84, -134, -134, -134, -134,
|
||||
-134, -134, -134, -134, 125, -134, 128, -134, -134, -134,
|
||||
-134, -134, -134, -134, -134, -134, -134, -134, -134, -134,
|
||||
-134, -134, -134, -134, -134, -134, -134, 99, 112, -134,
|
||||
113, -134, -134, 124, 127, 141, -134, -134, 212, 212,
|
||||
3, -19, -134, 142, 153, 39, 102, 187, 226, 215,
|
||||
67, 215, 131, -134, 159, -134, -134, -134, -134, -134,
|
||||
34, -134, 212, 212, 159, 53, 53, -134, -134, 163,
|
||||
169, 65, 212, -10, -10, 212, 133, 53, 176, -134,
|
||||
-134, -134, 203, -134, -134, 196, -10, -10, 202, 213,
|
||||
-134, -134, -134, -134, -134, -134, -134, -134, -134, -134,
|
||||
-134, -134, -134, -134, -134, -134, -134, -134, -134, -134,
|
||||
-134, -134, -134, 200, -134, -134, -134, -134, -134, 212,
|
||||
178, 217, 240, 224, 240, 0, 240, 53, 225, -134,
|
||||
-134, 240, 227, 240, -134, 220, -134, -134, 212, 228,
|
||||
-134, -134, 229, 230, 240, -134, 231, -134, 232, -134,
|
||||
54, -134, -134, -134, 233, -134, -134, -134
|
||||
};
|
||||
|
||||
/* YYPGOTO[NTERM-NUM]. */
|
||||
static const short int yypgoto[] =
|
||||
{
|
||||
-78, -78, -78, -78, 164, -36, -78, -78, -78, -78,
|
||||
230, -78, -78, -78, -78, 29, -78, -78, -78, -78,
|
||||
-78, -78, -78, -78, -78, -78, 59, -78, -78, -78,
|
||||
-78, -78, 198, 220, 24, 157, -5, 169, 202, 74,
|
||||
-53, -77
|
||||
-134, -134, -134, -134, 28, -46, -134, -134, -134, -134,
|
||||
235, -134, -134, -134, -134, 118, -134, -134, -134, -134,
|
||||
-134, -134, -134, -134, -134, -134, 174, -134, -134, -134,
|
||||
-134, -134, 199, 234, -45, 161, -5, 146, 207, -133,
|
||||
-54, -78
|
||||
};
|
||||
|
||||
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
|
||||
positive, shift that token. If negative, reduce the rule which
|
||||
number is the opposite. If zero, do what YYDEFACT says.
|
||||
If YYTABLE_NINF, syntax error. */
|
||||
#define YYTABLE_NINF -76
|
||||
#define YYTABLE_NINF -78
|
||||
static const short int yytable[] =
|
||||
{
|
||||
46, 47, 3, 49, 79, 80, 52, 133, 134, 43,
|
||||
6, 7, 8, 9, 10, 11, 12, 13, 48, 145,
|
||||
14, 15, 137, 55, 56, 44, 45, 57, 131, 132,
|
||||
109, 50, 58, 122, 51, 122, 24, 138, 139, -28,
|
||||
88, 143, -28, -28, -28, -28, -28, -28, -28, -28,
|
||||
-28, 89, 53, -28, -28, 90, 91, -28, 92, 93,
|
||||
94, 95, 96, 54, 97, 55, 56, 88, 161, 98,
|
||||
-66, -66, -66, -66, -66, -66, -66, -66, 81, 82,
|
||||
-66, -66, 90, 91, 152, 55, 56, 140, 61, 57,
|
||||
112, 97, 84, 123, 58, 123, 121, 117, 85, 125,
|
||||
149, 62, 167, -30, 88, 63, -30, -30, -30, -30,
|
||||
-30, -30, -30, -30, -30, 89, 72, -30, -30, 90,
|
||||
91, -30, 92, 93, 94, 95, 96, 119, 97, 127,
|
||||
144, -75, 88, 98, -75, -75, -75, -75, -75, -75,
|
||||
-75, -75, -75, 74, 75, -75, -75, 90, 91, -75,
|
||||
-75, -75, -75, -75, -75, 76, 97, 77, 78, -2,
|
||||
4, 121, 5, 6, 7, 8, 9, 10, 11, 12,
|
||||
13, 86, 87, 14, 15, 16, 129, 17, 18, 19,
|
||||
20, 21, 22, 88, 23, 135, 136, -43, -43, 24,
|
||||
-43, -43, -43, -43, 89, 146, -43, -43, 90, 91,
|
||||
104, 105, 106, 107, 155, 7, 8, 97, 10, 11,
|
||||
12, 13, 108, 148, 14, 15, 158, 159, 160, 147,
|
||||
151, 81, 82, 163, 130, 165, 155, 81, 82, 82,
|
||||
24, 113, 116, 157, 124, 171, 115, 120, 162, 128,
|
||||
72, 81, 82, 153, 81, 82, 154, 81, 82, 166,
|
||||
81, 82, 164, 168, 169, 170, 172, 173, 174, 65,
|
||||
71, 83, 0, 150, 111
|
||||
47, 48, 3, 50, 80, 81, 53, 135, 136, 85,
|
||||
44, 161, 162, 163, 158, 86, 45, 46, 166, 147,
|
||||
168, 111, 114, 49, 124, 125, 124, 125, 133, 134,
|
||||
51, 174, 82, 83, 73, 82, 83, 140, 141, -29,
|
||||
89, 145, -29, -29, -29, -29, -29, -29, -29, -29,
|
||||
-29, 90, 52, -29, -29, 91, 92, -29, 93, 94,
|
||||
95, 96, 97, 132, -29, 98, 82, 83, 89, 164,
|
||||
99, -68, -68, -68, -68, -68, -68, -68, -68, 56,
|
||||
57, -68, -68, 91, 92, 155, 82, 83, 142, 139,
|
||||
54, 56, 57, 98, 55, 58, 115, 118, 123, 126,
|
||||
59, 151, -31, 89, 170, -31, -31, -31, -31, -31,
|
||||
-31, -31, -31, -31, 90, 62, -31, -31, 91, 92,
|
||||
-31, 93, 94, 95, 96, 97, 63, -31, 98, 64,
|
||||
73, -77, 89, 99, -77, -77, -77, -77, -77, -77,
|
||||
-77, -77, -77, 75, 76, -77, -77, 91, 92, -77,
|
||||
-77, -77, -77, -77, -77, 77, -77, 98, 78, 146,
|
||||
-2, 4, 123, 5, 6, 7, 8, 9, 10, 11,
|
||||
12, 13, 79, 87, 14, 15, 16, 148, 17, 18,
|
||||
19, 20, 21, 22, 88, 23, 24, 119, 89, 127,
|
||||
131, 25, -44, -44, 137, -44, -44, -44, -44, 90,
|
||||
138, -44, -44, 91, 92, 105, 106, 107, 108, 156,
|
||||
82, 83, 109, 98, 117, 122, 149, 130, 110, 6,
|
||||
7, 8, 9, 10, 11, 12, 13, 150, 153, 14,
|
||||
15, 7, 8, 83, 10, 11, 12, 13, 56, 57,
|
||||
14, 15, 58, 121, 154, 129, 25, 59, 157, 82,
|
||||
83, 169, 82, 83, 158, 160, 165, 25, 167, 171,
|
||||
172, 173, 175, 176, 177, 66, 113, 84, 152, 0,
|
||||
0, 0, 0, 0, 0, 72
|
||||
};
|
||||
|
||||
static const short int yycheck[] =
|
||||
{
|
||||
5, 6, 0, 8, 57, 58, 11, 84, 85, 30,
|
||||
4, 5, 6, 7, 8, 9, 10, 11, 30, 96,
|
||||
14, 15, 24, 25, 26, 25, 26, 29, 81, 82,
|
||||
66, 30, 34, 69, 30, 71, 30, 90, 91, 0,
|
||||
1, 94, 3, 4, 5, 6, 7, 8, 9, 10,
|
||||
11, 12, 25, 14, 15, 16, 17, 18, 19, 20,
|
||||
21, 22, 23, 25, 25, 25, 26, 1, 145, 30,
|
||||
4, 5, 6, 7, 8, 9, 10, 11, 31, 32,
|
||||
14, 15, 16, 17, 137, 25, 26, 92, 30, 29,
|
||||
66, 25, 27, 69, 34, 71, 30, 68, 33, 70,
|
||||
105, 1, 155, 0, 1, 1, 3, 4, 5, 6,
|
||||
7, 8, 9, 10, 11, 12, 30, 14, 15, 16,
|
||||
17, 18, 19, 20, 21, 22, 23, 68, 25, 70,
|
||||
25, 0, 1, 30, 3, 4, 5, 6, 7, 8,
|
||||
9, 10, 11, 30, 30, 14, 15, 16, 17, 18,
|
||||
19, 20, 21, 22, 23, 30, 25, 30, 30, 0,
|
||||
1, 30, 3, 4, 5, 6, 7, 8, 9, 10,
|
||||
11, 30, 30, 14, 15, 16, 30, 18, 19, 20,
|
||||
21, 22, 23, 1, 25, 30, 30, 5, 6, 30,
|
||||
8, 9, 10, 11, 12, 1, 14, 15, 16, 17,
|
||||
18, 19, 20, 21, 14, 5, 6, 25, 8, 9,
|
||||
10, 11, 30, 30, 14, 15, 142, 143, 144, 13,
|
||||
25, 31, 32, 149, 28, 151, 14, 31, 32, 32,
|
||||
30, 67, 68, 30, 70, 161, 67, 68, 30, 70,
|
||||
30, 31, 32, 30, 31, 32, 30, 31, 32, 30,
|
||||
31, 32, 30, 30, 30, 30, 30, 30, 30, 29,
|
||||
40, 59, -1, 106, 66
|
||||
5, 6, 0, 8, 58, 59, 11, 85, 86, 28,
|
||||
31, 144, 145, 146, 14, 34, 26, 27, 151, 97,
|
||||
153, 67, 67, 31, 70, 70, 72, 72, 82, 83,
|
||||
31, 164, 32, 33, 31, 32, 33, 91, 92, 0,
|
||||
1, 95, 3, 4, 5, 6, 7, 8, 9, 10,
|
||||
11, 12, 31, 14, 15, 16, 17, 18, 19, 20,
|
||||
21, 22, 23, 29, 25, 26, 32, 33, 1, 147,
|
||||
31, 4, 5, 6, 7, 8, 9, 10, 11, 26,
|
||||
27, 14, 15, 16, 17, 139, 32, 33, 93, 24,
|
||||
26, 26, 27, 26, 26, 30, 68, 69, 31, 71,
|
||||
35, 106, 0, 1, 158, 3, 4, 5, 6, 7,
|
||||
8, 9, 10, 11, 12, 31, 14, 15, 16, 17,
|
||||
18, 19, 20, 21, 22, 23, 1, 25, 26, 1,
|
||||
31, 0, 1, 31, 3, 4, 5, 6, 7, 8,
|
||||
9, 10, 11, 31, 31, 14, 15, 16, 17, 18,
|
||||
19, 20, 21, 22, 23, 31, 25, 26, 31, 26,
|
||||
0, 1, 31, 3, 4, 5, 6, 7, 8, 9,
|
||||
10, 11, 31, 31, 14, 15, 16, 1, 18, 19,
|
||||
20, 21, 22, 23, 31, 25, 26, 69, 1, 71,
|
||||
31, 31, 5, 6, 31, 8, 9, 10, 11, 12,
|
||||
31, 14, 15, 16, 17, 18, 19, 20, 21, 31,
|
||||
32, 33, 25, 26, 68, 69, 13, 71, 31, 4,
|
||||
5, 6, 7, 8, 9, 10, 11, 31, 26, 14,
|
||||
15, 5, 6, 33, 8, 9, 10, 11, 26, 27,
|
||||
14, 15, 30, 69, 31, 71, 31, 35, 31, 32,
|
||||
33, 31, 32, 33, 14, 31, 31, 31, 31, 31,
|
||||
31, 31, 31, 31, 31, 30, 67, 60, 107, -1,
|
||||
-1, -1, -1, -1, -1, 41
|
||||
};
|
||||
|
||||
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
|
||||
symbol of state STATE-NUM. */
|
||||
static const unsigned char yystos[] =
|
||||
{
|
||||
0, 36, 37, 0, 1, 3, 4, 5, 6, 7,
|
||||
0, 37, 38, 0, 1, 3, 4, 5, 6, 7,
|
||||
8, 9, 10, 11, 14, 15, 16, 18, 19, 20,
|
||||
21, 22, 23, 25, 30, 38, 39, 41, 42, 43,
|
||||
44, 47, 48, 50, 54, 56, 58, 59, 61, 63,
|
||||
64, 65, 72, 30, 25, 26, 71, 71, 30, 71,
|
||||
30, 30, 71, 25, 25, 25, 26, 29, 34, 75,
|
||||
76, 30, 1, 1, 45, 45, 51, 53, 57, 68,
|
||||
62, 68, 30, 73, 30, 30, 30, 30, 30, 75,
|
||||
75, 31, 32, 73, 27, 33, 30, 30, 1, 12,
|
||||
16, 17, 19, 20, 21, 22, 23, 25, 30, 40,
|
||||
46, 66, 67, 69, 18, 19, 20, 21, 30, 40,
|
||||
52, 67, 69, 39, 49, 72, 39, 50, 55, 61,
|
||||
72, 30, 40, 69, 39, 50, 60, 61, 72, 30,
|
||||
28, 75, 75, 76, 76, 30, 30, 24, 75, 75,
|
||||
71, 70, 71, 75, 25, 76, 1, 13, 30, 71,
|
||||
70, 25, 75, 30, 30, 14, 74, 30, 74, 74,
|
||||
74, 76, 30, 74, 30, 74, 30, 75, 30, 30,
|
||||
30, 74, 30, 30, 30
|
||||
21, 22, 23, 25, 26, 31, 39, 40, 42, 43,
|
||||
44, 45, 48, 49, 51, 55, 57, 59, 60, 62,
|
||||
64, 65, 66, 73, 31, 26, 27, 72, 72, 31,
|
||||
72, 31, 31, 72, 26, 26, 26, 27, 30, 35,
|
||||
76, 77, 31, 1, 1, 46, 46, 52, 54, 58,
|
||||
69, 63, 69, 31, 74, 31, 31, 31, 31, 31,
|
||||
76, 76, 32, 33, 74, 28, 34, 31, 31, 1,
|
||||
12, 16, 17, 19, 20, 21, 22, 23, 26, 31,
|
||||
41, 47, 67, 68, 70, 18, 19, 20, 21, 25,
|
||||
31, 41, 53, 68, 70, 40, 50, 73, 40, 51,
|
||||
56, 62, 73, 31, 41, 70, 40, 51, 61, 62,
|
||||
73, 31, 29, 76, 76, 77, 77, 31, 31, 24,
|
||||
76, 76, 72, 71, 72, 76, 26, 77, 1, 13,
|
||||
31, 72, 71, 26, 31, 76, 31, 31, 14, 75,
|
||||
31, 75, 75, 75, 77, 31, 75, 31, 75, 31,
|
||||
76, 31, 31, 31, 75, 31, 31, 31
|
||||
};
|
||||
|
||||
#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
|
||||
|
@ -976,7 +981,7 @@ yydestruct (yytype, yyvaluep)
|
|||
|
||||
switch (yytype)
|
||||
{
|
||||
case 48: /* choice_entry */
|
||||
case 49: /* choice_entry */
|
||||
|
||||
{
|
||||
fprintf(stderr, "%s:%d: missing end statement for this entry\n",
|
||||
|
@ -986,7 +991,7 @@ yydestruct (yytype, yyvaluep)
|
|||
};
|
||||
|
||||
break;
|
||||
case 54: /* if_entry */
|
||||
case 55: /* if_entry */
|
||||
|
||||
{
|
||||
fprintf(stderr, "%s:%d: missing end statement for this entry\n",
|
||||
|
@ -996,7 +1001,7 @@ yydestruct (yytype, yyvaluep)
|
|||
};
|
||||
|
||||
break;
|
||||
case 59: /* menu_entry */
|
||||
case 60: /* menu_entry */
|
||||
|
||||
{
|
||||
fprintf(stderr, "%s:%d: missing end statement for this entry\n",
|
||||
|
@ -1329,17 +1334,17 @@ yyreduce:
|
|||
{ zconf_error("invalid statement"); ;}
|
||||
break;
|
||||
|
||||
case 25:
|
||||
case 26:
|
||||
|
||||
{ zconf_error("unknown option \"%s\"", yyvsp[-2].string); ;}
|
||||
break;
|
||||
|
||||
case 26:
|
||||
case 27:
|
||||
|
||||
{ zconf_error("invalid option"); ;}
|
||||
break;
|
||||
|
||||
case 27:
|
||||
case 28:
|
||||
|
||||
{
|
||||
struct symbol *sym = sym_lookup(yyvsp[-1].string, 0);
|
||||
|
@ -1349,7 +1354,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 28:
|
||||
case 29:
|
||||
|
||||
{
|
||||
menu_end_entry();
|
||||
|
@ -1357,7 +1362,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 29:
|
||||
case 30:
|
||||
|
||||
{
|
||||
struct symbol *sym = sym_lookup(yyvsp[-1].string, 0);
|
||||
|
@ -1367,7 +1372,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 30:
|
||||
case 31:
|
||||
|
||||
{
|
||||
if (current_entry->prompt)
|
||||
|
@ -1379,7 +1384,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 37:
|
||||
case 38:
|
||||
|
||||
{
|
||||
menu_set_type(yyvsp[-2].id->stype);
|
||||
|
@ -1389,7 +1394,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 38:
|
||||
case 39:
|
||||
|
||||
{
|
||||
menu_add_prompt(P_PROMPT, yyvsp[-2].string, yyvsp[-1].expr);
|
||||
|
@ -1397,7 +1402,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 39:
|
||||
case 40:
|
||||
|
||||
{
|
||||
menu_add_expr(P_DEFAULT, yyvsp[-2].expr, yyvsp[-1].expr);
|
||||
|
@ -1409,7 +1414,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 40:
|
||||
case 41:
|
||||
|
||||
{
|
||||
menu_add_symbol(P_SELECT, sym_lookup(yyvsp[-2].string, 0), yyvsp[-1].expr);
|
||||
|
@ -1417,7 +1422,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 41:
|
||||
case 42:
|
||||
|
||||
{
|
||||
menu_add_expr(P_RANGE, expr_alloc_comp(E_RANGE,yyvsp[-3].symbol, yyvsp[-2].symbol), yyvsp[-1].expr);
|
||||
|
@ -1425,7 +1430,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 42:
|
||||
case 43:
|
||||
|
||||
{
|
||||
struct symbol *sym = sym_lookup(NULL, 0);
|
||||
|
@ -1436,14 +1441,14 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 43:
|
||||
case 44:
|
||||
|
||||
{
|
||||
yyval.menu = menu_add_menu();
|
||||
;}
|
||||
break;
|
||||
|
||||
case 44:
|
||||
case 45:
|
||||
|
||||
{
|
||||
if (zconf_endtoken(yyvsp[0].id, T_CHOICE, T_ENDCHOICE)) {
|
||||
|
@ -1453,7 +1458,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 52:
|
||||
case 53:
|
||||
|
||||
{
|
||||
menu_add_prompt(P_PROMPT, yyvsp[-2].string, yyvsp[-1].expr);
|
||||
|
@ -1461,7 +1466,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 53:
|
||||
case 54:
|
||||
|
||||
{
|
||||
if (yyvsp[-2].id->stype == S_BOOLEAN || yyvsp[-2].id->stype == S_TRISTATE) {
|
||||
|
@ -1474,7 +1479,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 54:
|
||||
case 55:
|
||||
|
||||
{
|
||||
current_entry->sym->flags |= SYMBOL_OPTIONAL;
|
||||
|
@ -1482,7 +1487,14 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 55:
|
||||
case 56:
|
||||
|
||||
{
|
||||
current_entry->sym->flags |= SYMBOL_RESET;
|
||||
;}
|
||||
break;
|
||||
|
||||
case 57:
|
||||
|
||||
{
|
||||
if (yyvsp[-3].id->stype == S_UNKNOWN) {
|
||||
|
@ -1494,7 +1506,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 58:
|
||||
case 60:
|
||||
|
||||
{
|
||||
printd(DEBUG_PARSE, "%s:%d:if\n", zconf_curname(), zconf_lineno());
|
||||
|
@ -1504,7 +1516,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 59:
|
||||
case 61:
|
||||
|
||||
{
|
||||
if (zconf_endtoken(yyvsp[0].id, T_IF, T_ENDIF)) {
|
||||
|
@ -1514,7 +1526,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 65:
|
||||
case 67:
|
||||
|
||||
{
|
||||
menu_add_entry(NULL);
|
||||
|
@ -1523,14 +1535,14 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 66:
|
||||
case 68:
|
||||
|
||||
{
|
||||
yyval.menu = menu_add_menu();
|
||||
;}
|
||||
break;
|
||||
|
||||
case 67:
|
||||
case 69:
|
||||
|
||||
{
|
||||
if (zconf_endtoken(yyvsp[0].id, T_MENU, T_ENDMENU)) {
|
||||
|
@ -1540,7 +1552,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 73:
|
||||
case 75:
|
||||
|
||||
{
|
||||
printd(DEBUG_PARSE, "%s:%d:source %s\n", zconf_curname(), zconf_lineno(), yyvsp[-1].string);
|
||||
|
@ -1548,7 +1560,7 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 74:
|
||||
case 76:
|
||||
|
||||
{
|
||||
menu_add_entry(NULL);
|
||||
|
@ -1557,14 +1569,14 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 75:
|
||||
case 77:
|
||||
|
||||
{
|
||||
menu_end_entry();
|
||||
;}
|
||||
break;
|
||||
|
||||
case 76:
|
||||
case 78:
|
||||
|
||||
{
|
||||
printd(DEBUG_PARSE, "%s:%d:help\n", zconf_curname(), zconf_lineno());
|
||||
|
@ -1572,52 +1584,42 @@ yyreduce:
|
|||
;}
|
||||
break;
|
||||
|
||||
case 77:
|
||||
case 79:
|
||||
|
||||
{
|
||||
current_entry->sym->help = yyvsp[0].string;
|
||||
;}
|
||||
break;
|
||||
|
||||
case 82:
|
||||
|
||||
{
|
||||
menu_add_dep(yyvsp[-1].expr);
|
||||
printd(DEBUG_PARSE, "%s:%d:depends on\n", zconf_curname(), zconf_lineno());
|
||||
;}
|
||||
break;
|
||||
|
||||
case 83:
|
||||
|
||||
{
|
||||
menu_add_dep(yyvsp[-1].expr);
|
||||
printd(DEBUG_PARSE, "%s:%d:depends\n", zconf_curname(), zconf_lineno());
|
||||
;}
|
||||
break;
|
||||
|
||||
case 84:
|
||||
|
||||
{
|
||||
menu_add_dep(yyvsp[-1].expr);
|
||||
printd(DEBUG_PARSE, "%s:%d:requires\n", zconf_curname(), zconf_lineno());
|
||||
printd(DEBUG_PARSE, "%s:%d:depends on\n", zconf_curname(), zconf_lineno());
|
||||
;}
|
||||
break;
|
||||
|
||||
case 85:
|
||||
|
||||
{
|
||||
menu_add_dep(yyvsp[-1].expr);
|
||||
printd(DEBUG_PARSE, "%s:%d:depends\n", zconf_curname(), zconf_lineno());
|
||||
;}
|
||||
break;
|
||||
|
||||
case 86:
|
||||
|
||||
{
|
||||
menu_add_prompt(P_PROMPT, yyvsp[-1].string, yyvsp[0].expr);
|
||||
menu_add_dep(yyvsp[-1].expr);
|
||||
printd(DEBUG_PARSE, "%s:%d:requires\n", zconf_curname(), zconf_lineno());
|
||||
;}
|
||||
break;
|
||||
|
||||
case 89:
|
||||
case 88:
|
||||
|
||||
{ yyval.id = yyvsp[-1].id; ;}
|
||||
break;
|
||||
|
||||
case 90:
|
||||
|
||||
{ yyval.id = yyvsp[-1].id; ;}
|
||||
{
|
||||
menu_add_prompt(P_PROMPT, yyvsp[-1].string, yyvsp[0].expr);
|
||||
;}
|
||||
break;
|
||||
|
||||
case 91:
|
||||
|
@ -1625,58 +1627,68 @@ yyreduce:
|
|||
{ yyval.id = yyvsp[-1].id; ;}
|
||||
break;
|
||||
|
||||
case 94:
|
||||
case 92:
|
||||
|
||||
{ yyval.expr = NULL; ;}
|
||||
{ yyval.id = yyvsp[-1].id; ;}
|
||||
break;
|
||||
|
||||
case 95:
|
||||
case 93:
|
||||
|
||||
{ yyval.expr = yyvsp[0].expr; ;}
|
||||
{ yyval.id = yyvsp[-1].id; ;}
|
||||
break;
|
||||
|
||||
case 96:
|
||||
|
||||
{ yyval.expr = expr_alloc_symbol(yyvsp[0].symbol); ;}
|
||||
{ yyval.expr = NULL; ;}
|
||||
break;
|
||||
|
||||
case 97:
|
||||
|
||||
{ yyval.expr = expr_alloc_comp(E_EQUAL, yyvsp[-2].symbol, yyvsp[0].symbol); ;}
|
||||
{ yyval.expr = yyvsp[0].expr; ;}
|
||||
break;
|
||||
|
||||
case 98:
|
||||
|
||||
{ yyval.expr = expr_alloc_comp(E_UNEQUAL, yyvsp[-2].symbol, yyvsp[0].symbol); ;}
|
||||
{ yyval.expr = expr_alloc_symbol(yyvsp[0].symbol); ;}
|
||||
break;
|
||||
|
||||
case 99:
|
||||
|
||||
{ yyval.expr = yyvsp[-1].expr; ;}
|
||||
{ yyval.expr = expr_alloc_comp(E_EQUAL, yyvsp[-2].symbol, yyvsp[0].symbol); ;}
|
||||
break;
|
||||
|
||||
case 100:
|
||||
|
||||
{ yyval.expr = expr_alloc_one(E_NOT, yyvsp[0].expr); ;}
|
||||
{ yyval.expr = expr_alloc_comp(E_UNEQUAL, yyvsp[-2].symbol, yyvsp[0].symbol); ;}
|
||||
break;
|
||||
|
||||
case 101:
|
||||
|
||||
{ yyval.expr = expr_alloc_two(E_OR, yyvsp[-2].expr, yyvsp[0].expr); ;}
|
||||
{ yyval.expr = yyvsp[-1].expr; ;}
|
||||
break;
|
||||
|
||||
case 102:
|
||||
|
||||
{ yyval.expr = expr_alloc_two(E_AND, yyvsp[-2].expr, yyvsp[0].expr); ;}
|
||||
{ yyval.expr = expr_alloc_one(E_NOT, yyvsp[0].expr); ;}
|
||||
break;
|
||||
|
||||
case 103:
|
||||
|
||||
{ yyval.symbol = sym_lookup(yyvsp[0].string, 0); free(yyvsp[0].string); ;}
|
||||
{ yyval.expr = expr_alloc_two(E_OR, yyvsp[-2].expr, yyvsp[0].expr); ;}
|
||||
break;
|
||||
|
||||
case 104:
|
||||
|
||||
{ yyval.expr = expr_alloc_two(E_AND, yyvsp[-2].expr, yyvsp[0].expr); ;}
|
||||
break;
|
||||
|
||||
case 105:
|
||||
|
||||
{ yyval.symbol = sym_lookup(yyvsp[0].string, 0); free(yyvsp[0].string); ;}
|
||||
break;
|
||||
|
||||
case 106:
|
||||
|
||||
{ yyval.symbol = sym_lookup(yyvsp[0].string, 1); free(yyvsp[0].string); ;}
|
||||
break;
|
||||
|
||||
|
|
|
@ -72,6 +72,7 @@ static struct menu *current_menu, *current_entry;
|
|||
%token <id>T_SELECT
|
||||
%token <id>T_RANGE
|
||||
%token <id>T_ON
|
||||
%token <id>T_RESET
|
||||
%token <string> T_WORD
|
||||
%token <string> T_WORD_QUOTE
|
||||
%token T_UNEQUAL
|
||||
|
@ -118,7 +119,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_SELECT | T_OPTIONAL | T_RANGE | T_DEFAULT | T_RESET
|
||||
;
|
||||
|
||||
common_stmt:
|
||||
|
@ -274,6 +275,11 @@ choice_option: T_OPTIONAL T_EOL
|
|||
printd(DEBUG_PARSE, "%s:%d:optional\n", zconf_curname(), zconf_lineno());
|
||||
};
|
||||
|
||||
choice_option: T_RESET T_EOL
|
||||
{
|
||||
current_entry->sym->flags |= SYMBOL_RESET;
|
||||
};
|
||||
|
||||
choice_option: T_DEFAULT T_WORD if_expr T_EOL
|
||||
{
|
||||
if ($1->stype == S_UNKNOWN) {
|
||||
|
|
|
@ -203,6 +203,7 @@ sub gen_target_config() {
|
|||
choice
|
||||
prompt "Target System"
|
||||
default LINUX_2_4_BRCM
|
||||
reset
|
||||
|
||||
EOF
|
||||
|
||||
|
|
Loading…
Reference in New Issue