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