aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ld/ChangeLog8
-rw-r--r--ld/Makefile.am8
-rw-r--r--ld/Makefile.in8
-rw-r--r--ld/configure.tgt4
-rw-r--r--ld/emulparams/shelf_linux.sh14
-rw-r--r--ld/emulparams/shlelf_linux.sh14
6 files changed, 56 insertions, 0 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 574884b..e9ca684 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,11 @@
+2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.tgt (sh-*-linux*): Added.
+ * Makefile.am: Added eshelf_linux and eshlelf_linux.
+ * Makefile.in: Rebuilt.
+ * emulparams/shelf_linux.sh: New file.
+ * emulparams/shlelf_linux.sh: New file.
+
2000-09-06 Alan Modra <alan@linuxcare.com.au>
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
diff --git a/ld/Makefile.am b/ld/Makefile.am
index 3f0a674..1ca480d 100644
--- a/ld/Makefile.am
+++ b/ld/Makefile.am
@@ -216,6 +216,8 @@ ALL_EMULATIONS = \
esa29200.o \
esh.o \
eshelf.o \
+ eshelf_linux.o \
+ eshlelf_linux.o \
eshl.o \
eshlelf.o \
eshpe.o \
@@ -696,6 +698,12 @@ esh.c: $(srcdir)/emulparams/sh.sh \
eshelf.c: $(srcdir)/emulparams/shelf.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} shelf "$(tdir_shelf)"
+eshelf_linux.c: $(srcdir)/emulparams/shelf_linux.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} shelf_linux "$(tdir_shelf_linux)"
+eshlelf_linux.c: $(srcdir)/emulparams/shlelf_linux.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} shlelf_linux "$(tdir_shlelf_linux)"
eshlelf.c: $(srcdir)/emulparams/shlelf.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} shlelf "$(tdir_shlelf)"
diff --git a/ld/Makefile.in b/ld/Makefile.in
index 9f42384..e1863eb 100644
--- a/ld/Makefile.in
+++ b/ld/Makefile.in
@@ -322,6 +322,8 @@ ALL_EMULATIONS = \
esa29200.o \
esh.o \
eshelf.o \
+ eshelf_linux.o \
+ eshlelf_linux.o \
eshl.o \
eshlelf.o \
eshpe.o \
@@ -1408,6 +1410,12 @@ esh.c: $(srcdir)/emulparams/sh.sh \
eshelf.c: $(srcdir)/emulparams/shelf.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} shelf "$(tdir_shelf)"
+eshelf_linux.c: $(srcdir)/emulparams/shelf_linux.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} shelf_linux "$(tdir_shelf_linux)"
+eshlelf_linux.c: $(srcdir)/emulparams/shlelf_linux.sh \
+ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
+ ${GENSCRIPTS} shlelf_linux "$(tdir_shlelf_linux)"
eshlelf.c: $(srcdir)/emulparams/shlelf.sh \
$(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
${GENSCRIPTS} shlelf "$(tdir_shlelf)"
diff --git a/ld/configure.tgt b/ld/configure.tgt
index 269d156..63edf67 100644
--- a/ld/configure.tgt
+++ b/ld/configure.tgt
@@ -184,6 +184,10 @@ h8500-*-hms* | h8500-*-coff*)
targ_emul=h8500
targ_extra_emuls="h8500s h8500b h8500m h8500c"
;;
+sh-*-linux*)
+ targ_emul=shelf_linux
+ targ_extra_emuls=shlelf_linux
+ ;;
sh-*-elf* | sh-*-rtemself*)
targ_emul=shelf
targ_extra_emuls="shlelf sh shl"
diff --git a/ld/emulparams/shelf_linux.sh b/ld/emulparams/shelf_linux.sh
new file mode 100644
index 0000000..d7b7631
--- /dev/null
+++ b/ld/emulparams/shelf_linux.sh
@@ -0,0 +1,14 @@
+SCRIPT_NAME=elf
+OUTPUT_FORMAT="elf32-shbig-linux"
+TEXT_START_ADDR=0x400000
+MAXPAGESIZE=0x10000
+ARCH=sh
+MACHINE=
+TEMPLATE_NAME=elf32
+GENERATE_SHLIB_SCRIPT=yes
+
+DATA_START_SYMBOLS='__data_start = . ;';
+
+OTHER_READWRITE_SECTIONS='
+ .note.ABI-tag : { *(.note.ABI-tag) }
+'
diff --git a/ld/emulparams/shlelf_linux.sh b/ld/emulparams/shlelf_linux.sh
new file mode 100644
index 0000000..191def7
--- /dev/null
+++ b/ld/emulparams/shlelf_linux.sh
@@ -0,0 +1,14 @@
+SCRIPT_NAME=elf
+OUTPUT_FORMAT="elf32-sh-linux"
+TEXT_START_ADDR=0x400000
+MAXPAGESIZE=0x10000
+ARCH=sh
+MACHINE=
+TEMPLATE_NAME=elf32
+GENERATE_SHLIB_SCRIPT=yes
+
+DATA_START_SYMBOLS='__data_start = . ;';
+
+OTHER_READWRITE_SECTIONS='
+ .note.ABI-tag : { *(.note.ABI-tag) }
+'