add workaround for freebsd
[openwrt.git] / scripts / config / confdata.c
index b0cbbe2..641aa48 100644 (file)
@@ -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:
This page took 0.023855 seconds and 4 git commands to generate.