@@ -822,6 +822,17 @@ int conf_write_defconfig(const char *filename)
return 0;
}
+static const char *menu_type_string(const struct menu *menu)
+{
+ if (menu->sym && (menu->sym->flags & SYMBOL_CHOICE))
+ return " choice";
+
+ if (menu->prompt && menu->prompt->type == P_MENU)
+ return " menu";
+
+ return "";
+}
+
int conf_write(const char *name)
{
FILE *out;
@@ -876,8 +887,8 @@ int conf_write(const char *name)
str = menu_get_prompt(menu);
fprintf(out, "\n"
"#\n"
- "# %s\n"
- "#\n", str);
+ "# %s%s\n"
+ "#\n", str, menu_type_string(menu));
need_newline = false;
}
@@ -905,7 +916,8 @@ int conf_write(const char *name)
(menu->prompt && menu->prompt->type == P_MENU)) &&
menu_is_visible(menu) && menu != &rootmenu) {
str = menu_get_prompt(menu);
- fprintf(out, "# end of %s\n", str);
+ fprintf(out, "# end of %s%s\n", str,
+ menu_type_string(menu));
need_newline = true;
}
if (menu->next) {
To have a better understanding of the dotconfig blocks, mention if a particular block-commented section is a choice or a menu{,config}. Before: CONFIG_TICK_ONESHOT=y CONFIG_NO_HZ_COMMON=y CONFIG_NO_HZ_IDLE=y CONFIG_HIGH_RES_TIMERS=y After: CONFIG_TICK_ONESHOT=y CONFIG_NO_HZ_COMMON=y CONFIG_NO_HZ_IDLE=y CONFIG_HIGH_RES_TIMERS=y Signed-off-by: Alexander Lobakin <alobakin@pm.me> --- scripts/kconfig/confdata.c | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) -- 2.31.0