You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
106 lines
3.2 KiB
106 lines
3.2 KiB
13 years ago
|
utime(...,NULL) in some cases may cause truncation of sub-second portions of
|
||
|
timestamps. If utimes(...,NULL) is available, use it instead to avoid this
|
||
|
problem.
|
||
|
|
||
|
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
|
||
|
|
||
|
diff -Nuar --exclude autom4te.cache --exclude '*~' ccache-2.4.orig/ccache.c ccache-2.4/ccache.c
|
||
|
--- ccache-2.4.orig/ccache.c 2004-09-13 03:38:30.000000000 -0700
|
||
|
+++ ccache-2.4/ccache.c 2006-06-09 16:29:16.695117780 -0700
|
||
|
@@ -481,7 +481,11 @@
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
+#ifdef HAVE_UTIMES
|
||
|
+ utimes(stderr_file, NULL);
|
||
|
+#else
|
||
|
utime(stderr_file, NULL);
|
||
|
+#endif
|
||
|
|
||
|
if (strcmp(output_file, "/dev/null") == 0) {
|
||
|
ret = 0;
|
||
|
@@ -515,7 +519,11 @@
|
||
|
}
|
||
|
if (ret == 0) {
|
||
|
/* update the mtime on the file so that make doesn't get confused */
|
||
|
+#ifdef HAVE_UTIMES
|
||
|
+ utimes(output_file, NULL);
|
||
|
+#else
|
||
|
utime(output_file, NULL);
|
||
|
+#endif
|
||
|
}
|
||
|
|
||
|
/* get rid of the intermediate preprocessor file */
|
||
|
diff -Nuar --exclude autom4te.cache --exclude '*~' ccache-2.4.orig/ccache.h ccache-2.4/ccache.h
|
||
|
--- ccache-2.4.orig/ccache.h 2004-09-13 03:38:30.000000000 -0700
|
||
|
+++ ccache-2.4/ccache.h 2006-06-09 16:28:16.601658626 -0700
|
||
|
@@ -22,6 +22,9 @@
|
||
|
#ifdef HAVE_PWD_H
|
||
|
#include <pwd.h>
|
||
|
#endif
|
||
|
+#ifdef HAVE_SYS_TIME_H
|
||
|
+#include <sys/time.h>
|
||
|
+#endif
|
||
|
|
||
|
#define STATUS_NOTFOUND 3
|
||
|
#define STATUS_FATAL 4
|
||
|
diff -Nuar --exclude autom4te.cache --exclude '*~' ccache-2.4.orig/config.h.in ccache-2.4/config.h.in
|
||
|
--- ccache-2.4.orig/config.h.in 2003-09-27 21:48:17.000000000 -0700
|
||
|
+++ ccache-2.4/config.h.in 2006-06-09 16:25:43.000000000 -0700
|
||
|
@@ -19,6 +19,9 @@
|
||
|
/* Define to 1 if you have the `gethostname' function. */
|
||
|
#undef HAVE_GETHOSTNAME
|
||
|
|
||
|
+/* Define to 1 if you have the `getpwuid' function. */
|
||
|
+#undef HAVE_GETPWUID
|
||
|
+
|
||
|
/* Define to 1 if you have the <inttypes.h> header file. */
|
||
|
#undef HAVE_INTTYPES_H
|
||
|
|
||
|
@@ -31,6 +34,9 @@
|
||
|
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
|
||
|
#undef HAVE_NDIR_H
|
||
|
|
||
|
+/* Define to 1 if you have the <pwd.h> header file. */
|
||
|
+#undef HAVE_PWD_H
|
||
|
+
|
||
|
/* Define to 1 if you have the `realpath' function. */
|
||
|
#undef HAVE_REALPATH
|
||
|
|
||
|
@@ -60,6 +66,9 @@
|
||
|
/* Define to 1 if you have the <sys/stat.h> header file. */
|
||
|
#undef HAVE_SYS_STAT_H
|
||
|
|
||
|
+/* Define to 1 if you have the <sys/time.h> header file. */
|
||
|
+#undef HAVE_SYS_TIME_H
|
||
|
+
|
||
|
/* Define to 1 if you have the <sys/types.h> header file. */
|
||
|
#undef HAVE_SYS_TYPES_H
|
||
|
|
||
|
@@ -69,6 +78,9 @@
|
||
|
/* Define to 1 if you have the <unistd.h> header file. */
|
||
|
#undef HAVE_UNISTD_H
|
||
|
|
||
|
+/* Define to 1 if you have the `utimes' function. */
|
||
|
+#undef HAVE_UTIMES
|
||
|
+
|
||
|
/* Define to 1 if you have the `vasprintf' function. */
|
||
|
#undef HAVE_VASPRINTF
|
||
|
|
||
|
diff -Nuar --exclude autom4te.cache --exclude '*~' ccache-2.4.orig/configure.in ccache-2.4/configure.in
|
||
|
--- ccache-2.4.orig/configure.in 2004-09-13 03:38:30.000000000 -0700
|
||
|
+++ ccache-2.4/configure.in 2006-06-09 16:25:15.541288184 -0700
|
||
|
@@ -27,10 +27,11 @@
|
||
|
AC_HEADER_TIME
|
||
|
AC_HEADER_SYS_WAIT
|
||
|
|
||
|
-AC_CHECK_HEADERS(ctype.h strings.h stdlib.h string.h pwd.h)
|
||
|
+AC_CHECK_HEADERS(ctype.h strings.h stdlib.h string.h pwd.h sys/time.h)
|
||
|
|
||
|
AC_CHECK_FUNCS(realpath snprintf vsnprintf vasprintf asprintf mkstemp)
|
||
|
AC_CHECK_FUNCS(gethostname getpwuid)
|
||
|
+AC_CHECK_FUNCS(utimes)
|
||
|
|
||
|
AC_CACHE_CHECK([for compar_fn_t in stdlib.h],ccache_cv_COMPAR_FN_T, [
|
||
|
AC_TRY_COMPILE(
|