diff --git a/AUTHORS b/AUTHORS index e6b78da8..647e5777 100644 --- a/AUTHORS +++ b/AUTHORS @@ -60,6 +60,7 @@ Other contributors: Andreas Schwab Carl Staelin (Princeton University) Ian Stewartson (Data Logic Limited) + Ramon Garcia Fernandez With suggestions/comments/bug reports from a cast of ... well ... hundreds, anyway :) diff --git a/ChangeLog b/ChangeLog index 64cdae34..a99484f7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -6,6 +6,11 @@ * commands.c, file.c, job.c, remake.c, read.c, variable.c, main.c: Ditto. +2007-10-27 Bruno Haible + + * remake.c (f_mtime): Print time difference values between 100 and + ULONG_MAX in fixed-point notation rather than in exponention notation. + 2007-10-12 Eli Zaretskii * variable.c (do_variable_definition): Allow $(SHELL) to expand to diff --git a/remake.c b/remake.c index 687b9d22..2dad3f01 100644 --- a/remake.c +++ b/remake.c @@ -1302,8 +1302,14 @@ f_mtime (struct file *file, int search) (FILE_TIMESTAMP_S (mtime) - FILE_TIMESTAMP_S (now) + ((FILE_TIMESTAMP_NS (mtime) - FILE_TIMESTAMP_NS (now)) / 1e9)); - error (NILF, _("Warning: File `%s' has modification time %.2g s in the future"), - file->name, from_now); + char from_now_string[100]; + + if (from_now >= 99 && from_now <= ULONG_MAX) + sprintf (from_now_string, "%lu", (unsigned long) from_now); + else + sprintf (from_now_string, "%.2g", from_now); + error (NILF, _("Warning: File `%s' has modification time %s s in the future"), + file->name, from_now_string); #endif clock_skew_detected = 1; }