Bug#413787: libc0.3: TLS patch
Package: libc0.3
Version: 2.5exp6
Severity: normal
Tags: patch
Hi,
Thanks to Barry's long glibc builds, here is at last a patch that builds
a tls/__thread -enabled and working glibc.
The attached patch may be applied as soon as now, but do _not_ drop
--without-tls and --without-__thread yet, because hurd's libpthread.so
doesn't initialize TLS yet, and hence that would break all multithreaded
applications. I'm now working on the Hurd part, I'll mail the bug when
it is uploaded.
Samuel
-- System Information:
Debian Release: 4.0
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-xen
Locale: LANG=fr_FR@euro, LC_CTYPE=fr_FR@euro (charmap=ISO-8859-15)
diff -urN glibc-2.5-orig/include/errno.h glibc-2.5/include/errno.h
--- glibc-2.5-orig/include/errno.h 2006-02-02 09:37:58.000000000 +0000
+++ glibc-2.5/include/errno.h 2007-03-04 15:53:25.000000000 +0000
@@ -21,7 +21,7 @@
# include <tls.h> /* Defines USE_TLS. */
-# if USE___THREAD
+# if USE___THREAD && !defined(__GNU__)
# undef errno
# ifndef NOT_IN_libc
# define errno __libc_errno
diff -urN glibc-2.5-orig/sysdeps/mach/i386/sysdep.h glibc-2.5/sysdeps/mach/i386/sysdep.h
--- glibc-2.5-orig/sysdeps/mach/i386/sysdep.h 2001-07-06 04:56:00.000000000 +0000
+++ glibc-2.5/sysdeps/mach/i386/sysdep.h 2007-03-01 20:23:59.000000000 +0000
@@ -16,6 +16,9 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#include <dl-sysdep.h>
+#include <tls.h>
+
#define LOSE asm volatile ("hlt")
#define SNARF_ARGS(entry_sp, argc, argv, envp) \
Reply to: