aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ld/ChangeLog55
-rw-r--r--ld/scripttempl/crisaout.sc8
-rw-r--r--ld/scripttempl/elf.sc8
-rw-r--r--ld/scripttempl/elf_chaos.sc8
-rw-r--r--ld/scripttempl/elfd10v.sc8
-rw-r--r--ld/scripttempl/elfd30v.sc8
-rw-r--r--ld/scripttempl/elfxtensa.sc8
-rw-r--r--ld/scripttempl/iq2000.sc8
-rw-r--r--ld/scripttempl/mmo.sc8
-rw-r--r--ld/scripttempl/xstormy16.sc8
10 files changed, 71 insertions, 56 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 848853f..5c280dc 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,18 @@
+2003-04-14 Alan Modra <amodra@bigpond.net.au>
+
+ From Prashanth Tamraparni <prashanth_t@in.ibm.com>
+ * scripttempl/elf.sc (CTOR): Handle crtbeginS.o, crtendS.o and
+ other variants of crtbegin.o, crtend.o.
+ (DTOR): Likewise.
+ * scripttempl/crisaout.sc (ctors, dtors): Likewise.
+ * scripttempl/elf_chaos.sc (CTOR, DTOR): Likewise.
+ * scripttempl/elfd10v.sc (CTOR, DTOR): Likewise.
+ * scripttempl/elfd30v.sc (CTOR, DTOR): Likewise.
+ * scripttempl/elfxtensa.sc (CTOR, DTOR): Likewise.
+ * scripttempl/iq2000.sc (CTOR, DTOR): Likewise.
+ * scripttempl/mmo.sc (ctors, dtors): Likewise.
+ * scripttempl/xstormy16.sc (CTOR, DTOR): Likewise.
+
2003-04-09 Dmitry Diky <diwil@mail.ru>
* scripttempl/elf32msp430.sc: Add initX, finiX, ctors, dtors
@@ -56,16 +71,16 @@
2003-04-01 Bob Wilson <bob.wilson@acm.org>
- * Makefile.am (ALL_EMULATIONS): Add eelf32xtensa.o.
- (eelf32xtensa.c): New target.
- * Makefile.in: Regenerate.
- * configure.tgt: Handle xtensa-*-*.
- * gen-doc.texi: Set XTENSA variable.
- * ld.texinfo: Set XTENSA variable. Add new Xtensa node.
- * emulparams/elf32xtensa.sh: New file.
- * emulparams/xtensa-config.sh: Likewise.
- * emultempl/xtensaelf.em: Likewise.
- * scripttempl/elfxtensa.sc: Likewise.
+ * Makefile.am (ALL_EMULATIONS): Add eelf32xtensa.o.
+ (eelf32xtensa.c): New target.
+ * Makefile.in: Regenerate.
+ * configure.tgt: Handle xtensa-*-*.
+ * gen-doc.texi: Set XTENSA variable.
+ * ld.texinfo: Set XTENSA variable. Add new Xtensa node.
+ * emulparams/elf32xtensa.sh: New file.
+ * emulparams/xtensa-config.sh: Likewise.
+ * emultempl/xtensaelf.em: Likewise.
+ * scripttempl/elfxtensa.sc: Likewise.
2003-04-01 Jakub Jelinek <jakub@redhat.com>
@@ -95,11 +110,11 @@
directory name.
(add_keepsyms_file): Fix memory leak.
* ldmisc.c (vfinfo): Likewise.
- * lexsup.c (parse_args): Likewise
+ * lexsup.c (parse_args): Likewise.
2003-03-25 Stan Cox <scox@redhat.com>
Nick Clifton <nickc@redhat.com>
-
+
Contribute support for Intel's iWMMXt chip - an ARM variant:
* emulparams/armelf.sh (OTHER_READONLY_SECTIONS): Define.
@@ -131,12 +146,12 @@
* ldfile.c (ldfile_try_open_bfd): Pop lexer start condition after
eof.
-2003-03-18 Danny Smith <dannysmith@users.sourceforge,net>
+2003-03-18 Danny Smith <dannysmith@users.sourceforge.net>
* defilep.y (opt_base): If no number given, set to default
(-1), not 0.
-2003-03-13 Danny Smith <dannysmith@users.sourceforge,net>
+2003-03-13 Danny Smith <dannysmith@users.sourceforge.net>
* deffilep.y (def_import): Use default extension of "dll"
if no extension provided in parsed IMPORT definition.
@@ -229,7 +244,7 @@
* emultempl/pe.em: Likewise.
* emultempl/ticoff.em: Likewise.
* emultempl/elf32.em: Likewise. Don't duplicate long options either.
- (gld${EMULATION_NAME}_add_sysroot): Prototype.
+ (gld${EMULATION_NAME}_add_sysroot): Prototype.
* emultempl/armelf.em (PARSE_AND_LIST_LONGOPTS): Don't duplicate
options.
* emultempl/hppaelf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
@@ -279,7 +294,7 @@
* gen-doc.texi: Set ARM and HPPA variables.
* ld.texinfo: Fix typos and obvious texinfo mistakes. Make section
title capitalization more consistent. Add missing menu entries for
- machine-specific sections and conditionalize them consistently.
+ machine-specific sections and conditionalize them consistently.
Conditionalize text that is irrelevant when SingleFormat is set.
Add @group divisions to improve page breaks in long examples.
Use @iftex/@ifnottex instead of @iftex/@ifinfo so that HTML output
@@ -335,10 +350,10 @@
2003-02-17 Nick Clifton <nickc@redhat.com>
* ldmain.c (main) Default allow_shlib_undefined to true.
- * lexsup.c (ld_options): Add --no-allow-shlib-undefined.
- (parse_args): Parse the new switch.
- * ld.texinfo: Document new switch and default behaviour of
- allowing undefined symbols in shared libraries.
+ * lexsup.c (ld_options): Add --no-allow-shlib-undefined.
+ (parse_args): Parse the new switch.
+ * ld.texinfo: Document new switch and default behaviour of
+ allowing undefined symbols in shared libraries.
2003-02-11 Dmitry Diky <diwil@mail.ru>
diff --git a/ld/scripttempl/crisaout.sc b/ld/scripttempl/crisaout.sc
index c729668..acdca7a 100644
--- a/ld/scripttempl/crisaout.sc
+++ b/ld/scripttempl/crisaout.sc
@@ -48,15 +48,15 @@ SECTIONS
/* 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 (*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 (*crtbegin*.o(.dtors))}
+ ${CONSTRUCTING+ KEEP (*(EXCLUDE_FILE (*crtend*.o) .dtors))}
${CONSTRUCTING+ KEEP (*(SORT(.dtors.*)))}
${CONSTRUCTING+ KEEP (*(.dtors))}
${CONSTRUCTING+ PROVIDE(___dtors_end = .);}
diff --git a/ld/scripttempl/elf.sc b/ld/scripttempl/elf.sc
index 0c8ddb5..42d7bda 100644
--- a/ld/scripttempl/elf.sc
+++ b/ld/scripttempl/elf.sc
@@ -127,14 +127,14 @@ CTOR=".ctors ${CONSTRUCTING-0} :
doesn't matter which directory crtbegin.o
is in. */
- KEEP (*crtbegin.o(.ctors))
+ KEEP (*crtbegin*.o(.ctors))
/* We don't want to include the .ctor section from
from the crtend.o file until after the sorted ctors.
The .ctor section from the crtend file contains the
end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend.o $OTHER_EXCLUDE_FILES) .ctors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o $OTHER_EXCLUDE_FILES) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
${CONSTRUCTING+${CTOR_END}}
@@ -142,8 +142,8 @@ CTOR=".ctors ${CONSTRUCTING-0} :
DTOR=".dtors ${CONSTRUCTING-0} :
{
${CONSTRUCTING+${DTOR_START}}
- KEEP (*crtbegin.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend.o $OTHER_EXCLUDE_FILES) .dtors))
+ KEEP (*crtbegin*.o(.dtors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o $OTHER_EXCLUDE_FILES) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
${CONSTRUCTING+${DTOR_END}}
diff --git a/ld/scripttempl/elf_chaos.sc b/ld/scripttempl/elf_chaos.sc
index 3307689..3581289 100644
--- a/ld/scripttempl/elf_chaos.sc
+++ b/ld/scripttempl/elf_chaos.sc
@@ -116,22 +116,22 @@ CTOR="
doesn't matter which directory crtbegin.o
is in. */
- KEEP (*crtbegin.o(.ctors))
+ KEEP (*crtbegin*.o(.ctors))
/* We don't want to include the .ctor section from
from the crtend.o file until after the sorted ctors.
The .ctor section from the crtend file contains the
end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend.o $OTHER_EXCLUDE_FILES) .ctors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o $OTHER_EXCLUDE_FILES) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
${CONSTRUCTING+${CTOR_END}}
"
DTOR="
${CONSTRUCTING+${DTOR_START}}
- KEEP (*crtbegin.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend.o $OTHER_EXCLUDE_FILES) .dtors))
+ KEEP (*crtbegin*.o(.dtors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o $OTHER_EXCLUDE_FILES) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
${CONSTRUCTING+${DTOR_END}}
diff --git a/ld/scripttempl/elfd10v.sc b/ld/scripttempl/elfd10v.sc
index b24b813..834efe2 100644
--- a/ld/scripttempl/elfd10v.sc
+++ b/ld/scripttempl/elfd10v.sc
@@ -20,14 +20,14 @@ CTOR=".ctors ${CONSTRUCTING-0} :
doesn't matter which directory crtbegin.o
is in. */
- KEEP (*crtbegin.o(.ctors))
+ KEEP (*crtbegin*.o(.ctors))
/* We don't want to include the .ctor section from
from the crtend.o file until after the sorted ctors.
The .ctor section from the crtend file contains the
end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
${CONSTRUCTING+${CTOR_END}}
@@ -36,8 +36,8 @@ CTOR=".ctors ${CONSTRUCTING-0} :
DTOR=" .dtors ${CONSTRUCTING-0} :
{
${CONSTRUCTING+${DTOR_START}}
- KEEP (*crtbegin.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
+ KEEP (*crtbegin*.o(.dtors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
${CONSTRUCTING+${DTOR_END}}
diff --git a/ld/scripttempl/elfd30v.sc b/ld/scripttempl/elfd30v.sc
index b1d7b94..12d764f 100644
--- a/ld/scripttempl/elfd30v.sc
+++ b/ld/scripttempl/elfd30v.sc
@@ -12,14 +12,14 @@ CTOR=".ctors ${CONSTRUCTING-0} :
doesn't matter which directory crtbegin.o
is in. */
- KEEP (*crtbegin.o(.ctors))
+ KEEP (*crtbegin*.o(.ctors))
/* We don't want to include the .ctor section from
from the crtend.o file until after the sorted ctors.
The .ctor section from the crtend file contains the
end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
${CONSTRUCTING+ __CTOR_END__ = .; }
@@ -28,8 +28,8 @@ CTOR=".ctors ${CONSTRUCTING-0} :
DTOR=" .dtors ${CONSTRUCTING-0} :
{
${CONSTRUCTING+ __DTOR_LIST__ = .; }
- KEEP (*crtbegin.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
+ KEEP (*crtbegin*.o(.dtors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
${CONSTRUCTING+ __DTOR_END__ = .; }
diff --git a/ld/scripttempl/elfxtensa.sc b/ld/scripttempl/elfxtensa.sc
index a4ba5c8..f99d2ce 100644
--- a/ld/scripttempl/elfxtensa.sc
+++ b/ld/scripttempl/elfxtensa.sc
@@ -125,14 +125,14 @@ CTOR=".ctors ${CONSTRUCTING-0} :
doesn't matter which directory crtbegin.o
is in. */
- KEEP (*crtbegin.o(.ctors))
+ KEEP (*crtbegin*.o(.ctors))
/* We don't want to include the .ctor section from
from the crtend.o file until after the sorted ctors.
The .ctor section from the crtend file contains the
end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend.o $OTHER_EXCLUDE_FILES) .ctors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o $OTHER_EXCLUDE_FILES) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
${CONSTRUCTING+${CTOR_END}}
@@ -140,8 +140,8 @@ CTOR=".ctors ${CONSTRUCTING-0} :
DTOR=".dtors ${CONSTRUCTING-0} :
{
${CONSTRUCTING+${DTOR_START}}
- KEEP (*crtbegin.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend.o $OTHER_EXCLUDE_FILES) .dtors))
+ KEEP (*crtbegin*.o(.dtors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o $OTHER_EXCLUDE_FILES) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
${CONSTRUCTING+${DTOR_END}}
diff --git a/ld/scripttempl/iq2000.sc b/ld/scripttempl/iq2000.sc
index a07196a..db3a597 100644
--- a/ld/scripttempl/iq2000.sc
+++ b/ld/scripttempl/iq2000.sc
@@ -84,14 +84,14 @@ CTOR=".ctors ${CONSTRUCTING-0} :
doesn't matter which directory crtbegin.o
is in. */
- KEEP (*crtbegin.o(.ctors))
+ KEEP (*crtbegin*.o(.ctors))
/* We don't want to include the .ctor section from
from the crtend.o file until after the sorted ctors.
The .ctor section from the crtend file contains the
end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend.o $OTHER_EXCLUDE_FILES) .ctors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o $OTHER_EXCLUDE_FILES) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
${CONSTRUCTING+${CTOR_END}}
@@ -100,8 +100,8 @@ CTOR=".ctors ${CONSTRUCTING-0} :
DTOR=" .dtors ${CONSTRUCTING-0} :
{
${CONSTRUCTING+${DTOR_START}}
- KEEP (*crtbegin.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend.o $OTHER_EXCLUDE_FILES) .dtors))
+ KEEP (*crtbegin*.o(.dtors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o $OTHER_EXCLUDE_FILES) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
${CONSTRUCTING+${DTOR_END}}
diff --git a/ld/scripttempl/mmo.sc b/ld/scripttempl/mmo.sc
index 72e8b49..b93953d 100644
--- a/ld/scripttempl/mmo.sc
+++ b/ld/scripttempl/mmo.sc
@@ -29,8 +29,8 @@ SECTIONS
${RELOCATING+ PROVIDE (__ctors_start = .);}
${RELOCATING+ PROVIDE (_ctors = .);}
${RELOCATING+ PROVIDE (__ctors = .);}
- ${RELOCATING+ KEEP (*crtbegin.o(.ctors))}
- ${RELOCATING+ KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))}
+ ${RELOCATING+ KEEP (*crtbegin*.o(.ctors))}
+ ${RELOCATING+ KEEP (*(EXCLUDE_FILE (*crtend*.o) .ctors))}
${RELOCATING+ KEEP (*(SORT(.ctors.*)))}
${RELOCATING+ KEEP (*(.ctors))}
${RELOCATING+ PROVIDE (_ctors_end = .);}
@@ -40,8 +40,8 @@ SECTIONS
${RELOCATING+ PROVIDE (__dtors_start = .);}
${RELOCATING+ PROVIDE (_dtors = .);}
${RELOCATING+ PROVIDE (__dtors = .);}
- ${RELOCATING+ KEEP (*crtbegin.o(.dtors))}
- ${RELOCATING+ KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))}
+ ${RELOCATING+ KEEP (*crtbegin*.o(.dtors))}
+ ${RELOCATING+ KEEP (*(EXCLUDE_FILE (*crtend*.o) .dtors))}
${RELOCATING+ KEEP (*(SORT(.dtors.*)))}
${RELOCATING+ KEEP (*(.dtors))}
${RELOCATING+ PROVIDE (_dtors_end = .);}
diff --git a/ld/scripttempl/xstormy16.sc b/ld/scripttempl/xstormy16.sc
index 8981f2d..94f6093 100644
--- a/ld/scripttempl/xstormy16.sc
+++ b/ld/scripttempl/xstormy16.sc
@@ -68,14 +68,14 @@ CTOR=".ctors ${CONSTRUCTING-0} :
doesn't matter which directory crtbegin.o
is in. */
- KEEP (*crtbegin.o(.ctors))
+ KEEP (*crtbegin*.o(.ctors))
/* We don't want to include the .ctor section from
from the crtend.o file until after the sorted ctors.
The .ctor section from the crtend file contains the
end of ctors marker and it must be last */
- KEEP (*(EXCLUDE_FILE (*crtend.o $OTHER_EXCLUDE_FILES) .ctors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o $OTHER_EXCLUDE_FILES) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
${CONSTRUCTING+${CTOR_END}}
@@ -84,8 +84,8 @@ CTOR=".ctors ${CONSTRUCTING-0} :
DTOR=" .dtors ${CONSTRUCTING-0} :
{
${CONSTRUCTING+${DTOR_START}}
- KEEP (*crtbegin.o(.dtors))
- KEEP (*(EXCLUDE_FILE (*crtend.o $OTHER_EXCLUDE_FILES) .dtors))
+ KEEP (*crtbegin*.o(.dtors))
+ KEEP (*(EXCLUDE_FILE (*crtend*.o $OTHER_EXCLUDE_FILES) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
${CONSTRUCTING+${DTOR_END}}