diff options
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 10 | ||||
-rw-r--r-- | ld/Makefile.am | 8 | ||||
-rw-r--r-- | ld/Makefile.in | 8 | ||||
-rw-r--r-- | ld/configure.tgt | 2 | ||||
-rw-r--r-- | ld/emulparams/pjelf.sh | 5 | ||||
-rw-r--r-- | ld/emulparams/pjlelf.sh | 5 | ||||
-rw-r--r-- | ld/scripttempl/pj.sc | 55 |
7 files changed, 93 insertions, 0 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 485c9b9..72edd8b 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,13 @@ +1999-09-04 Steve Chamberlain <sac@pobox.com> + + * 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 3a72e42..19153a5 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 ef85924..e82d6a4 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 a2d032b..9289ca9 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 0000000..acfd2b3 --- /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 0000000..35958fd --- /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 0000000..93981a5 --- /dev/null +++ b/ld/scripttempl/pj.sc @@ -0,0 +1,55 @@ +TORS=".tors : + { + ___ctors = . ; + *(.ctors) + ___ctors_end = . ; + ___dtors = . ; + *(.dtors) + ___dtors_end = . ; + } > ram" + +cat <<EOF +OUTPUT_FORMAT("${OUTPUT_FORMAT}") +OUTPUT_ARCH(${ARCH}) + +MEMORY +{ + ram : o = 0x1000, l = 512M +} + +SECTIONS +{ + .text : + { + *(.text) + *(.strings) + ${RELOCATING+ _etext = . ; } + } ${RELOCATING+ > 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 |