about summary refs log tree commit diff
path: root/include/libc-symbols.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-12-05 04:18:59 +0000
committerUlrich Drepper <drepper@redhat.com>2000-12-05 04:18:59 +0000
commit2aa15430850362f50b069e21598e9acc625d4c27 (patch)
tree5d4f78d050d376cd391f3fd4680597fd03908397 /include/libc-symbols.h
parent62ab42d67da471a5502ecbe556e7f621dae360d3 (diff)
downloadglibc-2aa15430850362f50b069e21598e9acc625d4c27.tar.gz
glibc-2aa15430850362f50b069e21598e9acc625d4c27.tar.xz
glibc-2aa15430850362f50b069e21598e9acc625d4c27.zip
Update.
2000-12-04  Ulrich Drepper  <drepper@redhat.com>

	* configure.in: Define HAVE_ASM_GLOBAL_DOT_NAME for AIX.
	* config.h.in: Add HAVE_ASM_GLOBAL_DOT_NAME.
	* include/libc-symbols.h (strong_alias): Define special version
	for HAVE_ASM_GLOBAL_DOT_NAME.
	(weak_alias): Likewise.
	* sysdeps/powerpc/bsd-setjmp.S: Use strong_alias not .set.
	* sysdeps/unix/sysv/aix/Makefile [$(subdir)==login]
	(sysdep_routines): Add setutxent, getutxent, endutxent, getutxid,
	getutxline, pututxline, and utmpxname.
	* sysdeps/unix/sysv/aix/fchdir.c: Define __fchdir.
	* sysdeps/unix/sysv/aix/lseek.c: Define __libc_lseek alias.
	* sysdeps/unix/sysv/aix/open.c: Define __libc_open alias.
	* sysdeps/unix/sysv/aix/pread.c: Define pread alias.
	* sysdeps/unix/sysv/aix/pread64.c: Define pread64 alias.
	* sysdeps/unix/sysv/aix/sysdep.h (JUMPTARGET): Use C_TEXT.
	* sysdeps/unix/sysv/aix/bits/types.h: Define __clockid_t and __timer_t.
	* sysdeps/unix/sysv/aix/bits/utmp.h: Cleanup.  Add comments.
	* sysdeps/unix/sysv/linux/sys/param.h (MAXHOSTNAMELEN): Define.
	Patches by Michael Keezer <mkeezer@redhat.com>.
Diffstat (limited to 'include/libc-symbols.h')
-rw-r--r--include/libc-symbols.h20
1 files changed, 18 insertions, 2 deletions
diff --git a/include/libc-symbols.h b/include/libc-symbols.h
index 4acf848551..06d5602f7d 100644
--- a/include/libc-symbols.h
+++ b/include/libc-symbols.h
@@ -124,9 +124,17 @@
   ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME (alias) ASM_LINE_SEP	\
   .set C_SYMBOL_NAME (alias),C_SYMBOL_NAME (original)
 # else
-#  define strong_alias(original, alias)		\
+#  ifdef HAVE_ASM_GLOBAL_DOT_NAME
+#   define strong_alias(original, alias)	\
+  ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME (alias) ASM_LINE_SEP	\
+  C_SYMBOL_NAME (alias) = C_SYMBOL_NAME (original) ASM_LINE_SEP	\
+  ASM_GLOBAL_DIRECTIVE C_SYMBOL_DOT_NAME (alias) ASM_LINE_SEP	\
+  C_SYMBOL_DOT_NAME (alias) = C_SYMBOL_DOT_NAME (original)
+#  else
+#   define strong_alias(original, alias)	\
   ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME (alias) ASM_LINE_SEP	\
   C_SYMBOL_NAME (alias) = C_SYMBOL_NAME (original)
+#  endif
 # endif
 
 # ifdef HAVE_WEAK_SYMBOLS
@@ -138,9 +146,17 @@
 
 #  else /* ! HAVE_ASM_WEAKEXT_DIRECTIVE */
 
-#   define weak_alias(original, alias)	\
+#   ifdef HAVE_ASM_GLOBAL_DOT_NAME
+#    define weak_alias(original, alias)	\
+  .weak C_SYMBOL_NAME (alias) ASM_LINE_SEP			\
+  C_SYMBOL_NAME (alias) = C_SYMBOL_NAME (original) ASM_LINE_SEP	\
+  .weak C_SYMBOL_DOT_NAME (alias) ASM_LINE_SEP			\
+  C_SYMBOL_DOT_NAME (alias) = C_SYMBOL_DOT_NAME (original)
+#   else
+#    define weak_alias(original, alias)	\
   .weak C_SYMBOL_NAME (alias) ASM_LINE_SEP	\
   C_SYMBOL_NAME (alias) = C_SYMBOL_NAME (original)
+#   endif
 
 #   define weak_extern(symbol)	\
   .weak C_SYMBOL_NAME (symbol)