Fixes for iWMMXt contribution.
[binutils.git] / ld / ChangeLog
blob098d30ff7cd5c1f6392bef8541e9d6c037af0545
1 2003-04-01  Nick Clifton  <nickc@redhat.com>
3         * emulparams/armelf.sh (OTHER_READONLY_SECTIONS): Chnage name of
4         note section.
5         * emulparams/armelf_linux.sh (OTHER_READONLY_SECTIONS): Chnage
6         name of note section.
8 2003-03-31  Alexandre Oliva  <aoliva@redhat.com>
10         * ld.texinfo (-Tbss, -Tdata, -Ttext): Document in terms of
11         --section-start.
13 2003-03-31  David Heine  <dlheine@suif.stanford.edu>
15         * ldfile.c (ldfile_add_library_path): Always allocate space for
16         the filename.
17         * ldlang.c (lang_register_vers_node): Free the node if it cannot
18         be used.
19         * ldmain.c (set_scripts_dir): Always free the constructed
20         directory name.
21         (add_keepsyms_file): Fix memory leak.
22         * ldmisc.c (vfinfo): Likewise.
23         * lexsup.c (parse_args): Likewise       
25 2003-03-25  Stan Cox   <scox@redhat.com>
26             Nick Clifton  <nickc@redhat.com>
27             
28         Contribute support for Intel's iWMMXt chip - an ARM variant:
30         * emulparams/armelf.sh (OTHER_READONLY_SECTIONS): Define.
31         * emulparams/armelf_linux.sh (OTHER_READONLY_SECTIONS): Define.
32         * scripttempl/armcoff.sc (.data): Ensure 8 byte alignment.
33         (.bss): Likewise.
35 2003-03-25  Alexandre Oliva  <aoliva@redhat.com>
37         * ldmain.h (ld_canon_sysroot, ld_canon_sysroot_len): Declare.
38         * ldmain.c (ld_canon_sysroot, ld_canon_sysroot_len): Define.
39         (main): Initialize them.
40         * ldfile.c: Include pathnames.h.
41         (is_sysrooted_pathname): New.
42         (ldfile_add_library_path): Use it.
43         (ldfile_open_file_search): Likewise.  Use IS_ABSOLUTE_PATH.  Don't
44         search_dirs if given an absolute pathname.
45         (ldfile_open_file): Issue error message for sysrooted
46         absolute pathnames.
47         * Makefile.am: Updated dependencies.
48         * Makefile.in: Rebuild.
50 2003-03-24  Daniel NĂ©ri  <dne@mayonnaise.net>
52         * ld.texinfo: Rename all occurances of C54X to TIC54X.
54 2003-03-19  Andreas Schwab  <schwab@suse.de>
56         * ldfile.c (ldfile_try_open_bfd): Pop lexer start condition after
57         eof.
59 2003-03-18  Danny Smith  <dannysmith@users.sourceforge,net>
61         * defilep.y (opt_base): If no number given, set to default
62         (-1), not 0.
64 2003-03-13  Danny Smith  <dannysmith@users.sourceforge,net> 
66         * deffilep.y (def_import):  Use default extension of "dll"
67         if no extension provided in parsed IMPORT definition.
69         * deffilep.y (def_lex): Revert 2003-03-12 change.
70         (dot_name): New id type and rule.
71         (expline): Use instead of ID.
72         (opt_equal_name): Likewise.
74 2003-03-12  Danny Smith  <dannysmith@users.sourceforge.net>
76         * deffilep.y (def_lex): Accept '.' as valid non-lead char.
78 2003-03-07  Christopher Faylor  <cgf@redhat.com>
80         * configure.tgt: Add NATIVE_LIB_DIRS for cygwin target back after
81         apparent accidental removal on 2003-01-06.
83 2003-03-04  Dmitry Diky  <diwil@mail.ru>
85         * Makefile.am: Add new devices x1122 x1132 emulation
86         * configure.tgt: Likewise.
87         * Makefile.in: Regenerate.
88         * emulparams/msp430x1122.sh: New file.
89         * emulparams/msp430x1132.sh: New file.
91 2003-03-03  Alexandre Oliva  <aoliva@redhat.com>
93         * ldmain.c (set_scripts_dir): Look for relative to TOOLBINDIR as
94         well.
96         * ldfile.h (struct search_dirs): Added sysrooted field.
97         * ldlang.h (struct lang_input_statement_struct): Likewise.
98         * ldfile.c (ldfile_add_library_path): Mark sysrooted paths.
99         (ldfile_open_file_search): Look for sysrooted filename starting
100         with / in ld_sysroot instead of in the current directory.  Clear
101         sysrooted flag if it's found in the current directory.  Set it
102         from the search directory's sysrooted flag where it is found
103         otherwise.
104         * ldlang.c (ldlang_sysrooted_script): New static variable.
105         (new_afile): Mark search_file_enums as sysrooted if
106         ldlang_sysrooted_script.
107         (load_symbols): Set ldlang_sysrooted_script according to the
108         script's sysrooted field while processing it.
109         * ld.texinfo: Document INPUT behavior in sysroot.
111 2003-03-02  Danny Smith  <dannysmith@users.sourceforge.net>
113         * scripttempl/pe.sc: Use PROVIDE with etext, end, _end,
115 2003-03-03  Alan Modra  <amodra@bigpond.net.au>
117         * emulparams/elf64alpha.sh (EXTRA_EM_FILE): Define.
118         (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
119         PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES,
120         PARSE_AND_LIST_EPILOGUE): Don't define.
121         * emultempl/alphaelf.em: New file.
123 2003-03-01  Alan Modra  <amodra@bigpond.net.au>
125         * ldemul.c: Include getopt.h.
126         * emultempl/elf32.em: Include getopt.h earlier.
127         * emultempl/ticoff.em: Likewise.
129 2003-02-28  Alan Modra  <amodra@bigpond.net.au>
131         * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): Add combreloc
132         support when scripts read from files.
134 2003-02-28  Alan Modra  <amodra@bigpond.net.au>
136         * ldemul.c (ldemul_parse_args): Return FALSE by default.
137         * ldemul.h (struct ld_emulation_xfer_struct): Update parse_args
138         comment.
140         * ldemul.c (ldemul_add_options, ldemul_handle_option): New functions.
141         (ldemul_parse_args): Return bfd_boolean.  Formatting.
142         * ldemul.h (ldemul_add_options, ldemul_handle_option): Declare.
143         (ldemul_parse_args): Adjust.
144         (struct ld_emulation_xfer_struct): Add add_options and handle_option.
145         Return bfd_boolean from parse_args.
146         * lexsup.c (parse_args): Malloc shortopts, longopts and
147         really_longopts.  Call ldemul_add_options and ldemul_handle_option.
148         * emultempl/aix.em (gld${EMULATION_NAME}_add_options): Split out from
149         gld${EMULATION_NAME}_parse_args.
150         (gld${EMULATION_NAME}_handle_option): Likewise.
151         (ld_${EMULATION_NAME}_emulation): Adjust initializer.
152         * emultempl/armcoff.em: As for aix.em, but remove parse_args.
153         * emultempl/beos.em: Likewise.
154         * emultempl/pe.em: Likewise.
155         * emultempl/ticoff.em: Likewise.
156         * emultempl/elf32.em: Likewise.  Don't duplicate long options either.
157         (gld${EMULATION_NAME}_add_sysroot): Prototype.  
158         * emultempl/armelf.em (PARSE_AND_LIST_LONGOPTS): Don't duplicate
159         options.
160         * emultempl/hppaelf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
161         * emultempl/ppc32elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
162         * emultempl/ppc64elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
163         * emultempl/armelf_oabi.em (ld_${EMULATION_NAME}_emulation): Adjust
164         initializer.
165         * emultempl/generic.em: Likewise.
166         * emultempl/gld960.em: Likewise.
167         * emultempl/gld960c.em: Likewise.
168         * emultempl/linux.em: Likewise.
169         * emultempl/lnk960.em: Likewise.
170         * emultempl/m68kcoff.em: Likewise.
171         * emultempl/mipsecoff.em: Likewise.
172         * emultempl/sunos.em: Likewise.
173         * emultempl/vanilla.em: Likewise.
174         * emultempl/netbsd.em (gldnetbsd_before_parse): Prototype.
176 2003-02-25  Alexandre Oliva  <aoliva@redhat.com>
178         * emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Fix
179         memory allocation error.
181         * Makefile.am (ldmain.o): Define TOOLBINDIR.
182         * Makefile.in: Rebuilt.
183         * ldmain.c (ld_sysroot): Try to set from TOOLBINDIR too.
185 2003-02-21  Bob Wilson  <bob.wilson@acm.org>
187         * ldlang.c (lang_size_sections_1): Add CHECK_REGIONS argument and only
188         call os_region_check when it is set.
189         (lang_size_sections): Add CHECK_REGIONS argument and pass it through to
190         lang_size_sections_1.
191         (lang_process): Change lang_size_sections calls to set CHECK_REGIONS
192         only for the last call, not on every relaxation iteration.
193         * ldlang.h (lang_size_sections): Update prototype.
194         * pe-dll.c (pe_dll_fill_sections): Set CHECK_REGIONS argument in calls
195         to lang_size_sections.
196         (pe_exe_fill_sections): Likewise.
197         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Likewise.
198         * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
199         * emultempl/ppc64elf.em (ppc_before_allocation): Likewise.
200         (ppc_layout_sections_again): Likewise.
202 2003-02-21  Bob Wilson  <bob.wilson@acm.org>
204         * gen-doc.texi: Set ARM and HPPA variables.
205         * ld.texinfo: Fix typos and obvious texinfo mistakes.  Make section
206         title capitalization more consistent.  Add missing menu entries for
207         machine-specific sections and conditionalize them consistently. 
208         Conditionalize text that is irrelevant when SingleFormat is set.
209         Add @group divisions to improve page breaks in long examples.
210         Use @iftex/@ifnottex instead of @iftex/@ifinfo so that HTML output
211         is correct.  Remove "FIXME" comment about not using
212         @raisesections/@lowersections.  Use @raisesections/@lowersections
213         consistently for machine-specific sections.  Change to be more polite
214         about poor bug reports.  Replace FDL appendix with include of fdl.texi.
215         Move WIN32 node to match its order in the menus.
216         * fdl.texi: New file.
218 2003-02-20  Alexandre Oliva  <aoliva@redhat.com>
220         * configure.in (TARGET_SYSTEM_ROOT): Set default to
221         ${exec_prefix}/${target_alias}/sys-root.  Match explicit
222         '${exec_prefix}' (in addition to the expansion thereof) as
223         relocatable.
224         * configure: Rebuilt.
226 2003-02-20  Phil Edwards  <pme@gcc.gnu.org>
228         * ldgram.y (vers_defns): Also recurse with 'EXTERN NAME' patterns.
230 2003-02-20  Harri Porten  <porten@kde.org>
232         * ldgram.y (vers_defns): Allow optional trailing semicolon in
233         EXTERN NAME block;
235 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
237         * emultempl/ppc32elf.em: New file.
238         * emulparams/elf32ppc.sh (EXTRA_EM_FILE): Define.
239         * Makefile.am (eelf32lppc.c): Depend on emultempl/ppc32elf.em.
240         (eelf32lppcnto.c): Likewise.
241         (eelf32lppcsim.c): Likewise.
242         (eelf32ppcnto.c): Likewise.
243         (eelf32ppc.c): Likewise.
244         (eelf32ppc_fbsd.c): Likewise.
245         (eelf32ppcsim.c): Likewise.
246         (eelf32ppclinux.c): Likewise.
247         * Makefile.in: Regenerate.
249 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
251         * ld.texinfo: Remove spaces between @samp and opening brace.
253 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
255         * emultempl/ppc64elf.em (ppc_create_output_section_statements): Check
256         hash creator.
257         (ppc_before_allocation): Don't do optimizations if wrong hash table.
258         (gld${EMULATION_NAME}_finish): Ditto.
260 2003-02-17  Nick Clifton  <nickc@redhat.com>
262         * ldmain.c (main) Default allow_shlib_undefined to true.
263         * lexsup.c (ld_options): Add --no-allow-shlib-undefined.
264         (parse_args): Parse the new switch.
265         * ld.texinfo: Document new switch and default behaviour of
266         allowing undefined symbols in shared libraries.
268 2003-02-11 Dmitry Diky  <diwil@mail.ru>
270         * scripttempl/elf32msp430.sc: Add new data anchors definitions.
271         * scripttempl/elf32msp430_3.sc: Likewise.
273 2003-02-11  Uwe Stieber  <uwe@wwws.de>
275         * configure.tgt: Add support for kaOS as cross build target
276         system.
278 2003-02-10  John Daivid Anglin  <dave.anglin@nrc-cnrc.gc.ca>
280         * hppaelf.em (group_size): Change default back to 1.
282 2003-02-09  Alan Modra  <amodra@bigpond.net.au>
284         * emultempl/ppc64elf.em: Add "no-tls-optimize" option and support code.
286 2003-02-07  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
288         * hppaelf.em (group_size): Change default to -1.
290 2003-02-07  Nick Clifton  <nickc@redhat.com>
292         * emultempl/armelf.em (PARSE_AND_LIST_SHORTOPTS): Remove 'n' short
293         opt.
294         (PARSE_AND_LIST_LONGOPTS): Add duplicate entry for
295         no-pipeline-knowledge.  This will prevent the getopt package from
296         thinking that there are any shorter abbreviations for
297         --no-pipeline-knowledge.
299 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
301         * genscripts.sh (LIB_PATH): Don't append LIBPATH_SUFFIX to paths
302         which already have it.  Avoid duplicates.
304 2003-02-06  Jakub Jelinek  <jakub@redhat.com>
306         * emulparams/elf64_s390.sh (LIBPATH_SUFFIX): Set to 64.
307         * emulparams/elf_x86_64.sh (LIBPATH_SUFFIX): Likewise.
308         * emulparams/elf64_sparc.sh (LIBPATH_SUFFIX): Set instead of suffix.
310 2003-02-05  Alan Modra  <amodra@bigpond.net.au>
312         * emultempl/ppc64elf.em (ppc_before_allocation): Size sections then
313         call ppc64_elf_tls_optimize.
315 2003-02-03  Daniel Jacobowitz  <drow@mvista.com>
317         * emultempl/elf32.em: Move gld${EMULATION_NAME}_add_sysroot
318         outside of GNU/Linux conditional.
320 2003-01-28  Ralf Habacker  <ralf.habacker@freenet.de>
322         * deffilep.y (def_get_module): New function: locate an already
323         added module.
324         * deffile.h (def_get_module): New prototype.
325         * pe-dll.c (pe_implied_import_dll): Add code to prevent importing
326         a dll multiple times.
328 2003-01-23  Alan Modra  <amodra@bigpond.net.au>
330         * emultempl/sh64elf.em: Include elf32-sh64.h.
331         (sh64_elf_${EMULATION_NAME}_before_allocation): Adjust for changed
332         sh64_elf_section_data.
333         (sh64_elf_${EMULATION_NAME}_after_allocation): Likewise.
335 2003-01-23  Wu Yongwei  <adah@netstd.com>
337         * ld.texinfo: Remove an extra "i" in --dll-search-prefix.
338         * emultempl/pe.em (gld_${EMULATION_NAME}_list_options): Move a
339         cross-80th-column-margin "an" to the next line.
341 2003-01-21  Nick Clifton  <nickc@redhat.com>
343         * emulparams/tic3xcoff-onchip.sh: Rename to ...z
344         * emulparams/tic3xcoff_onchip.sh: ...this.
345         * Makefile.am (etic3xcoff_onchip.c): Fix name of generated C file.
346         * Makefile.in: Regenerate.
348 2003-01-21  Fabio Alemagna  <falemagn@aros.org>
350         * configure.tgt: Handle i[3456]86-*-aros*
352 2003-01-19  Svein E. Seldal  <Svein.Seldal@solidas.com>
354         * Makefile.am: Added etic3xcoff.o and etic4xcoff_onchip.o
355         * Makefile.in: Regenerate
356         * configure.tgt: Added extra target emulations
357         * emulparams/tic3xcoff.sh: Remove old settings
358         * emulparams/tic4xcoff.sh: Ditto
359         * emulparams/tic3xcoff-onchip.sh: Added new
360         * scripttempl/tic4xcoff.sc: Revise and combine both c3x and c4x
361         * scripttempl/tic3xcoff.sc: Remove
363 2003-01-17  Andreas Jaeger  <aj@suse.de>
365         * emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Do not
366         skip ':'.
368 2003-01-16  Alan Modra  <amodra@bigpond.net.au>
370         * Makefile.in: Regenerate.
372 2002-01-14  Charles Wilson  <cwilson@ece.gatech.edu>
374         * ld/ld.texinfo (node WIN32): Some clarifications
375         and formatting fixups.
377 2003-01-09  Chris Demetriou  <cgd@broadcom.com>
379         * ldmain.c (get_emulation): Sort -mipsNN checks in the usual
380         order, and handle (ignore) -mips32r2.
382 2003-01-09  Daniel Jacobowitz  <drow@mvista.com>
384         * ldmain.c (main): Make sure ld_sysroot is initialized.
386 2003-01-06  Daniel Jacobowitz  <drow@mvista.com>
388         * Makefile.am (eelf32iq10.c): Fix tab/whitespace mixup.
390         * Makefile.am (ldmain.o): Add @TARGET_SYSTEM_ROOT_DEFINE@.
391         (GENSCRIPTS): Add @use_sysroot@.
392         * Makefile.in: Regenerated.
393         * configure.host: Move setting of NATIVE_LIB_DIRS to...
394         * configure.tgt: ... here.  Use ${target} instead of ${host}
395         for NATIVE_LIB_DIRS.
396         * configure.in: Add --with-sysroot.
397         * configure: Regenerated.
398         * genscripts.sh: Accept use_sysroot option.  Set new variables
399         NATIVE and USE_LIBPATH.  Prepend "=" to directory names if
400         $use_sysroot.  Don't search $tool_lib if $use_sysroot.
401         * ldfile.c (ldfile_add_library_path): Handle leading '='.
402         * ldmain.c (TARGET_SYSTEM_ROOT): Define if not defined.
403         (ld_sysroot): New variable.
404         (main): Initialize ld_sysroot.
405         * ldmain.h (ld_sysroot): New extern.
406         * emultempl/elf32.em: Use NATIVE and USE_LIBPATH instead of
407         searching $EMULATION_LIBPATH.
408         (gld${EMULATION_NAME}_add_sysroot): New function.
409         (gld${EMULATION_NAME}_check_ld_so_conf): Use it.  Honor ld_sysroot.
410         (gld${EMULATION_NAME}_after_open): Likewise.  Only search
411         environment variables if $NATIVE.
412         * ld.texinfo (Options): Mention "=" prefix in the description of -L.
413         * NEWS: Mention --with-sysroot.
415         * emulparams/elf32bmipn32-defs.sh: Set NATIVE and LIBPATH_SUFFIX
416         instead of setting LIB_PATH.
417         * emulparams/elf32ppc.sh: Likewise.
418         * emulparams/elf64_s390.sh: Likewise.
419         * emulparams/elf64_sparc.sh: Likewise.
420         * emulparams/elf64ppc.sh: Likewise.
421         * emulparams/elf_x86_64.sh: Likewise.
423         * emulparams/elf64_aix.sh: Add "=" prefixes to LIB_PATH.
424         * emulparams/elf64hppa.sh: Add "=" prefixes to LIB_PATH.
426 2003-01-03  Charles Wilson  <cwilson@ece.gatech.edu>
428         * ld/pe-dll.c (autofilter_symbollist): Add cygwin_crt0.
430 2003-01-04  Daniel Jacobowitz  <drow@mvista.com>
432         * Makefile.am (ldmain.o): Pass BINDIR.
433         * Makefile.in: Regenerated.
434         * ldmain.c (set_scripts_dir): Use make_relative_prefix for the first
435         search path.
437 2003-01-02  Ben Elliston  <bje@redhat.com>
439         * Makefile.am (ALL_EMULATIONS): Add eelf32iq2000.o.
440         (eelf32iq2000.c): New target.
441         * Makefile.in: Regenerate.
442         * configure.tgt: Handle iq2000-*-elf.
443         * emulparams/elf32iq10.sh: New file.
444         * emulparams/elf32iq2000.sh: New file.
445         * scripttempl/iq2000.sc: New file.
447 2003-01-02 Charles Wilson <cwilson@ece.gatech.edu>
449         * pe-dll.c (autofilter_symbollist): Add do_pseudo_reloc
450         and _pei386_runtime_relocator to the exclude list.
452 2003-01-01  Kazu Hirata  <kazu@cs.umass.edu>
454         * ldfile.c: Fix comment typos.
455         * ldlang.c: Likewise.
456         * mri.c: Likewise.
457         * pe-dll.c: Likewise.
459 2003-01-01  Daniel Jacobowitz  <drow@mvista.com>
461         Suggested by Manfred Hollstein <manfred.h@gmx.net>:
462         * Makefile.am (ld.1): Depend on configdoc.texi
463         and ldver.texi.
464         * Makefile.in: Regenerated.
466 2002-12-24  Dmitry Diky  <diwil@mail.ru>
468         * Makefile.am: Add msp430 target.
469         * configure.tgt: Likewise.
470         * Makefile.in: Regenerate.
471         * emulparams/msp430x???.sh: New files.  Linker script parameters
472         for various msp430 configurations.
473         * gen-doc.texi: Enable msp430 documenation.
474         * ld.texinfo: Document msp430 sections.
475         * scripttempl/elf32msp430.sc: New file.  Linker script for msp430.
476         * scripttempl/elf32msp430_3.sc: New file.  Linker script for msp430.
478 2002-12-30  Ralf Habacker  <Ralf.Habacker@freenet.de>
479             Charles Wilson  <cwilson@ece.gatech.edu>
481         * ld/config.in (HAVE_REALPATH): New entry.
482         (HAVE_SYS_STAT_H, HAVE_SYS_TYPES_H): Removed: obsolete.
484 2002-12-30  Ralf Habacker  <ralf.habacker@freenet.de>
486         * ld.texinfo: New win32 topics: 'symbol aliasing' and 'export dll
487         symbols'.
489 2002-12-23  Alan Modra  <amodra@bigpond.net.au>
491         * ldmain.c (main): Init "strip_discarded".
492         * lexsup.c (OPTION_STRIP_DISCARDED): Define.
493         (OPTION_NO_STRIP_DISCARDED): Define.
494         (ld_options): Add "strip-discarded" and "no-strip-discarded".
495         (parse_args): Handle them.
497 2002-12-23  Nick Clifton  <nickc@redhat.com>
499         * ld.h (struct args_type): Add new field
500         'accept_unknown_input_architecture'.
501         * ldmain.c (main): Initialise 'accept_unknown_input_architecture'
502         to false.
503         * ldlang.c (lang_check): Pass accept_unknown_input_architecture to
504         bfd_arch_get_compatible.
505         * ldfile.c (ldfile_try_open_bfd): Likewise.
506         * lexsup.c (ld_options): Add new command line switch
507         --accept-unknown-input-architecture and its inverse.
508         (parse_args): Handle --accept-unknown-input-architecture.
509         * ld.texinfo: Document new linker option.
510         * NEWS: Mention new linker option.
512 2002-12-20  Alan Modra  <amodra@bigpond.net.au>
514         * ldmain.c (main): Re-order link_info initialization.  Init all
515         fields.
517 2002-12-19  Charles Wilson  <cwilson@ece.gatech.edu>
519         * ld.texinfo: Clarify and extend the documentation
520         in the Machine Dependent, WIN32 section.
522 2002-12-18  Ralf Habacker  <ralf.habacker@freenet.de>
524         * ld.texinfo: Add win32 machine depending section.
525         * gen-doc.texi: Enable win32 machine depending section.
527         * configure.host: Add win32 library search path.
529 2002-12-17  Ralf Habacker  <ralf.habacker@freenet.de>
531         * ld/emultempl/pe.em (pe_find_data_imports): Don't search for data
532         import when auto-import is disabled.
534 2002-12-17  Danny Smith  <dannysmith@users.sourceforge.net>
536         * emultempl/pe.em (..._recognized_file): Use LD_PATHMAX+1 to
537         account for trailing '\0'.
539 2002-12-17  Nick Clifton  <nickc@redhat.com>
541         * emultempl/pe.em (longopts): Duplicate entry for --compact-implib
542         so that it is not confused with -c.
544 2002-12-13  Ralf Habacker  <Ralf.Habacker@freenet.de>
545             Charles Wilson  <cwilson@ece.gatech.edu>
547         * configure.in: Add check for realpath function.
548         * configure: Regenerate.
549         * config.in: Regenerate.
550         * aclocal.m4: Regenerate.
551         * deffile.h: Add .data field to def_file_import
552         structure.
553         * pe-dll.c (pe_proces_import_defs): Use .data field of
554         def_file_import structure to initialize flag_data field of
555         def_file_export structure.
556         (pe_implied_import_dll): New variables exp_funcbase and
557         [data|bss]_[start|end].  Use DLL's internal name to set dll_name,
558         not filename (which may be a symlink).  Scan the sections and
559         initialize [data|bss]_[start|end].  When scanning the export
560         table, skip _nm_ symbols, and mark any symbols whose rva indicates
561         that it is in the .bss or .data sections as data.
562         * sysdep.h: Include limits.h and sys/param.h, and define
563         LD_PATHMAX as appropriate.  Also define REALPATH as realpath if it
564         exists, NULL otherwise.
565         * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Call
566         pe_process_import_defs before pe_find_data_imports, so that
567         auto-import will check the virtual implib as well as "real"
568         implibs.
569         (gld_${EMULATION_NAME}_recognized_file): Use REALPATH to follow
570         symlinks to their target; check that the target's extension is
571         .dll before calling pe_implied_import_dll(), not the filename
572         itself (which may be a symlink).
574 2002-12-10  Alan Modra  <amodra@bigpond.net.au>
576         * emultempl/elf32.em (struct orphan_save): Add os_tail field.
577         (gld${EMULATION_NAME}_place_orphan): Re-order output_section_statement
578         list too.
580 2002-12-08  Alan Modra  <amodra@bigpond.net.au>
582         * ldlang.h: Formatting.
584 2002-12-07  Alan Modra  <amodra@bigpond.net.au>
586         * ldlang.c (init_os): Ensure sections mentioned in load_base
587         are initialized.
589 2002-12-05  Alan Modra  <amodra@bigpond.net.au>
591         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Set
592         load_base for orphans that follow a section with load_base set.
594 2002-12-01  H.J. Lu <hjl@gnu.org>
596         * ld.texinfo: Remove the extra `;' in sample version script.
598 2002-11-30  Alan Modra  <amodra@bigpond.net.au>
600         * configure.host: Correct dynamic-linker for powerpc64 hosts.
602         * Makefile.am (eelf32ppcwindiss.c): Correct dependencies.
603         * Makefile.in: Regenerate.
605         * ld.h, ldcref.c, ldctor.c, ldctor.h, ldemul.c, ldemul.h, ldexp.c,
606         ldexp.h, ldfile.c, ldfile.h, ldgram.y, ldlang.c, ldlang.h, ldmain.c,
607         ldmain.h, ldmisc.c, ldwrite.c, lexsup.c, mri.c, pe-dll.c, pe-dll.h,
608         emulparams/elf32b4300.sh, emultempl/aix.em, emultempl/armcoff.em,
609         emultempl/armelf.em, emultempl/armelf_oabi.em, emultempl/beos.em,
610         emultempl/elf32.em, emultempl/generic.em, emultempl/gld960.em,
611         emultempl/gld960c.em, emultempl/hppaelf.em, emultempl/linux.em,
612         emultempl/lnk960.em, emultempl/m68kcoff.em, emultempl/mipsecoff.em,
613         emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em, emultempl/mmo.em,
614         emultempl/needrelax.em, emultempl/pe.em, emultempl/ppc64elf.em,
615         emultempl/sh64elf.em, emultempl/sunos.em, emultempl/ticoff.em: Replace
616         boolean with bfd_boolean, true with TRUE, false with FALSE.  Simplify
617         comparisons of bfd_boolean vars with TRUE/FALSE.  Formatting.
619 2002-11-27  David O'Brien  <obrien@FreeBSD.org>
621         * configure.host: Fix generic FreeBSD configuration entry.
623 2002-11-27  H.J. Lu <hjl@gnu.org>
625         * ld.texinfo: Add the missing `;' to sample version scripts.
627 2002-11-20  Alan Modra  <amodra@bigpond.net.au>
629         * emulparams/elf64ppc.sh (SEGMENT_SIZE): Don't define.
631 2002-11-14  Egor Duda  <deo@logos-m.ru>
633         * ldmain.c (main): Make runtime relocs disabled by default. Remove
634         assignment which has no effect.
635         * pe-dll.h (pe_create_import_fixup): Change prototype.
636         * pe-dll.c (make_runtime_pseudo_reloc): New function.
637         (pe_create_runtime_relocator_reference): Ditto.
638         (pe_create_import_fixup): Handle relocations with non-zero addends.
639         * emultempl/pe.em: Add options --enable-runtime-pseudo-reloc and
640         --disable-runtime-pseudo-reloc.
641         (make_import_fixup): Handle relocations with non-zero addends. Create
642         an external reference to _pei386_runtime_relocator symbol if at least
643         one pseudo reloc was created.
644         * ld.texinfo: Document --enable-runtime-pseudo-reloc and
645         --disable-runtime-pseudo-reloc options.
647 2002-11-12  Earl Chew <earl_chew@agilent.com>
649         * ldlang.c (lang_add_section): Discard debugging sections that have
650         been marked SEC_EXCLUDE.
652 2002-11-12  Nick Clifton  <nickc@redhat.com>
654         * configure.in (ALL_LINGUAS): Add da.
655         * configure: Regenerate.
656         * po/da.po: New Danish translation.
658 2002-11-12  Alan Modra  <amodra@bigpond.net.au>
660         * emultempl/ppc64elf.em (ppc_before_allocation): New function.
661         (LDEMUL_BEFORE_ALLOCATION): Define.
662         (gld${EMULATION_NAME}_finish): Run discard_info for relocatable
663         linking.
664         * emultemp/hppaelf.em ((gld${EMULATION_NAME}_finish): Likewise.
666 2002-11-11  Christopher Faylor  <cgf@redhat.com>
668         * configure.tgt (LIB_PATH): Default to searching w32api directory under
669         cygwin.
671 2002-11-11  Charles Wilson  <cwilson@ece.gatech.edu>
673         * pe-dll.c (autofilter_liblist): add libmingwex and libgcj to the list
674         of restricted auto-export libs.
676 2002-11-11  Charles Wilson  <cwilson@ece.gatech.edu>
678         * pe-dll.c (autofilter_liblist): Generalize library names to catch more
679         creative library naming instances like, e.g., libstdc++-2.a.
681 2002-11-06  Alexandre Oliva  <aoliva@redhat.com>
683         * emulparams/elf32btsmipn32.sh (TEXT_DYNAMIC): Define.
684         * emulparams/elf64btsmip.sh (TEXT_DYNAMIC): Likewise.
686 2002-11-07  Danny Smith  <dannysmith@users.sourceforge.net>
688         * deffilep.y (def_lex): Handle '@' as first character of an ID.
689         * pe-dll.c (auto-export): Filter on "_imp_" prefix, not "_imp__".
690         (make_one): Don't prefix decorated fastcall symbols with '_'.
691         (pe_process_import_defs): Likewise.
692         * emultempl/pe.em (pe_fixup_stdcalls): Don't fixup fastcall
693         symbols to cdecl names or vise-versa.
695 2002-10-13  Eric Kohl  <ekohl@rz-online.de>
697         * pe-dll.c (process_def_file): Handle fastcall symbols when
698         generating undecorated aliases.  Don't prefix decorated fastcall
699         symbols with '_'.
700         (fill_exported_offsets): Don't prefix decorated fastcall symbols
701         with '_'.
703 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
705         * emultempl/aix.em: Use include <> for generated headers.
706         * emultempl/beos.em: Likewise.
707         * emultempl/elf32.em: Likewise.
708         * emultempl/pe.em: Likewise.
709         * ldctor.c: Likewise.
710         * ldexp.c: Likewise.
711         * ldfile.c: Likewise.
712         * ldlang.c: Likewise.
713         * ldlex.c: Likewise.
714         * ldlex.l: Likewise.
715         * ldmain.c: Likewise.
716         * ldmisc.c: Likewise.
717         * ldwrite.c: Likewise.
718         * lexsup.c: Likewise.
719         * mri.c: Likewise.
720         * pe-dll.c: Likewise.
722 2002-10-23  Jakub Jelinek  <jakub@redhat.com>
724         * emultempl/elf32.em (place_orphan): Don't put non-allocated .rel*
725         sections into .rel{,a}.dyn.
727 2002-10-23  Nick Clifton  <nickc@redhat.com>
729         * lexsup.c (OPTION_NO_OMAGIC): Define.
730         (ld_options): Add "no-omagic" option.
731         (parse_args): Parse --no-omagic.
732         * ld.texinfo: Document --no-omagic.
733         * NEWS: Mention new option.
735 2002-10-21  Danny Smith  <dannysmith@users.sourceforeg.net>
737         * scripttempl/pe.sc (__RUNTIME_PSEUDO_RELOC_LIST__,
738         __RUNTIME_PSEUDO_RELOC_LIST_END__): Add only when relocating.
740 2002-10-22  Alexandre Oliva  <aoliva@redhat.com>
742         * emulparams/elf32bmipn32-defs.sh: Set ELFSIZE according to
743         emulation name.  Set LIB_PATH only for native tools, and
744         search the ABI-specific versions of NATIVE_LIB_DIRS before the
745         .../lib variants, not instead of them.  Mostly copied from...
746         * emulparams/elf32ppc.sh: ... here.  Fixed typo.
747         * emulparams/elf64bmip-defs.sh: Backed out.
748         * emulparams/elf64bmip.sh: Import elf32bmipn32-defs.sh again.
749         * emulparams/elf64btsmip.sh: Likewise.
750         (DATA_ADDR, NONPAGED_TEXT_START_ADDR, SHLIB_TEXT_START_ADDR,
751         TEXT_DYNAMIC): Removed.
753 2002-10-17  Alexandre Oliva  <aoliva@redhat.com>
755         * emulparams/elf32bmipn32-defs.sh (LIB_PATH): Set to /usr/lib32.
756         (GENERATE_SHLIB_SCRIPT): Set to yes.
757         (EXECUTABLE_SYMBOLS, WRITABLE_RODATA): Moved to...
758         * emulparams/elf32bmipn32.sh: here.
759         (GENERATE_SHLIB_SCRIPT): Deleted as redundant.
760         * emulparams/elf32btsmipn32.sh: Delete redundant unsets.
761         * emulparams/elf64bmip-defs.sh: New file.  Extend
762         elf32bmipn32-defs.sh by overiding ELFSIZE and LIB_PATH.
763         * emulparams/elf64bmip.sh: Bring in definitions from
764         elf64bmip-defs.sh.
765         (ELFSIZE, GENERATE_SHLIB_SCRIPT, LIB_PATH): Delete redundant
766         settings.
767         (WRITABLE_RODATA): Moved from elf32bmipn32-defs.sh.
768         * emulparams/elf64btsmip.sh: Bring in definitions from
769         elf64bmip-defs.sh.
770         (ELFSIZE, GENERATE_SHLIB_SCRIPT): Delete, redundant.
771         (EXECUTABLE_SYMBOLS, WRITABLE_RODATA): Delete redundant unsets.
773 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
775         * configure.tgt (s390x-*-linux*): Add elf_s390 emulation.
776         (s390-*-linux*): Add elf64_s390 emulation if want64.
777         * emulparams/elf64_sparc.sh (LIB_PATH): Update to match 2002-05-22
778         genscript.sh changes.
779         * emulparams/elf_x86_64.sh (LIB_PATH): Likewise.
780         * emulparams/elf64_s390.sh (LIB_PATH): Set up native 64 bit dirs.
782 2002-10-15  Alan Modra  <amodra@bigpond.net.au>
784         * ldlang.c (load_symbols): Revert last change.
786 2002-10-14  Alan Modra  <amodra@bigpond.net.au>
788         * ldlang.c (load_symbols): Don't call bfd_link_add_symbols when
789         just_syms_flag.
790         (lang_reasonable_defaults): Don't compare against false.
791         (size_input_section): Likewise.
792         (lang_size_sections_1): Likewise.
793         (lang_do_assignments): Likewise.
794         (lang_add_output): Likewise.
796         * Makefile.am: Run "make dep-am".
797         * Makefile.in: Regenerate.
798         * ldver.c: #include "bfdver.h".
800 2002-10-13  Stephane Carrez  <stcarrez@nerim.fr>
802         * scripttempl/elfm68hc11.sc: Use KEEP for .vectors, .installN,
803         .finiN section.
804         * scripttempl/elfm68hc12.sc: Likewise.
806 2002-10-11  Alan Modra  <amodra@bigpond.net.au>
808         * pe-dll.c (make_import_fixup_mark): Avoid type-punned pointer.
810         * ldgram.y (memory_spec): Provide empty action.
811         (section <NAME>): Likewise.
813 2002-10-10  Jakub Jelinek  <jakub@redhat.com>
815         * ldfile.c (ldfile_try_open_bfd): When searching skip linker scripts if
816         they have OUTPUT_FORMAT not matching actual output format.
817         * ldlang.c (lang_get_output_target): New function.
818         (open_output): Use it.
819         * ldlang.h (lang_get_output_target): New prototype.
821 2002-10-10  Alan Modra  <amodra@bigpond.net.au>
823         * emultempl/elf32.em (output_rel_find): Prefer .rel script sections
824         when orphan is .rel, .rela when orphan is .rela.
825         (gld${EMULATION_NAME}_place_orphan): Handle combreloc .rel* case
826         first.  Remove outsecname var.
828 2002-10-09  Richard Shann <richard.shann@superh.com>
829             Stephen Clarke <stephen.clarke@superh.com>
831         * Makefile.am: Add eshelf32_linux.o and
832         eshlelf32_linux.o, new emulations for sh64 Linux.
833         * Makefile.in: Regenerate.
834         * configure.tgt: Add sh64eb-*-linux* and sh64-*-linux* emulations.
835         * emulparams/shelf32_linux.sh: New file.
836         * emulparams/shlelf32_linux.sh: New file.
838 2002-10-08  H.J. Lu <hjl@gnu.org>
840         * ldlang.c (lang_file_exist): Removed.
841         (new_afile): Revert the last change.
842         * ldlang.h (lang_file_exist): Removed.
843         * lexsup.c (parse_args): Revert the last change.
845 2002-10-07  Ralf Habacker  <Ralf.Habacker@freenet.de>
847         * pe-dll.cc (autofilter_symbolprefixlist): Don't re-export
848         auto-import symbols.
849         (make_one): Create _nm_<symbol> for data only.
851 2002-10-05  Elias Athanasopoulos  <eathan@otenet.gr>
853         * ldlang.c (lang_file_exist): New function.
854         (new_afile): Abort if the filename to be added matches the linker
855         output filename.
856         * ldlang.h: Add prototype for lang_file_exist.
857         * lexsup.c (parse_args): Abort if the output filename matches
858         one of the input filenames.
860 2002-10-02  Alan Modra  <amodra@bigpond.net.au>
862         * emulparams/elf64ppc.sh (MAXPAGESIZE): Set to 0x10000.
864 2002-09-30  Alan Modra  <amodra@bigpond.net.au>
866         * scripttempl/elfd30v.sc: Order reloc sections placing .plt last.
867         * scripttempl/elfm68hc11.sc: Likewise.
868         * scripttempl/elfm68hc12.sc: Likewise.
870         * emultempl/elf32.em (output_rel_find): Always place orphan loadable
871         reloc sections just before .rel.plt/.rela.plt.
872         (gld${EMULATION_NAME}_place_orphan <.rel>): Remove combreloc code.
873         Only put loadable reloc sections in hold_rel.
875 2002-09-29  H.J. Lu <hjl@gnu.org>
877         * emulparams/elf32ppc.sh (OTHER_GOT_RELOC_SECTIONS): New.
879 2002-09-25  Daniel Jacobowitz  <drow@mvista.com>
881         From "Anita Kulkarni" <AnitaK@kpit.com>
882         * scripttempl/sh.sc: Handle .eh_frame* and .gcc_exc*
883         sections.
885 2002-09-25  Alan Modra  <amodra@bigpond.net.au>
887         * genscripts.sh (SEGMENT_SIZE): Use MAXPAGESIZE before
888         TARGET_PAGE_SIZE.
889         * scripttempl/elf.sc (DATA_SEGMENT_ALIGN): Incorporate
890         SEGMENT_SIZE alignment.
891         * emulparams/elf64ppc.sh (DATA_ADDR): Delete.
892         (SEGMENT_SIZE): Define.
894         * ldexp.c (fold_unary): New.  Split out from exp_fold_tree.
895         (fold_binary): Correct abs - non-abs case.
896         (fold_trinary): New.  Split out from exp_fold_tree.
898 2002-09-24  Alan Modra  <amodra@bigpond.net.au>
900         * emulparams/elf64ppc.sh (DATA_ADDR): Define.
901         * emulparams/elf64_aix.sh (DATA_ADDR): Don't use a fixed address
902         for start of .data, instead align up to 256M boundary.
903         * scripttempl/aix.sc: Likewise.
905 2002-09-22  Mark Elbrecht  <snowball3@softhome.net>
907         * scripttempl/i386go32.sc: Handle bss unique sections.
909 2002-09-21  Alan Modra  <amodra@bigpond.net.au>
911         * ldmisc.c (vfinfo <%C,%D,%G>): Always output bfd, section and offset.
913 2002-09-17  Stan Cox  <scox@redhat.com>
915         * emulparams/elf32bmipn32-defs.sh: New file.
916         * emulparams/elf32bmipn32.sh: Use elf32bmipn32-defs.sh.
917         * emulparams/elf32btsmipn32.sh: Likewise.
918         * emulparams/elf64bmip.sh: Likewise.
919         * emulparams/elf64btsmip.sh: Likewise.
921 2002-09-16  Bruno Haible  <bruno@clisp.org>
923         * emulparams/elf_i386_fbsd.sh: Set OUTPUT_FORMAT to
924         elf32-i386-freebsd.
925         * emulparams/elf64alpha_fbsd.sh: Set OUTPUT_FORMAT to
926         elf64-alpha-freebsd.
928 2002-09-11  Nick Clifton  <nickc@redhat.com>
930         * NEWS: New TI port supports both C4x and C3x series of DSPs.
932         * po/tr.po: Updated Turkish translation.
934 2002-09-06  Jeffrey A Law  (law@redhat.com)
936         * configure.tgt (h8300-*-hms*, h8500-*-hms*): Restore.
938 2002-09-02  Nick Clifton  <nickc@redhat.com>
940         * scripttempl/v850.sc: Add EXTERN references to __ctbpm __gp and
941         __ep.
942         * emulparams/v850.sh (TEMPLATE_NAME): Define.
944 2002-08-30  Nick Clifton  <nickc@redhat.com>
946         * scripttempl/elfd10v.sc (MEMORY): Remove UNIFIED, it is not
947         used.  Change INSN to start at 0x01000000 and extend for
948         256K (ignoring holes).  Start the STACK on a word aligned
949         boundary.
950         (.rodata): Start it at the READONLY_START_ADDR.
952 2002-08-30  Alan Modra  <amodra@bigpond.net.au>
954         * emulparams/elf32ppc.sh (ARCH): Set to "powerpc:common".
956 2002-08-28  Svein E. Seldal  <Svein.Seldal@solidas.com>
958         * Makefile.am: Add etic4xcoff.o in ALL_EMULATIONS list and
959         added makefile targets for this file.
960         * Makefile.in: Regenerate.
961         * configure.tgt: Added tic4x-coff and c4x-coff emulations.
962         * NEWS: Mention new port.
964 2002-08-28  Michael Hayes <m.hayes@elec.canterbury.ac.nz>
966         * emulparams/tic3xcoff.sh: New file.
967         * emulparams/tic4xcoff.sh: New file.
968         * scripttempl/tic3xcoff.sc: New file.
969         * scripttempl/tic4xcoff.sc: New file.
971 2002-08-28  Alan Modra  <amodra@bigpond.net.au>
973         * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Replace strtoll,
974         strtoul and strtoull with bfd_scan_vma.
975         (gld${EMULATION_NAME}_read_file): Likewise.
977 2002-08-28  Alan Modra  <amodra@bigpond.net.au>
979         * configure.tgt: Remove h8[35]00-*-hms*.  Add h8500-*-rtems*.
981 2002-08-27  Egor Duda  <deo@logos-m.ru>
983         * scripttempl/pe.sc: Handle .rdata_runtime_pseudo_reloc sections.
984         Add symbols for application to access them.
986 2002-08-27  Nick Clifton  <nickc@redhat.com>
988         * emultempl/armelf.em:  Revert this patch, it is not needed.
990         2002-08-22  Adam Nemet  <anemet@lnxw.com>
992 2002-08-20 Dan Kegel <dank@kegel.com>
994         * configure.in: added --with-lib-path argument to ld's configure
995         to set LIB_PATH.
996         * ld/NEWS: Document new switch.
997         * ld/README: Mention new switch.
998         * configure: Regenerate.
999         * Makefile.in: Regenerate.
1001         Based on this patch:
1002         2001-04-25  Christopher Faylor <cgf@cygnus.com>
1004         * Makefile.in (LIB_PATH): Make configurable.
1005         (GENSCRIPTS): Set LIB_PATH in environment.
1006         * configure.in: Substitute LIB_PATH.
1008 2002-08-22  Adam Nemet  <anemet@lnxw.com>
1010         * emultempl/armelf.em: Include elf-bfd.h and elf/arm.h.
1011         (arm_elf_finish): Set the last bit of DT_INIT and DT_FINI
1012         depending on the type of the function.
1013         (arm_elf_convert_thumb_symbol_to_address): New function.
1015 2002-08-22  Graeme Peterson  <gp@qnx.com>
1017         * Makefile.am: Add esh{l}elf_nto.o files.
1018         * Makefile.in: Regenerate.
1019         * configure.tgt: Add support for sh-**-nto* targets.
1020         * emulparams/shelf_nto.sh: New file.
1021         * emulparams/shlelf_nto.sh: New file.
1023 2002-08-21  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1025         * ldlang.c (offsetof): Define if not defined.
1027 2002-08-14  H.J. Lu <hjl@gnu.org>
1029         * configure.tgt: Always enable 64bit emulations for 32bit
1030         Linux/mips.
1032 2002-08-13  Alan Modra  <amodra@bigpond.net.au>
1034         * emulparams/elf32_dlx.sh (TARGET_PAGE_SIZE): Set to 1.
1035         (MAXPAGESIZE): Set to 1.
1037         * ld.h (ALIGN_N): Delete.
1038         * ldexp.h (align_n): Declare.
1039         * ldexp.c (align_n): New function.
1040         (fold_binary): Use align_n instead of ALIGN_N.
1041         (exp_fold_tree): Likewise.
1042         * ldlang.c (lang_size_sections_1): Likewise.
1043         (lang_one_common): Likewise.
1044         * ld.texinfo (ALIGN): Remove power of 2 restriction.
1046 2002-07-31  Graeme Peterson  <gp@qnx.com>
1048         * configure.tgt: Add support for powerpc{le}-*-nto* targets.
1049         * Makefile.am: Add eelf32{l}ppcnto.o files.
1050         * Makefile.in: Regenerate.
1051         * emulparams/elf32lppcnto.sh: New file.
1052         * emulparams/elf32ppcnto.sh: New file.
1054 2002-08-07  H.J. Lu <hjl@gnu.org>
1056         * ld.texinfo: Document --no-undefined-version.
1058         * ldlang.c (lang_new_vers_pattern): Set the `symver' and
1059         `script.' fields to 0.
1061         * ldmain.c (main): Initialize the allow_undefined_version to
1062         true.
1064         * lexsup.c (OPTION_NO_UNDEFINED_VERSION): New.
1065         (ld_options): Add --no-undefined-version.
1066         (parse_args): Support OPTION_NO_UNDEFINED_VERSION.
1068 2002-08-07  Nick Clifton  <nickc@redhat.com>
1070         * emultempl/armelf.em (arm_elf_before_allocation): Only search for
1071         an interworking bfd if there are input bfds. (107501)
1073 2002-08-06  Alan Modra  <amodra@bigpond.net.au>
1075         * emultempl/aix.em (gld*_before_parse): Set default arch.  Reverts
1076         2002-05-10 change.
1078 2002-08-01  Nick Clifton  <nickc@redhat.com>
1080         * emulparams/armelf.sh: Revert previous delta.
1081         * scripttempl/elf.sc: Revert previous delta.
1083 2002-07-31  H.J. Lu <hjl@gnu.org>
1085         * configure.tgt (powerpc*-*-linux*): Enable elf64ppc for
1086         --enable-64-bit-bfd.
1088 2002-07-31  H.J. Lu <hjl@gnu.org>
1090         * configure.tgt: Enable x86-64 emulation for Linux/i386 if
1091         64bit BFD is selected.
1093 2002-07-31  H.J. Lu <hjl@gnu.org>
1095         * configure.tgt: Enable 64bit emulations for 32bit Linux/mips
1096         if 64bit BFD is selected.
1098 2002-07-31  Ian Dall  <ian@sibyl.beware.dropbear.id.au>
1100         * emultempl/netbsd.em (LDEMUL_BEFORE_PARSE): New file to custom set
1101         link_info.common_skip_ar_aymbols.
1102         * emulparams/ns32knbsd.sh (EXTRA_EM_FILE): Refer to extra file.
1104         * ldmain.c (main): Initialize new field
1105         link_info.common_skip_ar_aymbols.
1107 2002-07-31  Adam Nemet  <anemet@lnxw.com>
1109         * emulparams/armelf.sh (OTHER_PLT_SECTIONS): New variable.  Set it
1110         to .plt.thumb.
1111         * scripttempl/elf.sc: Comment it.  Use the same way as ${PLT} is
1112         used.
1114 2002-07-31  Nick Clifton  <nickc@redhat.com>
1116         * NEWS: Retroactively add entry for Lars Brinkhoff's contribution
1117         of the PDP-11 and 2.11BSD a.out support.
1119 2002-07-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1121         * Makefile.am (eelf32btsmipn32.o, eelf32ltsmipn32.o): New emulations
1122         for n32 ABI support.
1123         * Makefile.in: Regenerate.
1124         * configure.tgt (mips64*el-*-linux-gnu*,mips64*-*-linux-gnu*): Add
1125         n32 ABI emulations for these 64 bit targets.
1126         * emulparams/elf32bmipn32.sh: Expand comment.
1127         * emulparams/elf32btsmipn32.sh: New file, for traditional big endian
1128         n32 ABI.
1129         * emulparams/elf32ltsmipn32.sh: Likewise for little endian.
1131 2002-07-30  Graeme Peterson  <gp@qnx.com>
1133         * configure.tgt: Add support for arm-*-nto target.
1134         * Makefile.am: Add earmnto.o file.
1135         * Makefile.in: Regenerate.
1136         * NEWS: Mention port of ARM support to QNX.
1137         * emulparams/armnto.sh: New file.
1139 2002-07-30  Jakub Jelinek  <jakub@redhat.com>
1141         * ldlang.c (lang_add_section): Don't turn .tbss into normal sections
1142         for relocatable link.
1143         (lang_size_sections_1): Don't make .tbss zero size for relocatable
1144         link.
1146 2002-07-26  Bernd Schmidt  <bernds@redhat.com>
1148         * emulparams/elf32frv.sh (OTHER_RELOCATING_SECTIONS): Delete.
1149         (STACK_ADDR): New.
1151 2002-07-25  Nick Clifton  <nickc@redhat.com>
1153         * po/sv.po: Updated Swedish translation.
1154         * po/es.po: Updated Spanish translation.
1155         * po/fr.po: Updated French translation.
1157 2002-07-24  Nick Clifton  <nickc@redhat.com>
1159         * po/sv.po: Updated Swedish translation.
1160         * po/es.po: Updated Spanish translation.
1162 2002-07-23  Nick Clifton  <nickc@redhat.com>
1164         * po/fr.po: Updated French translation.
1166 2002-07-20  Alan Modra  <amodra@bigpond.net.au>
1168         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
1169         bomb on /DISCARD/ input section.
1170         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
1171         * emultempl/mmo.em (mmo_place_orphan): Likewise.
1173 2002-07-19  Hans-Peter Nilsson  <hp@bitrange.com>
1175         * emultempl/mmo.em (mmo_place_orphan): Handle case of no .text
1176         output section.
1178 2002-07-16  Denis Chertykov  <denisc@overta.ru>
1179             Nick Clifton  <nickc@redhat.com>
1180             Frank Ch. Eigler  <fche@redhat.com>
1181             John Healy  <jhealy@redhat.com>
1183         * configure.tgt: Add support for ip2k-elf.
1184         * Makefile.am: Add support for ip2k-elf.
1185         * Makefile.in: Regenerate.
1186         * emulparams/elf32ip2k.sh: New file.
1187         * scripttempl/ip2k.sc: New file
1188         * NEWS: Mention support for new port.
1190 2002-07-16  Nick Clifton  <nickc@cambridge.redhat.com>
1192         * NEWS: Add 'Changes in 2.13'.
1194 2002-07-14  H.J. Lu <hjl@gnu.org>
1196         * ld.texinfo: Document a .symver takes precedence over a
1197         version script.
1199 2002-07-12  Alan Modra  <amodra@bigpond.net.au>
1201         * emulparams/elf64ppc.sh (ARCH): Set to powerpc:common64.
1202         (COMMONPAGESIZE): Define.
1204 2002-07-09  Alan Modra  <amodra@bigpond.net.au>
1206         * emulparams/hppanbsd.sh: Remark that hppaobsd.sh references this file.
1208 2002-07-09  Federico G. Schwindt <fgsch@olimpo.com.br>
1210         * configure.tgt: Add support for alpha-*-openbsd*, hppa-*-openbsd*,
1211         powerpc-*-openbsd* and sparc64-*-openbsd*.
1212         * Makefile.am (ALL_EMULATIONS): Add ehppaobsd.o.
1213         * Makefile.in: Regenerate.
1214         * emulparams/hppaobsd.sh: New file.
1216 2002-07-05  Alan Modra  <amodra@bigpond.net.au>
1218         * ldlang.c (print_wild_statement): Fix output formatting.
1220 2002-07-04  Alan Modra  <amodra@bigpond.net.au>
1222         * ldlang.c: (strip_excluded_output_sections): New function.
1223         (lang_process): Call it.
1224         (lang_size_sections_1): Revert 2002-06-10 change.
1226 2002-07-03  Alan Modra  <amodra@bigpond.net.au>
1228         * Makefile.am (check-DEJAGNU): Revert 2002-06-25 change.
1229         Run "make dep-am".
1230         * Makefile.in: Regenerate.
1232 2002-07-02  Alan Modra  <amodra@bigpond.net.au>
1234         * ldfile.c (ldfile_try_open_bfd): Formatting.
1236         * ldmisc.c (demangle): Move so that it doesn't intrude between
1237         vfinfo comment and body.  Add comment.
1239 2002-07-01  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1241         * emulparams/vax.sh (OUTPUT_FORMAT): Use a.out-vax-bsd format.
1243 2002-07-01  Alan Modra  <amodra@bigpond.net.au>
1245         * ldlang.h (entry_sym): Make it a struct bfd_sym_chain.
1246         * ldlang.c (entry_sym): Likewise.
1247         (ldlang_undef_chain_list_type): Likewise.
1248         (lang_finish): Adjust references to entry_symbol.
1249         (lang_add_entry): Likewise.
1250         (lang_gc_sections): Use link_info.gc_sym_list.
1251         (lang_process): Set link_info.gc_sym_list.
1252         * ldlex.l: Include bfdlink.h.
1253         * ldmain.c (main): Init link_info.gc_sym_list.
1254         * emultempl/aix.em: Adjust references to entry_symbol.
1255         * emultempl/armcoff.em: Likewise.
1256         * emultempl/armelf.em: Likewise.
1257         * emultempl/pe.em: Likewise.
1258         * emultempl/ppc64elf.em (ppc_after_open): New function.
1259         (LDEMUL_AFTER_OPEN): Define.
1260         * emulparams/elf64ppc.sh: KEEP .opd sections.
1262 2002-06-29  Stephane Carrez  <stcarrez@nerim.fr>
1264         * emulparams/m68hc12elfb.sh (EEPROM_MEMORY): Define.
1265         * emulparams/m68hc11elfb.sh (EEPROM_MEMORY): Define.
1266         * emulparams/m68hc11elf.sh (EEPROM_SIZE): Define.
1267         (EEPROM_START_ADDR): Define.
1268         (EEPROM_MEMORY): Define.
1269         * emulparams/m68hc12elf.sh: Likewise.
1270         * scripttempl/elfm68hc11.sc: Handle .eeprom section; handle .softregs
1271         section to put soft registers in .page0.
1272         * scripttempl/elfm68hc12.sc: Likewise but put soft registers in bss.
1274 2002-06-26  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1276         * emulparams/hppa64linux.sh (OTHER_GOT_RELOC_SECTIONS): Add rela.opd
1277         section.  Add ${RELOCATING-0}.
1279 2002-06-26  J"orn Rennecke <joern.rennecke@superh.com>
1281         * emulparams/shelf.sh (STACK_ADDR): Don't define.
1282         (OTHER_SECTIONS): Define.
1283         * emulparams/shelf_nbsd.sh ((STACK_ADDR): Don't undef.
1284         (OTHER_SECTIONS): Undef.
1286 2002-06-26  Alan Modra  <amodra@bigpond.net.au>
1288         * ldmisc.c (demangle): Restore dots stripped from sym name.
1290 2002-06-25  H.J. Lu <hjl@gnu.org>
1292         * Makefile.am (check-DEJAGNU): Set LC_ALL=C and export it.
1293         * Makefile.in: Regenerated.
1295 2002-06-20  Nick Clifton  <nickc@cambridge.redhat.com>
1297         * ld.texinfo (Bug Reporting): Update text to suggest a limit on
1298         the size of attached object files, to allow make the object files
1299         available via FTP or HTTP and to mention that the mail will be
1300         sent to a mailing list.
1302 2002-06-20  Nathanael Nerode  <neroden@twcny.rr.com>
1304         * ld/configure.host (romp): Drop support.
1306 2002-06-18  Chris Demetriou  <cgd@broadcom.com>
1308         * emultempl/mipself.em (mips_elf${ELFSIZE}_check_sections): Check
1309         section flags for SEC_DATA, rather than for SEC_CODE being unset.
1311 2002-06-18  Chris Demetriou  <cgd@broadcom.com>
1313         * emultempl/mipself.em (mips_elf${ELFSIZE}_check_sections): Fix
1314         format specifier used to print BFD name.
1316 2002-06-18  Dave Brolley  <brolley@redhat.com>
1318         From Catherine Moore, Michael Meissner, Jim Blandy:
1319         * emulparams/elf32frv.sh: New file.
1320         * configure.tgt: Support frv-*-*.
1321         * Makefile.am (ALL_EMULATIONS): Add eelf32frv.o.
1322         (eelf32frv.c): New target.
1324 2002-06-17  Tom Rix  <trix@redhat.com>
1326         * emultempl/elf32.em: gld*_get_script:  Check for
1327         GENERATE_COMBRELOC_SCRIPT.
1328         * scripttempl/elfd10v.sc : Fix STACK and INSN.
1329         * emulparams/d10velf.sh : Fix TEXT_START_ADDR.
1331 2002-06-13  J"orn Rennecke <joern.rennecke@superh.com>
1333         * configure.tgt: Add support for sh[1234]*le*-*-elf, sh[1234]*-*-elf.
1335 2002-06-12  H.J. Lu <hjl@gnu.org>
1337         * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Return
1338         false if xvec doesn't match.
1340 2002-06-10  Richard Sandiford  <rsandifo@redhat.com>
1342         * ldlang.c (lang_size_sections_1): Skip removed output sections.
1344 2002-06-08  Alan Modra  <amodra@bigpond.net.au>
1346         * ldexp.c: Replace CONST with const.
1347         * ldfile.c: Likewise.
1348         * ldfile.h: Likewise.
1349         * ldlex.l: Likewise.
1350         * mri.c: Likewise.
1351         * pe-dll.h: Likewise.
1353 2002-06-07  Alan Modra  <amodra@bigpond.net.au>
1355         * emultempl/ppc64elf.em (new_vers_pattern): Warning fix.
1357 2002-06-07  Charles Wilson  <cwilson@ece.gatech.edu>
1359         * ld/ldmain.c (main): initialize link_info.pei386_auto_import
1360         to -1 == implicit enable.
1361         * ld/emultempl/pe.em (gld_${EMULATION_NAME}_before_parse):
1362         initialize link_info.pei386_auto_import to -1 == implicit
1363         enable.
1364         (gld_${EMULATION_NAME}_parse_args): When processing
1365         --enable-auto-import and --disable-auto-import options, use
1366         '1' and '0' instead of 'true' and 'false'.
1367         (pe_find_data_imports): Only issue message about auto-import
1368         when the feature is implicitly enabled.  Downgrade message to
1369         informational instead of warning.
1371 2002-06-07  Alan Modra  <amodra@bigpond.net.au>
1373         * scripttempl/elf.sc (.tbss): Fix mismatched parentheses/braces.
1375 2002-06-06  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1377         * configure.host (hppa*64*-*-hpux11*): Define NATIVE_LIB_DIRS,
1378         HOSTING_CRT0 and HOSTING_LIBS.
1380 2002-06-05  J"orn Rennecke <joern.rennecke@superh.com>
1382         * configure.tgt (shle*-*-elf*, sh64le-*-elf*): New configurations.
1384 2002-06-05  Jason Thorpe  <thorpej@wasabisystems.com>
1386         * emulparams/ns32knbsd.sh (EXECUTABLE_SYMBOLS): Set _DYNAMIC to 0.
1387         (NONPAGED_TEXT_START_ADDR): Set to 0x1000.
1389 2002-06-05  Alan Modra  <amodra@bigpond.net.au>
1391         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Place
1392         SEC_EXCLUDE sections when doing a relocatable link.
1394 2002-06-04  Jason Thorpe  <thorpej@wasabisystems.com>
1396         * Makefile.am (ALL_EMULATIONS): Add eshelf32_nbsd.o,
1397         eshlelf32_nbsd.o, eshelf64_nbsd.o, and eshlelf64_nbsd.o.
1398         (eshelf32_nbsd.c, eshelf64_nbsd.c, eshlelf32_nbsd.c)
1399         (eshlelf64_nbsd.c): New rules.
1400         * Makefile.in: Regenerate.
1401         * configure.tgt (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
1402         (sh64-*-netbsd*): New targets.
1403         * emulparams/shelf32_nbsd.sh: New file.
1404         * emulparams/shelf64_nbsd.sh: New file.
1405         * emulparams/shlelf32_nbsd.sh: New file.
1406         * emulparams/shlelf64_nbsd.sh: New file.
1408 2002-06-04  Alan Modra  <amodra@bigpond.net.au>
1410         * ldlang.c (section_already_linked): Call bfd_discard_group.  Typo fix.
1412 2002-06-02  Marek Michalkiewicz  <marekm@amelek.gda.pl>
1414         * scripttempl/avr.sc: Changes to support current GCC and avr-libc,
1415         C++ constructors/destructors, loosely based on the m68hc11 port.
1417 2002-05-31  Alan Modra  <amodra@bigpond.net.au>
1419         * Makefile.in: Regenerate.
1420         * aclocal.m4: Regenerate.
1421         * config.in: Regenerate.
1422         * configure: Regenerate.
1424 2002-05-31  Graeme Peterson  <gp@qnx.com>
1426         * Makefile.am (ALL_EMULATIONS): Add ei386nto.o.
1427         (ei386nto.c): Add rule.
1428         * Makefile.in: Regenerate.
1429         * configure.tgt: Add i[3456]86-*-nto-qnx*.
1430         * emulparams/i386nto.sh: New file.
1432 2002-05-29  Jason Thorpe  <thorpej@wasabisystems.com>
1434         * NEWS: Add entry for VAX ELF support.
1436 2002-05-29  Matt Thomas  <matt@3am-software.com>
1437             Jason Thorpe  <thorpej@wasabisystems.com>
1439         * Makefile.am (ALL_EMULATIONS): Add eelf32vax.o and evaxnbsd.o.
1440         (eelf32vax.c)
1441         (evaxnbsd.c): New rules.
1442         * Makefile.in: Regenerate.
1443         * configure.tgt (vax-*-netbsdelf*)
1444         (vax-*-netbsdaout*)
1445         (vax-*-netbsd*): New targets.
1446         * emulparams/elf32vax.sh: New file.
1447         * emulparams/vaxnbsd.sh: New file.
1449 2002-05-29  Adam Nemet  <anemet@lnxw.com>
1451         * emultempl/armelf.em (arm_elf_after_open): Don't determine
1452         bfd_for_interwork, instead add glue sections to each input bfd.
1453         (bfd_for_interwork): New global.
1454         (arm_elf_set_bfd_for_interworking): New function.
1455         (arm_elf_before_allocation): Use it.
1457 2002-05-28  Kuang Hwa Lin <kuang@sbcglobal.net>
1459         * Makefile.am: Add DLX make target.
1460         * configure.tgt: Add DLX configuration.
1461         * Makefile.in: Regenerate.
1462         * emulparams/elf32_dlx.sh: New file
1463         * scripttempl/dlx.sc: New file
1465 2002-05-27  Per Lundberg  <per@caleb.dnsalias.org>
1467         * Makefile.am (eelf_i386_chaos): Use elf_chaos.sc script.
1468         * Makefile.in: Regenerate.
1469         * emulparams/elf_chaos.sh: Use elf_chaos script.
1470         * scripttempl/elf_chaos.sc: New file.
1472 2002-05-27  Richard Sandiford  <rsandifo@redhat.com>
1474         * ldlang.c (lang_size_sections_1): Move check for conflicting load
1475         addresses and regions from here...
1476         (lang_get_regions): ...to this new function.
1477         (lang_leave_output_section_statement): Use lang_get_regions.
1478         (lang_leave_overlay): Likewise.
1479         * mri.c (mri_draw_tree): Pass null as last argument to
1480         lang_leave_output_section_statement.
1481         * emultempl/elf32.em (gld*_place_orphan): Likewise.
1482         * emultempl/mmo.em (mmo_place_orphan): Likewise.
1483         * emultempl/pe.em (gld*_place_orphan): Likewise.
1485 2002-05-26  Jason Thorpe  <thorpej@wasabisystems.com>
1487         * configure.tgt: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*.
1489 2002-05-25  Kazu Hirata  <kazu@cs.umass.edu>
1491         * ldemul.c: Fix formatting.
1492         * ldfile.c: Likewise.
1493         * pe-dll.c: Likewise.
1494         * pe-dll.h: Likewise.
1496 2002-05-25  Alan Modra  <amodra@bigpond.net.au>
1498         * ldlang.c (lang_process): Formatting, grammar.
1500         * ldlex.l: Use #include "" instead of <> for local header files.
1502 2002-05-24  TAMURA Kent <kent@netbsd.org>
1504         * configure.tgt: Add a target for i386-netbsdpe.
1506 2002-05-23  Jakub Jelinek  <jakub@redhat.com>
1508         * scripttempl/elf.sc: Add .rel{,a}.t{bss,data}, .tdata and .tbss.
1509         * ldlang.c (lang_add_section): Set SEC_THREAD_LOCAL for
1510         output section if necessary.  Handle .tbss.
1511         (lang_size_sections): Clear _raw_size for .tbss section
1512         (it allocates space in PT_TLS segment only).
1513         * ldwrite.c (build_link_order): Build link order for .tbss too.
1515 2002-05-23  Alan Modra  <amodra@bigpond.net.au>
1517         * configure.in: Correct spelling of AC_PREREQ.
1519 2002-05-21  Danny Smith  <dannysmith@users.sourceforge.net>
1521         * pe-dll.c (autofilter_liblist): Add more system libs excluded by
1522         default.
1523         (autofilter_objlist): Add crtbegin.o, crtend.o.
1525 2002-05-21  Danny Smith  <dannysmith@users.sourceforge.net>
1527         * emultempl/pe.em (OPTION_EXCLUDE_LIBS): Add new define.
1528         (longopts): Add new option --exclude-libs.
1529         (gld_${EMULATION_NAME}_list_options): Give quick help about it.
1530         (gld_${EMULATION_NAME}_parse_args): Use it.
1531         * pe-dll.h (pe_dll_add_excludes): Add second param to prototype.
1532         * pe-dll.c (exclude_list_struct): Add field type to distinguish symbols
1533         from whole archives.
1534         (pe_dll_add_excludes): Set excludes->type.
1535         (auto_export): Add new variable libname and set to archive basename if
1536         abfd.  Use it when filtering default and user-specified libarary
1537         excludes.  Let string "ALL" mean all libs when filtering user-specified
1538         libs.
1539         * ld.texinfo: Document --exclude-libs.
1541 2002-05-22  Alan Modra  <amodra@bigpond.net.au>
1543         * ldemul.c (ldemul_new_vers_pattern): New function.
1544         * ldemul.h (ldemul_new_vers_pattern): Declare.
1545         (struct ld_emulation_xfer_struct): Add new_vers_pattern.
1546         * ldlang.c (lang_new_vers_pattern): Call ldemul_new_vers_pattern.
1547         * emultempl/ppc64elf.em (dotsyms): New static var.
1548         (gld${EMULATION_NAME}_new_vers_pattern): New function.
1549         (LDEMUL_NEW_VERS_PATTERN): Define.
1550         (PARSE_AND_LIST_PROLOGUE): Add OPTION_DOTSYMS, OPTION_NO_DOTSYMS.
1551         (PARSE_AND_LIST_LONGOPTS): Likewise.
1552         (PARSE_AND_LIST_ARGS_CASES): Handle them.
1553         * emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Update
1554         initialiser.
1555         * emultempl/armcoff.em: Likewise.
1556         * emultempl/armelf_oabi.em: Likewise.
1557         * emultempl/beos.em: Likewise.
1558         * emultempl/elf32.em: Likewise.
1559         * emultempl/generic.em: Likewise.
1560         * emultempl/gld960.em: Likewise.
1561         * emultempl/gld960c.em: Likewise.
1562         * emultempl/linux.em: Likewise.
1563         * emultempl/lnk960.em: Likewise.
1564         * emultempl/m68kcoff.em: Likewise.
1565         * emultempl/mipsecoff.em: Likewise.
1566         * emultempl/pe.em: Likewise.
1567         * emultempl/sunos.em: Likewise.
1568         * emultempl/ticoff.em: Likewise.
1569         * emultempl/vanilla.em: Likewise.
1571 2002-05-22  Alan Modra  <amodra@bigpond.net.au>
1573         * genscripts.sh (LIB_PATH): For native targets, concatenate $libdir
1574         and $NATIVE_LIB_DIRS.  Add $tool_lib before other libs.
1575         (LIB_SEARCH_DIRS): No need to use "tr".
1576         (COMPILE_IN): Only set for native targets.
1577         * configure.host (NATIVE_LIB_DIRS): Specify all native search dirs
1578         here, rather than adding lib:/usr/lib:/usr/local/lib in genscripts.sh.
1579         * configure.tgt (powerpc*): Set tdir_*.
1580         (powerpcle*): Correct targ_extra_emuls.
1581         * emulparams/elf32ppc.sh (LIB_PATH): Set up native 64 bit dirs.
1582         * emulparams/elf64ppc.sh (LIB_PATH): Likewise.
1584 2002-05-22  Alan Modra  <amodra@bigpond.net.au>
1586         * emultempl/pe.em (set_pe_subsystem): Don't set "cmdline" when
1587         calling lang_add_entry.
1589 2002-05-21  H.J. Lu  (hjl@gnu.org)
1591         * emultempl/elf32.em (gld${EMULATION_NAME}_parse_args): Handle
1592         "-z muldefs".
1593         (gld${EMULATION_NAME}_list_options): Add "-z muldefs".
1595         * ld.texinfo: Updated for --allow-multiple-definition and
1596         "-z muldefs".
1598         * ldmain.c (main): Initialize the allow_multiple_definition
1599         field to false.
1601         * lexsup.c (OPTION_ALLOW_MULTIPLE_DEFINITION): New.
1602         (ld_options): Add --allow-multiple-definition.
1603         (parse_args): Support OPTION_ALLOW_MULTIPLE_DEFINITION.
1605 2002-05-21  Jason Thorpe  <thorpej@wasabisystems.com>
1607         * Makefile.am (ALL_EMULATIONS): Add earmelfb_nbsd.o.
1608         (earmelfb_nbsd.c): New rule.
1609         * Makefile.in: Regenerate.
1610         * configure.tgt (armeb-*-netbsdelf*): New target.
1611         (arm-*-netbsdelf*): Add armelfb_nbsd to targ_extra_emuls.
1612         (arm-*-netbsd*): Likewise.
1613         * emulparams/armelfb_nbsd.sh: New file.
1615 2002-05-18  Tom Rix  <trix@redhat.com>
1617         * emultempl/aix.em (gld*_parse_args): Add -bnortl and -bnortllib
1618         support.
1620 2002-05-17  Marek Michalkiewicz  <marekm@amelek.gda.pl>
1622         * Makefile.am: Add new emulations avr1, avr2, avr3, avr4, avr5.
1623         * Makefile.in: Regenerate.
1624         * configure.tgt (avr-*-*): Add avr[1-5] to targ_extra_emuls.
1626 2002-05-16  Marek Michalkiewicz  <marekm@amelek.gda.pl>
1628         * emulparams/avr1.sh: New file.
1629         * emulparams/avr2.sh: New file.
1630         * emulparams/avr3.sh: New file.
1631         * emulparams/avr4.sh: New file.
1632         * emulparams/avr5.sh: New file.
1633         * scripttempl/avr.sc: New file.
1635 2002-05-15  Alan Modra  <amodra@bigpond.net.au>
1637         * ldlang.c (section_already_linked): Call bfd_link_just_syms.
1638         (lang_place_orphans): Abort if just_syms_flag.
1640 2002-05-10  Tom Rix  <trix@redhat.com>
1642         * emultempl/aix.em: (gld*_set_output_arch): New function. Use
1643         architecture and machine information in the output bfd.
1644         (gld*_before_parse): Remove old arch and machine code.
1645         (choose_target): Rename to gld*_choose_target.
1646         (rtld): Change type to int.
1647         * ldfile.c (ldfile_try_open_bfd): Disable compatiblity check for
1648         objects in XCOFF archives.
1649         * ldfile.h: Update copyright date.
1651 2002-05-10  Jakub Jelinek  <jakub@redhat.com>
1653         * ldmain.c (main): Enable -z combreloc by default.
1655 2002-05-07  Federico G. Schwindt <fgsch@olimpo.com.br>
1657         * Makefile.am: Honour DESTDIR.
1658         * Makefile.in: Regenerate.
1660 2002-05-07  Richard Sandiford  <rsandifo@redhat.com>
1662         * ldlang.h (lang_output_section_statement_type): Add update_dot_tree.
1663         (lang_enter_overlay): Remove the last two parameters.
1664         (lang_leave_overlay): Take them here instead.
1665         * ldgram.y (memspec_at_opt): Set $$ to null if no region is given.
1666         (section): Pass LMA and crossref flag to lang_leave_overlay rather
1667         than lang_enter_overlay.
1668         * ldlang.c (lang_memory_region_lookup): Return null for null names.
1669         (lang_output_section_statement_lookup): Initialize update_dot_tree.
1670         (lang_size_sections_1): Evaluate it.
1671         (lang_leave_output_section_statement): Rework LMA lookup.
1672         (overlay_lma, overlay_nocrossrefs): Remove.
1673         (lang_enter_overlay): Remove LMA and crossref arguments.
1674         (lang_enter_overlay_section): Don't set the LMA here.
1675         (lang_leave_overlay): Take LMA and crossref arguments.  Move the '.'
1676         assignment to the last section's update_dot_tree.  Unconditionally
1677         use the load and run-time regions specified in the OVERLAY statement.
1678         Likewise the first section's LMA.  Only set the other sections' LMAs
1679         when no load region is given.
1681 2002-05-06  Nick Clifton <nickc@redhat.com>
1683         * po/sv.po: New translation.
1685 2002-05-04  Alan Modra  <amodra@bigpond.net.au>
1687         * emultempl/hppaelf.em (build_section_lists): New function.
1688         (gld${EMULATION_NAME}_finish): Call elf32_hppa_setup_section_lists
1689         and build_section_lists.
1691 2002-05-03  Kazu Hirata  <kazu@cs.umass.edu>
1693         * ld.h: Fix formatting.
1694         * ldexp.c: Likewise.
1695         * ldfile.c: Likewise.
1696         * ldlang.c: Likewise.
1697         * ldmain.c: Likewise.
1698         * lexsup.c: Likewise.
1699         * pe-dll.c: Likewise.
1701 2002-05-02  Alan Modra  <amodra@bigpond.net.au>
1703         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation):
1704         Adjust for ppc64_elf_set_toc change.  #include libbfd.h.
1705         (build_section_lists): Do output_section tests here.
1707 2002-04-30  Tom Rix  <trix@redhat.com>
1709         * emultempl/aix.em : (gld*_parse_arge): Formatting changes.
1711 2002-05-01  Alan Modra  <amodra@bigpond.net.au>
1713         Long branch stubs, multiple stub sections.
1714         * emultempl/ppc64elf.em: Include ldctor.h.
1715         (stub_file): New var.
1716         (group_size): New var.
1717         (ppc_create_output_section_statements): New function.
1718         (struct hook_stub_info): New.
1719         (hook_in_stub): New function.
1720         (ppc_add_stub_section): New function.
1721         (ppc_layout_sections_again): New function.
1722         (build_section_lists): New function.
1723         (gld${EMULATION_NAME}_finish): Rewrite.
1724         (real_func): New var.
1725         (ppc_for_each_input_file_wrapper): New function.
1726         (ppc_lang_for_each_input_file): New function.
1727         (lang_for_each_input_file): Define.
1728         (PARSE_AND_LIST_PROLOGUE): Define.
1729         (PARSE_AND_LIST_LONGOPTS): Define.
1730         (PARSE_AND_LIST_OPTIONS): Define.
1731         (PARSE_AND_LIST_ARGS_CASES): Define.
1732         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
1734 2002-04-30  Tom Rix  <trix@redhat.com>
1736         * emultempl/aix.em (gld*_parse_arge, gld*_before_allocation): Add
1737         -blibpath, -bnolibpath support.
1739 2002-04-30  Mark Mitchell  <mark@codesourcery.com>
1741         * Makefile.am (ALL_EMULATIONS): Add elf32ppcwindiss.o.
1742         (eelf32ppcwindiss.c): New target.
1743         * Makefile.in: Regenerated.
1744         * configure.tgt: Add support for powerpc-*-windiss.
1745         * emulparams/elf32ppcwindiss.sh: New file.
1747 2002-04-30  Richard Sandiford  <rsandifo@redhat.com>
1749         * ldlang.c (print_assignment): Update print_dot for assignments to ".".
1750         * ldexp.c (exp_print_token): Add "infix_p" argument.
1751         (exp_print_tree): Update accordingly.
1753 2002-04-28  Alan Modra  <amodra@bigpond.net.au>
1755         * Makefile.am (mpw): New maintainer mode rule to make mpw-*.c files.
1756         * Makefile.in: Regenerate.
1757         * mpw-elfmips.c: Delete.
1758         * mpw-eppcmac.c: Delete.
1759         * mpw-esh.c: Delete.
1760         * mpw-idtmips.c: Delete.
1762 2002-04-17  J"orn Rennecke <joern.rennecke@superh.com>
1764         * emulparams/shelf32.sh (MACHINE): Now sh5.
1766 2002-04-17  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1768         * ldgram.y: Fix syntax warning.
1770 2002-04-11  Nick Clifton  <nickc@cambridge.redhat.com>
1772         * emultempl/armelf.em (PARSE_AND_LIST_SHORTOPTS): Add 'n' in order
1773         to prevent "-n" from being taken as an abbreviation for
1774         "--no-pipeline-knowledge".
1776 2002-04-08  Alan Modra  <amodra@bigpond.net.au>
1778         * ldlang.c (lang_size_sections_1): Don't complain about
1779         SEC_NEVER_LOAD sections having no memory region specified.
1781         * ld.texinfo (Format Commands <OUTPUT_FORMAT>): Typo fix.
1783 2002-04-07  matthew green  <mrg@redhat.com>
1785         * ld/configure.host (*-*-netbsd*): Add support for NetBSD/ELF.
1787 2002-04-04  Alan Modra  <amodra@bigpond.net.au>
1789         * dep-in.sed: Cope with absolute paths.
1790         * Makefile.am (dep.sed): Subst TOPDIR and BFDDIR.
1791         Run "make dep-am".
1792         * Makefile.in: Regenerate.
1794 2002-04-04  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1796         * emulparams/elf64btsmip.sh: n64 replaces .reginfo with .MIPS.options.
1798 2002-04-03  Jakub Jelinek  <jakub@redhat.com>
1800         * ldexp.c (fold_binary) [DATA_SEGMENT_ALIGN]: If common page size
1801         is smaller than maximum, round dot up to common page boundary.
1803 2002-03-28  Alan Modra  <amodra@bigpond.net.au>
1805         * configure.host: Set up for generic hosts first, then tweak as
1806         necessary in more specific targets.
1807         (HOSTING_LIBS): Include libgcc_eh.a if found.
1809 2002-03-23  Andreas Jaeger  <aj@suse.de>
1811         * emulparams/elf_x86_64.sh (COMMONPAGESIZE): Set it.
1813 2002-03-21  Alan Modra  <amodra@bigpond.net.au>
1815         * Makefile.am: Run "make dep-am".
1816         * Makefile.in: Regenerate.
1818 2002-03-21  Albert Chin-A-Young  <china@thewrittenword.com>
1820         * genscripts.sh (LIB_SEARCH_DIRS): Quote path.
1822 2002-03-20  Alan Modra  <amodra@bigpond.net.au>
1824         * ldlang.c (ldlang_add_undef): If the output bfd has been opened,
1825         add the symbol to the linker hash table immediately.
1826         (lang_place_undefineds): Split symbol creation out..
1827         (insert_undefined): ..to here.
1829 2002-03-18  David O'Brien  <obrien@FreeBSD.org>
1831         * emultempl/elf32.em: Use lbasename vs. basename to fix problem where
1832         the contents of the buffer returned from basename function will are
1833         getting overwritten while still being used.
1835 2002-03-18  Jan Hubicka  <jh@suse.cz>
1836             Andreas Jaeger  <aj@suse.de>
1837             Andreas Schwab  <schwab@suse.de>
1839         * configure.tgt (x86_64-*-linux-gnu*): Configure i386 as native.
1840         * elf_x86_64.sh (ARCH): Set to i386:x86-64
1841         set libraries to default to lib64 paths.
1843 2002-03-18  Tom Rix  <trix@redhat.com>
1845         * Makefile.am : Add eaix5ppc and eaix5rs6, AIX 5 support.
1846         * configure.tgt : Same.
1847         * emulparms/aix5ppc.sh : New file. For eaix5ppc.
1848         * emulparms/aix5rs6.sh : New file. For eaix5rs6.
1849         * emulparms/aixppc.sh : OUPUT_FORMAT_32BIT and OUTPUT_FORMAT_64BIT
1850         emulation parameters for better -b32, -b64 support.
1851         * emulparms/aixrs6.sh : Same.
1852         * emulparms/ppcmacos.sh : Same.
1853         * emultempl/aix.em (choose_target) : Use new emulation parameters
1854         OUTPUT_FORMAT_32BIT and OUTPUT_FORMAT_64BIT.
1855         * Makefile.in : Regenerate.
1857 2002-03-18  Nick Clifton  <nickc@cambridge.redhat.com>
1859         * po/fr.po: Updated version.
1861 2002-03-18  Alan Modra  <amodra@bigpond.net.au>
1863         * ldmain.c (main): Move .text readonly flag fudges from here..
1864         * ldlang.c (lang_process): ..to here.
1866 2002-03-14  Alan Modra  <amodra@bigpond.net.au>
1868         * ldlang.c (lang_check): Remove the word size check added in last
1869         change.  Treat emitrelocations case as for relocatable links.
1871 2002-03-13  Nick Clifton  <nickc@cambridge.redhat.com>
1873         * po/fr.po: Updated version.
1875 2002-03-13  Alan Modra  <amodra@bigpond.net.au>
1877         * ldlang.c (lang_check): Do relocatable link checks first, so that
1878         warn_mismatch can't override.  Check compatible and word size too.
1880 2002-03-07  Daniel Jacobowitz  <drow@mvista.com>
1882         * ld.texinfo: Wrap @menu in @ifnottex, not @ifinfo.
1884 2002-03-05  Jakub Jelinek  <jakub@redhat.com>
1886         * scripttempl/elf.sc: Only use DATA_SEGMENT_END() together with
1887         DATA_SEGMENT_ALIGN.
1889 2002-03-04  H.J. Lu <hjl@gnu.org>
1891         * scripttempl/elf.sc: Put .preinit_array, .init_array and
1892         .fini_array in the data segment.
1894 2002-03-04  Alan Modra  <amodra@bigpond.net.au>
1896         * scripttempl/elf.sc: Correct syntax errors in 2002-03-01 commit.
1898 2002-03-01  David Mosberger  <davidm@hpl.hp.com>
1900         * scripttempl/elf.sc (SECTIONS): Add entries for .preinit_array,
1901         .init_array, and .fini_array.
1903 2002-02-20  Andreas Schwab  <schwab@suse.de>
1905         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Don't fold
1906         .IA64_unwind* in a relocatable link.
1908 2002-02-20  Nick Clifton  <nickc@cambridge.redhat.com>
1910         * NEWS: Mark 2.12 branch.
1912 2002-02-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1914         * emulparams/elf64_s390.sh (ARCH): Change to "s390:64-bit".
1915         * emulparams/elf_s390.sh (ARCH): Change to "s390:31-bit".
1917 2002-02-18  Tom Rix  <trix@redhat.com>
1919         * emultempl/aix.em (gld*_parse_args): Add -brtl support.
1920         (gld*_before_allocation): Same.
1921         (gld*_create_output_section_statements): Generate
1922         __rtinit if run time linking.  Add librtl.a to the link.
1923         (gld*_read_file): Clean.
1925 2002-02-18  Alan Modra  <amodra@bigpond.net.au>
1927         * emulparams/elf64ppc.sh (OTHER_TEXT_SECTIONS): Define.
1929 2002-02-18  David O'Brien  <obrien@FreeBSD.org>
1931         * Makefile.am: Add new files earmelf_fbsd, eelf32ppc_fbsd,
1932         eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
1933         and eelf64alpha_fbsd.
1934         * Makefile.in: Regenerate.
1935         * configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd,
1936         x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd):
1937         use a FreeBSD-specific emulation rather than the psABI one.
1938         * emulparams/elf_fbsd.sh (ELF_INTERPRETER_NAME): Set appropriate value
1939         for all FreeBSD ELF systems.
1940         * emulparams/armelf_fbsd.sh: Bridge elf_fbsd.sh and the "native" psABI
1941         emulation.
1942         * emulparams/elf32ppc_fbsd.sh: Likewise.
1943         * emulparams/elf64_ia64_fbsd.sh: Likewise.
1944         * emulparams/elf64_sparc_fbsd.sh: Likewise.
1945         * emulparams/elf64alpha_fbsd.sh: Likewise.
1946         * emulparams/elf_i386_fbsd.sh: Likewise.
1947         * emulparams/elf_x86_64_fbsd.sh: Likewise.
1949 2002-02-18  Nick Clifton  <nickc@cambridge.redhat.com>
1951         * po/tr.po: Updated version.
1953 2002-02-18  Alan Modra  <amodra@bigpond.net.au>
1955         * ld.texinfo (Output Section Fill): Fix amateur texinfo.
1956         (FILL): Likewise.
1958 2002-02-17  Hans-Peter Nilsson  <hp@bitrange.com>
1960         * emultempl/mmo.em (mmo_after_open): Don't call
1961         _bfd_mmix_check_all_relocs when producing ELF output.
1963 2002-02-15  Richard Henderson  <rth@redhat.com>
1965         * emulparams/elf64alpha.sh (NOP): Adjust for big-endian
1966         definition.  Emit a unop+nop pair.
1968 2002-02-15  Hans-Peter Nilsson  <hp@bitrange.com>
1970         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Also check
1971         for presence of .MMIX.reg_contents.linker_allocated before early
1972         exit.
1974         * NEWS: Mention support for MMIX.
1976 2002-02-15  Alan Modra  <amodra@bigpond.net.au>
1978         Support arbitrary length fill patterns.
1979         * ld.texinfo (Output Section Fill): Describe fill expressions.
1980         (FILL): Refer to the above.
1981         * ldexp.h (etree_value_type): Add "str" field.
1982         (union etree_union): Add "str" to "value" struct.
1983         (exp_bigintop): Declare.
1984         (exp_get_fill): Declare.
1985         * ldexp.c: Include "safe-ctype.h".
1986         (exp_intop): Set value.str to NULL.
1987         (exp_bigintop): New function.
1988         (new_rel): Pass in "str", and set new.str from it.
1989         (new_rel_from_section): Set new.str to NULL.
1990         (fold_name): Adjust calls to new_rel.
1991         (exp_fold_tree): Likewise.
1992         (exp_get_fill): New function.
1993         * ldgram.y (struct big_int bigint, fill_type *fill): New.
1994         (INT): Returns a "bigint".  Adjust all code handling INTs.
1995         (fill_opt): Returns a "fill".
1996         (fill_exp): Split out of fill_opt, use for FILL.
1997         * ldlang.h (struct _fill_type): New.
1998         (fill_type): Move typedef to ldexp.h.
1999         (lang_output_section_statement_type): "fill" is now a pointer.
2000         (lang_fill_statement_type): Likewise.
2001         (lang_padding_statement_type): Likewise.
2002         (lang_add_fill): Now takes a "fill_type *" param.
2003         (lang_leave_output_section_statement): Likewise.
2004         (lang_do_assignments): Likewise.
2005         (lang_size_sections): Likewise.
2006         (lang_leave_overlay_section): Likewise.
2007         (lang_leave_overlay): Likewise.
2008         * ldlang.c: Include ldgram.h after ldexp.h.
2009         (lang_output_section_statement_lookup): Adjust for fill_type change.
2010         (print_fill_statement): Likewise.
2011         (print_padding_statement): Likewise.
2012         (insert_pad): Now takes a "fill_type *" arg.
2013         (size_input_section): Likewise.
2014         (lang_size_sections_1): Likewise.
2015         (lang_size_sections): Likewise.
2016         (lang_do_assignments): Likewise.
2017         (lang_add_fill): Likewise.
2018         (lang_leave_output_section_statement): Likewise.
2019         (lang_leave_overlay_section): Likewise.
2020         (lang_leave_overlay): Likewise.
2021         Adjust all callers of the above function.
2022         * ldlex.l: Include ldgram.h after ldexp.h.  Allow hex numbers
2023         starting with "0X" as well as "0x".  Return bigint.str for hex
2024         numbers starting with "0x" or "0X", zero bigint.str otherwise.
2025         Always use base 16 for numbers starting with "$".
2026         * ldmain.c: Include ldgram.h after ldexp.h.
2027         * ldwrite.c (build_link_order): Use bfd_data_link_order in place
2028         of bfd_fill_link_order.
2029         * pe-dll.c: Adjust lang_do_assignments calls.
2030         * emultempl/elf32.em: Likewise.
2031         * emultempl/hppaelf.em: Likewise.
2032         * emultempl/ppc64elf.em: Likewise.
2033         * emultempl/beos.em: Include ldgram.h after ldexp.h, adjust
2034         lang_add_assignment call.
2035         * emultempl/pe.em: Likewise.
2037 2002-02-14  Phil Edwards  <pme@gcc.gnu.org>
2039         * ld.texinfo (VERSION scripts):  Symbol names are globbing patterns.
2040         * ldgram.y (lang_new_vers_regex):  Rename to lang_new_vers_pattern;
2041         the pattern in question is not a regexp.
2042         * ldlang.c:  Likewise.
2043         * ldlang.h:  Likewise.
2044         * ldlex.l (V_IDENTIFIER):  Allow '[', ']', '-', '!', and '^' also.
2046 2002-02-12  Jakub Jelinek  <jakub@redhat.com>
2048         * ldlex.l (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
2049         * ldgram.y (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
2050         (exp): Add DATA_SEGMENT_ALIGN (exp, exp) and DATA_SEGMENT_END (exp).
2051         * ldexp.c (exp_data_seg): New variable.
2052         (exp_print_token): Handle DATA_SEGMENT_ALIGN and DATA_SEGMENT_END.
2053         (fold_binary): Handle DATA_SEGMENT_ALIGN.
2054         (exp_fold_tree): Handle DATA_SEGMENT_END.
2055         Pass allocation_done when recursing instead of hardcoding
2056         lang_allocating_phase_enum.
2057         * ldexp.h (exp_data_seg): New.
2058         * ldlang.c (lang_size_sections_1): Renamed from lang_size_sections.
2059         (lang_size_sections): New.
2060         * ld.texinfo (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): Document.
2061         * scripttempl/elf.sc: Use DATA_SEGMENT_ALIGN and DATA_SEGMENT_END
2062         if COMMONPAGESIZE is defined.
2063         * emulparams/elf_i386.sh (COMMONPAGESIZE): Set to 4K.
2064         * emulparams/elf32_sparc.sh (COMMONPAGESIZE): Set to 8K.
2065         * emulparams/elf64_sparc.sh (COMMONPAGESIZE): Set to 8K.
2066         * emulparams/elf64alpha.sh (COMMONPAGESIZE): Set to 8K.
2067         * emulparams/elf64_ia64.sh (COMMONPAGESIZE): Set to 16K for shared
2068         libraries only.
2070 2002-02-11  Alan Modra  <amodra@bigpond.net.au>
2072         * Makefile.in: Regenerate.
2074 2002-02-10  Daniel Jacobowitz  <drow@mvista.com>
2076         * lexsup.c: Remove strtoul declaration.
2078 2002-02-10  Daniel Jacobowitz  <drow@mvista.com>
2080         * ldmain.c: Add prototype for main ().
2081         * lexsup.c: Guard declaration of strtoul with HAVE_STDLIB_H.
2082         * emultempl/lnk960.em (lnk960_choose_target): Function should
2083         take two arguments.
2085 2002-02-10  Alan Modra  <amodra@bigpond.net.au>
2087         * ldlang.c (entry_section): New initialised variable.
2088         (lang_finish): Use it.
2089         * ldlang.h (entry_section): Declare.
2090         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Set
2091         entry_section to ".opd".
2093 2002-02-09  Chris Demetriou  <cgd@broadcom.com>
2095         * ld.texinfo (Options): Add back in -nostdlib documentation,
2096         which had been inadvertently removed.
2098 2002-02-09  Hans-Peter Nilsson  <hp@bitrange.com>
2100         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Adjust
2101         register section vma to a sane value after emitting error.  Make
2102         fatal conditions cause program exit when emitting message.
2104 2002-02-08  Ivan Guzvinec <ivang@opencores.org>
2106         * configure.tgt: Add or32-*-rtems target.
2108 2002-02-08  Alexandre Oliva  <aoliva@redhat.com>
2110         Contribute sh64-elf.
2111         2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
2112         * emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined
2113         in OTHER_RELOCATABLE_SECTIONS.
2114         2002-01-18  Alexandre Oliva  <aoliva@redhat.com>
2115         * emulparams/shelf32.sh (STACK_ADDR): Define.
2116         (OTHER_RELOCATABLE_SECTIONS): Renamed to...
2117         (OTHER_SECTIONS): this.  Removed stack settings.
2118         * emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set.
2119         (OTHER_SECTIONS): Reset after sourcing shelf32.sh.
2120         2001-03-12  DJ Delorie  <dj@redhat.com>
2121         * emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
2122         relaxing if any shmedia or mixed sections are found.
2123         2001-03-07  DJ Delorie  <dj@redhat.com>
2124         * emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
2125         einfo.  Gracefully decline to output to non-elf formats.
2126         2001-03-06  Hans-Peter Nilsson  <hpn@redhat.com>
2127         * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>:
2128         Default to _end aligned to next multiple of 0x40000, plus 0x40000.
2129         * emulparams/shelf32.sh: Ditto.
2130         2001-01-14  Hans-Peter Nilsson  <hpn@cygnus.com>
2131         * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak
2132         comment.
2133         2001-01-10  Ben Elliston  <bje@redhat.com>
2134         * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid
2135         non-portable shell constructs. From Hans-Peter Nilsson.
2136         2001-01-09  Hans-Peter Nilsson  <hpn@cygnus.com>
2137         * emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty.
2138         * Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
2139         dependencies to the shell script include chain.
2140         * Makefile.in: Regenerate.
2141         2001-01-06  Hans-Peter Nilsson  <hpn@cygnus.com>
2142         * emultempl/sh64elf.em: Update and tweak comments.
2143         (sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
2144         make a .cranges section SEC_IN_MEMORY.
2145         2000-12-30  Hans-Peter Nilsson  <hpn@cygnus.com>
2146         * emultempl/sh64elf.em
2147         (sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
2148         .cranges section found to be necessary; continue and set stored
2149         section contents flags for sections with non-mixed contents.
2150         Use a struct sh64_section_data container and sh64_elf_section_data
2151         to store contents-type flags.
2152         Remove unused update of "isec".
2153         (sh64_elf_${EMULATION_NAME}_after_allocation): Only process
2154         sections marked SHF_SH5_ISA32_MIXED.  Use sh64_elf_section_data to
2155         access contents-type flags.  Assert that the associated container
2156         is initialized.  Use that container, not elf_gp_size, to hold size
2157         of linker-generated cranges contents.
2158         2000-12-18  Hans-Peter Nilsson  <hpn@cygnus.com>
2159         * emultempl/sh64elf.em
2160         (sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
2161         there's already a .cranges section.  When section flag difference
2162         is found, don't NULL-check cranges a second time.  Tweak comments.
2163         (sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
2164         merging, not max size, as size of ld-generated .cranges contents.
2165         Don't set ELF section flags in output section.  When checking for
2166         needed .cranges descriptors, don't use a variable; compare
2167         incoming ELF section flags directly to SHF_SH5_ISA32_MIXED.  Tweak
2168         comments.
2169         2000-12-18  Hans-Peter Nilsson  <hpn@cygnus.com>
2170         * emultempl/sh64elf.em: New file.
2171         * Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies.
2172         * Makefile.in: Regenerate.
2173         * emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set.
2174         (OTHER_RELOCATING_SECTIONS): Ditto.
2175         (EXTRA_EM_FILE): New, set to sh64elf if not set.
2176         * emulparams/shlelf32.sh: Stub out all settings except
2177         OUTPUT_FORMAT.  Source shelf32.sh.
2178         * emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and
2179         OTHER_RELOCATING_SECTIONS.
2180         (OTHER_RELOCATING_SECTIONS): Remove .cranges.
2181         * emulparams/shlelf64.sh: Stub out all settings except
2182         OUTPUT_FORMAT.  Source shelf64.sh.
2183         2000-12-15  Hans-Peter Nilsson  <hpn@cygnus.com>
2184         * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include
2185         .cranges section.
2186         (DATA_START_SYMBOLS): Define, provide ___data.
2187         (OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
2188         for consecutive .data section.
2189         (OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
2190         section after .data section.
2191         * emulparams/shlelf64.sh: Ditto.
2192         * emulparams/shelf32.sh: Ditto.
2193         (ALIGNMENT): Define to 8.
2194         * emulparams/shelf32.sh: Ditto.
2195         2000-12-12  Hans-Peter Nilsson  <hpn@cygnus.com>
2196         * configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
2197         built-in linker scripts.
2198         2000-11-30  Hans-Peter Nilsson  <hpn@cygnus.com>
2199         * emulparams/shlelf64.sh: New.
2200         * emulparams/shelf64.sh: New.
2201         * configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
2202         targ_extra_emuls.
2203         * Makefile.am: Add support for shlelf64 and shelf64.
2204         * Makefile.in: Regenerate.
2205         2000-11-29  Hans-Peter Nilsson  <hpn@cygnus.com>
2206         * configure.tgt (sh64-*-elf*): Add shelf as default.
2207         Add shlelf to targ_extra_emuls.
2208         2000-11-24  Hans-Peter Nilsson  <hpn@cygnus.com>
2209         * emulparams/shelf32.sh: New file.
2210         * emulparams/shlelf32.sh: New file.
2211         * Makefile.am: Add support for shlelf32 and shelf32.
2212         * configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
2213         * Makefile.in: Regenerate.
2215 2002-02-05  Hans-Peter Nilsson  <hp@axis.com>
2217         * ldlang.c (lang_reset_memory_regions): Rename from
2218         reset_memory_regions.  Change all callers.  Make public.
2219         * ldlang.h (lang_reset_memory_regions): Prototype.
2220         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Call
2221         lang_reset_memory_regions before lang_size_sections.
2222         * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
2223         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Likewise.
2225 2002-02-04  Hans-Peter Nilsson  <hp@bitrange.com>
2227         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Use signed
2228         arithmetic when checking for too many global registers.
2230 2002-02-02  Jason Thorpe  <thorpej@wasabisystems.com>
2232         * Makefile.am (ALL_EMULATIONS): Add ehppanbsd.o.
2233         (ehppanbsd.c): New rule.
2234         * Makefile.in: Regenerate.
2235         * configure.tgt (hppa*-*-netbsd*): New target.
2236         * emulparams/hppalinux.sh: Add comment to check other files
2237         that source this file it is modified, and list which
2238         files that do.
2239         * emulparams/hppanbsd.sh: New file.
2241 2002-02-01  Geoffrey Keating  <geoffk@redhat.com>
2243         * scripttempl/xstormy16.sc: Don't allocate extra space for the
2244         stack.
2246 2002-02-01  Hans-Peter Nilsson  <hp@bitrange.com>
2248         Support on-demand global register allocation from
2249         R_MMIX_BASE_PLUS_OFFSET relocs.
2250         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Rename from
2251         mmix_set_reg_section_vma.  Call
2252         _bfd_mmix_finalize_linker_allocated_gregs.
2253         (mmix_before_allocation): New function.
2254         (LDEMUL_AFTER_ALLOCATION): Set to mmix_after_allocation.
2255         (LDEMUL_BEFORE_ALLOCATION): Define to mmix_before_allocation.
2256         * scripttempl/mmo.sc (.text): Mark .init, .fini as KEEP.
2257         (.MMIX.reg_contents): Add .MMIX.reg_contents.linker_allocated
2258         before .MMIX.reg_contents.
2259         * emultempl/mmo.em (gldmmo_before_allocation): Define to default.
2260         (mmo_after_open): New function.
2261         (LDEMUL_AFTER_OPEN): Define to mmo_after_open.
2262         * emulparams/elf64mmix.sh (OTHER_SECTIONS): Tweak formatting.  Add
2263         .MMIX.reg_contents.linker_allocated before .MMIX.reg_contents.
2265 2002-01-31  Ivan Guzvinec  <ivang@opencores.org>
2267         * emulparams/or32.sh: New file.
2268         * emulparams/or32elf.sh: New file.
2269         * scripttempl/or32.sc: New file.
2270         * configure.tgt : Add support for or32.
2271         * configure: Regenerate
2272         * Makefile.am: Add support for or32.
2273         * Makefile.in: Regenerate.
2274         * NEWS: Mention support for or32.
2275         * po/ld.pot: Regenerate.
2277 2002-01-29  Chris Demetriou  <cgd@broadcom.com>
2278             Mitch Lichtenberg  <mpl@broadcom.com>
2280         * emulparams/elf32bmip.sh (EXTRA_EM_FILE): Define to be mipself.
2281         * emultempl/mipself.em: New file to handle MIPS ELF embedded
2282         reloc creation (ld --embedded-relocs).
2284 2002-01-27  Daniel Jacobowitz  <drow@mvista.com>
2286         * configure: Regenerated.
2288 2002-01-26  Hans-Peter Nilsson  <hp@bitrange.com>
2290         * Makefile.am (install): Depend on install-info.
2291         * Makefile.in: Regenerate.
2293 2002-01-26  Christian Rose  <menthos@menthos.com>
2295         * ldmain.c (main): Use full sentences to ease translation.
2297 2002-01-26  Nick Clifton  <nickc@cambridge.redhat.com>
2299         * po/fr.po: Updated version.
2301 2002-01-25  Nick Clifton  <nickc@cambridge.redhat.com>
2303         * po/es.po: Updated version.
2305 2002-01-25  Andreas Jaeger  <aj@suse.de>
2307         * ldlex.l (yy_input): Correct error check.
2309 2002-01-25  Alan Modra  <amodra@bigpond.net.au>
2311         * ldmisc.c (demangle): Put back dots when string not demangled.
2313 2002-01-22  Richard Henderson  <rth@redhat.com>
2315         * emulparams/elf64alpha.sh (NOP): Use unop.
2317 2002-01-21  Andreas Jaeger  <aj@suse.de>
2319         * ldlex.l: Use fread instead of read.
2321 2002-01-21  Jason Thorpe  <thorpej@wasabisystems.com>
2323         * configure.tgt (ia64-*-netbsd*): New target.
2325 2002-01-21  H.J. Lu <hjl@gnu.org>
2327         * emulparams/elf32btsmip.sh (SHLIB_TEXT_START_ADDR): Change to
2328         0.
2329         * emulparams/elf64btsmip.sh (SHLIB_TEXT_START_ADDR): Likewise.
2331 2002-01-18  Andreas Jaeger  <aj@suse.de>
2333         * ldver.c (ldversion): Update year.
2335 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
2337         * po/ld.pot: Regenerate.
2339 2002-01-16  Alan Modra  <amodra@bigpond.net.au>
2341         * Makefile.am (eelf64ppc.c, eelf64lppc.c): Depend on ppc64elf.em.
2342         * Makefile.in: Regenerate.
2343         * emulparams/elf64ppc.sh (EXTRA_EM_FILE): Define.
2344         * emultempl/ppc64elf.em: New file.
2346 2002-01-15  DJ Delorie  <dj@redhat.com>
2348         * scripttempl/pe.sc: Add support for constructor priorities.
2350 2002-01-07  Marek Michalkiewicz  <marekm@amelek.gda.pl>
2352         * emulparams/avr1200.sh (DATA_START): Define as 0x60.
2353         * emulparams/avr23xx.sh: Likewise.
2354         * emulparams/avr4433.sh: Likewise.
2355         * emulparams/avr44x4.sh: Likewise.
2356         * emulparams/avr85xx.sh: Likewise.
2357         * emulparams/avrmega103.sh: Likewise.
2358         * emulparams/avrmega161.sh: Likewise.
2359         * emulparams/avrmega603.sh: Likewise.
2360         * scripttempl/elf32avr.sc: Use DATA_START instead of 0x60.
2362 2002-01-08  Alexandre Oliva  <aoliva@redhat.com>
2364         * ldlang.c (walk_wild_section): Exclude object file if enclosing
2365         archive is excluded.
2367 2002-01-07  Jason Thorpe  <thorpej@wasabisystems.com>
2369         * Makefile.am (ALL_EMULATIONS): Add eshelf_nbsd.o and eshlelf_nbsd.o.
2370         (eshelf_nbsd.c): New rule.
2371         (eshlelf_nbsd.c): New rule.
2372         * Makefile.in: Regenerate.
2373         * configure.tgt (sh*le-*-netbsdelf*): New target.
2374         (sh*-*-netbsdelf*): New target.
2375         * emulparams/shelf.sh: Document that shelf_nbsd.sh sources this file.
2376         * ld/emulparams/shelf_nbsd.sh: New emulation.
2377         * ld/emulparams/shlelf_nbsd.sh: New emulation.
2379 2002-01-07  Nick Clifton  <nickc@cambridge.redhat.com>
2381         * po/es.po: New file: Spanish translation.
2382         * configure.in (ALL_LINGUAS): Add es.
2383         * configure: Regenerate.
2385 2002-01-06  John Marshall  <jmarshall@acm.org>
2387         * ld.texinfo: Note that --emit-relocs is currently only
2388         implemented for ELF.
2390 2002-01-05  Alan Modra  <amodra@bigpond.net.au>
2392         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Make use
2393         of bfd_section_list_remove and bfd_section_list_insert macros.
2394         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
2395         * emultempl/mmo.em (mmo_place_orphan): Likewise.
2397 2002-01-04  Jason Thorpe  <thorpej@wasabisystems.com>
2399         * configure.tgt (x86_64-*-netbsd*): New target.
2401 2001-12-21  Tom Rix  <trix@redhat.com>
2403         (gld*_create_output_section_statements): New function.
2404         For -binitfini support.
2405         * emultempl/aix.em (gld*_before_parse): Fix comment.
2406         * emultempl/aix.em (gld*_parse_args): Fix comment.
2408 2001-12-20  Jason Thorpe  <thorpej@wasabisystems.com>
2410         * configure.tgt (mips*-dec-netbsd*): Delete alias for
2411         mips*el-*-netbsd*.
2412         (sparc64-*-netbsd*): Add elf32_sparc to targ_extra_emuls.
2414         * configure.tgt (arm-*-netbsdelf*): Add target.
2415         (arm-*-netbsd*): Add armelf and armelf_nbsd to targ_extra_emuls.
2416         * emulparams/armelf_nbsd.sh: Added.
2417         * Makefile.am: Add rules for earmelf_nbsd.
2418         * Makefile.in: Regenerate.
2420 2001-12-19  Andreas Jaeger  <aj@suse.de>,
2421             Susanne Oberhauser <froh@suse.de>
2423         * configure.host: Add rules for x86_64-*linux-gnu.  Change
2424         s390x-linux entry to use gcc to report configuration, replace gcc
2425         with $CC in s390-linux
2427 2001-12-19  Andreas Jaeger  <aj@suse.de>
2429         * ld.texinfo (VERSION): Fix markup.
2431 2001-12-18  matthew green  <mrg@eterna.com.au>
2433         * Makefile.am (ALL_EMULATIONS): Add m68kelfnbsd.o.
2434         (m68kelfnbsd.c): New rule.
2435         * Makefile.in: Regenerate.
2436         * configure.tgt (m68*-hp-netbsd*): Renamed to ..
2437         (m68*-*-netbsd*4k*): .. this.
2438         (m68*-*-netbsdelf*): New target.
2439         (m68*-*-netbsd*): Also include ELF support.
2440         (m68*-*-netbsdaout*): New alias for m68*-*-netbsd*.
2441         * emulparams/m68kelfnbsd.sh: New emulation.
2443 2001-12-18  Jakub Jelinek  <jakub@redhat.com>
2445         * ldgram.y (vers_node): Support anonymous version tags.
2446         * ldlang.c (lang_register_vers_node): Ensure anonymous version
2447         tag is not defined together with non-anonymous versions.
2448         * ld.texinfo: Document it.
2450 2001-12-18  Nick Clifton  <nickc@cambridge.redhat.com>
2452         * po/tr.po: New file: Turkish translation.
2453         * configure.in (ALL_LINGUAS): Add tr.
2454         * configure: Regenerate.
2456 2001-12-17  Jason Thorpe  <thorpej@wasabisystems.com>
2458         * Makefile.am: Add rules for eelf64alpha_nbsd.
2459         * Makefile.in: Regenerate.
2460         * configure.tgt (alpha*-*-netbsd*): Set
2461         targ_emul to elf64alpha_nbsd.
2462         * emulparams/elf64alpha_nbsd.sh: Added.
2464 2001-12-17  Alan Modra  <amodra@bigpond.net.au>
2466         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Adjust
2467         section_tail when fiddling with section list.
2468         (gld${EMULATION_NAME}_list_options): Ensure sentences aren't
2469         broken into separate strings to make translation easier.
2470         * emultempl/mmo.em (mmo_place_orphan): Adjust section_tail when
2471         fiddling with section list.
2472         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
2474 2001-12-16  Hans-Peter Nilsson  <hp@bitrange.com>
2476         * scripttempl/mmo.sc: Add .debug_ranges to listed sections.
2478 2001-12-15  Alan Modra  <amodra@bigpond.net.au>
2480         * ldmain.c (main): Initialise link_info.eh_frame_hdr.
2482 2001-12-13  Jakub Jelinek  <jakub@redhat.com>
2484         * emultempl/elf32.em (finish): Supply output_bfd
2485         to bfd_elf*_discard_info.
2486         (OPTION_EH_FRAME_HDR): Define.
2487         (longopts): Add --eh-frame-hdr.
2488         (parse_args): Handle it.
2489         (list_options): Add --eh-frame-hdr to help.
2490         * emultempl/hppaelf.em (finish): Supply output_bfd
2491         to bfd_elf*_discard_info.
2492         * scripttempl/elf.sc (.eh_frame_hdr): Add.
2494 2001-12-13  Alan Modra  <amodra@bigpond.net.au>
2496         * lexsup.c (parse_args): Don't pass shortopts to second call to
2497         getopt functions.  Restore optind rather than decrementing before
2498         second call.  Remove errind as it now duplicates last_optind.
2500 2001-12-11  Christopher Faylor  <cgf@redhat.com>
2502         * emultempl/pe.em (gld_${EMULATION_NAME}_list_options): Fix typo.
2504 2001-12-07  Geoffrey Keating  <geoffk@redhat.com>
2505             Richard Henderson  <rth@redhat.com>
2507         * Makefile.am: Add support for xstormy16.
2508         * configure.tgt: Add support for xstormy16.
2509         * Makefile.in: Regenerate.
2510         * emulparams/elf32xstormy16.sh: New file.
2511         * scripttempl/xstormy16.sc: New file.
2513 2001-10-01  Christopher Faylor <cgf@cygnus.com>
2515         * Makefile.in (LIB_PATH): Make configurable.
2516         (GENSCRIPTS): Set LIB_PATH in environment.
2517         * configure.in: Substitute LIB_PATH.
2518         * configure: Regenerate.
2519         * configure.tgt (*cygwin): Set LIB_PATH for cross build.
2520         * configure.host (*cygwin): Add /usr/lib/w32api to NATIVE_LIB_DIRS.
2522 2001-12-07  Nick Clifton  <nickc@cambridge.redhat.com>
2524         * lexsup.c (ld_options): Insert 'PROGRAM' into the text string
2525         describing the -N option so that it is easier to translate into
2526         foreign languages.
2528 2001-12-05  Nick Clifton  <nickc@cambridge.redhat.com>
2530         * emultempl/pe.em (..._list_options): Replace multiple fprintf
2531         statements describing a single option with a single, newline
2532         escaped fprintf.  This allows better translation into other
2533         languages.
2535         * ldmain.c (add_archive_element): Combine multiple strings
2536         into a single string to permit better translation into other
2537         languages.
2539 2001-12-05  Tom Rix  <trix@redhat.com>
2541         * Makefile.am: Remove eaixppc64.
2542         * Makefile.in: Regenerate.
2544 2001-12-04  Tom Rix  <trix@redhat.com>
2546         * emultempl/aix.em (choose_target): Change default target to
2547         OUTPUT_FORMAT for ppcmacos.  Add braces to remove compiler
2548         warning.
2549         (gld*_read_file):  Fix typo.
2550         (change_symbol_mode): Add prototype.
2551         (is_syscall): Same.
2553         * emulparams/aixppc.sh (SYSCALL_MASK, SYMBOL_MODE_MASK): Delete.
2554         * emulparams/aixrs6.sh : Same.
2555         * emulparams/ppcmacos.sh : Same.
2556         * emulparams/aixppc64.sh : Delete file.
2557         * emultempl/aix.em : Formatting changes.
2559 2001-12-04  Hans-Peter Nilsson  <hp@axis.com>
2561         * emulparams/criself.sh (NO_SMALL_DATA): Set, to yes.
2562         (OTHER_BSS_END_SYMBOLS): Don't refer to .sbss when setting
2563         __Sbss.
2564         (OTHER_END_SYMBOLS): Fix formatting.
2565         * emulparams/crislinux.sh (NO_SMALL_DATA): Set, to yes.
2566         (OTHER_END_SYMBOLS): Fix formatting.
2568 2001-12-04  Alan Modra  <amodra@bigpond.net.au>
2570         * ldexp.c (exp_print_token): Correct "table" entry for RSHIFT.
2572 2001-12-02  Tom Rix  <trix@redhat.com>
2574         * configure.tgt : Remove eaixppc64 emulations.
2575         * Makefile.in : Remove eaixppc64.c
2576         * ldemul.c (ldemul_choose_target): New parameters argc, argv.
2577         (ldemul_default_target): Same.
2578         * emultempl/gld960.em (gld960_choose_target):  Same.
2579         * emultempl/gld960c.em (gld960_choose_target):  Same.
2580         * scripttempl/aix.sc: Remove OUTPUT_FORMAT.
2581         * emultempl/aix.em (is_syscall): syscall_mask now a variable.
2582         * emultempl/aix.em (gld*_read_file): symbol_mode_mask now a variable.
2583         * emultempl/aix.em (gld*_parse_args): Handle -b32 -b64 emulation.
2584         * emultempl/aix.em (choose_target): New function.  Handle emulation of
2585         -b32 and -b64.
2587 2001-11-27  H.J. Lu <hjl@gnu.org>
2589         * emulparams/elf_i386.sh (NO_SMALL_DATA): Set to yes.
2590         * emulparams/elf_i386_be.sh (NO_SMALL_DATA): Likewise.
2591         * emulparams/elf_i386_chaos.sh (NO_SMALL_DATA): Likewise.
2592         * emulparams/elf_i386_ldso.sh (NO_SMALL_DATA): Likewise.
2593         * emulparams/elf_x86_64.sh (NO_SMALL_DATA): Likewise.
2594         * emulparams/m68kelf.sh (NO_SMALL_DATA): Likewise.
2595         * emulparams/elf32_sparc.sh (NO_SMALL_DATA): Likewise.
2596         * emulparams/elf64_sparc.sh (NO_SMALL_DATA): Likewise.
2598         * scripttempl/elf.sc (SBSS): New. Define if ${NO_SMALL_DATA}
2599         is not empty.
2600         (SDATA): Likewise.
2601         (REL_SDATA): Likewise.
2602         (REL_SBSS): Likewise.
2603         (REL_SDATA2): Likewise.
2604         (REL_SBSS2): Likewise.
2605         (SBSS2): Define if ${NO_SMALL_DATA} is not empty.
2606         (SDATA2): Likewise.
2608 2001-11-25  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2610         * scripttempl/elfm68hc11.sc (CTOR, DTOR): Put constructor and
2611         destructor in rom.
2612         * scripttempl/elfm68hc12.sc (CTOR, DTOR): Likewise.
2614 2001-11-22  H.J. Lu  <hjl@gnu.org>
2616         * Makefile.in: Regenerated with automake based on automake
2617         1.4-8 in RedHat 7.1.
2619 2001-11-22  Alan Modra  <amodra@bigpond.net.au>
2621         * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
2622         (config.status): Delete rule.
2623         Add extra dependencies to cover sourced emulparams files.
2624         * Makefile.in: Regenerate.
2626         * scripttempl/elf.sc: Order <section>, <section>.* and
2627         corresponding linkonce sections as seen in input files.
2628         Formatting fixes.  Zero vma of all sections if not relocating.
2629         (STACK): Define and insert if STACK_ADDR defined.
2630         (OTHER_RELOCATING_SECTIONS): Delete.
2631         (OTHER_END_SYMBOLS): Define.
2632         (OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
2633         (OTHER_READWRITE_SECTIONS): Likewise.
2634         (OTHER_GOT_SECTIONS): Likewise.
2635         (OTHER_SDATA_SECTIONS): Likewise.
2636         (OTHER_BSS_SECTIONS): Likewise.
2637         * scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
2638         (OTHER_READWRITE_SECTIONS): Likewise.
2639         * scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
2640         (OTHER_READWRITE_SECTIONS): Likewise
2642         * emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
2643         (STACK_ADDR): Define.
2644         * emulparams/armelf_oabi.sh: As for armelf.sh.
2645         * emulparams/elf32mcore.sh: As for armelf.sh.
2646         * emulparams/h8300elf.sh: As for armelf.sh.
2647         * emulparams/mn10200.sh: As for armelf.sh.
2648         * emulparams/shelf.sh: As for armelf.sh.
2650         * emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
2651         (OTHER_END_SYMBOLS): Define.
2652         * emulparams/m32relf.sh: As for elf32fr30.sh.
2653         * emulparams/h8300helf.sh: As for elf32fr30.sh.
2654         * emulparams/h8300self.sh: As for elf32fr30.sh.
2656         * emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
2657         defines with RELOCATING test.
2658         (OTHER_SDATA_SECTIONS): Likewise.
2659         (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
2660         (OTHER_END_SYMBOLS): ..this.
2661         * emulparams/crislinux.sh: As for criself.sh.
2663         * emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
2664         if not relocating.
2665         (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
2666         (OTHER_SECTIONS): ..this.  Zero vma if not relocating.  Order
2667         normal and linkonce sections as seen in input files.
2668         * emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
2669         (TEXT_DYNAMIC): Likewise.
2670         (INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
2671         (OTHER_SDATA_SECTIONS): Likewise.
2672         * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
2673         * emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
2674         * emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
2675         * emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
2676         * emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
2677         (OTHER_PLT_RELOC_SECTIONS): Likewise.
2678         (OTHER_READONLY_SECTIONS): Likewise.  Order normal and linkonce
2679         sections as seen in input files.
2680         * emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
2681         * emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
2682         if not relocating.
2683         (OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
2684         (OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
2685         * emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
2686         (OTHER_SECTIONS): Instead, use this..
2687         (OTHER_END_SYMBOLS): ..and this.
2689         * emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
2690         * emulparams/elf32bsmip.sh: Likewise.
2691         * emulparams/elf32btsmip.sh: Likewise.
2692         * emulparams/elf32ebmip.sh: Likewise.
2693         * emulparams/elf32lmip.sh: Likewise.
2694         * emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
2695         * emulparams/elf32lsmip.sh: Likewise.
2696         * emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
2697         * emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
2698         * emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
2699         * emulparams/elf64btsmip.sh: Likewise.
2700         * emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
2701         * emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
2702         * emulparams/elf32ppclinux.sh: Likewise.
2703         * emulparams/elf32ppcsim.sh: Likewise.
2704         * emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
2705         * emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
2706         * emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
2707         * emulparams/h8300self.sh: Likewise.
2708         * emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
2709         * emulparams/sh.sh: Comment.
2710         * emulparams/shl.sh: Source sh.sh, remove duplicates.
2711         * emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
2712         * emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2714 2001-11-21  David Heine <dlheine@tensilica.com>
2715             Alan Modra  <amodra@bigpond.net.au>
2717         * ldlang.c (map_input_to_output_sections): Replace "break"
2718         accidentally removed with 2001-08-03 change.
2719         (lang_gc_sections_1): Likewise.
2721 2001-11-21  Alan Modra  <amodra@bigpond.net.au>
2723         * ldlang.c (walk_wild_section): Move sec == NULL case out of loop.
2725 2001-11-20  Angela Marie Thomas <angela@redhat.com>
2727         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Use NULL instead
2728         of false when calling lang_size_sections.
2729         * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
2731 2001-11-15  Alan Modra  <amodra@bigpond.net.au>
2733         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Only emit this
2734         function when LDEMUL_FINISH isn't set to the same name.  Don't
2735         call ${LDEMUL_FINISH}.
2736         (ld_${EMULATION_NAME}_emulation): Call $LDEMUL_FINISH if defined.
2737         * emultempl/armelf.em (arm_elf_finish): Call
2738         gld${EMULATION_NAME}_finish.
2739         * emultempl/hppaelf.em (hppaelf_finish): Rename to
2740         gld${EMULATION_NAME}_finish.  Call bfd_elf32_discard_info and
2741         hppaelf_layout_sections_again if necessary.
2742         (need_laying_out): New var.
2743         (hppaelf_layaout_sections_again): Rename to
2744         hppaelf_layout_sections_again.  Clear need_laying_out.
2745         (PARSE_AND_LIST_OPTIONS): Format text.
2747 2001-11-14  H.J. Lu  <hjl@gnu.org>
2749         * emultempl/armelf.em (arm_elf_finish): Renamed from
2750         gld${EMULATION_NAME}_finish.
2751         (LDEMUL_FINISH): Set to arm_elf_finish.
2753 2001-11-14  Daniel Jacobowitz  <drow@mvista.com>
2755         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): New.
2756         (struct ld_emulation_xfer_struct): Use it.
2758 2001-11-13  Ross Alexander <ross.alexander@uk.neceur.com>
2760         * emulparams/elf64hppa.sh (OTHER_BSS_END_SYMBOLS): Add
2761         additional symbols referenced by newer crt0.o files from HP.
2763 2001-11-12  Anthony Green  <green@redhat.com>
2765         * emulparams/armelf.sh (DATA_START_SYMBOLS): New symbol.
2767 2001-11-12  Alfred M. Szmidt  <ams@kemisten.nu>
2769         * Makefile.am (GENSCRIPTS): Quote ${exec_prefix}.
2770         * Makefile.in: Regenerate.
2772 2001-11-02  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2774         * ld.texinfo: Use @command for commands, @option for options.
2775         * Makefile.am (POD2MAN): Use 'GNU Development Tools' for
2776         the page man title.
2777         * Makefile.in: Rebuild.
2779 2001-11-04  Chris Demetriou  <cgd@broadcom.com>
2781         * configure.tgt (mips*el-*-netbsd*, mips*-*-netbsd*):
2782         Add support for targets.
2784 2001-11-02  Nick Clifton  <nickc@cambridge.redhat.com>
2786         * configure.in (ALL_LINGUAS): Add "fr" and "sv"
2787         * configure: Regernate.
2788         * po/fr.po: New file.
2789         * po/sv.po: New file.
2791 2001-11-01  NIIBE Yutaka  <gniibe@m17n.org>
2793         * configure.tgt (sh-*-linux): Set targ_emul, targ_extra_emuls
2794         as little endian default and to support big endian.
2796 2001-11-01  Chris Demetriou  <cgd@broadcom.com>
2798         * ld.texinfo (Options): Document new option, -nostdlib.
2799         * lexsup.c (OPTION_NOSTDLIB): New definition.
2800         (ld_options): Add entry for "nostdlib".
2801         (parse_args): Handle OPTIONS_NOSTDLIB.
2802         * ldfile.c (ldfile_add_library_path): Don't add directories
2803         to the search path if they weren't specified on the command line
2804         and -nostdlib was specified.
2805         * ld.h (ld_config_type): New member only_cmd_line_lib_dirs.
2807 2001-10-31  Nick Clifton  <nickc@cambridge.redhat.com>
2809         * lexsup.c (parse_args): Prevent infinite parsing loop when
2810         "-rpath.a" is specified on the command line.
2811         Replace calls to fprintf with calls to einfo.
2813 2001-10-31  John Marshall  <jmarshall@acm.org>
2815         * ld.texinfo: A historical requirement that MEMORY and SECTIONS
2816         appear only once across all the linker scripts involved in a link
2817         invocation no longer applies.  Make the documentation reflect
2818         that.
2820 2001-10-31  NIIBE Yutaka  <gniibe@m17n.org>
2822         * configure.tgt: Supports sh3/sh4/sh3eb/sh4eb-unknown-linux-gnu
2823         targets.
2824         (sh-*-linux*): Added targ_extra_libpath.
2826 2001-10-31  David Heine  <dlheine@tensilica.com>
2828         * ldlang.c (lang_size_sections): Keep a valid output_offset field
2829         for padding statements.
2831 2001-10-30  Hans-Peter Nilsson  <hp@bitrange.com>
2833         * configure.tgt (mmix-*-*): New target.
2834         * Makefile.am (ALL_EMULATIONS): Add eelf64mmix.o and emmo.o.
2835         Add dependencies to match.
2836         * emulparams/mmo.sh, emulparams/elf64mmix.sh, emultempl/mmo.em,
2837         emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em,
2838         scripttempl/mmo.sc: New files.
2839         * gen-doc.texi: @set MMIX.
2840         * ld.texinfo: Ditto.
2841         [MMIX] Add MMIX node.
2842         * Makefile.in: Regenerate.
2844 2001-10-29  Kazu Hirata  <kazu@hxi.com>
2846         * ldlang.c: Fix a comment typo.
2848 2001-10-23  Alan Modra  <amodra@bigpond.net.au>
2850         * configure.host: Move alpha*-*-linux-gnu* entry to generic
2851         entries, and match *-*-linux*.
2853 2001-10-20  Alan Modra  <amodra@bigpond.net.au>
2855         * ldgram.y (mri_script_command): Surround processing of INCLUDE
2856         with ldlex_script, ldlex_popstate.
2857         (ifile_p1): Likewise.
2858         * ldlex.l (EOF): Don't BEGIN(SCRIPT).  Restore lineno from the
2859         correct slot.
2860         (lex_push_file): Save current lineno to lineno_stack.  Set lineno
2861         to 1.  Don't BEGIN(SCRIPT).
2862         (lex_redirect): Similarly.
2863         * ldmain.c (main): Set yydebug non-zero if YYDEBUG.
2865 2001-10-20  Nick Clifton  <nickc@cambridge.redhat.com>
2867         * scripttempl/armcoff.sc: Define __EH_FRAME_BEGIN__ and
2868         __EH_FRAME_END__ and accept eh frames into data section.
2869         Add ctor and dtor sections.
2871 2001-10-19  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
2873         * pe-dll.c (autofilter_objectlist): Add gcrt0.o.
2874         (auto-export): Fix indentation.
2876 2001-10-18  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
2878         * pe-dll.c (autofilter_objectlist):  Add startup objects
2879         for profiling.
2880         (auto-export): Constify char * p.
2881         Extract file basename and use strcmp rather than ststr
2882         for object lookup.
2884 2001-10-18  Chris Demetriou  <cgd@broadcom.com>
2886         * ldmain.c (get_emulation): Improve comment about the handling
2887         of -mipsN options.
2889 2001-10-17  Alan Modra  <amodra@bigpond.net.au>
2891         * po/POTFILES.in: Regenerate.
2893 2001-10-16  Vassili Karpov  <malc@pulsesoft.com>
2895         * emultempl/elf32.em (gld*_list_options): Remove extra '\t' from
2896         -z nocopyreloc and -z nocombreloc usage strings.
2898 2001-10-12  Vassili Karpov  <malc@pulsesoft.com>
2900         * emultempl/elf32.em (gld*_list_options): Include -z nocopyreloc
2901         in usage.
2903 2001-10-11  Aleksey Romanov <aromanov@ennovatenetworks.com>
2905         * scripttempl/armaout.sc: Place .bss section after end of aligned
2906         data section to match behaviour of aout code in constructrion of
2907         header.
2909 2001-10-11  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
2911         * pe-dll.c (autofilter_entry_type autofilter_liblist: Add
2912         startup files for mingw32 dlls to list.
2914 2001-10-10  Chris Demetriou  <cgd@broadcom.com>
2916         * emultempl/elf32.em: Fix shell 'if' usage for portability.
2918 2001-10-08  Aldy Hernandez  <aldyh@redhat.com>
2920         * configure.tgt (targ): Add arm9e-*-elf.
2922 2001-10-05  H.J. Lu  <hjl@gnu.org>
2924         * genscripts.sh: Fix a typo in the last change.
2926 2001-10-05  Jakub Jelinek  <jakub@redhat.com>
2928         * emultempl/elf32.em (gld_*_list_options): Include -z combreloc and
2929         -z nocombreloc in usage.
2931 2001-10-03  Jim Blandy  <jimb@redhat.com>
2933         * genscripts.sh: Include a comment at the top of each generated
2934         script, explaining its purpose.
2936 2001-10-03  Vassili Karpov  <malc@pulsesoft.com>
2938         * emultempl/elf32.em (parse_args): Handle -z nocopyreloc.
2939         * NEWS: Mention -z nocopyreloc.
2940         * ld.texinfo (Options): Describe nocopyreloc.
2942 2001-10-03  Alan Modra  <amodra@bigpond.net.au>
2944         * configure: Regenerate.
2946 2001-10-02  Alan Modra  <amodra@bigpond.net.au>
2948         * ldver.h (ld_program_version): Remove declaration.
2949         * lexsup.c (parse_args): Move printing of copyright message..
2950         * ldver.c (ldversion): .. to here.
2951         Use BFD_VERSION_STRING in place of BFD_VERSION.
2952         (ld_program_version): Remove.
2953         * Makefile.am (Makefile): Depend on bfd/configure.in.
2954         Run "make dep-am".
2955         * Makefile.in: Regenerate.
2957 2001-09-30  Hans-Peter Nilsson  <hp@bitrange.com>
2959         * Makefile.am: Update dependencies with "make dep-am".
2960         * Makefile.in: Regenerate.
2962 2001-09-29  John Reiser  <jreiser@BitWagon.com>
2964         * ldlang.c (lang_common): Conditionally inhibit Common allocation.
2965         * lexsup.c: Add --no-define-common commandline option.
2966         * ldgram.y: Add INHIBIT_COMMON_ALLOCATION script command.
2967         * ldlex.l: Likewise.
2968         * ld.h: Add command_line.inhibit_common_definition.
2969         * ldmain.c (main): Initialize.
2970         * ld.texinfo: Document.
2972 2001-09-29  Alan Modra  <amodra@bigpond.net.au>
2974         * ldlang.c (section_already_linked): Remove assignment to kept_section.
2976 2001-09-26  Alan Modra  <amodra@bigpond.net.au>
2978         * ldmisc.c (USE_STDARG): Remove.
2979         (info_msg): Define using VPARAMS, VA_OPEN, VA_FIXEDARG, VA_CLOSE.
2980         (einfo): Likewise.
2981         (minfo): Likewise.
2982         (lfinfo): Likewise.
2984         * ldmisc.h: Remove #ifdef ANSI_PROTOTYPES and non-ansi
2985         declarations.  Update copyright.
2987 2001-09-24  Charles Wilson  <cwilson@ece.gatech.edu>
2989         * pe-dll.c: Remove obsoleted declaration of
2990         pe_get_data_import_dll_name.
2991         (pe_create_import_fixup): Fix thinko.
2993         * ld.texinfo(enable-auto-import): Clarify the explanation.
2995 2001-09-24  Nick Clifton  <nickc@cambridge.redhat.com>
2997         * pe-dll.c (pe_create_import_fixup): Revert previous patch.
2998         * emultemp/pe.em (pe_data_import_dll): Move definition outside of
2999         DLL_SUPPORT controlled code.
3001 2001-09-24  Charles Wilson  <cwilson@ece.gatech.edu>
3003         * emultempl/pe.em(pe_data_import_dll): Make static.
3004         (pe_get_data_import_dll_name): New accessor function.
3005         * pe-dll.c(pe_create_import_fixup): call
3006         pe_get_data_import_dll_name() from pe.em, instead of
3007         directly accessing pe_data_import_dll variable from pe.em.
3009 2001-09-18  Bruno Haible  <haible@clisp.cons.org>
3011         * deffilep.y: Include "safe-ctype.h" instead of <ctype.h>.
3012         (def_file_add_directive): Use ISSPACE instead of isspace.
3013         (def_lex): Use ISDIGIT/ISXDIGIT/ISALPHA/ISALNUM instead of
3014         isdigit/isxdigit/isalpha/isalnum.
3015         * emultempl/aix.em: Include "safe-ctype.h" instead of <ctype.h>.
3016         (gld${EMULATION_NAME}_read_file): Use ISSPACE instead of isspace.
3017         * emultempl/elf32.em: Include "safe-ctype.h" instead of <ctype.h>.
3018         (gld${EMULATION_NAME}_place_orphan): Use ISALNUM instead of
3019         isalnum.
3020         * emultempl/gld960c.em: Include "safe-ctype.h" instead of <ctype.h>.
3021         (gld960_set_output_arch): Use ISUPPER/TOLOWER instead of
3022         isupper/tolower.
3023         * emultempl/sunos.em: Include "safe-ctype.h" instead of <ctype.h>.
3024         (gld${EMULATION_NAME}_search_dir): Use ISDIGIT instead of isdigit.
3025         * ldctor.c: Include "safe-ctype.h" instead of <ctype.h>.
3026         (ctor_prio): Use ISDIGIT instead of isdigit.
3027         * ldfile.c: Include "safe-ctype.h" instead of <ctype.h>.
3028         (ldfile_open_file_search): Use ISALPHA instead of isalpha.
3029         (ldfile_add_arch): Use ISUPPER/TOLOWER instead of
3030         isupper/tolower.
3031         * ldlang.c: Include "safe-ctype.h" instead of <ctype.h>.
3032         (stricpy): Use TOLOWER instead of isupper/tolower.
3033         (lang_leave_overlay_section): Use ISALNUM instead of isalnum.
3034         * ldlex.l: Include "safe-ctype.h" instead of <ctype.h>.
3035         (lex_warn_invalid): Use ISPRINT instead of isprint.
3036         * ldmain.c: Include "safe-ctype.h" instead of <ctype.h>.
3037         (main): For gettext, also set the LC_CTYPE locate facet.
3038         (add_keepsyms_file): Use ISSPACE instead of isspace.
3039         * lexsup.c: Include "safe-ctype.h" instead of <ctype.h>.
3040         (is_num, parse_args): Use ISDIGIT instead of isdigit.
3041         * mpw-elfmips.c: Include "safe-ctype.h" instead of <ctype.h>.
3042         (gldelf32ebmip_place_orphan): Use ISALNUM instead of isalnum.
3043         * mpw-eppcmac.c: Include "safe-ctype.h" instead of <ctype.h>.
3044         (gldppcmacos_read_file): Use ISSPACE instead of isspace.
3045         * pe-dll.c: Include "safe-ctype.h" instead of <ctype.h>.
3046         (quoteput): Use ISSPACE instead of isspace.
3047         (pe_dll_generate_implib, pe_process_import_defs): Use ISALNUM
3048         instead of isalnum.
3050 2001-09-18  Alan Modra  <amodra@bigpond.net.au>
3052         * deffilep.y (def_stash_module): Constify "name" param.
3054         * pe-dll.c: Replace CONST with const throughout.
3055         (quick_symbol): Constify "n1", "n2", "n3" params.
3056         (make_singleton_name_thunk): Constify "import" param.  Make
3057         "buffer_len" a size_t.
3058         (make_import_fixup_entry): Constify "name", "fixup_name",
3059         "dll_symname" params.
3060         (pe_get16): Cast args of bfd_seek.  Replace bfd_read with bfd_bread.
3061         (pe_get32): Likewise.
3062         (pe_implied_import_dll): Likewise.
3064         * emultempl/beos.em (sort_by_file_name): Constify "ra", "rb".
3065         (sort_by_section_name): Likewise.
3067         * emultempl/pe.em: Move defines for arm_epoc_pe before bfd.h included.
3068         (make_import_fixup): Cast printf arg, rel->address to long rather
3069         than int.
3070         (gld_${EMULATION_NAME}_after_open): Don't compare NULL against int.
3072 2001-09-15  Alan Modra  <amodra@bigpond.net.au>
3074         * ldmain.c (main): Rename BufferSize to ld_bufsz because HPUX
3075         defines BufferSize.  Increase buffer size by one.
3077 2001-09-14  Ralf Habacker <Ralf.Habacker@freenet.de>
3079         * pe-dll.c (pe_walk_relocs_of_symbol): Fix memory leak.
3081 2001-09-14  Kevin Lo <kevlo@openbsd.org>
3083         * configure.tgt: Add arm-openbsd target.
3085 2001-09-12  H.J. Lu  <hjl@gnu.org>
3087         * Makefile.am (ALL_EMULATIONS): Move eelf64ppc.o and
3088         eelf64lppc.o to ...
3089         (ALL_64_EMULATIONS): Here.
3090         * Makefile.in: Regenerated.
3092 2001-09-12  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
3094         * emultempl/pe.em(make_import_fixup): change signature to
3095         take asection as well as arelec; we need this for proper
3096         error reporting.  Only call pe_create_import_fixup() if
3097         there is no attempt to add a constant addend to the reloc;
3098         otherwise, report error condition.
3099         * pe-dll.c(pe_walk_relocs_of_symbol): change signature,
3100         since final argument is a pointer to make_import_fixup().
3101         Change call to cb() to match make_import_fixup() signature.
3102         (make_import_fixup_mark): make buffer_len unsigned.
3103         * pe-dll.h: change signature of pe_walk_relocs_of_symbol.
3105 2001-09-12  Charles Wilson  <cwilson@ece.gatech.edu>
3107         * ld.texinfo: add verbose documentation for auto-import
3108         direct-addressing workaround, to compliment the terse
3109         error message.
3111 2001-09-12  Andrew MacLeod  <amacleod@redhat.com>
3113         * scripttempl/v850.sc: Add gcc_except_table sections.
3115 2001-09-11  Jeffrey A Law  (law@cygnus.com)
3117         * emulparams/h8300helf.sh: Move stack to a much higher memory address.
3118         * emulparams/h8300self.sh: Similarly.
3120 2001-09-05 Danny Smith <dannysmith@users.souceforge.net>
3122         * ld.texinfo (Options, --stack): Correct default value for stack
3123         reserve.
3125 2001-09-05  Tom Rix <trix@redhat.com>
3127         * emultempl/aix.em : Handle import file XMC_XO and syscall symbols.
3129 2001-09-03  Andreas Jaeger  <aj@suse.de>
3131         * emultempl/beos.em: Declare prototypes for comparions functions,
3132         adjust definitions.
3134 2001-09-02  Andreas Jaeger  <aj@suse.de>
3136         * emultempl/aix.em: Add missing prototype.
3137         * emultempl/lnk960.em: Likewise.
3138         * emultempl/vanilla.em: Likewise.
3139         * emultempl/armcoff.em: Likewise.
3140         * emultempl/armelf_oabi.em: Likewise.
3141         * emultempl/beos.em: Likewise.
3142         * emultempl/gld960c.em: Likewise.
3143         * emultempl/gld960.em: Likewise.
3145         * emulparams/elf64alpha.sh (PARSE_AND_LIST_PROLOGUE): Add parameter
3146         for prototype declaration.
3148 2001-08-31  Eric Christopher  <echristo@redhat.com>
3149             Jason Eckhardt  <jle@redhat.com>
3151         * ldmain.c (get_emulation): Add support for -mips32 and -mips64.
3153 2001-08-31  Andreas Jaeger  <aj@suse.de>
3155         * emultempl/pe.em: Add missing prototypes.
3156         (gld_${EMULATION_NAME}_after_open): Remove extra args to
3157         pe_find_data_imports.
3158         (pr_sym): Add unused attribute.
3160 2001-08-29  Joel Sherrill <joel@OARcorp.com>
3162         * configure.tgt (i[3456]86-*-rtems*, m68*-*-rtems*): Change
3163         default from coff to elf.
3165 2001-08-29  Jeff Law <law@redhat.com>
3167         * emulparams/h8300helf.sh: Resync with h8300elf.sh.  Update
3168         ARCH specification.
3169         * emulparams/h8300self.sh: Similarly.
3171 2001-08-28  J"orn Rennecke <amylaar@redhat.com>
3173         * Makefile.am (ALL_EMULATIONS): Add eh8300elf.o, eh8300elf.o and
3174         eh8300self.o .
3175         (eh8300elf.c, eh8300helf.c, eh8300self.c): New targets.
3176         * configure.tgt (h8300-*-elf*): New case.
3177         * emulparams/h8300elf.sh, emulparams/h8300helf.sh: New files.
3178         * emulparams/h8300self.sh: New file.
3179         * Makefile.in: Regenerated.
3181 2001-08-28  Nick Clifton  <nickc@cambridge.redhat.com>
3183         * ldmain.c (main): Rename BSIZE to BufferSize to avoid collision
3184         with macro name.
3186 2001-08-27  Linus Nordberg  <linus@swox.com>
3187             Alan Modra  <amodra@bigpond.net.au>
3189         * Makefile.am (ALL_EMULATIONS): Add eelf64ppc.o and eelf64lppc.o.
3190         (eelf64ppc.c, eelf64lppc.c): Add make targets.
3191         Run "make dep-am"
3192         * Makefile.in: Regenerate.
3193         * configure.tgt: Add powerpc64 support.  Move pdp11, pjl, pj
3194         entries to correct alphabetical position.
3195         * emulparams/elf64ppc.sh: New.
3196         * emulparams/elf64lppc.sh: New.
3198 2001-08-27  Nick Clifton  <nickc@cambridge.redhat.com>
3200         * ldmain.c (main): Declare BSIZE as static.
3202 2001-08-23  Jakub Jelinek  <jakub@redhat.com>
3204         * emultempl/elf32.em (place_orphan): Place orphan .rel* sections
3205         into .rel.dyn resp. .rela.dyn if combreloc.
3206         (get_script): If .x linker script is equal to .xn, only put it
3207         once into the binary.
3208         Add .xc and .xsc scripts.
3209         (parse_args): Handle -z combreloc and -z nocombreloc.
3210         * scripttempl/elf.sc (.rela.sbss): Fix a typo.
3211         For .xc and .xsc scripts put all .rel* or .rela* input sections
3212         but .rel*.plt and PLT-like sections into .rel.dyn resp. .rela.dyn.
3213         * genscripts.sh (GENERATE_COMBRELOC_SCRIPT): Set if SCRIPT_NAME
3214         is elf.
3215         Strip trailing whitespace from script.
3216         Generate .xc and .xsc scripts if requested.
3217         * ldmain.c (main): Initialize link_info.combreloc and
3218         link_info.spare_dynamic_tags.
3219         * lexsup.c (OPTION_SPARE_DYNAMIC_TAGS): Define.
3220         (ld_options): Add --spare-dynamic-tags option.
3221         (parse_args): Likewise.
3222         * ld.texinfo: Document -z combreloc and -z nocombreloc.
3223         * ldint.texinfo: Document .xc and .xsc linker scripts.
3224         * NEWS: Add notes about -z combreloc and SHF_MERGE.
3226 2001-08-22  H.J. Lu  <hjl@gnu.org>
3228         * emulparams/elf32fr30.sh: Add a newline.
3230 2001-08-21  Andreas Jaeger  <aj@suse.de>
3232         * deffilep.y: Add missing prototypes.
3233         * pe-dll.c: Likewise.
3235 2001-08-20  Alan Modra  <amodra@bigpond.net.au>
3237         * ldlang.c (insert_pad): Fix typos in last patch.
3239         * ldlang.c: When traversing lang_statement_union_type lists,
3240         consistently use "header.next" rather than "next".
3241         * mpw-eppcmac.c: Likewise.
3242         * emultempl/beos.em: Likewise.
3243         * emultempl/hppaelf.em: Likewise.
3244         * emultempl/pe.em: Likewise.
3245         * ldlang.h (union lang_statement_union): Remove "next" field.
3247         * ldlang.c (insert_pad): Use offsetof macro.
3248         (lang_size_sections): Always neuter padding statements.
3249         * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete.
3251         * pe-dll.c (pe_dll_fill_sections): Correct type of "relax" param
3252         passed to lang_size_sections.
3253         (pe_exe_fill_sections): Likewise.
3254         * emultempl/pe.em (output_prev_sec_find): Copied from elf32.em.
3255         (gld_${EMULATION_NAME}_place_orphan): Merge from elf32.em.
3257 2001-08-18  Alan Modra  <amodra@bigpond.net.au>
3259         * emultempl/aix.em: Formatting fixes.
3261 2001-08-18  Alan Modra  <amodra@bigpond.net.au>
3263         * ldlang.c (insert_pad): Make use of an existing pad statement if
3264         available.  Move code calculating alignment, adjusting section
3265         alignment power, and adjusting dot to ..
3266         (size_input_section): .. here.  Remove unused relax param.
3267         (lang_size_sections): Change boolean `relax' param to boolean *.
3268         Adjust call to size_input_section.  Make use of insert_pad to
3269         place pad after the assignment statement.  If relaxing, zap
3270         padding statements.
3271         (reset_memory_regions): Reset output_bfd section sizes too.
3272         (relax_again): Move to..
3273         (lang_process): ..here.  Adjust call to lang_size_sections, and
3274         remove duplicated code.
3275         * ldlang.h (lang_size_sections): Change `relax' param to boolean *.
3277 2001-08-17  Alan Modra  <amodra@bigpond.net.au>
3279         * ld.texinfo: Document that fill values now use the four least
3280         significant bytes.
3281         * emulparams/elf32fr30.sh (NOP): Update.
3282         * emulparams/elf32mcore.sh: Likewise.
3283         * emulparams/elf64_s390.sh: Likewise.
3284         * emulparams/elf_i386.sh: Likewise.
3285         * emulparams/elf_i386_be.sh: Likewise.
3286         * emulparams/elf_i386_chaos.sh: Likewise.
3287         * emulparams/elf_i386_ldso.sh: Likewise.
3288         * emulparams/elf_s390.sh: Likewise.
3289         * emulparams/elf_x86_64.sh: Likewise.
3290         * emulparams/i386moss.sh: Likewise.
3291         * emulparams/i386nw.sh: Likewise.
3292         * emulparams/m68kelf.sh: Likewise.
3293         * scripttempl/elf.sc: Update NOP comment.
3294         * scripttempl/elfi370.sc: Likewise.
3295         * scripttempl/elfm68hc11.sc: Likewise.
3296         * scripttempl/elfm68hc12.sc: Likewise.
3297         * scripttempl/nw.sc: Likewise.
3299 2001-08-15  Tom Rix <trix@redhat.com>
3301         * ldgram.y (saved_script_handle): Initialize to NULL.
3302         * ldmain.c (main): Change check on saved_script_handle.
3304 2001-08-14  Alan Modra  <amodra@bigpond.net.au>
3306         * emultempl/elf32.em: Formatting fixes.
3307         (output_prev_sec_find): Test for bfd_ind_section too;  do so by
3308         looking at sec->owner.
3309         (output_rel_find): Move function inside LDEMUL_PLACE_ORPHAN test.
3310         (gld${EMULATION_NAME}_place_orphan): Add a few comments.  Remove
3311         unused code, and reorganize orphan section placement code.
3313         * ldlang.c (wild_doit): Rename to lang_add_section.
3314         * ldlang.h: Here too.
3315         * mpw-elfmips.c: And here.
3316         * emultempl/beos.em: And here.
3317         * emultempl/elf32.em: And here.
3318         * emultempl/hppaelf.em: And here.
3319         * emultempl/pe.em: And here.
3321 2001-08-13  Richard Henderson  <rth@redhat.com>
3323         * emultempl/needrelax.em: New file.
3324         * emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Reference it.
3325         * Makefile.am (eelf64_ia64.c): Depend on it.
3326         * Makefile.in: Rebuild.
3328 2001-08-13  Alan Modra  <amodra@bigpond.net.au>
3330         * emultempl/elf32.em: For SEC_EXCLUDE sections, ensure that
3331         output_section is set non-NULL.
3333         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Return
3334         `true' for SEC_EXCLUDE sections so that the generic code doesn't
3335         needlessly create an output_section_statement.  Treat a correctly
3336         named output_section_statement with NULL bfd_section as compatible.
3338 2001-08-13  Hans-Peter Nilsson  <hp@bitrange.com>
3340         * emultempl/generic.em: Support EXTRA_EM_FILE.
3341         (ld_${EMULATION_NAME}_emulation): Support emulation parameters
3342         LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
3343         LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
3344         LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
3345         LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
3346         LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
3347         LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
3348         LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
3349         LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
3350         LDEMUL_FIND_POTENTIAL_LIBRARIES.
3352 2001-08-12  Richard Henderson  <rth@redhat.com>
3354         * scripttempl/elf.sc, scripttempl/elfd30v.sc,
3355         scripttempl/elfm68hc11.sc, scripttempl/elfm68hc12.sc,
3356         scripttempl/v850.sc: Keep .jcr data.
3358 2001-08-12  H.J. Lu  <hjl@gnu.org>
3359             Andrew Haley  <aph@cambridge.redhat.com>
3360             Nick Clifton  <nickc@redhat.com>
3362         * ldgram.y (had_script): Change name to saved_script_handle.
3363         Change type to file handle.
3364         * ld.h (had_script): Rename and retype.
3365         * ldfile.c (ldfile_open_command_file): Save the file handle
3366         used in saved_script_handle.
3367         * lexsup.c (parse_args): Do not allow -c option to alter
3368         saved_script_handle.
3369         * ldmain.c (main): Print out the linker script used if
3370         --verbose is given.  Check saved_script_handle to obtain the
3371         external linker script used, or if NULL, dump the builtin
3372         script.
3373         * ld.texinfo: Document that --verbose now dumps the linker
3374         script used, regardless of whether it was an internal or an
3375         external script.
3377 2001-08-10  Andreas Jaeger  <aj@suse.de>
3379         * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
3380         to build warnings.
3381         * configure: Regenerate.
3383 2001-08-09  Alan Modra  <amodra@bigpond.net.au>
3385         * emultempl/elf32.em (output_prev_sec_find): Add missing prototype.
3387         * scripttempl/elf.sc: Move non-text .dynamic section before
3388         .plt/.got/.sdata* group.
3389         (OTHER_GOT_SECTIONS): Move to immediately after .got.
3390         (OTHER_SDATA_SECTIONS): Add.
3391         * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than
3392         OTHER_GOT_SECTIONS.
3393         * emulparams/crislinux.sh: Likewise.
3394         * emulparams/elf32b4300.sh: Likewise.
3395         * emulparams/elf32bmip.sh: Likewise.
3396         * emulparams/elf32bmipn32.sh: Likewise.
3397         * emulparams/elf32bsmip.sh: Likewise.
3398         * emulparams/elf32btsmip.sh: Likewise.
3399         * emulparams/elf32ebmip.sh: Likewise.
3400         * emulparams/elf32elmip.sh: Likewise.
3401         * emulparams/elf32l4300.sh: Likewise.
3402         * emulparams/elf32lmip.sh: Likewise.
3403         * emulparams/elf32lsmip.sh: Likewise.
3404         * emulparams/elf32ltsmip.sh: Likewise.
3405         * emulparams/elf64bmip.sh: Likewise.
3406         * emulparams/elf64btsmip.sh: Likewise.
3407         * emulparams/elf64ltsmip.sh: Likewise.
3409 2001-08-08  Alan Modra  <amodra@bigpond.net.au>
3411         * genscripts.sh: Source the emulparams script before each output
3412         script is generated so that variables like `RELOCATING' may affect
3413         variables defined in the emulparams script.
3415 2001-08-04  Alan Modra  <amodra@bigpond.net.au>
3417         * emultempl/aix.em: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this
3418         order.
3420         * emultempl/beos.em (sort_sections): Modify for 2001-08-03 change,
3421         ie. iterate over wild_statement.section_list.
3422         (gld${EMULATION_NAME}_place_orphan): Likewise.
3424 2001-08-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
3426         * scripttempl/elfm68hc12.sc (FINISH_CODE, FINISH_RELOC): New to handle
3427         .fini[0-4] sections used by _exit
3428         (CTOR, DTOR): Export ctor/dtor symbols; move them to ROM.
3429         (*.text,*.data,*.bss): Take into account .text.*, .data.*, .bss.*.
3430         * scripttempl/elfm68hc11.sc: Likewise.
3432 2001-08-03  H.J. Lu  <hjl@gnu.org>
3434         * emultempl/beos.em (init): Add the missing initialization.
3436 2001-08-03  Alan Modra  <amodra@bigpond.net.au>
3438         * ld.texinfo (Input Section Basics): Clarify ordering of output
3439         sections.
3440         * ldlang.c (callback_t): Add wildcard_list param.
3441         (walk_wild_section): Remove "section" param.  Rewrite for
3442         lang_wild_statement_type change.  Remove unique_section_p test.
3443         (walk_wild_file): Remove "section" param.
3444         (walk_wild): Remove "section" and "file" params.
3445         (lang_gc_wild): Likewise.
3446         (wild): Likewise.  Modify for lang_wild_statement_type change.
3447         (wild_sort): Likewise.  Add "sec" param.
3448         (gc_section_callback): Likewise.
3449         (output_section_callback): Likewise.  Do unique_section_p test.
3450         (map_input_to_output_sections): Modify call to wild.
3451         (lang_gc_sections_1): Likewise.
3452         (print_wild_statement): Modify for lang_wild_statement_type
3453         change.
3454         (lang_add_wild): Replace filename, filenames_sorted param with
3455         filespec.  Replace section_name, sections_sorted,
3456         exclude_filename_list with section_list.
3457         * ldlang.h (lang_add_wild): Here too.
3458         (lang_wild_statement_type): Replace section_name, sections_sorted,
3459         and exclude_filename_list with section_list.
3460         * ldgram.y (current_file): Delete.
3461         (%union): Add wildcard_list.
3462         (file_NAME_list): Set type to wildcard_list.  Build a linked list
3463         rather than calling lang_add_wild for each entry.
3464         (input_section_spec_no_keep): Call lang_add_wild here instead.
3465         * ld.h (struct wildcard_list): Declare.
3466         * mri.c (mri_draw_tree): Modify to suit new lang_add_wild.
3468 2001-08-02  Charles Wilson  <cwilson@ece.gatech.edu>
3470         * ldmain.c (main): initialize link_info.pei386_auto_import
3471         * pe-dll.c: new tables for auto-export filtering
3472         (auto_export): change API, pass abfd for contextual filtering.
3473         Loop thru tables of excluded symbols instead of comparing
3474         "by hand".
3476 2001-08-02  Paul Sokolovsky  <paul.sokolovsky@technologist.com>
3478         * pe-dll.c: new variable pe_dll_enable_extra_debug. New
3479         static variable current_sec (static struct sec *). Add
3480         forward declaration for add_bfd_to_link.
3481         (process_def_file): Don't export undefined symbols. Do not
3482         export symbols starting with  "_imp__".  Call auto_export()
3483         with new API.
3484         (pe_walk_relocs_of_symbol): New function.
3485         (generate_reloc): add optional extra debugging
3486         (pe_dll_generate_def_file): eliminate extraneous initial blank
3487         line in output
3488         (make_one): enlarge symtab to make room for __nm__ symbols
3489         (DATA auto-import support).
3490         (make_singleton_name_thunk): New function.
3491         (make_import_fixup_mark): New function.
3492         (make_import_fixup_entry): New function.
3493         (pe_create_import_fixup): New function.
3494         (add_bfd_to_link): Specify that 'name' argument is a CONST
3495         char *.
3496         * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
3497         declare new functions pe_walk_relocs_of_symbol and
3498         pe_create_import_fixup.
3499         * emultempl/pe.em: add new options --enable-auto-import,
3500         --disable-auto-import, and --enable-extra-pe-debug.
3501         (make_import_fixup): New function.
3502         (pe_find_data_imports): New function.
3503         (pr_sym): New function.
3504         (gld_${EMULATION_NAME}_after_open): Add optional extra pe
3505         debugging. Call pe_find_data_imports.  Mark .idata as DATA, not
3506         CODE.
3508 2001-08-02  Charles Wilson  <cwilson@ece.gatech.edu>
3510         * ld.texinfo: add additional documentation for
3511         --export-all-symbols.  Document --out-implib,
3512         --enable-auto-image-base, --disable-auto-image-base,
3513         --dll-search-prefix, --enable-auto-import, and
3514         --disable-auto-import.
3515         * ldint.texinfo: Add detailed documentation on auto-import
3516         implementation.
3518 2001-07-30  Nick Clifton  <nickc@cambridge.redhat.com>
3520         * ld.texinfo (Simple Assignments): Fix computation in SECTIONS
3521         example.
3523 2001-07-24  Alan Modra  <amodra@bigpond.net.au>
3525         * Makefile.am: Update dependencies with "make dep-am".
3526         * Makefile.in: Regenerate
3528 2001-07-23  Alan Modra  <amodra@bigpond.net.au>
3530         * ldcref.c (check_section_sym_xref): New function.
3531         (check_nocrossrefs): Call it.
3532         (check_nocrossref): Interate over h->refs here instead of..
3533         (check_refs): ..here.  Pass in the symbol name, section, and bfd
3534         rather than hash_entry pointers.
3535         (struct check_refs_info): Keep symbol name rather than hash entry.
3536         Remove "same".
3537         (check_reloc_refs): Tweak for above changes in check_refs_info.
3538         Only report references to section syms when symname is NULL to
3539         prevent duplicate messages for the same reloc.
3541 2001-07-19  Nick Clifton  <nickc@cambridge.redhat.com>
3543         * ldexp.c (exp_print_tree): Use stderr if config.map_file is not
3544         available.  Do not print NULL trees.
3545         (exp_print_token): Print unknown tokens with values > 126 as
3546         decimal values not ASCII characters.
3548         * ldlang.c (lang_leave_overlay): If a region is specified assign
3549         it to all sections inside the overlay unless they have been
3550         assigned to the own, non-default, memory region.
3552         * README: Add header for consistency with other README files.
3554 2001-07-14  H.J. Lu  <hjl@gnu.org>
3556         * emultempl/elf32.em (output_prev_sec_find): Never return
3557         bfd_abs_section_ptr, bfd_com_section_ptr nor
3558         bfd_und_section_ptr.
3560 2001-07-14  Nick Clifton  <nickc@cambridge.redhat.com>
3562         * Makefile.am (em32relf.c): Change dependency from generic.em to
3563         elf32.em.
3564         * Makefile.in: Regenerate.
3566 2001-07-14  matthew green  <mrg@eterna.com.au>
3568         * configure.tgt (i386-*-netbsdelf*): New target.
3569         (i386-*-netbsd*): Set targ_extra_emuls to `elf_i386'
3571 2001-07-13  Jakub Jelinek  <jakub@redhat.com>
3573         * emultempl/elf32.em (output_prev_sec_find): New.
3574         (place_orphan): Use it.
3576 2001-07-11  H.J. Lu  <hjl@gnu.org>
3578         * ldmain.c (main): Fix typos in the last change.
3580 2001-07-11  Jakub Jelinek  <jakub@redhat.com>
3582         * ldmain.c (main): Disallow -F and -f without -shared.
3584 2001-07-11  Nick Clifton  <nickc@cambridge.redhat.com>
3586         * emultempl/pe.em (after_open): Check for the output_bfd not
3587         having any coff_data structure allocated to it.
3589 2001-07-09  David O'Brien  <obrien@FreeBSD.org>
3591         * emultempl/elf32.em: Do not assuming that contents of the buffer
3592         returned from basename function will remain unchanged accross other
3593         function calls.
3595 2001-07-03  H.J. Lu  <hjl@gnu.org>
3597         * scripttempl/elf.sc (DYNAMIC_PAD): Revert the change made on
3598         2001-07-03. It creates dynamic entries even for static binaries.
3600 2001-07-03  Jakub Jelinek  <jakub@redhat.com>
3602         * scripttempl/elf.sc (DYNAMIC_PAD): New variable.
3603         (DYNAMIC): Use it to reserve few dynamic entries for
3604         post-linking tools.
3606 2001-06-27  Alan Modra  <amodra@bigpond.net.au>
3608         * emulparams/hppa64linux.sh: New file.
3609         * configure.tgt: hppa*64*-*-linux* uses hppa64linux.sh
3610         * Makefile.am (ALL_64_EMULATIONS): Add ehppa64linux.o
3611         (ehppa64linux.c): Add rule to make it.
3612         Run "make dep-am".
3613         * Makefile.in: Regenerate.
3615 2001-06-21  Hans-Peter Nilsson  <hp@axis.com>
3617         * ld.texinfo (Options, -r): Mention restrictions when using
3618         different object formats.
3620 2001-06-19  Hans-Peter Nilsson  <hp@axis.com>
3622         * ldlang.c (lang_check): Emit fatal error if relocatable link
3623         between different object flavours with relocations in input.
3625 2001-06-19  H.J. Lu  <hjl@gnu.org>
3627         * ld.texinfo (-E, --export-dynamic): Mention --version-script.
3628         (--version-script): Mention the language support.
3630 2001-06-19  H.J. Lu <hjl@gnu.org>
3632         * ldlang.c (lang_check): Revert the change mode on 2001-06-15.
3634 2001-06-18  H.J. Lu <hjl@gnu.org>
3636         * Makefile.am (ld.1): Remove the prefix `$(srcdir)/'.
3637         (diststuff): Add $(MANS).
3638         * Makefile.in: Regenerated.
3640         * ld.1: Removed.
3642 2001-06-18  Hans-Peter Nilsson  <hp@axis.com>
3644         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
3645         Update for API change in bfd_elf${ELFSIZE}_size_dynamic_sections.
3646         * mpw-elfmips.c (gldelf32ebmip_before_allocation): Ditto.
3647         * ld.h (args_type): Remove member export_dynamic.  All users
3648         changed to use struct bfd_link_info member.
3650         * Makefile.am (ecriself.c, ed10velf.c, ei386moss.c): Depend on
3651         $(srcdir)/emultempl/elf32.em, not $(srcdir)/emultempl/generic.em.
3652         * Makefile.in: Regenerate.
3654 2001-06-18  H.J. Lu  <hjl@gnu.org>
3656         * ldlang.c (init_os): Add the newline to the einfo call.
3657         (lang_check): Likewise.
3658         (lang_do_version_exports_section): Likewise.
3660 2001-06-15  H.J. Lu  <hjl@gnu.org>
3662         * lexsup.c (parse_args); Save optind to report unrecognized
3663         option.
3665 2001-06-15  Hans-Peter Nilsson  <hp@axis.com>
3667         * ldlang.c (lang_check): Emit fatal error if relocatable link
3668         between different object flavours.
3670         * lexsup.c (parse_args) <case OPTION_EXPORT_DYNAMIC, case 'E'>:
3671         Set new link_info member export_dynamic.
3672         * ldmain.c (main): Initialize new link_info member export_dynamic.
3674 2001-06-12  Nick Clifton  <nickc@cambridge.redhat.com>
3676         * ldlang.c (walk_wild): Only call walk_wild_file if
3677         lookup_name returns something.
3678         (lookup_name): If load_symbols fails, return NULL.
3679         (load_symbols): Change to a boolean function.
3680         (open_input_bfds): If load_symbols fails then do not make the
3681         executable.
3683 2001-06-08  Alan Modra  <amodra@bigpond.net.au>
3685         * ldlang.c (record_bfd_errors): Remove.
3687         * emultempl/aix.em: Fix copyright dates.
3689 2001-06-07  Andreas Jaeger  <aj@suse.de>
3691         * elf_x86_64.sh (NONPAGED_TEXT_START_ADDR): Increase.
3692         (TEXT_START_ADDR): Likewise.
3694 2001-06-06  Martin Schwidefsky <schwidefsky@de.ibm.com>
3696         * configure.host: Set HOSTING_CRT0/HOSTING_LIBS correctly for s/390.
3698 2001-06-05  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
3700         * emultempl/pe.em (init): Reduce default stack reserve to 0x200000.
3702 2001-05-31  H.J. Lu  <hjl@gnu.org>
3704         * ldlang.c (open_input_bfds): Don't change the bfd error
3705         handler whilst loading symbols.
3707 2001-05-28  Nick Clifton  <nickc@cambridge.redhat.com>
3709         * configure.tgt: Remove i370-mvs architecture, it is not currently
3710         supported.
3712 2001-05-25  H.J. Lu  <hjl@gnu.org>
3714         * emulparams/ppcmacos.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
3715         like emulparams/aixppc.sh.
3717 2001-05-25  H.J. Lu  <hjl@gnu.org>
3719         * emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Move
3720         setting of output_filename after bfd_scan_arch.
3721         * emultempl/pe.em: Likewise.
3723 2001-05-25  H.J. Lu  <hjl@gnu.org>
3725         * emulparams/aixrs6.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
3726         like emulparams/aixppc.sh.
3728         * emultempl/aix.em (sc): Use ${srcdir}/emultempl/ostring.sed
3729         instead of ${srcdir}/emultempl/stringify.sed.
3731 2001-05-25  Timothy Wall  <twall@oculustech.com>
3733         * emulparams/elf64_aix.sh: Change settings to match IBM linker
3734         output.
3736 2001-05-25  Alan Modra  <amodra@one.net.au>
3738         * configure.host: Replace linuxoldld with linux*oldld.
3739         * configure.tgt: Likewise.
3741 2001-05-24  H.J. Lu  <hjl@gnu.org>
3743         * emultempl/stringify.sed: Removed again.
3745 2001-05-24  H.J. Lu  <hjl@gnu.org>
3747         * emultempl/aix.em (OUTPUT_ARCH): Defined.
3748         (gld${EMULATION_NAME}_before_parse): Initialize
3749         ldfile_output_architecture, ldfile_output_machine and
3750         ldfile_output_machine_name from ${OUTPUT_ARCH} if possible.
3751         * emultempl/beos.em: Likewise.
3752         * emultempl/elf32.em: Likewise.
3753         * emultempl/linux.em: Likewise.
3754         * emultempl/mipsecoff.em: Likewise.
3755         * emultempl/pe.em: Likewise.
3756         * emultempl/sunos.em: Likewise.
3758 2001-05-24 Tom Rix <trix@redhat.com>
3760         * emultempl/aix.em : (gld${EMULATION_NAME}_read_file)
3761         udate import file format.
3762         (change_symbol_mode) New, same
3763         (is_syscall) New, same
3764         * emulparams/aixppc.sh : add SYSCALL_MASK and SYMBOL_MODE_MASK
3765         * emulparams/aixppc64.sh : same
3766         * emulparams/aixrs6.sh : same
3767         * emulparams/ppcmacos.sh : same
3768         * emultempl/aix.em : use strtoull to parse options
3769         * Makefile.am : add eaixppc64 emulation for xcoff64
3770         * Makefile.in : same
3771         * configure.tgt : same
3773         * scripttempl/aix.sc : default text section offset to 0x10000000
3774         default data section offset to 0x20000000
3775         add .sv3264 and .sv64 pseudo sections
3776         loader and debug sections use the currect section offset.
3778         * emultempl/aix.em : Add xcoff64 support
3779         Add -binitfini support
3780         (gld${EMULATION_NAME}_before_parse) -binitfini
3781         (gld${EMULATION_NAME}_parse_args) same
3782         (gld${EMULATION_NAME}_before_allocation) format change for special
3783         sections
3785         * emulparams/aixppc64.sh : New file for xcoff64 support
3787 2001-05-23  Alexandre Oliva  <aoliva@redhat.com>
3789         * emultempl/elf32.em (ELF_INTERPRETER_SET_DEFAULT): Use this new
3790         variable to avoid non-portable shell construct.
3792 2001-05-23  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3794         * ldmain.c (get_emulation): Add -mips5 command line argument.
3796 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
3798         * emulparams/elf_i386_ldso.sh: New, copied from elf_i386.sh.
3799         (ELF_INTERPRETER_NAME): Define it.
3800         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
3801         it.
3802         * configure.tgt (targ_emul, targ_extra_emuls)
3803         [i[3456]86-*-solaris2*, i[3456]86-*-solaris*]: Use elf_i386_ldso
3804         as primary, elf_i386 as extra.
3805         * Makefile.am (ALL_EMULATIONS): Added eelf_i386_ldso.o.
3806         (eelf_i386_ldso.c): New rule.
3807         * Makefile.in: Rebuilt.
3809 2001-05-22  Nick Clifton  <nickc@redhat.com>
3811         * lexsup.c (ld_options):  Allow -I to be an alias for
3812         --dynamic-linker.  This is for Solaris compatability.
3813         * ld.texinfo: Document that -I can be used.
3814         * ld.1: Regenerate.
3816 2001-05-16  Alan Modra  <amodra@one.net.au>
3818         * ldlang.c (wild_doit): Use linker_has_input to reliably determine
3819         whether an input section is the first one assigned to an output
3820         section.
3821         Assorted formatting fixes.
3823 2001-05-14  DJ Delorie  <dj@delorie.com>
3825         * Makefile.am (ld.dvi): Search bfd/doc for texinfo files.
3826         * Makefile.in: Ditto.
3828 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
3830         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
3831         .gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
3832         output sections.
3833         * emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
3835 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
3837         * ldlang.c (lang_process): Call bfd_merge_sections.
3839 2001-05-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3841         * ldgram.y: Fix typo.
3843 2001-05-03  H.J. Lu  <hjl@gnu.org>
3845         * emultempl/elf32.em: Include "libiberty.h".
3846         (gld${EMULATION_NAME}_vercheck): Call basename () to get the
3847         basename of the bfd filename.
3848         (gld${EMULATION_NAME}_stat_needed): Likewise.
3849         (gld${EMULATION_NAME}_try_needed): Likewise.
3850         (gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
3852 2001-05-02  H.J. Lu  <hjl@gnu.org>
3854         * emultempl/pe.em: Include <ctype.h>.
3856 2001-05-02  Johan Rydberg  <jrydberg@opencores.org>
3858         * emulparams/elf32openrisc.sh: New file.
3860         * Makefile.am: Add OpenRISC target.
3861         * Makefile.in: Regenerated.
3863         * configure.tgt: Add openrisc-*-* mapping.
3865 2001-05-02  Nick Clifton  <nickc@redhat.com>
3867         * emultempl/aix.em: Replace buystring with xstrdup.
3868         * emultempl/beos.em: Replace buystring with xstrdup.
3870 2001-05-02  H.J. Lu  <hjl@gnu.org>
3872         * ldfile.c: Include "libiberty.h".
3873         * ldlex.l: Likewise.
3875         * ldmisc.c (buystring): Removed.
3876         * ldmisc.h: Likewise.
3878         * ldfile.c: Replace buystring with xstrdup.
3879         * ldlang.c: Likewise.
3880         * ldlex.l: Likewise.
3881         * ldmain.c: Likewise.
3882         * ldmisc.c: Likewise.
3883         * lexsup.c: Likewise.
3884         * mpw-eppcmac.c: Likewise.
3886 2001-04-30  Andreas Jaeger  <aj@suse.de>
3888         * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value.
3890 2001-04-28  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
3892         * ldlang.c (load_symbols): Give emulation a chance
3893         to process unrecognized file before fatal error is
3894         reported, not after.
3896 2001-04-27  Sean McNeil <sean@mcneil.com>
3898         * configure.tgt: Add arm-vxworks target.
3899         * scripttempl/armcoff.sc: Support .text or .data as a section name
3900         prefix.
3901         Define _etext.
3903 2001-04-13  J.T. Conklin  <jtc@redback.com>
3905         * ld.texinfo: Document --fatal-warnings.
3906         * ld.1: Regenerate.
3908         * ldmisc.c (vfinfo): Set flag to inhibit making executable if
3909         warnings have been turned into errors.
3910         * lexsup.c (OPTION_WARN_FATAL): Define.
3911         (ld_options): Entry for --fatal-warnings.
3912         (parse_args): Handle OPTION_WARN_FATAL.
3913         * ld.h (ld_config_type): Add fatal_warnings field.
3915 2001-04-13  Jakub Jelinek  <jakub@redhat.com>
3917         * ldmain.c (main): Default to discard_sec_merge.
3918         * lexsup.c (OPTION_DISCARD_NONE): Define.
3919         (ld_options): Add --discard-none.
3920         (parse_args): Handle OPTION_DISCARD_NONE.
3921         * ldlang.c (wild_doit): SEC_MERGE should be set in the output
3922         section only if SEC_MERGE and SEC_STRINGS flags and entsize of
3923         all its input sections match.
3925 2001-04-05  Steven J. Hill  <sjhill@cotw.com>
3927         * Makefile.am (ALL_EMULATIONS): Add eelf32ltsmip.o.
3928         (ALL_64_EMULATIONS): Add eelf64btsmip.o and eelf64ltsmip.o.
3929         (eelf32ltsmip.c): New target.
3930         (eelf64btsmip.c): Likewise.
3931         (eelf64ltsmip.c): Likewise.
3932         * Makefile.in: Regenerated.
3934         * configure.tgt (mips*el-*-linux-gnu): Uses traditional MIPS
3935         target.
3936         (mips*-*-linux-gnu*): Likewise.
3938         * emulparams/elf32ltsmip.sh: New. Traditional little endian
3939         MIPS taget.
3940         * emulparams/elf64btsmip.sh: New. Traditional 64bit big endian
3941         target.
3942         * emulparams/elf64ltsmip.sh: New. Traditional 64bit little
3943         endian target.
3945 2001-04-05  Hans-Peter Nilsson  <hp@axis.com>
3947         * emulparams/criself.sh (EXECUTABLE_SYMBOLS): Cannot provide
3948         correct value of __Stext here.
3949         (TEXT_START_SYMBOLS): Define; always define __Stext, to start of
3950         .startup section.
3952         * emulparams/crislinux.sh: Remove FIXME.
3954 2001-04-02  Alan Modra  <alan@linuxcare.com.au>
3956         * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 64k.
3957         (TEXT_START_ADDR, TARGET_PAGE_SIZE): Likewise.
3959 2001-03-27  Hans-Peter Nilsson  <hp@axis.com>
3961         * configure.tgt (cris-*-*): Change default emulation to criself.
3962         (cris-*-*aout*): New rule.
3964 2001-03-27  Matthew Wilcox  <willy@ldl.fc.hp.com>
3966         * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 0x4000.
3967         (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
3969 2001-03-26  Andreas Jaeger  <aj@suse.de>
3971         * ld.texinfo (Overview): Fix syntax in texi code.
3973 2001-03-25  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
3975         * ld.texinfo: Put @c man indications to generate the ld man page.
3976         When generating man, define all the variables.  Define SEEALSO
3977         and SYNOPSIS.  Re-organize some lines to avoid the cross references.
3978         * Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variables.
3979         (ld.1): Generate from ld.texinfo.
3980         * Makefile.in: Regenerate.
3982 2001-03-23  Mark Elbrecht <snowball3@bigfoot.com>
3984         * scripttempl/i386go32.sc: Support the GCC flags '-ffunction-sections'
3985         and '-fdata-sections'. Set the VMA of STABS sections to zero.
3987 2001-03-17  Ulrich Drepper  <drepper@redhat.com>
3989         * emultmpl/elf32.em (gld${EMULATION_NAME}_search_needed): If NAME
3990         is an absolute path look only for this file and not along the path.
3992 2001-03-17  Ulrich Drepper  <drepper@redhat.com>
3994         * emultempl/elf32.em (OPTION_GROUP): New macro.
3995         Add new option Bgroup to longopts.
3996         (gld*_parse_args): Handle GROUP_OPTION and recognize -z defs.
3997         (gld*_list_options): Add -Bgroup and -z defs.
3998         * ld.1: Document -Bgroup and -z defs.
3999         * ld.texinfo: Likewise.
4001 2001-03-07  Michael Meissner  <meissner@redhat.com>
4003         * scripttempl/elfd10v.sc (.rodata,.rodata1,.data1,.sdata): Deal
4004         with sections created by -fdata-sections.
4005         (.dynbss,.bss): Ditto.
4007 2001-03-05  Alan Modra  <alan@linuxcare.com.au>
4009         * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
4010         after_allocation_default, not gld..._before_allocation.
4012 2001-02-27  Alan Modra  <alan@linuxcare.com.au>
4014         * configure.in (BFD_VERSION): New.
4015         (AM_INIT_AUTOMAKE): Use $BFD_VERSION.
4016         * configure: Regenerate.
4017         * Makefile.am: Run "make dep-am"
4018         * Makefile.in: Regenerate.
4020 2001-02-26  Timothy Wall  <twall@cygnus.com>
4022         * emulparams/elf64_aix.sh: Add additional read-only sections;
4023         uncomment lines which are now required.
4025 2001-02-26  H.J. Lu  <hjl@gnu.org>
4027         * ldlang.c (open_input_bfds): Set the bfd error handler so
4028         that problems can be caught whilst loading symbols.
4029         (record_bfd_errors): New function: Report BFD errors and mark
4030         the executable output as being invalid.
4032 2001-02-22  Timothy Wall  <twall@cygnus.com>
4034         * configure.host: Add configuration for ia64-*-aix*.
4035         * Makefile.am (ALL_64_EMULATIONS): Add emulation for ia64-*-aix*.
4036         Add dependencies for eelf64_aix.c.
4037         * Makefile.in: Regenerate.
4038         * configure.tgt: Add ia64-*-aix* mapping.
4039         * emulparams/elf64_aix.sh: Add settings for elf64 on aix5.
4041 2001-02-20  H.J. Lu  <hjl@gnu.org>
4043         * ldfile.c (ldfile_open_file): Set entry->search_dirs_flag to
4044         false if we found the file.
4046 2001-02-18  David O'Brien  <obrien@FreeBSD.org>
4048         * configure.tgt: Add FreeBSD/Alpha, FreeBSD/x86-64, FreeBSD/ia64,
4049         FreeBSD/PowerPC, FreeBSD/arm, and FreeBSD/sparc64 entries.
4051 2001-02-18  lars brinkhoff  <lars@nocrew.org>
4053         * Makefile.am: Add PDP-11 target.
4054         * configure.tgt: Likewise.
4055         * emulparams/pdp11.sh: New file.
4057 2001-02-17  David O'Brien  <obrien@FreeBSD.org>
4059         * configure.host: Add a generic FreeBSD configuration entry such that
4060         all [modern] FreeBSD systems on all platforms will look the same.
4062 2001-02-14  H.J. Lu  <hjl@gnu.org>
4064         * configure.tgt: Remove mention of earmelf_linux26.
4066 2001-02-13  Richard Henderson  <rth@redhat.com>
4068         * emulparams/elf64_ia64.sh (OTHER_GOT_SYMBOLS): Remove.
4070 2001-02-13  H.J. Lu  <hjl@gnu.org>
4072         * ldexp.h (node_type): Add etree_provided.
4073         * ldexp.c (exp_fold_tree): Handle etree_provided. Set the node
4074         type to etree_provided if defined by PROVIDE. Allow updating
4075         for etree_provided.
4076         (exp_print_tree): Handle etree_provided.
4077         * mpw-elfmips.c (gldelf32ebmip_find_exp_assignment): Handle
4078         etree_provided.
4080 2001-02-09  David Mosberger  <davidm@hpl.hp.com>
4082         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add
4083         .IA_64.unwind.* pattern to unwind table section and
4084         .IA_64.unwind_info* pattern to unwind info section.
4086 2001-02-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4088         * Makefile.am: Add linux target for S/390.
4089         * Makefile.in: Likewise.
4090         * configure.host: Likewise.
4091         * configure.tgt: Likewise.
4092         * emulparams/elf64_s390.sh: New file.
4093         * emulparams/elf_s390.sh: New file.
4095 2001-02-09  Jakub Jelinek  <jakub@redhat.com>
4097         * configure.tgt (sparc64-*-linux-gnu*): Add elf32_sparc into
4098         targ_extra_libpath.
4099         (sparc-*-linux-gnu*): Add elf64_sparc into targ_extra_libpath.
4101 2001-02-06  Philip Blundell  <philb@gnu.org>
4103         * Makefile.am: Remove mention of earmelf_linux26.
4104         * Makefile.in: Regenerate.
4106 2001-02-04  Philip Blundell  <philb@gnu.org>
4108         * emulparams/armelf_linux.sh (TEXT_START_ADDR): Set to 0x8000.
4109         * emulparams/armelf_linux26.sh: Delete.
4110         * configure.tgt: Remove mention of armelf_linux26 emulation.
4112 2001-02-01  Nick Clifton  <nickc@redhat.com>
4114         * ld.1: Replace occurances of -oformat with --oformat.
4116 2001-01-25  Jim Driftmyer <jdrift@stny.rr.com>
4118         * ldlang.c (lang_leave_overlay): Don't set lma_region when
4119         load_base is specified.
4121 2001-01-24  Hans-Peter Nilsson  <hp@axis.com>
4123         * emultempl/elf32.em: Correct spelling in comments and listed
4124         options.
4126 2001-01-23  Alan Modra  <alan@linuxcare.com.au>
4128         * ldlang.c (lang_leave_overlay): Only set lma_region from the
4129         default for the first section of a group of overlay sections.
4131 2001-01-22  Alan Modra  <alan@linuxcare.com.au>
4133         * Makefile.am (GENSCRIPTS): Pass exec_prefix.
4134         * Makefile.in: Regenerate.
4135         * genscripts.sh: Use exec_prefix parameter to specify tool lib.
4136         Check for null tool_dir.
4138 2001-01-16  Jim Wilson  <wilson@redhat.com>
4140         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add IA_64.unwind
4141         and IA_64.unwind.info.
4143 2001-01-16  H.J. Lu  <hjl@gnu.org>
4145         * ldlang.c (lang_check): Merge the private data only if the
4146         input file has contents.
4148 2001-01-14  Alan Modra  <alan@linuxcare.com.au>
4150         * emulparams/hppalinux.sh (OUTPUT_FORMAT): Set to elf32-hppa-linux.
4152         * emultempl/hppaelf.em (hppaelf_after_parse): New function,
4153         enabling search for libmilli.  On a relocatable link, make .text
4154         sections unique.
4155         (LDEMUL_AFTER_PARSE): Define.
4156         (hppaelf_finish): Correct spelling of relocatable in comments.
4158         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
4159         rummage through the script for sections on the unique list.
4160         Correct length of strncmp for ".note".
4161         (gld${EMULATION_NAME}_check_needed): Rearrange function.
4163         * ldlang.c (unique_section_list): New var.
4164         (unique_section_p): New function.
4165         (walk_wild_section): Don't match sections on unique_section_list.
4166         (lang_add_unique): New function.
4167         Correct spelling of relocatable in comments.
4169         * ldlang.h (struct unique_sections): Declare.
4170         (unique_section_list): Declare.
4171         (unique_section_p): Declare.
4172         (lang_add_unique): Declare.
4174         * lexsup.c (ld_options): Allow --unique to take an optional arg.
4175         (parse_args [OPTION_UNIQUE]): Call lang_add_unique.
4177         * ld.texinfo (--unique): Update.
4179 2001-01-13  Nick Clifton  <nickc@redhat.com>
4181         * lexsup.c (parse_args): Remove spurious white space.
4183 2001-01-12  Nick Clifton  <nickc@redhat.com>
4185         * lexsup.c (parse_args): Update copyright date.
4187 2001-01-12  Philip Blundell  <pb@futuretv.com>
4189         * configure.host: Set HOSTING_LIBS appropriately for ix86-cygwin.
4191 2001-01-10  Kazu Hirata  <kazu@hxi.com>
4193         * scripttempl/h8300.sc: Fix formatting.  Fix a comment typo.
4194         * scripttempl/h8300h.sc: Fix formatting.
4195         * scripttempl/h8300s.sc: Likewise.
4196         * scripttempl/h8500.sc: Likewise.
4197         * scripttempl/h8500b.sc: Likewise.
4198         * scripttempl/h8500c.sc: Likewise.
4199         * scripttempl/h8500m.sc: Likewise.
4200         * scripttempl/h8500s.sc: Likewise.
4202 2000-01-07  David O'Brien  <obrien@BSDi.com>
4204         * emultempl/elf32.em: Only perform Linux ld hints processing when
4205         targeting Linux.
4207 2001-01-07  Philip Blundell  <philb@gnu.org>
4209         * ld.texinfo (Bug Reporting): Update email address for reports.
4211 2000-12-31  Nick Clifton  <nickc@redhat.com>
4213         * lexsup.c (parse_args): Set opterr to 0 and detect unparsed long
4214         options by checking for a return value of '?' not -1.
4216 2000-12-28  Nick Clifton  <nickc@redhat.com>
4218         * lexsup.c (struct ld_option): Add new enum value:
4219         EXACTLY_TWO_DASHES.
4220         (ld_options[]): Change -omagic, -output and -oformat options
4221         to be EXACTLY_TWO_DASHES.
4222         (OUTPUT_COUNT): Use ARRAY_SIZE.
4223         (parse_args): Change parameter 'argc' to unsigned.
4224         Place EXACTLY_TWO_DASHES options into new really_longopts
4225         array.
4226         If getopt_long_only fails, try calling getopt_long using the
4227         really_longopts array.
4228         (help): Print a double dash for both EXACTLY_TWO_DASHES and
4229         TWO_DASHES options.
4231         * ldlex.h: Fix prototype of parse_args.
4233         * ld.texinfo: Document that long options starting with 'o'
4234         must be preceeded by two dashes.  Change example of a single
4235         dashed long option from -oformat to -trace-symbol.
4237 2000-12-26  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
4239         * emultempl/pe.em (OPTION_NO_DEFAULT_EXCLUDES): Define.
4240         (longopts[]): New --no-default-excludes option.
4241         (gld_${EMULATION_NAME}_list_options): Document.
4242         (gld_${EMULATION_NAME}_parse_args): Handle.
4244 2000-12-13  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4246         * ldlang.c (new_stat): Revert the last beautification with "innocent"
4247         whitespace, it breaks the K&R C preprocessor.
4249 2000-12-11  DJ Delorie  <dj@redhat.com>
4251         * ld.texinfo: Add notes about --whole-archive and gcc.
4253 2000-11-18  Fred Fish  <fnf@be.com>
4255         * lexsup.c (OPTION_ALLOW_SHLIB_UNDEFINED): Define.
4256         (ld_options): Entry for --allow-shlib-undefined.
4257         (parse_args): Handle OPTION_ALLOW_SHLIB_UNDEFINED.
4258         * ldmain.c (main): Initialize link_info.allow_shlib_undefined
4259         to false.
4260         * ld.texinfo: Document new command line switch.
4262 2000-12-12  Geoffrey Keating  <geoffk@redhat.com>
4264         * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS):
4265         .fixup is actually read/write.
4266         * emulparams/elf32lppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
4267         * emulparams/elf32ppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
4268         * emulparams/elf32lppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
4270 2000-12-11  Jan Hubicka  <jh@suse.cz>
4272         * NEWS: Add note about x86_64 architecture.
4274 2000-12-06  Mark Elbrecht  <snowball3@bigfoot.com>
4276         * scripttempl/i386go32.sc: Use PROVIDE with _etext, _edata, _end.
4277         Set DWARF2 sections to a VMA of zero.
4279 2000-12-01  Joel Sherrill  <joel@OARcorp.com>
4281         * configure.tgt (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
4282         New targets.
4283         (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
4284         (sparc*-*-rtems*): Switched from a.out to ELF.
4286 2000-11-30  Jan Hubicka  <jh@suse.cz>
4288         * Makefile.am (ALL_EMULATIONS): Add eelf_x86_64.o
4289         (eelf_x86_64.c): New.
4290         * Makefile.in: Regenerate.
4291         * configure.tgt: Add support for x86_64-*-linux-gnu*.
4292         * emulparams/elf_x86_64.sh: New.
4294 2000-11-30  Hans-Peter Nilsson  <hp@axis.com>
4296         * emulparams/crislinux.sh (ENTRY): Change back to _start.
4297         (TEXT_START_SYMBOLS): Remove conditional setting of __start.
4299         * scripttempl/crisaout.sc: Change all RELOCATING not related to
4300         merging non-a.out sections into CONSTRUCTING.
4302 2000-11-28  Nick Clifton  <nickc@redhat.com>
4304         * ld.1 (COPYING): Mention that the GNU Free Documentation
4305         License is present in the sources, but not the output, and
4306         also available from the GNU website.
4307         (GNU Free Documentation License): Comment out this section.
4309 2000-11-28  David O'Brien  <obrien@dragon.nuxi.com>
4311         * emulparams/elf64alpha.sh (ENTRY): Remove leading underscore as ELF
4312         does not use them.
4314 2000-11-25  David O'Brien  <obrien@FreeBSD.org>
4316         * ld.1: Remove old date so it does not give the impression the manpage
4317         is way out of date.
4319 2000-11-24  Nick Clifton  <nickc@redhat.com>
4321         * configure.tgt (xscale-coff): Add target.
4322         (xscale-elf): Add target.
4324 2000-11-24  Fred Fish  <fnf@be.com>
4326         * ldmain.c (main): Remove redundant init of config.make_executable
4327         to true.
4329 2000-11-15  Richard Henderson  <rth@redhat.com>
4331         * emulparams/elf64alpha.sh (MAXPAGESIZE): Typo -- 64k, not 1M.
4333 2000-11-14  Kazu Hirata  <kazu@hxi.com>
4335         * scripttempl/h8300.sc: Fix formatting.
4336         * scripttempl/h8300h.sc: Likewise.
4337         * scripttempl/h8300s.sc: Likewise.
4339 2000-11-14  Denis Chertykov  <denisc@overta.ru>
4341         * scripttempl/elf32avr.sc: Fix bug in .eeprom segment.
4343 2000-11-09  Philip Blundell  <pb@futuretv.com>
4345         * emultempl/pe.em: Define ___start_SECNAME and ___stop_SECNAME
4346         around orphan sections whose names can be represented in C.
4348 2000-11-07  Jim Wilson  <wilson@redhat.com>
4350         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): New local
4351         hold_sdata.  If SEC_SMALL_DATA set, set place to hold_sdata.
4353 2000-11-06  Nick Clifton  <nickc@redhat.com>
4355         * ld.texinfo: Add GNU Free Documentation License.
4356         * ldint.texinfo: Add GNU Free Documentation License.
4357         * ld.1: Add GNU Free Documentation License.
4359 2000-11-05  Alan Modra  <alan@linuxcare.com.au>
4361         * ldlex.l (yy_create_string_buffer): Init yy_is_our_buffer,
4362         yy_is_interactive, yy_at_bol, and yy_fill_buffer.
4364         * Makefile.am (DISTCLEANFILES): Add stringify.sed.
4365         Move 2000-11-02 Makefile.in changes to this file.
4366         * Makefile.in: Regenerate.
4368 2000-11-03  Nick Clifton  <nickc@redhat.com>
4370         * scripttempl/h8300.sc: Use ${CONSTRUCTING...} to enclose
4371         constructors and destructors.
4372         * scripttempl/h8300h.sc: Ditto.
4373         * scripttempl/h8300s.sc: Ditto.
4374         * scripttempl/h8500.sc: Ditto.
4375         * scripttempl/h8500b.sc: Ditto.
4376         * scripttempl/h8500c.sc: Ditto.
4377         * scripttempl/h8500m.sc: Ditto.
4378         * scripttempl/h8500s.sc: Ditto.
4379         * scripttempl/v850.sc: Ditto.
4380         * scripttempl/w65.sc: Ditto.
4381         * scripttempl/z8000.sc: Ditto.
4383 2000-11-02  Per Lundberg  <plundis@chaosdev.org>
4385         * Makefile.in (e_i386_chaos.c): New rule.
4386         (ALL_EMULATIONS): Added e_i386_chaos.o.
4387         * emulparams/elf_i386_chaos.sh: New file.
4388         * configure.tgt: Recognise i[3456]86-chaosdev-storm-chaos.
4390 2000-10-20  Jakub Jelinek  <jakub@redhat.com>
4392         * emulparams/elf64_sparc.sh (TEXT_START_ADDR,
4393         NONPAGED_TEXT_START_ADDR): Set to 4GB for Solaris targets.
4394         Fix sed invocation, so that it coped with '/' in Solaris 64bit
4395         library path suffix.
4396         Based on patch by Andrew Macleod <amacleod@cygnus.com>.
4398 2000-10-18  Hans-Peter Nilsson  <hp@axis.com>
4400         * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32),
4401         for consecutive sections.
4403 2000-10-17  Chandrakala Chavva  <cchavva@redhat.com>
4405         * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific
4406         options.
4407         * ld.texinfo: Added notes about this new option.
4409 2000-10-16  Nick Clifton  <nickc@redhat.com>
4411         * emultempl/pe.em (_after_open): Add tests of return values from
4412         bfd functions.  Emit appropriate error messages if necessary.
4414 2000-10-13  Nick Clifton  <nickc@redhat.com>
4416         * emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
4417         local variables - they are not used, but leave in the call to
4418         bfd_canonicalize_symtab.
4419         (_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
4420         pe_dll_search_prefix.
4422 2000-10-12  Charles Wilson  <cwilson@ece.gatech.edu>
4424         * emultempl/pe.em (pe_dll_search_prefix): New variable,
4425         (longopts): New --dll-search-prefix option.
4426         (gld_${EMULATION_NAME}_list_options): Document.
4427         (gld_${EMULATION_NAME}_parse_args): Handle.
4428         (gld_${EMULATION_NAME}_open_dynamic_archive): When linking
4429         dynamically, search for a dll named '<prefix><basename>.dll'
4430         in preference to 'lib<basename>.dll' if --dll-search-prefix
4431         is specified.
4433 2000-10-12  Alan Modra  <alan@linuxcare.com.au>
4435         * ldlang.c (section_already_linked): Set kept_section instead of
4436         sec->comdat->sec.
4438 2000-10-10  Kazu Hirata  <kazu@hxi.com>
4440         * deffile.h: Fix formatting.
4441         * lexsup.c: Likewise.
4442         * mri.c: Likewise.
4444 2000-10-09  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
4446         * pe-dll.c (make_one): Do not generate code thunk for DATA
4447         exports.
4448         (process_def_file): deduce DATA flag for auto-export sumbols.
4450 2000-10-09  Kazu Hirata  <kazu@hxi.com>
4452         * ld.h: Fix formatting.
4453         * ldcref.c: Likewise.
4454         * ldctor.h: Likewise.
4455         * ldemul.c: Likewise.
4456         * ldemul.h: Likewise.
4457         * ldexp.c: Likewise.
4458         * ldexp.h: Likewise.
4459         * ldfile.c: Likewise.
4460         * ldfile.h: Likewise.
4461         * ldlang.c: Likewise.
4462         * ldlang.h: Likewise.
4463         * ldmain.c: Likewise.
4464         * pe-dll.c: Likewise.
4466         * pe-dll.c: Revert some formatting fixes.
4468 2000-10-08  Kazu Hirata  <kazu@hxi.com>
4470         * pe-dll.c: Fix formatting.
4472 2000-10-05  Kazu Hirata  <kazu@hxi.com>
4474         * ldlang.c: Fix formatting.
4476 2000-10-03  DJ Delorie  <dj@redhat.com>
4478         * pe-dll.c (fill_edata): initialize entire block
4479         (make_one): fill in correct section.
4481 2000-10-03  Kazu Hirata  <kazu@hxi.com>
4483         * ldexp.c: Fix formatting.
4485 2000-10-02  DJ Delorie  <dj@redhat.com>
4487         * emultempl/pe.em (gld_*_after_open): detect case where there two
4488         import libraries for same dll; rename one to ensure proper link
4489         order.
4491         * pe-dll.c (process_def_file): compare ordinals to -1, not 0; fix
4492         typo
4493         (generate_edata): fix typo
4495 2000-09-29  Hans-Peter Nilsson  <hp@axis.com>
4497         * scripttempl/crisaout.sc (ENTRY): Now __start.
4498         (.text): Add default setting for __start.
4499         Remove CONSTRUCTORS handling.
4500         (/DISCARD/): Add .gnu.warning.*.
4501         * emulparams/crislinux.sh (ENTRY): Now __start.
4502         (TEXT_START_SYMBOLS): New; provide __Stext and __start default.
4503         * emulparams/criself.sh (OUTPUT_FORMAT): Now elf32-us-cris.
4504         (ENTRY): Now __start.
4505         (INITIAL_READONLY_SECTIONS): Add KEEP for .startup.
4506         (EXECUTABLE_SYMBOLS): Add default setting for __start.
4508 2000-09-29  Kazu Hirata  <kazu@hxi.com>
4510         * deffile.h: Fix formatting.
4511         * ld.h: Likewise.
4512         * ldcref.c: Likewise.
4513         * ldctor.c: Likewise.
4514         * ldctor.h: Likewise.
4515         * ldemul.c: Likewise.
4516         * ldemul.h: Likewise.
4517         * ldexp.c: Likewise.
4518         * ldexp.h: Likewise.
4519         * ldfile.c: Likewise.
4520         * ldfile.h: Likewise.
4521         * ldlang.c: Likewise.
4522         * ldlang.h: Likewise.
4523         * lexsup.c: Likewise.
4524         * mri.c: Likewise.
4525         * pe-dll.c: Likewise.
4527 2000-09-28  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
4529         * pe-dll.c (process_def_file): Uninitialized data wasn't
4530         exported with --export-all-symbols switch.
4532 2000-09-28  DJ Delorie  <dj@redhat.com>
4534         * pe-dll.c (fill_edata): rearrange the data so that ordinals and
4535         noname work properly.
4537 2000-09-28  Alan Modra  <alan@linuxcare.com.au>
4539         * ld.texinfo (HPPA ELF32): New section.
4541         * emultempl/hppaelf.em (group_size): New.
4542         (hppaelf_finish): Pass group_size to elf32_hppa_size_stubs.
4543         (PARSE_AND_LIST_PROLOGUE): Add OPTION_STUBGROUP_SIZE.
4544         (PARSE_AND_LIST_LONGOPTS): Add --stub-group-size.  Duplicate
4545         options to prevent abbreviations matching.
4546         (PARSE_AND_LIST_OPTIONS): Describe the above.  Reformat.
4547         (PARSE_AND_LIST_ARGS_CASES): Handle it.
4549 2000-09-21  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4551         * emultempl/m68kelf.em: Conditionalise the embedded relocs feature
4552         on the m68*-*-elf target.  Make it support COFF input objects.
4554 2000-09-21  Kazu Hirata  <kazu@hxi.com>
4556         * ldmain.c: Fix formatting.
4557         * ldmisc.c: Likewise.
4558         * ldver.c: Likewise.
4559         * ldwrite.c: Likewise.
4561 2000-09-21  Alan Modra  <alan@linuxcare.com.au>
4563         * ldwrite.c (clone_section): Silence gcc warnings.
4565 2000-09-20  Alan Modra  <alan@linuxcare.com.au>
4567         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Handle
4568         out of memory failure.
4570         * ldwrite.c (ldwrite): Remove unnecessary einfo arg.
4571         (clone_section): Handle out of memory failures.  Rename var to
4572         avoid c++ reserved word.
4574 2000-09-18  Alan Modra  <alan@linuxcare.com.au>
4576         * emultempl/hppaelf.em (hppaelf_add_stub_section): Rename
4577         stub_name param to stub_sec_name.
4578         (hppaelf_finish): Modify call to elf32_hppa_size_stubs.
4580 2000-09-10  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4582         * emultempl/m68kelf.em: New file.
4583         * emulparams/m68kelf.sh (EXTRA_EM_FILE): Use it.
4584         * Makefile.am (em68kelf.c): Add dependency on m68kelf.em.
4585         * Makefile.in: Regenerate.
4587 2000-09-15  Alan Modra  <alan@linuxcare.com.au>
4589         * emulparams/hppalinux.sh (DATA_START_SYMBOLS): Provide $global$
4590         only as needed.
4592 2000-09-13  Nick Clifton  <nickc@redhat.com>
4594         * ldmain.c (multiple_definition): Disable relaxation if
4595         multiple symbol definitions are encountered - otherwise the
4596         linker could abort with an assertion failure.
4598 2000-09-10  Nick Clifton  <nickc@redhat.com>
4600         * mri.c: Fix formatting.
4602 2000-09-07  H.J. Lu  <hjl@gnu.org>
4604         * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
4605         * configure: Rebuild.
4607 2000-09-07  H.J. Lu  <hjl@gnu.org>
4609         * Makefile.am (lexsup.o): Also depend on $(INCDIR)/demangle.h.
4610         * Makefile.in: Rebuild.
4612 2000-09-07  Alan Modra  <alan@linuxcare.com.au>
4614         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Fix
4615         broken list handling.  Create __start_SECNAME and __stop_SECNAME
4616         when no place-holder.  Add some comments.  Test both SEC_CODE and
4617         SEC_READONLY for hold_text to prevent .rodata orphan poisoning.
4618         Handle case where no output section statement created.
4620 2000-09-07  Niibe Yutaka  <gniibe@m17n.org>, Kaz Kojima  <kkojima@rr.iij4u.or.jp>, Alexandre Oliva  <aoliva@redhat.com>
4622         * configure.tgt (sh-*-linux*): Added.
4623         * Makefile.am: Added eshelf_linux and eshlelf_linux.
4624         * Makefile.in: Rebuilt.
4625         * emulparams/shelf_linux.sh: New file.
4626         * emulparams/shlelf_linux.sh: New file.
4628 2000-09-06  Alan Modra  <alan@linuxcare.com.au>
4630         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
4631         try shuffling sections when the orphan happens to be the place
4632         holder.  Keep count of unique section names generated so we speed
4633         the search for a new name.
4635 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
4637         * configure: Rebuilt with new libtool.m4.
4639 2000-09-05  Nick Clifton  <nickc@redhat.com>
4641         * Makefile.in: Regenerate.
4642         * aclocal.m4: Regenerate.
4643         * configure: Regenerate.
4644         * config.in: Regenerate.
4645         * po/ld.pot: Regenerate.
4647         * ldint.texinfo: Remove CVS revision marker - it foils local
4648         comparisons.
4650         * emultempl/ticoff.em: Remove extraneous comma.
4652 2000-09-05  Alan Modra  <alan@linuxcare.com.au>
4654         * emultempl/hppaelf.em (hppaelf_add_stub_section): Add SEC_RELOC
4655         to stub section flags.
4656         (hppa_for_each_input_file_wrapper): New.
4657         (hppa_lang_for_each_input_file): New.
4658         (lang_for_each_input_file): Define to call above.
4659         (multi_subspace): New.
4660         (hppaelf_finish): Pass multi_subspace to elf32_hppa_size_stubs.
4661         (PARSE_AND_LIST_PROLOGUE): Define.
4662         (PARSE_AND_LIST_LONGOPTS): Define.
4663         (PARSE_AND_LIST_OPTIONS): Define.
4664         (PARSE_AND_LIST_ARGS_CASES): Define.
4665         (hppaelf_finish): Call elf32_hppa_set_gp.
4666         (hppaelf_set_output_arch): Remove.
4667         (LDEMUL_SET_OUTPUT_ARCH): Remove.
4669         * emulparams/hppalinux.sh (ELFSIZE): Define.
4670         (MACHINE): Define.
4671         (OTHER_READONLY_SECTIONS): Define.
4672         (DATA_PLT): Define.
4673         (GENERATE_SHLIB_SCRIPT): Define.
4675         * ldlang.c: Add missing prototypes, and tidy others.  Change CONST
4676         to const throughout.  Change `void *' to `PTR' throughout.
4677         (lang_memory_default): Function is local to file, add `static'.
4679         * Makefile.am (ehppaelf.c): Depend on emultempl/elf32.em.
4680         (ehppalinux.c): Likewise.
4681         (earmelf.c): Likewise.
4682         (earmelf_linux.c): Likewise.
4683         (earmelf_linux26.c): Likewise.
4684         * Makefile.in: Regenerate.
4686         * ld.h (ld_config_type): Add unique_orphan_sections.
4687         * lexsup.c (OPTION_UNIQUE): Define.
4688         (ld_options): Add "--unique".
4689         (parse_args): Handle it.
4690         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
4691         search for an existing output section if unique_orphan_sections is
4692         set.  Make use of bfd_get_unique_section_name rather than
4693         duplicating code here.
4694         * ld.texinfo: Describe --unique.
4696         * lexsup.c (ld_options): Make split-by-reloc arg optional. Add
4697         optional arg to split-by-file.
4698         (parse_args): Handle them.
4699         * ld.texinfo: Update description of these options.
4700         * ldwrite.c (clone_section): Pass in the section name.  Replace
4701         local code with bfd_get_unique_section_name.
4702         (split_sections): Tidy code and comments.  Use a list traversal
4703         more appropriate to the list construction.  Handle cooked section
4704         sizes.  Split when split_by_reloc reached rather than exceeded.
4705         Track section size and split when split_by_file reached.  Fix
4706         link_order_tail (even though it's not used).
4707         (ldwrite): Modify condition for calling split_sections to suit
4708         changed split_by_reloc and split_by_file.
4709         * ldmain.c (main): Init config.split_by_reloc and
4710         config.split_by_file to -1.
4711         * ld.h (ld_config_type): Change split_by_reloc to unsigned.
4712         Change split_by_file to bfd_size_type.
4714 2000-09-02  Nick Clifton  <nickc@redhat.com>
4716         * configure.in: Increase version number to 2.10.91.
4717         * NEWS: Mention new ability to support removal of duplicate DWARF2
4718         debug information.
4719         * configure: Regenerate.
4720         * aclocal.m4: Regenerate.
4721         * config.in: Regenerate.
4723 2000-09-02  Daniel Berlin <dberlin@redhat.com>
4725         * scripttempl/elf.sc: Add .gnu.linkonce.wi.* to .debug_info
4726         sections.
4727         * scripttempl/elf32avr.sc: Ditto.
4728         * scripttempl/elfd10v.sc: Ditto.
4729         * scripttempl/elfd30v.sc: Ditto.
4730         * scripttempl/elfi370.sc: Ditto.
4731         * scripttempl/elfm68hc11.sc: Ditto.
4732         * scripttempl/elfm68hc12.sc: Ditto.
4733         * scripttempl/elfi386beos.sc: Ditto.
4734         * scripttempl/v850.sc: Ditto.
4736 2000-08-31  Alexandre Oliva  <aoliva@redhat.com>
4738         * acinclude.m4: Include libtool and gettext macros from the
4739         top level.
4740         * aclocal.m4, configure: Rebuilt.
4742 2000-08-25  Nick Clifton  <nickc@redhat.com>
4744         * ldlang.c (open_output): When choosing the target for a
4745         particular endianness, do nothing if the target is not
4746         supported.
4748 2000-08-25  H.J. Lu  <hjl@gnu.org>
4750         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
4751         check -rpath nor LD_RUN_PATH for cross link.
4752         * ld.texinfo: Document the change.
4754 2000-08-24  Hans-Peter Nilsson  <hp@axis.com>
4756         * NEWS: Mention support for CRIS.
4758 2000-08-23  H.J. Lu  <hjl@gnu.org>
4760         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Get
4761         the current runpath list from bfd_elf_get_runpath_list ()
4762         before search.
4764 2000-08-22  H.J. Lu  <hjl@gnu.org>
4766         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search
4767         the DT_RPATH/DT_RUNPATH entries for DT_NEEDED after
4768         LD_LIBRARY_PATH for native linker. Display the needed DSO if
4769         trace_file_tries is non-zero.
4770         (gld${EMULATION_NAME}_try_needed): Report the needed DSO found
4771         if trace_file_tries is non-zero.
4773         * ld.texinfo: Document the usage of DT_RPATH/DT_RUNPATH.
4774         * NEWS: Mention it.
4776 2000-08-14  Jason Eckhardt  <jle@cygnus.com>
4778         * NEWS: Mention i860 support.
4780 2000-08-14  Andreas Schwab  <schwab@suse.de>
4782         * scripttempl/elf.sc: Fix last change to use correct comment
4783         syntax.
4785 2000-08-10  Geoff Keating  <geoffk@cygnus.com>
4787         * scripttempl/elf.sc: Add a comment giving the correspondence
4788         between sections, per-datum sections, and linkonce sections.  Make
4789         the comment true even for .bss, .sdata, .sdata2, .sbss, and
4790         .sbss2.
4792 2000-08-10  Jason Eckhardt  <jle@cygnus.com>
4794         * emulparams/elf32_i860.sh: New file.
4795         * configure.tgt: Recognize new target i860-stardent-{sysv4*|elf*}.
4796         * Makefile.am (ALL_EMULATIONS): Add eelf32_i860.o.
4797         (eelf32_i860.c): New rule.
4798         * Makefile.in: Regenerate.
4800 2000-08-10  Nick Clifton  <nickc@cygnus.com>
4802         * emulparams/mipspe.sh (ENTRY): Add definition.
4804 2000-08-08  Peter Jeremy  <peter.jeremy@alcatel.com.au>
4806         * emultempl/elf32.em (_after_close): Refer to -rpath not --rpath
4807         in error message.
4809 2000-08-08  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
4811         * scripttempl/elfm68hc11.sc: Define __bss_size symbol to indicate
4812         the final size of .bss section.
4813         * scripttempl/elfm68hc12.sc: Likewise.
4815 2000-08-04  Alan Modra  <alan@linuxcare.com.au>
4817         * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Rename to
4818         gld${EMULATION_NAME}_parse_args for consistency.  Combine
4819         lastoptind and prevoptind vars, and keep track of last optind.
4820         (gld_${EMULATION_NAME}_list_options): Rename to
4821         gld${EMULATION_NAME}_list_options.
4823 2000-08-03  Rodney Brown  <RodneyBrown@pmsc.com>
4825         * configure.tgt: Select targ_emul=elf_i386 for Unixware 7
4826         (i586-sco-sysv5uw7.1.0).
4828 2000-07-27  H.J. Lu  <hjl@gnu.org>
4830         * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
4831         (PARSE_AND_LIST_PROLOGUE): New.
4832         (PARSE_AND_LIST_LONGOPTS): Likewise.
4833         (PARSE_AND_LIST_OPTIONS): Likewise.
4834         (PARSE_AND_LIST_ARGS_CASES): Likewise.
4835         (PARSE_AND_LIST_EPILOGUE): Likewise.
4837 2000-07-28  Alan Modra  <alan@linuxcare.com.au>
4839         * emultempl/armelf.em: Elide functions common to elf32.em,
4840         ie. most of the file.
4841         (arm_elf_after_open): New.  Do arm specific things then call
4842         gld${EMULATION_NAME}_after_open.
4843         (arm_elf_before_allocation): New.  Call
4844         gld${EMULATION_NAME}_before_allocation then do arm specifics.
4845         (PARSE_AND_LIST_PROLOGUE): Define.
4846         (PARSE_AND_LIST_SHORTOPTS): Define.
4847         (PARSE_AND_LIST_LONGOPTS): Define.
4848         (PARSE_AND_LIST_OPTIONS): Define.
4849         (PARSE_AND_LIST_ARGS_CASES): Define.
4850         (LDEMUL_AFTER_OPEN): Define.
4851         (LDEMUL_BEFORE_ALLOCATION): Define.
4852         (LDEMUL_BEFORE_PARSE): Define.
4853         (LDEMUL_FINISH): Define.
4855         * emultempl/hppaelf.em: Similarly zap most of this file.
4856         (hppaelf_add_stub_section): Prototype.
4857         (hppaelf_layaout_sections_again): Prototype.
4858         (hook_in_stub): Prototype.
4859         (LDEMUL_SET_OUTPUT_ARCH): Define.
4860         (LDEMUL_FINISH): Define.
4861         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
4863         * emulparams/armelf.sh (TEMPLATE_NAME): Use elf32.
4864         (EXTRA_EM_FILE): New.
4865         * emulparams/armelf_linux.sh: Likewise.
4866         * emulparams/armelf_linux26.sh: Likewise.
4867         * emulparams/hppalinux.sh: Likewise.
4868         * emulparams/hppaelf.sh: Likewise.
4869         (NOP): Define.
4871         * emultempl/elf32.em: Fix formatting.
4872         (EXTRA_EM_FILE): Source it.
4873         (LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
4874         LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
4875         LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
4876         LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
4877         LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
4878         LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
4879         LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
4880         LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
4881         LDEMUL_FIND_POTENTIAL_LIBRARIES): New shell vars.  Add code to
4882         allow functions in this file to be overridden.
4883         (PARSE_AND_LIST_SHORTOPTS): Handle it.
4885         * emultempl/m68kcoff.em: Include ldfile.h before ldemul.h.
4887         * emultempl/elf32.em: Reorganize file.
4889 2000-07-27  Ivan Kokshaysky  <ink@jurassic.park.msu.ru>
4891         * emulparams/elf64alpha.sh: Implement "-taso" emulation
4892         specific option to fit 64-bit executable in the lower
4893         31-bit address range.  This is done by changing start
4894         address of .interp (the very first section of executable)
4895         and then setting EF_ALPHA_32BIT elf header flag.
4897 2000-07-21  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4899         * emultempl/m68kcoff.em: New file.
4900         * emulparams/m68kcoff.sh (TEMPLATE_NAME): Use m68kcoff template.
4901         * Makefile.am (em68kcoff.c): Depend on m68kcoff.em rather than
4902         generic.em.
4903         * Makefile.in: Regenerate.
4905 2000-07-20  H.J. Lu  <hjl@gnu.org>
4907         * emultempl/elf32.em (longopts): Duplicate "disable-new-dtags"
4908         and "disable-new-dtags" to stop getopt from treating -d/-e as
4909         abbreviations for these options.
4911 2000-07-20  H.J. Lu  <hjl@gnu.org>
4913         * ld.texinfo: Add documentation for --disable-new-dtags and
4914         --enable-new-dtags.
4916         * ldmain.c (main): Initialize link_info.new_dtags to false.
4918         * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add
4919         --disable-new-dtags and --enable-new-dtags.
4920         (gld_${EMULATION_NAME}_list_options): Likewise.
4922 2000-07-05  Kenneth Block  <krblock@computer.org>
4924         * lexsup.c: Add optional style to demangle switch
4925         * ld.texinfo: Document optional style to demangle switch.
4927 2000-07-20  Hans-Peter Nilsson  <hp@axis.com>
4929         * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
4930         ecrislinux.o.
4931         (ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
4932         Regenerate dependencies.
4933         * Makefile.in: Rebuild.
4934         * configure.tgt (cris-*-*): New target.
4935         * emulparams/crisaout.sh, emulparams/criself.sh,
4936         emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
4937         * po/POTFILES.in, po/ld.pot: Regenerate.
4939 2000-07-20  H.J. Lu  <hjl@gnu.org>
4941         * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options):
4942         Print out ignored -z options.
4944 2000-07-19  H.J. Lu  <hjl@gnu.org>
4946         * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Removed.
4947         (PARSE_AND_LIST_PROLOGUE): New.
4948         (PARSE_AND_LIST_LONGOPTS): Likewise.
4949         (PARSE_AND_LIST_OPTIONS): Likewise.
4950         (PARSE_AND_LIST_ARGS_CASES): Likewise.
4952         * ldmain.c (main): Clear link_info.flags and link_info.flags_1.
4954         * lexsup.c (ld_options): Comment out 'z'.
4955         (parse_args): Likewise.
4957         * emultempl/elf32.em: Include "elf/common.h".
4958         (gld_${EMULATION_NAME}_parse_args): Defined. Handle some -z
4959         options.
4960         (gld_${EMULATION_NAME}_list_options): Likewise.
4962         * ld.texinfo: Add documentation for the recognized -z options.
4964 2000-07-19  H.J. Lu  <hjl@gnu.org>
4966         * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Call
4967         bfd_elf_set_dt_needed_soname ().
4969 2000-07-18  DJ Delorie  <dj@cygnus.com>
4971         * pe-dll.c (pe_dll_id_target): check object target name also
4973 2000-07-18  Hans-Peter Nilsson  <hp@axis.com>
4975         * scripttempl/elf.sc (.init): Only do ${INIT_START} and
4976         ${INIT_END} if relocating.
4977         (.fini): Likewise ${FINI_START} and ${FINI_END}.
4979 2000-07-16  Charles Wilson  <cwilson@ece.gatech.edu>
4981         * emultempl/pe.em (gld_*_open_dynamic_archive): New search
4982         order for dynamic library '-lfoo' on pei386: libfoo.dll.a,
4983         foo.dll.a, libfoo.a, libfoo.dll, foo.dll. This fixes compatibility
4984         errors introduced by the old dynamic lib search order.
4986 2000-07-17  DJ Delorie  <dj@cygnus.com>
4988         * pe-dll.c (process_def_file): auto-export data items also
4989         (pe_process_import_defs): also see if _imp_ form needed
4991 2000-07-12  Charles Wilson  <cwilson@ece.gatech.edu>
4993         * pe-dll.c (make_one): fix a typo in the __imp_ name decoration
4994         for dll import libraries
4996 2000-07-12  Mark Elbrecht  <snowball3@bigfoot.com>
4998         * scripttempl/i386go32.sc: Support the g++ attribute init_priority in
4999         gcc 2.95.2 and later.
5001 2000-07-11  Kazu Hirata  <kazu@hxi.com>
5003         * ldfile.c (ldfile_try_open_bfd): Output '\n' after an error
5004         message.
5006 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
5008         * ldemul.h (struct lang_input_statement_struct): Remove forward
5009         declaration.
5010         (struct search_dirs): Likewise.
5011         * ldfile.h (struct lang_input_statement_struct): Likewise.
5012         Protect file from multiple inclusion.
5013         * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
5014         declaration from macro to file scope.
5016         * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
5017         * ldgram.y: Likewise here.
5018         * ldlang.c: And here.
5019         * ldmain.c: And here.
5020         * mpw-elfmips.c: And here.
5021         * mpw-eppcmac.c: And here.
5022         * emultempl/aix.em: And here.
5023         * emultempl/armcoff.em: And here.
5024         * emultempl/armelf.em: And here.
5025         * emultempl/armelf_oabi.em: And here.
5026         * emultempl/beos.em: And here.
5027         * emultempl/elf32.em: And here.
5028         * emultempl/hppaelf.em: And here.
5029         * emultempl/linux.em: And here.
5030         * emultempl/lnk960.em: And here.
5031         * emultempl/pe.em: And here.
5032         * emultempl/sunos.em: And here.
5033         * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
5034         * mpw-idtmips.c: Ditto.
5035         * emultempl/generic.em: Ditto.
5036         * emultempl/gld960.em: Ditto.
5037         * emultempl/gld960c.em: Ditto.
5038         * emultempl/mipsecoff.em: Ditto.
5039         * emultempl/ticoff.em: Ditto.
5040         * emultempl/vanilla.em: Ditto.
5042         * pe-dll.c: Include ldfile.h
5043         * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
5045         * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
5046         arguments to bfd_elf32_size_dynamic_sections call.
5047         (gldelf32ebmip_place_orphan): Add missing arguments to
5048         lang_leave_output_section_statement call.
5050 2000-07-10  H.J. Lu  <hjl@gnu.org>
5052         * emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
5053         DLL_SUPPORT.
5054         (strhash): Likewise.
5055         (compute_dll_image_base): Likewise.
5056         (pe_undef_found_sym): Likewise.
5057         (pe_undef_cdecl_match): Likewise.
5058         (gld_${EMULATION_NAME}_open_dynamic_archive): Mark the
5059         argument "arch" with ATTRIBUTE_UNUSED.
5061 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
5063         * configure.tgt: Remove extraneous hppa*-*-linux-gnu*.
5065         From  Ryan Bradetich  <rbradetich@uswest.net>
5066         * ldwrite.c (SSIZE): Remove to cure macro redefinition warning.
5068 2000-07-09  Alan Modra  <alan@linuxcare.com.au>
5070         Changes to create multiple linker stubs, positioned immediately
5071         before the section where they are required.
5072         * emultempl/hppaelf.em: Include elf32-hppa.h.
5073         (stub_sec, file_chain): Delete.
5074         (hppaelf_create_output_section_statements): Don't make a stub
5075         section here.
5076         (hook_stub_info): New struct.
5077         (hook_in_stub): New function.
5078         (hppaelf_add_stub_section): New function.
5079         (hppaelf_finish): Do nothing for relocateable links.  Modify the
5080         call to elf32_hppa_size_stubs.  Move code for updating section
5081         layout from here...
5082         (hppaelf_layaout_sections_again): ..to here, a new function.
5084         * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Fix
5085         broken list handling.  Pass in a pointer to the list.
5086         (hppaelf_finish): Update call to hppaelf_delete_padding_statements
5087         for above changes.
5088         (hppaelf_before_parse): Prototype.
5089         (hppaelf_set_output_arch): Prototype.
5090         (hppaelf_create_output_section_statements): Prototype.
5091         (hppaelf_delete_padding_statements): Prototype.
5092         (hppaelf_finish): Prototype.
5094         Merge from elf32.em
5095         * emultempl/hppaelf.em: Include ctype.h.
5096         (struct orphan_save): New.
5097         (gld${EMULATION_NAME}_place_orphan): New.
5098         (output_rel_find): New.
5099         (hppaelf_get_script): Update from elf32.em.
5100         (ld_hppaelf_emulation): Rename to ld_${EMULATION_NAME}_emulation.
5101         Change emulation_name field to "${EMULATION_NAME}".  Add
5102         gld${EMULATION_NAME}_place_orphan.
5104         * Makefile.am (ALL_EMULATIONS): Reinstate ehppaelf.o,  add
5105         ehppalinux.o, sort it.  Regenerate dependencies.
5106         (ehppalinux.c): Depend on hppaelf.em
5107         * Makefile.in: Regenerate.
5109         * configure.tgt: targ_emul=hppalinux for hppa*linux
5111         * emulparams/hppalinux.sh: New.
5112         * emulparams/hppaelf.sh (TARGET_PAGE_SIZE): Write in hex.
5114 2000-07-08  Alan Modra  <alan@linuxcare.com.au>
5116         * lexsup.c (parse_args): Copy section name.
5118 2000-07-07  Charles Wilson  <cwilson@ece.gatech.edu>
5120         * emultempl/pe.em: institute the following search order for
5121         dynamic libraries on pei386: libfoo.dll.a, foo.dll.a (import
5122         libs), libfoo.dll, foo.dll (link direct to dll).  Fall back to
5123         static lib (libfoo.a) if none of the above are found.
5125 2000-07-07  Mumit Khan  <khan@xraylith.wisc.edu>
5127         * emultempl/pe.em (pe_enable_auto_image_base): New variable.
5128         (longopts): New --{enable,disable}-auto-image-base options.
5129         (gld_${EMULATION_NAME}_list_options): Document.
5130         (gld_${EMULATION_NAME}_parse): Handle.
5131         (strhash): New static function.
5132         (compute_dll_image_base): New static function.
5133         (gld_${EMULATION_NAME}_set_symbols): Use.
5135 2000-07-05  DJ Delorie  <dj@redhat.com>
5137         * MAINTAINERS: new
5139 2000-07-01  Koundinya K  <kk@ddeorg.soft.net>
5141         * configure.tgt: Add traditional mips (mips*-*-sysv4*) target.
5142         * emulparams/elf32btsmip.sh: New file.
5143         * Makefile.am: Add traditional mips target.
5144         * Makefile.in: Rebuild.
5146 2000-07-01  H.J. Lu  <hjl@gnu.org>
5148         * Makefile.am (EXTRA_ld_new_SOURCES): Set to deffilep.y for
5149         automake to use YLWRAP.
5150         * Makefile.in: Rebuild.
5152 2000-07-01  Alan Modra  <alan@linuxcare.com.au>
5154         * Makefile.am (DEP): Fix 2000-06-22.  grep after running dep.sed
5155         (CLEANFILES): Add DEPA.
5156         * Makefile.in: Regenerate.
5158 2000-06-30  Timothy Wall  <twall@ppc>
5160         * scripttempl/tic54xcoff.sc: PAGE N is not implemented, so encode
5161         the page in the upper octet of the address.
5163 2000-06-26  Marek Michalkiewicz  <marekm@linux.org.pl>
5165         * emulparams/avrmega161.sh (ARCH): Change to avr:5.
5167 2000-06-24  Alan Modra  <alan@linuxcare.com.au>
5169         * NEWS: arm-elf does --gc-sections too.
5171 2000-06-22  Alan Modra  <alan@linuxcare.com.au>
5173         * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
5174         find one.
5175         * Makefile.in: Regenerate.
5177 2000-06-21  H.J. Lu  <hjl@gnu.org>
5179         * Makefile.am: Rebuild dependency.
5180         * Makefile.in: Rebuild.
5182 2000-06-20  H.J. Lu  <hjl@gnu.org>
5184         * Makefile.am: Rebuild dependency.
5185         * Makefile.in: Rebuild.
5187 2000-06-20  Timothy Wall  <twall@cygnus.com>
5189         * scripttempl/tic54xcoff.sc: New.
5190         * ldlang.c (wild_doit): Propagate SEC_BLOCK flag.
5191         * gen-doc.texi: Add flag for TI COFF.
5192         * ld.texinfo: Add documentation for TI COFF handling switches.
5193         * emultempl/ticoff.em: New. TI COFF handling.
5194         * configure.tgt: Add tic54x target.
5195         * Makefile.am: Add tic54x target.
5196         * Makefile.in: Ditto.
5198 2000-06-20  Alan Modra  <alan@linuxcare.com.au>
5200         * ldmain.c (set_scripts_dir): Correct pointer comparison when
5201         checking for backslashes.
5203 2000-06-19  Alan Modra  <alan@linuxcare.com.au>
5205         * NEWS: Move entries not in 2.10 above "Changes in version 2.10".
5207 2000-06-18  Alan Modra  <alan@linuxcare.com.au>
5209         * NEWS: Update list of targets supporting --gc-sections.
5211         * scripttempl/elf.sc: KEEP .eh_frame contents.
5212         * scripttempl/elfd30v.sc: Same here.
5214 2000-06-18  Stephane Carrez  <stcarrez@worldnet.fr>
5216         * Makefile.am (ALL_EMULATIONS): Added new emulation for m68hc12
5217         and m68hc11 (elf).
5218         * Makefile.in: Rebuild.
5219         * configure.tgt: Recognize m68hc12 and m68hc11.
5220         * scripttempl/elfm68hc12.sc: New file.
5221         * emulparams/m68hc12elfb: New emulation.
5222         * emulparams/m68hc12elf: New emulation.
5223         * emulparams/m68hc11elfb.sh: New file.  User configurable emulation
5224         (includes a memory.x script to define the ROM and RAM banks).
5225         * scripttempl/elfm68hc11.sc, emulparams/m68hc11elf.sh:
5226         New configuration files for support of Motorola 68hc11
5228 2000-06-15  Alan Modra  <alan@linuxcare.com.au>
5230         * ldmain.c (main): Only change SEC_READONLY for final link.
5232 2000-06-13  H.J. Lu  <hjl@gnu.org>
5234         * configure: Regenerate.
5236 2000-06-08  David O'Brien  <obrien@FreeBSD.org>
5238         * configure.in (VERSION): Update to show this is the CVS mainline.
5240 2000-06-07  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
5242         * emultempl/mipsecoff.em (gld{EMULATION_NAME}_after_open): Require all
5243         input objects to be ECOFF.
5244         (check_sections): einfo takes %B, not %P, to print a BFD name.
5246 2000-06-05  Michael Matz <matz@ifh.de>
5248         * ldgram.y (vers_defns): Handle 'extern "C++" { ... }' in
5249         version scripts.
5251         * ldlex.l (V_IDENTIFIER): Accept `::' in symbols.
5253 2000-05-23  Marek Michalkiewicz  <marekm@linux.org.pl>
5255         * emulparams/avr1200.sh (STACK): Define as 0.
5256         * emulparams/avr23xx.sh (STACK): Define as last internal SRAM address.
5257         * emulparams/avr4433.sh (STACK): Likewise.
5258         * emulparams/avr44x4.sh (STACK): Likewise.
5259         * emulparams/avr85xx.sh (STACK): Likewise.
5260         * emulparams/avrmega103.sh (STACK): Likewise.
5261         * emulparams/avrmega161.sh (STACK): Likewise.
5262         * emulparams/avrmega603.sh (STACK): Likewise.
5263         * scripttempl/elf32avr.sc (__data_start): Define for gcrt1.
5264         (__stack): Define from ${STACK} for main().
5266 2000-05-26  Alan Modra  <alan@linuxcare.com.au>
5268         * Makefile.am: Update dependencies with "make dep-am"
5269         * Makefile.in: Regenerate.
5271 2000-05-26  Eli Zaretskii  <eliz@is.elta.co.il>
5273         * ldmain.c: Include filenames.h.
5274         (set_scripts_dir): Support backslashes in program name.
5276 2000-05-22  Igor Shevlyakov  <igor@windriver.com>
5278         * ldmain.c (main): When deciding if ".text" section should be
5279         read-only, don't forget to reset SEC_READONLY because it
5280         could be already set.
5282 2000-05-22  Thomas de Lellis  <tdel@windriver.com>
5284         * ld.1: Add documentation for new command line option:
5285                 --section-start <sectionname>=<sectionorg>
5286         This is a generic version of -Ttext etc. which accepts
5287         any section name as a parameter instead of just text/data/
5288         bss.
5289         * ld.texinfo: More docs.
5290         * NEWS: More docs.
5291         * lexsup.c: (parse_args): Recognize new command line option.
5292         (ld_options): Add new option.
5294 2000-05-18  H.J. Lu  <hjl@gnu.org>
5296         * lexsup.c (parse_args): `i' == `r', not `q'.
5298 2000-05-18  Jeffrey A Law  (law@cygnus.com)
5300         * configure.tgt (hppa*64*-*-*): Enable PA64 target.
5302 2000-05-17 S. Bharadwaj Yadavalli  <sby@scrugs.lkg.dec.com>
5303               Rick Gorton          <gorton@scrugs.lkg.dec.com>
5305         Add support for '-q' == '--emit-relocs' switch.
5306         * ldmain.c (main): Default to false.
5307         * lexsup.c (parse_args): Turn on emitrelocations flag if set.
5308         * NEWS: Describe the emitrelocations switch.
5309         * ld.texinfo: Describe the emitrelocations switch.
5311 2000-05-16  Charles Wilson <cwilson@ece.gatech.edu>
5313         * emultempl/pe.em (_open_dynamic_archive): New function: Search
5314         the library path for "foo.dll" and "libfoo.dll" dynamic libraries
5315         before searching for 'libfoo.a' in response to a '-Bdynamic -lfoo'
5316         link options.
5318 2000-05-15  David O'Brien  <obrien@FreeBSD.org>
5320         * lexsup.c (parse_args): Update the year in the copyright notice.
5322 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
5324         * ld.h (gettext, dgettext, dcgettext, textdomain, bindtextdomain):
5325         Replace defines with those from intl/libgettext.h to quieten gcc
5326         warnings.
5328 2000-05-10  H.J. Lu  <hjl@gnu.org>
5330         * ldlang.c (open_input_bfds): Don't load the same file within
5331         a group again if the whole archive has been loaded already.
5333 2000-05-03  Alan Modra  <alan@linuxcare.com.au>
5335         From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
5336         * lexsup.c (set_section_start): Use bfd_scan_vma rather than
5337         strtoul.
5339 2000-05-01  Jim Wilson  <wilson@cygnus.com>
5341         * configure.host (ia64-*-linux-gnu*): Change gcc to ${CC}.
5343         * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
5344         host "ia64-*-linux-gnu*".
5346 2000-04-29  Andreas Jaeger  <aj@suse.de>
5348         * ld.h: Correctly check GCC version.
5350 2000-04-25  Jeffrey A Law  (law@cygnus.com)
5352         * Makefile.am: Add PA64 support.  Add missing dependencies for
5353         PA32 elf support.
5354         * Makefile.in: Rebuilt.
5355         * configure.tgt: Add PA64 support (currently disabled).
5357 2000-04-25  Alan Modra  <alan@linuxcare.com.au>
5359         * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Delete.
5360         (output_rel_find): New function.
5361         (hold_section, hold_use): Delete.
5362         (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
5363         hold_interp): Make local to place_orphan.
5364         (gld${EMULATION_NAME}_place_orphan): Use lang_output_section_find
5365         rather than place_section to find possible previous use of orphan.
5366         Similarly find the place-holder output sections.  Use returned
5367         value from lang_enter_output_section_statement rather than calling
5368         lang_output_section_statement_lookup.
5369         * emultempl/armelf.em: Same here.
5370         * emultempl/pe.em: Similar to above, but no need for output_rel_find.
5372         * ldlang.c (lang_enter_output_section_statement): Return output
5373         section statement.
5374         * ldlang.h (lang_enter_output_section_statement): Change
5375         declaration too.
5377         * ldlang.h (lang_output_section_statement): Export it.
5378         * ldlang.c (lang_output_section_statement): Ditto.
5380 2000-04-24  Nick Clifton  <nickc@cygnus.com>
5382         * ld.texinfo (Output Section Data): Add note that section data
5383         commands cannot appear outside of section directives.
5385 2000-04-2  Matthew Green  <mrg@cygnus.com>
5387         * configure.tgt: Add NetBSD/sparc ELF, and NetBSD/sparc64 support.
5389 2000-04-21  Richard Henderson  <rth@cygnus.com>
5390             David Mosberger  <davidm@hpl.hp.com>
5392         * Makefile.am (ALL_64_EMULATIONS): Add eelf64_ia64.o.
5393         (eelf64_ia64.c): New rule.
5394         * Makefile.in: Rebuild.
5395         * configure.tgt (ia64-*-elf*, ia64-*-linux*): New targets.
5396         * emulparams/elf64_ia64.sh: New file.
5398 2000-04-21  Richard Henderson  <rth@cygnus.com>
5400         * scripttempl/elfd30v.sc: Place .gcc_except_table.
5402 2000-04-19  Alan Modra  <alan@linuxcare.com.au>
5404         * dep-in.sed: Match space at start of file name, not at end.
5406 2000-04-18  H.J. Lu  <hjl@gnu.org>
5408         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
5409         lang_leave_output_section_statement () after calling
5410         lang_enter_output_section_statement ().
5411         * emultempl/armelf.em: Likewise.
5413 2000-04-18  Alan Modra  <alan@linuxcare.com.au>
5415         * emultempl/elf32.em (struct orphan_save): Add section field.
5416         (gld${EMULATION_NAME}_place_orphan): Use above to keep sections in
5417         better order, and place first orphan section as we did before the
5418         2000-04-12 patch.  Ignore ~SEC_ALLOC sections when choosing place.
5419         Don't call make_bfd_section here, let wild_doit do the job for us.
5420         Don't build a statement list when we'll only throw it away.
5421         * emultempl/armelf.em: Ditto.
5422         * emultempl/pe.em: Similarly.
5424 2000-04-14  Geoff Keating  <geoffk@cygnus.com>
5426         * scripttempl/elfppc.sc: Remove.
5427         * emulparams/elf32ppc.sh: Use elf.sc.
5428         * emulparams/elf32lppc.sh: Use elf.sc.
5429         * emulparams/elf32ppclinux.sh: Use elf.sc.
5430         * emulparams/elf32ppcsim.sh: New file.
5431         * emulparams/elf32lppcsim.sh: New file.
5432         * Makefile.am: Update dependencies.  Add elf32ppcsim ad elf32lppcsim.
5433         (ALL_EMULATIONS): Add elf32ppcsim ad elf32lppcsim.
5434         * Makefile.in: Regenerate.
5435         * configure.tgt (powerpc-*): Add elf32ppcsim and elf32lppcsim.
5437 2000-04-14  Alan Modra  <alan@linuxcare.com.au>
5439         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Process
5440         ~SEC_ALLOC sections too.  Init start address of debug sections.
5441         * emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan): Ditto.
5442         * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Ditto.
5443         Also set all relocateable section start addresses.
5445 2000-04-13  Geoff Keating  <geoffk@cygnus.com>
5447         * scripttempl/elf.sc: Add support for .sbss2 and .sdata2 sections.
5448         Add new BSS_PLT variable for when .plt need not be contained in
5449         the file.  Move _etext so that it is also after .fini, and provide
5450         both etext and _etext with a leading underscore.  Mark the start
5451         and end of .sbss.
5453 2000-04-12  Alan Modra  <alan@linuxcare.com.au>
5455         * emultempl/elf32.em (struct orphan_save): New.
5456         (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
5457         hold_interp): Make them struct orphan_save.
5458         (gld${EMULATION_NAME}_place_section): Modify for new hold_*.
5459         (gld${EMULATION_NAME}_place_orphan): Add new orphan sections to
5460         the end of the relevant section list.  Also add associated section
5461         statements to the end of any previous orphan statements.
5462         * emultempl/armelf.em: Similarly.
5463         * emultempl/pe.em: Similarly.
5465 2000-04-11  Alan Modra  <alan@linuxcare.com.au>
5467         * ld.texinfo (Simple Example): Remove extraneous paragraph.
5469 2000-04-07  Andrew Cagney  <cagney@b1.cygnus.com>
5471         * configure.in (WARN_CFLAGS): Set to -W -Wall by default.  Add
5472         --enable-build-warnings option.
5473         * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
5474         * Makefile.in, configure: Re-generate.
5476 2000-04-04  Alan Modra  <alan@linuxcare.com.au>
5478         * po/ld.pot: Regenerate.
5480         * lexsup.c (help): Restore translated part of bug string.
5482         * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
5483         (DEP): Quote when passing vars to sub-make.  Add warning message
5484         to end.
5485         (DEP1): Rewrite for "gcc -MM".
5486         (CLEANFILES): Add DEP2.
5487         Update dependencies.
5488         * Makefile.in: Regenerate.
5490 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
5492         * ld.h: #include "bin-bugs.h"
5493         * lexsup.c (help): Use REPORT_BUGS_TO.
5495 2000-03-27  Denis Chertykov  <denisc@overta.ru>
5497         * configure.tgt (avr-*-*): New target support.
5498         * Makefile.am: Likewise.
5499         * scripttempl/elf32avr.sc: New script file.
5500         * emulparams/avr1200.sh: New file.
5501         * emulparams/avr23xx.sh: New file.
5502         * emulparams/avr4433.sh New file.
5503         * emulparams/avr44x4.sh New file.
5504         * emulparams/avr85xx.sh New file.
5505         * emulparams/avrmega103.sh New file.
5506         * emulparams/avrmega161.sh New file.
5507         * emulparams/avrmega603.sh New file.
5508         * Makefile.in: Regenerate.
5510 2000-03-09  Andreas Jaeger  <aj@suse.de>
5512         * Makefile.am (check-DEJAGNU): Also unset LANG.
5513         * Makefile.in: Rebuild.
5515 2000-03-06  Ian Lance Taylor  <ian@zembu.com>
5517         * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
5518         archive.
5520 2000-03-02  H.J. Lu  <hjl@gnu.org>
5522         * emulparams/elf32mcore.sh: Include "getopt.h".
5524 2000-03-01  Ian Lance Taylor  <ian@zembu.com>
5526         * configure.tgt: Remove *-*-aout, *-*-coff, and *-*-netware.
5528 2000-03-01  H.J. Lu  <hjl@gnu.org>
5530         * emulparams/mipspe.sh: Add SUBSYSTEM and INITIAL_SYMBOL_CHAR.
5531         * emulparams/shpe.sh: Likewise.
5533 2000-03-01  Nick Clifton  <nickc@cygnus.com>
5535         * pe-dll.c: Remove unused variables and add ATTRIBUTE_UNUSED
5536         to unused parameters.
5538         * emultempl/pe.em: Add "#ifdef DLL_SUPPORT" around static
5539         functions only used by DLL code.
5540         (_place_orphan): Initialise 'dollar'.
5542 2000-03-01  H.J. Lu  <hjl@gnu.org>
5544         * ldmain.c (undefined_symbol): Take one more arg, fatal, to
5545         indicate if the undefined symbol is a fatal error or not.
5546         Don't delete the output file if "fatal" is false.
5548 2000-02-29  H.J. Lu  <hjl@gnu.org>
5550         * Makefile.am (check-DEJAGNU): Also pass LIBS="$(LIBS)".
5551         Set LC_COLLATE and LC_ALL to null and export them. It is for
5552         sort which expects the C locale.
5553         Add $(LIBS) to all $(HOSTING_LIBS).
5554         * Makefile.in: Rebuild.
5556 2000-02-29  Alan Modra  <alan@spri.levels.unisa.edu.au>
5558         * emultempl/{aix.em, armcoff.em, armelf.em, armelf_oabi.em,
5559         beos.em, elf32.em, generic.em, gld960.em, gld960c.em, hppaelf.em,
5560         linux.em, lnk960.em, mipsecoff.em, sunos.em, vanilla.em}
5561         (ld_emulation_xfer_struct): Add missing NULL initialiser for
5562         find_potential_libraries.
5564 2000-02-28  Jim Blandy  <jimb@redhat.com>
5566         * ldgram.y (exclude_name_list): Don't require a comma to separate
5567         list entries; the lexer considers commas to be valid part of a
5568         filename, so in something like `foo, bar' the comma is considered
5569         part of the first filename, `foo,'.
5570         * ld.texinfo: Update section on EXCLUDE_FILE lists.
5572 2000-02-27  Loren J. Rittle  <ljrittle@acm.org>
5574         * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
5575         host "i[3456]86-*-freebsdelf*".
5577 2000-02-27  Mark Elbrecht  <snowball3@bigfoot.com>
5579         * scripttempl/i386go32.sc: Move misplaced semicolons.
5581 2000-02-25  Ian Lance Taylor  <ian@zembu.com>
5583         * Makefile.am (ALL_EMULATIONS): Remove ehppaelf.o.
5584         (ALL_64_EMULATIONS): Remove eelf64hppa.o.
5585         (eelf64hppa.c, ehppaelf.c): Remove targets.
5586         * Makefile.in: Rebuild.
5588 2000-02-25  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
5590         * configure.tgt (targ_extra_ofiles): Enable elf64_sparc on
5591         GNU/Linux/sparc, but keep the default as 32.
5593         * configure.tgt: Enable elf64_sparc on Solaris7+/sparc.  And make
5594         it default if sparcv9 or sparc64.
5596 2000-02-24  Nick Clifton  <nickc@cygnus.com>
5598         * Makefile.am: Add rules to build emipspe.o and earmpe.o.
5599         * Makefile.in: Regenerate.
5600         * configure.tgt: Add targets for arm-wince, sh-pe and mips-pe.
5602         * ldemul.h (ld_emulation_xfer_struct): Add new field:
5603         find_potential_libraries.
5604         * ldemul.c (ldemul_find_potential_libraries): New function.
5606         * ldfile.c (ldfile_open_file_search): Allow function to be
5607         exported.
5608         (ldfile_open_file): Call ldemul_find_potential_libraries.
5609         * ldfile.h: Add prototype for ldfile_open_file_search.
5611         * pe-dll.c: Add support for ARM, MIPS and SH targets.
5613         * emulparams/mipspe.sh: New file.  Parameters for mips-pe target.
5614         * emulparams/shpe.sh: New file.  Parameters for sh-pe target.
5616         * emultempl/pe.em: Add support for ARM, MIPS and SH DLLs.
5617         (gld_X_find_potential_libraries): New function.  Search for
5618         libraries called "*.lib".
5620         * scripttempl/pe.sc: Add .pdata section.
5622 2000-02-23  Richard Henderson  <rth@cygnus.com>
5624         * scripttempl/elfd10v.sc: Remove dynamic linking hooks.
5625         Add and use memory regions.
5627 2000-02-23  Linas Vepstas (linas@linas.org)
5629         * emulparams/elf32i370.sh, scripttempl/elfi370.sc: New.
5631         * Makefile.am: Add support for Linux/IBM 370.
5632         * configure.tgt: Likewise.
5634         * Makefile.in: Regenerate.
5636 2000-02-21  Alan Modra  <alan@spri.levels.unisa.edu.au>
5638         * ldlang.c (print_input_section, print_data_statement,
5639         print_reloc_statement, print_padding_statement, insert_pad,
5640         size_input_section, lang_check_section_addresses,
5641         lang_size_sections, lang_do_assignments, lang_set_startof,
5642         lang_one_common): Change `opb' to unsigned.
5643         (lang_do_assignments): Also change `size' to unsigned.
5645 2000-02-16  Richard Henderson  <rth@cygnus.com>
5647         * scripttempl/elf.sc: Place OTHER_PLT_RELOC_SECTION.
5649 2000-02-16  Timothy Wall  <twall@cygnus.com>
5651         * mri.c (mri_draw_tree): Add default LMA region argument to call
5652         to lang_leave_output_section_statement.
5653         * ldlang.h: Update prototypes with LMA region arguments.
5654         * ldlang.c (lang_size_sections): Encapsulate region bounds
5655         checking in os_check_region call.
5656         (os_check_region): New function.
5657         (lang_output_section_statement_lookup): Initialize lma_region.
5658         (lang_leave_output_section_statement): Add LMA region argument.
5659         (lang_leave_overlay): Ditto.
5660         * ldgram.y: Handle LMA region syntax.
5661         * ld.texinfo (Output Section Description): Describe LMA region usage.
5662         * emultempl/armelf.em (gld$place_orphan): Add default value for
5663         lma region in call to lang_leave_output_section_statement.
5664         * emultempl/elf32.em (gld$place_orphan): Add default value for
5665         lma region in call to lang_leave_output_section_statement.
5666         * emultempl/pe.em (gld$place_orphan): Add default value for
5667         lma region in call to lang_leave_output_section_statement.
5670 2000-02-04  Timothy Wall  <twall@redhat.com>
5672         * ldlang.c (lang_check_section_addresses): Use bytes instead of
5673         octets when calculating section end addresses.
5675 2000-02-04  Timothy Wall  <twall@redhat.com>
5677         * ldlang.c (lang_size_sections): Fix typo in ALIGN_N invocation.
5679 2000-02-03  Timothy Wall <twall@redhat.com>
5681         * ldexp.c (fold_name): Make SIZEOF operator return byte count, not
5682         octet count.
5683         * ldlang.c (print_input_section, print_data_statement,
5684         print_reloc_statement, print_padding_statement): Print target
5685         address values and section sizes as bytes, not octets.
5686         (insert_pad) Calculate padding size in octets, and adjust "dot"
5687         by bytes.
5688         (size_input_section) Always adjust "dot" by bytes, not octets.
5689         (lang_check_section_addresses, lang_do_assignments) Adjust
5690         "dot" by bytes, not octets.  Use the larger of the directive size
5691         or octets_per_byte for the number of octets actually allocated in
5692         the output section.
5693         (lang_set_startof) Make sure STARTOF returns a target address.
5694         (lang_one_common) Record size changes in octets.
5695         (lang_abs_symbol_at_end_of) Section end symbol's value is
5696         recorded in target bytes.
5697         * ld.texinfo: Updated description of BYTE, SHORT, LONG, etc.
5698         to be clear about behavior when an octet is smaller than one byte.
5700 2000-01-27  Alan Modra  <alan@spri.levels.unisa.edu.au>
5702         * ldcref.c (output_cref): Don't pass message strings to printf
5703         as format arg.
5704         Update copyright.
5706         * ldmisc.c (vfinfo): Same here.
5707         Update copyright.
5709 2000-01-23  Alan Modra  <alan@spri.levels.unisa.edu.au>
5711         * emultempl/{armcoff.em,armelf.em,armelf_oabi.em,beos.em,
5712         generic.em,gld960.em,gld960c.em,hppaelf.em,linux.em,lnk960.em,
5713         mipsecoff.em,sunos.em,vanilla.em} (ld_emulation_xfer_struct):
5714         Add missing NULL initialisers, and comments.
5716 2000-01-21  Nick Clifton  <nickc@cygnus.com>
5718         * ldlang.c (lang_size_sections): Fix typo in comment.
5720 2000-01-18  H.J. Lu  <hjl@gnu.org>
5722         * ldlang.c (lang_size_sections): Also update the current
5723         address of a region if the SEC_NEVER_LOAD bit is not set.
5725 2000-01-10  Philip Blundell  <pb@futuretv.com>
5727         * configure.tgt (arm*-*-conix*): New target.
5729 2000-01-07  Nick Clifton  <nickc@cygnus.com>
5731         * ld.texinfo (Options): Remind users to preceed linker command
5732         line switches with -Wl, (or whatever is appropriate) if it is
5733         being invoked by a comnpiler driver program.
5734         Fix description of the behaviour of the -n command line switch.
5736 2000-01-05  Catherine Moore  <clm@cygnus.com>
5738         * ld.h (wildcard_spec):  Change exclude_name to exclude_name_list.
5739         (name_list): New.
5740         * ld.texinfo (EXCLUDE_FILE): Update documentation.
5741         * ldgram.y (wildcard_spec): Support a list of excluded_files.
5742         (exclude_name_list): New.
5743         ldlang.c (walk_wild_section): Support list of excluded files.
5744         (print_wild_statement): Likewise.
5745         (lang_add_wild): Likewise.
5746         * ldlang.h (lang_wild_statement_type): Likewise.
5747         * scripttempl/elf.sc (OTHER_EXCLUDE_FILES): Support.
5749 2000-01-04  Mumit Khan  <khan@xraylith.wisc.edu>
5751         * pe-dll.c (pe_dll_warn_dup_exports): New variable.
5752         (process_def_file): Use.
5753         (pe_dll_compat_implib): New variable.
5754         (make_one): Use.
5756         * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
5757         pe_dll_compat_implib.
5759         * emultempl/pe.em (longopts): Add warn-duplicate-exports and
5760         compat-implib options.
5761         (gld_${EMULATION_NAME}_list_options): List new options.
5762         (gld_${EMULATION_NAME}_parse_args): Handle.
5764         * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
5765         dll.
5767         * deffilep.y (opt_name): Allow "." in name.
5769 For older changes see ChangeLog-9899
5771 Local Variables:
5772 mode: change-log
5773 left-margin: 8
5774 fill-column: 74
5775 version-control: never
5776 End: