X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/5c472fc895c32a189d574b338057164e95430825..6ab92cab84ccfa359f400cd6e4fa82f12c8e4bfe:/scripts/config/confdata.c?ds=inline diff --git a/scripts/config/confdata.c b/scripts/config/confdata.c index b0cbbe2e4..641aa4891 100644 --- a/scripts/config/confdata.c +++ b/scripts/config/confdata.c @@ -22,13 +22,10 @@ static int conf_lineno, conf_warnings, conf_unsaved; const char conf_def_filename[] = ".config"; -const char conf_defname[] = "arch/$ARCH/defconfig"; +const char conf_defname[] = "scripts/config/defconfig"; const char *conf_confnames[] = { ".config", - "/lib/modules/$UNAME_RELEASE/.config", - "/etc/kernel-config", - "/boot/config-$UNAME_RELEASE", conf_defname, NULL, }; @@ -86,6 +83,29 @@ char *conf_get_default_confname(void) return name; } +void conf_reset(void) +{ + struct symbol *sym; + int i; + + for_all_symbols(i, sym) { + sym->flags |= SYMBOL_NEW | SYMBOL_CHANGED; + if (sym_is_choice(sym)) + sym->flags &= ~SYMBOL_NEW; + sym->flags &= ~SYMBOL_VALID; + switch (sym->type) { + case S_INT: + case S_HEX: + case S_STRING: + if (sym->user.val) + free(sym->user.val); + default: + sym->user.val = NULL; + sym->user.tri = no; + } + } +} + int conf_read_simple(const char *name) { FILE *in = NULL; @@ -375,7 +395,7 @@ int conf_write(const char *name) if (!out_h) return 1; } - sym = sym_lookup("KERNELVERSION", 0); + sym = sym_lookup("OPENWRTVERSION", 0); sym_calc_value(sym); time(&now); env = getenv("KCONFIG_NOTIMESTAMP"); @@ -384,7 +404,7 @@ int conf_write(const char *name) fprintf(out, _("#\n" "# Automatically generated make config: don't edit\n" - "# Linux kernel version: %s\n" + "# OpenWrt version: %s\n" "%s%s" "#\n"), sym_get_string_value(sym), @@ -393,7 +413,7 @@ int conf_write(const char *name) if (out_h) fprintf(out_h, "/*\n" " * Automatically generated C config: don't edit\n" - " * Linux kernel version: %s\n" + " * OpenWrt version: %s\n" "%s%s" " */\n" "#define AUTOCONF_INCLUDED\n", @@ -428,8 +448,11 @@ int conf_write(const char *name) type = sym->type; if (type == S_TRISTATE) { sym_calc_value(modules_sym); +/* tristate always enabled */ +#if 0 if (modules_sym->curr.tri == no) type = S_BOOLEAN; +#endif } switch (type) { case S_BOOLEAN: