Browse Source

utime[s]: avoid circular dependency

utime.c: fix a cast, tv_sec is of type time_t
Add stub for utimes.

Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Peter S. Mazinger 13 years ago
parent
commit
917176e71e
2 changed files with 8 additions and 4 deletions
  1. 5 3
      libc/sysdeps/linux/common/utime.c
  2. 3 1
      libc/sysdeps/linux/common/utimes.c

+ 5 - 3
libc/sysdeps/linux/common/utime.c

@@ -12,7 +12,7 @@
 
 #ifdef __NR_utime
 _syscall2(int, utime, const char *, file, const struct utimbuf *, times)
-#else
+#elif defined __NR_utimes /* alpha || ia64 */
 # define __need_NULL
 # include <stddef.h>
 # include <sys/time.h>
@@ -24,11 +24,13 @@ int utime(const char *file, const struct utimbuf *times)
 	if (times != NULL) {
 		timevals[0].tv_usec = 0L;
 		timevals[1].tv_usec = 0L;
-		timevals[0].tv_sec = (long int) times->actime;
-		timevals[1].tv_sec = (long int) times->modtime;
+		timevals[0].tv_sec = (time_t) times->actime;
+		timevals[1].tv_sec = (time_t) times->modtime;
 	}
 	return utimes(file, times ? timevals : NULL);
 }
 #endif
+#if defined __NR_utime || defined __NR_utimes
 link_warning(utime, "the use of OBSOLESCENT `utime' is discouraged, use `utimes'")
 libc_hidden_def(utime)
+#endif

+ 3 - 1
libc/sysdeps/linux/common/utimes.c

@@ -12,7 +12,7 @@
 
 #ifdef __NR_utimes
 _syscall2(int, utimes, const char *, file, const struct timeval *, tvp)
-#else
+#elif defined __NR_utime
 # define __need_NULL
 # include <stddef.h>
 # include <utime.h>
@@ -31,4 +31,6 @@ int utimes(const char *file, const struct timeval tvp[2])
 	return utime(file, times);
 }
 #endif
+#if defined __NR_utimes || defined __NR_utime
 libc_hidden_def(utimes)
+#endif