From e2c32ba54b2fcf27a766e9c3cb427180a03ea056 Mon Sep 17 00:00:00 2001 From: Peter Korsgaard Date: Thu, 19 Jun 2008 08:11:51 +0000 Subject: package/config: rebase from upstream (2.6.24.4) From Bernhards tree (1af211ea) --- package/config/mconf.c | 43 ++++++++++++++++++++++++++++++------------- 1 file changed, 30 insertions(+), 13 deletions(-) (limited to 'package/config/mconf.c') diff --git a/package/config/mconf.c b/package/config/mconf.c index 9283ac3d7..bf5458acd 100644 --- a/package/config/mconf.c +++ b/package/config/mconf.c @@ -29,18 +29,23 @@ static const char mconf_readme[] = N_( "Overview\n" "--------\n" -"Some features may be built directly into Buildroot. Some features\n" +"Some features may be built directly into Buildroot. Some features\n" "may be completely removed altogether. There are also certain\n" "parameters which are not really features, but must be\n" "entered in as decimal or hexadecimal numbers or possibly text.\n" "\n" -"Menu items beginning with [*] or [ ] represent features\n" -"configured to be built in or removed respectively.\n" +"Menu items beginning with following braces represent features that\n" +" [ ] can be built in or removed\n" +" < > can be built in, modularized or removed\n" +" { } can be built in or modularized (selected by other feature)\n" +" - - are selected by other feature,\n" +"while *, M or whitespace inside braces means to build in, build as\n" +"a module or to exclude the feature respectively.\n" "\n" "To change any of these features, highlight it with the cursor\n" -"keys and press to build it in or to removed it.\n" -"You may also press the to cycle\n" -"through the available options (ie. Y->N->Y).\n" +"keys and press to build it in, to make it a module or\n" +" to removed it. You may also press the to cycle\n" +"through the available options (ie. Y->N->M->Y).\n" "\n" "Some additional keyboard hints:\n" "\n" @@ -355,8 +360,9 @@ static void get_symbol_str(struct gstr *r, struct symbol *sym) bool hit; struct property *prop; - str_printf(r, "Symbol: %s [=%s]\n", sym->name, - sym_get_string_value(sym)); + if (sym && sym->name) + str_printf(r, "Symbol: %s [=%s]\n", sym->name, + sym_get_string_value(sym)); for_all_prompts(sym, prop) get_prompt_str(r, prop); hit = false; @@ -479,6 +485,14 @@ static void build_conf(struct menu *menu) if (single_menu_mode && menu->data) goto conf_childs; return; + case P_COMMENT: + if (prompt) { + child_count++; + item_make(" %*c*** %s ***", indent + 1, ' ', prompt); + item_set_tag(':'); + item_set_data(menu); + } + break; default: if (prompt) { child_count++; @@ -558,7 +572,7 @@ static void build_conf(struct menu *menu) if (sym_is_changable(sym)) item_make("[%c]", val == no ? ' ' : '*'); else - item_make("---"); + item_make("-%c-", val == no ? ' ' : '*'); item_set_tag('t'); item_set_data(menu); break; @@ -568,10 +582,13 @@ static void build_conf(struct menu *menu) case mod: ch = 'M'; break; default: ch = ' '; break; } - if (sym_is_changable(sym)) - item_make("<%c>", ch); - else - item_make("---"); + if (sym_is_changable(sym)) { + if (sym->rev_dep.tri == mod) + item_make("{%c}", ch); + else + item_make("<%c>", ch); + } else + item_make("-%c-", ch); item_set_tag('t'); item_set_data(menu); break; -- cgit v1.2.3