about summary refs log tree commit diff
path: root/include
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2002-08-03 12:09:37 +0000
committerRoland McGrath <roland@gnu.org>2002-08-03 12:09:37 +0000
commitc5598d4721655c8654e3f419d12b671e2a92c0ce (patch)
tree910ecdb5f7dbcb309929a3169437b169912f3f81 /include
parentbc13934719a97d9fcea4eea6e353dc78f8e9da00 (diff)
downloadglibc-c5598d4721655c8654e3f419d12b671e2a92c0ce.tar.gz
glibc-c5598d4721655c8654e3f419d12b671e2a92c0ce.tar.xz
glibc-c5598d4721655c8654e3f419d12b671e2a92c0ce.zip
* include/libc-symbols.h (hidden_weak): Define it for [__ASSEMBLER__].
	* sysdeps/unix/make-syscalls.sh: Generate libc_hidden_def or
	libc_hidden_weak for every system call symbol defined.

	* include/time.h: Use libc_hidden_proto for time, asctime, mktime,
	timelocal, localtime, strftime.
	* time/asctime.c: Add libc_hidden_def.
	* time/mktime.c: Likewise.
	* time/localtime.c: Likewise.
	* time/strftime.c: Likewise.
	* time/strptime.c: Likewise.
	* sysdeps/generic/time.c: Likewise.
	* sysdeps/unix/time.c: Likewise.
	* sysdeps/unix/sysv/i386/time.S: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.

	* include/arpa/inet.h: Use libc_hidden_proto for inet_ntop, inet_pton.
	inet_makeaddr, inet_netof, inet_addr, __inet_addr.
	* resolv/inet_ntop.c: Likewise.
	* resolv/inet_pton.c: Likewise.
	* inet/inet_mkadr.c: Add libc_hidden_def.
	* inet/inet_netof.c: Likewise.
	* resolv/inet_addr.c: Likewise.

	* include/libc-symbols.h: Remove `defined HAVE_BROKEN_ALIAS_ATTRIBUTE'
	clauses from conditionals for now.  Will have to be fixed later
	for older compilers.
Diffstat (limited to 'include')
-rw-r--r--include/arpa/inet.h7
-rw-r--r--include/libc-symbols.h12
-rw-r--r--include/time.h8
3 files changed, 20 insertions, 7 deletions
diff --git a/include/arpa/inet.h b/include/arpa/inet.h
index 49a8e8ced7..c81f5824f1 100644
--- a/include/arpa/inet.h
+++ b/include/arpa/inet.h
@@ -1,3 +1,10 @@
 #include <inet/arpa/inet.h>
 
 extern in_addr_t __inet_aton (__const char *__cp, struct in_addr *__inp);
+libc_hidden_proto (__inet_aton)
+
+libc_hidden_proto (inet_aton)
+libc_hidden_proto (inet_ntop)
+libc_hidden_proto (inet_pton)
+libc_hidden_proto (inet_makeaddr)
+libc_hidden_proto (inet_netof)
diff --git a/include/libc-symbols.h b/include/libc-symbols.h
index 4734c50ed7..84ee166e99 100644
--- a/include/libc-symbols.h
+++ b/include/libc-symbols.h
@@ -440,8 +440,7 @@
    versioned_symbol (libc, __real_foo, foo, GLIBC_2_1);
    libc_hidden_ver (__real_foo, foo)  */
 
-#if defined SHARED && defined DO_VERSIONING \
-    && defined HAVE_BROKEN_ALIAS_ATTRIBUTE
+#if defined SHARED && defined DO_VERSIONING
 # ifndef __ASSEMBLER__
 #  ifdef HAVE_BROKEN_VISIBILITY_ATTRIBUTE
 #   define __hidden_proto_hiddenattr
@@ -514,6 +513,7 @@
    to use __GI_* name and we need to add alias to the real name.
    hidden_proto and hidden_weak don't make sense for assembly.  */
 #  define hidden_def(name) strong_alias (name, __GI_##name)
+#  define hidden_weak(name) weak_alias (name, __GI_##name)
 #  define hidden_ver(local, name) strong_alias (local, __GI_##name)
 # endif
 #else
@@ -525,7 +525,7 @@
 # define hidden_ver(local, name)
 #endif
 
-#if !defined NOT_IN_libc && !defined HAVE_BROKEN_ALIAS_ATTRIBUTE
+#if !defined NOT_IN_libc
 # define libc_hidden_proto(name) hidden_proto (name)
 # define libc_hidden_def(name) hidden_def (name)
 # define libc_hidden_weak(name) hidden_weak (name)
@@ -537,8 +537,7 @@
 # define libc_hidden_ver(local, name)
 #endif
 
-#if defined NOT_IN_libc && defined IS_IN_rtld \
-    && !defined HAVE_BROKEN_ALIAS_ATTRIBUTE
+#if defined NOT_IN_libc && defined IS_IN_rtld
 # define rtld_hidden_proto(name) hidden_proto (name)
 # define rtld_hidden_def(name) hidden_def (name)
 # define rtld_hidden_weak(name) hidden_weak (name)
@@ -550,8 +549,7 @@
 # define rtld_hidden_ver(local, name)
 #endif
 
-#if defined NOT_IN_libc && defined IS_IN_libm \
-    && !defined HAVE_BROKEN_ALIAS_ATTRIBUTE
+#if defined NOT_IN_libc && defined IS_IN_libm
 # define libm_hidden_proto(name) hidden_proto (name)
 # define libm_hidden_def(name) hidden_def (name)
 # define libm_hidden_weak(name) hidden_weak (name)
diff --git a/include/time.h b/include/time.h
index ff331cddcd..b68df96385 100644
--- a/include/time.h
+++ b/include/time.h
@@ -4,6 +4,14 @@
 #else
 # include <time/time.h>
 
+libc_hidden_proto (time)
+libc_hidden_proto (asctime)
+libc_hidden_proto (mktime)
+libc_hidden_proto (timelocal)
+libc_hidden_proto (localtime)
+libc_hidden_proto (strftime)
+libc_hidden_proto (strptime)
+
 /* Now define the internal interfaces.  */
 struct tm;