This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
2_11 branch configuration changes for new FreeBSD platforms
- To: GNU Binutils mailing list <binutils at sourceware dot cygnus dot com>
- Subject: 2_11 branch configuration changes for new FreeBSD platforms
- From: "David O'Brien" <obrien at FreeBSD dot org>
- Date: Sun, 18 Feb 2001 02:33:14 -0800
- Organization: The NUXI BSD group
- Reply-To: obrien at FreeBSD dot org
Permission to commit this to the 2_11 branch (and main-line trunk also)?
Index: bfd/ChangeLog
===================================================================
RCS file: /cvs/src/src/bfd/ChangeLog,v
retrieving revision 1.749.2.13
diff -u -r1.749.2.13 ChangeLog
--- ChangeLog 2001/02/14 14:58:33 1.749.2.13
+++ ChangeLog 2001/02/18 10:28:37
@@ -1,3 +1,12 @@
+2001-02-18 David O'Brien <obrien@FreeBSD>
+
+ * configure.in: Recognize FreeBSD/arm, FreeBSD/PowerPC, and treat
+ FreeBSD/i386-CURRENT differently until I can figure out the needed
+ corefile changes.
+ * configure: Regenerate.
+ * config.bfd: Recognize FreeBSD/x86-64, FreeBSD/ia64, FreeBSD/arm,
+ FreeBSD/PowerPC, and FreeBSD/sparc64.
+
2001-02-14 Philip Blundell <pb@futuretv.com>
From 2001-02-06 H.J. Lu <hjl@gnu.org>
Index: bfd/config.bfd
===================================================================
RCS file: /cvs/src/src/bfd/config.bfd,v
retrieving revision 1.48
diff -u -r1.48 config.bfd
--- config.bfd 2001/01/14 11:12:52 1.48
+++ config.bfd 2001/02/18 10:28:37
@@ -84,7 +84,7 @@
alpha*-*-*)
targ_defvec=ecoffalpha_little_vec
;;
- ia64*-*-linux-gnu* | ia64*-*-elf*)
+ ia64*-*-freebsd* | ia64*-*-linux-gnu* | ia64*-*-elf*)
targ_defvec=bfd_elf64_ia64_little_vec
targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec"
;;
@@ -92,7 +92,7 @@
targ_defvec=bfd_elf64_ia64_big_vec
targ_selvecs="bfd_elf32_ia64_big_vec"
;;
- sparc64-*-netbsd*)
+ sparc64-*-freebsd* | sparc64-*-netbsd*)
targ_defvec=bfd_elf64_sparc_vec
targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
;;
@@ -147,7 +147,7 @@
targ_defvec=bfd_elf32_bigarm_vec
targ_selvecs=bfd_elf32_littlearm_vec
;;
- arm-*-elf | arm*-*-linux-gnu* | arm*-*-conix* | arm*-*-uclinux*)
+ arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | arm*-*-uclinux*)
targ_defvec=bfd_elf32_littlearm_vec
targ_selvecs=bfd_elf32_bigarm_vec
;;
@@ -364,6 +364,10 @@
targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec"
;;
#ifdef BFD64
+ x86_64-*-freebsd*)
+ targ_defvec=bfd_elf64_x86_64_vec
+ targ_selvecs="bfd_elf32_i386_vec i386coff_vec bfd_efi_app_ia32_vec"
+ ;;
x86_64-*-linux-gnu*)
targ_defvec=bfd_elf64_x86_64_vec
targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec"
Index: bfd/configure.in
===================================================================
RCS file: /cvs/src/src/bfd/configure.in,v
retrieving revision 1.40
diff -u -r1.40 configure.in
--- configure.in 2001/01/14 11:12:52 1.40
+++ configure.in 2001/02/18 10:28:39
@@ -144,6 +144,7 @@
;;
alpha*-*-netbsd*) COREFILE=netbsd-core.lo ;;
alpha*-*-*) COREFILE=osf-core.lo ;;
+ arm-*-freebsd*) COREFILE='' ;;
arm-*-riscix) COREFILE=trad-core.lo ;;
hppa*-*-hpux*) COREFILE=hpux-core.lo ;;
hppa*-*-hiux*) COREFILE=hpux-core.lo ;;
@@ -169,12 +170,18 @@
TRAD_HEADER='"hosts/symmetry.h"'
;;
changequote(,)dnl
- i[3456]86-*-bsd* | i[3456]86-*-freebsd*)
+ i[3456]86-*-bsd* | i[34567]86-*-freebsd[1234] | i[34567]86-*-freebsd[1234]\.* | i[34567]86-*-freebsd*aout*)
changequote([,])dnl
COREFILE=trad-core.lo
TRAD_HEADER='"hosts/i386bsd.h"'
;;
changequote(,)dnl
+ i[3456]86-*-freebsd*)
+changequote([,])dnl
+ COREFILE=''
+ TRAD_HEADER='"hosts/i386bsd.h"'
+ ;;
+changequote(,)dnl
i[3456]86-*-netbsd* | i[3456]86-*-openbsd*)
changequote([,])dnl
COREFILE=netbsd-core.lo
@@ -301,6 +308,7 @@
powerpc-*-aix4*) COREFILE=rs6000-core.lo ;;
powerpc-*-aix*) COREFILE=rs6000-core.lo ;;
powerpc-*-beos*) ;;
+ powerpc-*-freebsd*) COREFILE='' ;;
powerpc-*-netbsd*) COREFILE=netbsd-core.lo ;;
sparc-*-netbsd* | sparc-*-openbsd*)
COREFILE=netbsd-core.lo
Index: gas/ChangeLog
===================================================================
RCS file: /cvs/src/src/gas/ChangeLog,v
retrieving revision 1.747.2.12
diff -u -r1.747.2.12 ChangeLog
--- ChangeLog 2001/02/13 11:21:32 1.747.2.12
+++ ChangeLog 2001/02/18 10:28:41
@@ -1,3 +1,10 @@
+001-02-18 David O'Brien <obrien@FreeBSD.org>
+
+ * configure.in (cpu_type, arch): Add a generic FreeBSD specification as
+ all FreeBSD platforms should look the same at this level.
+ * configure: Rebuilt.
+ * config/tc-i386.c: Add support for old FreeBSD a.out hosts.
+
2001-02-13 Alan Modra <alan@linuxcare.com.au>
* expr.c (operator): Don't bump input_line_pointer for two char
Index: gas/configure.in
===================================================================
RCS file: /cvs/src/src/gas/configure.in,v
retrieving revision 1.55
diff -u -r1.55 configure.in
--- configure.in 2001/01/18 12:25:37 1.55
+++ configure.in 2001/02/18 10:28:42
@@ -247,7 +247,6 @@
i386-*-freebsdaout* | i386-*-freebsd[12].* | i386-*-freebsd[12])
fmt=aout em=386bsd ;;
changequote([,])dnl
- i386-*-freebsd*) fmt=elf bfd_gas=yes ;;
i386-*-coff | i386-*-sysv* | i386-*-sco3.2v5*coff | i386-*-isc*)
fmt=coff ;;
i386-*-sco3.2v5*) fmt=elf
@@ -437,6 +436,7 @@
w65-*-*) fmt=coff ;;
+ *-*-freebsd*) fmt=elf bfd_gas=yes ;;
*-*-aout | *-*-scout)
fmt=aout ;;
*-*-nindy*)
Index: gas/config/tc-i386.h
===================================================================
RCS file: /cvs/src/src/gas/config/tc-i386.h,v
retrieving revision 1.23
diff -u -r1.23 tc-i386.h
--- tc-i386.h 2001/01/13 23:37:57 1.23
+++ tc-i386.h 2001/02/18 10:28:42
@@ -75,6 +75,9 @@
#define TARGET_MACH (i386_mach ())
extern unsigned long i386_mach PARAMS ((void));
+#ifdef TE_FreeBSD
+#define AOUT_TARGET_FORMAT "a.out-i386-freebsd"
+#endif
#ifdef TE_NetBSD
#define AOUT_TARGET_FORMAT "a.out-i386-netbsd"
#endif
Index: ld/ChangeLog
===================================================================
RCS file: /cvs/src/src/ld/ChangeLog,v
retrieving revision 1.343.2.4
diff -u -r1.343.2.4 ChangeLog
--- ChangeLog 2001/02/18 02:19:27 1.343.2.4
+++ ChangeLog 2001/02/18 10:28:51
@@ -1,3 +1,8 @@
+001-02-18 David O'Brien <obrien@FreeBSD.org>
+
+ * configure.tgt: Add FreeBSD/Alpha, FreeBSD/x86-64, FreeBSD/ia64,
+ FreeBSD/PowerPC, FreeBSD/arm, and FreeBSD/sparc64 entries.
+
2001-02-17 David O'Brien <obrien@FreeBSD.org>
* configure.host: Add a generic FreeBSD configuration entry such that
Index: ld/configure.tgt
===================================================================
RCS file: /cvs/src/src/ld/configure.tgt,v
retrieving revision 1.42.2.1
diff -u -r1.42.2.1 configure.tgt
--- configure.tgt 2001/02/11 12:05:28 1.42.2.1
+++ configure.tgt 2001/02/18 10:28:51
@@ -40,6 +40,12 @@
sparc*-*-coff) targ_emul=coff_sparc ;;
sparc*-*-elf) targ_emul=elf32_sparc ;;
sparc*-*-sysv4*) targ_emul=elf32_sparc ;;
+sparc64-*-freebsd* | sparcv9-*-freebsd*)
+ targ_emul=elf64_sparc
+ targ_extra_emuls="elf32_sparc"
+ targ_extra_libpath=$targ_extra_emuls
+ tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`
+ ;;
sparc*-*-linux*aout*) targ_emul=sparclinux
targ_extra_emuls="elf32_sparc sun4"
tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/aout//'`
@@ -89,6 +95,7 @@
i960-*-rtems*) targ_emul=gld960coff ;;
i960-*-elf*) targ_emul=elf32_i960 ;;
ia64-*-elf*) targ_emul=elf64_ia64 ;;
+ia64-*-freebsd*) targ_emul=elf64_ia64 ;;
ia64-*-linux*) targ_emul=elf64_ia64 ;;
m32r-*-*) targ_emul=m32relf ;;
m68hc11-*-*|m6811-*-*) targ_emul=m68hc11elf
@@ -140,6 +147,8 @@
i[3456]86-*-freebsdaout* | i[3456]86-*-freebsd[12].* | i[3456]86-*-freebsd[12])
targ_emul=i386bsd ;;
i[3456]86-*-freebsd*) targ_emul=elf_i386 ;;
+x86_64-*-freebsd*) targ_emul=elf_x86_64
+ targ_extra_emuls=elf_i386 ;;
i[3456]86-*-sysv*) targ_emul=i386coff ;;
i[3456]86-*-ptx*) targ_emul=i386coff ;;
i[3456]86-*-mach*) targ_emul=i386mach ;;
@@ -168,6 +177,7 @@
arm-*-aout | armel-*-aout) targ_emul=armaoutl ;;
armeb-*-aout) targ_emul=armaoutb ;;
arm-*-coff) targ_emul=armcoff ;;
+arm-*-freebsd*) targ_emul=armelf ;;
arm-*-netbsd*) targ_emul=armnbsd ;;
arm-*-rtems*) targ_emul=armelf ;;
arm-*-elf) targ_emul=armelf ;;
@@ -268,6 +278,7 @@
mips*-*-sysv4*) targ_emul=elf32btsmip ;;
mn10200-*-*) targ_emul=mn10200 ;;
mn10300-*-*) targ_emul=mn10300 ;;
+alpha*-*-freebsd*) targ_emul=elf64alpha targ_extra_emuls=alpha ;;
alpha*-*-linuxecoff*) targ_emul=alpha targ_extra_emuls=elf64alpha
tdir_elf64alpha=`echo ${targ_alias} | sed -e 's/ecoff//'`
;;
@@ -281,6 +292,9 @@
z8k-*-coff) targ_emul=z8002; targ_extra_emuls=z8001 ;;
ns32k-pc532-mach* | ns32k-pc532-ux*) targ_emul=pc532macha ;;
ns32k-pc532-netbsd* | ns32k-pc532-lites*) targ_emul=ns32knbsd ;;
+powerpc-*-freebsd*) targ_emul=elf32ppc;
+ targ_extra_emuls="elf32ppc elf32ppcsim";
+ targ_extra_libpath=elf32ppc ;;
powerpc-*-linux-gnu*) targ_emul=elf32ppclinux;
targ_extra_emuls="elf32ppc elf32ppcsim";
targ_extra_libpath=elf32ppc ;;