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