This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: vismain failure
On Tue, Jul 25, 2000 at 08:12:45PM +0200, Mark Kettenis wrote:
> From: Andreas Jaeger <aj@suse.de>
> Date: 25 Jul 2000 18:27:37 +0200
>
> >>>>> Bruno Haible writes:
>
> > Andreas Jaeger writes:
> >> But 2.9.5.0.24 has the features but is buggy and we can't (so far at
> >> least) check for this.
>
> > But you can add an AC_CHECK_PROG_VER test for it in configure.in and
> > refuse to configure glibc if this particular ld version is used.
>
> We could try. The problem is that glibc currently works also with
> older binutils, AFAIK only some versions in between are broken.
>
> Please keep in mind that glibc itself doesn't use the visibility
> stuff. It's just the test that fails.
Glibc doesn't use the ELF visibility directly. But it uses it
indirectly via __dso_handle in crtbegin.o/crtend.o. That is if gcc
is built by the binutils with the ELF visibility support, glibc will
use it:
# find -type f | xargs grep __dso_handle
./linuxthreads/ChangeLog: * pthread.c (pthread_initialize): Test for address of __dso_handle
./linuxthreads/pthread.c:extern void *__dso_handle __attribute__ ((weak));
./linuxthreads/pthread.c: if (&__dso_handle != NULL)
./linuxthreads/pthread.c: __cxa_atexit((void (*) (void *)) pthread_exit_process, NULL, __dso_handle);
H.J.