From c6c8c6dc7a1663096fb14c9bf71316810352a7b2 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Sat, 4 Sep 1999 17:37:36 +0000 Subject: [PATCH] 1999-09-04 Steve Chamberlain * configure.tgt (pjl-*-*, pj-*-*): New targets. * emulparams/pjelf.sh: New file. * emulparams/pjlelf.sh: New file. * scripttempl/pj.sc: New file. * Makefile.am (ALL_EMULATIONS): Add epjelf.o and epjlelf.o. (epjelf.o, epjlelf.o): New targets. * Makefile.in: Rebuild. --- ld/ChangeLog | 10 ++++++++ ld/Makefile.am | 8 ++++++ ld/Makefile.in | 8 ++++++ ld/configure.tgt | 2 ++ ld/emulparams/pjelf.sh | 5 ++++ ld/emulparams/pjlelf.sh | 5 ++++ ld/scripttempl/pj.sc | 55 +++++++++++++++++++++++++++++++++++++++++ 7 files changed, 93 insertions(+) create mode 100644 ld/emulparams/pjelf.sh create mode 100644 ld/emulparams/pjlelf.sh create mode 100644 ld/scripttempl/pj.sc diff --git a/ld/ChangeLog b/ld/ChangeLog index 485c9b9deca..72edd8b7dff 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,13 @@ +1999-09-04 Steve Chamberlain + + * configure.tgt (pjl-*-*, pj-*-*): New targets. + * emulparams/pjelf.sh: New file. + * emulparams/pjlelf.sh: New file. + * scripttempl/pj.sc: New file. + * Makefile.am (ALL_EMULATIONS): Add epjelf.o and epjlelf.o. + (epjelf.o, epjlelf.o): New targets. + * Makefile.in: Rebuild. + Fri Sep 3 20:17:08 1999 Jeffrey A Law (law@cygnus.com) * emulparams/elf64hppa.sh (MAXPAGESIZE): Define. diff --git a/ld/Makefile.am b/ld/Makefile.am index 3a72e421d10..19153a5dda9 100644 --- a/ld/Makefile.am +++ b/ld/Makefile.am @@ -179,6 +179,8 @@ ALL_EMULATIONS = \ emipslit.o \ emipslnews.o \ enews.o \ + epjelf.o \ + epjlelf.o \ ens32knbsd.o \ epc532macha.o \ eppcmacos.o \ @@ -553,6 +555,12 @@ ens32knbsd.c: $(srcdir)/emulparams/ns32knbsd.sh \ epc532macha.c: $(srcdir)/emulparams/pc532macha.sh \ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS} ${GENSCRIPTS} pc532macha "$(tdir_pc532macha)" +epjelf.c: $(srcdir)/emulparams/pjelf.sh \ + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + ${GENSCRIPTS} pjelf "$(tdir_pjelf)" +epjlelf.c: $(srcdir)/emulparams/pjlelf.sh \ + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + ${GENSCRIPTS} pjlelf "$(tdir_pjlelf)" eppcmacos.c: $(srcdir)/emulparams/ppcmacos.sh \ $(srcdir)/emultempl/aix.em $(srcdir)/scripttempl/aix.sc ${GEN_DEPENDS} ${GENSCRIPTS} ppcmacos "$(tdir_ppcmacos)" diff --git a/ld/Makefile.in b/ld/Makefile.in index ef85924539d..e82d6a4e765 100644 --- a/ld/Makefile.in +++ b/ld/Makefile.in @@ -284,6 +284,8 @@ ALL_EMULATIONS = \ emipslit.o \ emipslnews.o \ enews.o \ + epjelf.o \ + epjlelf.o \ ens32knbsd.o \ epc532macha.o \ eppcmacos.o \ @@ -1254,6 +1256,12 @@ ens32knbsd.c: $(srcdir)/emulparams/ns32knbsd.sh \ epc532macha.c: $(srcdir)/emulparams/pc532macha.sh \ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS} ${GENSCRIPTS} pc532macha "$(tdir_pc532macha)" +epjelf.c: $(srcdir)/emulparams/pjelf.sh \ + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + ${GENSCRIPTS} pjelf "$(tdir_pjelf)" +epjlelf.c: $(srcdir)/emulparams/pjlelf.sh \ + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + ${GENSCRIPTS} pjlelf "$(tdir_pjlelf)" eppcmacos.c: $(srcdir)/emulparams/ppcmacos.sh \ $(srcdir)/emultempl/aix.em $(srcdir)/scripttempl/aix.sc ${GEN_DEPENDS} ${GENSCRIPTS} ppcmacos "$(tdir_ppcmacos)" diff --git a/ld/configure.tgt b/ld/configure.tgt index a2d032b48b5..9289ca9a968 100644 --- a/ld/configure.tgt +++ b/ld/configure.tgt @@ -230,6 +230,8 @@ ns32k-pc532-mach* | ns32k-pc532-ux*) targ_emul=pc532macha ;; ns32k-pc532-netbsd* | ns32k-pc532-lites*) targ_emul=ns32knbsd ;; powerpc-*-linux-gnu*) targ_emul=elf32ppclinux; targ_extra_emuls=elf32ppc; targ_extra_libpath=elf32ppc ;; +pjl*-*-*) targ_emul=pjlelf ; targ_extra_emuls="elf_i386" ;; +pj*-*-*) targ_emul=pjelf ;; powerpc-*-elf* | powerpc-*-eabi* | powerpc-*-sysv* \ | powerpc-*-netbsd* | powerpc-*-vxworks*) targ_emul=elf32ppc ;; diff --git a/ld/emulparams/pjelf.sh b/ld/emulparams/pjelf.sh new file mode 100644 index 00000000000..acfd2b346c5 --- /dev/null +++ b/ld/emulparams/pjelf.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-pj" +TEXT_START_ADDR=0x1000000 +MAXPAGESIZE=0x1000 +ARCH=pj diff --git a/ld/emulparams/pjlelf.sh b/ld/emulparams/pjlelf.sh new file mode 100644 index 00000000000..35958fdea6a --- /dev/null +++ b/ld/emulparams/pjlelf.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-pjl" +TEXT_START_ADDR=0x1000000 +MAXPAGESIZE=0x1000 +ARCH=pj diff --git a/ld/scripttempl/pj.sc b/ld/scripttempl/pj.sc new file mode 100644 index 00000000000..93981a59b96 --- /dev/null +++ b/ld/scripttempl/pj.sc @@ -0,0 +1,55 @@ +TORS=".tors : + { + ___ctors = . ; + *(.ctors) + ___ctors_end = . ; + ___dtors = . ; + *(.dtors) + ___dtors_end = . ; + } > ram" + +cat < ram} + ${CONSTRUCTING+${TORS}} + .data : + { + *(.data) + ${RELOCATING+ _edata = . ; } + } ${RELOCATING+ > ram} + .bss : + { + ${RELOCATING+ _bss_start = . ; } + *(.bss) + *(COMMON) + ${RELOCATING+ _end = . ; } + } ${RELOCATING+ > ram} + .stack ${RELOCATING+ 0x30000 } : + { + ${RELOCATING+ _stack = . ; } + *(.stack) + } ${RELOCATING+ > ram} + .stab 0 ${RELOCATING+(NOLOAD)} : + { + *(.stab) + } + .stabstr 0 ${RELOCATING+(NOLOAD)} : + { + *(.stabstr) + } +} +EOF -- 2.30.2