Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c6ccc30f authored by Li Zefan's avatar Li Zefan Committed by Michal Marek
Browse files

kconfig: fix zconfdump()



zconfdump(), which is used for debugging, can't recognize P_SELECT,
P_RANGE and P_MENU (if associated with a symbol, aka "menuconfig"),
and output something like this:

config X86
  boolean
  default y
  unknown prop 6!
  unknown prop 6!
  unknown prop 6!
  ...

Signed-off-by: default avatarLi Zefan <lizf@cn.fujitsu.com>
Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
parent 4280eae0
Loading
Loading
Loading
Loading
+17 −4
Original line number Diff line number Diff line
@@ -2336,9 +2336,9 @@ static void print_symbol(FILE *out, struct menu *menu)
	struct property *prop;

	if (sym_is_choice(sym))
		fprintf(out, "choice\n");
		fprintf(out, "\nchoice\n");
	else
		fprintf(out, "config %s\n", sym->name);
		fprintf(out, "\nconfig %s\n", sym->name);
	switch (sym->type) {
	case S_BOOLEAN:
		fputs("  boolean\n", out);
@@ -2384,6 +2384,21 @@ static void print_symbol(FILE *out, struct menu *menu)
		case P_CHOICE:
			fputs("  #choice value\n", out);
			break;
		case P_SELECT:
			fputs( "  select ", out);
			expr_fprint(prop->expr, out);
			fputc('\n', out);
			break;
		case P_RANGE:
			fputs( "  range ", out);
			expr_fprint(prop->expr, out);
			fputc('\n', out);
			break;
		case P_MENU:
			fputs( "  menu ", out);
			print_quoted_string(out, prop->text);
			fputc('\n', out);
			break;
		default:
			fprintf(out, "  unknown prop %d!\n", prop->type);
			break;
@@ -2395,7 +2410,6 @@ static void print_symbol(FILE *out, struct menu *menu)
			menu->help[len] = 0;
		fprintf(out, "  help\n%s\n", menu->help);
	}
	fputc('\n', out);
}

void zconfdump(FILE *out)
@@ -2428,7 +2442,6 @@ void zconfdump(FILE *out)
				expr_fprint(prop->visible.expr, out);
				fputc('\n', out);
			}
			fputs("\n", out);
		}

		if (menu->list)
+17 −4
Original line number Diff line number Diff line
@@ -591,9 +591,9 @@ static void print_symbol(FILE *out, struct menu *menu)
	struct property *prop;

	if (sym_is_choice(sym))
		fprintf(out, "choice\n");
		fprintf(out, "\nchoice\n");
	else
		fprintf(out, "config %s\n", sym->name);
		fprintf(out, "\nconfig %s\n", sym->name);
	switch (sym->type) {
	case S_BOOLEAN:
		fputs("  boolean\n", out);
@@ -639,6 +639,21 @@ static void print_symbol(FILE *out, struct menu *menu)
		case P_CHOICE:
			fputs("  #choice value\n", out);
			break;
		case P_SELECT:
			fputs( "  select ", out);
			expr_fprint(prop->expr, out);
			fputc('\n', out);
			break;
		case P_RANGE:
			fputs( "  range ", out);
			expr_fprint(prop->expr, out);
			fputc('\n', out);
			break;
		case P_MENU:
			fputs( "  menu ", out);
			print_quoted_string(out, prop->text);
			fputc('\n', out);
			break;
		default:
			fprintf(out, "  unknown prop %d!\n", prop->type);
			break;
@@ -650,7 +665,6 @@ static void print_symbol(FILE *out, struct menu *menu)
			menu->help[len] = 0;
		fprintf(out, "  help\n%s\n", menu->help);
	}
	fputc('\n', out);
}

void zconfdump(FILE *out)
@@ -683,7 +697,6 @@ void zconfdump(FILE *out)
				expr_fprint(prop->visible.expr, out);
				fputc('\n', out);
			}
			fputs("\n", out);
		}

		if (menu->list)