* config/tc-alpha.c (alpha_force_relocation): Don't assert that
[binutils.git] / ld / ChangeLog
blob9fb5a6f892c47f92f8ae10b070e18a870f9dc923
1 2002-02-08  Alexandre Oliva  <aoliva@redhat.com>
3         Contribute sh64-elf.
4         2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
5         * emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined
6         in OTHER_RELOCATABLE_SECTIONS.
7         2002-01-18  Alexandre Oliva  <aoliva@redhat.com>
8         * emulparams/shelf32.sh (STACK_ADDR): Define.
9         (OTHER_RELOCATABLE_SECTIONS): Renamed to...
10         (OTHER_SECTIONS): this.  Removed stack settings.
11         * emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set.
12         (OTHER_SECTIONS): Reset after sourcing shelf32.sh.
13         2001-03-12  DJ Delorie  <dj@redhat.com>
14         * emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
15         relaxing if any shmedia or mixed sections are found.
16         2001-03-07  DJ Delorie  <dj@redhat.com>
17         * emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
18         einfo.  Gracefully decline to output to non-elf formats.
19         2001-03-06  Hans-Peter Nilsson  <hpn@redhat.com>
20         * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>:
21         Default to _end aligned to next multiple of 0x40000, plus 0x40000.
22         * emulparams/shelf32.sh: Ditto.
23         2001-01-14  Hans-Peter Nilsson  <hpn@cygnus.com>
24         * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak
25         comment.
26         2001-01-10  Ben Elliston  <bje@redhat.com>
27         * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid
28         non-portable shell constructs. From Hans-Peter Nilsson.
29         2001-01-09  Hans-Peter Nilsson  <hpn@cygnus.com>
30         * emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty.
31         * Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
32         dependencies to the shell script include chain.
33         * Makefile.in: Regenerate.
34         2001-01-06  Hans-Peter Nilsson  <hpn@cygnus.com>
35         * emultempl/sh64elf.em: Update and tweak comments.
36         (sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
37         make a .cranges section SEC_IN_MEMORY.
38         2000-12-30  Hans-Peter Nilsson  <hpn@cygnus.com>
39         * emultempl/sh64elf.em
40         (sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
41         .cranges section found to be necessary; continue and set stored
42         section contents flags for sections with non-mixed contents.
43         Use a struct sh64_section_data container and sh64_elf_section_data
44         to store contents-type flags.
45         Remove unused update of "isec".
46         (sh64_elf_${EMULATION_NAME}_after_allocation): Only process
47         sections marked SHF_SH5_ISA32_MIXED.  Use sh64_elf_section_data to
48         access contents-type flags.  Assert that the associated container
49         is initialized.  Use that container, not elf_gp_size, to hold size
50         of linker-generated cranges contents.
51         2000-12-18  Hans-Peter Nilsson  <hpn@cygnus.com>
52         * emultempl/sh64elf.em
53         (sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
54         there's already a .cranges section.  When section flag difference
55         is found, don't NULL-check cranges a second time.  Tweak comments.
56         (sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
57         merging, not max size, as size of ld-generated .cranges contents.
58         Don't set ELF section flags in output section.  When checking for
59         needed .cranges descriptors, don't use a variable; compare
60         incoming ELF section flags directly to SHF_SH5_ISA32_MIXED.  Tweak
61         comments.
62         2000-12-18  Hans-Peter Nilsson  <hpn@cygnus.com>
63         * emultempl/sh64elf.em: New file.
64         * Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies.
65         * Makefile.in: Regenerate.
66         * emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set.
67         (OTHER_RELOCATING_SECTIONS): Ditto.
68         (EXTRA_EM_FILE): New, set to sh64elf if not set.
69         * emulparams/shlelf32.sh: Stub out all settings except
70         OUTPUT_FORMAT.  Source shelf32.sh.
71         * emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and
72         OTHER_RELOCATING_SECTIONS.
73         (OTHER_RELOCATING_SECTIONS): Remove .cranges.
74         * emulparams/shlelf64.sh: Stub out all settings except
75         OUTPUT_FORMAT.  Source shelf64.sh.
76         2000-12-15  Hans-Peter Nilsson  <hpn@cygnus.com>
77         * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include
78         .cranges section.
79         (DATA_START_SYMBOLS): Define, provide ___data.
80         (OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
81         for consecutive .data section.
82         (OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
83         section after .data section.
84         * emulparams/shlelf64.sh: Ditto.
85         * emulparams/shelf32.sh: Ditto.
86         (ALIGNMENT): Define to 8.
87         * emulparams/shelf32.sh: Ditto.
88         2000-12-12  Hans-Peter Nilsson  <hpn@cygnus.com>
89         * configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
90         built-in linker scripts.
91         2000-11-30  Hans-Peter Nilsson  <hpn@cygnus.com>
92         * emulparams/shlelf64.sh: New.
93         * emulparams/shelf64.sh: New.
94         * configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
95         targ_extra_emuls.
96         * Makefile.am: Add support for shlelf64 and shelf64.
97         * Makefile.in: Regenerate.
98         2000-11-29  Hans-Peter Nilsson  <hpn@cygnus.com>
99         * configure.tgt (sh64-*-elf*): Add shelf as default.
100         Add shlelf to targ_extra_emuls.
101         2000-11-24  Hans-Peter Nilsson  <hpn@cygnus.com>
102         * emulparams/shelf32.sh: New file.
103         * emulparams/shlelf32.sh: New file.
104         * Makefile.am: Add support for shlelf32 and shelf32.
105         * configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
106         * Makefile.in: Regenerate.
108 2002-02-05  Hans-Peter Nilsson  <hp@axis.com>
110         * ldlang.c (lang_reset_memory_regions): Rename from
111         reset_memory_regions.  Change all callers.  Make public.
112         * ldlang.h (lang_reset_memory_regions): Prototype.
113         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Call
114         lang_reset_memory_regions before lang_size_sections.
115         * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
116         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Likewise.
118 2002-02-04  Hans-Peter Nilsson  <hp@bitrange.com>
120         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Use signed
121         arithmetic when checking for too many global registers.
123 2002-02-02  Jason Thorpe  <thorpej@wasabisystems.com>
125         * Makefile.am (ALL_EMULATIONS): Add ehppanbsd.o.
126         (ehppanbsd.c): New rule.
127         * Makefile.in: Regenerate.
128         * configure.tgt (hppa*-*-netbsd*): New target.
129         * emulparams/hppalinux.sh: Add comment to check other files
130         that source this file it is modified, and list which
131         files that do.
132         * emulparams/hppanbsd.sh: New file.
134 2002-02-01  Geoffrey Keating  <geoffk@redhat.com>
136         * scripttempl/xstormy16.sc: Don't allocate extra space for the
137         stack.
139 2002-02-01  Hans-Peter Nilsson  <hp@bitrange.com>
141         Support on-demand global register allocation from
142         R_MMIX_BASE_PLUS_OFFSET relocs.
143         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Rename from
144         mmix_set_reg_section_vma.  Call
145         _bfd_mmix_finalize_linker_allocated_gregs.
146         (mmix_before_allocation): New function.
147         (LDEMUL_AFTER_ALLOCATION): Set to mmix_after_allocation.
148         (LDEMUL_BEFORE_ALLOCATION): Define to mmix_before_allocation.
149         * scripttempl/mmo.sc (.text): Mark .init, .fini as KEEP.
150         (.MMIX.reg_contents): Add .MMIX.reg_contents.linker_allocated
151         before .MMIX.reg_contents.
152         * emultempl/mmo.em (gldmmo_before_allocation): Define to default.
153         (mmo_after_open): New function.
154         (LDEMUL_AFTER_OPEN): Define to mmo_after_open.
155         * emulparams/elf64mmix.sh (OTHER_SECTIONS): Tweak formatting.  Add
156         .MMIX.reg_contents.linker_allocated before .MMIX.reg_contents.
158 2002-01-31  Ivan Guzvinec  <ivang@opencores.org>
160         * emulparams/or32.sh: New file.
161         * emulparams/or32elf.sh: New file.
162         * scripttempl/or32.sc: New file.
163         * configure.tgt : Add support for or32.
164         * configure: Regenerate
165         * Makefile.am: Add support for or32.
166         * Makefile.in: Regenerate.
167         * NEWS: Mention support for or32.
168         * po/ld.pot: Regenerate.
170 2002-01-29  Chris Demetriou  <cgd@broadcom.com>
171             Mitch Lichtenberg  <mpl@broadcom.com>
173         * emulparams/elf32bmip.sh (EXTRA_EM_FILE): Define to be mipself.
174         * emultempl/mipself.em: New file to handle MIPS ELF embedded
175         reloc creation (ld --embedded-relocs).
177 2002-01-27  Daniel Jacobowitz  <drow@mvista.com>
179         * configure: Regenerated.
181 2002-01-26  Hans-Peter Nilsson  <hp@bitrange.com>
183         * Makefile.am (install): Depend on install-info.
184         * Makefile.in: Regenerate.
186 2002-01-26  Christian Rose  <menthos@menthos.com>
188         * ldmain.c (main): Use full sentences to ease translation.
190 2002-01-26  Nick Clifton  <nickc@cambridge.redhat.com>
192         * po/fr.po: Updated version.
194 2002-01-25  Nick Clifton  <nickc@cambridge.redhat.com>
196         * po/es.po: Updated version.
198 2002-01-25  Andreas Jaeger  <aj@suse.de>
200         * ldlex.l (yy_input): Correct error check.
202 2002-01-25  Alan Modra  <amodra@bigpond.net.au>
204         * ldmisc.c (demangle): Put back dots when string not demangled.
206 2002-01-22  Richard Henderson  <rth@redhat.com>
208         * emulparams/elf64alpha.sh (NOP): Use unop.
210 2002-01-21  Andreas Jaeger  <aj@suse.de>
212         * ldlex.l: Use fread instead of read.
214 2002-01-21  Jason Thorpe  <thorpej@wasabisystems.com>
216         * configure.tgt (ia64-*-netbsd*): New target.
218 2002-01-21  H.J. Lu <hjl@gnu.org>
220         * emulparams/elf32btsmip.sh (SHLIB_TEXT_START_ADDR): Change to
221         0.
222         * emulparams/elf64btsmip.sh (SHLIB_TEXT_START_ADDR): Likewise.
224 2002-01-18  Andreas Jaeger  <aj@suse.de>
226         * ldver.c (ldversion): Update year.
228 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
230         * po/ld.pot: Regenerate.
232 2002-01-16  Alan Modra  <amodra@bigpond.net.au>
234         * Makefile.am (eelf64ppc.c, eelf64lppc.c): Depend on ppc64elf.em.
235         * Makefile.in: Regenerate.
236         * emulparams/elf64ppc.sh (EXTRA_EM_FILE): Define.
237         * emultempl/ppc64elf.em: New file.
239 2002-01-15  DJ Delorie  <dj@redhat.com>
241         * scripttempl/pe.sc: Add support for constructor priorities.
243 2002-01-07  Marek Michalkiewicz  <marekm@amelek.gda.pl>
245         * emulparams/avr1200.sh (DATA_START): Define as 0x60.
246         * emulparams/avr23xx.sh: Likewise.
247         * emulparams/avr4433.sh: Likewise.
248         * emulparams/avr44x4.sh: Likewise.
249         * emulparams/avr85xx.sh: Likewise.
250         * emulparams/avrmega103.sh: Likewise.
251         * emulparams/avrmega161.sh: Likewise.
252         * emulparams/avrmega603.sh: Likewise.
253         * scripttempl/elf32avr.sc: Use DATA_START instead of 0x60.
255 2002-01-08  Alexandre Oliva  <aoliva@redhat.com>
257         * ldlang.c (walk_wild_section): Exclude object file if enclosing
258         archive is excluded.
260 2002-01-07  Jason Thorpe  <thorpej@wasabisystems.com>
262         * Makefile.am (ALL_EMULATIONS): Add eshelf_nbsd.o and eshlelf_nbsd.o.
263         (eshelf_nbsd.c): New rule.
264         (eshlelf_nbsd.c): New rule.
265         * Makefile.in: Regenerate.
266         * configure.tgt (sh*le-*-netbsdelf*): New target.
267         (sh*-*-netbsdelf*): New target.
268         * emulparams/shelf.sh: Document that shelf_nbsd.sh sources this file.
269         * ld/emulparams/shelf_nbsd.sh: New emulation.
270         * ld/emulparams/shlelf_nbsd.sh: New emulation.
272 2002-01-07  Nick Clifton  <nickc@cambridge.redhat.com>
274         * po/es.po: New file: Spanish translation.
275         * configure.in (ALL_LINGUAS): Add es.
276         * configure: Regenerate.
278 2002-01-06  John Marshall  <jmarshall@acm.org>
280         * ld.texinfo: Note that --emit-relocs is currently only
281         implemented for ELF.
283 2002-01-05  Alan Modra  <amodra@bigpond.net.au>
285         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Make use
286         of bfd_section_list_remove and bfd_section_list_insert macros.
287         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
288         * emultempl/mmo.em (mmo_place_orphan): Likewise.
290 2002-01-04  Jason Thorpe  <thorpej@wasabisystems.com>
292         * configure.tgt (x86_64-*-netbsd*): New target.
294 2001-12-21  Tom Rix  <trix@redhat.com>
296         (gld*_create_output_section_statements): New function.
297         For -binitfini support.
298         * emultempl/aix.em (gld*_before_parse): Fix comment.
299         * emultempl/aix.em (gld*_parse_args): Fix comment.
301 2001-12-20  Jason Thorpe  <thorpej@wasabisystems.com>
303         * configure.tgt (mips*-dec-netbsd*): Delete alias for
304         mips*el-*-netbsd*.
305         (sparc64-*-netbsd*): Add elf32_sparc to targ_extra_emuls.
307         * configure.tgt (arm-*-netbsdelf*): Add target.
308         (arm-*-netbsd*): Add armelf and armelf_nbsd to targ_extra_emuls.
309         * emulparams/armelf_nbsd.sh: Added.
310         * Makefile.am: Add rules for earmelf_nbsd.
311         * Makefile.in: Regenerate.
313 2001-12-19  Andreas Jaeger  <aj@suse.de>,
314             Susanne Oberhauser <froh@suse.de>
316         * configure.host: Add rules for x86_64-*linux-gnu.  Change
317         s390x-linux entry to use gcc to report configuration, replace gcc
318         with $CC in s390-linux
320 2001-12-19  Andreas Jaeger  <aj@suse.de>
322         * ld.texinfo (VERSION): Fix markup.
324 2001-12-18  matthew green  <mrg@eterna.com.au>
326         * Makefile.am (ALL_EMULATIONS): Add m68kelfnbsd.o.
327         (m68kelfnbsd.c): New rule.
328         * Makefile.in: Regenerate.
329         * configure.tgt (m68*-hp-netbsd*): Renamed to ..
330         (m68*-*-netbsd*4k*): .. this.
331         (m68*-*-netbsdelf*): New target.
332         (m68*-*-netbsd*): Also include ELF support.
333         (m68*-*-netbsdaout*): New alias for m68*-*-netbsd*.
334         * emulparams/m68kelfnbsd.sh: New emulation.
336 2001-12-18  Jakub Jelinek  <jakub@redhat.com>
338         * ldgram.y (vers_node): Support anonymous version tags.
339         * ldlang.c (lang_register_vers_node): Ensure anonymous version
340         tag is not defined together with non-anonymous versions.
341         * ld.texinfo: Document it.
343 2001-12-18  Nick Clifton  <nickc@cambridge.redhat.com>
345         * po/tr.po: New file: Turkish translation.
346         * configure.in (ALL_LINGUAS): Add tr.
347         * configure: Regenerate.
349 2001-12-17  Jason Thorpe  <thorpej@wasabisystems.com>
351         * Makefile.am: Add rules for eelf64alpha_nbsd.
352         * Makefile.in: Regenerate.
353         * configure.tgt (alpha*-*-netbsd*): Set
354         targ_emul to elf64alpha_nbsd.
355         * emulparams/elf64alpha_nbsd.sh: Added.
357 2001-12-17  Alan Modra  <amodra@bigpond.net.au>
359         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Adjust
360         section_tail when fiddling with section list.
361         (gld${EMULATION_NAME}_list_options): Ensure sentences aren't
362         broken into separate strings to make translation easier.
363         * emultempl/mmo.em (mmo_place_orphan): Adjust section_tail when
364         fiddling with section list.
365         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
367 2001-12-16  Hans-Peter Nilsson  <hp@bitrange.com>
369         * scripttempl/mmo.sc: Add .debug_ranges to listed sections.
371 2001-12-15  Alan Modra  <amodra@bigpond.net.au>
373         * ldmain.c (main): Initialise link_info.eh_frame_hdr.
375 2001-12-13  Jakub Jelinek  <jakub@redhat.com>
377         * emultempl/elf32.em (finish): Supply output_bfd
378         to bfd_elf*_discard_info.
379         (OPTION_EH_FRAME_HDR): Define.
380         (longopts): Add --eh-frame-hdr.
381         (parse_args): Handle it.
382         (list_options): Add --eh-frame-hdr to help.
383         * emultempl/hppaelf.em (finish): Supply output_bfd
384         to bfd_elf*_discard_info.
385         * scripttempl/elf.sc (.eh_frame_hdr): Add.
387 2001-12-13  Alan Modra  <amodra@bigpond.net.au>
389         * lexsup.c (parse_args): Don't pass shortopts to second call to
390         getopt functions.  Restore optind rather than decrementing before
391         second call.  Remove errind as it now duplicates last_optind.
393 2001-12-11  Christopher Faylor  <cgf@redhat.com>
395         * emultempl/pe.em (gld_${EMULATION_NAME}_list_options): Fix typo.
397 2001-12-07  Geoffrey Keating  <geoffk@redhat.com>
398             Richard Henderson  <rth@redhat.com>
400         * Makefile.am: Add support for xstormy16.
401         * configure.tgt: Add support for xstormy16.
402         * Makefile.in: Regenerate.
403         * emulparams/elf32xstormy16.sh: New file.
404         * scripttempl/xstormy16.sc: New file.
406 2001-10-01  Christopher Faylor <cgf@cygnus.com>
408         * Makefile.in (LIB_PATH): Make configurable.
409         (GENSCRIPTS): Set LIB_PATH in environment.
410         * configure.in: Substitute LIB_PATH.
411         * configure: Regenerate.
412         * configure.tgt (*cygwin): Set LIB_PATH for cross build.
413         * configure.host (*cygwin): Add /usr/lib/w32api to NATIVE_LIB_DIRS.
415 2001-12-07  Nick Clifton  <nickc@cambridge.redhat.com>
417         * lexsup.c (ld_options): Insert 'PROGRAM' into the text string
418         describing the -N option so that it is easier to translate into
419         foreign languages.
421 2001-12-05  Nick Clifton  <nickc@cambridge.redhat.com>
423         * emultempl/pe.em (..._list_options): Replace multiple fprintf
424         statements describing a single option with a single, newline
425         escaped fprintf.  This allows better translation into other
426         languages.
428         * ldmain.c (add_archive_element): Combine multiple strings
429         into a single string to permit better translation into other
430         languages.
432 2001-12-05  Tom Rix  <trix@redhat.com>
434         * Makefile.am: Remove eaixppc64.
435         * Makefile.in: Regenerate.
437 2001-12-04  Tom Rix  <trix@redhat.com>
439         * emultempl/aix.em (choose_target): Change default target to
440         OUTPUT_FORMAT for ppcmacos.  Add braces to remove compiler
441         warning.
442         (gld*_read_file):  Fix typo.
443         (change_symbol_mode): Add prototype.
444         (is_syscall): Same.
446         * emulparams/aixppc.sh (SYSCALL_MASK, SYMBOL_MODE_MASK): Delete.
447         * emulparams/aixrs6.sh : Same.
448         * emulparams/ppcmacos.sh : Same.
449         * emulparams/aixppc64.sh : Delete file.
450         * emultempl/aix.em : Formatting changes.
452 2001-12-04  Hans-Peter Nilsson  <hp@axis.com>
454         * emulparams/criself.sh (NO_SMALL_DATA): Set, to yes.
455         (OTHER_BSS_END_SYMBOLS): Don't refer to .sbss when setting
456         __Sbss.
457         (OTHER_END_SYMBOLS): Fix formatting.
458         * emulparams/crislinux.sh (NO_SMALL_DATA): Set, to yes.
459         (OTHER_END_SYMBOLS): Fix formatting.
461 2001-12-04  Alan Modra  <amodra@bigpond.net.au>
463         * ldexp.c (exp_print_token): Correct "table" entry for RSHIFT.
465 2001-12-02  Tom Rix  <trix@redhat.com>
467         * configure.tgt : Remove eaixppc64 emulations.
468         * Makefile.in : Remove eaixppc64.c
469         * ldemul.c (ldemul_choose_target): New parameters argc, argv.
470         (ldemul_default_target): Same.
471         * emultempl/gld960.em (gld960_choose_target):  Same.
472         * emultempl/gld960c.em (gld960_choose_target):  Same.
473         * scripttempl/aix.sc: Remove OUTPUT_FORMAT.
474         * emultempl/aix.em (is_syscall): syscall_mask now a variable.
475         * emultempl/aix.em (gld*_read_file): symbol_mode_mask now a variable.
476         * emultempl/aix.em (gld*_parse_args): Handle -b32 -b64 emulation.
477         * emultempl/aix.em (choose_target): New function.  Handle emulation of
478         -b32 and -b64.
480 2001-11-27  H.J. Lu <hjl@gnu.org>
482         * emulparams/elf_i386.sh (NO_SMALL_DATA): Set to yes.
483         * emulparams/elf_i386_be.sh (NO_SMALL_DATA): Likewise.
484         * emulparams/elf_i386_chaos.sh (NO_SMALL_DATA): Likewise.
485         * emulparams/elf_i386_ldso.sh (NO_SMALL_DATA): Likewise.
486         * emulparams/elf_x86_64.sh (NO_SMALL_DATA): Likewise.
487         * emulparams/m68kelf.sh (NO_SMALL_DATA): Likewise.
488         * emulparams/elf32_sparc.sh (NO_SMALL_DATA): Likewise.
489         * emulparams/elf64_sparc.sh (NO_SMALL_DATA): Likewise.
491         * scripttempl/elf.sc (SBSS): New. Define if ${NO_SMALL_DATA}
492         is not empty.
493         (SDATA): Likewise.
494         (REL_SDATA): Likewise.
495         (REL_SBSS): Likewise.
496         (REL_SDATA2): Likewise.
497         (REL_SBSS2): Likewise.
498         (SBSS2): Define if ${NO_SMALL_DATA} is not empty.
499         (SDATA2): Likewise.
501 2001-11-25  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
503         * scripttempl/elfm68hc11.sc (CTOR, DTOR): Put constructor and
504         destructor in rom.
505         * scripttempl/elfm68hc12.sc (CTOR, DTOR): Likewise.
507 2001-11-22  H.J. Lu  <hjl@gnu.org>
509         * Makefile.in: Regenerated with automake based on automake
510         1.4-8 in RedHat 7.1.
512 2001-11-22  Alan Modra  <amodra@bigpond.net.au>
514         * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
515         (config.status): Delete rule.
516         Add extra dependencies to cover sourced emulparams files.
517         * Makefile.in: Regenerate.
519         * scripttempl/elf.sc: Order <section>, <section>.* and
520         corresponding linkonce sections as seen in input files.
521         Formatting fixes.  Zero vma of all sections if not relocating.
522         (STACK): Define and insert if STACK_ADDR defined.
523         (OTHER_RELOCATING_SECTIONS): Delete.
524         (OTHER_END_SYMBOLS): Define.
525         (OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
526         (OTHER_READWRITE_SECTIONS): Likewise.
527         (OTHER_GOT_SECTIONS): Likewise.
528         (OTHER_SDATA_SECTIONS): Likewise.
529         (OTHER_BSS_SECTIONS): Likewise.
530         * scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
531         (OTHER_READWRITE_SECTIONS): Likewise.
532         * scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
533         (OTHER_READWRITE_SECTIONS): Likewise
535         * emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
536         (STACK_ADDR): Define.
537         * emulparams/armelf_oabi.sh: As for armelf.sh.
538         * emulparams/elf32mcore.sh: As for armelf.sh.
539         * emulparams/h8300elf.sh: As for armelf.sh.
540         * emulparams/mn10200.sh: As for armelf.sh.
541         * emulparams/shelf.sh: As for armelf.sh.
543         * emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
544         (OTHER_END_SYMBOLS): Define.
545         * emulparams/m32relf.sh: As for elf32fr30.sh.
546         * emulparams/h8300helf.sh: As for elf32fr30.sh.
547         * emulparams/h8300self.sh: As for elf32fr30.sh.
549         * emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
550         defines with RELOCATING test.
551         (OTHER_SDATA_SECTIONS): Likewise.
552         (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
553         (OTHER_END_SYMBOLS): ..this.
554         * emulparams/crislinux.sh: As for criself.sh.
556         * emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
557         if not relocating.
558         (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
559         (OTHER_SECTIONS): ..this.  Zero vma if not relocating.  Order
560         normal and linkonce sections as seen in input files.
561         * emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
562         (TEXT_DYNAMIC): Likewise.
563         (INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
564         (OTHER_SDATA_SECTIONS): Likewise.
565         * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
566         * emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
567         * emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
568         * emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
569         * emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
570         (OTHER_PLT_RELOC_SECTIONS): Likewise.
571         (OTHER_READONLY_SECTIONS): Likewise.  Order normal and linkonce
572         sections as seen in input files.
573         * emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
574         * emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
575         if not relocating.
576         (OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
577         (OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
578         * emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
579         (OTHER_SECTIONS): Instead, use this..
580         (OTHER_END_SYMBOLS): ..and this.
582         * emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
583         * emulparams/elf32bsmip.sh: Likewise.
584         * emulparams/elf32btsmip.sh: Likewise.
585         * emulparams/elf32ebmip.sh: Likewise.
586         * emulparams/elf32lmip.sh: Likewise.
587         * emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
588         * emulparams/elf32lsmip.sh: Likewise.
589         * emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
590         * emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
591         * emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
592         * emulparams/elf64btsmip.sh: Likewise.
593         * emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
594         * emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
595         * emulparams/elf32ppclinux.sh: Likewise.
596         * emulparams/elf32ppcsim.sh: Likewise.
597         * emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
598         * emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
599         * emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
600         * emulparams/h8300self.sh: Likewise.
601         * emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
602         * emulparams/sh.sh: Comment.
603         * emulparams/shl.sh: Source sh.sh, remove duplicates.
604         * emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
605         * emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
607 2001-11-21  David Heine <dlheine@tensilica.com>
608             Alan Modra  <amodra@bigpond.net.au>
610         * ldlang.c (map_input_to_output_sections): Replace "break"
611         accidentally removed with 2001-08-03 change.
612         (lang_gc_sections_1): Likewise.
614 2001-11-21  Alan Modra  <amodra@bigpond.net.au>
616         * ldlang.c (walk_wild_section): Move sec == NULL case out of loop.
618 2001-11-20  Angela Marie Thomas <angela@redhat.com>
620         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Use NULL instead
621         of false when calling lang_size_sections.
622         * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
624 2001-11-15  Alan Modra  <amodra@bigpond.net.au>
626         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Only emit this
627         function when LDEMUL_FINISH isn't set to the same name.  Don't
628         call ${LDEMUL_FINISH}.
629         (ld_${EMULATION_NAME}_emulation): Call $LDEMUL_FINISH if defined.
630         * emultempl/armelf.em (arm_elf_finish): Call
631         gld${EMULATION_NAME}_finish.
632         * emultempl/hppaelf.em (hppaelf_finish): Rename to
633         gld${EMULATION_NAME}_finish.  Call bfd_elf32_discard_info and
634         hppaelf_layout_sections_again if necessary.
635         (need_laying_out): New var.
636         (hppaelf_layaout_sections_again): Rename to
637         hppaelf_layout_sections_again.  Clear need_laying_out.
638         (PARSE_AND_LIST_OPTIONS): Format text.
640 2001-11-14  H.J. Lu  <hjl@gnu.org>
642         * emultempl/armelf.em (arm_elf_finish): Renamed from
643         gld${EMULATION_NAME}_finish.
644         (LDEMUL_FINISH): Set to arm_elf_finish.
646 2001-11-14  Daniel Jacobowitz  <drow@mvista.com>
648         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): New.
649         (struct ld_emulation_xfer_struct): Use it.
651 2001-11-13  Ross Alexander <ross.alexander@uk.neceur.com>
653         * emulparams/elf64hppa.sh (OTHER_BSS_END_SYMBOLS): Add
654         additional symbols referenced by newer crt0.o files from HP.
656 2001-11-12  Anthony Green  <green@redhat.com>
658         * emulparams/armelf.sh (DATA_START_SYMBOLS): New symbol.
660 2001-11-12  Alfred M. Szmidt  <ams@kemisten.nu>
662         * Makefile.am (GENSCRIPTS): Quote ${exec_prefix}.
663         * Makefile.in: Regenerate.
665 2001-11-02  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
667         * ld.texinfo: Use @command for commands, @option for options.
668         * Makefile.am (POD2MAN): Use 'GNU Development Tools' for
669         the page man title.
670         * Makefile.in: Rebuild.
672 2001-11-04  Chris Demetriou  <cgd@broadcom.com>
674         * configure.tgt (mips*el-*-netbsd*, mips*-*-netbsd*):
675         Add support for targets.
677 2001-11-02  Nick Clifton  <nickc@cambridge.redhat.com>
679         * configure.in (ALL_LINGUAS): Add "fr" and "sv"
680         * configure: Regernate.
681         * po/fr.po: New file.
682         * po/sv.po: New file.
684 2001-11-01  NIIBE Yutaka  <gniibe@m17n.org>
686         * configure.tgt (sh-*-linux): Set targ_emul, targ_extra_emuls
687         as little endian default and to support big endian.
689 2001-11-01  Chris Demetriou  <cgd@broadcom.com>
691         * ld.texinfo (Options): Document new option, -nostdlib.
692         * lexsup.c (OPTION_NOSTDLIB): New definition.
693         (ld_options): Add entry for "nostdlib".
694         (parse_args): Handle OPTIONS_NOSTDLIB.
695         * ldfile.c (ldfile_add_library_path): Don't add directories
696         to the search path if they weren't specified on the command line
697         and -nostdlib was specified.
698         * ld.h (ld_config_type): New member only_cmd_line_lib_dirs.
700 2001-10-31  Nick Clifton  <nickc@cambridge.redhat.com>
702         * lexsup.c (parse_args): Prevent infinite parsing loop when
703         "-rpath.a" is specified on the command line.
704         Replace calls to fprintf with calls to einfo.
706 2001-10-31  John Marshall  <jmarshall@acm.org>
708         * ld.texinfo: A historical requirement that MEMORY and SECTIONS
709         appear only once across all the linker scripts involved in a link
710         invocation no longer applies.  Make the documentation reflect
711         that.
713 2001-10-31  NIIBE Yutaka  <gniibe@m17n.org>
715         * configure.tgt: Supports sh3/sh4/sh3eb/sh4eb-unknown-linux-gnu
716         targets.
717         (sh-*-linux*): Added targ_extra_libpath.
719 2001-10-31  David Heine  <dlheine@tensilica.com>
721         * ldlang.c (lang_size_sections): Keep a valid output_offset field
722         for padding statements.
724 2001-10-30  Hans-Peter Nilsson  <hp@bitrange.com>
726         * configure.tgt (mmix-*-*): New target.
727         * Makefile.am (ALL_EMULATIONS): Add eelf64mmix.o and emmo.o.
728         Add dependencies to match.
729         * emulparams/mmo.sh, emulparams/elf64mmix.sh, emultempl/mmo.em,
730         emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em,
731         scripttempl/mmo.sc: New files.
732         * gen-doc.texi: @set MMIX.
733         * ld.texinfo: Ditto.
734         [MMIX] Add MMIX node.
735         * Makefile.in: Regenerate.
737 2001-10-29  Kazu Hirata  <kazu@hxi.com>
739         * ldlang.c: Fix a comment typo.
741 2001-10-23  Alan Modra  <amodra@bigpond.net.au>
743         * configure.host: Move alpha*-*-linux-gnu* entry to generic
744         entries, and match *-*-linux*.
746 2001-10-20  Alan Modra  <amodra@bigpond.net.au>
748         * ldgram.y (mri_script_command): Surround processing of INCLUDE
749         with ldlex_script, ldlex_popstate.
750         (ifile_p1): Likewise.
751         * ldlex.l (EOF): Don't BEGIN(SCRIPT).  Restore lineno from the
752         correct slot.
753         (lex_push_file): Save current lineno to lineno_stack.  Set lineno
754         to 1.  Don't BEGIN(SCRIPT).
755         (lex_redirect): Similarly.
756         * ldmain.c (main): Set yydebug non-zero if YYDEBUG.
758 2001-10-20  Nick Clifton  <nickc@cambridge.redhat.com>
760         * scripttempl/armcoff.sc: Define __EH_FRAME_BEGIN__ and
761         __EH_FRAME_END__ and accept eh frames into data section.
762         Add ctor and dtor sections.
764 2001-10-19  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
766         * pe-dll.c (autofilter_objectlist): Add gcrt0.o.
767         (auto-export): Fix indentation.
769 2001-10-18  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
771         * pe-dll.c (autofilter_objectlist):  Add startup objects
772         for profiling.
773         (auto-export): Constify char * p.
774         Extract file basename and use strcmp rather than ststr
775         for object lookup.
777 2001-10-18  Chris Demetriou  <cgd@broadcom.com>
779         * ldmain.c (get_emulation): Improve comment about the handling
780         of -mipsN options.
782 2001-10-17  Alan Modra  <amodra@bigpond.net.au>
784         * po/POTFILES.in: Regenerate.
786 2001-10-16  Vassili Karpov  <malc@pulsesoft.com>
788         * emultempl/elf32.em (gld*_list_options): Remove extra '\t' from
789         -z nocopyreloc and -z nocombreloc usage strings.
791 2001-10-12  Vassili Karpov  <malc@pulsesoft.com>
793         * emultempl/elf32.em (gld*_list_options): Include -z nocopyreloc
794         in usage.
796 2001-10-11  Aleksey Romanov <aromanov@ennovatenetworks.com>
798         * scripttempl/armaout.sc: Place .bss section after end of aligned
799         data section to match behaviour of aout code in constructrion of
800         header.
802 2001-10-11  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
804         * pe-dll.c (autofilter_entry_type autofilter_liblist: Add
805         startup files for mingw32 dlls to list.
807 2001-10-10  Chris Demetriou  <cgd@broadcom.com>
809         * emultempl/elf32.em: Fix shell 'if' usage for portability.
811 2001-10-08  Aldy Hernandez  <aldyh@redhat.com>
813         * configure.tgt (targ): Add arm9e-*-elf.
815 2001-10-05  H.J. Lu  <hjl@gnu.org>
817         * genscripts.sh: Fix a typo in the last change.
819 2001-10-05  Jakub Jelinek  <jakub@redhat.com>
821         * emultempl/elf32.em (gld_*_list_options): Include -z combreloc and
822         -z nocombreloc in usage.
824 2001-10-03  Jim Blandy  <jimb@redhat.com>
826         * genscripts.sh: Include a comment at the top of each generated
827         script, explaining its purpose.
829 2001-10-03  Vassili Karpov  <malc@pulsesoft.com>
831         * emultempl/elf32.em (parse_args): Handle -z nocopyreloc.
832         * NEWS: Mention -z nocopyreloc.
833         * ld.texinfo (Options): Describe nocopyreloc.
835 2001-10-03  Alan Modra  <amodra@bigpond.net.au>
837         * configure: Regenerate.
839 2001-10-02  Alan Modra  <amodra@bigpond.net.au>
841         * ldver.h (ld_program_version): Remove declaration.
842         * lexsup.c (parse_args): Move printing of copyright message..
843         * ldver.c (ldversion): .. to here.
844         Use BFD_VERSION_STRING in place of BFD_VERSION.
845         (ld_program_version): Remove.
846         * Makefile.am (Makefile): Depend on bfd/configure.in.
847         Run "make dep-am".
848         * Makefile.in: Regenerate.
850 2001-09-30  Hans-Peter Nilsson  <hp@bitrange.com>
852         * Makefile.am: Update dependencies with "make dep-am".
853         * Makefile.in: Regenerate.
855 2001-09-29  John Reiser  <jreiser@BitWagon.com>
857         * ldlang.c (lang_common): Conditionally inhibit Common allocation.
858         * lexsup.c: Add --no-define-common commandline option.
859         * ldgram.y: Add INHIBIT_COMMON_ALLOCATION script command.
860         * ldlex.l: Likewise.
861         * ld.h: Add command_line.inhibit_common_definition.
862         * ldmain.c (main): Initialize.
863         * ld.texinfo: Document.
865 2001-09-26  Alan Modra  <amodra@bigpond.net.au>
867         * ldmisc.c (USE_STDARG): Remove.
868         (info_msg): Define using VPARAMS, VA_OPEN, VA_FIXEDARG, VA_CLOSE.
869         (einfo): Likewise.
870         (minfo): Likewise.
871         (lfinfo): Likewise.
873         * ldmisc.h: Remove #ifdef ANSI_PROTOTYPES and non-ansi
874         declarations.  Update copyright.
876 2001-09-24  Charles Wilson  <cwilson@ece.gatech.edu>
878         * pe-dll.c: Remove obsoleted declaration of
879         pe_get_data_import_dll_name.
880         (pe_create_import_fixup): Fix thinko.
882         * ld.texinfo(enable-auto-import): Clarify the explanation.
884 2001-09-24  Nick Clifton  <nickc@cambridge.redhat.com>
886         * pe-dll.c (pe_create_import_fixup): Revert previous patch.
887         * emultemp/pe.em (pe_data_import_dll): Move definition outside of
888         DLL_SUPPORT controlled code.
890 2001-09-24  Charles Wilson  <cwilson@ece.gatech.edu>
892         * emultempl/pe.em(pe_data_import_dll): Make static.
893         (pe_get_data_import_dll_name): New accessor function.
894         * pe-dll.c(pe_create_import_fixup): call
895         pe_get_data_import_dll_name() from pe.em, instead of
896         directly accessing pe_data_import_dll variable from pe.em.
898 2001-09-18  Bruno Haible  <haible@clisp.cons.org>
900         * deffilep.y: Include "safe-ctype.h" instead of <ctype.h>.
901         (def_file_add_directive): Use ISSPACE instead of isspace.
902         (def_lex): Use ISDIGIT/ISXDIGIT/ISALPHA/ISALNUM instead of
903         isdigit/isxdigit/isalpha/isalnum.
904         * emultempl/aix.em: Include "safe-ctype.h" instead of <ctype.h>.
905         (gld${EMULATION_NAME}_read_file): Use ISSPACE instead of isspace.
906         * emultempl/elf32.em: Include "safe-ctype.h" instead of <ctype.h>.
907         (gld${EMULATION_NAME}_place_orphan): Use ISALNUM instead of
908         isalnum.
909         * emultempl/gld960c.em: Include "safe-ctype.h" instead of <ctype.h>.
910         (gld960_set_output_arch): Use ISUPPER/TOLOWER instead of
911         isupper/tolower.
912         * emultempl/sunos.em: Include "safe-ctype.h" instead of <ctype.h>.
913         (gld${EMULATION_NAME}_search_dir): Use ISDIGIT instead of isdigit.
914         * ldctor.c: Include "safe-ctype.h" instead of <ctype.h>.
915         (ctor_prio): Use ISDIGIT instead of isdigit.
916         * ldfile.c: Include "safe-ctype.h" instead of <ctype.h>.
917         (ldfile_open_file_search): Use ISALPHA instead of isalpha.
918         (ldfile_add_arch): Use ISUPPER/TOLOWER instead of
919         isupper/tolower.
920         * ldlang.c: Include "safe-ctype.h" instead of <ctype.h>.
921         (stricpy): Use TOLOWER instead of isupper/tolower.
922         (lang_leave_overlay_section): Use ISALNUM instead of isalnum.
923         * ldlex.l: Include "safe-ctype.h" instead of <ctype.h>.
924         (lex_warn_invalid): Use ISPRINT instead of isprint.
925         * ldmain.c: Include "safe-ctype.h" instead of <ctype.h>.
926         (main): For gettext, also set the LC_CTYPE locate facet.
927         (add_keepsyms_file): Use ISSPACE instead of isspace.
928         * lexsup.c: Include "safe-ctype.h" instead of <ctype.h>.
929         (is_num, parse_args): Use ISDIGIT instead of isdigit.
930         * mpw-elfmips.c: Include "safe-ctype.h" instead of <ctype.h>.
931         (gldelf32ebmip_place_orphan): Use ISALNUM instead of isalnum.
932         * mpw-eppcmac.c: Include "safe-ctype.h" instead of <ctype.h>.
933         (gldppcmacos_read_file): Use ISSPACE instead of isspace.
934         * pe-dll.c: Include "safe-ctype.h" instead of <ctype.h>.
935         (quoteput): Use ISSPACE instead of isspace.
936         (pe_dll_generate_implib, pe_process_import_defs): Use ISALNUM
937         instead of isalnum.
939 2001-09-18  Alan Modra  <amodra@bigpond.net.au>
941         * deffilep.y (def_stash_module): Constify "name" param.
943         * pe-dll.c: Replace CONST with const throughout.
944         (quick_symbol): Constify "n1", "n2", "n3" params.
945         (make_singleton_name_thunk): Constify "import" param.  Make
946         "buffer_len" a size_t.
947         (make_import_fixup_entry): Constify "name", "fixup_name",
948         "dll_symname" params.
949         (pe_get16): Cast args of bfd_seek.  Replace bfd_read with bfd_bread.
950         (pe_get32): Likewise.
951         (pe_implied_import_dll): Likewise.
953         * emultempl/beos.em (sort_by_file_name): Constify "ra", "rb".
954         (sort_by_section_name): Likewise.
956         * emultempl/pe.em: Move defines for arm_epoc_pe before bfd.h included.
957         (make_import_fixup): Cast printf arg, rel->address to long rather
958         than int.
959         (gld_${EMULATION_NAME}_after_open): Don't compare NULL against int.
961 2001-09-15  Alan Modra  <amodra@bigpond.net.au>
963         * ldmain.c (main): Rename BufferSize to ld_bufsz because HPUX
964         defines BufferSize.  Increase buffer size by one.
966 2001-09-14  Ralf Habacker <Ralf.Habacker@freenet.de>
968         * pe-dll.c (pe_walk_relocs_of_symbol): Fix memory leak.
970 2001-09-14  Kevin Lo <kevlo@openbsd.org>
972         * configure.tgt: Add arm-openbsd target.
974 2001-09-12  H.J. Lu  <hjl@gnu.org>
976         * Makefile.am (ALL_EMULATIONS): Move eelf64ppc.o and
977         eelf64lppc.o to ...
978         (ALL_64_EMULATIONS): Here.
979         * Makefile.in: Regenerated.
981 2001-09-12  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
983         * emultempl/pe.em(make_import_fixup): change signature to
984         take asection as well as arelec; we need this for proper
985         error reporting.  Only call pe_create_import_fixup() if
986         there is no attempt to add a constant addend to the reloc;
987         otherwise, report error condition.
988         * pe-dll.c(pe_walk_relocs_of_symbol): change signature,
989         since final argument is a pointer to make_import_fixup().
990         Change call to cb() to match make_import_fixup() signature.
991         (make_import_fixup_mark): make buffer_len unsigned.
992         * pe-dll.h: change signature of pe_walk_relocs_of_symbol.
994 2001-09-12  Charles Wilson  <cwilson@ece.gatech.edu>
996         * ld.texinfo: add verbose documentation for auto-import
997         direct-addressing workaround, to compliment the terse
998         error message.
1000 2001-09-12  Andrew MacLeod  <amacleod@redhat.com>
1002         * scripttempl/v850.sc: Add gcc_except_table sections.
1004 2001-09-11  Jeffrey A Law  (law@cygnus.com)
1006         * emulparams/h8300helf.sh: Move stack to a much higher memory address.
1007         * emulparams/h8300self.sh: Similarly.
1009 2001-09-05 Danny Smith <dannysmith@users.souceforge.net>
1011         * ld.texinfo (Options, --stack): Correct default value for stack
1012         reserve.
1014 2001-09-05  Tom Rix <trix@redhat.com>
1016         * emultempl/aix.em : Handle import file XMC_XO and syscall symbols.
1018 2001-09-03  Andreas Jaeger  <aj@suse.de>
1020         * emultempl/beos.em: Declare prototypes for comparions functions,
1021         adjust definitions.
1023 2001-09-02  Andreas Jaeger  <aj@suse.de>
1025         * emultempl/aix.em: Add missing prototype.
1026         * emultempl/lnk960.em: Likewise.
1027         * emultempl/vanilla.em: Likewise.
1028         * emultempl/armcoff.em: Likewise.
1029         * emultempl/armelf_oabi.em: Likewise.
1030         * emultempl/beos.em: Likewise.
1031         * emultempl/gld960c.em: Likewise.
1032         * emultempl/gld960.em: Likewise.
1034         * emulparams/elf64alpha.sh (PARSE_AND_LIST_PROLOGUE): Add parameter
1035         for prototype declaration.
1037 2001-08-31  Eric Christopher  <echristo@redhat.com>
1038             Jason Eckhardt  <jle@redhat.com>
1040         * ldmain.c (get_emulation): Add support for -mips32 and -mips64.
1042 2001-08-31  Andreas Jaeger  <aj@suse.de>
1044         * emultempl/pe.em: Add missing prototypes.
1045         (gld_${EMULATION_NAME}_after_open): Remove extra args to
1046         pe_find_data_imports.
1047         (pr_sym): Add unused attribute.
1049 2001-08-29  Joel Sherrill <joel@OARcorp.com>
1051         * configure.tgt (i[3456]86-*-rtems*, m68*-*-rtems*): Change
1052         default from coff to elf.
1054 2001-08-29  Jeff Law <law@redhat.com>
1056         * emulparams/h8300helf.sh: Resync with h8300elf.sh.  Update
1057         ARCH specification.
1058         * emulparams/h8300self.sh: Similarly.
1060 2001-08-28  J"orn Rennecke <amylaar@redhat.com>
1062         * Makefile.am (ALL_EMULATIONS): Add eh8300elf.o, eh8300elf.o and
1063         eh8300self.o .
1064         (eh8300elf.c, eh8300helf.c, eh8300self.c): New targets.
1065         * configure.tgt (h8300-*-elf*): New case.
1066         * emulparams/h8300elf.sh, emulparams/h8300helf.sh: New files.
1067         * emulparams/h8300self.sh: New file.
1068         * Makefile.in: Regenerated.
1070 2001-08-28  Nick Clifton  <nickc@cambridge.redhat.com>
1072         * ldmain.c (main): Rename BSIZE to BufferSize to avoid collision
1073         with macro name.
1075 2001-08-27  Linus Nordberg  <linus@swox.com>
1076             Alan Modra  <amodra@bigpond.net.au>
1078         * Makefile.am (ALL_EMULATIONS): Add eelf64ppc.o and eelf64lppc.o.
1079         (eelf64ppc.c, eelf64lppc.c): Add make targets.
1080         Run "make dep-am"
1081         * Makefile.in: Regenerate.
1082         * configure.tgt: Add powerpc64 support.  Move pdp11, pjl, pj
1083         entries to correct alphabetical position.
1084         * emulparams/elf64ppc.sh: New.
1085         * emulparams/elf64lppc.sh: New.
1087 2001-08-27  Nick Clifton  <nickc@cambridge.redhat.com>
1089         * ldmain.c (main): Declare BSIZE as static.
1091 2001-08-23  Jakub Jelinek  <jakub@redhat.com>
1093         * emultempl/elf32.em (place_orphan): Place orphan .rel* sections
1094         into .rel.dyn resp. .rela.dyn if combreloc.
1095         (get_script): If .x linker script is equal to .xn, only put it
1096         once into the binary.
1097         Add .xc and .xsc scripts.
1098         (parse_args): Handle -z combreloc and -z nocombreloc.
1099         * scripttempl/elf.sc (.rela.sbss): Fix a typo.
1100         For .xc and .xsc scripts put all .rel* or .rela* input sections
1101         but .rel*.plt and PLT-like sections into .rel.dyn resp. .rela.dyn.
1102         * genscripts.sh (GENERATE_COMBRELOC_SCRIPT): Set if SCRIPT_NAME
1103         is elf.
1104         Strip trailing whitespace from script.
1105         Generate .xc and .xsc scripts if requested.
1106         * ldmain.c (main): Initialize link_info.combreloc and
1107         link_info.spare_dynamic_tags.
1108         * lexsup.c (OPTION_SPARE_DYNAMIC_TAGS): Define.
1109         (ld_options): Add --spare-dynamic-tags option.
1110         (parse_args): Likewise.
1111         * ld.texinfo: Document -z combreloc and -z nocombreloc.
1112         * ldint.texinfo: Document .xc and .xsc linker scripts.
1113         * NEWS: Add notes about -z combreloc and SHF_MERGE.
1115 2001-08-22  H.J. Lu  <hjl@gnu.org>
1117         * emulparams/elf32fr30.sh: Add a newline.
1119 2001-08-21  Andreas Jaeger  <aj@suse.de>
1121         * deffilep.y: Add missing prototypes.
1122         * pe-dll.c: Likewise.
1124 2001-08-20  Alan Modra  <amodra@bigpond.net.au>
1126         * ldlang.c (insert_pad): Fix typos in last patch.
1128         * ldlang.c: When traversing lang_statement_union_type lists,
1129         consistently use "header.next" rather than "next".
1130         * mpw-eppcmac.c: Likewise.
1131         * emultempl/beos.em: Likewise.
1132         * emultempl/hppaelf.em: Likewise.
1133         * emultempl/pe.em: Likewise.
1134         * ldlang.h (union lang_statement_union): Remove "next" field.
1136         * ldlang.c (insert_pad): Use offsetof macro.
1137         (lang_size_sections): Always neuter padding statements.
1138         * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete.
1140         * pe-dll.c (pe_dll_fill_sections): Correct type of "relax" param
1141         passed to lang_size_sections.
1142         (pe_exe_fill_sections): Likewise.
1143         * emultempl/pe.em (output_prev_sec_find): Copied from elf32.em.
1144         (gld_${EMULATION_NAME}_place_orphan): Merge from elf32.em.
1146 2001-08-18  Alan Modra  <amodra@bigpond.net.au>
1148         * emultempl/aix.em: Formatting fixes.
1150 2001-08-18  Alan Modra  <amodra@bigpond.net.au>
1152         * ldlang.c (insert_pad): Make use of an existing pad statement if
1153         available.  Move code calculating alignment, adjusting section
1154         alignment power, and adjusting dot to ..
1155         (size_input_section): .. here.  Remove unused relax param.
1156         (lang_size_sections): Change boolean `relax' param to boolean *.
1157         Adjust call to size_input_section.  Make use of insert_pad to
1158         place pad after the assignment statement.  If relaxing, zap
1159         padding statements.
1160         (reset_memory_regions): Reset output_bfd section sizes too.
1161         (relax_again): Move to..
1162         (lang_process): ..here.  Adjust call to lang_size_sections, and
1163         remove duplicated code.
1164         * ldlang.h (lang_size_sections): Change `relax' param to boolean *.
1166 2001-08-17  Alan Modra  <amodra@bigpond.net.au>
1168         * ld.texinfo: Document that fill values now use the four least
1169         significant bytes.
1170         * emulparams/elf32fr30.sh (NOP): Update.
1171         * emulparams/elf32mcore.sh: Likewise.
1172         * emulparams/elf64_s390.sh: Likewise.
1173         * emulparams/elf_i386.sh: Likewise.
1174         * emulparams/elf_i386_be.sh: Likewise.
1175         * emulparams/elf_i386_chaos.sh: Likewise.
1176         * emulparams/elf_i386_ldso.sh: Likewise.
1177         * emulparams/elf_s390.sh: Likewise.
1178         * emulparams/elf_x86_64.sh: Likewise.
1179         * emulparams/i386moss.sh: Likewise.
1180         * emulparams/i386nw.sh: Likewise.
1181         * emulparams/m68kelf.sh: Likewise.
1182         * scripttempl/elf.sc: Update NOP comment.
1183         * scripttempl/elfi370.sc: Likewise.
1184         * scripttempl/elfm68hc11.sc: Likewise.
1185         * scripttempl/elfm68hc12.sc: Likewise.
1186         * scripttempl/nw.sc: Likewise.
1188 2001-08-15  Tom Rix <trix@redhat.com>
1190         * ldgram.y (saved_script_handle): Initialize to NULL.
1191         * ldmain.c (main): Change check on saved_script_handle.
1193 2001-08-14  Alan Modra  <amodra@bigpond.net.au>
1195         * emultempl/elf32.em: Formatting fixes.
1196         (output_prev_sec_find): Test for bfd_ind_section too;  do so by
1197         looking at sec->owner.
1198         (output_rel_find): Move function inside LDEMUL_PLACE_ORPHAN test.
1199         (gld${EMULATION_NAME}_place_orphan): Add a few comments.  Remove
1200         unused code, and reorganize orphan section placement code.
1202         * ldlang.c (wild_doit): Rename to lang_add_section.
1203         * ldlang.h: Here too.
1204         * mpw-elfmips.c: And here.
1205         * emultempl/beos.em: And here.
1206         * emultempl/elf32.em: And here.
1207         * emultempl/hppaelf.em: And here.
1208         * emultempl/pe.em: And here.
1210 2001-08-13  Richard Henderson  <rth@redhat.com>
1212         * emultempl/needrelax.em: New file.
1213         * emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Reference it.
1214         * Makefile.am (eelf64_ia64.c): Depend on it.
1215         * Makefile.in: Rebuild.
1217 2001-08-13  Alan Modra  <amodra@bigpond.net.au>
1219         * emultempl/elf32.em: For SEC_EXCLUDE sections, ensure that
1220         output_section is set non-NULL.
1222         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Return
1223         `true' for SEC_EXCLUDE sections so that the generic code doesn't
1224         needlessly create an output_section_statement.  Treat a correctly
1225         named output_section_statement with NULL bfd_section as compatible.
1227 2001-08-13  Hans-Peter Nilsson  <hp@bitrange.com>
1229         * emultempl/generic.em: Support EXTRA_EM_FILE.
1230         (ld_${EMULATION_NAME}_emulation): Support emulation parameters
1231         LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
1232         LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
1233         LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
1234         LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
1235         LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
1236         LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
1237         LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
1238         LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
1239         LDEMUL_FIND_POTENTIAL_LIBRARIES.
1241 2001-08-12  Richard Henderson  <rth@redhat.com>
1243         * scripttempl/elf.sc, scripttempl/elfd30v.sc,
1244         scripttempl/elfm68hc11.sc, scripttempl/elfm68hc12.sc,
1245         scripttempl/v850.sc: Keep .jcr data.
1247 2001-08-12  H.J. Lu  <hjl@gnu.org>
1248             Andrew Haley  <aph@cambridge.redhat.com>
1249             Nick Clifton  <nickc@redhat.com>
1251         * ldgram.y (had_script): Change name to saved_script_handle.
1252         Change type to file handle.
1253         * ld.h (had_script): Rename and retype.
1254         * ldfile.c (ldfile_open_command_file): Save the file handle
1255         used in saved_script_handle.
1256         * lexsup.c (parse_args): Do not allow -c option to alter
1257         saved_script_handle.
1258         * ldmain.c (main): Print out the linker script used if
1259         --verbose is given.  Check saved_script_handle to obtain the
1260         external linker script used, or if NULL, dump the builtin
1261         script.
1262         * ld.texinfo: Document that --verbose now dumps the linker
1263         script used, regardless of whether it was an internal or an
1264         external script.
1266 2001-08-10  Andreas Jaeger  <aj@suse.de>
1268         * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
1269         to build warnings.
1270         * configure: Regenerate.
1272 2001-08-09  Alan Modra  <amodra@bigpond.net.au>
1274         * emultempl/elf32.em (output_prev_sec_find): Add missing prototype.
1276         * scripttempl/elf.sc: Move non-text .dynamic section before
1277         .plt/.got/.sdata* group.
1278         (OTHER_GOT_SECTIONS): Move to immediately after .got.
1279         (OTHER_SDATA_SECTIONS): Add.
1280         * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than
1281         OTHER_GOT_SECTIONS.
1282         * emulparams/crislinux.sh: Likewise.
1283         * emulparams/elf32b4300.sh: Likewise.
1284         * emulparams/elf32bmip.sh: Likewise.
1285         * emulparams/elf32bmipn32.sh: Likewise.
1286         * emulparams/elf32bsmip.sh: Likewise.
1287         * emulparams/elf32btsmip.sh: Likewise.
1288         * emulparams/elf32ebmip.sh: Likewise.
1289         * emulparams/elf32elmip.sh: Likewise.
1290         * emulparams/elf32l4300.sh: Likewise.
1291         * emulparams/elf32lmip.sh: Likewise.
1292         * emulparams/elf32lsmip.sh: Likewise.
1293         * emulparams/elf32ltsmip.sh: Likewise.
1294         * emulparams/elf64bmip.sh: Likewise.
1295         * emulparams/elf64btsmip.sh: Likewise.
1296         * emulparams/elf64ltsmip.sh: Likewise.
1298 2001-08-08  Alan Modra  <amodra@bigpond.net.au>
1300         * genscripts.sh: Source the emulparams script before each output
1301         script is generated so that variables like `RELOCATING' may affect
1302         variables defined in the emulparams script.
1304 2001-08-04  Alan Modra  <amodra@bigpond.net.au>
1306         * emultempl/aix.em: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this
1307         order.
1309         * emultempl/beos.em (sort_sections): Modify for 2001-08-03 change,
1310         ie. iterate over wild_statement.section_list.
1311         (gld${EMULATION_NAME}_place_orphan): Likewise.
1313 2001-08-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1315         * scripttempl/elfm68hc12.sc (FINISH_CODE, FINISH_RELOC): New to handle
1316         .fini[0-4] sections used by _exit
1317         (CTOR, DTOR): Export ctor/dtor symbols; move them to ROM.
1318         (*.text,*.data,*.bss): Take into account .text.*, .data.*, .bss.*.
1319         * scripttempl/elfm68hc11.sc: Likewise.
1321 2001-08-03  H.J. Lu  <hjl@gnu.org>
1323         * emultempl/beos.em (init): Add the missing initialization.
1325 2001-08-03  Alan Modra  <amodra@bigpond.net.au>
1327         * ld.texinfo (Input Section Basics): Clarify ordering of output
1328         sections.
1329         * ldlang.c (callback_t): Add wildcard_list param.
1330         (walk_wild_section): Remove "section" param.  Rewrite for
1331         lang_wild_statement_type change.  Remove unique_section_p test.
1332         (walk_wild_file): Remove "section" param.
1333         (walk_wild): Remove "section" and "file" params.
1334         (lang_gc_wild): Likewise.
1335         (wild): Likewise.  Modify for lang_wild_statement_type change.
1336         (wild_sort): Likewise.  Add "sec" param.
1337         (gc_section_callback): Likewise.
1338         (output_section_callback): Likewise.  Do unique_section_p test.
1339         (map_input_to_output_sections): Modify call to wild.
1340         (lang_gc_sections_1): Likewise.
1341         (print_wild_statement): Modify for lang_wild_statement_type
1342         change.
1343         (lang_add_wild): Replace filename, filenames_sorted param with
1344         filespec.  Replace section_name, sections_sorted,
1345         exclude_filename_list with section_list.
1346         * ldlang.h (lang_add_wild): Here too.
1347         (lang_wild_statement_type): Replace section_name, sections_sorted,
1348         and exclude_filename_list with section_list.
1349         * ldgram.y (current_file): Delete.
1350         (%union): Add wildcard_list.
1351         (file_NAME_list): Set type to wildcard_list.  Build a linked list
1352         rather than calling lang_add_wild for each entry.
1353         (input_section_spec_no_keep): Call lang_add_wild here instead.
1354         * ld.h (struct wildcard_list): Declare.
1355         * mri.c (mri_draw_tree): Modify to suit new lang_add_wild.
1357 2001-08-02  Charles Wilson  <cwilson@ece.gatech.edu>
1359         * ldmain.c (main): initialize link_info.pei386_auto_import
1360         * pe-dll.c: new tables for auto-export filtering
1361         (auto_export): change API, pass abfd for contextual filtering.
1362         Loop thru tables of excluded symbols instead of comparing
1363         "by hand".
1365 2001-08-02  Paul Sokolovsky  <paul.sokolovsky@technologist.com>
1367         * pe-dll.c: new variable pe_dll_enable_extra_debug. New
1368         static variable current_sec (static struct sec *). Add
1369         forward declaration for add_bfd_to_link.
1370         (process_def_file): Don't export undefined symbols. Do not
1371         export symbols starting with  "_imp__".  Call auto_export()
1372         with new API.
1373         (pe_walk_relocs_of_symbol): New function.
1374         (generate_reloc): add optional extra debugging
1375         (pe_dll_generate_def_file): eliminate extraneous initial blank
1376         line in output
1377         (make_one): enlarge symtab to make room for __nm__ symbols
1378         (DATA auto-import support).
1379         (make_singleton_name_thunk): New function.
1380         (make_import_fixup_mark): New function.
1381         (make_import_fixup_entry): New function.
1382         (pe_create_import_fixup): New function.
1383         (add_bfd_to_link): Specify that 'name' argument is a CONST
1384         char *.
1385         * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
1386         declare new functions pe_walk_relocs_of_symbol and
1387         pe_create_import_fixup.
1388         * emultempl/pe.em: add new options --enable-auto-import,
1389         --disable-auto-import, and --enable-extra-pe-debug.
1390         (make_import_fixup): New function.
1391         (pe_find_data_imports): New function.
1392         (pr_sym): New function.
1393         (gld_${EMULATION_NAME}_after_open): Add optional extra pe
1394         debugging. Call pe_find_data_imports.  Mark .idata as DATA, not
1395         CODE.
1397 2001-08-02  Charles Wilson  <cwilson@ece.gatech.edu>
1399         * ld.texinfo: add additional documentation for
1400         --export-all-symbols.  Document --out-implib,
1401         --enable-auto-image-base, --disable-auto-image-base,
1402         --dll-search-prefix, --enable-auto-import, and
1403         --disable-auto-import.
1404         * ldint.texinfo: Add detailed documentation on auto-import
1405         implementation.
1407 2001-07-30  Nick Clifton  <nickc@cambridge.redhat.com>
1409         * ld.texinfo (Simple Assignments): Fix computation in SECTIONS
1410         example.
1412 2001-07-24  Alan Modra  <amodra@bigpond.net.au>
1414         * Makefile.am: Update dependencies with "make dep-am".
1415         * Makefile.in: Regenerate
1417 2001-07-23  Alan Modra  <amodra@bigpond.net.au>
1419         * ldcref.c (check_section_sym_xref): New function.
1420         (check_nocrossrefs): Call it.
1421         (check_nocrossref): Interate over h->refs here instead of..
1422         (check_refs): ..here.  Pass in the symbol name, section, and bfd
1423         rather than hash_entry pointers.
1424         (struct check_refs_info): Keep symbol name rather than hash entry.
1425         Remove "same".
1426         (check_reloc_refs): Tweak for above changes in check_refs_info.
1427         Only report references to section syms when symname is NULL to
1428         prevent duplicate messages for the same reloc.
1430 2001-07-19  Nick Clifton  <nickc@cambridge.redhat.com>
1432         * ldexp.c (exp_print_tree): Use stderr if config.map_file is not
1433         available.  Do not print NULL trees.
1434         (exp_print_token): Print unknown tokens with values > 126 as
1435         decimal values not ASCII characters.
1437         * ldlang.c (lang_leave_overlay): If a region is specified assign
1438         it to all sections inside the overlay unless they have been
1439         assigned to the own, non-default, memory region.
1441         * README: Add header for consistency with other README files.
1443 2001-07-14  H.J. Lu  <hjl@gnu.org>
1445         * emultempl/elf32.em (output_prev_sec_find): Never return
1446         bfd_abs_section_ptr, bfd_com_section_ptr nor
1447         bfd_und_section_ptr.
1449 2001-07-14  Nick Clifton  <nickc@cambridge.redhat.com>
1451         * Makefile.am (em32relf.c): Change dependency from generic.em to
1452         elf32.em.
1453         * Makefile.in: Regenerate.
1455 2001-07-14  matthew green  <mrg@eterna.com.au>
1457         * configure.tgt (i386-*-netbsdelf*): New target.
1458         (i386-*-netbsd*): Set targ_extra_emuls to `elf_i386'
1460 2001-07-13  Jakub Jelinek  <jakub@redhat.com>
1462         * emultempl/elf32.em (output_prev_sec_find): New.
1463         (place_orphan): Use it.
1465 2001-07-11  H.J. Lu  <hjl@gnu.org>
1467         * ldmain.c (main): Fix typos in the last change.
1469 2001-07-11  Jakub Jelinek  <jakub@redhat.com>
1471         * ldmain.c (main): Disallow -F and -f without -shared.
1473 2001-07-11  Nick Clifton  <nickc@cambridge.redhat.com>
1475         * emultempl/pe.em (after_open): Check for the output_bfd not
1476         having any coff_data structure allocated to it.
1478 2001-07-09  David O'Brien  <obrien@FreeBSD.org>
1480         * emultempl/elf32.em: Do not assuming that contents of the buffer
1481         returned from basename function will remain unchanged accross other
1482         function calls.
1484 2001-07-03  H.J. Lu  <hjl@gnu.org>
1486         * scripttempl/elf.sc (DYNAMIC_PAD): Revert the change made on
1487         2001-07-03. It creates dynamic entries even for static binaries.
1489 2001-07-03  Jakub Jelinek  <jakub@redhat.com>
1491         * scripttempl/elf.sc (DYNAMIC_PAD): New variable.
1492         (DYNAMIC): Use it to reserve few dynamic entries for
1493         post-linking tools.
1495 2001-06-27  Alan Modra  <amodra@bigpond.net.au>
1497         * emulparams/hppa64linux.sh: New file.
1498         * configure.tgt: hppa*64*-*-linux* uses hppa64linux.sh
1499         * Makefile.am (ALL_64_EMULATIONS): Add ehppa64linux.o
1500         (ehppa64linux.c): Add rule to make it.
1501         Run "make dep-am".
1502         * Makefile.in: Regenerate.
1504 2001-06-21  Hans-Peter Nilsson  <hp@axis.com>
1506         * ld.texinfo (Options, -r): Mention restrictions when using
1507         different object formats.
1509 2001-06-19  Hans-Peter Nilsson  <hp@axis.com>
1511         * ldlang.c (lang_check): Emit fatal error if relocatable link
1512         between different object flavours with relocations in input.
1514 2001-06-19  H.J. Lu  <hjl@gnu.org>
1516         * ld.texinfo (-E, --export-dynamic): Mention --version-script.
1517         (--version-script): Mention the language support.
1519 2001-06-19  H.J. Lu <hjl@gnu.org>
1521         * ldlang.c (lang_check): Revert the change mode on 2001-06-15.
1523 2001-06-18  H.J. Lu <hjl@gnu.org>
1525         * Makefile.am (ld.1): Remove the prefix `$(srcdir)/'.
1526         (diststuff): Add $(MANS).
1527         * Makefile.in: Regenerated.
1529         * ld.1: Removed.
1531 2001-06-18  Hans-Peter Nilsson  <hp@axis.com>
1533         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
1534         Update for API change in bfd_elf${ELFSIZE}_size_dynamic_sections.
1535         * mpw-elfmips.c (gldelf32ebmip_before_allocation): Ditto.
1536         * ld.h (args_type): Remove member export_dynamic.  All users
1537         changed to use struct bfd_link_info member.
1539         * Makefile.am (ecriself.c, ed10velf.c, ei386moss.c): Depend on
1540         $(srcdir)/emultempl/elf32.em, not $(srcdir)/emultempl/generic.em.
1541         * Makefile.in: Regenerate.
1543 2001-06-18  H.J. Lu  <hjl@gnu.org>
1545         * ldlang.c (init_os): Add the newline to the einfo call.
1546         (lang_check): Likewise.
1547         (lang_do_version_exports_section): Likewise.
1549 2001-06-15  H.J. Lu  <hjl@gnu.org>
1551         * lexsup.c (parse_args); Save optind to report unrecognized
1552         option.
1554 2001-06-15  Hans-Peter Nilsson  <hp@axis.com>
1556         * ldlang.c (lang_check): Emit fatal error if relocatable link
1557         between different object flavours.
1559         * lexsup.c (parse_args) <case OPTION_EXPORT_DYNAMIC, case 'E'>:
1560         Set new link_info member export_dynamic.
1561         * ldmain.c (main): Initialize new link_info member export_dynamic.
1563 2001-06-12  Nick Clifton  <nickc@cambridge.redhat.com>
1565         * ldlang.c (walk_wild): Only call walk_wild_file if
1566         lookup_name returns something.
1567         (lookup_name): If load_symbols fails, return NULL.
1568         (load_symbols): Change to a boolean function.
1569         (open_input_bfds): If load_symbols fails then do not make the
1570         executable.
1572 2001-06-08  Alan Modra  <amodra@bigpond.net.au>
1574         * ldlang.c (record_bfd_errors): Remove.
1576         * emultempl/aix.em: Fix copyright dates.
1578 2001-06-07  Andreas Jaeger  <aj@suse.de>
1580         * elf_x86_64.sh (NONPAGED_TEXT_START_ADDR): Increase.
1581         (TEXT_START_ADDR): Likewise.
1583 2001-06-06  Martin Schwidefsky <schwidefsky@de.ibm.com>
1585         * configure.host: Set HOSTING_CRT0/HOSTING_LIBS correctly for s/390.
1587 2001-06-05  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
1589         * emultempl/pe.em (init): Reduce default stack reserve to 0x200000.
1591 2001-05-31  H.J. Lu  <hjl@gnu.org>
1593         * ldlang.c (open_input_bfds): Don't change the bfd error
1594         handler whilst loading symbols.
1596 2001-05-28  Nick Clifton  <nickc@cambridge.redhat.com>
1598         * configure.tgt: Remove i370-mvs architecture, it is not currently
1599         supported.
1601 2001-05-25  H.J. Lu  <hjl@gnu.org>
1603         * emulparams/ppcmacos.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
1604         like emulparams/aixppc.sh.
1606 2001-05-25  H.J. Lu  <hjl@gnu.org>
1608         * emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Move
1609         setting of output_filename after bfd_scan_arch.
1610         * emultempl/pe.em: Likewise.
1612 2001-05-25  H.J. Lu  <hjl@gnu.org>
1614         * emulparams/aixrs6.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
1615         like emulparams/aixppc.sh.
1617         * emultempl/aix.em (sc): Use ${srcdir}/emultempl/ostring.sed
1618         instead of ${srcdir}/emultempl/stringify.sed.
1620 2001-05-25  Timothy Wall  <twall@oculustech.com>
1622         * emulparams/elf64_aix.sh: Change settings to match IBM linker
1623         output.
1625 2001-05-25  Alan Modra  <amodra@one.net.au>
1627         * configure.host: Replace linuxoldld with linux*oldld.
1628         * configure.tgt: Likewise.
1630 2001-05-24  H.J. Lu  <hjl@gnu.org>
1632         * emultempl/stringify.sed: Removed again.
1634 2001-05-24  H.J. Lu  <hjl@gnu.org>
1636         * emultempl/aix.em (OUTPUT_ARCH): Defined.
1637         (gld${EMULATION_NAME}_before_parse): Initialize
1638         ldfile_output_architecture, ldfile_output_machine and
1639         ldfile_output_machine_name from ${OUTPUT_ARCH} if possible.
1640         * emultempl/beos.em: Likewise.
1641         * emultempl/elf32.em: Likewise.
1642         * emultempl/linux.em: Likewise.
1643         * emultempl/mipsecoff.em: Likewise.
1644         * emultempl/pe.em: Likewise.
1645         * emultempl/sunos.em: Likewise.
1647 2001-05-24 Tom Rix <trix@redhat.com>
1649         * emultempl/aix.em : (gld${EMULATION_NAME}_read_file)
1650         udate import file format.
1651         (change_symbol_mode) New, same
1652         (is_syscall) New, same
1653         * emulparams/aixppc.sh : add SYSCALL_MASK and SYMBOL_MODE_MASK
1654         * emulparams/aixppc64.sh : same
1655         * emulparams/aixrs6.sh : same
1656         * emulparams/ppcmacos.sh : same
1657         * emultempl/aix.em : use strtoull to parse options
1658         * Makefile.am : add eaixppc64 emulation for xcoff64
1659         * Makefile.in : same
1660         * configure.tgt : same
1662         * scripttempl/aix.sc : default text section offset to 0x10000000
1663         default data section offset to 0x20000000
1664         add .sv3264 and .sv64 pseudo sections
1665         loader and debug sections use the currect section offset.
1667         * emultempl/aix.em : Add xcoff64 support
1668         Add -binitfini support
1669         (gld${EMULATION_NAME}_before_parse) -binitfini
1670         (gld${EMULATION_NAME}_parse_args) same
1671         (gld${EMULATION_NAME}_before_allocation) format change for special
1672         sections
1674         * emulparams/aixppc64.sh : New file for xcoff64 support
1676 2001-05-23  Alexandre Oliva  <aoliva@redhat.com>
1678         * emultempl/elf32.em (ELF_INTERPRETER_SET_DEFAULT): Use this new
1679         variable to avoid non-portable shell construct.
1681 2001-05-23  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1683         * ldmain.c (get_emulation): Add -mips5 command line argument.
1685 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
1687         * emulparams/elf_i386_ldso.sh: New, copied from elf_i386.sh.
1688         (ELF_INTERPRETER_NAME): Define it.
1689         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
1690         it.
1691         * configure.tgt (targ_emul, targ_extra_emuls)
1692         [i[3456]86-*-solaris2*, i[3456]86-*-solaris*]: Use elf_i386_ldso
1693         as primary, elf_i386 as extra.
1694         * Makefile.am (ALL_EMULATIONS): Added eelf_i386_ldso.o.
1695         (eelf_i386_ldso.c): New rule.
1696         * Makefile.in: Rebuilt.
1698 2001-05-22  Nick Clifton  <nickc@redhat.com>
1700         * lexsup.c (ld_options):  Allow -I to be an alias for
1701         --dynamic-linker.  This is for Solaris compatability.
1702         * ld.texinfo: Document that -I can be used.
1703         * ld.1: Regenerate.
1705 2001-05-16  Alan Modra  <amodra@one.net.au>
1707         * ldlang.c (wild_doit): Use linker_has_input to reliably determine
1708         whether an input section is the first one assigned to an output
1709         section.
1710         Assorted formatting fixes.
1712 2001-05-14  DJ Delorie  <dj@delorie.com>
1714         * Makefile.am (ld.dvi): Search bfd/doc for texinfo files.
1715         * Makefile.in: Ditto.
1717 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
1719         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
1720         .gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
1721         output sections.
1722         * emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
1724 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
1726         * ldlang.c (lang_process): Call bfd_merge_sections.
1728 2001-05-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1730         * ldgram.y: Fix typo.
1732 2001-05-03  H.J. Lu  <hjl@gnu.org>
1734         * emultempl/elf32.em: Include "libiberty.h".
1735         (gld${EMULATION_NAME}_vercheck): Call basename () to get the
1736         basename of the bfd filename.
1737         (gld${EMULATION_NAME}_stat_needed): Likewise.
1738         (gld${EMULATION_NAME}_try_needed): Likewise.
1739         (gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
1741 2001-05-02  H.J. Lu  <hjl@gnu.org>
1743         * emultempl/pe.em: Include <ctype.h>.
1745 2001-05-02  Johan Rydberg  <jrydberg@opencores.org>
1747         * emulparams/elf32openrisc.sh: New file.
1749         * Makefile.am: Add OpenRISC target.
1750         * Makefile.in: Regenerated.
1752         * configure.tgt: Add openrisc-*-* mapping.
1754 2001-05-02  Nick Clifton  <nickc@redhat.com>
1756         * emultempl/aix.em: Replace buystring with xstrdup.
1757         * emultempl/beos.em: Replace buystring with xstrdup.
1759 2001-05-02  H.J. Lu  <hjl@gnu.org>
1761         * ldfile.c: Include "libiberty.h".
1762         * ldlex.l: Likewise.
1764         * ldmisc.c (buystring): Removed.
1765         * ldmisc.h: Likewise.
1767         * ldfile.c: Replace buystring with xstrdup.
1768         * ldlang.c: Likewise.
1769         * ldlex.l: Likewise.
1770         * ldmain.c: Likewise.
1771         * ldmisc.c: Likewise.
1772         * lexsup.c: Likewise.
1773         * mpw-eppcmac.c: Likewise.
1775 2001-04-30  Andreas Jaeger  <aj@suse.de>
1777         * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value.
1779 2001-04-28  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
1781         * ldlang.c (load_symbols): Give emulation a chance
1782         to process unrecognized file before fatal error is
1783         reported, not after.
1785 2001-04-27  Sean McNeil <sean@mcneil.com>
1787         * configure.tgt: Add arm-vxworks target.
1788         * scripttempl/armcoff.sc: Support .text or .data as a section name
1789         prefix.
1790         Define _etext.
1792 2001-04-13  J.T. Conklin  <jtc@redback.com>
1794         * ld.texinfo: Document --fatal-warnings.
1795         * ld.1: Regenerate.
1797         * ldmisc.c (vfinfo): Set flag to inhibit making executable if
1798         warnings have been turned into errors.
1799         * lexsup.c (OPTION_WARN_FATAL): Define.
1800         (ld_options): Entry for --fatal-warnings.
1801         (parse_args): Handle OPTION_WARN_FATAL.
1802         * ld.h (ld_config_type): Add fatal_warnings field.
1804 2001-04-13  Jakub Jelinek  <jakub@redhat.com>
1806         * ldmain.c (main): Default to discard_sec_merge.
1807         * lexsup.c (OPTION_DISCARD_NONE): Define.
1808         (ld_options): Add --discard-none.
1809         (parse_args): Handle OPTION_DISCARD_NONE.
1810         * ldlang.c (wild_doit): SEC_MERGE should be set in the output
1811         section only if SEC_MERGE and SEC_STRINGS flags and entsize of
1812         all its input sections match.
1814 2001-04-05  Steven J. Hill  <sjhill@cotw.com>
1816         * Makefile.am (ALL_EMULATIONS): Add eelf32ltsmip.o.
1817         (ALL_64_EMULATIONS): Add eelf64btsmip.o and eelf64ltsmip.o.
1818         (eelf32ltsmip.c): New target.
1819         (eelf64btsmip.c): Likewise.
1820         (eelf64ltsmip.c): Likewise.
1821         * Makefile.in: Regenerated.
1823         * configure.tgt (mips*el-*-linux-gnu): Uses traditional MIPS
1824         target.
1825         (mips*-*-linux-gnu*): Likewise.
1827         * emulparams/elf32ltsmip.sh: New. Traditional little endian
1828         MIPS taget.
1829         * emulparams/elf64btsmip.sh: New. Traditional 64bit big endian
1830         target.
1831         * emulparams/elf64ltsmip.sh: New. Traditional 64bit little
1832         endian target.
1834 2001-04-05  Hans-Peter Nilsson  <hp@axis.com>
1836         * emulparams/criself.sh (EXECUTABLE_SYMBOLS): Cannot provide
1837         correct value of __Stext here.
1838         (TEXT_START_SYMBOLS): Define; always define __Stext, to start of
1839         .startup section.
1841         * emulparams/crislinux.sh: Remove FIXME.
1843 2001-04-02  Alan Modra  <alan@linuxcare.com.au>
1845         * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 64k.
1846         (TEXT_START_ADDR, TARGET_PAGE_SIZE): Likewise.
1848 2001-03-27  Hans-Peter Nilsson  <hp@axis.com>
1850         * configure.tgt (cris-*-*): Change default emulation to criself.
1851         (cris-*-*aout*): New rule.
1853 2001-03-27  Matthew Wilcox  <willy@ldl.fc.hp.com>
1855         * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 0x4000.
1856         (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
1858 2001-03-26  Andreas Jaeger  <aj@suse.de>
1860         * ld.texinfo (Overview): Fix syntax in texi code.
1862 2001-03-25  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1864         * ld.texinfo: Put @c man indications to generate the ld man page.
1865         When generating man, define all the variables.  Define SEEALSO
1866         and SYNOPSIS.  Re-organize some lines to avoid the cross references.
1867         * Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variables.
1868         (ld.1): Generate from ld.texinfo.
1869         * Makefile.in: Regenerate.
1871 2001-03-23  Mark Elbrecht <snowball3@bigfoot.com>
1873         * scripttempl/i386go32.sc: Support the GCC flags '-ffunction-sections'
1874         and '-fdata-sections'. Set the VMA of STABS sections to zero.
1876 2001-03-17  Ulrich Drepper  <drepper@redhat.com>
1878         * emultmpl/elf32.em (gld${EMULATION_NAME}_search_needed): If NAME
1879         is an absolute path look only for this file and not along the path.
1881 2001-03-17  Ulrich Drepper  <drepper@redhat.com>
1883         * emultempl/elf32.em (OPTION_GROUP): New macro.
1884         Add new option Bgroup to longopts.
1885         (gld*_parse_args): Handle GROUP_OPTION and recognize -z defs.
1886         (gld*_list_options): Add -Bgroup and -z defs.
1887         * ld.1: Document -Bgroup and -z defs.
1888         * ld.texinfo: Likewise.
1890 2001-03-07  Michael Meissner  <meissner@redhat.com>
1892         * scripttempl/elfd10v.sc (.rodata,.rodata1,.data1,.sdata): Deal
1893         with sections created by -fdata-sections.
1894         (.dynbss,.bss): Ditto.
1896 2001-03-05  Alan Modra  <alan@linuxcare.com.au>
1898         * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
1899         after_allocation_default, not gld..._before_allocation.
1901 2001-02-27  Alan Modra  <alan@linuxcare.com.au>
1903         * configure.in (BFD_VERSION): New.
1904         (AM_INIT_AUTOMAKE): Use $BFD_VERSION.
1905         * configure: Regenerate.
1906         * Makefile.am: Run "make dep-am"
1907         * Makefile.in: Regenerate.
1909 2001-02-26  Timothy Wall  <twall@cygnus.com>
1911         * emulparams/elf64_aix.sh: Add additional read-only sections;
1912         uncomment lines which are now required.
1914 2001-02-26  H.J. Lu  <hjl@gnu.org>
1916         * ldlang.c (open_input_bfds): Set the bfd error handler so
1917         that problems can be caught whilst loading symbols.
1918         (record_bfd_errors): New function: Report BFD errors and mark
1919         the executable output as being invalid.
1921 2001-02-22  Timothy Wall  <twall@cygnus.com>
1923         * configure.host: Add configuration for ia64-*-aix*.
1924         * Makefile.am (ALL_64_EMULATIONS): Add emulation for ia64-*-aix*.
1925         Add dependencies for eelf64_aix.c.
1926         * Makefile.in: Regenerate.
1927         * configure.tgt: Add ia64-*-aix* mapping.
1928         * emulparams/elf64_aix.sh: Add settings for elf64 on aix5.
1929         * testsuite/ld-bootstrap/bootstrap.exp: Exclude ia64 flavor from
1930         AIX-specific test.
1932 2001-02-20  H.J. Lu  <hjl@gnu.org>
1934         * ldfile.c (ldfile_open_file): Set entry->search_dirs_flag to
1935         false if we found the file.
1937 2001-02-18  David O'Brien  <obrien@FreeBSD.org>
1939         * configure.tgt: Add FreeBSD/Alpha, FreeBSD/x86-64, FreeBSD/ia64,
1940         FreeBSD/PowerPC, FreeBSD/arm, and FreeBSD/sparc64 entries.
1942 2001-02-18  lars brinkhoff  <lars@nocrew.org>
1944         * Makefile.am: Add PDP-11 target.
1945         * configure.tgt: Likewise.
1946         * emulparams/pdp11.sh: New file.
1948 2001-02-17  David O'Brien  <obrien@FreeBSD.org>
1950         * configure.host: Add a generic FreeBSD configuration entry such that
1951         all [modern] FreeBSD systems on all platforms will look the same.
1953 2001-02-14  H.J. Lu  <hjl@gnu.org>
1955         * configure.tgt: Remove mention of earmelf_linux26.
1957 2001-02-13  Richard Henderson  <rth@redhat.com>
1959         * emulparams/elf64_ia64.sh (OTHER_GOT_SYMBOLS): Remove.
1961 2001-02-13  H.J. Lu  <hjl@gnu.org>
1963         * ldexp.h (node_type): Add etree_provided.
1964         * ldexp.c (exp_fold_tree): Handle etree_provided. Set the node
1965         type to etree_provided if defined by PROVIDE. Allow updating
1966         for etree_provided.
1967         (exp_print_tree): Handle etree_provided.
1968         * mpw-elfmips.c (gldelf32ebmip_find_exp_assignment): Handle
1969         etree_provided.
1971 2001-02-09  David Mosberger  <davidm@hpl.hp.com>
1973         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add
1974         .IA_64.unwind.* pattern to unwind table section and
1975         .IA_64.unwind_info* pattern to unwind info section.
1977 2001-02-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1979         * Makefile.am: Add linux target for S/390.
1980         * Makefile.in: Likewise.
1981         * configure.host: Likewise.
1982         * configure.tgt: Likewise.
1983         * emulparams/elf64_s390.sh: New file.
1984         * emulparams/elf_s390.sh: New file.
1986 2001-02-09  Jakub Jelinek  <jakub@redhat.com>
1988         * configure.tgt (sparc64-*-linux-gnu*): Add elf32_sparc into
1989         targ_extra_libpath.
1990         (sparc-*-linux-gnu*): Add elf64_sparc into targ_extra_libpath.
1992 2001-02-06  Philip Blundell  <philb@gnu.org>
1994         * Makefile.am: Remove mention of earmelf_linux26.
1995         * Makefile.in: Regenerate.
1997 2001-02-04  Philip Blundell  <philb@gnu.org>
1999         * emulparams/armelf_linux.sh (TEXT_START_ADDR): Set to 0x8000.
2000         * emulparams/armelf_linux26.sh: Delete.
2001         * configure.tgt: Remove mention of armelf_linux26 emulation.
2003 2001-02-01  Nick Clifton  <nickc@redhat.com>
2005         * ld.1: Replace occurances of -oformat with --oformat.
2007 2001-01-25  Jim Driftmyer <jdrift@stny.rr.com>
2009         * ldlang.c (lang_leave_overlay): Don't set lma_region when
2010         load_base is specified.
2012 2001-01-24  Hans-Peter Nilsson  <hp@axis.com>
2014         * emultempl/elf32.em: Correct spelling in comments and listed
2015         options.
2017 2001-01-23  Alan Modra  <alan@linuxcare.com.au>
2019         * ldlang.c (lang_leave_overlay): Only set lma_region from the
2020         default for the first section of a group of overlay sections.
2022 2001-01-22  Alan Modra  <alan@linuxcare.com.au>
2024         * Makefile.am (GENSCRIPTS): Pass exec_prefix.
2025         * Makefile.in: Regenerate.
2026         * genscripts.sh: Use exec_prefix parameter to specify tool lib.
2027         Check for null tool_dir.
2029 2001-01-16  Jim Wilson  <wilson@redhat.com>
2031         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add IA_64.unwind
2032         and IA_64.unwind.info.
2034 2001-01-16  H.J. Lu  <hjl@gnu.org>
2036         * ldlang.c (lang_check): Merge the private data only if the
2037         input file has contents.
2039 2001-01-14  Alan Modra  <alan@linuxcare.com.au>
2041         * emulparams/hppalinux.sh (OUTPUT_FORMAT): Set to elf32-hppa-linux.
2043         * emultempl/hppaelf.em (hppaelf_after_parse): New function,
2044         enabling search for libmilli.  On a relocatable link, make .text
2045         sections unique.
2046         (LDEMUL_AFTER_PARSE): Define.
2047         (hppaelf_finish): Correct spelling of relocatable in comments.
2049         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
2050         rummage through the script for sections on the unique list.
2051         Correct length of strncmp for ".note".
2052         (gld${EMULATION_NAME}_check_needed): Rearrange function.
2054         * ldlang.c (unique_section_list): New var.
2055         (unique_section_p): New function.
2056         (walk_wild_section): Don't match sections on unique_section_list.
2057         (lang_add_unique): New function.
2058         Correct spelling of relocatable in comments.
2060         * ldlang.h (struct unique_sections): Declare.
2061         (unique_section_list): Declare.
2062         (unique_section_p): Declare.
2063         (lang_add_unique): Declare.
2065         * lexsup.c (ld_options): Allow --unique to take an optional arg.
2066         (parse_args [OPTION_UNIQUE]): Call lang_add_unique.
2068         * ld.texinfo (--unique): Update.
2070 2001-01-13  Nick Clifton  <nickc@redhat.com>
2072         * lexsup.c (parse_args): Remove spurious white space.
2074 2001-01-12  Nick Clifton  <nickc@redhat.com>
2076         * lexsup.c (parse_args): Update copyright date.
2078 2001-01-12  Philip Blundell  <pb@futuretv.com>
2080         * configure.host: Set HOSTING_LIBS appropriately for ix86-cygwin.
2082 2001-01-10  Kazu Hirata  <kazu@hxi.com>
2084         * scripttempl/h8300.sc: Fix formatting.  Fix a comment typo.
2085         * scripttempl/h8300h.sc: Fix formatting.
2086         * scripttempl/h8300s.sc: Likewise.
2087         * scripttempl/h8500.sc: Likewise.
2088         * scripttempl/h8500b.sc: Likewise.
2089         * scripttempl/h8500c.sc: Likewise.
2090         * scripttempl/h8500m.sc: Likewise.
2091         * scripttempl/h8500s.sc: Likewise.
2093 2000-01-07  David O'Brien  <obrien@BSDi.com>
2095         * emultempl/elf32.em: Only perform Linux ld hints processing when
2096         targeting Linux.
2098 2001-01-07  Philip Blundell  <philb@gnu.org>
2100         * ld.texinfo (Bug Reporting): Update email address for reports.
2102 2000-12-31  Nick Clifton  <nickc@redhat.com>
2104         * lexsup.c (parse_args): Set opterr to 0 and detect unparsed long
2105         options by checking for a return value of '?' not -1.
2107 2000-12-28  Nick Clifton  <nickc@redhat.com>
2109         * lexsup.c (struct ld_option): Add new enum value:
2110         EXACTLY_TWO_DASHES.
2111         (ld_options[]): Change -omagic, -output and -oformat options
2112         to be EXACTLY_TWO_DASHES.
2113         (OUTPUT_COUNT): Use ARRAY_SIZE.
2114         (parse_args): Change parameter 'argc' to unsigned.
2115         Place EXACTLY_TWO_DASHES options into new really_longopts
2116         array.
2117         If getopt_long_only fails, try calling getopt_long using the
2118         really_longopts array.
2119         (help): Print a double dash for both EXACTLY_TWO_DASHES and
2120         TWO_DASHES options.
2122         * ldlex.h: Fix prototype of parse_args.
2124         * ld.texinfo: Document that long options starting with 'o'
2125         must be preceeded by two dashes.  Change example of a single
2126         dashed long option from -oformat to -trace-symbol.
2128 2000-12-26  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
2130         * emultempl/pe.em (OPTION_NO_DEFAULT_EXCLUDES): Define.
2131         (longopts[]): New --no-default-excludes option.
2132         (gld_${EMULATION_NAME}_list_options): Document.
2133         (gld_${EMULATION_NAME}_parse_args): Handle.
2135 2000-12-13  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2137         * ldlang.c (new_stat): Revert the last beautification with "innocent"
2138         whitespace, it breaks the K&R C preprocessor.
2140 2000-12-11  DJ Delorie  <dj@redhat.com>
2142         * ld.texinfo: Add notes about --whole-archive and gcc.
2144 2000-11-18  Fred Fish  <fnf@be.com>
2146         * lexsup.c (OPTION_ALLOW_SHLIB_UNDEFINED): Define.
2147         (ld_options): Entry for --allow-shlib-undefined.
2148         (parse_args): Handle OPTION_ALLOW_SHLIB_UNDEFINED.
2149         * ldmain.c (main): Initialize link_info.allow_shlib_undefined
2150         to false.
2151         * ld.texinfo: Document new command line switch.
2153 2000-12-12  Geoffrey Keating  <geoffk@redhat.com>
2155         * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS):
2156         .fixup is actually read/write.
2157         * emulparams/elf32lppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
2158         * emulparams/elf32ppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
2159         * emulparams/elf32lppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
2161 2000-12-11  Jan Hubicka  <jh@suse.cz>
2163         * NEWS: Add note about x86_64 architecture.
2165 2000-12-06  Mark Elbrecht  <snowball3@bigfoot.com>
2167         * scripttempl/i386go32.sc: Use PROVIDE with _etext, _edata, _end.
2168         Set DWARF2 sections to a VMA of zero.
2170 2000-12-01      Joel Sherrill <joel@OARcorp.com>
2172         * configure.tgt (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
2173         New targets.
2174         (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
2175         (sparc*-*-rtems*): Switched from a.out to ELF.
2177 2000-11-30  Jan Hubicka  <jh@suse.cz>
2179         * Makefile.am (ALL_EMULATIONS): Add eelf_x86_64.o
2180         (eelf_x86_64.c): New.
2181         * Makefile.in: Regenerate.
2182         * configure.tgt: Add support for x86_64-*-linux-gnu*.
2183         * emulparams/elf_x86_64.sh: New.
2185 2000-11-30  Hans-Peter Nilsson  <hp@axis.com>
2187         * emulparams/crislinux.sh (ENTRY): Change back to _start.
2188         (TEXT_START_SYMBOLS): Remove conditional setting of __start.
2190         * scripttempl/crisaout.sc: Change all RELOCATING not related to
2191         merging non-a.out sections into CONSTRUCTING.
2193 2000-11-28  Nick Clifton  <nickc@redhat.com>
2195         * ld.1 (COPYING): Mention that the GNU Free Documentation
2196         License is present in the sources, but not the output, and
2197         also available from the GNU website.
2198         (GNU Free Documentation License): Comment out this section.
2200 2000-11-28  David O'Brien  <obrien@dragon.nuxi.com>
2202         * emulparams/elf64alpha.sh (ENTRY): Remove leading underscore as ELF
2203         does not use them.
2205 2000-11-25  David O'Brien  <obrien@FreeBSD.org>
2207         * ld.1: Remove old date so it does not give the impression the manpage
2208         is way out of date.
2210 2000-11-24  Nick Clifton  <nickc@redhat.com>
2212         * configure.tgt (xscale-coff): Add target.
2213         (xscale-elf): Add target.
2215 2000-11-24  Fred Fish  <fnf@be.com>
2217         * ldmain.c (main): Remove redundant init of config.make_executable
2218         to true.
2220 2000-11-15  Richard Henderson  <rth@redhat.com>
2222         * emulparams/elf64alpha.sh (MAXPAGESIZE): Typo -- 64k, not 1M.
2224 2000-11-14  Kazu Hirata  <kazu@hxi.com>
2226         * scripttempl/h8300.sc: Fix formatting.
2227         * scripttempl/h8300h.sc: Likewise.
2228         * scripttempl/h8300s.sc: Likewise.
2230 2000-11-14  Denis Chertykov  <denisc@overta.ru>
2232         * scripttempl/elf32avr.sc: Fix bug in .eeprom segment.
2234 2000-11-09  Philip Blundell  <pb@futuretv.com>
2236         * emultempl/pe.em: Define ___start_SECNAME and ___stop_SECNAME
2237         around orphan sections whose names can be represented in C.
2239 2000-11-07  Jim Wilson  <wilson@redhat.com>
2241         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): New local
2242         hold_sdata.  If SEC_SMALL_DATA set, set place to hold_sdata.
2244 2000-11-06  Nick Clifton  <nickc@redhat.com>
2246         * ld.texinfo: Add GNU Free Documentation License.
2247         * ldint.texinfo: Add GNU Free Documentation License.
2248         * ld.1: Add GNU Free Documentation License.
2250 2000-11-05  Alan Modra  <alan@linuxcare.com.au>
2252         * ldlex.l (yy_create_string_buffer): Init yy_is_our_buffer,
2253         yy_is_interactive, yy_at_bol, and yy_fill_buffer.
2255         * Makefile.am (DISTCLEANFILES): Add stringify.sed.
2256         Move 2000-11-02 Makefile.in changes to this file.
2257         * Makefile.in: Regenerate.
2259 2000-11-03  Nick Clifton  <nickc@redhat.com>
2261         * scripttempl/h8300.sc: Use ${CONSTRUCTING...} to enclose
2262         constructors and destructors.
2263         * scripttempl/h8300h.sc: Ditto.
2264         * scripttempl/h8300s.sc: Ditto.
2265         * scripttempl/h8500.sc: Ditto.
2266         * scripttempl/h8500b.sc: Ditto.
2267         * scripttempl/h8500c.sc: Ditto.
2268         * scripttempl/h8500m.sc: Ditto.
2269         * scripttempl/h8500s.sc: Ditto.
2270         * scripttempl/v850.sc: Ditto.
2271         * scripttempl/w65.sc: Ditto.
2272         * scripttempl/z8000.sc: Ditto.
2274 2000-11-02  Per Lundberg  <plundis@chaosdev.org>
2276         * Makefile.in (e_i386_chaos.c): New rule.
2277         (ALL_EMULATIONS): Added e_i386_chaos.o.
2278         * emulparams/elf_i386_chaos.sh: New file.
2279         * configure.tgt: Recognise i[3456]86-chaosdev-storm-chaos.
2281 2000-10-20  Jakub Jelinek  <jakub@redhat.com>
2283         * emulparams/elf64_sparc.sh (TEXT_START_ADDR,
2284         NONPAGED_TEXT_START_ADDR): Set to 4GB for Solaris targets.
2285         Fix sed invocation, so that it coped with '/' in Solaris 64bit
2286         library path suffix.
2287         Based on patch by Andrew Macleod <amacleod@cygnus.com>.
2289 2000-10-18  Hans-Peter Nilsson  <hp@axis.com>
2291         * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32),
2292         for consecutive sections.
2294 2000-10-17  Chandrakala Chavva  <cchavva@redhat.com>
2296         * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific
2297         options.
2298         * ld.texinfo: Added notes about this new option.
2300 2000-10-16  Nick Clifton  <nickc@redhat.com>
2302         * emultempl/pe.em (_after_open): Add tests of return values from
2303         bfd functions.  Emit appropriate error messages if necessary.
2305 2000-10-13  Nick Clifton  <nickc@redhat.com>
2307         * emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
2308         local variables - they are not used, but leave in the call to
2309         bfd_canonicalize_symtab.
2310         (_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
2311         pe_dll_search_prefix.
2313 2000-10-12  Charles Wilson  <cwilson@ece.gatech.edu>
2315         * emultempl/pe.em (pe_dll_search_prefix): New variable,
2316         (longopts): New --dll-search-prefix option.
2317         (gld_${EMULATION_NAME}_list_options): Document.
2318         (gld_${EMULATION_NAME}_parse_args): Handle.
2319         (gld_${EMULATION_NAME}_open_dynamic_archive): When linking
2320         dynamically, search for a dll named '<prefix><basename>.dll'
2321         in preference to 'lib<basename>.dll' if --dll-search-prefix
2322         is specified.
2324 2000-10-12  Alan Modra  <alan@linuxcare.com.au>
2326         * ldlang.c (section_already_linked): Set kept_section instead of
2327         sec->comdat->sec.
2329 2000-10-10  Kazu Hirata  <kazu@hxi.com>
2331         * deffile.h: Fix formatting.
2332         * lexsup.c: Likewise.
2333         * mri.c: Likewise.
2335 2000-10-09  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
2337         * pe-dll.c (make_one): Do not generate code thunk for DATA
2338         exports.
2339         (process_def_file): deduce DATA flag for auto-export sumbols.
2341 2000-10-09  Kazu Hirata  <kazu@hxi.com>
2343         * ld.h: Fix formatting.
2344         * ldcref.c: Likewise.
2345         * ldctor.h: Likewise.
2346         * ldemul.c: Likewise.
2347         * ldemul.h: Likewise.
2348         * ldexp.c: Likewise.
2349         * ldexp.h: Likewise.
2350         * ldfile.c: Likewise.
2351         * ldfile.h: Likewise.
2352         * ldlang.c: Likewise.
2353         * ldlang.h: Likewise.
2354         * ldmain.c: Likewise.
2355         * pe-dll.c: Likewise.
2357         * pe-dll.c: Revert some formatting fixes.
2359 2000-10-08  Kazu Hirata  <kazu@hxi.com>
2361         * pe-dll.c: Fix formatting.
2363 2000-10-05  Kazu Hirata  <kazu@hxi.com>
2365         * ldlang.c: Fix formatting.
2367 2000-10-03  DJ Delorie  <dj@redhat.com>
2369         * pe-dll.c (fill_edata): initialize entire block
2370         (make_one): fill in correct section.
2372 2000-10-03  Kazu Hirata  <kazu@hxi.com>
2374         * ldexp.c: Fix formatting.
2376 2000-10-02  DJ Delorie  <dj@redhat.com>
2378         * emultempl/pe.em (gld_*_after_open): detect case where there two
2379         import libraries for same dll; rename one to ensure proper link
2380         order.
2382         * pe-dll.c (process_def_file): compare ordinals to -1, not 0; fix
2383         typo
2384         (generate_edata): fix typo
2386 2000-09-29  Hans-Peter Nilsson  <hp@axis.com>
2388         * scripttempl/crisaout.sc (ENTRY): Now __start.
2389         (.text): Add default setting for __start.
2390         Remove CONSTRUCTORS handling.
2391         (/DISCARD/): Add .gnu.warning.*.
2392         * emulparams/crislinux.sh (ENTRY): Now __start.
2393         (TEXT_START_SYMBOLS): New; provide __Stext and __start default.
2394         * emulparams/criself.sh (OUTPUT_FORMAT): Now elf32-us-cris.
2395         (ENTRY): Now __start.
2396         (INITIAL_READONLY_SECTIONS): Add KEEP for .startup.
2397         (EXECUTABLE_SYMBOLS): Add default setting for __start.
2399 2000-09-29  Kazu Hirata  <kazu@hxi.com>
2401         * deffile.h: Fix formatting.
2402         * ld.h: Likewise.
2403         * ldcref.c: Likewise.
2404         * ldctor.c: Likewise.
2405         * ldctor.h: Likewise.
2406         * ldemul.c: Likewise.
2407         * ldemul.h: Likewise.
2408         * ldexp.c: Likewise.
2409         * ldexp.h: Likewise.
2410         * ldfile.c: Likewise.
2411         * ldfile.h: Likewise.
2412         * ldlang.c: Likewise.
2413         * ldlang.h: Likewise.
2414         * lexsup.c: Likewise.
2415         * mri.c: Likewise.
2416         * pe-dll.c: Likewise.
2418 2000-09-28  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
2420         * pe-dll.c (process_def_file): Uninitialized data wasn't
2421         exported with --export-all-symbols switch.
2423 2000-09-28  DJ Delorie  <dj@redhat.com>
2425         * pe-dll.c (fill_edata): rearrange the data so that ordinals and
2426         noname work properly.
2428 2000-09-28  Alan Modra  <alan@linuxcare.com.au>
2430         * ld.texinfo (HPPA ELF32): New section.
2432         * emultempl/hppaelf.em (group_size): New.
2433         (hppaelf_finish): Pass group_size to elf32_hppa_size_stubs.
2434         (PARSE_AND_LIST_PROLOGUE): Add OPTION_STUBGROUP_SIZE.
2435         (PARSE_AND_LIST_LONGOPTS): Add --stub-group-size.  Duplicate
2436         options to prevent abbreviations matching.
2437         (PARSE_AND_LIST_OPTIONS): Describe the above.  Reformat.
2438         (PARSE_AND_LIST_ARGS_CASES): Handle it.
2440 2000-09-21  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2442         * emultempl/m68kelf.em: Conditionalise the embedded relocs feature
2443         on the m68*-*-elf target.  Make it support COFF input objects.
2445 2000-09-21  Kazu Hirata  <kazu@hxi.com>
2447         * ldmain.c: Fix formatting.
2448         * ldmisc.c: Likewise.
2449         * ldver.c: Likewise.
2450         * ldwrite.c: Likewise.
2452 2000-09-21  Alan Modra  <alan@linuxcare.com.au>
2454         * ldwrite.c (clone_section): Silence gcc warnings.
2456 2000-09-20  Alan Modra  <alan@linuxcare.com.au>
2458         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Handle
2459         out of memory failure.
2461         * ldwrite.c (ldwrite): Remove unnecessary einfo arg.
2462         (clone_section): Handle out of memory failures.  Rename var to
2463         avoid c++ reserved word.
2465 2000-09-18  Alan Modra  <alan@linuxcare.com.au>
2467         * emultempl/hppaelf.em (hppaelf_add_stub_section): Rename
2468         stub_name param to stub_sec_name.
2469         (hppaelf_finish): Modify call to elf32_hppa_size_stubs.
2471 2000-09-10  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2473         * emultempl/m68kelf.em: New file.
2474         * emulparams/m68kelf.sh (EXTRA_EM_FILE): Use it.
2475         * Makefile.am (em68kelf.c): Add dependency on m68kelf.em.
2476         * Makefile.in: Regenerate.
2478 2000-09-15  Alan Modra  <alan@linuxcare.com.au>
2480         * emulparams/hppalinux.sh (DATA_START_SYMBOLS): Provide $global$
2481         only as needed.
2483 2000-09-13  Nick Clifton  <nickc@redhat.com>
2485         * ldmain.c (multiple_definition): Disable relaxation if
2486         multiple symbol definitions are encountered - otherwise the
2487         linker could abort with an assertion failure.
2489 2000-09-10  Nick Clifton  <nickc@redhat.com>
2491         * mri.c: Fix formatting.
2493 2000-09-07  H.J. Lu  <hjl@gnu.org>
2495         * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
2496         * configure: Rebuild.
2498 2000-09-07  H.J. Lu  <hjl@gnu.org>
2500         * Makefile.am (lexsup.o): Also depend on $(INCDIR)/demangle.h.
2501         * Makefile.in: Rebuild.
2503 2000-09-07  Alan Modra  <alan@linuxcare.com.au>
2505         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Fix
2506         broken list handling.  Create __start_SECNAME and __stop_SECNAME
2507         when no place-holder.  Add some comments.  Test both SEC_CODE and
2508         SEC_READONLY for hold_text to prevent .rodata orphan poisoning.
2509         Handle case where no output section statement created.
2511 2000-09-07  Niibe Yutaka  <gniibe@m17n.org>, Kaz Kojima  <kkojima@rr.iij4u.or.jp>, Alexandre Oliva  <aoliva@redhat.com>
2513         * configure.tgt (sh-*-linux*): Added.
2514         * Makefile.am: Added eshelf_linux and eshlelf_linux.
2515         * Makefile.in: Rebuilt.
2516         * emulparams/shelf_linux.sh: New file.
2517         * emulparams/shlelf_linux.sh: New file.
2519 2000-09-06  Alan Modra  <alan@linuxcare.com.au>
2521         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
2522         try shuffling sections when the orphan happens to be the place
2523         holder.  Keep count of unique section names generated so we speed
2524         the search for a new name.
2526 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
2528         * configure: Rebuilt with new libtool.m4.
2530 2000-09-05  Nick Clifton  <nickc@redhat.com>
2532         * Makefile.in: Regenerate.
2533         * aclocal.m4: Regenerate.
2534         * configure: Regenerate.
2535         * config.in: Regenerate.
2536         * po/ld.pot: Regenerate.
2538         * ldint.texinfo: Remove CVS revision marker - it foils local
2539         comparisons.
2541         * emultempl/ticoff.em: Remove extraneous comma.
2543 2000-09-05  Alan Modra  <alan@linuxcare.com.au>
2545         * emultempl/hppaelf.em (hppaelf_add_stub_section): Add SEC_RELOC
2546         to stub section flags.
2547         (hppa_for_each_input_file_wrapper): New.
2548         (hppa_lang_for_each_input_file): New.
2549         (lang_for_each_input_file): Define to call above.
2550         (multi_subspace): New.
2551         (hppaelf_finish): Pass multi_subspace to elf32_hppa_size_stubs.
2552         (PARSE_AND_LIST_PROLOGUE): Define.
2553         (PARSE_AND_LIST_LONGOPTS): Define.
2554         (PARSE_AND_LIST_OPTIONS): Define.
2555         (PARSE_AND_LIST_ARGS_CASES): Define.
2556         (hppaelf_finish): Call elf32_hppa_set_gp.
2557         (hppaelf_set_output_arch): Remove.
2558         (LDEMUL_SET_OUTPUT_ARCH): Remove.
2560         * emulparams/hppalinux.sh (ELFSIZE): Define.
2561         (MACHINE): Define.
2562         (OTHER_READONLY_SECTIONS): Define.
2563         (DATA_PLT): Define.
2564         (GENERATE_SHLIB_SCRIPT): Define.
2566         * ldlang.c: Add missing prototypes, and tidy others.  Change CONST
2567         to const throughout.  Change `void *' to `PTR' throughout.
2568         (lang_memory_default): Function is local to file, add `static'.
2570         * Makefile.am (ehppaelf.c): Depend on emultempl/elf32.em.
2571         (ehppalinux.c): Likewise.
2572         (earmelf.c): Likewise.
2573         (earmelf_linux.c): Likewise.
2574         (earmelf_linux26.c): Likewise.
2575         * Makefile.in: Regenerate.
2577         * ld.h (ld_config_type): Add unique_orphan_sections.
2578         * lexsup.c (OPTION_UNIQUE): Define.
2579         (ld_options): Add "--unique".
2580         (parse_args): Handle it.
2581         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
2582         search for an existing output section if unique_orphan_sections is
2583         set.  Make use of bfd_get_unique_section_name rather than
2584         duplicating code here.
2585         * ld.texinfo: Describe --unique.
2587         * lexsup.c (ld_options): Make split-by-reloc arg optional. Add
2588         optional arg to split-by-file.
2589         (parse_args): Handle them.
2590         * ld.texinfo: Update description of these options.
2591         * ldwrite.c (clone_section): Pass in the section name.  Replace
2592         local code with bfd_get_unique_section_name.
2593         (split_sections): Tidy code and comments.  Use a list traversal
2594         more appropriate to the list construction.  Handle cooked section
2595         sizes.  Split when split_by_reloc reached rather than exceeded.
2596         Track section size and split when split_by_file reached.  Fix
2597         link_order_tail (even though it's not used).
2598         (ldwrite): Modify condition for calling split_sections to suit
2599         changed split_by_reloc and split_by_file.
2600         * ldmain.c (main): Init config.split_by_reloc and
2601         config.split_by_file to -1.
2602         * ld.h (ld_config_type): Change split_by_reloc to unsigned.
2603         Change split_by_file to bfd_size_type.
2605 2000-09-02  Nick Clifton  <nickc@redhat.com>
2607         * configure.in: Increase version number to 2.10.91.
2608         * NEWS: Mention new ability to support removal of duplicate DWARF2
2609         debug information.
2610         * configure: Regenerate.
2611         * aclocal.m4: Regenerate.
2612         * config.in: Regenerate.
2614 2000-09-02  Daniel Berlin <dberlin@redhat.com>
2616         * scripttempl/elf.sc: Add .gnu.linkonce.wi.* to .debug_info
2617         sections.
2618         * scripttempl/elf32avr.sc: Ditto.
2619         * scripttempl/elfd10v.sc: Ditto.
2620         * scripttempl/elfd30v.sc: Ditto.
2621         * scripttempl/elfi370.sc: Ditto.
2622         * scripttempl/elfm68hc11.sc: Ditto.
2623         * scripttempl/elfm68hc12.sc: Ditto.
2624         * scripttempl/elfi386beos.sc: Ditto.
2625         * scripttempl/v850.sc: Ditto.
2627 2000-08-31  Alexandre Oliva  <aoliva@redhat.com>
2629         * acinclude.m4: Include libtool and gettext macros from the
2630         top level.
2631         * aclocal.m4, configure: Rebuilt.
2633 2000-08-25  Nick Clifton  <nickc@redhat.com>
2635         * ldlang.c (open_output): When choosing the target for a
2636         particular endianness, do nothing if the target is not
2637         supported.
2639 2000-08-25  H.J. Lu  <hjl@gnu.org>
2641         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
2642         check -rpath nor LD_RUN_PATH for cross link.
2643         * ld.texinfo: Document the change.
2645 2000-08-24  Hans-Peter Nilsson  <hp@axis.com>
2647         * NEWS: Mention support for CRIS.
2649 2000-08-23  H.J. Lu  <hjl@gnu.org>
2651         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Get
2652         the current runpath list from bfd_elf_get_runpath_list ()
2653         before search.
2655 2000-08-22  H.J. Lu  <hjl@gnu.org>
2657         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search
2658         the DT_RPATH/DT_RUNPATH entries for DT_NEEDED after
2659         LD_LIBRARY_PATH for native linker. Display the needed DSO if
2660         trace_file_tries is non-zero.
2661         (gld${EMULATION_NAME}_try_needed): Report the needed DSO found
2662         if trace_file_tries is non-zero.
2664         * ld.texinfo: Document the usage of DT_RPATH/DT_RUNPATH.
2665         * NEWS: Mention it.
2667 2000-08-14  Jason Eckhardt  <jle@cygnus.com>
2669         * NEWS: Mention i860 support.
2671 2000-08-14  Andreas Schwab  <schwab@suse.de>
2673         * scripttempl/elf.sc: Fix last change to use correct comment
2674         syntax.
2676 2000-08-10  Geoff Keating  <geoffk@cygnus.com>
2678         * scripttempl/elf.sc: Add a comment giving the correspondence
2679         between sections, per-datum sections, and linkonce sections.  Make
2680         the comment true even for .bss, .sdata, .sdata2, .sbss, and
2681         .sbss2.
2683 2000-08-10  Jason Eckhardt  <jle@cygnus.com>
2685         * emulparams/elf32_i860.sh: New file.
2686         * configure.tgt: Recognize new target i860-stardent-{sysv4*|elf*}.
2687         * Makefile.am (ALL_EMULATIONS): Add eelf32_i860.o.
2688         (eelf32_i860.c): New rule.
2689         * Makefile.in: Regenerate.
2691 2000-08-10  Nick Clifton  <nickc@cygnus.com>
2693         * emulparams/mipspe.sh (ENTRY): Add definition.
2695 2000-08-08  Peter Jeremy  <peter.jeremy@alcatel.com.au>
2697         * emultempl/elf32.em (_after_close): Refer to -rpath not --rpath
2698         in error message.
2700 2000-08-08  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2702         * scripttempl/elfm68hc11.sc: Define __bss_size symbol to indicate
2703         the final size of .bss section.
2704         * scripttempl/elfm68hc12.sc: Likewise.
2706 2000-08-04  Alan Modra  <alan@linuxcare.com.au>
2708         * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Rename to
2709         gld${EMULATION_NAME}_parse_args for consistency.  Combine
2710         lastoptind and prevoptind vars, and keep track of last optind.
2711         (gld_${EMULATION_NAME}_list_options): Rename to
2712         gld${EMULATION_NAME}_list_options.
2714 2000-08-03  Rodney Brown  <RodneyBrown@pmsc.com>
2716         * configure.tgt: Select targ_emul=elf_i386 for Unixware 7
2717         (i586-sco-sysv5uw7.1.0).
2719 2000-07-27  H.J. Lu  <hjl@gnu.org>
2721         * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
2722         (PARSE_AND_LIST_PROLOGUE): New.
2723         (PARSE_AND_LIST_LONGOPTS): Likewise.
2724         (PARSE_AND_LIST_OPTIONS): Likewise.
2725         (PARSE_AND_LIST_ARGS_CASES): Likewise.
2726         (PARSE_AND_LIST_EPILOGUE): Likewise.
2728 2000-07-28  Alan Modra  <alan@linuxcare.com.au>
2730         * emultempl/armelf.em: Elide functions common to elf32.em,
2731         ie. most of the file.
2732         (arm_elf_after_open): New.  Do arm specific things then call
2733         gld${EMULATION_NAME}_after_open.
2734         (arm_elf_before_allocation): New.  Call
2735         gld${EMULATION_NAME}_before_allocation then do arm specifics.
2736         (PARSE_AND_LIST_PROLOGUE): Define.
2737         (PARSE_AND_LIST_SHORTOPTS): Define.
2738         (PARSE_AND_LIST_LONGOPTS): Define.
2739         (PARSE_AND_LIST_OPTIONS): Define.
2740         (PARSE_AND_LIST_ARGS_CASES): Define.
2741         (LDEMUL_AFTER_OPEN): Define.
2742         (LDEMUL_BEFORE_ALLOCATION): Define.
2743         (LDEMUL_BEFORE_PARSE): Define.
2744         (LDEMUL_FINISH): Define.
2746         * emultempl/hppaelf.em: Similarly zap most of this file.
2747         (hppaelf_add_stub_section): Prototype.
2748         (hppaelf_layaout_sections_again): Prototype.
2749         (hook_in_stub): Prototype.
2750         (LDEMUL_SET_OUTPUT_ARCH): Define.
2751         (LDEMUL_FINISH): Define.
2752         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
2754         * emulparams/armelf.sh (TEMPLATE_NAME): Use elf32.
2755         (EXTRA_EM_FILE): New.
2756         * emulparams/armelf_linux.sh: Likewise.
2757         * emulparams/armelf_linux26.sh: Likewise.
2758         * emulparams/hppalinux.sh: Likewise.
2759         * emulparams/hppaelf.sh: Likewise.
2760         (NOP): Define.
2762         * emultempl/elf32.em: Fix formatting.
2763         (EXTRA_EM_FILE): Source it.
2764         (LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
2765         LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
2766         LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
2767         LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
2768         LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
2769         LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
2770         LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
2771         LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
2772         LDEMUL_FIND_POTENTIAL_LIBRARIES): New shell vars.  Add code to
2773         allow functions in this file to be overridden.
2774         (PARSE_AND_LIST_SHORTOPTS): Handle it.
2776         * emultempl/m68kcoff.em: Include ldfile.h before ldemul.h.
2778         * emultempl/elf32.em: Reorganize file.
2780 2000-07-27  Ivan Kokshaysky  <ink@jurassic.park.msu.ru>
2782         * emulparams/elf64alpha.sh: Implement "-taso" emulation
2783         specific option to fit 64-bit executable in the lower
2784         31-bit address range.  This is done by changing start
2785         address of .interp (the very first section of executable)
2786         and then setting EF_ALPHA_32BIT elf header flag.
2788 2000-07-21  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2790         * emultempl/m68kcoff.em: New file.
2791         * emulparams/m68kcoff.sh (TEMPLATE_NAME): Use m68kcoff template.
2792         * Makefile.am (em68kcoff.c): Depend on m68kcoff.em rather than
2793         generic.em.
2794         * Makefile.in: Regenerate.
2796 2000-07-20  H.J. Lu  <hjl@gnu.org>
2798         * emultempl/elf32.em (longopts): Duplicate "disable-new-dtags"
2799         and "disable-new-dtags" to stop getopt from treating -d/-e as
2800         abbreviations for these options.
2802 2000-07-20  H.J. Lu  <hjl@gnu.org>
2804         * ld.texinfo: Add documentation for --disable-new-dtags and
2805         --enable-new-dtags.
2807         * ldmain.c (main): Initialize link_info.new_dtags to false.
2809         * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add
2810         --disable-new-dtags and --enable-new-dtags.
2811         (gld_${EMULATION_NAME}_list_options): Likewise.
2813 2000-07-05  Kenneth Block  <krblock@computer.org>
2815         * lexsup.c: Add optional style to demangle switch
2816         * ld.texinfo: Document optional style to demangle switch.
2818 2000-07-20  Hans-Peter Nilsson  <hp@axis.com>
2820         * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
2821         ecrislinux.o.
2822         (ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
2823         Regenerate dependencies.
2824         * Makefile.in: Rebuild.
2825         * configure.tgt (cris-*-*): New target.
2826         * emulparams/crisaout.sh, emulparams/criself.sh,
2827         emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
2828         * po/POTFILES.in, po/ld.pot: Regenerate.
2830 2000-07-20  H.J. Lu  <hjl@gnu.org>
2832         * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options):
2833         Print out ignored -z options.
2835 2000-07-19  H.J. Lu  <hjl@gnu.org>
2837         * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Removed.
2838         (PARSE_AND_LIST_PROLOGUE): New.
2839         (PARSE_AND_LIST_LONGOPTS): Likewise.
2840         (PARSE_AND_LIST_OPTIONS): Likewise.
2841         (PARSE_AND_LIST_ARGS_CASES): Likewise.
2843         * ldmain.c (main): Clear link_info.flags and link_info.flags_1.
2845         * lexsup.c (ld_options): Comment out 'z'.
2846         (parse_args): Likewise.
2848         * emultempl/elf32.em: Include "elf/common.h".
2849         (gld_${EMULATION_NAME}_parse_args): Defined. Handle some -z
2850         options.
2851         (gld_${EMULATION_NAME}_list_options): Likewise.
2853         * ld.texinfo: Add documentation for the recognized -z options.
2855 2000-07-19  H.J. Lu  <hjl@gnu.org>
2857         * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Call
2858         bfd_elf_set_dt_needed_soname ().
2860 2000-07-18  DJ Delorie  <dj@cygnus.com>
2862         * pe-dll.c (pe_dll_id_target): check object target name also
2864 2000-07-18  Hans-Peter Nilsson  <hp@axis.com>
2866         * scripttempl/elf.sc (.init): Only do ${INIT_START} and
2867         ${INIT_END} if relocating.
2868         (.fini): Likewise ${FINI_START} and ${FINI_END}.
2870 2000-07-16  Charles Wilson  <cwilson@ece.gatech.edu>
2872         * emultempl/pe.em (gld_*_open_dynamic_archive): New search
2873         order for dynamic library '-lfoo' on pei386: libfoo.dll.a,
2874         foo.dll.a, libfoo.a, libfoo.dll, foo.dll. This fixes compatibility
2875         errors introduced by the old dynamic lib search order.
2877 2000-07-17  DJ Delorie  <dj@cygnus.com>
2879         * pe-dll.c (process_def_file): auto-export data items also
2880         (pe_process_import_defs): also see if _imp_ form needed
2882 2000-07-12  Charles Wilson  <cwilson@ece.gatech.edu>
2884         * pe-dll.c (make_one): fix a typo in the __imp_ name decoration
2885         for dll import libraries
2887 2000-07-12  Mark Elbrecht  <snowball3@bigfoot.com>
2889         * scripttempl/i386go32.sc: Support the g++ attribute init_priority in
2890         gcc 2.95.2 and later.
2892 2000-07-11  Kazu Hirata  <kazu@hxi.com>
2894         * ldfile.c (ldfile_try_open_bfd): Output '\n' after an error
2895         message.
2897 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
2899         * ldemul.h (struct lang_input_statement_struct): Remove forward
2900         declaration.
2901         (struct search_dirs): Likewise.
2902         * ldfile.h (struct lang_input_statement_struct): Likewise.
2903         Protect file from multiple inclusion.
2904         * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
2905         declaration from macro to file scope.
2907         * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
2908         * ldgram.y: Likewise here.
2909         * ldlang.c: And here.
2910         * ldmain.c: And here.
2911         * mpw-elfmips.c: And here.
2912         * mpw-eppcmac.c: And here.
2913         * emultempl/aix.em: And here.
2914         * emultempl/armcoff.em: And here.
2915         * emultempl/armelf.em: And here.
2916         * emultempl/armelf_oabi.em: And here.
2917         * emultempl/beos.em: And here.
2918         * emultempl/elf32.em: And here.
2919         * emultempl/hppaelf.em: And here.
2920         * emultempl/linux.em: And here.
2921         * emultempl/lnk960.em: And here.
2922         * emultempl/pe.em: And here.
2923         * emultempl/sunos.em: And here.
2924         * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
2925         * mpw-idtmips.c: Ditto.
2926         * emultempl/generic.em: Ditto.
2927         * emultempl/gld960.em: Ditto.
2928         * emultempl/gld960c.em: Ditto.
2929         * emultempl/mipsecoff.em: Ditto.
2930         * emultempl/ticoff.em: Ditto.
2931         * emultempl/vanilla.em: Ditto.
2933         * pe-dll.c: Include ldfile.h
2934         * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
2936         * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
2937         arguments to bfd_elf32_size_dynamic_sections call.
2938         (gldelf32ebmip_place_orphan): Add missing arguments to
2939         lang_leave_output_section_statement call.
2941 2000-07-10  H.J. Lu  <hjl@gnu.org>
2943         * emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
2944         DLL_SUPPORT.
2945         (strhash): Likewise.
2946         (compute_dll_image_base): Likewise.
2947         (pe_undef_found_sym): Likewise.
2948         (pe_undef_cdecl_match): Likewise.
2949         (gld_${EMULATION_NAME}_open_dynamic_archive): Mark the
2950         argument "arch" with ATTRIBUTE_UNUSED.
2952 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
2954         * configure.tgt: Remove extraneous hppa*-*-linux-gnu*.
2956         From  Ryan Bradetich  <rbradetich@uswest.net>
2957         * ldwrite.c (SSIZE): Remove to cure macro redefinition warning.
2959 2000-07-09  Alan Modra  <alan@linuxcare.com.au>
2961         Changes to create multiple linker stubs, positioned immediately
2962         before the section where they are required.
2963         * emultempl/hppaelf.em: Include elf32-hppa.h.
2964         (stub_sec, file_chain): Delete.
2965         (hppaelf_create_output_section_statements): Don't make a stub
2966         section here.
2967         (hook_stub_info): New struct.
2968         (hook_in_stub): New function.
2969         (hppaelf_add_stub_section): New function.
2970         (hppaelf_finish): Do nothing for relocateable links.  Modify the
2971         call to elf32_hppa_size_stubs.  Move code for updating section
2972         layout from here...
2973         (hppaelf_layaout_sections_again): ..to here, a new function.
2975         * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Fix
2976         broken list handling.  Pass in a pointer to the list.
2977         (hppaelf_finish): Update call to hppaelf_delete_padding_statements
2978         for above changes.
2979         (hppaelf_before_parse): Prototype.
2980         (hppaelf_set_output_arch): Prototype.
2981         (hppaelf_create_output_section_statements): Prototype.
2982         (hppaelf_delete_padding_statements): Prototype.
2983         (hppaelf_finish): Prototype.
2985         Merge from elf32.em
2986         * emultempl/hppaelf.em: Include ctype.h.
2987         (struct orphan_save): New.
2988         (gld${EMULATION_NAME}_place_orphan): New.
2989         (output_rel_find): New.
2990         (hppaelf_get_script): Update from elf32.em.
2991         (ld_hppaelf_emulation): Rename to ld_${EMULATION_NAME}_emulation.
2992         Change emulation_name field to "${EMULATION_NAME}".  Add
2993         gld${EMULATION_NAME}_place_orphan.
2995         * Makefile.am (ALL_EMULATIONS): Reinstate ehppaelf.o,  add
2996         ehppalinux.o, sort it.  Regenerate dependencies.
2997         (ehppalinux.c): Depend on hppaelf.em
2998         * Makefile.in: Regenerate.
3000         * configure.tgt: targ_emul=hppalinux for hppa*linux
3002         * emulparams/hppalinux.sh: New.
3003         * emulparams/hppaelf.sh (TARGET_PAGE_SIZE): Write in hex.
3005 2000-07-08  Alan Modra  <alan@linuxcare.com.au>
3007         * lexsup.c (parse_args): Copy section name.
3009 2000-07-07  Charles Wilson  <cwilson@ece.gatech.edu>
3011         * emultempl/pe.em: institute the following search order for
3012         dynamic libraries on pei386: libfoo.dll.a, foo.dll.a (import
3013         libs), libfoo.dll, foo.dll (link direct to dll).  Fall back to
3014         static lib (libfoo.a) if none of the above are found.
3016 2000-07-07  Mumit Khan  <khan@xraylith.wisc.edu>
3018         * emultempl/pe.em (pe_enable_auto_image_base): New variable.
3019         (longopts): New --{enable,disable}-auto-image-base options.
3020         (gld_${EMULATION_NAME}_list_options): Document.
3021         (gld_${EMULATION_NAME}_parse): Handle.
3022         (strhash): New static function.
3023         (compute_dll_image_base): New static function.
3024         (gld_${EMULATION_NAME}_set_symbols): Use.
3026 2000-07-05  DJ Delorie  <dj@redhat.com>
3028         * MAINTAINERS: new
3030 2000-07-01  Koundinya K  <kk@ddeorg.soft.net>
3032         * configure.tgt: Add traditional mips (mips*-*-sysv4*) target.
3033         * emulparams/elf32btsmip.sh: New file.
3034         * Makefile.am: Add traditional mips target.
3035         * Makefile.in: Rebuild.
3037 2000-07-01  H.J. Lu  <hjl@gnu.org>
3039         * Makefile.am (EXTRA_ld_new_SOURCES): Set to deffilep.y for
3040         automake to use YLWRAP.
3041         * Makefile.in: Rebuild.
3043 2000-07-01  Alan Modra  <alan@linuxcare.com.au>
3045         * Makefile.am (DEP): Fix 2000-06-22.  grep after running dep.sed
3046         (CLEANFILES): Add DEPA.
3047         * Makefile.in: Regenerate.
3049 2000-06-30  Timothy Wall  <twall@ppc>
3051         * scripttempl/tic54xcoff.sc: PAGE N is not implemented, so encode
3052         the page in the upper octet of the address.
3054 2000-06-26  Marek Michalkiewicz  <marekm@linux.org.pl>
3056         * emulparams/avrmega161.sh (ARCH): Change to avr:5.
3058 2000-06-24  Alan Modra  <alan@linuxcare.com.au>
3060         * NEWS: arm-elf does --gc-sections too.
3062 2000-06-22  Alan Modra  <alan@linuxcare.com.au>
3064         * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
3065         find one.
3066         * Makefile.in: Regenerate.
3068 2000-06-21  H.J. Lu  <hjl@gnu.org>
3070         * Makefile.am: Rebuild dependency.
3071         * Makefile.in: Rebuild.
3073 2000-06-20  H.J. Lu  <hjl@gnu.org>
3075         * Makefile.am: Rebuild dependency.
3076         * Makefile.in: Rebuild.
3078 2000-06-20  Timothy Wall  <twall@cygnus.com>
3080         * scripttempl/tic54xcoff.sc: New.
3081         * ldlang.c (wild_doit): Propagate SEC_BLOCK flag.
3082         * gen-doc.texi: Add flag for TI COFF.
3083         * ld.texinfo: Add documentation for TI COFF handling switches.
3084         * emultempl/ticoff.em: New. TI COFF handling.
3085         * configure.tgt: Add tic54x target.
3086         * Makefile.am: Add tic54x target.
3087         * Makefile.in: Ditto.
3089 2000-06-20  Alan Modra  <alan@linuxcare.com.au>
3091         * ldmain.c (set_scripts_dir): Correct pointer comparison when
3092         checking for backslashes.
3094 2000-06-19  Alan Modra  <alan@linuxcare.com.au>
3096         * NEWS: Move entries not in 2.10 above "Changes in version 2.10".
3098 2000-06-18  Alan Modra  <alan@linuxcare.com.au>
3100         * NEWS: Update list of targets supporting --gc-sections.
3102         * scripttempl/elf.sc: KEEP .eh_frame contents.
3103         * scripttempl/elfd30v.sc: Same here.
3105 2000-06-18  Stephane Carrez  <stcarrez@worldnet.fr>
3107         * Makefile.am (ALL_EMULATIONS): Added new emulation for m68hc12
3108         and m68hc11 (elf).
3109         * Makefile.in: Rebuild.
3110         * configure.tgt: Recognize m68hc12 and m68hc11.
3111         * scripttempl/elfm68hc12.sc: New file.
3112         * emulparams/m68hc12elfb: New emulation.
3113         * emulparams/m68hc12elf: New emulation.
3114         * emulparams/m68hc11elfb.sh: New file.  User configurable emulation
3115         (includes a memory.x script to define the ROM and RAM banks).
3116         * scripttempl/elfm68hc11.sc, emulparams/m68hc11elf.sh:
3117         New configuration files for support of Motorola 68hc11
3119 2000-06-15  Alan Modra  <alan@linuxcare.com.au>
3121         * ldmain.c (main): Only change SEC_READONLY for final link.
3123 2000-06-13  H.J. Lu  <hjl@gnu.org>
3125         * configure: Regenerate.
3127 2000-06-08  David O'Brien  <obrien@FreeBSD.org>
3129         * configure.in (VERSION): Update to show this is the CVS mainline.
3131 2000-06-07  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
3133         * emultempl/mipsecoff.em (gld{EMULATION_NAME}_after_open): Require all
3134         input objects to be ECOFF.
3135         (check_sections): einfo takes %B, not %P, to print a BFD name.
3137 2000-06-05  Michael Matz <matz@ifh.de>
3139         * ldgram.y (vers_defns): Handle 'extern "C++" { ... }' in
3140         version scripts.
3142         * ldlex.l (V_IDENTIFIER): Accept `::' in symbols.
3144 2000-05-23  Marek Michalkiewicz  <marekm@linux.org.pl>
3146         * emulparams/avr1200.sh (STACK): Define as 0.
3147         * emulparams/avr23xx.sh (STACK): Define as last internal SRAM address.
3148         * emulparams/avr4433.sh (STACK): Likewise.
3149         * emulparams/avr44x4.sh (STACK): Likewise.
3150         * emulparams/avr85xx.sh (STACK): Likewise.
3151         * emulparams/avrmega103.sh (STACK): Likewise.
3152         * emulparams/avrmega161.sh (STACK): Likewise.
3153         * emulparams/avrmega603.sh (STACK): Likewise.
3154         * scripttempl/elf32avr.sc (__data_start): Define for gcrt1.
3155         (__stack): Define from ${STACK} for main().
3157 2000-05-26  Alan Modra  <alan@linuxcare.com.au>
3159         * Makefile.am: Update dependencies with "make dep-am"
3160         * Makefile.in: Regenerate.
3162 2000-05-26  Eli Zaretskii  <eliz@is.elta.co.il>
3164         * ldmain.c: Include filenames.h.
3165         (set_scripts_dir): Support backslashes in program name.
3167 2000-05-22  Igor Shevlyakov  <igor@windriver.com>
3169         * ldmain.c (main): When deciding if ".text" section should be
3170         read-only, don't forget to reset SEC_READONLY because it
3171         could be already set.
3173 2000-05-22  Thomas de Lellis  <tdel@windriver.com>
3175         * ld.1: Add documentation for new command line option:
3176                 --section-start <sectionname>=<sectionorg>
3177         This is a generic version of -Ttext etc. which accepts
3178         any section name as a parameter instead of just text/data/
3179         bss.
3180         * ld.texinfo: More docs.
3181         * NEWS: More docs.
3182         * lexsup.c: (parse_args): Recognize new command line option.
3183         (ld_options): Add new option.
3185 2000-05-18  H.J. Lu  <hjl@gnu.org>
3187         * lexsup.c (parse_args): `i' == `r', not `q'.
3189 2000-05-18  Jeffrey A Law  (law@cygnus.com)
3191         * configure.tgt (hppa*64*-*-*): Enable PA64 target.
3193 2000-05-17 S. Bharadwaj Yadavalli  <sby@scrugs.lkg.dec.com>
3194               Rick Gorton          <gorton@scrugs.lkg.dec.com>
3196         Add support for '-q' == '--emit-relocs' switch.
3197         * ldmain.c (main): Default to false.
3198         * lexsup.c (parse_args): Turn on emitrelocations flag if set.
3199         * NEWS: Describe the emitrelocations switch.
3200         * ld.texinfo: Describe the emitrelocations switch.
3202 2000-05-16  Charles Wilson <cwilson@ece.gatech.edu>
3204         * emultempl/pe.em (_open_dynamic_archive): New function: Search
3205         the library path for "foo.dll" and "libfoo.dll" dynamic libraries
3206         before searching for 'libfoo.a' in response to a '-Bdynamic -lfoo'
3207         link options.
3209 2000-05-15  David O'Brien  <obrien@FreeBSD.org>
3211         * lexsup.c (parse_args): Update the year in the copyright notice.
3213 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
3215         * ld.h (gettext, dgettext, dcgettext, textdomain, bindtextdomain):
3216         Replace defines with those from intl/libgettext.h to quieten gcc
3217         warnings.
3219 2000-05-10  H.J. Lu  <hjl@gnu.org>
3221         * ldlang.c (open_input_bfds): Don't load the same file within
3222         a group again if the whole archive has been loaded already.
3224 2000-05-03  Alan Modra  <alan@linuxcare.com.au>
3226         From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
3227         * lexsup.c (set_section_start): Use bfd_scan_vma rather than
3228         strtoul.
3230 2000-05-01  Jim Wilson  <wilson@cygnus.com>
3232         * configure.host (ia64-*-linux-gnu*): Change gcc to ${CC}.
3234         * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
3235         host "ia64-*-linux-gnu*".
3237 2000-04-29  Andreas Jaeger  <aj@suse.de>
3239         * ld.h: Correctly check GCC version.
3241 2000-04-25  Jeffrey A Law  (law@cygnus.com)
3243         * Makefile.am: Add PA64 support.  Add missing dependencies for
3244         PA32 elf support.
3245         * Makefile.in: Rebuilt.
3246         * configure.tgt: Add PA64 support (currently disabled).
3248 2000-04-25  Alan Modra  <alan@linuxcare.com.au>
3250         * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Delete.
3251         (output_rel_find): New function.
3252         (hold_section, hold_use): Delete.
3253         (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
3254         hold_interp): Make local to place_orphan.
3255         (gld${EMULATION_NAME}_place_orphan): Use lang_output_section_find
3256         rather than place_section to find possible previous use of orphan.
3257         Similarly find the place-holder output sections.  Use returned
3258         value from lang_enter_output_section_statement rather than calling
3259         lang_output_section_statement_lookup.
3260         * emultempl/armelf.em: Same here.
3261         * emultempl/pe.em: Similar to above, but no need for output_rel_find.
3263         * ldlang.c (lang_enter_output_section_statement): Return output
3264         section statement.
3265         * ldlang.h (lang_enter_output_section_statement): Change
3266         declaration too.
3268         * ldlang.h (lang_output_section_statement): Export it.
3269         * ldlang.c (lang_output_section_statement): Ditto.
3271 2000-04-24  Nick Clifton  <nickc@cygnus.com>
3273         * ld.texinfo (Output Section Data): Add note that section data
3274         commands cannot appear outside of section directives.
3276 2000-04-2  Matthew Green  <mrg@cygnus.com>
3278         * configure.tgt: Add NetBSD/sparc ELF, and NetBSD/sparc64 support.
3280 2000-04-21  Richard Henderson  <rth@cygnus.com>
3281             David Mosberger  <davidm@hpl.hp.com>
3283         * Makefile.am (ALL_64_EMULATIONS): Add eelf64_ia64.o.
3284         (eelf64_ia64.c): New rule.
3285         * Makefile.in: Rebuild.
3286         * configure.tgt (ia64-*-elf*, ia64-*-linux*): New targets.
3287         * emulparams/elf64_ia64.sh: New file.
3289 2000-04-21  Richard Henderson  <rth@cygnus.com>
3291         * scripttempl/elfd30v.sc: Place .gcc_except_table.
3293 2000-04-19  Alan Modra  <alan@linuxcare.com.au>
3295         * dep-in.sed: Match space at start of file name, not at end.
3297 2000-04-18  H.J. Lu  <hjl@gnu.org>
3299         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
3300         lang_leave_output_section_statement () after calling
3301         lang_enter_output_section_statement ().
3302         * emultempl/armelf.em: Likewise.
3304 2000-04-18  Alan Modra  <alan@linuxcare.com.au>
3306         * emultempl/elf32.em (struct orphan_save): Add section field.
3307         (gld${EMULATION_NAME}_place_orphan): Use above to keep sections in
3308         better order, and place first orphan section as we did before the
3309         2000-04-12 patch.  Ignore ~SEC_ALLOC sections when choosing place.
3310         Don't call make_bfd_section here, let wild_doit do the job for us.
3311         Don't build a statement list when we'll only throw it away.
3312         * emultempl/armelf.em: Ditto.
3313         * emultempl/pe.em: Similarly.
3315 2000-04-14  Geoff Keating  <geoffk@cygnus.com>
3317         * scripttempl/elfppc.sc: Remove.
3318         * emulparams/elf32ppc.sh: Use elf.sc.
3319         * emulparams/elf32lppc.sh: Use elf.sc.
3320         * emulparams/elf32ppclinux.sh: Use elf.sc.
3321         * emulparams/elf32ppcsim.sh: New file.
3322         * emulparams/elf32lppcsim.sh: New file.
3323         * Makefile.am: Update dependencies.  Add elf32ppcsim ad elf32lppcsim.
3324         (ALL_EMULATIONS): Add elf32ppcsim ad elf32lppcsim.
3325         * Makefile.in: Regenerate.
3326         * configure.tgt (powerpc-*): Add elf32ppcsim and elf32lppcsim.
3328 2000-04-14  Alan Modra  <alan@linuxcare.com.au>
3330         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Process
3331         ~SEC_ALLOC sections too.  Init start address of debug sections.
3332         * emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan): Ditto.
3333         * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Ditto.
3334         Also set all relocateable section start addresses.
3336 2000-04-13  Geoff Keating  <geoffk@cygnus.com>
3338         * scripttempl/elf.sc: Add support for .sbss2 and .sdata2 sections.
3339         Add new BSS_PLT variable for when .plt need not be contained in
3340         the file.  Move _etext so that it is also after .fini, and provide
3341         both etext and _etext with a leading underscore.  Mark the start
3342         and end of .sbss.
3344 2000-04-12  Alan Modra  <alan@linuxcare.com.au>
3346         * emultempl/elf32.em (struct orphan_save): New.
3347         (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
3348         hold_interp): Make them struct orphan_save.
3349         (gld${EMULATION_NAME}_place_section): Modify for new hold_*.
3350         (gld${EMULATION_NAME}_place_orphan): Add new orphan sections to
3351         the end of the relevant section list.  Also add associated section
3352         statements to the end of any previous orphan statements.
3353         * emultempl/armelf.em: Similarly.
3354         * emultempl/pe.em: Similarly.
3356 2000-04-11  Alan Modra  <alan@linuxcare.com.au>
3358         * ld.texinfo (Simple Example): Remove extraneous paragraph.
3360 2000-04-07  Andrew Cagney  <cagney@b1.cygnus.com>
3362         * configure.in (WARN_CFLAGS): Set to -W -Wall by default.  Add
3363         --enable-build-warnings option.
3364         * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
3365         * Makefile.in, configure: Re-generate.
3367 2000-04-04  Alan Modra  <alan@linuxcare.com.au>
3369         * po/ld.pot: Regenerate.
3371         * lexsup.c (help): Restore translated part of bug string.
3373         * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
3374         (DEP): Quote when passing vars to sub-make.  Add warning message
3375         to end.
3376         (DEP1): Rewrite for "gcc -MM".
3377         (CLEANFILES): Add DEP2.
3378         Update dependencies.
3379         * Makefile.in: Regenerate.
3381 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
3383         * ld.h: #include "bin-bugs.h"
3384         * lexsup.c (help): Use REPORT_BUGS_TO.
3386 2000-03-27  Denis Chertykov  <denisc@overta.ru>
3388         * configure.tgt (avr-*-*): New target support.
3389         * Makefile.am: Likewise.
3390         * scripttempl/elf32avr.sc: New script file.
3391         * emulparams/avr1200.sh: New file.
3392         * emulparams/avr23xx.sh: New file.
3393         * emulparams/avr4433.sh New file.
3394         * emulparams/avr44x4.sh New file.
3395         * emulparams/avr85xx.sh New file.
3396         * emulparams/avrmega103.sh New file.
3397         * emulparams/avrmega161.sh New file.
3398         * emulparams/avrmega603.sh New file.
3399         * Makefile.in: Regenerate.
3401 2000-03-09  Andreas Jaeger  <aj@suse.de>
3403         * Makefile.am (check-DEJAGNU): Also unset LANG.
3404         * Makefile.in: Rebuild.
3406 2000-03-06  Ian Lance Taylor  <ian@zembu.com>
3408         * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
3409         archive.
3411 2000-03-02  H.J. Lu  <hjl@gnu.org>
3413         * emulparams/elf32mcore.sh: Include "getopt.h".
3415 2000-03-01  Ian Lance Taylor  <ian@zembu.com>
3417         * configure.tgt: Remove *-*-aout, *-*-coff, and *-*-netware.
3419 2000-03-01  H.J. Lu  <hjl@gnu.org>
3421         * emulparams/mipspe.sh: Add SUBSYSTEM and INITIAL_SYMBOL_CHAR.
3422         * emulparams/shpe.sh: Likewise.
3424 2000-03-01  Nick Clifton  <nickc@cygnus.com>
3426         * pe-dll.c: Remove unused variables and add ATTRIBUTE_UNUSED
3427         to unused parameters.
3429         * emultempl/pe.em: Add "#ifdef DLL_SUPPORT" around static
3430         functions only used by DLL code.
3431         (_place_orphan): Initialise 'dollar'.
3433 2000-03-01  H.J. Lu  <hjl@gnu.org>
3435         * ldmain.c (undefined_symbol): Take one more arg, fatal, to
3436         indicate if the undefined symbol is a fatal error or not.
3437         Don't delete the output file if "fatal" is false.
3439 2000-02-29  H.J. Lu  <hjl@gnu.org>
3441         * Makefile.am (check-DEJAGNU): Also pass LIBS="$(LIBS)".
3442         Set LC_COLLATE and LC_ALL to null and export them. It is for
3443         sort which expects the C locale.
3444         Add $(LIBS) to all $(HOSTING_LIBS).
3445         * Makefile.in: Rebuild.
3447 2000-02-29  Alan Modra  <alan@spri.levels.unisa.edu.au>
3449         * emultempl/{aix.em, armcoff.em, armelf.em, armelf_oabi.em,
3450         beos.em, elf32.em, generic.em, gld960.em, gld960c.em, hppaelf.em,
3451         linux.em, lnk960.em, mipsecoff.em, sunos.em, vanilla.em}
3452         (ld_emulation_xfer_struct): Add missing NULL initialiser for
3453         find_potential_libraries.
3455 2000-02-28  Jim Blandy  <jimb@redhat.com>
3457         * ldgram.y (exclude_name_list): Don't require a comma to separate
3458         list entries; the lexer considers commas to be valid part of a
3459         filename, so in something like `foo, bar' the comma is considered
3460         part of the first filename, `foo,'.
3461         * ld.texinfo: Update section on EXCLUDE_FILE lists.
3463 2000-02-27  Loren J. Rittle  <ljrittle@acm.org>
3465         * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
3466         host "i[3456]86-*-freebsdelf*".
3468 2000-02-27  Mark Elbrecht  <snowball3@bigfoot.com>
3470         * scripttempl/i386go32.sc: Move misplaced semicolons.
3472 2000-02-25  Ian Lance Taylor  <ian@zembu.com>
3474         * Makefile.am (ALL_EMULATIONS): Remove ehppaelf.o.
3475         (ALL_64_EMULATIONS): Remove eelf64hppa.o.
3476         (eelf64hppa.c, ehppaelf.c): Remove targets.
3477         * Makefile.in: Rebuild.
3479 2000-02-25  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
3481         * configure.tgt (targ_extra_ofiles): Enable elf64_sparc on
3482         GNU/Linux/sparc, but keep the default as 32.
3484         * configure.tgt: Enable elf64_sparc on Solaris7+/sparc.  And make
3485         it default if sparcv9 or sparc64.
3487 2000-02-24  Nick Clifton  <nickc@cygnus.com>
3489         * Makefile.am: Add rules to build emipspe.o and earmpe.o.
3490         * Makefile.in: Regenerate.
3491         * configure.tgt: Add targets for arm-wince, sh-pe and mips-pe.
3493         * ldemul.h (ld_emulation_xfer_struct): Add new field:
3494         find_potential_libraries.
3495         * ldemul.c (ldemul_find_potential_libraries): New function.
3497         * ldfile.c (ldfile_open_file_search): Allow function to be
3498         exported.
3499         (ldfile_open_file): Call ldemul_find_potential_libraries.
3500         * ldfile.h: Add prototype for ldfile_open_file_search.
3502         * pe-dll.c: Add support for ARM, MIPS and SH targets.
3504         * emulparams/mipspe.sh: New file.  Parameters for mips-pe target.
3505         * emulparams/shpe.sh: New file.  Parameters for sh-pe target.
3507         * emultempl/pe.em: Add support for ARM, MIPS and SH DLLs.
3508         (gld_X_find_potential_libraries): New function.  Search for
3509         libraries called "*.lib".
3511         * scripttempl/pe.sc: Add .pdata section.
3513 2000-02-23  Richard Henderson  <rth@cygnus.com>
3515         * scripttempl/elfd10v.sc: Remove dynamic linking hooks.
3516         Add and use memory regions.
3518 2000-02-23  Linas Vepstas (linas@linas.org)
3520         * emulparams/elf32i370.sh, scripttempl/elfi370.sc: New.
3522         * Makefile.am: Add support for Linux/IBM 370.
3523         * configure.tgt: Likewise.
3525         * Makefile.in: Regenerate.
3527 2000-02-21  Alan Modra  <alan@spri.levels.unisa.edu.au>
3529         * ldlang.c (print_input_section, print_data_statement,
3530         print_reloc_statement, print_padding_statement, insert_pad,
3531         size_input_section, lang_check_section_addresses,
3532         lang_size_sections, lang_do_assignments, lang_set_startof,
3533         lang_one_common): Change `opb' to unsigned.
3534         (lang_do_assignments): Also change `size' to unsigned.
3536 2000-02-16  Richard Henderson  <rth@cygnus.com>
3538         * scripttempl/elf.sc: Place OTHER_PLT_RELOC_SECTION.
3540 2000-02-16  Timothy Wall  <twall@cygnus.com>
3542         * mri.c (mri_draw_tree): Add default LMA region argument to call
3543         to lang_leave_output_section_statement.
3544         * ldlang.h: Update prototypes with LMA region arguments.
3545         * ldlang.c (lang_size_sections): Encapsulate region bounds
3546         checking in os_check_region call.
3547         (os_check_region): New function.
3548         (lang_output_section_statement_lookup): Initialize lma_region.
3549         (lang_leave_output_section_statement): Add LMA region argument.
3550         (lang_leave_overlay): Ditto.
3551         * ldgram.y: Handle LMA region syntax.
3552         * ld.texinfo (Output Section Description): Describe LMA region usage.
3553         * emultempl/armelf.em (gld$place_orphan): Add default value for
3554         lma region in call to lang_leave_output_section_statement.
3555         * emultempl/elf32.em (gld$place_orphan): Add default value for
3556         lma region in call to lang_leave_output_section_statement.
3557         * emultempl/pe.em (gld$place_orphan): Add default value for
3558         lma region in call to lang_leave_output_section_statement.
3561 2000-02-04  Timothy Wall  <twall@redhat.com>
3563         * ldlang.c (lang_check_section_addresses): Use bytes instead of
3564         octets when calculating section end addresses.
3566 2000-02-04  Timothy Wall  <twall@redhat.com>
3568         * ldlang.c (lang_size_sections): Fix typo in ALIGN_N invocation.
3570 2000-02-03  Timothy Wall <twall@redhat.com>
3572         * ldexp.c (fold_name): Make SIZEOF operator return byte count, not
3573         octet count.
3574         * ldlang.c (print_input_section, print_data_statement,
3575         print_reloc_statement, print_padding_statement): Print target
3576         address values and section sizes as bytes, not octets.
3577         (insert_pad) Calculate padding size in octets, and adjust "dot"
3578         by bytes.
3579         (size_input_section) Always adjust "dot" by bytes, not octets.
3580         (lang_check_section_addresses, lang_do_assignments) Adjust
3581         "dot" by bytes, not octets.  Use the larger of the directive size
3582         or octets_per_byte for the number of octets actually allocated in
3583         the output section.
3584         (lang_set_startof) Make sure STARTOF returns a target address.
3585         (lang_one_common) Record size changes in octets.
3586         (lang_abs_symbol_at_end_of) Section end symbol's value is
3587         recorded in target bytes.
3588         * ld.texinfo:   Updated description of BYTE, SHORT, LONG, etc.
3589         to be clear about behavior when an octet is smaller than one byte.
3591 2000-01-27  Alan Modra  <alan@spri.levels.unisa.edu.au>
3593         * ldcref.c (output_cref): Don't pass message strings to printf
3594         as format arg.
3595         Update copyright.
3597         * ldmisc.c (vfinfo): Same here.
3598         Update copyright.
3600 2000-01-23  Alan Modra  <alan@spri.levels.unisa.edu.au>
3602         * emultempl/{armcoff.em,armelf.em,armelf_oabi.em,beos.em,
3603         generic.em,gld960.em,gld960c.em,hppaelf.em,linux.em,lnk960.em,
3604         mipsecoff.em,sunos.em,vanilla.em} (ld_emulation_xfer_struct):
3605         Add missing NULL initialisers, and comments.
3607         * testsuite/ld-srec/sr3.cc (__rethrow): New.
3609 2000-01-21  Nick Clifton  <nickc@cygnus.com>
3611         * ldlang.c (lang_size_sections): Fix typo in comment.
3613 2000-01-18  H.J. Lu  <hjl@gnu.org>
3615         * ldlang.c (lang_size_sections): Also update the current
3616         address of a region if the SEC_NEVER_LOAD bit is not set.
3618 2000-01-10  Philip Blundell  <pb@futuretv.com>
3620         * configure.tgt (arm*-*-conix*): New target.
3622 2000-01-07  Nick Clifton  <nickc@cygnus.com>
3624         * ld.texinfo (Options): Remind users to preceed linker command
3625         line switches with -Wl, (or whatever is appropriate) if it is
3626         being invoked by a comnpiler driver program.
3627         Fix description of the behaviour of the -n command line switch.
3629 2000-01-05  Catherine Moore  <clm@cygnus.com>
3631         * ld.h (wildcard_spec):  Change exclude_name to exclude_name_list.
3632         (name_list): New.
3633         * ld.texinfo (EXCLUDE_FILE): Update documentation.
3634         * ldgram.y (wildcard_spec): Support a list of excluded_files.
3635         (exclude_name_list): New.
3636         ldlang.c (walk_wild_section): Support list of excluded files.
3637         (print_wild_statement): Likewise.
3638         (lang_add_wild): Likewise.
3639         * ldlang.h (lang_wild_statement_type): Likewise.
3640         * scripttempl/elf.sc (OTHER_EXCLUDE_FILES): Support.
3642 2000-01-04  Mumit Khan  <khan@xraylith.wisc.edu>
3644         * pe-dll.c (pe_dll_warn_dup_exports): New variable.
3645         (process_def_file): Use.
3646         (pe_dll_compat_implib): New variable.
3647         (make_one): Use.
3649         * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
3650         pe_dll_compat_implib.
3652         * emultempl/pe.em (longopts): Add warn-duplicate-exports and
3653         compat-implib options.
3654         (gld_${EMULATION_NAME}_list_options): List new options.
3655         (gld_${EMULATION_NAME}_parse_args): Handle.
3657         * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
3658         dll.
3660         * deffilep.y (opt_name): Allow "." in name.
3662 For older changes see ChangeLog-9899
3664 Local Variables:
3665 mode: change-log
3666 left-margin: 8
3667 fill-column: 74
3668 version-control: never
3669 End: