glibc 2.2.4pre2

Andreas Jaeger aj@suse.de
Wed Aug 8 09:14:00 GMT 2001


Jakub Jelinek <jakub@redhat.com> writes:

> On Wed, Aug 08, 2001 at 10:10:18AM +0200, Andreas Jaeger wrote:
> > > Does atexit work properly there? If yes, the better.
>> 
>> It passes the testsuite
>
> That's because:
>
>   if (&__dso_handle == NULL)
>     {
>       puts ("__dso_handle not available, cannot perform the test");
>       exit (0);
>     }
>
> but that means atexit won't work properly (it will not run the exit handlers
> at dlclose time).
>
>> - but we do not have yet the __dso_handle patch in.
>> 
>> Jakub, can you post the patch again - or send a URL?
>
> http://gcc.gnu.org/ml/gcc/2001-06/msg00748.html

The patch has one bug, you do not include "auto-host.h" and therefore
HAVE_GAS_HIDDEN is not defined at all :-(.

Here's a patch on top of it.  I'm testing glibc now with a GCC
compiled with this patch,

Andreas

--- gcc-2.95.x/gcc/crtstuff.c.jj    Tue Mar 23 01:43:51 1999
+++ gcc-2.95.x/gcc/crtstuff.c       Wed Jun 13 12:39:14 2001
@@ -55,6 +55,7 @@ Boston, MA 02111-1307, USA.  */
 #include "defaults.h"
 #include <stddef.h>
 #include "frame.h"
+#include "auto-host.h"
 
 /* We do not want to add the weak attribute to the declarations of these
    routines in frame.h because that will cause the definition of these

-- 
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE7cWVhOJpWPMJyoSYRAr51AJ49He/RPtwx6ryo/sgJdGF5+U1fqwCdGytz
SGYEE8rT4EDL2wIFO+sK3+w=
=RYxP
-----END PGP SIGNATURE-----From aj@suse.de Wed Aug 08 09:39:00 2001
From: Andreas Jaeger <aj@suse.de>
To: Jakub Jelinek <jakub@redhat.com>
Cc: Thorsten Kukuk <kukuk@suse.de>, "Frédéric L. W. Meunier" <0@pervalidus.net>, libc-alpha@sources.redhat.com
Subject: Re: glibc 2.2.4pre2
Date: Wed, 08 Aug 2001 09:39:00 -0000
Message-id: <hoae1a33qj.fsf@gee.suse.de>
References: <20010808033623.E135@pervalidus.net> <20010808094508.A18690@suse.de> <20010808100053.T12476@sunsite.ms.mff.cuni.cz> <hopua755w5.fsf@gee.suse.de> <20010808102608.U12476@sunsite.ms.mff.cuni.cz> <hozo9a34ww.fsf@gee.suse.de>
X-SW-Source: 2001-08/msg00097.html
Content-length: 1477

Andreas Jaeger <aj@suse.de> writes:

> Jakub Jelinek <jakub@redhat.com> writes:
>
>> On Wed, Aug 08, 2001 at 10:10:18AM +0200, Andreas Jaeger wrote:
>> > > Does atexit work properly there? If yes, the better.
>>> 
>>> It passes the testsuite
>>
>> That's because:
>>
>>   if (&__dso_handle == NULL)
>>     {
>>       puts ("__dso_handle not available, cannot perform the test");
>>       exit (0);
>>     }
>>
>> but that means atexit won't work properly (it will not run the exit handlers
>> at dlclose time).
>>
>>> - but we do not have yet the __dso_handle patch in.
>>> 
>>> Jakub, can you post the patch again - or send a URL?
>>
>> http://gcc.gnu.org/ml/gcc/2001-06/msg00748.html
>
> The patch has one bug, you do not include "auto-host.h" and therefore
> HAVE_GAS_HIDDEN is not defined at all :-(.
>
> Here's a patch on top of it.  I'm testing glibc now with a GCC
> compiled with this patch,


Does this look correct?  

gee:/builds/glibc/main-gcc-2.95/dlfcn:[0]$ readelf -a modcxaatexit.so  |grep dso 
    58: 00001954     0 OBJECT  LOCAL  HIDDEN   15 __dso_handle

I still get:

gee:/builds/glibc/main-gcc-2.95/dlfcn:[1]$ LD_LIBRARY_PATH=. ./tstcxaatexit
This is bar
module unload didn't change `v'
Segmentation fault

:-(

Andreas
-- 
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE7cWtWOJpWPMJyoSYRArcBAJoDKcgal7W+2W5FaP7xTtfar27BtgCfdLsL
knGRHAX++vbhbQm5ZONATv8=
=S44o
-----END PGP SIGNATURE-----From chris@ludwig-alpha.unil.ch Wed Aug 08 09:52:00 2001
From: Christian Iseli <chris@ludwig-alpha.unil.ch>
To: Jakub Jelinek <jakub@redhat.com>
Cc: Ben Collins <bcollins@debian.org>, GNU libc testers <libc-alpha@sources.redhat.com>
Subject: Re: [PATCH] Next attempt on the gcc3 vs glibc2.2.4 patch 
Date: Wed, 08 Aug 2001 09:52:00 -0000
Message-id: <200108081652.SAA10804@ludwig-alpha.unil.ch>
References: <20010806152758.N3862@devserv.devel.redhat.com>
X-SW-Source: 2001-08/msg00098.html
Content-length: 2014

Folks,

Today I tried compiling latest glibc-CVS + Jakub's patch on my linux/alpha box.

It seems I hit the atexit problem, but I don't understand why.  I thougth it 
was fixed in gcc-3.0.1-CVS ?  Am I missing a patch somewhere ?

Anyway, here is some info:
alpha_chris$ uname -a
Linux ludwig-alpha 2.4.6-ac2 #5 Thu Jul 12 14:45:17 CEST 2001 alpha unknown
alpha_chris$ ld -V
GNU ld version 2.11.90 (with BFD 2.11.90)
  Supported emulations:
   elf64alpha
   alpha
alpha_chris$ gcc -v
Reading specs from /usr/lib/gcc-lib/alphaev56-unknown-linux-gnu/3.0.1/specs
Configured with: ../gcc/configure --prefix=/usr --enable-shared --enable-threads --with-system-zlib alphaev56-unknown-linux-gnu
Thread model: posix
gcc version 3.0.1 20010808 (prerelease)
alpha_chris$ rpm -q glibc
glibc-2.2-CI.1


the tail of the make log ends thusly:
/usr/src/redhat/BUILD/glibc-build-alpha/elf/ld-linux.so.2
 --library-path /usr/src/redhat/BUILD/glibc-build-alpha
:/usr/src/redhat/BUILD/glibc-build-alpha/math
:/usr/src/redhat/BUILD/glibc-build-alpha/elf
:/usr/src/redhat/BUILD/glibc-build-alpha/dlfcn
:/usr/src/redhat/BUILD/glibc-build-alpha/nss
:/usr/src/redhat/BUILD/glibc-build-alpha/nis
:/usr/src/redhat/BUILD/glibc-build-alpha/rt
:/usr/src/redhat/BUILD/glibc-build-alpha/resolv
:/usr/src/redhat/BUILD/glibc-build-alpha/crypt
:/usr/src/redhat/BUILD/glibc-build-alpha/linuxthreads
 /usr/src/redhat/BUILD/glibc-build-alpha/sunrpc/rpcgen
 -Y `gcc -print-file-name=cpp | sed 's|/cpp$||'` -c
 rpcsvc/bootparam_prot.x
 -o /usr/src/redhat/BUILD/glibc-build-alpha/sunrpc/xbootparam_prot.T
/usr/src/redhat/BUILD/glibc-build-alpha/sunrpc/rpcgen:
 error while loading shared libraries:
 /usr/src/redhat/BUILD/glibc-build-alpha/libc.so.6.1:
 undefined symbol: atexit
make[2]: *** [/usr/src/redhat/BUILD/glibc-build-alpha/sunrpc/xbootparam_prot.stmp] Error 127
make[2]: Leaving directory `/usr/src/redhat/BUILD/libc/sunrpc'
make[1]: *** [sunrpc/others] Error 2
make[1]: Leaving directory `/usr/src/redhat/BUILD/libc'
make: *** [all] Error 2




More information about the Libc-alpha mailing list