summaryrefslogtreecommitdiff
path: root/adk/config/zconf.y
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2014-12-21 00:26:41 -0600
committerWaldemar Brodkorb <wbx@openadk.org>2014-12-21 00:26:41 -0600
commitf82981b97110ac217ff7f0d7e5fd7d26036adfde (patch)
tree96963c6238cceed76c78e3c93cbcce78a6bd6bd4 /adk/config/zconf.y
parent716ce66d95ede0e13cc182417a4d020ff5984407 (diff)
add patch to Kconfig
Add following patch https://lkml.org/lkml/2010/7/19/178 This allows to select for symbol as module and for special predefined values on int/string/hex symbols.
Diffstat (limited to 'adk/config/zconf.y')
-rw-r--r--adk/config/zconf.y17
1 files changed, 16 insertions, 1 deletions
diff --git a/adk/config/zconf.y b/adk/config/zconf.y
index 0f683cfa5..fdc6fdce2 100644
--- a/adk/config/zconf.y
+++ b/adk/config/zconf.y
@@ -207,10 +207,16 @@ config_option: T_DEFAULT expr if_expr T_EOL
config_option: T_SELECT T_WORD if_expr T_EOL
{
- menu_add_symbol(P_SELECT, sym_lookup($2, 0), $3);
+ menu_add_select(sym_lookup($2, 0), NULL, $3);
printd(DEBUG_PARSE, "%s:%d:select\n", zconf_curname(), zconf_lineno());
};
+config_option: T_SELECT T_WORD expr if_expr T_EOL
+{
+ menu_add_select(sym_lookup($2, 0), $3, $4);
+ printd(DEBUG_PARSE, "%s:%d:select with value\n", zconf_curname(), zconf_lineno());
+};
+
config_option: T_RANGE symbol symbol if_expr T_EOL
{
menu_add_expr(P_RANGE, expr_alloc_comp(E_RANGE,$2, $3), $4);
@@ -653,6 +659,15 @@ static void print_symbol(FILE *out, struct menu *menu)
case P_SELECT:
fputs( " select ", out);
expr_fprint(prop->expr, out);
+ if (prop->value) {
+ fputs(" (value=", out);
+ expr_fprint(prop->value, out);
+ fputc(')', out);
+ }
+ if (!expr_is_yes(prop->visible.expr)) {
+ fputs(" if ", out);
+ expr_fprint(prop->visible.expr, out);
+ }
fputc('\n', out);
break;
case P_RANGE: