about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog10
-rw-r--r--include/sys/time.h7
-rw-r--r--sysdeps/generic/gettimeofday.c5
-rw-r--r--sysdeps/mach/gettimeofday.c5
-rw-r--r--sysdeps/posix/gettimeofday.c4
-rw-r--r--sysdeps/unix/common/syscalls.list2
-rw-r--r--sysdeps/unix/sysv/aix/gettimeofday.c5
-rw-r--r--sysdeps/unix/sysv/linux/alpha/gettimeofday.S3
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/gettimeofday.S1
9 files changed, 36 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 8228fea23e..4bf1eeaa31 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,15 @@
 2002-04-14  Ulrich Drepper  <drepper@redhat.com>
 
+	* include/sys/time.h: Declare __gettimeofday_internal and define
+	__gettimeofday macro if not NOT_IN_libc.
+	* sysdeps/generic/gettimeofday.c: Use INTEDEF for __gettimeofday.
+	* sysdeps/mach/gettimeofday.c: Likewise.
+	* sysdeps/posix/gettimeofday.c: Likewise.
+	* sysdeps/unix/sysv/aix/gettimeofday.c: Likewise.
+	* sysdeps/unix/common/syscalls.list: Define __gettimeofday alias.
+	* sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
+	* sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Likewise.
+
 	* include/sys/stat.h: Declare __fxstat_internal and __fxstat64_internal
 	and define __fxstate and __fxstat64 macros if not NOT_IN_libc.
 	Remove __lstat and __fstat inline functions.
diff --git a/include/sys/time.h b/include/sys/time.h
index 0350573b6b..634fe8a1ed 100644
--- a/include/sys/time.h
+++ b/include/sys/time.h
@@ -4,6 +4,8 @@
 /* Now document the internal interfaces.  */
 extern int __gettimeofday (struct timeval *__tv,
 			   struct timezone *__tz);
+extern int __gettimeofday_internal (struct timeval *__tv,
+				    struct timezone *__tz);
 extern int __settimeofday (__const struct timeval *__tv,
 			   __const struct timezone *__tz);
 extern int __adjtime (__const struct timeval *__delta,
@@ -14,4 +16,9 @@ extern int __setitimer (enum __itimer_which __which,
 			__const struct itimerval *__restrict __new,
 			struct itimerval *__restrict __old);
 extern int __utimes (__const char *__file, const struct timeval __tvp[2]);
+
+#ifndef NOT_IN_libc
+# define __gettimeofday(tv, tz) INTUSE(__gettimeofday) (tv, tz)
+#endif
+
 #endif
diff --git a/sysdeps/generic/gettimeofday.c b/sysdeps/generic/gettimeofday.c
index 03e705db7c..f4a170c9e7 100644
--- a/sysdeps/generic/gettimeofday.c
+++ b/sysdeps/generic/gettimeofday.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -19,6 +19,8 @@
 #include <errno.h>
 #include <sys/time.h>
 
+#undef __gettimeofday
+
 /* Get the current time of day and timezone information,
    putting it into *TV and *TZ.  If TZ is NULL, *TZ is not filled.
    Returns 0 on success, -1 on errors.  */
@@ -32,5 +34,6 @@ __gettimeofday (tv, tz)
 }
 stub_warning (gettimeofday)
 
+INTDEF(__gettimeofday)
 weak_alias (__gettimeofday, gettimeofday)
 #include <stub-tag.h>
diff --git a/sysdeps/mach/gettimeofday.c b/sysdeps/mach/gettimeofday.c
index 06268c9d04..7eb60c4b59 100644
--- a/sysdeps/mach/gettimeofday.c
+++ b/sysdeps/mach/gettimeofday.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,1992,1995,1996,1997,2001 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1992,1995-1997,2001,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -21,6 +21,8 @@
 #include <sys/time.h>
 #include <mach.h>
 
+#undef __gettimeofday
+
 /* Get the current time of day and timezone information,
    putting it into *TV and *TZ.  If TZ is NULL, *TZ is not filled.
    Returns 0 on success, -1 on errors.  */
@@ -42,4 +44,5 @@ __gettimeofday (tv, tz)
   return 0;
 }
 
+INTDEF(__gettimeofday)
 weak_alias (__gettimeofday, gettimeofday)
diff --git a/sysdeps/posix/gettimeofday.c b/sysdeps/posix/gettimeofday.c
index b33b9d6d7e..28f75b0bcc 100644
--- a/sysdeps/posix/gettimeofday.c
+++ b/sysdeps/posix/gettimeofday.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 92, 94, 95, 96, 97 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 92, 94, 95, 96, 97, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -26,6 +26,7 @@
 #define __tzname	tzname
 #endif
 
+#undef __gettimeofday
 
 /* Get the current time of day and timezone information,
    putting it into *TV and *TZ.  If TZ is NULL, *TZ is not filled.
@@ -73,4 +74,5 @@ __gettimeofday (tv, tz)
   return 0;
 }
 
+INTDEF(__gettimeofday)
 weak_alias (__gettimeofday, gettimeofday)
diff --git a/sysdeps/unix/common/syscalls.list b/sysdeps/unix/common/syscalls.list
index 2b06b73a33..fbe915cebd 100644
--- a/sysdeps/unix/common/syscalls.list
+++ b/sysdeps/unix/common/syscalls.list
@@ -6,7 +6,7 @@ fchown		-	fchown		i:iii	__fchown	fchown
 ftruncate	-	ftruncate	i:ii	__ftruncate	ftruncate
 getpgid		-	getpgrp		i:i	__getpgid	getpgid
 getrusage	-	getrusage	i:ip	__getrusage	getrusage
-gettimeofday	-	gettimeofday	i:PP	__gettimeofday	gettimeofday
+gettimeofday	-	gettimeofday	i:PP	__gettimeofday	gettimeofday __gettimeofday_internal
 settimeofday	-	settimeofday	i:PP	__settimeofday	settimeofday
 setpgid		-	setpgrp		i:ii	__setpgid	setpgid
 setregid	-	setregid	i:ii	__setregid	setregid
diff --git a/sysdeps/unix/sysv/aix/gettimeofday.c b/sysdeps/unix/sysv/aix/gettimeofday.c
index 031a84ebb6..a0105ae080 100644
--- a/sysdeps/unix/sysv/aix/gettimeofday.c
+++ b/sysdeps/unix/sysv/aix/gettimeofday.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 92, 94, 95, 96, 97, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1991,92,94,95,96,97,2001,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -26,6 +26,8 @@
 # define __tzname	tzname
 #endif
 
+#undef __gettimeofday
+
 extern int rtc_upper (void);
 extern int rtc_lower (void);
 
@@ -92,4 +94,5 @@ __gettimeofday (tv, tz)
   return 0;
 }
 
+INTDEF(__gettimeofday)
 weak_alias (__gettimeofday, gettimeofday)
diff --git a/sysdeps/unix/sysv/linux/alpha/gettimeofday.S b/sysdeps/unix/sysv/linux/alpha/gettimeofday.S
index 22f3bb7bc2..60d642a125 100644
--- a/sysdeps/unix/sysv/linux/alpha/gettimeofday.S
+++ b/sysdeps/unix/sysv/linux/alpha/gettimeofday.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -109,3 +109,4 @@ default_symbol_version (__gettimeofday_tv64p, gettimeofday, GLIBC_2.1)
 #else
 weak_alias (__gettimeofday, gettimeofday)
 #endif
+strong_alias(GETTIMEOFDAY, __gettimeofday_internal)
diff --git a/sysdeps/unix/sysv/linux/x86_64/gettimeofday.S b/sysdeps/unix/sysv/linux/x86_64/gettimeofday.S
index 4978416e0a..3f1615579c 100644
--- a/sysdeps/unix/sysv/linux/x86_64/gettimeofday.S
+++ b/sysdeps/unix/sysv/linux/x86_64/gettimeofday.S
@@ -38,4 +38,5 @@ L(pseudo_end):
 	ret
 PSEUDO_END(__gettimeofday)
 
+strong_alias (__gettimeofday, __gettimeofday_internal)
 weak_alias (__gettimeofday, gettimeofday)