From 37a91e9c10648208de002c75df304e23ca89e256 Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Sat, 23 Aug 2014 22:13:19 -0400 Subject: [PATCH] build: Update kconfig to always emit symbols - even when false. Always emit CONFIG_X definitions in autoconf.h - set them to 0 when they are disabled. Signed-off-by: Kevin O'Connor --- scripts/kconfig/confdata.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c index f88d90f2..08e75599 100644 --- a/scripts/kconfig/confdata.c +++ b/scripts/kconfig/confdata.c @@ -543,6 +543,8 @@ header_print_symbol(FILE *fp, struct symbol *sym, const char *value, void *arg) switch (*value) { case 'n': + fprintf(fp, "#define %s%s%s 0\n", + CONFIG_, sym->name, suffix); break; case 'm': suffix = "_MODULE"; @@ -558,6 +560,8 @@ header_print_symbol(FILE *fp, struct symbol *sym, const char *value, void *arg) if (value[0] != '0' || (value[1] != 'x' && value[1] != 'X')) prefix = "0x"; + if (!value[0]) + prefix = "0"; fprintf(fp, "#define %s%s %s%s\n", CONFIG_, sym->name, prefix, value); break; @@ -983,8 +987,12 @@ int conf_write_autoconf(void) for_all_symbols(i, sym) { sym_calc_value(sym); - if (!(sym->flags & SYMBOL_WRITE) || !sym->name) + if (!sym->name) continue; + if (!(sym->flags & SYMBOL_WRITE)) { + conf_write_symbol(out_h, sym, &header_printer_cb, NULL); + continue; + } /* write symbol to auto.conf, tristate and header files */ conf_write_symbol(out, sym, &kconfig_printer_cb, (void *)1);