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