summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog26
-rw-r--r--nptl/ChangeLog4
-rw-r--r--nptl/shlib-versions1
-rw-r--r--nscd/nscd_getgr_r.c1
-rw-r--r--sysdeps/powerpc/longjmp.c4
-rw-r--r--sysdeps/powerpc/novmx-longjmp.c4
-rw-r--r--sysdeps/powerpc/novmx-sigjmp.c5
-rw-r--r--sysdeps/powerpc/powerpc32/__longjmp.S4
-rw-r--r--sysdeps/powerpc/powerpc32/bsd-setjmp.S37
-rw-r--r--sysdeps/powerpc/powerpc64/__longjmp.S4
-rw-r--r--sysdeps/powerpc/powerpc64/bsd-setjmp.S36
-rw-r--r--sysdeps/powerpc/sigjmp.c6
12 files changed, 59 insertions, 73 deletions
diff --git a/ChangeLog b/ChangeLog
index e9cdaede54..ffa376d0e8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,29 @@
+2004-07-05 Jakub Jelinek <jakub@redhat.com>
+
+ * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp,
+ __libc_siglongjmp): Remove symbol_version.
+ * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp):
+ Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4.
+ * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias
+ unconditionally.
+ * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove.
+ * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use
+ strong_alias instead of default_symbol_version, remove
+ symbol_version.
+ * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise.
+ * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change
+ into strong_alias to __novmxsetjmp.
+ (__vmx__setjmp): Similarly with __vmxsetjmp.
+ (__setjmp): Make it strong_alias to __vmx__setjmp, remove
+ default_symbol_version and symbol_version.
+ * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change
+ into strong_alias to __novmxsetjmp.
+ (__vmx__setjmp): Similarly with __vmxsetjmp.
+ (__setjmp): Make it strong_alias to __vmx__setjmp, remove
+ default_symbol_version and symbol_version.
+
+ * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h.
+
2004-07-05 Ulrich Drepper <drepper@redhat.com>
* elf/rtld.c (dl_main): Mark dyn_temp with attribute_relro.
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 8a81100cf4..5c4c43dbf3 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,7 @@
+2004-07-05 Jakub Jelinek <jakub@redhat.com>
+
+ * shlib-versions: Add powerpc64-.*-linux.*.
+
2004-07-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S
diff --git a/nptl/shlib-versions b/nptl/shlib-versions
index 9493a31978..5e18753be2 100644
--- a/nptl/shlib-versions
+++ b/nptl/shlib-versions
@@ -6,4 +6,5 @@ hppa.*-.*-linux.* libpthread=0 GLIBC_2.2
s390x-.*-linux.* libpthread=0 GLIBC_2.2
cris-.*-linux.* libpthread=0 GLIBC_2.2
x86_64-.*-linux.* libpthread=0 GLIBC_2.2.5
+powerpc64-.*-linux.* libpthread=0 GLIBC_2.3
.*-.*-linux.* libpthread=0
diff --git a/nscd/nscd_getgr_r.c b/nscd/nscd_getgr_r.c
index c57c6e7e61..b9cde73044 100644
--- a/nscd/nscd_getgr_r.c
+++ b/nscd/nscd_getgr_r.c
@@ -29,6 +29,7 @@
#include <sys/uio.h>
#include <sys/un.h>
#include <not-cancel.h>
+#include <stdio-common/_itoa.h>
#include "nscd-client.h"
#include "nscd_proto.h"
diff --git a/sysdeps/powerpc/longjmp.c b/sysdeps/powerpc/longjmp.c
index 6d79f04b70..0345492c23 100644
--- a/sysdeps/powerpc/longjmp.c
+++ b/sysdeps/powerpc/longjmp.c
@@ -55,8 +55,8 @@ weak_alias (__vmx__libc_siglongjmp, __vmxlongjmp)
weak_alias (__vmx__libc_siglongjmp, __vmxsiglongjmp)
-default_symbol_version (__vmx__libc_longjmp, __libc_longjmp, GLIBC_2.3.4);
-default_symbol_version (__vmx__libc_siglongjmp, __libc_siglongjmp, GLIBC_2.3.4);
+default_symbol_version (__vmx__libc_longjmp, __libc_longjmp, GLIBC_PRIVATE);
+default_symbol_version (__vmx__libc_siglongjmp, __libc_siglongjmp, GLIBC_PRIVATE);
default_symbol_version (__vmx_longjmp, _longjmp, GLIBC_2.3.4);
default_symbol_version (__vmxlongjmp, longjmp, GLIBC_2.3.4);
default_symbol_version (__vmxsiglongjmp, siglongjmp, GLIBC_2.3.4);
diff --git a/sysdeps/powerpc/novmx-longjmp.c b/sysdeps/powerpc/novmx-longjmp.c
index d823239ea6..b4a6b56aa9 100644
--- a/sysdeps/powerpc/novmx-longjmp.c
+++ b/sysdeps/powerpc/novmx-longjmp.c
@@ -53,14 +53,10 @@ weak_alias (__novmx__libc_siglongjmp, __novmxlongjmp)
weak_alias (__novmx__libc_siglongjmp, __novmxsiglongjmp)
# if __WORDSIZE == 64
-symbol_version (__novmx__libc_longjmp,__libc_longjmp,GLIBC_2.3);
-symbol_version (__novmx__libc_siglongjmp,__libc_siglongjmp,GLIBC_2.3);
symbol_version (__novmx_longjmp,_longjmp,GLIBC_2.3);
symbol_version (__novmxlongjmp,longjmp,GLIBC_2.3);
symbol_version (__novmxsiglongjmp,siglongjmp,GLIBC_2.3);
# else
-symbol_version (__novmx__libc_longjmp,__libc_longjmp,GLIBC_2.0);
-symbol_version (__novmx__libc_siglongjmp,__libc_siglongjmp,GLIBC_2.0);
symbol_version (__novmx_longjmp,_longjmp,GLIBC_2.0);
symbol_version (__novmxlongjmp,longjmp,GLIBC_2.0);
symbol_version (__novmxsiglongjmp,siglongjmp,GLIBC_2.0);
diff --git a/sysdeps/powerpc/novmx-sigjmp.c b/sysdeps/powerpc/novmx-sigjmp.c
index 7489ded4a9..f5d487f52c 100644
--- a/sysdeps/powerpc/novmx-sigjmp.c
+++ b/sysdeps/powerpc/novmx-sigjmp.c
@@ -41,10 +41,5 @@ __novmx__sigjmp_save (__novmx__sigjmp_buf env, int savemask)
return 0;
}
-# if __WORDSIZE == 64
-symbol_version (__novmx__sigjmp_save,__sigjmp_save,GLIBC_2.3);
-# else
-symbol_version (__novmx__sigjmp_save,__sigjmp_save,GLIBC_2.0);
-# endif /* __WORDSIZE == 64 */
# endif /* SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) */
#endif /* !NOT_IN_libc && SHARED */
diff --git a/sysdeps/powerpc/powerpc32/__longjmp.S b/sysdeps/powerpc/powerpc32/__longjmp.S
index 79c50deacd..5a050f1e71 100644
--- a/sysdeps/powerpc/powerpc32/__longjmp.S
+++ b/sysdeps/powerpc/powerpc32/__longjmp.S
@@ -25,15 +25,13 @@
# include "__longjmp-common.S"
#else /* !NOT_IN_libc */
-/* Build a versioned object for libc. */
-default_symbol_version (__vmx__longjmp,__longjmp,GLIBC_2.3.4);
+strong_alias (__vmx__longjmp, __longjmp);
# define __longjmp __vmx__longjmp
# include "__longjmp-common.S"
# if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)
# define __NO_VMX__
# undef JB_SIZE
-symbol_version (__novmx__longjmp,__longjmp,GLIBC_2.0);
# undef __longjmp
# define __longjmp __novmx__longjmp
# include "__longjmp-common.S"
diff --git a/sysdeps/powerpc/powerpc32/bsd-setjmp.S b/sysdeps/powerpc/powerpc32/bsd-setjmp.S
index f40785624a..159b122ca5 100644
--- a/sysdeps/powerpc/powerpc32/bsd-setjmp.S
+++ b/sysdeps/powerpc/powerpc32/bsd-setjmp.S
@@ -23,34 +23,19 @@
#if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)
-
-/* We need 2 copies of identical code for the setjmp's as gas complains
- erroneously about having multiple versions of setjmp. This eliminates the
- need for the strong alias of __setjmp to setjmp which
- does not support versioning, i.e. another gas unimplemented feature. */
-symbol_version (__novmx__setjmp,__setjmp,GLIBC_2.0)
-symbol_version (__novmxsetjmp,setjmp,GLIBC_2.0)
-
-ENTRY (BP_SYM (__novmxsetjmp))
+ENTRY (__novmxsetjmp)
li r4,1 /* Set second argument to 1. */
- b JUMPTARGET (BP_SYM (__novmx__sigsetjmp))
-END (BP_SYM (__novmxsetjmp))
+ b JUMPTARGET (__novmx__sigsetjmp)
+END (__novmxsetjmp)
+strong_alias (__novmxsetjmp, __novmx__setjmp)
+symbol_version (__novmxsetjmp, setjmp, GLIBC_2.0)
-ENTRY (BP_SYM (__novmx__setjmp))
- li r4,1 /* Set second argument to 1. */
- b JUMPTARGET (BP_SYM (__novmx__sigsetjmp))
-END (BP_SYM (__novmx__setjmp))
#endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) ) */
-default_symbol_version (__vmx__setjmp,__setjmp,GLIBC_2.3.4)
-default_symbol_version (__vmxsetjmp,setjmp,GLIBC_2.3.4)
-
-ENTRY (BP_SYM (__vmxsetjmp))
- li r4,1 /* Set second argument to 1. */
- b JUMPTARGET (BP_SYM (__vmx__sigsetjmp))
-END (BP_SYM (__vmxsetjmp))
-
-ENTRY (BP_SYM (__vmx__setjmp))
+ENTRY (__vmxsetjmp)
li r4,1 /* Set second argument to 1. */
- b JUMPTARGET (BP_SYM (__vmx__sigsetjmp))
-END (BP_SYM (__vmx__setjmp))
+ b JUMPTARGET (__vmx__sigsetjmp)
+END (__vmxsetjmp)
+strong_alias (__vmxsetjmp, __vmx__setjmp)
+strong_alias (__vmx__setjmp, __setjmp)
+default_symbol_version (__vmxsetjmp,setjmp,GLIBC_2.3.4)
diff --git a/sysdeps/powerpc/powerpc64/__longjmp.S b/sysdeps/powerpc/powerpc64/__longjmp.S
index 834ccb1691..968e9dce57 100644
--- a/sysdeps/powerpc/powerpc64/__longjmp.S
+++ b/sysdeps/powerpc/powerpc64/__longjmp.S
@@ -26,8 +26,7 @@
# include "__longjmp-common.S"
#else /* !NOT_IN_libc */
-/* Build a versioned object for libc. */
-default_symbol_version (__vmx__longjmp,__longjmp,GLIBC_2.3.4)
+strong_alias (__vmx__longjmp, __longjmp)
# define __longjmp __vmx__longjmp
# include "__longjmp-common.S"
@@ -35,7 +34,6 @@ default_symbol_version (__vmx__longjmp,__longjmp,GLIBC_2.3.4)
# define __NO_VMX__
# undef __longjmp
# undef JB_SIZE
-symbol_version(__novmx__longjmp,__longjmp,GLIBC_2.3)
# define __longjmp __novmx__longjmp
# include "__longjmp-common.S"
# endif
diff --git a/sysdeps/powerpc/powerpc64/bsd-setjmp.S b/sysdeps/powerpc/powerpc64/bsd-setjmp.S
index 2eb191a46b..73b9a4d34e 100644
--- a/sysdeps/powerpc/powerpc64/bsd-setjmp.S
+++ b/sysdeps/powerpc/powerpc64/bsd-setjmp.S
@@ -23,33 +23,21 @@
#if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)
-/* We need 2 copies of identical code for the setjmp's as gas complains
- erroneously about having multiple versions of setjmp. This eliminates the
- need for the strong alias of __setjmp to setjmp which
- does not support versioning, i.e. another gas unimplemented feature. */
-symbol_version (__novmx__setjmp,__setjmp,GLIBC_2.3)
-symbol_version (__novmxsetjmp,setjmp,GLIBC_2.3)
-
-ENTRY (BP_SYM (__novmxsetjmp))
- li r4,1 /* Set second argument to 1. */
- b JUMPTARGET (BP_SYM (__novmx__sigsetjmp))
-END (BP_SYM (__novmxsetjmp))
-ENTRY (BP_SYM (__novmx__setjmp))
+ENTRY (__novmxsetjmp)
li r4,1 /* Set second argument to 1. */
- b JUMPTARGET (BP_SYM (__novmx__sigsetjmp))
-END (BP_SYM (__novmx__setjmp))
-#endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4) */
+ b JUMPTARGET (__novmx__sigsetjmp)
+END (__novmxsetjmp)
+strong_alias (__novmxsetjmp, __novmx__setjmp)
+symbol_version (__novmxsetjmp, setjmp, GLIBC_2.3)
-default_symbol_version (__vmx__setjmp,__setjmp,GLIBC_2.3.4)
-default_symbol_version (__vmxsetjmp,setjmp,GLIBC_2.3.4)
+#endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4) */
-ENTRY (BP_SYM (__vmxsetjmp))
- li r4,1 /* Set second argument to 1. */
- b JUMPTARGET (BP_SYM (__vmx__sigsetjmp))
-END (BP_SYM (__vmxsetjmp))
-ENTRY (BP_SYM (__vmx__setjmp))
+ENTRY (__vmxsetjmp)
li r4,1 /* Set second argument to 1. */
- b JUMPTARGET (BP_SYM (__vmx__sigsetjmp))
-END (BP_SYM (__vmx__setjmp))
+ b JUMPTARGET (__vmx__sigsetjmp)
+END (__vmxsetjmp)
+strong_alias (__vmxsetjmp, __vmx__setjmp)
+strong_alias (__vmx__sigsetjmp, __setjmp)
+default_symbol_version (__vmxsetjmp, setjmp, GLIBC_2.3.4)
diff --git a/sysdeps/powerpc/sigjmp.c b/sysdeps/powerpc/sigjmp.c
index 28cbf6b065..5c8fd9eb79 100644
--- a/sysdeps/powerpc/sigjmp.c
+++ b/sysdeps/powerpc/sigjmp.c
@@ -37,10 +37,4 @@ __vmx__sigjmp_save (sigjmp_buf env, int savemask)
return 0;
}
-#if defined NOT_IN_libc
-/* Build a non-versioned object for rtld-*. */
strong_alias (__vmx__sigjmp_save,__sigjmp_save)
-#else
-/* Build a versioned object for libc. */
-default_symbol_version (__vmx__sigjmp_save,__sigjmp_save,GLIBC_2.3.4);
-#endif