Hi,
On Sat, Dec 4, 2010 at 12:10 PM, Ben Hutchings <[email protected]> wrote:
> If the KBUILD_VERBOSE environment variable is set to non-zero, show
> the default values of new symbols and not just their names.
>
> Based on work by Bastian Blank <[email protected]> and
> maximilian attems <[email protected]>. Simplified by Michal Marek
> <[email protected]>.
>
> Signed-off-by: Ben Hutchings <[email protected]>
> ---
> On Fri, 2010-12-03 at 13:23 +0100, Michal Marek wrote:
> [...]
>> this is almost a 1:1 copy of the conf_write_symbol() function, so what
>> about reusing it like this? Otherwise the patch looks OK.
> [...]
>
> Well spotted - I assume that function didn't exist when this code was
> first added in Debian, but it does seem to be exactly equivalent. I've
> incorporated your change into this version.
>
> Ben.
>
> scripts/kconfig/conf.c | 45 +++++++++++++++++++++++++++++++++---------
> scripts/kconfig/confdata.c | 5 ++-
> scripts/kconfig/expr.h | 2 +
> scripts/kconfig/lkc_proto.h | 1 +
> 4 files changed, 41 insertions(+), 12 deletions(-)
>
> diff --git a/scripts/kconfig/conf.c b/scripts/kconfig/conf.c
> index 5459a38..f4752b4 100644
> --- a/scripts/kconfig/conf.c
> +++ b/scripts/kconfig/conf.c
> @@ -363,7 +363,6 @@ static void conf(struct menu *menu)
> switch (prop->type) {
> case P_MENU:
> if ((input_mode == silentoldconfig ||
> - input_mode == listnewconfig ||
> input_mode == oldnoconfig) &&
> rootEntry != menu) {
> check_conf(menu);
> @@ -423,11 +422,7 @@ static void check_conf(struct menu *menu)
> if (sym && !sym_has_value(sym)) {
> if (sym_is_changable(sym) ||
> (sym_is_choice(sym) && sym_get_tristate_value(sym) ==
> yes)) {
> - if (input_mode == listnewconfig) {
> - if (sym->name && !sym_is_choice_value(sym)) {
> - printf("%s%s\n", CONFIG_, sym->name);
> - }
> - } else if (input_mode != oldnoconfig) {
> + if (input_mode != oldnoconfig) {
> if (!conf_cnt++)
> printf(_("*\n* Restart
> config...\n*\n"));
> rootEntry = menu_get_parent_menu(menu);
> @@ -440,6 +435,33 @@ static void check_conf(struct menu *menu)
> check_conf(child);
> }
>
> +static void report_conf(struct menu *menu, bool verbose)
> +{
> + struct symbol *sym;
> + struct menu *child;
> +
> + if (!menu_is_visible(menu))
> + return;
> +
> + if (verbose && menu == &rootmenu) {
> + printf("\n#\n"
> + "# Changes:\n"
> + "#\n");
> + }
> +
I would not expect to see any header if there is no new symbol(s).
However, that might complicate the code too much. Btw, I find
"Changes" to be misleading, is that header necessary ?
> + sym = menu->sym;
> + if (sym && (sym->flags & SYMBOL_NEW) &&
> + sym_is_changable(sym) && sym->name && !sym_is_choice_value(sym)) {
> + if (verbose)
> + conf_write_symbol(sym, sym->type, stdout, true);
> + else
> + printf("CONFIG_%s\n", sym->name);
Please don't hardcode the prefix string. This should be:
printf("%s%s\n", CONFIG_, sym->name);
- Arnaud
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive:
http://lists.debian.org/[email protected]