Make expands the lefthand side of assignment statements. In fact, Kbuild relies on it since kernel makefiles mostly look like this: obj-$(CONFIG_FOO) += foo.o Do likewise in Kconfig.
Unified · Split
| @@ -114,6 +114,13 @@ n [A-Za-z0-9_-] · 113 unmodified lines | ||
| 114 | 114 | yylval.string = text; |
| 115 | 115 | return T_VARIABLE; |
| 116 | 116 | } |
| 117 | + ({n}|$)+ { | |
| 118 | + /* this token includes at least one '$' */ | |
| 119 | + yylval.string = expand_token(yytext, yyleng); | |
| 120 | + if (strlen(yylval.string)) | |
| 121 | + return T_VARIABLE; | |
| 122 | + free(yylval.string); | |
| 123 | + } | |
| 117 | 124 | "=" { BEGIN(ASSIGN_VAL); yylval.flavor = VAR_RECURSIVE; return T_ASSIGN; } |
| 118 | 125 | ":=" { BEGIN(ASSIGN_VAL); yylval.flavor = VAR_SIMPLE; return T_ASSIGN; } |
| 119 | 126 | "+=" { BEGIN(ASSIGN_VAL); yylval.flavor = VAR_APPEND; return T_ASSIGN; } |