This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: [Patch] glibc-2.3 compile --with-tls using gcc-3.2 unpached
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Stefan Jones <stefan dot jones at multigig dot com>
- Cc: libc-alpha at sources dot redhat dot com
- Date: Wed, 9 Oct 2002 16:18:16 +0200
- Subject: Re: [Patch] glibc-2.3 compile --with-tls using gcc-3.2 unpached
- References: <1034164392.7471.11.camel@sajX.multigig>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Wed, Oct 09, 2002 at 12:53:10PM +0100, Stefan Jones wrote:
> Dear Sirs,
> If you use the correct version of binutils (2.13.90.0.4) and gcc (3.2)
> you get compiler error with undefinded sysbols in
> glibc-2.3/include/ctype.h
>
> This is because of a typo in glibc-2.3/sysdeps/generic/bits/libc-tsd.h.
I think you're right, but missed the other occurence of that in the
same file.
> Also the asm instructions in glibc-2.3/sysdeps/i386/elf/configure seem
> wrong (another typo, but I don't do assembler) thus the --with-tls
> configure check always fails.
This is not a typo, unpatched 2.13.90.0.4 is simply too old for TLS.
You need TLS patches at least till 2002-10-01.
> --- glibc-2.3/sysdeps/generic/bits/libc-tsd.h.orig 2002-10-09 11:10:01.000000000 +0000
> +++ glibc-2.3/sysdeps/generic/bits/libc-tsd.h 2002-10-09 11:08:56.000000000 +0000
> @@ -60,7 +60,7 @@
> #else
> # define __libc_tsd_define(CLASS, KEY) CLASS void *__libc_tsd_##KEY##_data;
>
> -# define __libc_tsd_address(KEY) (&__libc_tsd_##KEY)
> +# define __libc_tsd_address(KEY) (&__libc_tsd_##KEY##_data)
> # define __libc_tsd_get(KEY) (__libc_tsd_##KEY##_data)
> # define __libc_tsd_set(KEY, VALUE) (__libc_tsd_##KEY##_data = (VALUE))
> #endif
Jakub