This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] add FreeBSD-specific `ld' emulations
- From: Alexandre Oliva <aoliva at redhat dot com>
- To: obrien at FreeBSD dot org, gcc-patches at gcc dot gnu dot org
- Cc: GNU Binutils mailing list <binutils at sources dot redhat dot com>
- Date: 24 Feb 2002 10:09:36 -0300
- Subject: Re: [PATCH] add FreeBSD-specific `ld' emulations
- Organization: GCC Team, Red Hat
- References: <20020217213444.A85432@dragon.nuxi.com>
On Feb 18, 2002, "David O'Brien" <obrien@FreeBSD.org> wrote:
> 2002-02-17 David O'Brien <obrien@FreeBSD.org>
> * Makefile.in: Add new files earmelf_fbsd, eelf32ppc_fbsd,
> eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
> and eelf64alpha_fbsd.
> * configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd,
> x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd):
> use a FreeBSD-specific emulation rather than the psABI one.
> * emulparams/elf_fbsd.sh (ELF_INTERPRETER_NAME): Set appropriate value
> for all FreeBSD ELF systems.
> * emulparams/armelf_fbsd.sh: Bridge elf_fbsd.sh and the "native" psABI
> emulation.
> * emulparams/elf32ppc_fbsd.sh: Likewise.
> * emulparams/elf64_ia64_fbsd.sh: Likewise.
> * emulparams/elf64_sparc_fbsd.sh: Likewise.
> * emulparams/elf64alpha_fbsd.sh: Likewise.
> * emulparams/elf_i386_fbsd.sh: Likewise.
> * emulparams/elf_x86_64_fbsd.sh: Likewise.
> * emulparams/i386freebsd.sh: Likewise.
This broke my unified-build-tree bootstrap this week. The default
linker script used by gcc, for emulation elf_i386, no longer searches
for libraries in /lib or /usr/lib after this change. This change in
GCC fixed the problem, but I'm not sure it's the way to go. Is it?
Ok to install?
Index: gcc/ChangeLog
from Alexandre Oliva <aoliva@redhat.com>
* config/i386/freebsd.h (LINK_SPEC): Use elf_i386_fbsd as default
linker emulation.
Index: gcc/config/i386/freebsd.h
===================================================================
RCS file: /cvs/gcc/egcs/gcc/config/i386/freebsd.h,v
retrieving revision 1.29
diff -u -p -r1.29 freebsd.h
--- gcc/config/i386/freebsd.h 2001/10/31 14:32:27 1.29
+++ gcc/config/i386/freebsd.h 2002/02/24 13:07:26
@@ -1,5 +1,5 @@
/* Definitions for Intel 386 running FreeBSD with ELF format
- Copyright (C) 1996, 2000 Free Software Foundation, Inc.
+ Copyright (C) 1996, 2000, 2002 Free Software Foundation, Inc.
Contributed by Eric Youngdale.
Modified for stabs-in-ELF by H.J. Lu.
Adapted from GNU/Linux version by John Polstra.
@@ -105,7 +105,7 @@ Boston, MA 02111-1307, USA. */
done. */
#undef LINK_SPEC
-#define LINK_SPEC "-m elf_i386 \
+#define LINK_SPEC "-m elf_i386_fbsd \
%{Wl,*:%*} \
%{v:-V} \
%{assert*} %{R*} %{rpath*} %{defsym*} \
--
Alexandre Oliva Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist Professional serial bug killer