vserver 2.0 rc7
[linux-2.6.git] / scripts / kconfig / confdata.c
index 7b6285e..2755c45 100644 (file)
@@ -27,10 +27,10 @@ const char *conf_confnames[] = {
        NULL,
 };
 
-static char *conf_expand_value(const char *in)
+static char *conf_expand_value(const signed char *in)
 {
        struct symbol *sym;
-       const char *src;
+       const signed char *src;
        static char res_value[SYMBOL_MAXLENGTH];
        char *dst, name[SYMBOL_MAXLENGTH];
 
@@ -88,9 +88,9 @@ int conf_read(const char *name)
                        name = conf_expand_value(name);
                        in = zconf_fopen(name);
                        if (in) {
-                               printf("#\n"
-                                      "# using defaults found in %s\n"
-                                      "#\n", name);
+                               printf(_("#\n"
+                                        "# using defaults found in %s\n"
+                                        "#\n"), name);
                                break;
                        }
                }
@@ -270,6 +270,8 @@ int conf_write(const char *name)
        int type, l;
        const char *str;
        time_t now;
+       int use_timestamp = 1;
+       char *env;
 
        dirname[0] = 0;
        if (name && name[0]) {
@@ -293,7 +295,7 @@ int conf_write(const char *name)
        } else
                basename = conf_def_filename;
 
-       sprintf(newname, "%s.tmpconfig.%d", dirname, getpid());
+       sprintf(newname, "%s.tmpconfig.%d", dirname, (int)getpid());
        out = fopen(newname, "w");
        if (!out)
                return 1;
@@ -306,22 +308,28 @@ int conf_write(const char *name)
        sym = sym_lookup("KERNELRELEASE", 0);
        sym_calc_value(sym);
        time(&now);
-       fprintf(out, "#\n"
-                    "# Automatically generated make config: don't edit\n"
-                    "# Linux kernel version: %s\n"
-                    "# %s"
-                    "#\n",
+       env = getenv("KCONFIG_NOTIMESTAMP");
+       if (env && *env)
+               use_timestamp = 0;
+
+       fprintf(out, _("#\n"
+                      "# Automatically generated make config: don't edit\n"
+                      "# Linux kernel version: %s\n"
+                      "%s%s"
+                      "#\n"),
                     sym_get_string_value(sym),
-                    ctime(&now));
+                    use_timestamp ? "# " : "",
+                    use_timestamp ? ctime(&now) : "");
        if (out_h)
                fprintf(out_h, "/*\n"
                               " * Automatically generated C config: don't edit\n"
                               " * Linux kernel version: %s\n"
-                              " * %s"
+                              "%s%s"
                               " */\n"
                               "#define AUTOCONF_INCLUDED\n",
                               sym_get_string_value(sym),
-                              ctime(&now));
+                              use_timestamp ? " * " : "",
+                              use_timestamp ? ctime(&now) : "");
 
        if (!sym_change_count)
                sym_clear_all_valid();