kconfig: extend output of 'listnewconfig'
[carl9170fw.git] / config / menu.c
index af66065733bb636be638d72c9fe4492692462d28..5c5c1374b151f2a3b25217817d68a0af4b8a120f 100644 (file)
@@ -212,6 +212,7 @@ void menu_add_option(int token, char *arg)
                        sym_defconfig_list = current_entry->sym;
                else if (sym_defconfig_list != current_entry->sym)
                        zconf_error("trying to redefine defconfig symbol");
+               sym_defconfig_list->flags |= SYMBOL_AUTO;
                break;
        case T_OPT_ENV:
                prop_add_env(arg);
@@ -332,8 +333,10 @@ void menu_finalize(struct menu *parent)
                         */
                        parentdep = expr_alloc_symbol(sym);
                } else if (parent->prompt)
+                       /* Menu node for 'menu' */
                        parentdep = parent->prompt->visible.expr;
                else
+                       /* Menu node for 'if' */
                        parentdep = parent->dep;
 
                /* For each child menu node... */
@@ -825,16 +828,16 @@ static void get_symbol_str(struct gstr *r, struct symbol *sym,
 
        get_symbol_props_str(r, sym, P_SELECT, _("  Selects: "));
        if (sym->rev_dep.expr) {
-               str_append(r, _("  Selected by: "));
-               expr_gstr_print(sym->rev_dep.expr, r);
-               str_append(r, "\n");
+               expr_gstr_print_revdep(sym->rev_dep.expr, r, yes, "  Selected by [y]:\n");
+               expr_gstr_print_revdep(sym->rev_dep.expr, r, mod, "  Selected by [m]:\n");
+               expr_gstr_print_revdep(sym->rev_dep.expr, r, no, "  Selected by [n]:\n");
        }
 
        get_symbol_props_str(r, sym, P_IMPLY, _("  Implies: "));
        if (sym->implied.expr) {
-               str_append(r, _("  Implied by: "));
-               expr_gstr_print(sym->implied.expr, r);
-               str_append(r, "\n");
+               expr_gstr_print_revdep(sym->implied.expr, r, yes, "  Implied by [y]:\n");
+               expr_gstr_print_revdep(sym->implied.expr, r, mod, "  Implied by [m]:\n");
+               expr_gstr_print_revdep(sym->implied.expr, r, no, "  Implied by [n]:\n");
        }
 
        str_append(r, "\n\n");