From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24437 invoked by alias); 10 May 2003 14:24:34 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 24426 invoked from network); 10 May 2003 14:24:33 -0000 Received: from unknown (HELO localhost.redhat.com) (24.157.166.107) by sources.redhat.com with SMTP; 10 May 2003 14:24:33 -0000 Received: from redhat.com (localhost [127.0.0.1]) by localhost.redhat.com (Postfix) with ESMTP id 0C3672B2F; Sat, 10 May 2003 09:45:36 -0400 (EDT) Message-ID: <3EBD027F.8010403@redhat.com> Date: Sat, 10 May 2003 14:24:00 -0000 From: Andrew Cagney User-Agent: Mozilla/5.0 (X11; U; NetBSD macppc; en-US; rv:1.0.2) Gecko/20030223 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Mark Kettenis , Michael Snyder Cc: gdb-patches@sources.redhat.com Subject: Re: [PATCH/RFC] Fix asm-source.exp on FreeBSD References: <200305101105.h4AB5loE042084@elgar.kettenis.dyndns.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2003-05/txt/msg00160.txt.bz2 > Ever since asm-source.exp was changed to do the final link using > gdb_compile, the tests have been failing for me. The problem is that > FreeBSD's crt1.o defines some symbols (__progname, environ) that are > referenced by libc.so, which makes the final link fail. Compiling > statically fixes the problem. > > I'm fairly certain that NetBSD and probably OpenBSD suffer from the > same problem, so perhaps I should change the regexp to *-*-*bsd* > instead. Can someone check whether that's indeed the case. > > I've been using this patch in my local tree for quite some time now, > so if I don't see any objections in the coming days, I'll check this > in. Honestly, I think it should be put back to using the linker directly. The intent of the test was to exercise the assembler functionality, when there was no C compiler. I confirmed this with Michael, the testsuite's author. I've never had the time to do it though :-( Andrew > Index: testsuite/ChangeLog > from Mark Kettenis > > * gdb.asm/asm-source.exp: Make sure the final link succeeds on > FreeBSD. > > Index: testsuite/gdb.asm/asm-source.exp > =================================================================== > RCS file: /cvs/src/src/gdb/testsuite/gdb.asm/asm-source.exp,v > retrieving revision 1.33 > diff -u -p -r1.33 asm-source.exp > --- testsuite/gdb.asm/asm-source.exp 7 May 2003 21:52:53 -0000 1.33 > +++ testsuite/gdb.asm/asm-source.exp 10 May 2003 10:55:52 -0000 > @@ -99,6 +99,15 @@ if { "${asm-arch}" == "" } { > gdb_suppress_entire_file "Assembly source test -- not implemented for this target." > } > > +# On FreeBSD, crt1.o the final link will fail because of unresolved > +# symbols. It turns out that libc.so references symbols that are > +# normally provided by crt1.o, which isn't linked in since we specify > +# -nostartfiles. Using -nostdlib doesn't help since target_compile > +# automatically adds -lm. Linking statically avoids this mess. > +if [istarget "*-*-freebsd*"] then { > + set link-flags "-static" > +} > + > # Watch out, we are invoking the assembler, but the testsuite sets multilib > # switches according to compiler syntax. If we pass these options straight > # to the assembler, they won't always make sense. If we don't pass them to >