aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/kconfig/confdata.c
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/kconfig/confdata.c')
-rw-r--r--scripts/kconfig/confdata.c38
1 files changed, 2 insertions, 36 deletions
diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c
index 0586085136d1..52577f052bc1 100644
--- a/scripts/kconfig/confdata.c
+++ b/scripts/kconfig/confdata.c
@@ -540,35 +540,6 @@ static struct conf_printer header_printer_cb =
540}; 540};
541 541
542/* 542/*
543 * Generate the __enabled_CONFIG_* and __enabled_CONFIG_*_MODULE macros for
544 * use by the IS_{ENABLED,BUILTIN,MODULE} macros. The _MODULE variant is
545 * generated even for booleans so that the IS_ENABLED() macro works.
546 */
547static void
548header_print__enabled_symbol(FILE *fp, struct symbol *sym, const char *value, void *arg)
549{
550
551 switch (sym->type) {
552 case S_BOOLEAN:
553 case S_TRISTATE: {
554 fprintf(fp, "#define __enabled_" CONFIG_ "%s %d\n",
555 sym->name, (*value == 'y'));
556 fprintf(fp, "#define __enabled_" CONFIG_ "%s_MODULE %d\n",
557 sym->name, (*value == 'm'));
558 break;
559 }
560 default:
561 break;
562 }
563}
564
565static struct conf_printer header__enabled_printer_cb =
566{
567 .print_symbol = header_print__enabled_symbol,
568 .print_comment = header_print_comment,
569};
570
571/*
572 * Tristate printer 543 * Tristate printer
573 * 544 *
574 * This printer is used when generating the `include/config/tristate.conf' file. 545 * This printer is used when generating the `include/config/tristate.conf' file.
@@ -949,16 +920,11 @@ int conf_write_autoconf(void)
949 conf_write_heading(out_h, &header_printer_cb, NULL); 920 conf_write_heading(out_h, &header_printer_cb, NULL);
950 921
951 for_all_symbols(i, sym) { 922 for_all_symbols(i, sym) {
952 if (!sym->name)
953 continue;
954
955 sym_calc_value(sym); 923 sym_calc_value(sym);
956 924 if (!(sym->flags & SYMBOL_WRITE) || !sym->name)
957 conf_write_symbol(out_h, sym, &header__enabled_printer_cb, NULL);
958
959 if (!(sym->flags & SYMBOL_WRITE))
960 continue; 925 continue;
961 926
927 /* write symbol to auto.conf, tristate and header files */
962 conf_write_symbol(out, sym, &kconfig_printer_cb, (void *)1); 928 conf_write_symbol(out, sym, &kconfig_printer_cb, (void *)1);
963 929
964 conf_write_symbol(tristate, sym, &tristate_printer_cb, (void *)1); 930 conf_write_symbol(tristate, sym, &tristate_printer_cb, (void *)1);