aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--elf/rtld.c2
-rw-r--r--linuxthreads/ChangeLog5
-rw-r--r--nptl/ChangeLog5
-rw-r--r--nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h8
5 files changed, 24 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index c6943cc..c790f5b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2002-12-19 Ulrich Drepper <drepper@redhat.com>
+
+ * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
+ RTLD_CORRECT_DYNAMIC_WEAK is defined.
+
2002-12-19 Jakub Jelinek <jakub@redhat.com>
* nscd/connections.c (nscd_run): Shut up warning.
diff --git a/elf/rtld.c b/elf/rtld.c
index a05034e..9b08b96 100644
--- a/elf/rtld.c
+++ b/elf/rtld.c
@@ -90,7 +90,7 @@ struct rtld_global _rtld_global =
/* Get architecture specific initializer. */
#include <dl-procinfo.c>
._dl_debug_fd = STDERR_FILENO,
-#if 1
+#ifndef RTLD_CORRECT_DYNAMIC_WEAK
/* XXX I know about at least one case where we depend on the old
weak behavior (it has to do with librt). Until we get DSO
groups implemented we have to make this the default.
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index a5760c7..fb66538 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -1,3 +1,8 @@
+2002-12-19 Jakub Jelinek <jakub@redhat.com>
+
+ * forward.c (pthread_attr_init_2_0, pthread_attr_init_2_1):
+ Use return 0 as 6th argument to FORWARD4.
+
2002-12-18 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/useldt.h (FLOATING_STACKS, ARCH_STACK_MAX_SIZE): Only
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 2ab96bc..86fd4ed 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,8 @@
+2002-12-19 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/unix/sysv/linux/i386/dl-sysdep.h: Define
+ RTLD_CORRECT_DYNAMIC_WEAK.
+
2002-12-19 Jakub Jelinek <jakub@redhat.com>
* forward.c (pthread_attr_init_2_0, pthread_attr_init_2_1):
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h b/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h
index 0481fce..8f541c5 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h
+++ b/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h
@@ -30,6 +30,14 @@
#define RTLD_PRIVATE_ERRNO 1
+/* This configuration has in libc.so cancellable functions and other
+ functions which have to behave differently if the application uses
+ threads. It is not necessary that the thread library's definitions
+ are used. Therefore we can finally enabled the correct handling
+ of weak definitions in ld.so. See rtld.c. */
+
+#define RTLD_CORRECT_DYNAMIC_WEAK 1
+
/* Traditionally system calls have been made using int $0x80. A
second method was introduced which, if possible, will use the