diff options
author | Hans-Peter Nilsson <hp@axis.com> | 2000-07-20 17:16:06 +0000 |
---|---|---|
committer | Hans-Peter Nilsson <hp@axis.com> | 2000-07-20 17:16:06 +0000 |
commit | 9d06555c53d713330444973dbaa93b1b4075a581 (patch) | |
tree | 8468cd4e20f3b14a196b9ece66a7f81ac063ae69 /ld | |
parent | 041ff4dd56f6deddc34a4c9670b789b7ca09b4da (diff) | |
download | gdb-9d06555c53d713330444973dbaa93b1b4075a581.zip gdb-9d06555c53d713330444973dbaa93b1b4075a581.tar.gz gdb-9d06555c53d713330444973dbaa93b1b4075a581.tar.bz2 |
* Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
ecrislinux.o.
(ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
Regenerate dependencies.
* Makefile.in: Rebuild.
* configure.tgt (cris-*-*): New target.
* emulparams/crisaout.sh, emulparams/criself.sh,
emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
* po/POTFILES.in, po/ld.pot: Regenerate.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 12 | ||||
-rw-r--r-- | ld/Makefile.am | 36 | ||||
-rw-r--r-- | ld/Makefile.in | 36 | ||||
-rw-r--r-- | ld/configure.tgt | 3 | ||||
-rw-r--r-- | ld/emulparams/crisaout.sh | 7 | ||||
-rw-r--r-- | ld/emulparams/criself.sh | 92 | ||||
-rw-r--r-- | ld/emulparams/crislinux.sh | 35 | ||||
-rw-r--r-- | ld/po/POTFILES.in | 2 | ||||
-rw-r--r-- | ld/po/ld.pot | 528 | ||||
-rw-r--r-- | ld/scripttempl/crisaout.sc | 122 |
10 files changed, 592 insertions, 281 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 3ef235a..7102bca 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,15 @@ +2000-07-20 Hans-Peter Nilsson <hp@axis.com> + + * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o, + ecrislinux.o. + (ecrisaout.c, ecriself.c, ecrislinux.c): New rules. + Regenerate dependencies. + * Makefile.in: Rebuild. + * configure.tgt (cris-*-*): New target. + * emulparams/crisaout.sh, emulparams/criself.sh, + emulparams/crislinux.sh, scripttempl/crisaout.sc: New files. + * po/POTFILES.in, po/ld.pot: Regenerate. + 2000-07-20 H.J. Lu <hjl@gnu.org> * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options): diff --git a/ld/Makefile.am b/ld/Makefile.am index 1ab671d..9ce016a 100644 --- a/ld/Makefile.am +++ b/ld/Makefile.am @@ -123,6 +123,9 @@ ALL_EMULATIONS = \ eavrmega161.o \ eavrmega603.o \ ecoff_sparc.o \ + ecrisaout.o \ + ecriself.o \ + ecrislinux.o \ ed10velf.o \ ed30v_e.o \ ed30v_o.o \ @@ -378,6 +381,15 @@ eavrmega161.c: $(srcdir)/emulparams/avrmega161.sh \ ecoff_sparc.c: $(srcdir)/emulparams/coff_sparc.sh \ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/sparccoff.sc ${GEN_DEPENDS} ${GENSCRIPTS} coff_sparc "$(tdir_coff_sparc)" +ecrisaout.c: $(srcdir)/emulparams/crisaout.sh \ + $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/crisaout.sc ${GEN_DEPENDS} + ${GENSCRIPTS} crisaout "$(tdir_cris)" +ecriself.c: $(srcdir)/emulparams/criself.sh \ + $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + ${GENSCRIPTS} criself "$(tdir_cris)" +ecrislinux.c: $(srcdir)/emulparams/crislinux.sh \ + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + ${GENSCRIPTS} crislinux "$(tdir_cris)" ed10velf.c: $(srcdir)/emulparams/d10velf.sh \ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/elfd10v.sc ${GEN_DEPENDS} ${GENSCRIPTS} d10velf "$(tdir_d10v)" @@ -946,7 +958,7 @@ ldctor.o: ldctor.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ ldgram.h ldmain.h ldctor.h ldemul.o: ldemul.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h ld.h $(INCDIR)/bin-bugs.h \ - ldemul.h ldmisc.h ldexp.h ldlang.h ldfile.h ldmain.h \ + ldmisc.h ldexp.h ldlang.h ldfile.h ldemul.h ldmain.h \ ldemul-list.h ldexp.o: ldexp.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/bfdlink.h \ @@ -959,13 +971,13 @@ ldfile.o: ldfile.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ ldlang.o: ldlang.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/libiberty.h \ $(INCDIR)/obstack.h $(INCDIR)/bfdlink.h ld.h $(INCDIR)/bin-bugs.h \ - ldmain.h ldgram.h ldexp.h ldlang.h ldemul.h ldlex.h \ - ldmisc.h ldctor.h ldfile.h $(INCDIR)/fnmatch.h $(INCDIR)/demangle.h + ldmain.h ldgram.h ldexp.h ldlang.h ldlex.h ldmisc.h \ + ldctor.h ldfile.h ldemul.h $(INCDIR)/fnmatch.h $(INCDIR)/demangle.h ldmain.o: ldmain.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/libiberty.h \ $(INCDIR)/progress.h $(INCDIR)/bfdlink.h $(INCDIR)/filenames.h \ ld.h $(INCDIR)/bin-bugs.h ldmain.h ldmisc.h ldwrite.h \ - ldgram.h ldexp.h ldlang.h ldemul.h ldlex.h ldfile.h \ + ldgram.h ldexp.h ldlang.h ldlex.h ldfile.h ldemul.h \ ldctor.h ldmisc.o: ldmisc.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/libiberty.h \ @@ -973,16 +985,16 @@ ldmisc.o: ldmisc.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ ldexp.h ldlang.h ldgram.h ldlex.h ldmain.h ldfile.h ldver.o: ldver.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h ld.h $(INCDIR)/bin-bugs.h \ - ldver.h ldemul.h ldmain.h + ldver.h ldexp.h ldlang.h ldfile.h ldemul.h ldmain.h ldwrite.o: ldwrite.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/bfdlink.h \ $(INCDIR)/libiberty.h ld.h $(INCDIR)/bin-bugs.h ldexp.h \ ldlang.h ldwrite.h ldmisc.h ldgram.h ldmain.h lexsup.o: lexsup.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/libiberty.h \ - $(INCDIR)/bfdlink.h ld.h $(INCDIR)/bin-bugs.h ldmain.h \ - ldmisc.h ldexp.h ldlang.h ldgram.h ldlex.h ldfile.h \ - ldver.h ldemul.h + $(INCDIR)/getopt.h $(INCDIR)/bfdlink.h ld.h $(INCDIR)/bin-bugs.h \ + ldmain.h ldmisc.h ldexp.h ldlang.h ldgram.h ldlex.h \ + ldfile.h ldver.h ldemul.h mri.o: mri.c ../bfd/bfd.h $(INCDIR)/ansidecl.h sysdep.h \ config.h $(INCDIR)/fopen-same.h ld.h $(INCDIR)/bin-bugs.h \ ldexp.h ldlang.h ldmisc.h mri.h ldgram.h $(INCDIR)/libiberty.h @@ -993,13 +1005,13 @@ ldcref.o: ldcref.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ pe-dll.o: pe-dll.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/bfdlink.h \ $(INCDIR)/libiberty.h ld.h $(INCDIR)/bin-bugs.h ldexp.h \ - ldlang.h ldwrite.h ldmisc.h ldgram.h ldmain.h ldemul.h \ - $(INCDIR)/coff/internal.h ../bfd/libcoff.h deffile.h \ - pe-dll.h + ldlang.h ldwrite.h ldmisc.h ldgram.h ldmain.h ldfile.h \ + ldemul.h $(INCDIR)/coff/internal.h ../bfd/libcoff.h \ + deffile.h pe-dll.h ldgram.o: ldgram.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/bfdlink.h \ ld.h $(INCDIR)/bin-bugs.h ldexp.h ldver.h ldlang.h \ - ldemul.h ldfile.h ldmisc.h ldmain.h mri.h ldctor.h \ + ldfile.h ldemul.h ldmisc.h ldmain.h mri.h ldctor.h \ ldlex.h ldlex.o: ldlex.c ../bfd/bfd.h sysdep.h config.h $(INCDIR)/fopen-same.h \ ld.h $(INCDIR)/bin-bugs.h ldgram.h ldmisc.h ldexp.h \ diff --git a/ld/Makefile.in b/ld/Makefile.in index 20693ad..dcc185f 100644 --- a/ld/Makefile.in +++ b/ld/Makefile.in @@ -226,6 +226,9 @@ ALL_EMULATIONS = \ eavrmega161.o \ eavrmega603.o \ ecoff_sparc.o \ + ecrisaout.o \ + ecriself.o \ + ecrislinux.o \ ed10velf.o \ ed30v_e.o \ ed30v_o.o \ @@ -1079,6 +1082,15 @@ eavrmega161.c: $(srcdir)/emulparams/avrmega161.sh \ ecoff_sparc.c: $(srcdir)/emulparams/coff_sparc.sh \ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/sparccoff.sc ${GEN_DEPENDS} ${GENSCRIPTS} coff_sparc "$(tdir_coff_sparc)" +ecrisaout.c: $(srcdir)/emulparams/crisaout.sh \ + $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/crisaout.sc ${GEN_DEPENDS} + ${GENSCRIPTS} crisaout "$(tdir_cris)" +ecriself.c: $(srcdir)/emulparams/criself.sh \ + $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + ${GENSCRIPTS} criself "$(tdir_cris)" +ecrislinux.c: $(srcdir)/emulparams/crislinux.sh \ + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + ${GENSCRIPTS} crislinux "$(tdir_cris)" ed10velf.c: $(srcdir)/emulparams/d10velf.sh \ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/elfd10v.sc ${GEN_DEPENDS} ${GENSCRIPTS} d10velf "$(tdir_d10v)" @@ -1624,7 +1636,7 @@ ldctor.o: ldctor.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ ldgram.h ldmain.h ldctor.h ldemul.o: ldemul.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h ld.h $(INCDIR)/bin-bugs.h \ - ldemul.h ldmisc.h ldexp.h ldlang.h ldfile.h ldmain.h \ + ldmisc.h ldexp.h ldlang.h ldfile.h ldemul.h ldmain.h \ ldemul-list.h ldexp.o: ldexp.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/bfdlink.h \ @@ -1637,13 +1649,13 @@ ldfile.o: ldfile.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ ldlang.o: ldlang.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/libiberty.h \ $(INCDIR)/obstack.h $(INCDIR)/bfdlink.h ld.h $(INCDIR)/bin-bugs.h \ - ldmain.h ldgram.h ldexp.h ldlang.h ldemul.h ldlex.h \ - ldmisc.h ldctor.h ldfile.h $(INCDIR)/fnmatch.h $(INCDIR)/demangle.h + ldmain.h ldgram.h ldexp.h ldlang.h ldlex.h ldmisc.h \ + ldctor.h ldfile.h ldemul.h $(INCDIR)/fnmatch.h $(INCDIR)/demangle.h ldmain.o: ldmain.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/libiberty.h \ $(INCDIR)/progress.h $(INCDIR)/bfdlink.h $(INCDIR)/filenames.h \ ld.h $(INCDIR)/bin-bugs.h ldmain.h ldmisc.h ldwrite.h \ - ldgram.h ldexp.h ldlang.h ldemul.h ldlex.h ldfile.h \ + ldgram.h ldexp.h ldlang.h ldlex.h ldfile.h ldemul.h \ ldctor.h ldmisc.o: ldmisc.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/libiberty.h \ @@ -1651,16 +1663,16 @@ ldmisc.o: ldmisc.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ ldexp.h ldlang.h ldgram.h ldlex.h ldmain.h ldfile.h ldver.o: ldver.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h ld.h $(INCDIR)/bin-bugs.h \ - ldver.h ldemul.h ldmain.h + ldver.h ldexp.h ldlang.h ldfile.h ldemul.h ldmain.h ldwrite.o: ldwrite.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/bfdlink.h \ $(INCDIR)/libiberty.h ld.h $(INCDIR)/bin-bugs.h ldexp.h \ ldlang.h ldwrite.h ldmisc.h ldgram.h ldmain.h lexsup.o: lexsup.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/libiberty.h \ - $(INCDIR)/bfdlink.h ld.h $(INCDIR)/bin-bugs.h ldmain.h \ - ldmisc.h ldexp.h ldlang.h ldgram.h ldlex.h ldfile.h \ - ldver.h ldemul.h + $(INCDIR)/getopt.h $(INCDIR)/bfdlink.h ld.h $(INCDIR)/bin-bugs.h \ + ldmain.h ldmisc.h ldexp.h ldlang.h ldgram.h ldlex.h \ + ldfile.h ldver.h ldemul.h mri.o: mri.c ../bfd/bfd.h $(INCDIR)/ansidecl.h sysdep.h \ config.h $(INCDIR)/fopen-same.h ld.h $(INCDIR)/bin-bugs.h \ ldexp.h ldlang.h ldmisc.h mri.h ldgram.h $(INCDIR)/libiberty.h @@ -1671,13 +1683,13 @@ ldcref.o: ldcref.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ pe-dll.o: pe-dll.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/bfdlink.h \ $(INCDIR)/libiberty.h ld.h $(INCDIR)/bin-bugs.h ldexp.h \ - ldlang.h ldwrite.h ldmisc.h ldgram.h ldmain.h ldemul.h \ - $(INCDIR)/coff/internal.h ../bfd/libcoff.h deffile.h \ - pe-dll.h + ldlang.h ldwrite.h ldmisc.h ldgram.h ldmain.h ldfile.h \ + ldemul.h $(INCDIR)/coff/internal.h ../bfd/libcoff.h \ + deffile.h pe-dll.h ldgram.o: ldgram.c ../bfd/bfd.h $(INCDIR)/ansidecl.h \ sysdep.h config.h $(INCDIR)/fopen-same.h $(INCDIR)/bfdlink.h \ ld.h $(INCDIR)/bin-bugs.h ldexp.h ldver.h ldlang.h \ - ldemul.h ldfile.h ldmisc.h ldmain.h mri.h ldctor.h \ + ldfile.h ldemul.h ldmisc.h ldmain.h mri.h ldctor.h \ ldlex.h ldlex.o: ldlex.c ../bfd/bfd.h sysdep.h config.h $(INCDIR)/fopen-same.h \ ld.h $(INCDIR)/bin-bugs.h ldgram.h ldmisc.h ldexp.h \ diff --git a/ld/configure.tgt b/ld/configure.tgt index d9d779c..7b214f2 100644 --- a/ld/configure.tgt +++ b/ld/configure.tgt @@ -23,6 +23,9 @@ arm-*-pe) targ_emul=armpe ; arc-*-elf*) targ_emul=arcelf ;; avr-*-*) targ_emul=avr85xx targ_extra_emuls="avr1200 avr23xx avr44x4 avr4433 avrmega603 avrmega103 avrmega161" ;; +cris-*-*) targ_emul=crisaout + targ_extra_emuls="criself crislinux" + targ_extra_libpath=$targ_extra_emuls ;; d10v-*-*) targ_emul=d10velf ;; d30v-*-*ext*) targ_emul=d30v_e; targ_extra_emuls="d30velf d30v_o" ;; d30v-*-*onchip*) targ_emul=d30v_o; targ_extra_emuls="d30velf d30v_e" ;; diff --git a/ld/emulparams/crisaout.sh b/ld/emulparams/crisaout.sh new file mode 100644 index 0000000..bb9135a --- /dev/null +++ b/ld/emulparams/crisaout.sh @@ -0,0 +1,7 @@ +# This is for embedded products and elinux (no MMU) with a.out. +SCRIPT_NAME=crisaout +OUTPUT_FORMAT="a.out-cris" +TARGET_PAGE_SIZE=2 +TEXT_START_ADDR=0 +NONPAGED_TEXT_START_ADDR=0 +ARCH=cris diff --git a/ld/emulparams/criself.sh b/ld/emulparams/criself.sh new file mode 100644 index 0000000..44d0a11 --- /dev/null +++ b/ld/emulparams/criself.sh @@ -0,0 +1,92 @@ +# This is for embedded products (no MMU) with ELF. +MACHINE= +SCRIPT_NAME=elf +TEMPLATE_NAME=elf32 +OUTPUT_FORMAT="elf32-cris" +ARCH=cris +MAXPAGESIZE=32 +ENTRY=_start +EMBEDDED=yes +ALIGNMENT=32 +TEXT_START_ADDR=0 + +# Put crt0 for flash/eprom etc. in this section. +INITIAL_READONLY_SECTIONS='.startup : { *(.startup) }' + +# TEXT_START_SYMBOLS doesn't get what we want which is the start of +# all read-only sections; there's at least .init and .fini before it. +# We have to resort to trickery. +EXECUTABLE_SYMBOLS='PROVIDE (__Stext = .);' + +# Smuggle an "OTHER_TEXT_END_SYMBOLS" here. +OTHER_READONLY_SECTIONS='PROVIDE (__Etext = .);' +DATA_START_SYMBOLS='PROVIDE (__Sdata = .);' + +# Smuggle an "OTHER_DATA_END_SYMBOLS" here. +OTHER_GOT_SECTIONS='PROVIDE (__Edata = .);' + +# If .bss does not immediately follow .data but has its own start +# address, we can't get to it with OTHER_BSS_SYMBOLS, neither can we +# use ADDR(.bss) there. Instead, we use the symbol support for the +# end symbol. +OTHER_BSS_END_SYMBOLS=' + PROVIDE (__Ebss = .); + PROVIDE (__end = .); + __Sbss = SIZEOF (.sbss) != 0 ? ADDR (.sbss) : ADDR (.bss); + PROVIDE (_bss_start = __Sbss); +' + +INIT_START=' + . = ALIGN(2); + ___init__start = .; + PROVIDE (___do_global_ctors = .); + SHORT (0xe1fc); /* push srp */ + SHORT (0xbe7e); +' + +INIT_END=' + SHORT (0x0d3e); /* jump [sp+] */ + PROVIDE (__init__end = .); + PROVIDE (___init__end = .); +' + +FINI_START=' + . = ALIGN (2); + ___fini__start = .; + PROVIDE (___do_global_dtors = .); + SHORT (0xe1fc); /* push srp */ + SHORT (0xbe7e); +' + +FINI_END=' + SHORT (0x0d3e); /* jump [sp+] */ + PROVIDE (__fini__end = .); + ___fini__end = .; +' + +CTOR_START=' + PROVIDE (___ctors = .); + ___elf_ctors_dtors_begin = .; +' + +CTOR_END=' + PROVIDE (___ctors_end = .); +' + +DTOR_START=' + PROVIDE (___dtors = .); +' + +CTOR_END=' + PROVIDE (___dtors_end = .); + ___elf_ctors_dtors_end = .; +' + + +# Smuggle an "OTHER_ALL_END_SYMBOLS" here. +# Also add the other symbols provided for rsim/xsim and elinux. +OTHER_RELOCATING_SECTIONS=' +PROVIDE (__Eall = .); +PROVIDE (__Endmem = 0x10000000); +PROVIDE (__Stacksize = 0); +' diff --git a/ld/emulparams/crislinux.sh b/ld/emulparams/crislinux.sh new file mode 100644 index 0000000..15af6cf --- /dev/null +++ b/ld/emulparams/crislinux.sh @@ -0,0 +1,35 @@ +# This is an approximation of what we want for a real linux system (with MMU and ELF). +MACHINE= +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-cris" +ARCH=cris +TEMPLATE_NAME=elf32 +ENTRY=_start +# Needed? Perhaps should be page-size alignment. +ALIGNMENT=32 +GENERATE_SHLIB_SCRIPT=yes + +# Is this high enough and low enough? +TEXT_START_ADDR=0x80000 + +# Do we need to set this higher? +MAXPAGESIZE=8192 + +# FIXME: GOT, PLT... + +# Smuggle an "OTHER_TEXT_END_SYMBOLS" here. +OTHER_READONLY_SECTIONS='PROVIDE (__Etext = .);' +DATA_START_SYMBOLS='PROVIDE (__Sdata = .);' + +# Smuggle an "OTHER_DATA_END_SYMBOLS" here. +OTHER_GOT_SECTIONS='PROVIDE (__Edata = .);' +OTHER_BSS_SYMBOLS='PROVIDE (__Sbss = .);' +OTHER_BSS_END_SYMBOLS='PROVIDE (__Ebss = .);' + +# Smuggle an "OTHER_ALL_END_SYMBOLS" here. +# Also add the other symbols provided for rsim/xsim and elinux. +OTHER_RELOCATING_SECTIONS=' +PROVIDE (__Eall = .); +PROVIDE(__Endmem = 0x10000000); +PROVIDE(__Stacksize = 0); +' diff --git a/ld/po/POTFILES.in b/ld/po/POTFILES.in index 55ae6ff..f7a614d 100644 --- a/ld/po/POTFILES.in +++ b/ld/po/POTFILES.in @@ -1,6 +1,7 @@ deffile.h emultempl/armcoff.em emultempl/pe.em +ld.h ldcref.c ldctor.c ldctor.h @@ -10,7 +11,6 @@ ldexp.c ldexp.h ldfile.c ldfile.h -ld.h ldlang.c ldlang.h ldlex.h diff --git a/ld/po/ld.pot b/ld/po/ld.pot index fbcd94e..b14a5f7 100644 --- a/ld/po/ld.pot +++ b/ld/po/ld.pot @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2000-06-18 18:12-0700\n" +"POT-Creation-Date: 2000-07-20 16:50+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -14,210 +14,226 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: ENCODING\n" -#: emultempl/armcoff.em:69 +#: emultempl/armcoff.em:70 msgid " --support-old-code Support interworking with old code\n" msgstr "" -#: emultempl/armcoff.em:70 +#: emultempl/armcoff.em:71 msgid " --thumb-entry=<sym> Set the entry point to be Thumb symbol <sym>\n" msgstr "" -#: emultempl/armcoff.em:139 +#: emultempl/armcoff.em:140 #, c-format msgid "Errors encountered processing file %s" msgstr "" -#: emultempl/armcoff.em:205 emultempl/pe.em:1035 +#: emultempl/armcoff.em:206 emultempl/pe.em:1088 msgid "%P: warning: '--thumb-entry %s' is overriding '-e %s'\n" msgstr "" -#: emultempl/armcoff.em:210 emultempl/pe.em:1040 +#: emultempl/armcoff.em:211 emultempl/pe.em:1093 msgid "%P: warning: connot find thumb start symbol %s\n" msgstr "" -#: emultempl/pe.em:257 +#: emultempl/pe.em:262 msgid "" " --base_file <basefile> Generate a base file for relocatable " "DLLs\n" msgstr "" -#: emultempl/pe.em:258 +#: emultempl/pe.em:263 msgid "" " --dll Set image base to the default for DLLs\n" msgstr "" -#: emultempl/pe.em:259 +#: emultempl/pe.em:264 msgid " --file-alignment <size> Set file alignment\n" msgstr "" -#: emultempl/pe.em:260 +#: emultempl/pe.em:265 msgid " --heap <size> Set initial size of the heap\n" msgstr "" -#: emultempl/pe.em:261 +#: emultempl/pe.em:266 msgid "" " --image-base <address> Set start address of the executable\n" msgstr "" -#: emultempl/pe.em:262 +#: emultempl/pe.em:267 msgid "" " --major-image-version <number> Set version number of the executable\n" msgstr "" -#: emultempl/pe.em:263 +#: emultempl/pe.em:268 msgid " --major-os-version <number> Set minimum required OS version\n" msgstr "" -#: emultempl/pe.em:264 +#: emultempl/pe.em:269 msgid "" " --major-subsystem-version <number> Set minimum required OS subsystem " "version\n" msgstr "" -#: emultempl/pe.em:265 +#: emultempl/pe.em:270 msgid "" " --minor-image-version <number> Set revision number of the executable\n" msgstr "" -#: emultempl/pe.em:266 +#: emultempl/pe.em:271 msgid " --minor-os-version <number> Set minimum required OS revision\n" msgstr "" -#: emultempl/pe.em:267 +#: emultempl/pe.em:272 msgid "" " --minor-subsystem-version <number> Set minimum required OS subsystem " "revision\n" msgstr "" -#: emultempl/pe.em:268 +#: emultempl/pe.em:273 msgid " --section-alignment <size> Set section alignment\n" msgstr "" -#: emultempl/pe.em:269 +#: emultempl/pe.em:274 msgid " --stack <size> Set size of the initial stack\n" msgstr "" -#: emultempl/pe.em:270 +#: emultempl/pe.em:275 msgid "" " --subsystem <name>[:<version>] Set required OS subsystem [& version]\n" msgstr "" -#: emultempl/pe.em:271 +#: emultempl/pe.em:276 msgid "" " --support-old-code Support interworking with old code\n" msgstr "" -#: emultempl/pe.em:272 +#: emultempl/pe.em:277 msgid "" " --thumb-entry=<symbol> Set the entry point to be Thumb " "<symbol>\n" msgstr "" -#: emultempl/pe.em:274 +#: emultempl/pe.em:279 msgid "" " --add-stdcall-alias Export symbols with and without @nn\n" msgstr "" -#: emultempl/pe.em:275 +#: emultempl/pe.em:280 msgid " --disable-stdcall-fixup Don't link _sym to _sym@nn\n" msgstr "" -#: emultempl/pe.em:276 +#: emultempl/pe.em:281 msgid "" " --enable-stdcall-fixup Link _sym to _sym@nn without warnings\n" msgstr "" -#: emultempl/pe.em:277 +#: emultempl/pe.em:282 msgid "" " --exclude-symbols sym,sym,... Exclude symbols from automatic export\n" msgstr "" -#: emultempl/pe.em:278 +#: emultempl/pe.em:283 msgid "" " --export-all-symbols Automatically export all globals to " "DLL\n" msgstr "" -#: emultempl/pe.em:279 +#: emultempl/pe.em:284 msgid " --kill-at Remove @nn from exported symbols\n" msgstr "" -#: emultempl/pe.em:280 +#: emultempl/pe.em:285 msgid " --out-implib <file> Generate import library\n" msgstr "" -#: emultempl/pe.em:281 +#: emultempl/pe.em:286 msgid "" " --output-def <file> Generate a .DEF file for the built DLL\n" msgstr "" -#: emultempl/pe.em:282 +#: emultempl/pe.em:287 msgid " --warn-duplicate-exports Warn about duplicate exports.\n" msgstr "" -#: emultempl/pe.em:283 +#: emultempl/pe.em:288 msgid "" " --compat-implib Create backward compatible import " "libs;\n" msgstr "" -#: emultempl/pe.em:284 +#: emultempl/pe.em:289 msgid " create __imp_<SYMBOL> as well.\n" msgstr "" -#: emultempl/pe.em:352 +#: emultempl/pe.em:290 +msgid "" +" --enable-auto-image-base Automatically choose image base for " +"DLLs\n" +msgstr "" + +#: emultempl/pe.em:291 +msgid " unless user specifies one\n" +msgstr "" + +#: emultempl/pe.em:292 +msgid "" +" --disable-auto-image-base Do not auto-choose image base. " +"(default)\n" +msgstr "" + +#: emultempl/pe.em:360 msgid "%P: warning: bad version number in -subsystem option\n" msgstr "" -#: emultempl/pe.em:388 +#: emultempl/pe.em:396 msgid "%P%F: invalid subsystem type %s\n" msgstr "" -#: emultempl/pe.em:403 +#: emultempl/pe.em:411 msgid "%P%F: invalid hex number for PE parameter '%s'\n" msgstr "" -#: emultempl/pe.em:421 +#: emultempl/pe.em:429 msgid "%P%F: strange hex info for PE parameter '%s'\n" msgstr "" -#: emultempl/pe.em:460 +#: emultempl/pe.em:468 #, c-format msgid "%s: Can't open base file %s\n" msgstr "" -#: emultempl/pe.em:602 +#: emultempl/pe.em:655 msgid "%P: warning, file alignment > section alignment.\n" msgstr "" -#: emultempl/pe.em:673 emultempl/pe.em:699 +#: emultempl/pe.em:726 emultempl/pe.em:752 #, c-format msgid "Warning: resolving %s by linking to %s\n" msgstr "" -#: emultempl/pe.em:678 emultempl/pe.em:704 +#: emultempl/pe.em:731 emultempl/pe.em:757 msgid "Use --enable-stdcall-fixup to disable these warnings\n" msgstr "" -#: emultempl/pe.em:679 emultempl/pe.em:705 +#: emultempl/pe.em:732 emultempl/pe.em:758 msgid "Use --disable-stdcall-fixup to disable these fixups\n" msgstr "" -#: emultempl/pe.em:722 +#: emultempl/pe.em:775 msgid "%F%P: PE operations on non PE file.\n" msgstr "" -#: emultempl/pe.em:839 +#: emultempl/pe.em:892 #, c-format msgid "Errors encountered processing file %s\n" msgstr "" -#: emultempl/pe.em:862 +#: emultempl/pe.em:915 #, c-format msgid "Errors encountered processing file %s for interworking" msgstr "" -#: emultempl/pe.em:918 ldlang.c:1963 ldlang.c:4336 ldlang.c:4370 ldmain.c:1008 +#: emultempl/pe.em:971 ldlang.c:1970 ldlang.c:4343 ldlang.c:4377 ldmain.c:1010 msgid "%P%F: bfd_link_hash_lookup failed: %E\n" msgstr "" @@ -256,11 +272,11 @@ msgstr "" msgid "%B%F: could not read symbols; %E\n" msgstr "" -#: ldcref.c:445 ldmain.c:1076 ldmain.c:1080 +#: ldcref.c:445 ldmain.c:1078 ldmain.c:1082 msgid "%B%F: could not read symbols: %E\n" msgstr "" -#: ldcref.c:517 ldcref.c:524 ldmain.c:1126 ldmain.c:1133 +#: ldcref.c:517 ldcref.c:524 ldmain.c:1128 ldmain.c:1135 msgid "%B%F: could not read relocs: %E\n" msgstr "" @@ -367,59 +383,59 @@ msgstr "" msgid "%F%S non constant expression for %s\n" msgstr "" -#: ldfile.c:108 +#: ldfile.c:103 #, c-format msgid "attempt to open %s failed\n" msgstr "" -#: ldfile.c:110 +#: ldfile.c:105 #, c-format msgid "attempt to open %s succeeded\n" msgstr "" -#: ldfile.c:116 +#: ldfile.c:111 msgid "%F%P: invalid BFD target `%s'\n" msgstr "" -#: ldfile.c:140 -msgid "%P: skipping incompatible %s when searching for %s" +#: ldfile.c:135 +msgid "%P: skipping incompatible %s when searching for %s\n" msgstr "" -#: ldfile.c:232 +#: ldfile.c:227 msgid "%F%P: cannot open %s for %s: %E\n" msgstr "" -#: ldfile.c:235 +#: ldfile.c:230 msgid "%F%P: cannot open %s: %E\n" msgstr "" -#: ldfile.c:255 +#: ldfile.c:251 msgid "%F%P: cannot find %s\n" msgstr "" -#: ldfile.c:273 ldfile.c:288 +#: ldfile.c:270 ldfile.c:286 #, c-format msgid "cannot find script file %s\n" msgstr "" -#: ldfile.c:275 ldfile.c:290 +#: ldfile.c:272 ldfile.c:288 #, c-format msgid "opened script file %s\n" msgstr "" -#: ldfile.c:333 +#: ldfile.c:337 msgid "%P%F: cannot open linker script file %s: %E\n" msgstr "" -#: ldfile.c:374 +#: ldfile.c:375 msgid "%P%F: unknown architecture: %s\n" msgstr "" -#: ldfile.c:391 +#: ldfile.c:392 msgid "%P%F: target architecture respecified\n" msgstr "" -#: ldfile.c:444 +#: ldfile.c:447 msgid "%P%F: cannot represent machine `%s'\n" msgstr "" @@ -477,146 +493,146 @@ msgstr "" msgid "%P%F: Failed to create hash table\n" msgstr "" -#: ldlang.c:1422 +#: ldlang.c:1429 msgid "%B: file not recognized: %E\n" msgstr "" -#: ldlang.c:1423 +#: ldlang.c:1430 msgid "%B: matching formats:" msgstr "" -#: ldlang.c:1430 +#: ldlang.c:1437 msgid "%F%B: file not recognized: %E\n" msgstr "" -#: ldlang.c:1483 +#: ldlang.c:1490 msgid "%F%B: object %B in archive is not object\n" msgstr "" -#: ldlang.c:1489 ldlang.c:1501 +#: ldlang.c:1496 ldlang.c:1508 msgid "%F%B: could not read symbols: %E\n" msgstr "" -#: ldlang.c:1747 +#: ldlang.c:1754 msgid "" "%P: warning: could not find any targets that match endianness requirement\n" msgstr "" -#: ldlang.c:1759 +#: ldlang.c:1766 msgid "%P%F: target %s not found\n" msgstr "" -#: ldlang.c:1761 +#: ldlang.c:1768 msgid "%P%F: cannot open output file %s: %E\n" msgstr "" -#: ldlang.c:1769 +#: ldlang.c:1776 msgid "%P%F:%s: can not make object file: %E\n" msgstr "" -#: ldlang.c:1773 +#: ldlang.c:1780 msgid "%P%F:%s: can not set architecture: %E\n" msgstr "" -#: ldlang.c:1777 +#: ldlang.c:1784 msgid "%P%F: can not create link hash table: %E\n" msgstr "" -#: ldlang.c:2086 +#: ldlang.c:2093 msgid " load address 0x%V" msgstr "" -#: ldlang.c:2216 +#: ldlang.c:2223 msgid "%W (size before relaxing)\n" msgstr "" -#: ldlang.c:2298 +#: ldlang.c:2305 #, c-format msgid "Address of section %s set to " msgstr "" -#: ldlang.c:2447 +#: ldlang.c:2454 #, c-format msgid "Fail with %d\n" msgstr "" -#: ldlang.c:2686 +#: ldlang.c:2693 msgid "%X%P: section %s [%V -> %V] overlaps section %s [%V -> %V]\n" msgstr "" -#: ldlang.c:2720 +#: ldlang.c:2727 msgid "%X%P: address 0x%v of %B section %s is not within region %s\n" msgstr "" -#: ldlang.c:2728 +#: ldlang.c:2735 msgid "%X%P: region %s is full (%B section %s)\n" msgstr "" -#: ldlang.c:2777 +#: ldlang.c:2784 msgid "%P%X: Internal error on COFF shared library section %s\n" msgstr "" -#: ldlang.c:2818 +#: ldlang.c:2825 msgid "%P: warning: no memory region specified for section `%s'\n" msgstr "" -#: ldlang.c:2831 +#: ldlang.c:2838 msgid "%P: warning: changing start of section %s by %u bytes\n" msgstr "" -#: ldlang.c:2845 +#: ldlang.c:2852 msgid "%F%S: non constant address expression for section %s\n" msgstr "" -#: ldlang.c:2909 +#: ldlang.c:2916 msgid "%X%P: use an absolute load address or a load memory region, not both\n" msgstr "" -#: ldlang.c:3022 +#: ldlang.c:3029 msgid "%P%F: can't relax section: %E\n" msgstr "" -#: ldlang.c:3187 +#: ldlang.c:3194 msgid "%F%P: invalid data statement\n" msgstr "" -#: ldlang.c:3224 +#: ldlang.c:3231 msgid "%F%P: invalid reloc statement\n" msgstr "" -#: ldlang.c:3360 +#: ldlang.c:3367 msgid "%P%F:%s: can't set start address\n" msgstr "" -#: ldlang.c:3373 ldlang.c:3390 +#: ldlang.c:3380 ldlang.c:3397 msgid "%P%F: can't set start address\n" msgstr "" -#: ldlang.c:3385 +#: ldlang.c:3392 msgid "%P: warning: cannot find entry symbol %s; defaulting to %V\n" msgstr "" -#: ldlang.c:3395 +#: ldlang.c:3402 msgid "%P: warning: cannot find entry symbol %s; not setting start address\n" msgstr "" -#: ldlang.c:3437 +#: ldlang.c:3444 msgid "" "%P: warning: %s architecture of input file `%B' is incompatible with %s " "output\n" msgstr "" -#: ldlang.c:3455 +#: ldlang.c:3462 msgid "%E%X: failed to merge target specific data of file %B\n" msgstr "" -#: ldlang.c:3542 +#: ldlang.c:3549 msgid "" "\n" "Allocating common symbols\n" msgstr "" -#: ldlang.c:3543 +#: ldlang.c:3550 msgid "" "Common symbol size file\n" "\n" @@ -625,43 +641,43 @@ msgstr "" #. This message happens when using the #. svr3.ifile linker script, so I have #. disabled it. -#: ldlang.c:3628 +#: ldlang.c:3635 msgid "%P: no [COMMON] command, defaulting to .bss\n" msgstr "" -#: ldlang.c:3688 +#: ldlang.c:3695 msgid "%P%F: invalid syntax in flags\n" msgstr "" -#: ldlang.c:4284 +#: ldlang.c:4291 msgid "%P%Fmultiple STARTUP files\n" msgstr "" -#: ldlang.c:4556 +#: ldlang.c:4563 msgid "%F%P: bfd_record_phdr failed: %E\n" msgstr "" -#: ldlang.c:4575 +#: ldlang.c:4582 msgid "%X%P: section `%s' assigned to non-existent phdr `%s'\n" msgstr "" -#: ldlang.c:4884 +#: ldlang.c:4891 msgid "%X%P: unknown language `%s' in version information\n" msgstr "" -#: ldlang.c:4933 +#: ldlang.c:4940 msgid "%X%P: duplicate version tag `%s'\n" msgstr "" -#: ldlang.c:4946 ldlang.c:4959 +#: ldlang.c:4953 ldlang.c:4966 msgid "%X%P: duplicate expression `%s' in version information\n" msgstr "" -#: ldlang.c:4996 +#: ldlang.c:5003 msgid "%X%P: unable to find version dependency `%s'\n" msgstr "" -#: ldlang.c:5018 +#: ldlang.c:5025 msgid "%X%P: unable to read .exports section contents" msgstr "" @@ -669,195 +685,195 @@ msgstr "" msgid "%X%P: can't set BFD default target to `%s': %E\n" msgstr "" -#: ldmain.c:264 +#: ldmain.c:266 msgid "%P%F: -r and --mpc860c0 may not be used together\n" msgstr "" -#: ldmain.c:266 +#: ldmain.c:268 msgid "%P%F: --relax and -r may not be used together\n" msgstr "" -#: ldmain.c:268 +#: ldmain.c:270 msgid "%P%F: -r and -shared may not be used together\n" msgstr "" -#: ldmain.c:297 +#: ldmain.c:299 msgid "using internal linker script:\n" msgstr "" -#: ldmain.c:316 +#: ldmain.c:318 msgid "%P%F: no input files\n" msgstr "" -#: ldmain.c:321 +#: ldmain.c:323 msgid "%P: mode %s\n" msgstr "" -#: ldmain.c:339 +#: ldmain.c:341 msgid "%P%F: cannot open map file %s: %E\n" msgstr "" -#: ldmain.c:387 +#: ldmain.c:389 msgid "%P: link errors found, deleting executable `%s'\n" msgstr "" -#: ldmain.c:398 +#: ldmain.c:400 msgid "%F%B: final close failed: %E\n" msgstr "" -#: ldmain.c:422 +#: ldmain.c:424 msgid "%X%P: unable to open for source of copy `%s'\n" msgstr "" -#: ldmain.c:424 +#: ldmain.c:426 msgid "%X%P: unable to open for destination of copy `%s'\n" msgstr "" -#: ldmain.c:430 +#: ldmain.c:432 msgid "%P: Error writing file `%s'\n" msgstr "" -#: ldmain.c:436 pe-dll.c:1082 +#: ldmain.c:438 pe-dll.c:1083 #, c-format msgid "%P: Error closing file `%s'\n" msgstr "" -#: ldmain.c:453 +#: ldmain.c:455 #, c-format msgid "%s: total time in link: %ld.%06ld\n" msgstr "" -#: ldmain.c:456 +#: ldmain.c:458 #, c-format msgid "%s: data size %ld\n" msgstr "" -#: ldmain.c:497 +#: ldmain.c:499 msgid "%P%F: missing argument to -m\n" msgstr "" -#: ldmain.c:619 ldmain.c:640 ldmain.c:671 +#: ldmain.c:621 ldmain.c:642 ldmain.c:673 msgid "%P%F: bfd_hash_table_init failed: %E\n" msgstr "" -#: ldmain.c:624 ldmain.c:643 +#: ldmain.c:626 ldmain.c:645 msgid "%P%F: bfd_hash_lookup failed: %E\n" msgstr "" -#: ldmain.c:658 +#: ldmain.c:660 msgid "%X%P: error: duplicate retain-symbols-file\n" msgstr "" -#: ldmain.c:702 +#: ldmain.c:704 msgid "%P%F: bfd_hash_lookup for insertion failed: %E\n" msgstr "" -#: ldmain.c:707 +#: ldmain.c:709 msgid "%P: `-retain-symbols-file' overrides `-s' and `-S'\n" msgstr "" -#: ldmain.c:784 +#: ldmain.c:786 msgid "Archive member included" msgstr "" -#: ldmain.c:785 +#: ldmain.c:787 msgid "because of file (symbol)" msgstr "" -#: ldmain.c:857 +#: ldmain.c:859 msgid "%X%C: multiple definition of `%T'\n" msgstr "" -#: ldmain.c:860 +#: ldmain.c:862 msgid "%D: first defined here\n" msgstr "" -#: ldmain.c:889 +#: ldmain.c:891 msgid "%B: warning: definition of `%T' overriding common\n" msgstr "" -#: ldmain.c:892 +#: ldmain.c:894 msgid "%B: warning: common is here\n" msgstr "" -#: ldmain.c:899 +#: ldmain.c:901 msgid "%B: warning: common of `%T' overridden by definition\n" msgstr "" -#: ldmain.c:902 +#: ldmain.c:904 msgid "%B: warning: defined here\n" msgstr "" -#: ldmain.c:909 +#: ldmain.c:911 msgid "%B: warning: common of `%T' overridden by larger common\n" msgstr "" -#: ldmain.c:912 +#: ldmain.c:914 msgid "%B: warning: larger common is here\n" msgstr "" -#: ldmain.c:916 +#: ldmain.c:918 msgid "%B: warning: common of `%T' overriding smaller common\n" msgstr "" -#: ldmain.c:919 +#: ldmain.c:921 msgid "%B: warning: smaller common is here\n" msgstr "" -#: ldmain.c:923 +#: ldmain.c:925 msgid "%B: warning: multiple common of `%T'\n" msgstr "" -#: ldmain.c:925 +#: ldmain.c:927 msgid "%B: warning: previous common is here\n" msgstr "" -#: ldmain.c:947 ldmain.c:986 +#: ldmain.c:949 ldmain.c:988 msgid "%P: warning: global constructor %s used\n" msgstr "" -#: ldmain.c:996 +#: ldmain.c:998 msgid "%P%F: BFD backend error: BFD_RELOC_CTOR unsupported\n" msgstr "" -#: ldmain.c:1183 +#: ldmain.c:1185 msgid "%F%P: bfd_hash_table_init failed: %E\n" msgstr "" -#: ldmain.c:1190 +#: ldmain.c:1192 msgid "%F%P: bfd_hash_lookup failed: %E\n" msgstr "" -#: ldmain.c:1210 +#: ldmain.c:1212 msgid "%C: undefined reference to `%T'\n" msgstr "" -#: ldmain.c:1216 +#: ldmain.c:1218 msgid "%D: more undefined references to `%T' follow\n" msgstr "" -#: ldmain.c:1223 +#: ldmain.c:1225 msgid "%B: undefined reference to `%T'\n" msgstr "" -#: ldmain.c:1229 +#: ldmain.c:1231 msgid "%B: more undefined references to `%T' follow\n" msgstr "" -#: ldmain.c:1250 ldmain.c:1272 ldmain.c:1292 +#: ldmain.c:1252 ldmain.c:1274 ldmain.c:1294 msgid "%P%X: generated" msgstr "" -#: ldmain.c:1253 +#: ldmain.c:1255 msgid " relocation truncated to fit: %s %T" msgstr "" -#: ldmain.c:1275 +#: ldmain.c:1277 #, c-format msgid "dangerous relocation: %s\n" msgstr "" -#: ldmain.c:1295 +#: ldmain.c:1297 msgid " reloc refers to symbol `%T' which is not being output\n" msgstr "" @@ -897,12 +913,12 @@ msgstr "" msgid "%P%F: please report this bug\n" msgstr "" -#: ldver.c:35 +#: ldver.c:39 #, c-format msgid "GNU ld version %s (with BFD %s)\n" msgstr "" -#: ldver.c:42 lexsup.c:928 +#: ldver.c:46 lexsup.c:935 msgid " Supported emulations:\n" msgstr "" @@ -910,16 +926,16 @@ msgstr "" msgid "%P%F: bfd_new_link_order failed\n" msgstr "" -#: ldwrite.c:365 +#: ldwrite.c:364 #, c-format msgid "%8x something else\n" msgstr "" -#: ldwrite.c:526 +#: ldwrite.c:525 msgid "%F%P: final link failed: %E\n" msgstr "" -#: lexsup.c:156 lexsup.c:241 lexsup.c:247 +#: lexsup.c:156 lexsup.c:242 lexsup.c:249 msgid "KEYWORD" msgstr "" @@ -935,7 +951,7 @@ msgstr "" msgid "Set architecture" msgstr "" -#: lexsup.c:161 lexsup.c:310 +#: lexsup.c:161 lexsup.c:312 msgid "TARGET" msgstr "" @@ -943,8 +959,8 @@ msgstr "" msgid "Specify target for following input files" msgstr "" -#: lexsup.c:163 lexsup.c:202 lexsup.c:214 lexsup.c:223 lexsup.c:294 -#: lexsup.c:317 lexsup.c:353 +#: lexsup.c:163 lexsup.c:202 lexsup.c:214 lexsup.c:223 lexsup.c:296 +#: lexsup.c:319 lexsup.c:355 msgid "FILE" msgstr "" @@ -956,7 +972,7 @@ msgstr "" msgid "Force common symbols to be defined" msgstr "" -#: lexsup.c:169 lexsup.c:343 lexsup.c:345 lexsup.c:347 +#: lexsup.c:169 lexsup.c:345 lexsup.c:347 lexsup.c:349 msgid "ADDRESS" msgstr "" @@ -1080,8 +1096,8 @@ msgstr "" msgid "Read linker script" msgstr "" -#: lexsup.c:225 lexsup.c:237 lexsup.c:280 lexsup.c:292 lexsup.c:337 -#: lexsup.c:356 lexsup.c:373 +#: lexsup.c:225 lexsup.c:237 lexsup.c:282 lexsup.c:294 lexsup.c:339 +#: lexsup.c:358 lexsup.c:375 msgid "SYMBOL" msgstr "" @@ -1113,7 +1129,7 @@ msgstr "" msgid "Trace mentions of SYMBOL" msgstr "" -#: lexsup.c:239 lexsup.c:319 lexsup.c:321 +#: lexsup.c:239 lexsup.c:321 lexsup.c:323 msgid "PATH" msgstr "" @@ -1121,337 +1137,337 @@ msgstr "" msgid "Default search path for Solaris compatibility" msgstr "" -#: lexsup.c:241 +#: lexsup.c:242 msgid "Ignored for Solaris compatibility" msgstr "" -#: lexsup.c:243 +#: lexsup.c:245 msgid "Start a group" msgstr "" -#: lexsup.c:245 +#: lexsup.c:247 msgid "End a group" msgstr "" -#: lexsup.c:247 +#: lexsup.c:249 msgid "Ignored for SunOS compatibility" msgstr "" -#: lexsup.c:249 +#: lexsup.c:251 msgid "Link against shared libraries" msgstr "" -#: lexsup.c:255 +#: lexsup.c:257 msgid "Do not link against shared libraries" msgstr "" -#: lexsup.c:263 +#: lexsup.c:265 msgid "Bind global references locally" msgstr "" -#: lexsup.c:265 +#: lexsup.c:267 msgid "Check section addresses for overlaps (default)" msgstr "" -#: lexsup.c:267 +#: lexsup.c:269 msgid "Do not check section addresses for overlaps" msgstr "" -#: lexsup.c:270 +#: lexsup.c:272 msgid "Output cross reference table" msgstr "" -#: lexsup.c:272 +#: lexsup.c:274 msgid "SYMBOL=EXPRESSION" msgstr "" -#: lexsup.c:272 +#: lexsup.c:274 msgid "Define a symbol" msgstr "" -#: lexsup.c:274 +#: lexsup.c:276 msgid "Demangle symbol names" msgstr "" -#: lexsup.c:276 +#: lexsup.c:278 msgid "PROGRAM" msgstr "" -#: lexsup.c:276 +#: lexsup.c:278 msgid "Set the dynamic linker to use" msgstr "" -#: lexsup.c:278 +#: lexsup.c:280 msgid "Generate embedded relocs" msgstr "" -#: lexsup.c:280 +#: lexsup.c:282 msgid "Call SYMBOL at unload-time" msgstr "" -#: lexsup.c:282 +#: lexsup.c:284 msgid "Force generation of file with .exe suffix" msgstr "" -#: lexsup.c:284 +#: lexsup.c:286 msgid "Remove unused sections (on some targets)" msgstr "" -#: lexsup.c:287 +#: lexsup.c:289 msgid "Don't remove unused sections (default)" msgstr "" -#: lexsup.c:290 +#: lexsup.c:292 msgid "Print option help" msgstr "" -#: lexsup.c:292 +#: lexsup.c:294 msgid "Call SYMBOL at load-time" msgstr "" -#: lexsup.c:294 +#: lexsup.c:296 msgid "Write a map file" msgstr "" -#: lexsup.c:296 +#: lexsup.c:298 msgid "Do not demangle symbol names" msgstr "" -#: lexsup.c:298 +#: lexsup.c:300 msgid "Use less memory and more disk I/O" msgstr "" -#: lexsup.c:300 +#: lexsup.c:302 msgid "Allow no undefined symbols" msgstr "" -#: lexsup.c:302 +#: lexsup.c:304 msgid "Don't warn about mismatched input files" msgstr "" -#: lexsup.c:304 +#: lexsup.c:306 msgid "Turn off --whole-archive" msgstr "" -#: lexsup.c:306 +#: lexsup.c:308 msgid "Create an output file even if errors occur" msgstr "" -#: lexsup.c:310 +#: lexsup.c:312 msgid "Specify target of output file" msgstr "" -#: lexsup.c:312 +#: lexsup.c:314 msgid "Ignored for Linux compatibility" msgstr "" -#: lexsup.c:314 +#: lexsup.c:316 msgid "Relax branches on certain targets" msgstr "" -#: lexsup.c:317 +#: lexsup.c:319 msgid "Keep only symbols listed in FILE" msgstr "" -#: lexsup.c:319 +#: lexsup.c:321 msgid "Set runtime shared library search path" msgstr "" -#: lexsup.c:321 +#: lexsup.c:323 msgid "Set link time shared library search path" msgstr "" -#: lexsup.c:323 +#: lexsup.c:325 msgid "Create a shared library" msgstr "" -#: lexsup.c:327 +#: lexsup.c:329 msgid "Sort common symbols by size" msgstr "" -#: lexsup.c:331 +#: lexsup.c:333 msgid "Split output sections for each file" msgstr "" -#: lexsup.c:333 +#: lexsup.c:335 msgid "COUNT" msgstr "" -#: lexsup.c:333 +#: lexsup.c:335 msgid "Split output sections every COUNT relocs" msgstr "" -#: lexsup.c:335 +#: lexsup.c:337 msgid "Print memory usage statistics" msgstr "" -#: lexsup.c:337 +#: lexsup.c:339 msgid "Do task level linking" msgstr "" -#: lexsup.c:339 +#: lexsup.c:341 msgid "Use same format as native linker" msgstr "" -#: lexsup.c:341 +#: lexsup.c:343 msgid "SECTION=ADDRESS" msgstr "" -#: lexsup.c:341 +#: lexsup.c:343 msgid "Set address of named section" msgstr "" -#: lexsup.c:343 +#: lexsup.c:345 msgid "Set address of .bss section" msgstr "" -#: lexsup.c:345 +#: lexsup.c:347 msgid "Set address of .data section" msgstr "" -#: lexsup.c:347 +#: lexsup.c:349 msgid "Set address of .text section" msgstr "" -#: lexsup.c:349 +#: lexsup.c:351 msgid "Output lots of information during link" msgstr "" -#: lexsup.c:353 +#: lexsup.c:355 msgid "Read version information script" msgstr "" -#: lexsup.c:356 +#: lexsup.c:358 msgid "" "Take export symbols list from .exports, using\n" "\t\t\t\tSYMBOL as the version." msgstr "" -#: lexsup.c:359 +#: lexsup.c:361 msgid "Warn about duplicate common symbols" msgstr "" -#: lexsup.c:361 +#: lexsup.c:363 msgid "Warn if global constructors/destructors are seen" msgstr "" -#: lexsup.c:364 +#: lexsup.c:366 msgid "Warn if the multiple GP values are used" msgstr "" -#: lexsup.c:366 +#: lexsup.c:368 msgid "Warn only once per undefined symbol" msgstr "" -#: lexsup.c:368 +#: lexsup.c:370 msgid "Warn if start of section changes due to alignment" msgstr "" -#: lexsup.c:371 +#: lexsup.c:373 msgid "Include all objects from following archives" msgstr "" -#: lexsup.c:373 +#: lexsup.c:375 msgid "Use wrapper functions for SYMBOL" msgstr "" -#: lexsup.c:375 +#: lexsup.c:377 msgid "[=WORDS]" msgstr "" -#: lexsup.c:375 +#: lexsup.c:377 msgid "" "Modify problematic branches in last WORDS (1-10,\n" "\t\t\t\tdefault 5) words of a page" msgstr "" -#: lexsup.c:525 +#: lexsup.c:527 #, c-format msgid "%s: use the --help option for usage information\n" msgstr "" -#: lexsup.c:545 +#: lexsup.c:547 msgid "%P%F: unrecognized -a option `%s'\n" msgstr "" -#: lexsup.c:558 +#: lexsup.c:560 msgid "%P%F: unrecognized -assert option `%s'\n" msgstr "" -#: lexsup.c:649 +#: lexsup.c:651 msgid "%P%F: invalid number `%s'\n" msgstr "" -#: lexsup.c:824 +#: lexsup.c:826 msgid "%P%F: -shared not supported\n" msgstr "" -#: lexsup.c:856 +#: lexsup.c:860 #, c-format msgid "%s: Invalid argument to option \"--section-start\"\n" msgstr "" -#: lexsup.c:867 +#: lexsup.c:871 #, c-format msgid "%s: Missing argument(s) to option \"--section-start\"\n" msgstr "" -#: lexsup.c:921 +#: lexsup.c:928 msgid "Copyright 2000 Free Software Foundation, Inc.\n" msgstr "" -#: lexsup.c:922 +#: lexsup.c:929 msgid "" "This program is free software; you may redistribute it under the terms of\n" "the GNU General Public License. This program has absolutely no warranty.\n" msgstr "" -#: lexsup.c:1013 +#: lexsup.c:1022 #, c-format msgid "%s: may not nest groups (--help for usage)\n" msgstr "" -#: lexsup.c:1024 +#: lexsup.c:1033 #, c-format msgid "%s: group ended before it began (--help for usage)\n" msgstr "" -#: lexsup.c:1041 +#: lexsup.c:1050 #, c-format msgid "%s: Invalid argument to option \"mpc860c0\"\n" msgstr "" -#: lexsup.c:1097 +#: lexsup.c:1106 msgid "%P%F: invalid hex number `%s'\n" msgstr "" -#: lexsup.c:1109 +#: lexsup.c:1118 #, c-format msgid "Usage: %s [options] file...\n" msgstr "" -#: lexsup.c:1111 +#: lexsup.c:1120 msgid "Options:\n" msgstr "" #. Note: Various tools (such as libtool) depend upon the #. format of the listings below - do not change them. -#: lexsup.c:1190 +#: lexsup.c:1199 #, c-format msgid "%s: supported targets:" msgstr "" -#: lexsup.c:1198 +#: lexsup.c:1207 #, c-format msgid "%s: supported emulations: " msgstr "" -#: lexsup.c:1203 +#: lexsup.c:1212 #, c-format msgid "%s: emulation specific options:\n" msgstr "" -#: lexsup.c:1207 +#: lexsup.c:1216 #, c-format msgid "Report bugs to %s\n" msgstr "" @@ -1460,61 +1476,61 @@ msgstr "" msgid "%P%F: unknown format type %s\n" msgstr "" -#: pe-dll.c:144 +#: pe-dll.c:146 #, c-format msgid "%XUnsupported PEI architecture: %s\n" msgstr "" -#: pe-dll.c:377 +#: pe-dll.c:378 #, c-format msgid "%XError, duplicate EXPORT with oridinals: %s (%d vs %d)\n" msgstr "" -#: pe-dll.c:384 +#: pe-dll.c:385 #, c-format msgid "Warning, duplicate EXPORT: %s\n" msgstr "" -#: pe-dll.c:446 +#: pe-dll.c:447 #, c-format msgid "%XCannot export %s: symbol not defined\n" msgstr "" -#: pe-dll.c:452 +#: pe-dll.c:453 #, c-format msgid "%XCannot export %s: symbol wrong type (%d vs %d)\n" msgstr "" -#: pe-dll.c:459 +#: pe-dll.c:460 #, c-format msgid "%XCannot export %s: symbol not found\n" msgstr "" -#: pe-dll.c:584 +#: pe-dll.c:585 #, c-format msgid "%XError, oridinal used twice: %d (%s vs %s)\n" msgstr "" -#: pe-dll.c:831 +#: pe-dll.c:832 #, c-format msgid "%XError: %d-bit reloc in dll\n" msgstr "" -#: pe-dll.c:955 +#: pe-dll.c:956 #, c-format msgid "%s: Can't open output def file %s\n" msgstr "" -#: pe-dll.c:1077 +#: pe-dll.c:1078 msgid "; no contents available\n" msgstr "" -#: pe-dll.c:1566 +#: pe-dll.c:1567 #, c-format msgid "%XCan't open .lib file: %s\n" msgstr "" -#: pe-dll.c:1571 +#: pe-dll.c:1572 #, c-format msgid "Creating library file: %s\n" msgstr "" diff --git a/ld/scripttempl/crisaout.sc b/ld/scripttempl/crisaout.sc new file mode 100644 index 0000000..6777482 --- /dev/null +++ b/ld/scripttempl/crisaout.sc @@ -0,0 +1,122 @@ +cat <<EOF +OUTPUT_FORMAT("a.out-cris") +OUTPUT_ARCH(cris) +ENTRY(_start) +SECTIONS +{ + .text ${RELOCATING+ ${TEXT_START_ADDR}}: + { + CREATE_OBJECT_SYMBOLS; + ${RELOCATING+ __Stext = .;} + ${RELOCATING+*(.startup)} + *(.text) + ${RELOCATING+*(.text.*)} + ${RELOCATING+*(.gnu.linkonce.t*)} + ${RELOCATING+*(.rodata)} + ${RELOCATING+*(.rodata.*)} + ${RELOCATING+*(.gnu.linkonce.r*)} + + /* Do not "provide" init-start and fini-start symbols; they might be + referred to weakly, so the linker would not override the zero + default. + FIXME: It's somewhat unexpected to have code emitted by the linker + script. Some other mechanism could probably do better. */ + ${RELOCATING+. = ALIGN (2);} + ${RELOCATING+ ___init__start = .;} + ${RELOCATING+PROVIDE (___do_global_ctors = .);} + ${RELOCATING+SHORT (0xe1fc); /* push srp */} + ${RELOCATING+SHORT (0xbe7e);} + ${RELOCATING+*(.init)} + ${RELOCATING+SHORT (0x0d3e); /* jump [sp+] */} + ${RELOCATING+PROVIDE (__init__end = .);} + ${RELOCATING+PROVIDE (___init__end = .);} + + ${RELOCATING+. = ALIGN (2);} + ${RELOCATING+ ___fini__start = .;} + ${RELOCATING+PROVIDE (___do_global_dtors = .);} + ${RELOCATING+SHORT (0xe1fc); /* push srp */} + ${RELOCATING+SHORT (0xbe7e);} + ${RELOCATING+*(.fini)} + ${RELOCATING+SHORT (0x0d3e); /* jump [sp+] */} + ${RELOCATING+PROVIDE (__fini__end = .);} + ${RELOCATING+ ___fini__end = .;} + + /* Putting constructors in constant store is sane as long as + there's no need for dynamic fixups. */ + /* The constructors and destructors set symbols are unused now that + collect2 has its wicked way. */ + ${CONSTRUCTING+ ___aout_ctors_dtors_begin = .;} + ${CONSTRUCTING+ SORT(CONSTRUCTORS);} + ${CONSTRUCTING+ ___aout_ctors_dtors_end = .;} + + /* Cater to linking from ELF. */ + ${CONSTRUCTING+ PROVIDE(___ctors = .);} + ${CONSTRUCTING+ ___elf_ctors_dtors_begin = .;} + ${CONSTRUCTING+ KEEP (*crtbegin.o(.ctors))} + ${CONSTRUCTING+ KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))} + ${CONSTRUCTING+ KEEP (*(SORT(.ctors.*)))} + ${CONSTRUCTING+ KEEP (*(.ctors))} + ${CONSTRUCTING+ PROVIDE(___ctors_end = .);} + + ${CONSTRUCTING+ PROVIDE(___dtors = .);} + ${CONSTRUCTING+ KEEP (*crtbegin.o(.dtors))} + ${CONSTRUCTING+ KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))} + ${CONSTRUCTING+ KEEP (*(SORT(.dtors.*)))} + ${CONSTRUCTING+ KEEP (*(.dtors))} + ${CONSTRUCTING+ PROVIDE(___dtors_end = .);} + ${CONSTRUCTING+ ___elf_ctors_dtors_end = .;} + + ${RELOCATING+ __Etext = .;} + + /* Deprecated, use __Etext. */ + ${RELOCATING+ PROVIDE(_etext = .);} + } + + /* Any dot-relative start-expression (such as "ALIGN(2)", also including + the "default" .data alignment expression) will use the initial, raw + size of .text and will be incorrect if the alignment used is less + than the alignment for .text (which might depend on input and obj + format). FIXME: Seems like a bug in ld. Seems hard to fix. Seems + unimportant. */ + .data : + { + ${RELOCATING+ __Sdata = .;} + *(.data); + ${RELOCATING+*(.data.*)} + ${RELOCATING+*(.gnu.linkonce.d*)} + ${RELOCATING+*(.eh_frame) /* FIXME: Make .text */} + ${RELOCATING+*(.gcc_except_table)} + ${RELOCATING+ __Edata = .;} + + /* Deprecated, use __Edata. */ + ${RELOCATING+ PROVIDE(_edata = .);} + } + + .bss : + { + /* Deprecated, use __Sbss. */ + ${RELOCATING+ PROVIDE(_bss_start = .);} + + ${RELOCATING+ __Sbss = .;} + *(.bss) + ${RELOCATING+*(.bss.*)} + *(COMMON) + ${RELOCATING+ __Ebss = .;} + + /* Deprecated, use __Ebss or __Eall as appropriate. */ + ${RELOCATING+ PROVIDE(_end = .);} + ${RELOCATING+ PROVIDE(__end = .);} + } + ${RELOCATING+ __Eall = .;} + + /* Unfortunately, stabs are not mappable from ELF to a.out. + It can probably be fixed with some amount of work. */ + /DISCARD/ : { *(.stab) *(.stab*) *(.debug) *(.debug*) *(.comment) } + + /* For the rsim and xsim simulators. */ + ${RELOCATING+ PROVIDE(__Endmem = 0x10000000);} + + /* For elinux. */ + ${RELOCATING+ PROVIDE(__Stacksize = 0);} +} +EOF |