projects
/
carl9170fw.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
kconfig: support simply expanded variable
[carl9170fw.git]
/
config
/
zconf.l
diff --git
a/config/zconf.l
b/config/zconf.l
index fde86ba2d0372c3e91713db262adff7b9fa705f1..d0f5b132a9b39802680a3f07343d0c36bf83e4ee 100644
(file)
--- a/
config/zconf.l
+++ b/
config/zconf.l
@@
-1,12
+1,13
@@
%option nostdinit noyywrap never-interactive full ecs
%option 8bit nodefault yylineno
%option nostdinit noyywrap never-interactive full ecs
%option 8bit nodefault yylineno
-%x COMMAND HELP STRING PARAM
+%x COMMAND HELP STRING PARAM
ASSIGN_VAL
%{
/*
* Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org>
* Released under the terms of the GNU GPL v2.0.
*/
%{
/*
* Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org>
* Released under the terms of the GNU GPL v2.0.
*/
+#include <assert.h>
#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
@@
-111,8
+112,11
@@
n [A-Za-z0-9_-]
}
alloc_string(yytext, yyleng);
yylval.string = text;
}
alloc_string(yytext, yyleng);
yylval.string = text;
- return T_
WORD
;
+ return T_
VARIABLE
;
}
}
+ "=" { BEGIN(ASSIGN_VAL); yylval.flavor = VAR_RECURSIVE; return T_ASSIGN; }
+ ":=" { BEGIN(ASSIGN_VAL); yylval.flavor = VAR_SIMPLE; return T_ASSIGN; }
+ [[:blank:]]+
. warn_ignored_character(*yytext);
\n {
BEGIN(INITIAL);
. warn_ignored_character(*yytext);
\n {
BEGIN(INITIAL);
@@
-120,6
+124,16
@@
n [A-Za-z0-9_-]
}
}
}
}
+<ASSIGN_VAL>{
+ [^[:blank:]\n]+.* {
+ alloc_string(yytext, yyleng);
+ yylval.string = text;
+ return T_ASSIGN_VAL;
+ }
+ \n { BEGIN(INITIAL); return T_EOL; }
+ .
+}
+
<PARAM>{
"&&" return T_AND;
"||" return T_OR;
<PARAM>{
"&&" return T_AND;
"||" return T_OR;