This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RFA: ARM big-endian targets


This patch adds ld support for the arm*b-*-linux-gnu configuration, i.e.
default big endian.  The assembler already does the right thing, so the
patch is really quite trivial.

OK?  Should I add armeb-elf while I'm here?

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer

2003-05-06  Daniel Jacobowitz  <drow@mvista.com>

	* Makefile.am (ALL_EMULATIONS): Add earmelfb.o and earmelfb_linux.o.
	(earmelfb.c, earmelfb_linux.c): New rules.
	* Makefile.in: Regenerated.
	* emulparams/armelfb.sh, emulparams/armelfb_linux.sh: New files.

diff -Nurp binutils-2.13.90.orig/ld/Makefile.am binutils-2.13.90/ld/Makefile.am
--- binutils-2.13.90.orig/ld/Makefile.am	2003-04-24 08:36:07.000000000 -0400
+++ binutils-2.13.90/ld/Makefile.am	2003-05-03 13:04:18.000000000 -0400
@@ -118,8 +118,10 @@ ALL_EMULATIONS = \
 	earmaoutl.o \
 	earmcoff.o \
 	earmelf.o \
+	earmelfb.o \
 	earmelf_fbsd.o \
 	earmelf_linux.o \
+	earmelfb_linux.o \
 	earmelf_nbsd.o \
 	earmelfb_nbsd.o \
 	earmelf_oabi.o \
@@ -457,6 +459,10 @@ earmelf.c: $(srcdir)/emulparams/armelf.s
   $(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/armelf.em \
   $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
 	${GENSCRIPTS} armelf "$(tdir_armelf)"
+earmelfb.c: $(srcdir)/emulparams/armelfb.sh $(srcdir)/emulparams/armelf.sh \
+  $(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/armelf.em \
+  $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
+	${GENSCRIPTS} armelfb "$(tdir_armelfb)"
 earmelf_oabi.c: $(srcdir)/emulparams/armelf_oabi.sh \
   $(srcdir)/emultempl/armelf_oabi.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
 	${GENSCRIPTS} armelf_oabi "$(tdir_armelf)"
@@ -469,6 +475,11 @@ earmelf_linux.c: $(srcdir)/emulparams/ar
   $(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/armelf.em \
   $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
 	${GENSCRIPTS} armelf_linux "$(tdir_armelf_linux)"
+earmelfb_linux.c: $(srcdir)/emulparams/armelfb_linux.sh \
+  $(srcdir)/emulparams/armelf_linux.sh \
+  $(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/armelf.em \
+  $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
+	${GENSCRIPTS} armelfb_linux "$(tdir_armelfb_linux)"
 earmelf_nbsd.c: $(srcdir)/emulparams/armelf_nbsd.sh \
   $(srcdir)/emulparams/armelf.sh \
   $(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/armelf.em \
diff -Nurp binutils-2.13.90.orig/ld/configure.tgt binutils-2.13.90/ld/configure.tgt
--- binutils-2.13.90.orig/ld/configure.tgt	2003-05-03 12:45:05.000000000 -0400
+++ binutils-2.13.90/ld/configure.tgt	2003-05-03 12:54:36.000000000 -0400
@@ -244,6 +244,7 @@ arm-*-elf)		targ_emul=armelf ;;
 arm-*-kaos*)		targ_emul=armelf ;;
 arm9e-*-elf)		targ_emul=armelf ;;
 arm-*-oabi)		targ_emul=armelf_oabi ;;
+arm*b-*-linux-gnu*)	targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
 arm*-*-linux-gnu*)	targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
 arm*-*-uclinux*)	targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
 arm*-*-conix*)		targ_emul=armelf ;;
diff -Nurp binutils-2.13.90.orig/ld/emulparams/armelfb.sh binutils-2.13.90/ld/emulparams/armelfb.sh
--- binutils-2.13.90.orig/ld/emulparams/armelfb.sh	1969-12-31 19:00:00.000000000 -0500
+++ binutils-2.13.90/ld/emulparams/armelfb.sh	2003-05-03 12:54:36.000000000 -0400
@@ -0,0 +1,2 @@
+. ${srcdir}/emulparams/armelf.sh
+OUTPUT_FORMAT="elf32-bigarm"
diff -Nurp binutils-2.13.90.orig/ld/emulparams/armelfb_linux.sh binutils-2.13.90/ld/emulparams/armelfb_linux.sh
--- binutils-2.13.90.orig/ld/emulparams/armelfb_linux.sh	1969-12-31 19:00:00.000000000 -0500
+++ binutils-2.13.90/ld/emulparams/armelfb_linux.sh	2003-05-03 12:54:36.000000000 -0400
@@ -0,0 +1,2 @@
+. ${srcdir}/emulparams/armelf_linux.sh
+OUTPUT_FORMAT="elf32-bigarm"


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]