[PATCH] Add/update VxWorks targets for ld
Phil Edwards
phil@codesourcery.com
Thu Oct 23 22:39:00 GMT 2003
More information about the Binutils mailing list
Thu Oct 23 22:39:00 GMT 2003
- Previous message (by thread): bug in libfd
- Next message (by thread): [PATCH] Add/update VxWorks targets for ld
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
The new targets recently added to GCC also require corresponding changes in binutils. This is the patch and changelog for the ld directory. (I do not have write access. Also, while I've regenerated Makefile.in here, whoever does the commit will need to regen it there.) 2003-10-23 Phil Edwards <phil@codesourcery.com> * Makefile.am (ALL_EMULATIONS): Add elf32mipswindiss.o. (eelf32mipswindiss.c): New target. * Makefile.in: Regenerated. * emulparams/elf32mipswindiss.sh: New file. * configure.tgt (i[3-7]86-*-vxworks*, arm-*-vxworks, sh-*-vxworks, mips*-*-vxworks*): Use ELF now. (mips*-*-windiss): New stanza, use elf32mipswindiss. Index: Makefile.am =================================================================== RCS file: /home/pme/Repositories/srctree/src/ld/Makefile.am,v retrieving revision 1.143 diff -u -p -c -r1.143 Makefile.am cvs diff: conflicting specifications of output style *** Makefile.am 16 Oct 2003 08:46:34 -0000 1.143 --- Makefile.am 23 Oct 2003 22:25:23 -0000 *************** ALL_EMULATIONS = \ *** 177,182 **** --- 177,183 ---- eelf32lppcnto.o \ eelf32lppcsim.o \ eelf32mcore.o \ + eelf32mipswindiss.o \ eelf32openrisc.o \ eelf32ppc.o \ eelf32ppc_fbsd.o \ *************** eelf32lppcsim.c: $(srcdir)/emulparams/el *** 715,720 **** --- 716,724 ---- $(srcdir)/emultempl/ppc32elf.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32lppcsim "$(tdir_elf32lppcsim)" + eelf32mipswindiss.c: $(srcdir)/emulparams/elf32mipswindiss.sh \ + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + ${GENSCRIPTS} elf32mipswindiss "$(tdir_elf32mipswindiss)" eelf32ppcnto.c: $(srcdir)/emulparams/elf32ppcnto.sh \ $(srcdir)/emulparams/elf32ppc.sh $(srcdir)/emultempl/ppc32elf.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} Index: configure.tgt =================================================================== RCS file: /home/pme/Repositories/srctree/src/ld/configure.tgt,v retrieving revision 1.138 diff -u -p -c -r1.138 configure.tgt cvs diff: conflicting specifications of output style *** configure.tgt 6 Oct 2003 09:12:36 -0000 1.138 --- configure.tgt 23 Oct 2003 22:11:59 -0000 *************** i[3-7]86-*-interix*) targ_emul=i386pe_po *** 227,233 **** targ_extra_ofiles="deffilep.o pe-dll.o" ;; i[3-7]86-*-beospe*) targ_emul=i386beos ;; i[3-7]86-*-beos*) targ_emul=elf_i386_be ;; ! i[3-7]86-*-vxworks*) targ_emul=i386aout ;; i[3-7]86-*-chaos) targ_emul=elf_i386_chaos ;; m8*-*-*) targ_emul=m88kbcs ;; a29k-*-udi) targ_emul=sa29200 ;; --- 226,232 ---- targ_extra_ofiles="deffilep.o pe-dll.o" ;; i[3-7]86-*-beospe*) targ_emul=i386beos ;; i[3-7]86-*-beos*) targ_emul=elf_i386_be ;; ! i[3-7]86-*-vxworks*) targ_emul=elf_i386 ;; i[3-7]86-*-chaos) targ_emul=elf_i386_chaos ;; m8*-*-*) targ_emul=m88kbcs ;; a29k-*-udi) targ_emul=sa29200 ;; *************** a29k-*-*) targ_emul=a29k ;; *** 237,243 **** arm-*-aout | armel-*-aout) targ_emul=armaoutl ;; armeb-*-aout) targ_emul=armaoutb ;; arm-*-coff) targ_emul=armcoff ;; ! arm-*-vxworks) targ_emul=armcoff ;; arm-*-freebsd* | arm-*-kfreebsd*-gnu) targ_emul=armelf_fbsd targ_extra_emuls="armelf" ;; --- 236,242 ---- arm-*-aout | armel-*-aout) targ_emul=armaoutl ;; armeb-*-aout) targ_emul=armaoutb ;; arm-*-coff) targ_emul=armcoff ;; ! arm-*-vxworks) targ_emul=armelf ;; arm-*-freebsd* | arm-*-kfreebsd*-gnu) targ_emul=armelf_fbsd targ_extra_emuls="armelf" ;; *************** shle*-*-elf* | sh[1234]*le*-*-elf | shle *** 329,335 **** targ_emul=shlelf targ_extra_emuls="shelf shl sh" ;; ! sh-*-elf* | sh[1234]*-*-elf | sh-*-rtemself* | sh-*-kaos*) targ_emul=shelf targ_extra_emuls="shlelf sh shl" ;; --- 328,334 ---- targ_emul=shlelf targ_extra_emuls="shelf shl sh" ;; ! sh-*-elf* | sh[1234]*-*-elf | sh-*-rtemself* | sh-*-kaos* | sh-*-vxworks) targ_emul=shelf targ_extra_emuls="shlelf sh shl" ;; *************** mips*-*-elf*) targ_emul=elf32ebmip ;; *** 421,427 **** mips*el-*-rtems*) targ_emul=elf32elmip ;; mips*-*-rtems*) targ_emul=elf32ebmip ;; mips*el-*-vxworks*) targ_emul=elf32elmip ;; ! mips*-*-vxworks*) targ_emul=elf32ebmip ;; mips64*el-*-linux-gnu*) targ_emul=elf32ltsmipn32 targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip" ;; --- 420,428 ---- mips*el-*-rtems*) targ_emul=elf32elmip ;; mips*-*-rtems*) targ_emul=elf32ebmip ;; mips*el-*-vxworks*) targ_emul=elf32elmip ;; ! mips*-*-vxworks*) targ_emul=elf32ebmip ! targ_extra_emuls="elf32elmip" ;; ! mips*-*-windiss) targ_emul=elf32mipswindiss ;; mips64*el-*-linux-gnu*) targ_emul=elf32ltsmipn32 targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip" ;; Index: emulparams/elf32mipswindiss.sh =================================================================== RCS file: emulparams/elf32mipswindiss.sh diff -N emulparams/elf32mipswindiss.sh cvs diff: conflicting specifications of output style *** /dev/null 1 Jan 1970 00:00:00 -0000 --- emulparams/elf32mipswindiss.sh 23 Oct 2003 22:20:05 -0000 *************** *** 0 **** --- 1,27 ---- + TEMPLATE_NAME=elf32 + SCRIPT_NAME=elf + OUTPUT_FORMAT="elf32-bigmips" + BIG_OUTPUT_FORMAT="elf32-bigmips" + LITTLE_OUTPUT_FORMAT="elf32-littlemips" + ARCH=mips + MACHINE= + EMBEDDED=yes + MAXPAGESIZE=0x40000 + + # The data below is taken from the windiss.dld linker script that comes with + # the Diab linker. + TEXT_START_ADDR=0x100000 + DATA_START_SYMBOLS='__DATA_ROM = .; __DATA_RAM = .;' + SDATA_START_SYMBOLS='_SDA_BASE_ = .; _gp = . + 0x7ff0;' + SDATA2_START_SYMBOLS='_SDA2_BASE_ = .;' + EXECUTABLE_SYMBOLS='__HEAP_START = .; __SP_INIT = 0x800000; __SP_END = __SP_INIT - 0x20000; __HEAP_END = __SP_END; __DATA_END = _edata; __BSS_START = __bss_start; __BSS_END = _end; __HEAP_START = _end;' + + # The Diab tools use a different init/fini convention. Initialization code + # is place in sections named ".init$NN". These sections are then concatenated + # into the .init section. It is important that .init$00 be first and .init$99 + # be last. The other sections should be sorted, but the current linker script + # parse does not seem to allow that with the SORT keyword in this context. + INIT_START='*(.init$00); *(.init$0[1-9]); *(.init$[1-8][0-9]); *(.init$9[0-8])' + INIT_END='*(.init$99)' + FINI_START='*(.fini$00); *(.fini$0[1-9]); *(.fini$[1-8][0-9]); *(.fini$9[0-8])' + FINI_END='*(.fini$99)'
- Previous message (by thread): bug in libfd
- Next message (by thread): [PATCH] Add/update VxWorks targets for ld
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Binutils mailing list