* ldmain.c (main): Re-order link_info initialization. Init all
[binutils.git] / ld / ChangeLog
blobf4ede579c53e91c0ae9a0324588daaa6cf9d9c88
1 2002-12-20  Alan Modra  <amodra@bigpond.net.au>
3         * ldmain.c (main): Re-order link_info initialization.  Init all
4         fields.
6 2002-12-19  Charles Wilson  <cwilson@ece.gatech.edu>
8         * ld.texinfo: Clarify and extend the documentation
9         in the Machine Dependent, WIN32 section.
11 2002-12-18  Ralf Habacker  <ralf.habacker@freenet.de>
13         * ld.texinfo: Add win32 machine depending section.
14         * gen-doc.texi: Enable win32 machine depending section.
16         * configure.host: Add win32 library search path.
18 2002-12-17  Ralf Habacker  <ralf.habacker@freenet.de>
20         * ld/emultempl/pe.em (pe_find_data_imports): Don't search for data
21         import when auto-import is disabled.
23 2002-12-17  Danny Smith  <dannysmith@users.sourceforge.net>
25         * emultempl/pe.em (..._recognized_file): Use LD_PATHMAX+1 to
26         account for trailing '\0'.
28 2002-12-17  Nick Clifton  <nickc@redhat.com>
30         * emultempl/pe.em (longopts): Duplicate entry for --compact-implib
31         so that it is not confused with -c.
33 2002-12-13  Ralf Habacker  <Ralf.Habacker@freenet.de>
34             Charles Wilson  <cwilson@ece.gatech.edu>
36         * configure.in: Add check for realpath function.
37         * configure: Regenerate.
38         * config.in: Regenerate.
39         * aclocal.m4: Regenerate.
40         * deffile.h: Add .data field to def_file_import
41         structure.
42         * pe-dll.c (pe_proces_import_defs): Use .data field of
43         def_file_import structure to initialize flag_data field of
44         def_file_export structure.
45         (pe_implied_import_dll): New variables exp_funcbase and
46         [data|bss]_[start|end].  Use DLL's internal name to set dll_name,
47         not filename (which may be a symlink).  Scan the sections and
48         initialize [data|bss]_[start|end].  When scanning the export
49         table, skip _nm_ symbols, and mark any symbols whose rva indicates
50         that it is in the .bss or .data sections as data.
51         * sysdep.h: Include limits.h and sys/param.h, and define
52         LD_PATHMAX as appropriate.  Also define REALPATH as realpath if it
53         exists, NULL otherwise.
54         * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Call
55         pe_process_import_defs before pe_find_data_imports, so that
56         auto-import will check the virtual implib as well as "real"
57         implibs.
58         (gld_${EMULATION_NAME}_recognized_file): Use REALPATH to follow
59         symlinks to their target; check that the target's extension is
60         .dll before calling pe_implied_import_dll(), not the filename
61         itself (which may be a symlink).
63 2002-12-10  Alan Modra  <amodra@bigpond.net.au>
65         * emultempl/elf32.em (struct orphan_save): Add os_tail field.
66         (gld${EMULATION_NAME}_place_orphan): Re-order output_section_statement
67         list too.
69 2002-12-08  Alan Modra  <amodra@bigpond.net.au>
71         * ldlang.h: Formatting.
73 2002-12-07  Alan Modra  <amodra@bigpond.net.au>
75         * ldlang.c (init_os): Ensure sections mentioned in load_base
76         are initialized.
78 2002-12-05  Alan Modra  <amodra@bigpond.net.au>
80         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Set
81         load_base for orphans that follow a section with load_base set.
83 2002-12-01  H.J. Lu <hjl@gnu.org>
85         * ld.texinfo: Remove the extra `;' in sample version script.
87 2002-11-30  Alan Modra  <amodra@bigpond.net.au>
89         * configure.host: Correct dynamic-linker for powerpc64 hosts.
91         * Makefile.am (eelf32ppcwindiss.c): Correct dependencies.
92         * Makefile.in: Regenerate.
94         * ld.h, ldcref.c, ldctor.c, ldctor.h, ldemul.c, ldemul.h, ldexp.c,
95         ldexp.h, ldfile.c, ldfile.h, ldgram.y, ldlang.c, ldlang.h, ldmain.c,
96         ldmain.h, ldmisc.c, ldwrite.c, lexsup.c, mri.c, pe-dll.c, pe-dll.h,
97         emulparams/elf32b4300.sh, emultempl/aix.em, emultempl/armcoff.em,
98         emultempl/armelf.em, emultempl/armelf_oabi.em, emultempl/beos.em,
99         emultempl/elf32.em, emultempl/generic.em, emultempl/gld960.em,
100         emultempl/gld960c.em, emultempl/hppaelf.em, emultempl/linux.em,
101         emultempl/lnk960.em, emultempl/m68kcoff.em, emultempl/mipsecoff.em,
102         emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em, emultempl/mmo.em,
103         emultempl/needrelax.em, emultempl/pe.em, emultempl/ppc64elf.em,
104         emultempl/sh64elf.em, emultempl/sunos.em, emultempl/ticoff.em: Replace
105         boolean with bfd_boolean, true with TRUE, false with FALSE.  Simplify
106         comparisons of bfd_boolean vars with TRUE/FALSE.  Formatting.
108 2002-11-27  David O'Brien  <obrien@FreeBSD.org>
110         * configure.host: Fix generic FreeBSD configuration entry.
112 2002-11-27  H.J. Lu <hjl@gnu.org>
114         * ld.texinfo: Add the missing `;' to sample version scripts.
116 2002-11-20  Alan Modra  <amodra@bigpond.net.au>
118         * emulparams/elf64ppc.sh (SEGMENT_SIZE): Don't define.
120 2002-11-14  Egor Duda  <deo@logos-m.ru>
122         * ldmain.c (main): Make runtime relocs disabled by default. Remove
123         assignment which has no effect.
124         * pe-dll.h (pe_create_import_fixup): Change prototype.
125         * pe-dll.c (make_runtime_pseudo_reloc): New function.
126         (pe_create_runtime_relocator_reference): Ditto.
127         (pe_create_import_fixup): Handle relocations with non-zero addends.
128         * emultempl/pe.em: Add options --enable-runtime-pseudo-reloc and
129         --disable-runtime-pseudo-reloc.
130         (make_import_fixup): Handle relocations with non-zero addends. Create
131         an external reference to _pei386_runtime_relocator symbol if at least
132         one pseudo reloc was created.
133         * ld.texinfo: Document --enable-runtime-pseudo-reloc and
134         --disable-runtime-pseudo-reloc options.
136 2002-11-12  Earl Chew <earl_chew@agilent.com>
138         * ldlang.c (lang_add_section): Discard debugging sections that have
139         been marked SEC_EXCLUDE.
141 2002-11-12  Nick Clifton  <nickc@redhat.com>
143         * configure.in (ALL_LINGUAS): Add da.
144         * configure: Regenerate.
145         * po/da.po: New Danish translation.
147 2002-11-12  Alan Modra  <amodra@bigpond.net.au>
149         * emultempl/ppc64elf.em (ppc_before_allocation): New function.
150         (LDEMUL_BEFORE_ALLOCATION): Define.
151         (gld${EMULATION_NAME}_finish): Run discard_info for relocatable
152         linking.
153         * emultemp/hppaelf.em ((gld${EMULATION_NAME}_finish): Likewise.
155 2002-11-11  Christopher Faylor  <cgf@redhat.com>
157         * configure.tgt (LIB_PATH): Default to searching w32api directory under
158         cygwin.
160 2002-11-11  Charles Wilson  <cwilson@ece.gatech.edu>
162         * pe-dll.c (autofilter_liblist): add libmingwex and libgcj to the list
163         of restricted auto-export libs.
165 2002-11-11  Charles Wilson  <cwilson@ece.gatech.edu>
167         * pe-dll.c (autofilter_liblist): Generalize library names to catch more
168         creative library naming instances like, e.g., libstdc++-2.a.
170 2002-11-06  Alexandre Oliva  <aoliva@redhat.com>
172         * emulparams/elf32btsmipn32.sh (TEXT_DYNAMIC): Define.
173         * emulparams/elf64btsmip.sh (TEXT_DYNAMIC): Likewise.
175 2002-11-07  Danny Smith  <dannysmith@users.sourceforge.net>
177         * deffilep.y (def_lex): Handle '@' as first character of an ID.
178         * pe-dll.c (auto-export): Filter on "_imp_" prefix, not "_imp__".
179         (make_one): Don't prefix decorated fastcall symbols with '_'.
180         (pe_process_import_defs): Likewise.
181         * emultempl/pe.em (pe_fixup_stdcalls): Don't fixup fastcall
182         symbols to cdecl names or vise-versa.
184 2002-10-13  Eric Kohl  <ekohl@rz-online.de>
186         * pe-dll.c (process_def_file): Handle fastcall symbols when
187         generating undecorated aliases.  Don't prefix decorated fastcall
188         symbols with '_'.
189         (fill_exported_offsets): Don't prefix decorated fastcall symbols
190         with '_'.
192 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
194         * emultempl/aix.em: Use include <> for generated headers.
195         * emultempl/beos.em: Likewise.
196         * emultempl/elf32.em: Likewise.
197         * emultempl/pe.em: Likewise.
198         * ldctor.c: Likewise.
199         * ldexp.c: Likewise.
200         * ldfile.c: Likewise.
201         * ldlang.c: Likewise.
202         * ldlex.c: Likewise.
203         * ldlex.l: Likewise.
204         * ldmain.c: Likewise.
205         * ldmisc.c: Likewise.
206         * ldwrite.c: Likewise.
207         * lexsup.c: Likewise.
208         * mri.c: Likewise.
209         * pe-dll.c: Likewise.
211 2002-10-23  Jakub Jelinek  <jakub@redhat.com>
213         * emultempl/elf32.em (place_orphan): Don't put non-allocated .rel*
214         sections into .rel{,a}.dyn.
216 2002-10-23  Nick Clifton  <nickc@redhat.com>
218         * lexsup.c (OPTION_NO_OMAGIC): Define.
219         (ld_options): Add "no-omagic" option.
220         (parse_args): Parse --no-omagic.
221         * ld.texinfo: Document --no-omagic.
222         * NEWS: Mention new option.
224 2002-10-21  Danny Smith  <dannysmith@users.sourceforeg.net>
226         * scripttempl/pe.sc (__RUNTIME_PSEUDO_RELOC_LIST__,
227         __RUNTIME_PSEUDO_RELOC_LIST_END__): Add only when relocating.
229 2002-10-22  Alexandre Oliva  <aoliva@redhat.com>
231         * emulparams/elf32bmipn32-defs.sh: Set ELFSIZE according to
232         emulation name.  Set LIB_PATH only for native tools, and
233         search the ABI-specific versions of NATIVE_LIB_DIRS before the
234         .../lib variants, not instead of them.  Mostly copied from...
235         * emulparams/elf32ppc.sh: ... here.  Fixed typo.
236         * emulparams/elf64bmip-defs.sh: Backed out.
237         * emulparams/elf64bmip.sh: Import elf32bmipn32-defs.sh again.
238         * emulparams/elf64btsmip.sh: Likewise.
239         (DATA_ADDR, NONPAGED_TEXT_START_ADDR, SHLIB_TEXT_START_ADDR,
240         TEXT_DYNAMIC): Removed.
242 2002-10-17  Alexandre Oliva  <aoliva@redhat.com>
244         * emulparams/elf32bmipn32-defs.sh (LIB_PATH): Set to /usr/lib32.
245         (GENERATE_SHLIB_SCRIPT): Set to yes.
246         (EXECUTABLE_SYMBOLS, WRITABLE_RODATA): Moved to...
247         * emulparams/elf32bmipn32.sh: here.
248         (GENERATE_SHLIB_SCRIPT): Deleted as redundant.
249         * emulparams/elf32btsmipn32.sh: Delete redundant unsets.
250         * emulparams/elf64bmip-defs.sh: New file.  Extend
251         elf32bmipn32-defs.sh by overiding ELFSIZE and LIB_PATH.
252         * emulparams/elf64bmip.sh: Bring in definitions from
253         elf64bmip-defs.sh.
254         (ELFSIZE, GENERATE_SHLIB_SCRIPT, LIB_PATH): Delete redundant
255         settings.
256         (WRITABLE_RODATA): Moved from elf32bmipn32-defs.sh.
257         * emulparams/elf64btsmip.sh: Bring in definitions from
258         elf64bmip-defs.sh.
259         (ELFSIZE, GENERATE_SHLIB_SCRIPT): Delete, redundant.
260         (EXECUTABLE_SYMBOLS, WRITABLE_RODATA): Delete redundant unsets.
262 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
264         * configure.tgt (s390x-*-linux*): Add elf_s390 emulation.
265         (s390-*-linux*): Add elf64_s390 emulation if want64.
266         * emulparams/elf64_sparc.sh (LIB_PATH): Update to match 2002-05-22
267         genscript.sh changes.
268         * emulparams/elf_x86_64.sh (LIB_PATH): Likewise.
269         * emulparams/elf64_s390.sh (LIB_PATH): Set up native 64 bit dirs.
271 2002-10-15  Alan Modra  <amodra@bigpond.net.au>
273         * ldlang.c (load_symbols): Revert last change.
275 2002-10-14  Alan Modra  <amodra@bigpond.net.au>
277         * ldlang.c (load_symbols): Don't call bfd_link_add_symbols when
278         just_syms_flag.
279         (lang_reasonable_defaults): Don't compare against false.
280         (size_input_section): Likewise.
281         (lang_size_sections_1): Likewise.
282         (lang_do_assignments): Likewise.
283         (lang_add_output): Likewise.
285         * Makefile.am: Run "make dep-am".
286         * Makefile.in: Regenerate.
287         * ldver.c: #include "bfdver.h".
289 2002-10-13  Stephane Carrez  <stcarrez@nerim.fr>
291         * scripttempl/elfm68hc11.sc: Use KEEP for .vectors, .installN,
292         .finiN section.
293         * scripttempl/elfm68hc12.sc: Likewise.
295 2002-10-11  Alan Modra  <amodra@bigpond.net.au>
297         * pe-dll.c (make_import_fixup_mark): Avoid type-punned pointer.
299         * ldgram.y (memory_spec): Provide empty action.
300         (section <NAME>): Likewise.
302 2002-10-10  Jakub Jelinek  <jakub@redhat.com>
304         * ldfile.c (ldfile_try_open_bfd): When searching skip linker scripts if
305         they have OUTPUT_FORMAT not matching actual output format.
306         * ldlang.c (lang_get_output_target): New function.
307         (open_output): Use it.
308         * ldlang.h (lang_get_output_target): New prototype.
310 2002-10-10  Alan Modra  <amodra@bigpond.net.au>
312         * emultempl/elf32.em (output_rel_find): Prefer .rel script sections
313         when orphan is .rel, .rela when orphan is .rela.
314         (gld${EMULATION_NAME}_place_orphan): Handle combreloc .rel* case
315         first.  Remove outsecname var.
317 2002-10-09  Richard Shann <richard.shann@superh.com>
318             Stephen Clarke <stephen.clarke@superh.com>
320         * Makefile.am: Add eshelf32_linux.o and
321         eshlelf32_linux.o, new emulations for sh64 Linux.
322         * Makefile.in: Regenerate.
323         * configure.tgt: Add sh64eb-*-linux* and sh64-*-linux* emulations.
324         * emulparams/shelf32_linux.sh: New file.
325         * emulparams/shlelf32_linux.sh: New file.
327 2002-10-08  H.J. Lu <hjl@gnu.org>
329         * ldlang.c (lang_file_exist): Removed.
330         (new_afile): Revert the last change.
331         * ldlang.h (lang_file_exist): Removed.
332         * lexsup.c (parse_args): Revert the last change.
334 2002-10-07  Ralf Habacker  <Ralf.Habacker@freenet.de>
336         * pe-dll.cc (autofilter_symbolprefixlist): Don't re-export
337         auto-import symbols.
338         (make_one): Create _nm_<symbol> for data only.
340 2002-10-05  Elias Athanasopoulos  <eathan@otenet.gr>
342         * ldlang.c (lang_file_exist): New function.
343         (new_afile): Abort if the filename to be added matches the linker
344         output filename.
345         * ldlang.h: Add prototype for lang_file_exist.
346         * lexsup.c (parse_args): Abort if the output filename matches
347         one of the input filenames.
349 2002-10-02  Alan Modra  <amodra@bigpond.net.au>
351         * emulparams/elf64ppc.sh (MAXPAGESIZE): Set to 0x10000.
353 2002-09-30  Alan Modra  <amodra@bigpond.net.au>
355         * scripttempl/elfd30v.sc: Order reloc sections placing .plt last.
356         * scripttempl/elfm68hc11.sc: Likewise.
357         * scripttempl/elfm68hc12.sc: Likewise.
359         * emultempl/elf32.em (output_rel_find): Always place orphan loadable
360         reloc sections just before .rel.plt/.rela.plt.
361         (gld${EMULATION_NAME}_place_orphan <.rel>): Remove combreloc code.
362         Only put loadable reloc sections in hold_rel.
364 2002-09-29  H.J. Lu <hjl@gnu.org>
366         * emulparams/elf32ppc.sh (OTHER_GOT_RELOC_SECTIONS): New.
368 2002-09-25  Daniel Jacobowitz  <drow@mvista.com>
370         From "Anita Kulkarni" <AnitaK@kpit.com>
371         * scripttempl/sh.sc: Handle .eh_frame* and .gcc_exc*
372         sections.
374 2002-09-25  Alan Modra  <amodra@bigpond.net.au>
376         * genscripts.sh (SEGMENT_SIZE): Use MAXPAGESIZE before
377         TARGET_PAGE_SIZE.
378         * scripttempl/elf.sc (DATA_SEGMENT_ALIGN): Incorporate
379         SEGMENT_SIZE alignment.
380         * emulparams/elf64ppc.sh (DATA_ADDR): Delete.
381         (SEGMENT_SIZE): Define.
383         * ldexp.c (fold_unary): New.  Split out from exp_fold_tree.
384         (fold_binary): Correct abs - non-abs case.
385         (fold_trinary): New.  Split out from exp_fold_tree.
387 2002-09-24  Alan Modra  <amodra@bigpond.net.au>
389         * emulparams/elf64ppc.sh (DATA_ADDR): Define.
390         * emulparams/elf64_aix.sh (DATA_ADDR): Don't use a fixed address
391         for start of .data, instead align up to 256M boundary.
392         * scripttempl/aix.sc: Likewise.
394 2002-09-22  Mark Elbrecht  <snowball3@softhome.net>
396         * scripttempl/i386go32.sc: Handle bss unique sections.
398 2002-09-21  Alan Modra  <amodra@bigpond.net.au>
400         * ldmisc.c (vfinfo <%C,%D,%G>): Always output bfd, section and offset.
402 2002-09-17  Stan Cox  <scox@redhat.com>
404         * emulparams/elf32bmipn32-defs.sh: New file.
405         * emulparams/elf32bmipn32.sh: Use elf32bmipn32-defs.sh.
406         * emulparams/elf32btsmipn32.sh: Likewise.
407         * emulparams/elf64bmip.sh: Likewise.
408         * emulparams/elf64btsmip.sh: Likewise.
410 2002-09-16  Bruno Haible  <bruno@clisp.org>
412         * emulparams/elf_i386_fbsd.sh: Set OUTPUT_FORMAT to
413         elf32-i386-freebsd.
414         * emulparams/elf64alpha_fbsd.sh: Set OUTPUT_FORMAT to
415         elf64-alpha-freebsd.
417 2002-09-11  Nick Clifton  <nickc@redhat.com>
419         * NEWS: New TI port supports both C4x and C3x series of DSPs.
421         * po/tr.po: Updated Turkish translation.
423 2002-09-06  Jeffrey A Law  (law@redhat.com)
425         * configure.tgt (h8300-*-hms*, h8500-*-hms*): Restore.
427 2002-09-02  Nick Clifton  <nickc@redhat.com>
429         * scripttempl/v850.sc: Add EXTERN references to __ctbpm __gp and
430         __ep.
431         * emulparams/v850.sh (TEMPLATE_NAME): Define.
433 2002-08-30  Nick Clifton  <nickc@redhat.com>
435         * scripttempl/elfd10v.sc (MEMORY): Remove UNIFIED, it is not
436         used.  Change INSN to start at 0x01000000 and extend for
437         256K (ignoring holes).  Start the STACK on a word aligned
438         boundary.
439         (.rodata): Start it at the READONLY_START_ADDR.
441 2002-08-30  Alan Modra  <amodra@bigpond.net.au>
443         * emulparams/elf32ppc.sh (ARCH): Set to "powerpc:common".
445 2002-08-28  Svein E. Seldal  <Svein.Seldal@solidas.com>
447         * Makefile.am: Add etic4xcoff.o in ALL_EMULATIONS list and
448         added makefile targets for this file.
449         * Makefile.in: Regenerate.
450         * configure.tgt: Added tic4x-coff and c4x-coff emulations.
451         * NEWS: Mention new port.
453 2002-08-28  Michael Hayes <m.hayes@elec.canterbury.ac.nz>
455         * emulparams/tic3xcoff.sh: New file.
456         * emulparams/tic4xcoff.sh: New file.
457         * scripttempl/tic3xcoff.sc: New file.
458         * scripttempl/tic4xcoff.sc: New file.
460 2002-08-28  Alan Modra  <amodra@bigpond.net.au>
462         * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Replace strtoll,
463         strtoul and strtoull with bfd_scan_vma.
464         (gld${EMULATION_NAME}_read_file): Likewise.
466 2002-08-28  Alan Modra  <amodra@bigpond.net.au>
468         * configure.tgt: Remove h8[35]00-*-hms*.  Add h8500-*-rtems*.
470 2002-08-27  Egor Duda  <deo@logos-m.ru>
472         * scripttempl/pe.sc: Handle .rdata_runtime_pseudo_reloc sections.
473         Add symbols for application to access them.
475 2002-08-27  Nick Clifton  <nickc@redhat.com>
477         * emultempl/armelf.em:  Revert this patch, it is not needed.
479         2002-08-22  Adam Nemet  <anemet@lnxw.com>
481 2002-08-20 Dan Kegel <dank@kegel.com>
483         * configure.in: added --with-lib-path argument to ld's configure
484         to set LIB_PATH.
485         * ld/NEWS: Document new switch.
486         * ld/README: Mention new switch.
487         * configure: Regenerate.
488         * Makefile.in: Regenerate.
490         Based on this patch:
491         2001-04-25  Christopher Faylor <cgf@cygnus.com>
493         * Makefile.in (LIB_PATH): Make configurable.
494         (GENSCRIPTS): Set LIB_PATH in environment.
495         * configure.in: Substitute LIB_PATH.
497 2002-08-22  Adam Nemet  <anemet@lnxw.com>
499         * emultempl/armelf.em: Include elf-bfd.h and elf/arm.h.
500         (arm_elf_finish): Set the last bit of DT_INIT and DT_FINI
501         depending on the type of the function.
502         (arm_elf_convert_thumb_symbol_to_address): New function.
504 2002-08-22  Graeme Peterson  <gp@qnx.com>
506         * Makefile.am: Add esh{l}elf_nto.o files.
507         * Makefile.in: Regenerate.
508         * configure.tgt: Add support for sh-**-nto* targets.
509         * emulparams/shelf_nto.sh: New file.
510         * emulparams/shlelf_nto.sh: New file.
512 2002-08-21  John David Anglin  <dave@hiauly1.hia.nrc.ca>
514         * ldlang.c (offsetof): Define if not defined.
516 2002-08-14  H.J. Lu <hjl@gnu.org>
518         * configure.tgt: Always enable 64bit emulations for 32bit
519         Linux/mips.
521 2002-08-13  Alan Modra  <amodra@bigpond.net.au>
523         * emulparams/elf32_dlx.sh (TARGET_PAGE_SIZE): Set to 1.
524         (MAXPAGESIZE): Set to 1.
526         * ld.h (ALIGN_N): Delete.
527         * ldexp.h (align_n): Declare.
528         * ldexp.c (align_n): New function.
529         (fold_binary): Use align_n instead of ALIGN_N.
530         (exp_fold_tree): Likewise.
531         * ldlang.c (lang_size_sections_1): Likewise.
532         (lang_one_common): Likewise.
533         * ld.texinfo (ALIGN): Remove power of 2 restriction.
535 2002-07-31  Graeme Peterson  <gp@qnx.com>
537         * configure.tgt: Add support for powerpc{le}-*-nto* targets.
538         * Makefile.am: Add eelf32{l}ppcnto.o files.
539         * Makefile.in: Regenerate.
540         * emulparams/elf32lppcnto.sh: New file.
541         * emulparams/elf32ppcnto.sh: New file.
543 2002-08-07  H.J. Lu <hjl@gnu.org>
545         * ld.texinfo: Document --no-undefined-version.
547         * ldlang.c (lang_new_vers_pattern): Set the `symver' and
548         `script.' fields to 0.
550         * ldmain.c (main): Initialize the allow_undefined_version to
551         true.
553         * lexsup.c (OPTION_NO_UNDEFINED_VERSION): New.
554         (ld_options): Add --no-undefined-version.
555         (parse_args): Support OPTION_NO_UNDEFINED_VERSION.
557 2002-08-07  Nick Clifton  <nickc@redhat.com>
559         * emultempl/armelf.em (arm_elf_before_allocation): Only search for
560         an interworking bfd if there are input bfds. (107501)
562 2002-08-06  Alan Modra  <amodra@bigpond.net.au>
564         * emultempl/aix.em (gld*_before_parse): Set default arch.  Reverts
565         2002-05-10 change.
567 2002-08-01  Nick Clifton  <nickc@redhat.com>
569         * emulparams/armelf.sh: Revert previous delta.
570         * scripttempl/elf.sc: Revert previous delta.
572 2002-07-31  H.J. Lu <hjl@gnu.org>
574         * configure.tgt (powerpc*-*-linux*): Enable elf64ppc for
575         --enable-64-bit-bfd.
577 2002-07-31  H.J. Lu <hjl@gnu.org>
579         * configure.tgt: Enable x86-64 emulation for Linux/i386 if
580         64bit BFD is selected.
582 2002-07-31  H.J. Lu <hjl@gnu.org>
584         * configure.tgt: Enable 64bit emulations for 32bit Linux/mips
585         if 64bit BFD is selected.
587 2002-07-31  Ian Dall  <ian@sibyl.beware.dropbear.id.au>
589         * emultempl/netbsd.em (LDEMUL_BEFORE_PARSE): New file to custom set
590         link_info.common_skip_ar_aymbols.
591         * emulparams/ns32knbsd.sh (EXTRA_EM_FILE): Refer to extra file.
593         * ldmain.c (main): Initialize new field
594         link_info.common_skip_ar_aymbols.
596 2002-07-31  Adam Nemet  <anemet@lnxw.com>
598         * emulparams/armelf.sh (OTHER_PLT_SECTIONS): New variable.  Set it
599         to .plt.thumb.
600         * scripttempl/elf.sc: Comment it.  Use the same way as ${PLT} is
601         used.
603 2002-07-31  Nick Clifton  <nickc@redhat.com>
605         * NEWS: Retroactively add entry for Lars Brinkhoff's contribution
606         of the PDP-11 and 2.11BSD a.out support.
608 2002-07-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
610         * Makefile.am (eelf32btsmipn32.o, eelf32ltsmipn32.o): New emulations
611         for n32 ABI support.
612         * Makefile.in: Regenerate.
613         * configure.tgt (mips64*el-*-linux-gnu*,mips64*-*-linux-gnu*): Add
614         n32 ABI emulations for these 64 bit targets.
615         * emulparams/elf32bmipn32.sh: Expand comment.
616         * emulparams/elf32btsmipn32.sh: New file, for traditional big endian
617         n32 ABI.
618         * emulparams/elf32ltsmipn32.sh: Likewise for little endian.
620 2002-07-30  Graeme Peterson  <gp@qnx.com>
622         * configure.tgt: Add support for arm-*-nto target.
623         * Makefile.am: Add earmnto.o file.
624         * Makefile.in: Regenerate.
625         * NEWS: Mention port of ARM support to QNX.
626         * emulparams/armnto.sh: New file.
628 2002-07-30  Jakub Jelinek  <jakub@redhat.com>
630         * ldlang.c (lang_add_section): Don't turn .tbss into normal sections
631         for relocatable link.
632         (lang_size_sections_1): Don't make .tbss zero size for relocatable
633         link.
635 2002-07-26  Bernd Schmidt  <bernds@redhat.com>
637         * emulparams/elf32frv.sh (OTHER_RELOCATING_SECTIONS): Delete.
638         (STACK_ADDR): New.
640 2002-07-25  Nick Clifton  <nickc@redhat.com>
642         * po/sv.po: Updated Swedish translation.
643         * po/es.po: Updated Spanish translation.
644         * po/fr.po: Updated French translation.
646 2002-07-24  Nick Clifton  <nickc@redhat.com>
648         * po/sv.po: Updated Swedish translation.
649         * po/es.po: Updated Spanish translation.
651 2002-07-23  Nick Clifton  <nickc@redhat.com>
653         * po/fr.po: Updated French translation.
655 2002-07-20  Alan Modra  <amodra@bigpond.net.au>
657         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
658         bomb on /DISCARD/ input section.
659         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
660         * emultempl/mmo.em (mmo_place_orphan): Likewise.
662 2002-07-19  Hans-Peter Nilsson  <hp@bitrange.com>
664         * emultempl/mmo.em (mmo_place_orphan): Handle case of no .text
665         output section.
667 2002-07-16  Denis Chertykov  <denisc@overta.ru>
668             Nick Clifton  <nickc@redhat.com>
669             Frank Ch. Eigler  <fche@redhat.com>
670             John Healy  <jhealy@redhat.com>
672         * configure.tgt: Add support for ip2k-elf.
673         * Makefile.am: Add support for ip2k-elf.
674         * Makefile.in: Regenerate.
675         * emulparams/elf32ip2k.sh: New file.
676         * scripttempl/ip2k.sc: New file
677         * NEWS: Mention support for new port.
679 2002-07-16  Nick Clifton  <nickc@cambridge.redhat.com>
681         * NEWS: Add 'Changes in 2.13'.
683 2002-07-14  H.J. Lu <hjl@gnu.org>
685         * ld.texinfo: Document a .symver takes precedence over a
686         version script.
688 2002-07-12  Alan Modra  <amodra@bigpond.net.au>
690         * emulparams/elf64ppc.sh (ARCH): Set to powerpc:common64.
691         (COMMONPAGESIZE): Define.
693 2002-07-09  Alan Modra  <amodra@bigpond.net.au>
695         * emulparams/hppanbsd.sh: Remark that hppaobsd.sh references this file.
697 2002-07-09  Federico G. Schwindt <fgsch@olimpo.com.br>
699         * configure.tgt: Add support for alpha-*-openbsd*, hppa-*-openbsd*,
700         powerpc-*-openbsd* and sparc64-*-openbsd*.
701         * Makefile.am (ALL_EMULATIONS): Add ehppaobsd.o.
702         * Makefile.in: Regenerate.
703         * emulparams/hppaobsd.sh: New file.
705 2002-07-05  Alan Modra  <amodra@bigpond.net.au>
707         * ldlang.c (print_wild_statement): Fix output formatting.
709 2002-07-04  Alan Modra  <amodra@bigpond.net.au>
711         * ldlang.c: (strip_excluded_output_sections): New function.
712         (lang_process): Call it.
713         (lang_size_sections_1): Revert 2002-06-10 change.
715 2002-07-03  Alan Modra  <amodra@bigpond.net.au>
717         * Makefile.am (check-DEJAGNU): Revert 2002-06-25 change.
718         Run "make dep-am".
719         * Makefile.in: Regenerate.
721 2002-07-02  Alan Modra  <amodra@bigpond.net.au>
723         * ldfile.c (ldfile_try_open_bfd): Formatting.
725         * ldmisc.c (demangle): Move so that it doesn't intrude between
726         vfinfo comment and body.  Add comment.
728 2002-07-01  John David Anglin  <dave@hiauly1.hia.nrc.ca>
730         * emulparams/vax.sh (OUTPUT_FORMAT): Use a.out-vax-bsd format.
732 2002-07-01  Alan Modra  <amodra@bigpond.net.au>
734         * ldlang.h (entry_sym): Make it a struct bfd_sym_chain.
735         * ldlang.c (entry_sym): Likewise.
736         (ldlang_undef_chain_list_type): Likewise.
737         (lang_finish): Adjust references to entry_symbol.
738         (lang_add_entry): Likewise.
739         (lang_gc_sections): Use link_info.gc_sym_list.
740         (lang_process): Set link_info.gc_sym_list.
741         * ldlex.l: Include bfdlink.h.
742         * ldmain.c (main): Init link_info.gc_sym_list.
743         * emultempl/aix.em: Adjust references to entry_symbol.
744         * emultempl/armcoff.em: Likewise.
745         * emultempl/armelf.em: Likewise.
746         * emultempl/pe.em: Likewise.
747         * emultempl/ppc64elf.em (ppc_after_open): New function.
748         (LDEMUL_AFTER_OPEN): Define.
749         * emulparams/elf64ppc.sh: KEEP .opd sections.
751 2002-06-29  Stephane Carrez  <stcarrez@nerim.fr>
753         * emulparams/m68hc12elfb.sh (EEPROM_MEMORY): Define.
754         * emulparams/m68hc11elfb.sh (EEPROM_MEMORY): Define.
755         * emulparams/m68hc11elf.sh (EEPROM_SIZE): Define.
756         (EEPROM_START_ADDR): Define.
757         (EEPROM_MEMORY): Define.
758         * emulparams/m68hc12elf.sh: Likewise.
759         * scripttempl/elfm68hc11.sc: Handle .eeprom section; handle .softregs
760         section to put soft registers in .page0.
761         * scripttempl/elfm68hc12.sc: Likewise but put soft registers in bss.
763 2002-06-26  John David Anglin  <dave@hiauly1.hia.nrc.ca>
765         * emulparams/hppa64linux.sh (OTHER_GOT_RELOC_SECTIONS): Add rela.opd
766         section.  Add ${RELOCATING-0}.
768 2002-06-26  J"orn Rennecke <joern.rennecke@superh.com>
770         * emulparams/shelf.sh (STACK_ADDR): Don't define.
771         (OTHER_SECTIONS): Define.
772         * emulparams/shelf_nbsd.sh ((STACK_ADDR): Don't undef.
773         (OTHER_SECTIONS): Undef.
775 2002-06-26  Alan Modra  <amodra@bigpond.net.au>
777         * ldmisc.c (demangle): Restore dots stripped from sym name.
779 2002-06-25  H.J. Lu <hjl@gnu.org>
781         * Makefile.am (check-DEJAGNU): Set LC_ALL=C and export it.
782         * Makefile.in: Regenerated.
784 2002-06-20  Nick Clifton  <nickc@cambridge.redhat.com>
786         * ld.texinfo (Bug Reporting): Update text to suggest a limit on
787         the size of attached object files, to allow make the object files
788         available via FTP or HTTP and to mention that the mail will be
789         sent to a mailing list.
791 2002-06-20  Nathanael Nerode  <neroden@twcny.rr.com>
793         * ld/configure.host (romp): Drop support.
795 2002-06-18  Chris Demetriou  <cgd@broadcom.com>
797         * emultempl/mipself.em (mips_elf${ELFSIZE}_check_sections): Check
798         section flags for SEC_DATA, rather than for SEC_CODE being unset.
800 2002-06-18  Chris Demetriou  <cgd@broadcom.com>
802         * emultempl/mipself.em (mips_elf${ELFSIZE}_check_sections): Fix
803         format specifier used to print BFD name.
805 2002-06-18  Dave Brolley  <brolley@redhat.com>
807         From Catherine Moore, Michael Meissner, Jim Blandy:
808         * emulparams/elf32frv.sh: New file.
809         * configure.tgt: Support frv-*-*.
810         * Makefile.am (ALL_EMULATIONS): Add eelf32frv.o.
811         (eelf32frv.c): New target.
813 2002-06-17  Tom Rix  <trix@redhat.com>
815         * emultempl/elf32.em: gld*_get_script:  Check for
816         GENERATE_COMBRELOC_SCRIPT.
817         * scripttempl/elfd10v.sc : Fix STACK and INSN.
818         * emulparams/d10velf.sh : Fix TEXT_START_ADDR.
820 2002-06-13  J"orn Rennecke <joern.rennecke@superh.com>
822         * configure.tgt: Add support for sh[1234]*le*-*-elf, sh[1234]*-*-elf.
824 2002-06-12  H.J. Lu <hjl@gnu.org>
826         * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Return
827         false if xvec doesn't match.
829 2002-06-10  Richard Sandiford  <rsandifo@redhat.com>
831         * ldlang.c (lang_size_sections_1): Skip removed output sections.
833 2002-06-08  Alan Modra  <amodra@bigpond.net.au>
835         * ldexp.c: Replace CONST with const.
836         * ldfile.c: Likewise.
837         * ldfile.h: Likewise.
838         * ldlex.l: Likewise.
839         * mri.c: Likewise.
840         * pe-dll.h: Likewise.
842 2002-06-07  Alan Modra  <amodra@bigpond.net.au>
844         * emultempl/ppc64elf.em (new_vers_pattern): Warning fix.
846 2002-06-07  Charles Wilson  <cwilson@ece.gatech.edu>
848         * ld/ldmain.c (main): initialize link_info.pei386_auto_import
849         to -1 == implicit enable.
850         * ld/emultempl/pe.em (gld_${EMULATION_NAME}_before_parse):
851         initialize link_info.pei386_auto_import to -1 == implicit
852         enable.
853         (gld_${EMULATION_NAME}_parse_args): When processing
854         --enable-auto-import and --disable-auto-import options, use
855         '1' and '0' instead of 'true' and 'false'.
856         (pe_find_data_imports): Only issue message about auto-import
857         when the feature is implicitly enabled.  Downgrade message to
858         informational instead of warning.
860 2002-06-07  Alan Modra  <amodra@bigpond.net.au>
862         * scripttempl/elf.sc (.tbss): Fix mismatched parentheses/braces.
864 2002-06-06  John David Anglin  <dave@hiauly1.hia.nrc.ca>
866         * configure.host (hppa*64*-*-hpux11*): Define NATIVE_LIB_DIRS,
867         HOSTING_CRT0 and HOSTING_LIBS.
869 2002-06-05  J"orn Rennecke <joern.rennecke@superh.com>
871         * configure.tgt (shle*-*-elf*, sh64le-*-elf*): New configurations.
873 2002-06-05  Jason Thorpe  <thorpej@wasabisystems.com>
875         * emulparams/ns32knbsd.sh (EXECUTABLE_SYMBOLS): Set _DYNAMIC to 0.
876         (NONPAGED_TEXT_START_ADDR): Set to 0x1000.
878 2002-06-05  Alan Modra  <amodra@bigpond.net.au>
880         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Place
881         SEC_EXCLUDE sections when doing a relocatable link.
883 2002-06-04  Jason Thorpe  <thorpej@wasabisystems.com>
885         * Makefile.am (ALL_EMULATIONS): Add eshelf32_nbsd.o,
886         eshlelf32_nbsd.o, eshelf64_nbsd.o, and eshlelf64_nbsd.o.
887         (eshelf32_nbsd.c, eshelf64_nbsd.c, eshlelf32_nbsd.c)
888         (eshlelf64_nbsd.c): New rules.
889         * Makefile.in: Regenerate.
890         * configure.tgt (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
891         (sh64-*-netbsd*): New targets.
892         * emulparams/shelf32_nbsd.sh: New file.
893         * emulparams/shelf64_nbsd.sh: New file.
894         * emulparams/shlelf32_nbsd.sh: New file.
895         * emulparams/shlelf64_nbsd.sh: New file.
897 2002-06-04  Alan Modra  <amodra@bigpond.net.au>
899         * ldlang.c (section_already_linked): Call bfd_discard_group.  Typo fix.
901 2002-06-02  Marek Michalkiewicz  <marekm@amelek.gda.pl>
903         * scripttempl/avr.sc: Changes to support current GCC and avr-libc,
904         C++ constructors/destructors, loosely based on the m68hc11 port.
906 2002-05-31  Alan Modra  <amodra@bigpond.net.au>
908         * Makefile.in: Regenerate.
909         * aclocal.m4: Regenerate.
910         * config.in: Regenerate.
911         * configure: Regenerate.
913 2002-05-31  Graeme Peterson  <gp@qnx.com>
915         * Makefile.am (ALL_EMULATIONS): Add ei386nto.o.
916         (ei386nto.c): Add rule.
917         * Makefile.in: Regenerate.
918         * configure.tgt: Add i[3456]86-*-nto-qnx*.
919         * emulparams/i386nto.sh: New file.
921 2002-05-29  Jason Thorpe  <thorpej@wasabisystems.com>
923         * NEWS: Add entry for VAX ELF support.
925 2002-05-29  Matt Thomas  <matt@3am-software.com>
926             Jason Thorpe  <thorpej@wasabisystems.com>
928         * Makefile.am (ALL_EMULATIONS): Add eelf32vax.o and evaxnbsd.o.
929         (eelf32vax.c)
930         (evaxnbsd.c): New rules.
931         * Makefile.in: Regenerate.
932         * configure.tgt (vax-*-netbsdelf*)
933         (vax-*-netbsdaout*)
934         (vax-*-netbsd*): New targets.
935         * emulparams/elf32vax.sh: New file.
936         * emulparams/vaxnbsd.sh: New file.
938 2002-05-29  Adam Nemet  <anemet@lnxw.com>
940         * emultempl/armelf.em (arm_elf_after_open): Don't determine
941         bfd_for_interwork, instead add glue sections to each input bfd.
942         (bfd_for_interwork): New global.
943         (arm_elf_set_bfd_for_interworking): New function.
944         (arm_elf_before_allocation): Use it.
946 2002-05-28  Kuang Hwa Lin <kuang@sbcglobal.net>
948         * Makefile.am: Add DLX make target.
949         * configure.tgt: Add DLX configuration.
950         * Makefile.in: Regenerate.
951         * emulparams/elf32_dlx.sh: New file
952         * scripttempl/dlx.sc: New file
954 2002-05-27  Per Lundberg  <per@caleb.dnsalias.org>
956         * Makefile.am (eelf_i386_chaos): Use elf_chaos.sc script.
957         * Makefile.in: Regenerate.
958         * emulparams/elf_chaos.sh: Use elf_chaos script.
959         * scripttempl/elf_chaos.sc: New file.
961 2002-05-27  Richard Sandiford  <rsandifo@redhat.com>
963         * ldlang.c (lang_size_sections_1): Move check for conflicting load
964         addresses and regions from here...
965         (lang_get_regions): ...to this new function.
966         (lang_leave_output_section_statement): Use lang_get_regions.
967         (lang_leave_overlay): Likewise.
968         * mri.c (mri_draw_tree): Pass null as last argument to
969         lang_leave_output_section_statement.
970         * emultempl/elf32.em (gld*_place_orphan): Likewise.
971         * emultempl/mmo.em (mmo_place_orphan): Likewise.
972         * emultempl/pe.em (gld*_place_orphan): Likewise.
974 2002-05-26  Jason Thorpe  <thorpej@wasabisystems.com>
976         * configure.tgt: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*.
978 2002-05-25  Kazu Hirata  <kazu@cs.umass.edu>
980         * ldemul.c: Fix formatting.
981         * ldfile.c: Likewise.
982         * pe-dll.c: Likewise.
983         * pe-dll.h: Likewise.
985 2002-05-25  Alan Modra  <amodra@bigpond.net.au>
987         * ldlang.c (lang_process): Formatting, grammar.
989         * ldlex.l: Use #include "" instead of <> for local header files.
991 2002-05-24  TAMURA Kent <kent@netbsd.org>
993         * configure.tgt: Add a target for i386-netbsdpe.
995 2002-05-23  Jakub Jelinek  <jakub@redhat.com>
997         * scripttempl/elf.sc: Add .rel{,a}.t{bss,data}, .tdata and .tbss.
998         * ldlang.c (lang_add_section): Set SEC_THREAD_LOCAL for
999         output section if necessary.  Handle .tbss.
1000         (lang_size_sections): Clear _raw_size for .tbss section
1001         (it allocates space in PT_TLS segment only).
1002         * ldwrite.c (build_link_order): Build link order for .tbss too.
1004 2002-05-23  Alan Modra  <amodra@bigpond.net.au>
1006         * configure.in: Correct spelling of AC_PREREQ.
1008 2002-05-21  Danny Smith  <dannysmith@users.sourceforge.net>
1010         * pe-dll.c (autofilter_liblist): Add more system libs excluded by
1011         default.
1012         (autofilter_objlist): Add crtbegin.o, crtend.o.
1014 2002-05-21  Danny Smith  <dannysmith@users.sourceforge.net>
1016         * emultempl/pe.em (OPTION_EXCLUDE_LIBS): Add new define.
1017         (longopts): Add new option --exclude-libs.
1018         (gld_${EMULATION_NAME}_list_options): Give quick help about it.
1019         (gld_${EMULATION_NAME}_parse_args): Use it.
1020         * pe-dll.h (pe_dll_add_excludes): Add second param to prototype.
1021         * pe-dll.c (exclude_list_struct): Add field type to distinguish symbols
1022         from whole archives.
1023         (pe_dll_add_excludes): Set excludes->type.
1024         (auto_export): Add new variable libname and set to archive basename if
1025         abfd.  Use it when filtering default and user-specified libarary
1026         excludes.  Let string "ALL" mean all libs when filtering user-specified
1027         libs.
1028         * ld.texinfo: Document --exclude-libs.
1030 2002-05-22  Alan Modra  <amodra@bigpond.net.au>
1032         * ldemul.c (ldemul_new_vers_pattern): New function.
1033         * ldemul.h (ldemul_new_vers_pattern): Declare.
1034         (struct ld_emulation_xfer_struct): Add new_vers_pattern.
1035         * ldlang.c (lang_new_vers_pattern): Call ldemul_new_vers_pattern.
1036         * emultempl/ppc64elf.em (dotsyms): New static var.
1037         (gld${EMULATION_NAME}_new_vers_pattern): New function.
1038         (LDEMUL_NEW_VERS_PATTERN): Define.
1039         (PARSE_AND_LIST_PROLOGUE): Add OPTION_DOTSYMS, OPTION_NO_DOTSYMS.
1040         (PARSE_AND_LIST_LONGOPTS): Likewise.
1041         (PARSE_AND_LIST_ARGS_CASES): Handle them.
1042         * emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Update
1043         initialiser.
1044         * emultempl/armcoff.em: Likewise.
1045         * emultempl/armelf_oabi.em: Likewise.
1046         * emultempl/beos.em: Likewise.
1047         * emultempl/elf32.em: Likewise.
1048         * emultempl/generic.em: Likewise.
1049         * emultempl/gld960.em: Likewise.
1050         * emultempl/gld960c.em: Likewise.
1051         * emultempl/linux.em: Likewise.
1052         * emultempl/lnk960.em: Likewise.
1053         * emultempl/m68kcoff.em: Likewise.
1054         * emultempl/mipsecoff.em: Likewise.
1055         * emultempl/pe.em: Likewise.
1056         * emultempl/sunos.em: Likewise.
1057         * emultempl/ticoff.em: Likewise.
1058         * emultempl/vanilla.em: Likewise.
1060 2002-05-22  Alan Modra  <amodra@bigpond.net.au>
1062         * genscripts.sh (LIB_PATH): For native targets, concatenate $libdir
1063         and $NATIVE_LIB_DIRS.  Add $tool_lib before other libs.
1064         (LIB_SEARCH_DIRS): No need to use "tr".
1065         (COMPILE_IN): Only set for native targets.
1066         * configure.host (NATIVE_LIB_DIRS): Specify all native search dirs
1067         here, rather than adding lib:/usr/lib:/usr/local/lib in genscripts.sh.
1068         * configure.tgt (powerpc*): Set tdir_*.
1069         (powerpcle*): Correct targ_extra_emuls.
1070         * emulparams/elf32ppc.sh (LIB_PATH): Set up native 64 bit dirs.
1071         * emulparams/elf64ppc.sh (LIB_PATH): Likewise.
1073 2002-05-22  Alan Modra  <amodra@bigpond.net.au>
1075         * emultempl/pe.em (set_pe_subsystem): Don't set "cmdline" when
1076         calling lang_add_entry.
1078 2002-05-21  H.J. Lu  (hjl@gnu.org)
1080         * emultempl/elf32.em (gld${EMULATION_NAME}_parse_args): Handle
1081         "-z muldefs".
1082         (gld${EMULATION_NAME}_list_options): Add "-z muldefs".
1084         * ld.texinfo: Updated for --allow-multiple-definition and
1085         "-z muldefs".
1087         * ldmain.c (main): Initialize the allow_multiple_definition
1088         field to false.
1090         * lexsup.c (OPTION_ALLOW_MULTIPLE_DEFINITION): New.
1091         (ld_options): Add --allow-multiple-definition.
1092         (parse_args): Support OPTION_ALLOW_MULTIPLE_DEFINITION.
1094 2002-05-21  Jason Thorpe  <thorpej@wasabisystems.com>
1096         * Makefile.am (ALL_EMULATIONS): Add earmelfb_nbsd.o.
1097         (earmelfb_nbsd.c): New rule.
1098         * Makefile.in: Regenerate.
1099         * configure.tgt (armeb-*-netbsdelf*): New target.
1100         (arm-*-netbsdelf*): Add armelfb_nbsd to targ_extra_emuls.
1101         (arm-*-netbsd*): Likewise.
1102         * emulparams/armelfb_nbsd.sh: New file.
1104 2002-05-18  Tom Rix  <trix@redhat.com>
1106         * emultempl/aix.em (gld*_parse_args): Add -bnortl and -bnortllib
1107         support.
1109 2002-05-17  Marek Michalkiewicz  <marekm@amelek.gda.pl>
1111         * Makefile.am: Add new emulations avr1, avr2, avr3, avr4, avr5.
1112         * Makefile.in: Regenerate.
1113         * configure.tgt (avr-*-*): Add avr[1-5] to targ_extra_emuls.
1115 2002-05-16  Marek Michalkiewicz  <marekm@amelek.gda.pl>
1117         * emulparams/avr1.sh: New file.
1118         * emulparams/avr2.sh: New file.
1119         * emulparams/avr3.sh: New file.
1120         * emulparams/avr4.sh: New file.
1121         * emulparams/avr5.sh: New file.
1122         * scripttempl/avr.sc: New file.
1124 2002-05-15  Alan Modra  <amodra@bigpond.net.au>
1126         * ldlang.c (section_already_linked): Call bfd_link_just_syms.
1127         (lang_place_orphans): Abort if just_syms_flag.
1129 2002-05-10  Tom Rix  <trix@redhat.com>
1131         * emultempl/aix.em: (gld*_set_output_arch): New function. Use
1132         architecture and machine information in the output bfd.
1133         (gld*_before_parse): Remove old arch and machine code.
1134         (choose_target): Rename to gld*_choose_target.
1135         (rtld): Change type to int.
1136         * ldfile.c (ldfile_try_open_bfd): Disable compatiblity check for
1137         objects in XCOFF archives.
1138         * ldfile.h: Update copyright date.
1140 2002-05-10  Jakub Jelinek  <jakub@redhat.com>
1142         * ldmain.c (main): Enable -z combreloc by default.
1144 2002-05-07  Federico G. Schwindt <fgsch@olimpo.com.br>
1146         * Makefile.am: Honour DESTDIR.
1147         * Makefile.in: Regenerate.
1149 2002-05-07  Richard Sandiford  <rsandifo@redhat.com>
1151         * ldlang.h (lang_output_section_statement_type): Add update_dot_tree.
1152         (lang_enter_overlay): Remove the last two parameters.
1153         (lang_leave_overlay): Take them here instead.
1154         * ldgram.y (memspec_at_opt): Set $$ to null if no region is given.
1155         (section): Pass LMA and crossref flag to lang_leave_overlay rather
1156         than lang_enter_overlay.
1157         * ldlang.c (lang_memory_region_lookup): Return null for null names.
1158         (lang_output_section_statement_lookup): Initialize update_dot_tree.
1159         (lang_size_sections_1): Evaluate it.
1160         (lang_leave_output_section_statement): Rework LMA lookup.
1161         (overlay_lma, overlay_nocrossrefs): Remove.
1162         (lang_enter_overlay): Remove LMA and crossref arguments.
1163         (lang_enter_overlay_section): Don't set the LMA here.
1164         (lang_leave_overlay): Take LMA and crossref arguments.  Move the '.'
1165         assignment to the last section's update_dot_tree.  Unconditionally
1166         use the load and run-time regions specified in the OVERLAY statement.
1167         Likewise the first section's LMA.  Only set the other sections' LMAs
1168         when no load region is given.
1170 2002-05-06  Nick Clifton <nickc@redhat.com>
1172         * po/sv.po: New translation.
1174 2002-05-04  Alan Modra  <amodra@bigpond.net.au>
1176         * emultempl/hppaelf.em (build_section_lists): New function.
1177         (gld${EMULATION_NAME}_finish): Call elf32_hppa_setup_section_lists
1178         and build_section_lists.
1180 2002-05-03  Kazu Hirata  <kazu@cs.umass.edu>
1182         * ld.h: Fix formatting.
1183         * ldexp.c: Likewise.
1184         * ldfile.c: Likewise.
1185         * ldlang.c: Likewise.
1186         * ldmain.c: Likewise.
1187         * lexsup.c: Likewise.
1188         * pe-dll.c: Likewise.
1190 2002-05-02  Alan Modra  <amodra@bigpond.net.au>
1192         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation):
1193         Adjust for ppc64_elf_set_toc change.  #include libbfd.h.
1194         (build_section_lists): Do output_section tests here.
1196 2002-04-30  Tom Rix  <trix@redhat.com>
1198         * emultempl/aix.em : (gld*_parse_arge): Formatting changes.
1200 2002-05-01  Alan Modra  <amodra@bigpond.net.au>
1202         Long branch stubs, multiple stub sections.
1203         * emultempl/ppc64elf.em: Include ldctor.h.
1204         (stub_file): New var.
1205         (group_size): New var.
1206         (ppc_create_output_section_statements): New function.
1207         (struct hook_stub_info): New.
1208         (hook_in_stub): New function.
1209         (ppc_add_stub_section): New function.
1210         (ppc_layout_sections_again): New function.
1211         (build_section_lists): New function.
1212         (gld${EMULATION_NAME}_finish): Rewrite.
1213         (real_func): New var.
1214         (ppc_for_each_input_file_wrapper): New function.
1215         (ppc_lang_for_each_input_file): New function.
1216         (lang_for_each_input_file): Define.
1217         (PARSE_AND_LIST_PROLOGUE): Define.
1218         (PARSE_AND_LIST_LONGOPTS): Define.
1219         (PARSE_AND_LIST_OPTIONS): Define.
1220         (PARSE_AND_LIST_ARGS_CASES): Define.
1221         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
1223 2002-04-30  Tom Rix  <trix@redhat.com>
1225         * emultempl/aix.em (gld*_parse_arge, gld*_before_allocation): Add
1226         -blibpath, -bnolibpath support.
1228 2002-04-30  Mark Mitchell  <mark@codesourcery.com>
1230         * Makefile.am (ALL_EMULATIONS): Add elf32ppcwindiss.o.
1231         (eelf32ppcwindiss.c): New target.
1232         * Makefile.in: Regenerated.
1233         * configure.tgt: Add support for powerpc-*-windiss.
1234         * emulparams/elf32ppcwindiss.sh: New file.
1236 2002-04-30  Richard Sandiford  <rsandifo@redhat.com>
1238         * ldlang.c (print_assignment): Update print_dot for assignments to ".".
1239         * ldexp.c (exp_print_token): Add "infix_p" argument.
1240         (exp_print_tree): Update accordingly.
1242 2002-04-28  Alan Modra  <amodra@bigpond.net.au>
1244         * Makefile.am (mpw): New maintainer mode rule to make mpw-*.c files.
1245         * Makefile.in: Regenerate.
1246         * mpw-elfmips.c: Delete.
1247         * mpw-eppcmac.c: Delete.
1248         * mpw-esh.c: Delete.
1249         * mpw-idtmips.c: Delete.
1251 2002-04-17  J"orn Rennecke <joern.rennecke@superh.com>
1253         * emulparams/shelf32.sh (MACHINE): Now sh5.
1255 2002-04-17  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1257         * ldgram.y: Fix syntax warning.
1259 2002-04-11  Nick Clifton  <nickc@cambridge.redhat.com>
1261         * emultempl/armelf.em (PARSE_AND_LIST_SHORTOPTS): Add 'n' in order
1262         to prevent "-n" from being taken as an abbreviation for
1263         "--no-pipeline-knowledge".
1265 2002-04-08  Alan Modra  <amodra@bigpond.net.au>
1267         * ldlang.c (lang_size_sections_1): Don't complain about
1268         SEC_NEVER_LOAD sections having no memory region specified.
1270         * ld.texinfo (Format Commands <OUTPUT_FORMAT>): Typo fix.
1272 2002-04-07  matthew green  <mrg@redhat.com>
1274         * ld/configure.host (*-*-netbsd*): Add support for NetBSD/ELF.
1276 2002-04-04  Alan Modra  <amodra@bigpond.net.au>
1278         * dep-in.sed: Cope with absolute paths.
1279         * Makefile.am (dep.sed): Subst TOPDIR and BFDDIR.
1280         Run "make dep-am".
1281         * Makefile.in: Regenerate.
1283 2002-04-04  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1285         * emulparams/elf64btsmip.sh: n64 replaces .reginfo with .MIPS.options.
1287 2002-04-03  Jakub Jelinek  <jakub@redhat.com>
1289         * ldexp.c (fold_binary) [DATA_SEGMENT_ALIGN]: If common page size
1290         is smaller than maximum, round dot up to common page boundary.
1292 2002-03-28  Alan Modra  <amodra@bigpond.net.au>
1294         * configure.host: Set up for generic hosts first, then tweak as
1295         necessary in more specific targets.
1296         (HOSTING_LIBS): Include libgcc_eh.a if found.
1298 2002-03-23  Andreas Jaeger  <aj@suse.de>
1300         * emulparams/elf_x86_64.sh (COMMONPAGESIZE): Set it.
1302 2002-03-21  Alan Modra  <amodra@bigpond.net.au>
1304         * Makefile.am: Run "make dep-am".
1305         * Makefile.in: Regenerate.
1307 2002-03-21  Albert Chin-A-Young  <china@thewrittenword.com>
1309         * genscripts.sh (LIB_SEARCH_DIRS): Quote path.
1311 2002-03-20  Alan Modra  <amodra@bigpond.net.au>
1313         * ldlang.c (ldlang_add_undef): If the output bfd has been opened,
1314         add the symbol to the linker hash table immediately.
1315         (lang_place_undefineds): Split symbol creation out..
1316         (insert_undefined): ..to here.
1318 2002-03-18  David O'Brien  <obrien@FreeBSD.org>
1320         * emultempl/elf32.em: Use lbasename vs. basename to fix problem where
1321         the contents of the buffer returned from basename function will are
1322         getting overwritten while still being used.
1324 2002-03-18  Jan Hubicka  <jh@suse.cz>
1325             Andreas Jaeger  <aj@suse.de>
1326             Andreas Schwab  <schwab@suse.de>
1328         * configure.tgt (x86_64-*-linux-gnu*): Configure i386 as native.
1329         * elf_x86_64.sh (ARCH): Set to i386:x86-64
1330         set libraries to default to lib64 paths.
1332 2002-03-18  Tom Rix  <trix@redhat.com>
1334         * Makefile.am : Add eaix5ppc and eaix5rs6, AIX 5 support.
1335         * configure.tgt : Same.
1336         * emulparms/aix5ppc.sh : New file. For eaix5ppc.
1337         * emulparms/aix5rs6.sh : New file. For eaix5rs6.
1338         * emulparms/aixppc.sh : OUPUT_FORMAT_32BIT and OUTPUT_FORMAT_64BIT
1339         emulation parameters for better -b32, -b64 support.
1340         * emulparms/aixrs6.sh : Same.
1341         * emulparms/ppcmacos.sh : Same.
1342         * emultempl/aix.em (choose_target) : Use new emulation parameters
1343         OUTPUT_FORMAT_32BIT and OUTPUT_FORMAT_64BIT.
1344         * Makefile.in : Regenerate.
1346 2002-03-18  Nick Clifton  <nickc@cambridge.redhat.com>
1348         * po/fr.po: Updated version.
1350 2002-03-18  Alan Modra  <amodra@bigpond.net.au>
1352         * ldmain.c (main): Move .text readonly flag fudges from here..
1353         * ldlang.c (lang_process): ..to here.
1355 2002-03-14  Alan Modra  <amodra@bigpond.net.au>
1357         * ldlang.c (lang_check): Remove the word size check added in last
1358         change.  Treat emitrelocations case as for relocatable links.
1360 2002-03-13  Nick Clifton  <nickc@cambridge.redhat.com>
1362         * po/fr.po: Updated version.
1364 2002-03-13  Alan Modra  <amodra@bigpond.net.au>
1366         * ldlang.c (lang_check): Do relocatable link checks first, so that
1367         warn_mismatch can't override.  Check compatible and word size too.
1369 2002-03-07  Daniel Jacobowitz  <drow@mvista.com>
1371         * ld.texinfo: Wrap @menu in @ifnottex, not @ifinfo.
1373 2002-03-05  Jakub Jelinek  <jakub@redhat.com>
1375         * scripttempl/elf.sc: Only use DATA_SEGMENT_END() together with
1376         DATA_SEGMENT_ALIGN.
1378 2002-03-04  H.J. Lu <hjl@gnu.org>
1380         * scripttempl/elf.sc: Put .preinit_array, .init_array and
1381         .fini_array in the data segment.
1383 2002-03-04  Alan Modra  <amodra@bigpond.net.au>
1385         * scripttempl/elf.sc: Correct syntax errors in 2002-03-01 commit.
1387 2002-03-01  David Mosberger  <davidm@hpl.hp.com>
1389         * scripttempl/elf.sc (SECTIONS): Add entries for .preinit_array,
1390         .init_array, and .fini_array.
1392 2002-02-20  Andreas Schwab  <schwab@suse.de>
1394         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Don't fold
1395         .IA64_unwind* in a relocatable link.
1397 2002-02-20  Nick Clifton  <nickc@cambridge.redhat.com>
1399         * NEWS: Mark 2.12 branch.
1401 2002-02-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1403         * emulparams/elf64_s390.sh (ARCH): Change to "s390:64-bit".
1404         * emulparams/elf_s390.sh (ARCH): Change to "s390:31-bit".
1406 2002-02-18  Tom Rix  <trix@redhat.com>
1408         * emultempl/aix.em (gld*_parse_args): Add -brtl support.
1409         (gld*_before_allocation): Same.
1410         (gld*_create_output_section_statements): Generate
1411         __rtinit if run time linking.  Add librtl.a to the link.
1412         (gld*_read_file): Clean.
1414 2002-02-18  Alan Modra  <amodra@bigpond.net.au>
1416         * emulparams/elf64ppc.sh (OTHER_TEXT_SECTIONS): Define.
1418 2002-02-18  David O'Brien  <obrien@FreeBSD.org>
1420         * Makefile.am: Add new files earmelf_fbsd, eelf32ppc_fbsd,
1421         eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
1422         and eelf64alpha_fbsd.
1423         * Makefile.in: Regenerate.
1424         * configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd,
1425         x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd):
1426         use a FreeBSD-specific emulation rather than the psABI one.
1427         * emulparams/elf_fbsd.sh (ELF_INTERPRETER_NAME): Set appropriate value
1428         for all FreeBSD ELF systems.
1429         * emulparams/armelf_fbsd.sh: Bridge elf_fbsd.sh and the "native" psABI
1430         emulation.
1431         * emulparams/elf32ppc_fbsd.sh: Likewise.
1432         * emulparams/elf64_ia64_fbsd.sh: Likewise.
1433         * emulparams/elf64_sparc_fbsd.sh: Likewise.
1434         * emulparams/elf64alpha_fbsd.sh: Likewise.
1435         * emulparams/elf_i386_fbsd.sh: Likewise.
1436         * emulparams/elf_x86_64_fbsd.sh: Likewise.
1438 2002-02-18  Nick Clifton  <nickc@cambridge.redhat.com>
1440         * po/tr.po: Updated version.
1442 2002-02-18  Alan Modra  <amodra@bigpond.net.au>
1444         * ld.texinfo (Output Section Fill): Fix amateur texinfo.
1445         (FILL): Likewise.
1447 2002-02-17  Hans-Peter Nilsson  <hp@bitrange.com>
1449         * emultempl/mmo.em (mmo_after_open): Don't call
1450         _bfd_mmix_check_all_relocs when producing ELF output.
1452 2002-02-15  Richard Henderson  <rth@redhat.com>
1454         * emulparams/elf64alpha.sh (NOP): Adjust for big-endian
1455         definition.  Emit a unop+nop pair.
1457 2002-02-15  Hans-Peter Nilsson  <hp@bitrange.com>
1459         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Also check
1460         for presence of .MMIX.reg_contents.linker_allocated before early
1461         exit.
1463         * NEWS: Mention support for MMIX.
1465 2002-02-15  Alan Modra  <amodra@bigpond.net.au>
1467         Support arbitrary length fill patterns.
1468         * ld.texinfo (Output Section Fill): Describe fill expressions.
1469         (FILL): Refer to the above.
1470         * ldexp.h (etree_value_type): Add "str" field.
1471         (union etree_union): Add "str" to "value" struct.
1472         (exp_bigintop): Declare.
1473         (exp_get_fill): Declare.
1474         * ldexp.c: Include "safe-ctype.h".
1475         (exp_intop): Set value.str to NULL.
1476         (exp_bigintop): New function.
1477         (new_rel): Pass in "str", and set new.str from it.
1478         (new_rel_from_section): Set new.str to NULL.
1479         (fold_name): Adjust calls to new_rel.
1480         (exp_fold_tree): Likewise.
1481         (exp_get_fill): New function.
1482         * ldgram.y (struct big_int bigint, fill_type *fill): New.
1483         (INT): Returns a "bigint".  Adjust all code handling INTs.
1484         (fill_opt): Returns a "fill".
1485         (fill_exp): Split out of fill_opt, use for FILL.
1486         * ldlang.h (struct _fill_type): New.
1487         (fill_type): Move typedef to ldexp.h.
1488         (lang_output_section_statement_type): "fill" is now a pointer.
1489         (lang_fill_statement_type): Likewise.
1490         (lang_padding_statement_type): Likewise.
1491         (lang_add_fill): Now takes a "fill_type *" param.
1492         (lang_leave_output_section_statement): Likewise.
1493         (lang_do_assignments): Likewise.
1494         (lang_size_sections): Likewise.
1495         (lang_leave_overlay_section): Likewise.
1496         (lang_leave_overlay): Likewise.
1497         * ldlang.c: Include ldgram.h after ldexp.h.
1498         (lang_output_section_statement_lookup): Adjust for fill_type change.
1499         (print_fill_statement): Likewise.
1500         (print_padding_statement): Likewise.
1501         (insert_pad): Now takes a "fill_type *" arg.
1502         (size_input_section): Likewise.
1503         (lang_size_sections_1): Likewise.
1504         (lang_size_sections): Likewise.
1505         (lang_do_assignments): Likewise.
1506         (lang_add_fill): Likewise.
1507         (lang_leave_output_section_statement): Likewise.
1508         (lang_leave_overlay_section): Likewise.
1509         (lang_leave_overlay): Likewise.
1510         Adjust all callers of the above function.
1511         * ldlex.l: Include ldgram.h after ldexp.h.  Allow hex numbers
1512         starting with "0X" as well as "0x".  Return bigint.str for hex
1513         numbers starting with "0x" or "0X", zero bigint.str otherwise.
1514         Always use base 16 for numbers starting with "$".
1515         * ldmain.c: Include ldgram.h after ldexp.h.
1516         * ldwrite.c (build_link_order): Use bfd_data_link_order in place
1517         of bfd_fill_link_order.
1518         * pe-dll.c: Adjust lang_do_assignments calls.
1519         * emultempl/elf32.em: Likewise.
1520         * emultempl/hppaelf.em: Likewise.
1521         * emultempl/ppc64elf.em: Likewise.
1522         * emultempl/beos.em: Include ldgram.h after ldexp.h, adjust
1523         lang_add_assignment call.
1524         * emultempl/pe.em: Likewise.
1526 2002-02-14  Phil Edwards  <pme@gcc.gnu.org>
1528         * ld.texinfo (VERSION scripts):  Symbol names are globbing patterns.
1529         * ldgram.y (lang_new_vers_regex):  Rename to lang_new_vers_pattern;
1530         the pattern in question is not a regexp.
1531         * ldlang.c:  Likewise.
1532         * ldlang.h:  Likewise.
1533         * ldlex.l (V_IDENTIFIER):  Allow '[', ']', '-', '!', and '^' also.
1535 2002-02-12  Jakub Jelinek  <jakub@redhat.com>
1537         * ldlex.l (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
1538         * ldgram.y (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
1539         (exp): Add DATA_SEGMENT_ALIGN (exp, exp) and DATA_SEGMENT_END (exp).
1540         * ldexp.c (exp_data_seg): New variable.
1541         (exp_print_token): Handle DATA_SEGMENT_ALIGN and DATA_SEGMENT_END.
1542         (fold_binary): Handle DATA_SEGMENT_ALIGN.
1543         (exp_fold_tree): Handle DATA_SEGMENT_END.
1544         Pass allocation_done when recursing instead of hardcoding
1545         lang_allocating_phase_enum.
1546         * ldexp.h (exp_data_seg): New.
1547         * ldlang.c (lang_size_sections_1): Renamed from lang_size_sections.
1548         (lang_size_sections): New.
1549         * ld.texinfo (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): Document.
1550         * scripttempl/elf.sc: Use DATA_SEGMENT_ALIGN and DATA_SEGMENT_END
1551         if COMMONPAGESIZE is defined.
1552         * emulparams/elf_i386.sh (COMMONPAGESIZE): Set to 4K.
1553         * emulparams/elf32_sparc.sh (COMMONPAGESIZE): Set to 8K.
1554         * emulparams/elf64_sparc.sh (COMMONPAGESIZE): Set to 8K.
1555         * emulparams/elf64alpha.sh (COMMONPAGESIZE): Set to 8K.
1556         * emulparams/elf64_ia64.sh (COMMONPAGESIZE): Set to 16K for shared
1557         libraries only.
1559 2002-02-11  Alan Modra  <amodra@bigpond.net.au>
1561         * Makefile.in: Regenerate.
1563 2002-02-10  Daniel Jacobowitz  <drow@mvista.com>
1565         * lexsup.c: Remove strtoul declaration.
1567 2002-02-10  Daniel Jacobowitz  <drow@mvista.com>
1569         * ldmain.c: Add prototype for main ().
1570         * lexsup.c: Guard declaration of strtoul with HAVE_STDLIB_H.
1571         * emultempl/lnk960.em (lnk960_choose_target): Function should
1572         take two arguments.
1574 2002-02-10  Alan Modra  <amodra@bigpond.net.au>
1576         * ldlang.c (entry_section): New initialised variable.
1577         (lang_finish): Use it.
1578         * ldlang.h (entry_section): Declare.
1579         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Set
1580         entry_section to ".opd".
1582 2002-02-09  Chris Demetriou  <cgd@broadcom.com>
1584         * ld.texinfo (Options): Add back in -nostdlib documentation,
1585         which had been inadvertently removed.
1587 2002-02-09  Hans-Peter Nilsson  <hp@bitrange.com>
1589         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Adjust
1590         register section vma to a sane value after emitting error.  Make
1591         fatal conditions cause program exit when emitting message.
1593 2002-02-08  Ivan Guzvinec <ivang@opencores.org>
1595         * configure.tgt: Add or32-*-rtems target.
1597 2002-02-08  Alexandre Oliva  <aoliva@redhat.com>
1599         Contribute sh64-elf.
1600         2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
1601         * emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined
1602         in OTHER_RELOCATABLE_SECTIONS.
1603         2002-01-18  Alexandre Oliva  <aoliva@redhat.com>
1604         * emulparams/shelf32.sh (STACK_ADDR): Define.
1605         (OTHER_RELOCATABLE_SECTIONS): Renamed to...
1606         (OTHER_SECTIONS): this.  Removed stack settings.
1607         * emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set.
1608         (OTHER_SECTIONS): Reset after sourcing shelf32.sh.
1609         2001-03-12  DJ Delorie  <dj@redhat.com>
1610         * emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
1611         relaxing if any shmedia or mixed sections are found.
1612         2001-03-07  DJ Delorie  <dj@redhat.com>
1613         * emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
1614         einfo.  Gracefully decline to output to non-elf formats.
1615         2001-03-06  Hans-Peter Nilsson  <hpn@redhat.com>
1616         * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>:
1617         Default to _end aligned to next multiple of 0x40000, plus 0x40000.
1618         * emulparams/shelf32.sh: Ditto.
1619         2001-01-14  Hans-Peter Nilsson  <hpn@cygnus.com>
1620         * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak
1621         comment.
1622         2001-01-10  Ben Elliston  <bje@redhat.com>
1623         * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid
1624         non-portable shell constructs. From Hans-Peter Nilsson.
1625         2001-01-09  Hans-Peter Nilsson  <hpn@cygnus.com>
1626         * emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty.
1627         * Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
1628         dependencies to the shell script include chain.
1629         * Makefile.in: Regenerate.
1630         2001-01-06  Hans-Peter Nilsson  <hpn@cygnus.com>
1631         * emultempl/sh64elf.em: Update and tweak comments.
1632         (sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
1633         make a .cranges section SEC_IN_MEMORY.
1634         2000-12-30  Hans-Peter Nilsson  <hpn@cygnus.com>
1635         * emultempl/sh64elf.em
1636         (sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
1637         .cranges section found to be necessary; continue and set stored
1638         section contents flags for sections with non-mixed contents.
1639         Use a struct sh64_section_data container and sh64_elf_section_data
1640         to store contents-type flags.
1641         Remove unused update of "isec".
1642         (sh64_elf_${EMULATION_NAME}_after_allocation): Only process
1643         sections marked SHF_SH5_ISA32_MIXED.  Use sh64_elf_section_data to
1644         access contents-type flags.  Assert that the associated container
1645         is initialized.  Use that container, not elf_gp_size, to hold size
1646         of linker-generated cranges contents.
1647         2000-12-18  Hans-Peter Nilsson  <hpn@cygnus.com>
1648         * emultempl/sh64elf.em
1649         (sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
1650         there's already a .cranges section.  When section flag difference
1651         is found, don't NULL-check cranges a second time.  Tweak comments.
1652         (sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
1653         merging, not max size, as size of ld-generated .cranges contents.
1654         Don't set ELF section flags in output section.  When checking for
1655         needed .cranges descriptors, don't use a variable; compare
1656         incoming ELF section flags directly to SHF_SH5_ISA32_MIXED.  Tweak
1657         comments.
1658         2000-12-18  Hans-Peter Nilsson  <hpn@cygnus.com>
1659         * emultempl/sh64elf.em: New file.
1660         * Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies.
1661         * Makefile.in: Regenerate.
1662         * emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set.
1663         (OTHER_RELOCATING_SECTIONS): Ditto.
1664         (EXTRA_EM_FILE): New, set to sh64elf if not set.
1665         * emulparams/shlelf32.sh: Stub out all settings except
1666         OUTPUT_FORMAT.  Source shelf32.sh.
1667         * emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and
1668         OTHER_RELOCATING_SECTIONS.
1669         (OTHER_RELOCATING_SECTIONS): Remove .cranges.
1670         * emulparams/shlelf64.sh: Stub out all settings except
1671         OUTPUT_FORMAT.  Source shelf64.sh.
1672         2000-12-15  Hans-Peter Nilsson  <hpn@cygnus.com>
1673         * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include
1674         .cranges section.
1675         (DATA_START_SYMBOLS): Define, provide ___data.
1676         (OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
1677         for consecutive .data section.
1678         (OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
1679         section after .data section.
1680         * emulparams/shlelf64.sh: Ditto.
1681         * emulparams/shelf32.sh: Ditto.
1682         (ALIGNMENT): Define to 8.
1683         * emulparams/shelf32.sh: Ditto.
1684         2000-12-12  Hans-Peter Nilsson  <hpn@cygnus.com>
1685         * configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
1686         built-in linker scripts.
1687         2000-11-30  Hans-Peter Nilsson  <hpn@cygnus.com>
1688         * emulparams/shlelf64.sh: New.
1689         * emulparams/shelf64.sh: New.
1690         * configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
1691         targ_extra_emuls.
1692         * Makefile.am: Add support for shlelf64 and shelf64.
1693         * Makefile.in: Regenerate.
1694         2000-11-29  Hans-Peter Nilsson  <hpn@cygnus.com>
1695         * configure.tgt (sh64-*-elf*): Add shelf as default.
1696         Add shlelf to targ_extra_emuls.
1697         2000-11-24  Hans-Peter Nilsson  <hpn@cygnus.com>
1698         * emulparams/shelf32.sh: New file.
1699         * emulparams/shlelf32.sh: New file.
1700         * Makefile.am: Add support for shlelf32 and shelf32.
1701         * configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
1702         * Makefile.in: Regenerate.
1704 2002-02-05  Hans-Peter Nilsson  <hp@axis.com>
1706         * ldlang.c (lang_reset_memory_regions): Rename from
1707         reset_memory_regions.  Change all callers.  Make public.
1708         * ldlang.h (lang_reset_memory_regions): Prototype.
1709         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Call
1710         lang_reset_memory_regions before lang_size_sections.
1711         * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
1712         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Likewise.
1714 2002-02-04  Hans-Peter Nilsson  <hp@bitrange.com>
1716         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Use signed
1717         arithmetic when checking for too many global registers.
1719 2002-02-02  Jason Thorpe  <thorpej@wasabisystems.com>
1721         * Makefile.am (ALL_EMULATIONS): Add ehppanbsd.o.
1722         (ehppanbsd.c): New rule.
1723         * Makefile.in: Regenerate.
1724         * configure.tgt (hppa*-*-netbsd*): New target.
1725         * emulparams/hppalinux.sh: Add comment to check other files
1726         that source this file it is modified, and list which
1727         files that do.
1728         * emulparams/hppanbsd.sh: New file.
1730 2002-02-01  Geoffrey Keating  <geoffk@redhat.com>
1732         * scripttempl/xstormy16.sc: Don't allocate extra space for the
1733         stack.
1735 2002-02-01  Hans-Peter Nilsson  <hp@bitrange.com>
1737         Support on-demand global register allocation from
1738         R_MMIX_BASE_PLUS_OFFSET relocs.
1739         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Rename from
1740         mmix_set_reg_section_vma.  Call
1741         _bfd_mmix_finalize_linker_allocated_gregs.
1742         (mmix_before_allocation): New function.
1743         (LDEMUL_AFTER_ALLOCATION): Set to mmix_after_allocation.
1744         (LDEMUL_BEFORE_ALLOCATION): Define to mmix_before_allocation.
1745         * scripttempl/mmo.sc (.text): Mark .init, .fini as KEEP.
1746         (.MMIX.reg_contents): Add .MMIX.reg_contents.linker_allocated
1747         before .MMIX.reg_contents.
1748         * emultempl/mmo.em (gldmmo_before_allocation): Define to default.
1749         (mmo_after_open): New function.
1750         (LDEMUL_AFTER_OPEN): Define to mmo_after_open.
1751         * emulparams/elf64mmix.sh (OTHER_SECTIONS): Tweak formatting.  Add
1752         .MMIX.reg_contents.linker_allocated before .MMIX.reg_contents.
1754 2002-01-31  Ivan Guzvinec  <ivang@opencores.org>
1756         * emulparams/or32.sh: New file.
1757         * emulparams/or32elf.sh: New file.
1758         * scripttempl/or32.sc: New file.
1759         * configure.tgt : Add support for or32.
1760         * configure: Regenerate
1761         * Makefile.am: Add support for or32.
1762         * Makefile.in: Regenerate.
1763         * NEWS: Mention support for or32.
1764         * po/ld.pot: Regenerate.
1766 2002-01-29  Chris Demetriou  <cgd@broadcom.com>
1767             Mitch Lichtenberg  <mpl@broadcom.com>
1769         * emulparams/elf32bmip.sh (EXTRA_EM_FILE): Define to be mipself.
1770         * emultempl/mipself.em: New file to handle MIPS ELF embedded
1771         reloc creation (ld --embedded-relocs).
1773 2002-01-27  Daniel Jacobowitz  <drow@mvista.com>
1775         * configure: Regenerated.
1777 2002-01-26  Hans-Peter Nilsson  <hp@bitrange.com>
1779         * Makefile.am (install): Depend on install-info.
1780         * Makefile.in: Regenerate.
1782 2002-01-26  Christian Rose  <menthos@menthos.com>
1784         * ldmain.c (main): Use full sentences to ease translation.
1786 2002-01-26  Nick Clifton  <nickc@cambridge.redhat.com>
1788         * po/fr.po: Updated version.
1790 2002-01-25  Nick Clifton  <nickc@cambridge.redhat.com>
1792         * po/es.po: Updated version.
1794 2002-01-25  Andreas Jaeger  <aj@suse.de>
1796         * ldlex.l (yy_input): Correct error check.
1798 2002-01-25  Alan Modra  <amodra@bigpond.net.au>
1800         * ldmisc.c (demangle): Put back dots when string not demangled.
1802 2002-01-22  Richard Henderson  <rth@redhat.com>
1804         * emulparams/elf64alpha.sh (NOP): Use unop.
1806 2002-01-21  Andreas Jaeger  <aj@suse.de>
1808         * ldlex.l: Use fread instead of read.
1810 2002-01-21  Jason Thorpe  <thorpej@wasabisystems.com>
1812         * configure.tgt (ia64-*-netbsd*): New target.
1814 2002-01-21  H.J. Lu <hjl@gnu.org>
1816         * emulparams/elf32btsmip.sh (SHLIB_TEXT_START_ADDR): Change to
1817         0.
1818         * emulparams/elf64btsmip.sh (SHLIB_TEXT_START_ADDR): Likewise.
1820 2002-01-18  Andreas Jaeger  <aj@suse.de>
1822         * ldver.c (ldversion): Update year.
1824 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
1826         * po/ld.pot: Regenerate.
1828 2002-01-16  Alan Modra  <amodra@bigpond.net.au>
1830         * Makefile.am (eelf64ppc.c, eelf64lppc.c): Depend on ppc64elf.em.
1831         * Makefile.in: Regenerate.
1832         * emulparams/elf64ppc.sh (EXTRA_EM_FILE): Define.
1833         * emultempl/ppc64elf.em: New file.
1835 2002-01-15  DJ Delorie  <dj@redhat.com>
1837         * scripttempl/pe.sc: Add support for constructor priorities.
1839 2002-01-07  Marek Michalkiewicz  <marekm@amelek.gda.pl>
1841         * emulparams/avr1200.sh (DATA_START): Define as 0x60.
1842         * emulparams/avr23xx.sh: Likewise.
1843         * emulparams/avr4433.sh: Likewise.
1844         * emulparams/avr44x4.sh: Likewise.
1845         * emulparams/avr85xx.sh: Likewise.
1846         * emulparams/avrmega103.sh: Likewise.
1847         * emulparams/avrmega161.sh: Likewise.
1848         * emulparams/avrmega603.sh: Likewise.
1849         * scripttempl/elf32avr.sc: Use DATA_START instead of 0x60.
1851 2002-01-08  Alexandre Oliva  <aoliva@redhat.com>
1853         * ldlang.c (walk_wild_section): Exclude object file if enclosing
1854         archive is excluded.
1856 2002-01-07  Jason Thorpe  <thorpej@wasabisystems.com>
1858         * Makefile.am (ALL_EMULATIONS): Add eshelf_nbsd.o and eshlelf_nbsd.o.
1859         (eshelf_nbsd.c): New rule.
1860         (eshlelf_nbsd.c): New rule.
1861         * Makefile.in: Regenerate.
1862         * configure.tgt (sh*le-*-netbsdelf*): New target.
1863         (sh*-*-netbsdelf*): New target.
1864         * emulparams/shelf.sh: Document that shelf_nbsd.sh sources this file.
1865         * ld/emulparams/shelf_nbsd.sh: New emulation.
1866         * ld/emulparams/shlelf_nbsd.sh: New emulation.
1868 2002-01-07  Nick Clifton  <nickc@cambridge.redhat.com>
1870         * po/es.po: New file: Spanish translation.
1871         * configure.in (ALL_LINGUAS): Add es.
1872         * configure: Regenerate.
1874 2002-01-06  John Marshall  <jmarshall@acm.org>
1876         * ld.texinfo: Note that --emit-relocs is currently only
1877         implemented for ELF.
1879 2002-01-05  Alan Modra  <amodra@bigpond.net.au>
1881         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Make use
1882         of bfd_section_list_remove and bfd_section_list_insert macros.
1883         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
1884         * emultempl/mmo.em (mmo_place_orphan): Likewise.
1886 2002-01-04  Jason Thorpe  <thorpej@wasabisystems.com>
1888         * configure.tgt (x86_64-*-netbsd*): New target.
1890 2001-12-21  Tom Rix  <trix@redhat.com>
1892         (gld*_create_output_section_statements): New function.
1893         For -binitfini support.
1894         * emultempl/aix.em (gld*_before_parse): Fix comment.
1895         * emultempl/aix.em (gld*_parse_args): Fix comment.
1897 2001-12-20  Jason Thorpe  <thorpej@wasabisystems.com>
1899         * configure.tgt (mips*-dec-netbsd*): Delete alias for
1900         mips*el-*-netbsd*.
1901         (sparc64-*-netbsd*): Add elf32_sparc to targ_extra_emuls.
1903         * configure.tgt (arm-*-netbsdelf*): Add target.
1904         (arm-*-netbsd*): Add armelf and armelf_nbsd to targ_extra_emuls.
1905         * emulparams/armelf_nbsd.sh: Added.
1906         * Makefile.am: Add rules for earmelf_nbsd.
1907         * Makefile.in: Regenerate.
1909 2001-12-19  Andreas Jaeger  <aj@suse.de>,
1910             Susanne Oberhauser <froh@suse.de>
1912         * configure.host: Add rules for x86_64-*linux-gnu.  Change
1913         s390x-linux entry to use gcc to report configuration, replace gcc
1914         with $CC in s390-linux
1916 2001-12-19  Andreas Jaeger  <aj@suse.de>
1918         * ld.texinfo (VERSION): Fix markup.
1920 2001-12-18  matthew green  <mrg@eterna.com.au>
1922         * Makefile.am (ALL_EMULATIONS): Add m68kelfnbsd.o.
1923         (m68kelfnbsd.c): New rule.
1924         * Makefile.in: Regenerate.
1925         * configure.tgt (m68*-hp-netbsd*): Renamed to ..
1926         (m68*-*-netbsd*4k*): .. this.
1927         (m68*-*-netbsdelf*): New target.
1928         (m68*-*-netbsd*): Also include ELF support.
1929         (m68*-*-netbsdaout*): New alias for m68*-*-netbsd*.
1930         * emulparams/m68kelfnbsd.sh: New emulation.
1932 2001-12-18  Jakub Jelinek  <jakub@redhat.com>
1934         * ldgram.y (vers_node): Support anonymous version tags.
1935         * ldlang.c (lang_register_vers_node): Ensure anonymous version
1936         tag is not defined together with non-anonymous versions.
1937         * ld.texinfo: Document it.
1939 2001-12-18  Nick Clifton  <nickc@cambridge.redhat.com>
1941         * po/tr.po: New file: Turkish translation.
1942         * configure.in (ALL_LINGUAS): Add tr.
1943         * configure: Regenerate.
1945 2001-12-17  Jason Thorpe  <thorpej@wasabisystems.com>
1947         * Makefile.am: Add rules for eelf64alpha_nbsd.
1948         * Makefile.in: Regenerate.
1949         * configure.tgt (alpha*-*-netbsd*): Set
1950         targ_emul to elf64alpha_nbsd.
1951         * emulparams/elf64alpha_nbsd.sh: Added.
1953 2001-12-17  Alan Modra  <amodra@bigpond.net.au>
1955         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Adjust
1956         section_tail when fiddling with section list.
1957         (gld${EMULATION_NAME}_list_options): Ensure sentences aren't
1958         broken into separate strings to make translation easier.
1959         * emultempl/mmo.em (mmo_place_orphan): Adjust section_tail when
1960         fiddling with section list.
1961         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
1963 2001-12-16  Hans-Peter Nilsson  <hp@bitrange.com>
1965         * scripttempl/mmo.sc: Add .debug_ranges to listed sections.
1967 2001-12-15  Alan Modra  <amodra@bigpond.net.au>
1969         * ldmain.c (main): Initialise link_info.eh_frame_hdr.
1971 2001-12-13  Jakub Jelinek  <jakub@redhat.com>
1973         * emultempl/elf32.em (finish): Supply output_bfd
1974         to bfd_elf*_discard_info.
1975         (OPTION_EH_FRAME_HDR): Define.
1976         (longopts): Add --eh-frame-hdr.
1977         (parse_args): Handle it.
1978         (list_options): Add --eh-frame-hdr to help.
1979         * emultempl/hppaelf.em (finish): Supply output_bfd
1980         to bfd_elf*_discard_info.
1981         * scripttempl/elf.sc (.eh_frame_hdr): Add.
1983 2001-12-13  Alan Modra  <amodra@bigpond.net.au>
1985         * lexsup.c (parse_args): Don't pass shortopts to second call to
1986         getopt functions.  Restore optind rather than decrementing before
1987         second call.  Remove errind as it now duplicates last_optind.
1989 2001-12-11  Christopher Faylor  <cgf@redhat.com>
1991         * emultempl/pe.em (gld_${EMULATION_NAME}_list_options): Fix typo.
1993 2001-12-07  Geoffrey Keating  <geoffk@redhat.com>
1994             Richard Henderson  <rth@redhat.com>
1996         * Makefile.am: Add support for xstormy16.
1997         * configure.tgt: Add support for xstormy16.
1998         * Makefile.in: Regenerate.
1999         * emulparams/elf32xstormy16.sh: New file.
2000         * scripttempl/xstormy16.sc: New file.
2002 2001-10-01  Christopher Faylor <cgf@cygnus.com>
2004         * Makefile.in (LIB_PATH): Make configurable.
2005         (GENSCRIPTS): Set LIB_PATH in environment.
2006         * configure.in: Substitute LIB_PATH.
2007         * configure: Regenerate.
2008         * configure.tgt (*cygwin): Set LIB_PATH for cross build.
2009         * configure.host (*cygwin): Add /usr/lib/w32api to NATIVE_LIB_DIRS.
2011 2001-12-07  Nick Clifton  <nickc@cambridge.redhat.com>
2013         * lexsup.c (ld_options): Insert 'PROGRAM' into the text string
2014         describing the -N option so that it is easier to translate into
2015         foreign languages.
2017 2001-12-05  Nick Clifton  <nickc@cambridge.redhat.com>
2019         * emultempl/pe.em (..._list_options): Replace multiple fprintf
2020         statements describing a single option with a single, newline
2021         escaped fprintf.  This allows better translation into other
2022         languages.
2024         * ldmain.c (add_archive_element): Combine multiple strings
2025         into a single string to permit better translation into other
2026         languages.
2028 2001-12-05  Tom Rix  <trix@redhat.com>
2030         * Makefile.am: Remove eaixppc64.
2031         * Makefile.in: Regenerate.
2033 2001-12-04  Tom Rix  <trix@redhat.com>
2035         * emultempl/aix.em (choose_target): Change default target to
2036         OUTPUT_FORMAT for ppcmacos.  Add braces to remove compiler
2037         warning.
2038         (gld*_read_file):  Fix typo.
2039         (change_symbol_mode): Add prototype.
2040         (is_syscall): Same.
2042         * emulparams/aixppc.sh (SYSCALL_MASK, SYMBOL_MODE_MASK): Delete.
2043         * emulparams/aixrs6.sh : Same.
2044         * emulparams/ppcmacos.sh : Same.
2045         * emulparams/aixppc64.sh : Delete file.
2046         * emultempl/aix.em : Formatting changes.
2048 2001-12-04  Hans-Peter Nilsson  <hp@axis.com>
2050         * emulparams/criself.sh (NO_SMALL_DATA): Set, to yes.
2051         (OTHER_BSS_END_SYMBOLS): Don't refer to .sbss when setting
2052         __Sbss.
2053         (OTHER_END_SYMBOLS): Fix formatting.
2054         * emulparams/crislinux.sh (NO_SMALL_DATA): Set, to yes.
2055         (OTHER_END_SYMBOLS): Fix formatting.
2057 2001-12-04  Alan Modra  <amodra@bigpond.net.au>
2059         * ldexp.c (exp_print_token): Correct "table" entry for RSHIFT.
2061 2001-12-02  Tom Rix  <trix@redhat.com>
2063         * configure.tgt : Remove eaixppc64 emulations.
2064         * Makefile.in : Remove eaixppc64.c
2065         * ldemul.c (ldemul_choose_target): New parameters argc, argv.
2066         (ldemul_default_target): Same.
2067         * emultempl/gld960.em (gld960_choose_target):  Same.
2068         * emultempl/gld960c.em (gld960_choose_target):  Same.
2069         * scripttempl/aix.sc: Remove OUTPUT_FORMAT.
2070         * emultempl/aix.em (is_syscall): syscall_mask now a variable.
2071         * emultempl/aix.em (gld*_read_file): symbol_mode_mask now a variable.
2072         * emultempl/aix.em (gld*_parse_args): Handle -b32 -b64 emulation.
2073         * emultempl/aix.em (choose_target): New function.  Handle emulation of
2074         -b32 and -b64.
2076 2001-11-27  H.J. Lu <hjl@gnu.org>
2078         * emulparams/elf_i386.sh (NO_SMALL_DATA): Set to yes.
2079         * emulparams/elf_i386_be.sh (NO_SMALL_DATA): Likewise.
2080         * emulparams/elf_i386_chaos.sh (NO_SMALL_DATA): Likewise.
2081         * emulparams/elf_i386_ldso.sh (NO_SMALL_DATA): Likewise.
2082         * emulparams/elf_x86_64.sh (NO_SMALL_DATA): Likewise.
2083         * emulparams/m68kelf.sh (NO_SMALL_DATA): Likewise.
2084         * emulparams/elf32_sparc.sh (NO_SMALL_DATA): Likewise.
2085         * emulparams/elf64_sparc.sh (NO_SMALL_DATA): Likewise.
2087         * scripttempl/elf.sc (SBSS): New. Define if ${NO_SMALL_DATA}
2088         is not empty.
2089         (SDATA): Likewise.
2090         (REL_SDATA): Likewise.
2091         (REL_SBSS): Likewise.
2092         (REL_SDATA2): Likewise.
2093         (REL_SBSS2): Likewise.
2094         (SBSS2): Define if ${NO_SMALL_DATA} is not empty.
2095         (SDATA2): Likewise.
2097 2001-11-25  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2099         * scripttempl/elfm68hc11.sc (CTOR, DTOR): Put constructor and
2100         destructor in rom.
2101         * scripttempl/elfm68hc12.sc (CTOR, DTOR): Likewise.
2103 2001-11-22  H.J. Lu  <hjl@gnu.org>
2105         * Makefile.in: Regenerated with automake based on automake
2106         1.4-8 in RedHat 7.1.
2108 2001-11-22  Alan Modra  <amodra@bigpond.net.au>
2110         * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
2111         (config.status): Delete rule.
2112         Add extra dependencies to cover sourced emulparams files.
2113         * Makefile.in: Regenerate.
2115         * scripttempl/elf.sc: Order <section>, <section>.* and
2116         corresponding linkonce sections as seen in input files.
2117         Formatting fixes.  Zero vma of all sections if not relocating.
2118         (STACK): Define and insert if STACK_ADDR defined.
2119         (OTHER_RELOCATING_SECTIONS): Delete.
2120         (OTHER_END_SYMBOLS): Define.
2121         (OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
2122         (OTHER_READWRITE_SECTIONS): Likewise.
2123         (OTHER_GOT_SECTIONS): Likewise.
2124         (OTHER_SDATA_SECTIONS): Likewise.
2125         (OTHER_BSS_SECTIONS): Likewise.
2126         * scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
2127         (OTHER_READWRITE_SECTIONS): Likewise.
2128         * scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
2129         (OTHER_READWRITE_SECTIONS): Likewise
2131         * emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
2132         (STACK_ADDR): Define.
2133         * emulparams/armelf_oabi.sh: As for armelf.sh.
2134         * emulparams/elf32mcore.sh: As for armelf.sh.
2135         * emulparams/h8300elf.sh: As for armelf.sh.
2136         * emulparams/mn10200.sh: As for armelf.sh.
2137         * emulparams/shelf.sh: As for armelf.sh.
2139         * emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
2140         (OTHER_END_SYMBOLS): Define.
2141         * emulparams/m32relf.sh: As for elf32fr30.sh.
2142         * emulparams/h8300helf.sh: As for elf32fr30.sh.
2143         * emulparams/h8300self.sh: As for elf32fr30.sh.
2145         * emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
2146         defines with RELOCATING test.
2147         (OTHER_SDATA_SECTIONS): Likewise.
2148         (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
2149         (OTHER_END_SYMBOLS): ..this.
2150         * emulparams/crislinux.sh: As for criself.sh.
2152         * emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
2153         if not relocating.
2154         (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
2155         (OTHER_SECTIONS): ..this.  Zero vma if not relocating.  Order
2156         normal and linkonce sections as seen in input files.
2157         * emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
2158         (TEXT_DYNAMIC): Likewise.
2159         (INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
2160         (OTHER_SDATA_SECTIONS): Likewise.
2161         * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
2162         * emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
2163         * emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
2164         * emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
2165         * emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
2166         (OTHER_PLT_RELOC_SECTIONS): Likewise.
2167         (OTHER_READONLY_SECTIONS): Likewise.  Order normal and linkonce
2168         sections as seen in input files.
2169         * emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
2170         * emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
2171         if not relocating.
2172         (OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
2173         (OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
2174         * emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
2175         (OTHER_SECTIONS): Instead, use this..
2176         (OTHER_END_SYMBOLS): ..and this.
2178         * emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
2179         * emulparams/elf32bsmip.sh: Likewise.
2180         * emulparams/elf32btsmip.sh: Likewise.
2181         * emulparams/elf32ebmip.sh: Likewise.
2182         * emulparams/elf32lmip.sh: Likewise.
2183         * emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
2184         * emulparams/elf32lsmip.sh: Likewise.
2185         * emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
2186         * emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
2187         * emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
2188         * emulparams/elf64btsmip.sh: Likewise.
2189         * emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
2190         * emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
2191         * emulparams/elf32ppclinux.sh: Likewise.
2192         * emulparams/elf32ppcsim.sh: Likewise.
2193         * emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
2194         * emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
2195         * emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
2196         * emulparams/h8300self.sh: Likewise.
2197         * emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
2198         * emulparams/sh.sh: Comment.
2199         * emulparams/shl.sh: Source sh.sh, remove duplicates.
2200         * emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
2201         * emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2203 2001-11-21  David Heine <dlheine@tensilica.com>
2204             Alan Modra  <amodra@bigpond.net.au>
2206         * ldlang.c (map_input_to_output_sections): Replace "break"
2207         accidentally removed with 2001-08-03 change.
2208         (lang_gc_sections_1): Likewise.
2210 2001-11-21  Alan Modra  <amodra@bigpond.net.au>
2212         * ldlang.c (walk_wild_section): Move sec == NULL case out of loop.
2214 2001-11-20  Angela Marie Thomas <angela@redhat.com>
2216         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Use NULL instead
2217         of false when calling lang_size_sections.
2218         * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
2220 2001-11-15  Alan Modra  <amodra@bigpond.net.au>
2222         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Only emit this
2223         function when LDEMUL_FINISH isn't set to the same name.  Don't
2224         call ${LDEMUL_FINISH}.
2225         (ld_${EMULATION_NAME}_emulation): Call $LDEMUL_FINISH if defined.
2226         * emultempl/armelf.em (arm_elf_finish): Call
2227         gld${EMULATION_NAME}_finish.
2228         * emultempl/hppaelf.em (hppaelf_finish): Rename to
2229         gld${EMULATION_NAME}_finish.  Call bfd_elf32_discard_info and
2230         hppaelf_layout_sections_again if necessary.
2231         (need_laying_out): New var.
2232         (hppaelf_layaout_sections_again): Rename to
2233         hppaelf_layout_sections_again.  Clear need_laying_out.
2234         (PARSE_AND_LIST_OPTIONS): Format text.
2236 2001-11-14  H.J. Lu  <hjl@gnu.org>
2238         * emultempl/armelf.em (arm_elf_finish): Renamed from
2239         gld${EMULATION_NAME}_finish.
2240         (LDEMUL_FINISH): Set to arm_elf_finish.
2242 2001-11-14  Daniel Jacobowitz  <drow@mvista.com>
2244         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): New.
2245         (struct ld_emulation_xfer_struct): Use it.
2247 2001-11-13  Ross Alexander <ross.alexander@uk.neceur.com>
2249         * emulparams/elf64hppa.sh (OTHER_BSS_END_SYMBOLS): Add
2250         additional symbols referenced by newer crt0.o files from HP.
2252 2001-11-12  Anthony Green  <green@redhat.com>
2254         * emulparams/armelf.sh (DATA_START_SYMBOLS): New symbol.
2256 2001-11-12  Alfred M. Szmidt  <ams@kemisten.nu>
2258         * Makefile.am (GENSCRIPTS): Quote ${exec_prefix}.
2259         * Makefile.in: Regenerate.
2261 2001-11-02  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2263         * ld.texinfo: Use @command for commands, @option for options.
2264         * Makefile.am (POD2MAN): Use 'GNU Development Tools' for
2265         the page man title.
2266         * Makefile.in: Rebuild.
2268 2001-11-04  Chris Demetriou  <cgd@broadcom.com>
2270         * configure.tgt (mips*el-*-netbsd*, mips*-*-netbsd*):
2271         Add support for targets.
2273 2001-11-02  Nick Clifton  <nickc@cambridge.redhat.com>
2275         * configure.in (ALL_LINGUAS): Add "fr" and "sv"
2276         * configure: Regernate.
2277         * po/fr.po: New file.
2278         * po/sv.po: New file.
2280 2001-11-01  NIIBE Yutaka  <gniibe@m17n.org>
2282         * configure.tgt (sh-*-linux): Set targ_emul, targ_extra_emuls
2283         as little endian default and to support big endian.
2285 2001-11-01  Chris Demetriou  <cgd@broadcom.com>
2287         * ld.texinfo (Options): Document new option, -nostdlib.
2288         * lexsup.c (OPTION_NOSTDLIB): New definition.
2289         (ld_options): Add entry for "nostdlib".
2290         (parse_args): Handle OPTIONS_NOSTDLIB.
2291         * ldfile.c (ldfile_add_library_path): Don't add directories
2292         to the search path if they weren't specified on the command line
2293         and -nostdlib was specified.
2294         * ld.h (ld_config_type): New member only_cmd_line_lib_dirs.
2296 2001-10-31  Nick Clifton  <nickc@cambridge.redhat.com>
2298         * lexsup.c (parse_args): Prevent infinite parsing loop when
2299         "-rpath.a" is specified on the command line.
2300         Replace calls to fprintf with calls to einfo.
2302 2001-10-31  John Marshall  <jmarshall@acm.org>
2304         * ld.texinfo: A historical requirement that MEMORY and SECTIONS
2305         appear only once across all the linker scripts involved in a link
2306         invocation no longer applies.  Make the documentation reflect
2307         that.
2309 2001-10-31  NIIBE Yutaka  <gniibe@m17n.org>
2311         * configure.tgt: Supports sh3/sh4/sh3eb/sh4eb-unknown-linux-gnu
2312         targets.
2313         (sh-*-linux*): Added targ_extra_libpath.
2315 2001-10-31  David Heine  <dlheine@tensilica.com>
2317         * ldlang.c (lang_size_sections): Keep a valid output_offset field
2318         for padding statements.
2320 2001-10-30  Hans-Peter Nilsson  <hp@bitrange.com>
2322         * configure.tgt (mmix-*-*): New target.
2323         * Makefile.am (ALL_EMULATIONS): Add eelf64mmix.o and emmo.o.
2324         Add dependencies to match.
2325         * emulparams/mmo.sh, emulparams/elf64mmix.sh, emultempl/mmo.em,
2326         emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em,
2327         scripttempl/mmo.sc: New files.
2328         * gen-doc.texi: @set MMIX.
2329         * ld.texinfo: Ditto.
2330         [MMIX] Add MMIX node.
2331         * Makefile.in: Regenerate.
2333 2001-10-29  Kazu Hirata  <kazu@hxi.com>
2335         * ldlang.c: Fix a comment typo.
2337 2001-10-23  Alan Modra  <amodra@bigpond.net.au>
2339         * configure.host: Move alpha*-*-linux-gnu* entry to generic
2340         entries, and match *-*-linux*.
2342 2001-10-20  Alan Modra  <amodra@bigpond.net.au>
2344         * ldgram.y (mri_script_command): Surround processing of INCLUDE
2345         with ldlex_script, ldlex_popstate.
2346         (ifile_p1): Likewise.
2347         * ldlex.l (EOF): Don't BEGIN(SCRIPT).  Restore lineno from the
2348         correct slot.
2349         (lex_push_file): Save current lineno to lineno_stack.  Set lineno
2350         to 1.  Don't BEGIN(SCRIPT).
2351         (lex_redirect): Similarly.
2352         * ldmain.c (main): Set yydebug non-zero if YYDEBUG.
2354 2001-10-20  Nick Clifton  <nickc@cambridge.redhat.com>
2356         * scripttempl/armcoff.sc: Define __EH_FRAME_BEGIN__ and
2357         __EH_FRAME_END__ and accept eh frames into data section.
2358         Add ctor and dtor sections.
2360 2001-10-19  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
2362         * pe-dll.c (autofilter_objectlist): Add gcrt0.o.
2363         (auto-export): Fix indentation.
2365 2001-10-18  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
2367         * pe-dll.c (autofilter_objectlist):  Add startup objects
2368         for profiling.
2369         (auto-export): Constify char * p.
2370         Extract file basename and use strcmp rather than ststr
2371         for object lookup.
2373 2001-10-18  Chris Demetriou  <cgd@broadcom.com>
2375         * ldmain.c (get_emulation): Improve comment about the handling
2376         of -mipsN options.
2378 2001-10-17  Alan Modra  <amodra@bigpond.net.au>
2380         * po/POTFILES.in: Regenerate.
2382 2001-10-16  Vassili Karpov  <malc@pulsesoft.com>
2384         * emultempl/elf32.em (gld*_list_options): Remove extra '\t' from
2385         -z nocopyreloc and -z nocombreloc usage strings.
2387 2001-10-12  Vassili Karpov  <malc@pulsesoft.com>
2389         * emultempl/elf32.em (gld*_list_options): Include -z nocopyreloc
2390         in usage.
2392 2001-10-11  Aleksey Romanov <aromanov@ennovatenetworks.com>
2394         * scripttempl/armaout.sc: Place .bss section after end of aligned
2395         data section to match behaviour of aout code in constructrion of
2396         header.
2398 2001-10-11  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
2400         * pe-dll.c (autofilter_entry_type autofilter_liblist: Add
2401         startup files for mingw32 dlls to list.
2403 2001-10-10  Chris Demetriou  <cgd@broadcom.com>
2405         * emultempl/elf32.em: Fix shell 'if' usage for portability.
2407 2001-10-08  Aldy Hernandez  <aldyh@redhat.com>
2409         * configure.tgt (targ): Add arm9e-*-elf.
2411 2001-10-05  H.J. Lu  <hjl@gnu.org>
2413         * genscripts.sh: Fix a typo in the last change.
2415 2001-10-05  Jakub Jelinek  <jakub@redhat.com>
2417         * emultempl/elf32.em (gld_*_list_options): Include -z combreloc and
2418         -z nocombreloc in usage.
2420 2001-10-03  Jim Blandy  <jimb@redhat.com>
2422         * genscripts.sh: Include a comment at the top of each generated
2423         script, explaining its purpose.
2425 2001-10-03  Vassili Karpov  <malc@pulsesoft.com>
2427         * emultempl/elf32.em (parse_args): Handle -z nocopyreloc.
2428         * NEWS: Mention -z nocopyreloc.
2429         * ld.texinfo (Options): Describe nocopyreloc.
2431 2001-10-03  Alan Modra  <amodra@bigpond.net.au>
2433         * configure: Regenerate.
2435 2001-10-02  Alan Modra  <amodra@bigpond.net.au>
2437         * ldver.h (ld_program_version): Remove declaration.
2438         * lexsup.c (parse_args): Move printing of copyright message..
2439         * ldver.c (ldversion): .. to here.
2440         Use BFD_VERSION_STRING in place of BFD_VERSION.
2441         (ld_program_version): Remove.
2442         * Makefile.am (Makefile): Depend on bfd/configure.in.
2443         Run "make dep-am".
2444         * Makefile.in: Regenerate.
2446 2001-09-30  Hans-Peter Nilsson  <hp@bitrange.com>
2448         * Makefile.am: Update dependencies with "make dep-am".
2449         * Makefile.in: Regenerate.
2451 2001-09-29  John Reiser  <jreiser@BitWagon.com>
2453         * ldlang.c (lang_common): Conditionally inhibit Common allocation.
2454         * lexsup.c: Add --no-define-common commandline option.
2455         * ldgram.y: Add INHIBIT_COMMON_ALLOCATION script command.
2456         * ldlex.l: Likewise.
2457         * ld.h: Add command_line.inhibit_common_definition.
2458         * ldmain.c (main): Initialize.
2459         * ld.texinfo: Document.
2461 2001-09-29  Alan Modra  <amodra@bigpond.net.au>
2463         * ldlang.c (section_already_linked): Remove assignment to kept_section.
2465 2001-09-26  Alan Modra  <amodra@bigpond.net.au>
2467         * ldmisc.c (USE_STDARG): Remove.
2468         (info_msg): Define using VPARAMS, VA_OPEN, VA_FIXEDARG, VA_CLOSE.
2469         (einfo): Likewise.
2470         (minfo): Likewise.
2471         (lfinfo): Likewise.
2473         * ldmisc.h: Remove #ifdef ANSI_PROTOTYPES and non-ansi
2474         declarations.  Update copyright.
2476 2001-09-24  Charles Wilson  <cwilson@ece.gatech.edu>
2478         * pe-dll.c: Remove obsoleted declaration of
2479         pe_get_data_import_dll_name.
2480         (pe_create_import_fixup): Fix thinko.
2482         * ld.texinfo(enable-auto-import): Clarify the explanation.
2484 2001-09-24  Nick Clifton  <nickc@cambridge.redhat.com>
2486         * pe-dll.c (pe_create_import_fixup): Revert previous patch.
2487         * emultemp/pe.em (pe_data_import_dll): Move definition outside of
2488         DLL_SUPPORT controlled code.
2490 2001-09-24  Charles Wilson  <cwilson@ece.gatech.edu>
2492         * emultempl/pe.em(pe_data_import_dll): Make static.
2493         (pe_get_data_import_dll_name): New accessor function.
2494         * pe-dll.c(pe_create_import_fixup): call
2495         pe_get_data_import_dll_name() from pe.em, instead of
2496         directly accessing pe_data_import_dll variable from pe.em.
2498 2001-09-18  Bruno Haible  <haible@clisp.cons.org>
2500         * deffilep.y: Include "safe-ctype.h" instead of <ctype.h>.
2501         (def_file_add_directive): Use ISSPACE instead of isspace.
2502         (def_lex): Use ISDIGIT/ISXDIGIT/ISALPHA/ISALNUM instead of
2503         isdigit/isxdigit/isalpha/isalnum.
2504         * emultempl/aix.em: Include "safe-ctype.h" instead of <ctype.h>.
2505         (gld${EMULATION_NAME}_read_file): Use ISSPACE instead of isspace.
2506         * emultempl/elf32.em: Include "safe-ctype.h" instead of <ctype.h>.
2507         (gld${EMULATION_NAME}_place_orphan): Use ISALNUM instead of
2508         isalnum.
2509         * emultempl/gld960c.em: Include "safe-ctype.h" instead of <ctype.h>.
2510         (gld960_set_output_arch): Use ISUPPER/TOLOWER instead of
2511         isupper/tolower.
2512         * emultempl/sunos.em: Include "safe-ctype.h" instead of <ctype.h>.
2513         (gld${EMULATION_NAME}_search_dir): Use ISDIGIT instead of isdigit.
2514         * ldctor.c: Include "safe-ctype.h" instead of <ctype.h>.
2515         (ctor_prio): Use ISDIGIT instead of isdigit.
2516         * ldfile.c: Include "safe-ctype.h" instead of <ctype.h>.
2517         (ldfile_open_file_search): Use ISALPHA instead of isalpha.
2518         (ldfile_add_arch): Use ISUPPER/TOLOWER instead of
2519         isupper/tolower.
2520         * ldlang.c: Include "safe-ctype.h" instead of <ctype.h>.
2521         (stricpy): Use TOLOWER instead of isupper/tolower.
2522         (lang_leave_overlay_section): Use ISALNUM instead of isalnum.
2523         * ldlex.l: Include "safe-ctype.h" instead of <ctype.h>.
2524         (lex_warn_invalid): Use ISPRINT instead of isprint.
2525         * ldmain.c: Include "safe-ctype.h" instead of <ctype.h>.
2526         (main): For gettext, also set the LC_CTYPE locate facet.
2527         (add_keepsyms_file): Use ISSPACE instead of isspace.
2528         * lexsup.c: Include "safe-ctype.h" instead of <ctype.h>.
2529         (is_num, parse_args): Use ISDIGIT instead of isdigit.
2530         * mpw-elfmips.c: Include "safe-ctype.h" instead of <ctype.h>.
2531         (gldelf32ebmip_place_orphan): Use ISALNUM instead of isalnum.
2532         * mpw-eppcmac.c: Include "safe-ctype.h" instead of <ctype.h>.
2533         (gldppcmacos_read_file): Use ISSPACE instead of isspace.
2534         * pe-dll.c: Include "safe-ctype.h" instead of <ctype.h>.
2535         (quoteput): Use ISSPACE instead of isspace.
2536         (pe_dll_generate_implib, pe_process_import_defs): Use ISALNUM
2537         instead of isalnum.
2539 2001-09-18  Alan Modra  <amodra@bigpond.net.au>
2541         * deffilep.y (def_stash_module): Constify "name" param.
2543         * pe-dll.c: Replace CONST with const throughout.
2544         (quick_symbol): Constify "n1", "n2", "n3" params.
2545         (make_singleton_name_thunk): Constify "import" param.  Make
2546         "buffer_len" a size_t.
2547         (make_import_fixup_entry): Constify "name", "fixup_name",
2548         "dll_symname" params.
2549         (pe_get16): Cast args of bfd_seek.  Replace bfd_read with bfd_bread.
2550         (pe_get32): Likewise.
2551         (pe_implied_import_dll): Likewise.
2553         * emultempl/beos.em (sort_by_file_name): Constify "ra", "rb".
2554         (sort_by_section_name): Likewise.
2556         * emultempl/pe.em: Move defines for arm_epoc_pe before bfd.h included.
2557         (make_import_fixup): Cast printf arg, rel->address to long rather
2558         than int.
2559         (gld_${EMULATION_NAME}_after_open): Don't compare NULL against int.
2561 2001-09-15  Alan Modra  <amodra@bigpond.net.au>
2563         * ldmain.c (main): Rename BufferSize to ld_bufsz because HPUX
2564         defines BufferSize.  Increase buffer size by one.
2566 2001-09-14  Ralf Habacker <Ralf.Habacker@freenet.de>
2568         * pe-dll.c (pe_walk_relocs_of_symbol): Fix memory leak.
2570 2001-09-14  Kevin Lo <kevlo@openbsd.org>
2572         * configure.tgt: Add arm-openbsd target.
2574 2001-09-12  H.J. Lu  <hjl@gnu.org>
2576         * Makefile.am (ALL_EMULATIONS): Move eelf64ppc.o and
2577         eelf64lppc.o to ...
2578         (ALL_64_EMULATIONS): Here.
2579         * Makefile.in: Regenerated.
2581 2001-09-12  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
2583         * emultempl/pe.em(make_import_fixup): change signature to
2584         take asection as well as arelec; we need this for proper
2585         error reporting.  Only call pe_create_import_fixup() if
2586         there is no attempt to add a constant addend to the reloc;
2587         otherwise, report error condition.
2588         * pe-dll.c(pe_walk_relocs_of_symbol): change signature,
2589         since final argument is a pointer to make_import_fixup().
2590         Change call to cb() to match make_import_fixup() signature.
2591         (make_import_fixup_mark): make buffer_len unsigned.
2592         * pe-dll.h: change signature of pe_walk_relocs_of_symbol.
2594 2001-09-12  Charles Wilson  <cwilson@ece.gatech.edu>
2596         * ld.texinfo: add verbose documentation for auto-import
2597         direct-addressing workaround, to compliment the terse
2598         error message.
2600 2001-09-12  Andrew MacLeod  <amacleod@redhat.com>
2602         * scripttempl/v850.sc: Add gcc_except_table sections.
2604 2001-09-11  Jeffrey A Law  (law@cygnus.com)
2606         * emulparams/h8300helf.sh: Move stack to a much higher memory address.
2607         * emulparams/h8300self.sh: Similarly.
2609 2001-09-05 Danny Smith <dannysmith@users.souceforge.net>
2611         * ld.texinfo (Options, --stack): Correct default value for stack
2612         reserve.
2614 2001-09-05  Tom Rix <trix@redhat.com>
2616         * emultempl/aix.em : Handle import file XMC_XO and syscall symbols.
2618 2001-09-03  Andreas Jaeger  <aj@suse.de>
2620         * emultempl/beos.em: Declare prototypes for comparions functions,
2621         adjust definitions.
2623 2001-09-02  Andreas Jaeger  <aj@suse.de>
2625         * emultempl/aix.em: Add missing prototype.
2626         * emultempl/lnk960.em: Likewise.
2627         * emultempl/vanilla.em: Likewise.
2628         * emultempl/armcoff.em: Likewise.
2629         * emultempl/armelf_oabi.em: Likewise.
2630         * emultempl/beos.em: Likewise.
2631         * emultempl/gld960c.em: Likewise.
2632         * emultempl/gld960.em: Likewise.
2634         * emulparams/elf64alpha.sh (PARSE_AND_LIST_PROLOGUE): Add parameter
2635         for prototype declaration.
2637 2001-08-31  Eric Christopher  <echristo@redhat.com>
2638             Jason Eckhardt  <jle@redhat.com>
2640         * ldmain.c (get_emulation): Add support for -mips32 and -mips64.
2642 2001-08-31  Andreas Jaeger  <aj@suse.de>
2644         * emultempl/pe.em: Add missing prototypes.
2645         (gld_${EMULATION_NAME}_after_open): Remove extra args to
2646         pe_find_data_imports.
2647         (pr_sym): Add unused attribute.
2649 2001-08-29  Joel Sherrill <joel@OARcorp.com>
2651         * configure.tgt (i[3456]86-*-rtems*, m68*-*-rtems*): Change
2652         default from coff to elf.
2654 2001-08-29  Jeff Law <law@redhat.com>
2656         * emulparams/h8300helf.sh: Resync with h8300elf.sh.  Update
2657         ARCH specification.
2658         * emulparams/h8300self.sh: Similarly.
2660 2001-08-28  J"orn Rennecke <amylaar@redhat.com>
2662         * Makefile.am (ALL_EMULATIONS): Add eh8300elf.o, eh8300elf.o and
2663         eh8300self.o .
2664         (eh8300elf.c, eh8300helf.c, eh8300self.c): New targets.
2665         * configure.tgt (h8300-*-elf*): New case.
2666         * emulparams/h8300elf.sh, emulparams/h8300helf.sh: New files.
2667         * emulparams/h8300self.sh: New file.
2668         * Makefile.in: Regenerated.
2670 2001-08-28  Nick Clifton  <nickc@cambridge.redhat.com>
2672         * ldmain.c (main): Rename BSIZE to BufferSize to avoid collision
2673         with macro name.
2675 2001-08-27  Linus Nordberg  <linus@swox.com>
2676             Alan Modra  <amodra@bigpond.net.au>
2678         * Makefile.am (ALL_EMULATIONS): Add eelf64ppc.o and eelf64lppc.o.
2679         (eelf64ppc.c, eelf64lppc.c): Add make targets.
2680         Run "make dep-am"
2681         * Makefile.in: Regenerate.
2682         * configure.tgt: Add powerpc64 support.  Move pdp11, pjl, pj
2683         entries to correct alphabetical position.
2684         * emulparams/elf64ppc.sh: New.
2685         * emulparams/elf64lppc.sh: New.
2687 2001-08-27  Nick Clifton  <nickc@cambridge.redhat.com>
2689         * ldmain.c (main): Declare BSIZE as static.
2691 2001-08-23  Jakub Jelinek  <jakub@redhat.com>
2693         * emultempl/elf32.em (place_orphan): Place orphan .rel* sections
2694         into .rel.dyn resp. .rela.dyn if combreloc.
2695         (get_script): If .x linker script is equal to .xn, only put it
2696         once into the binary.
2697         Add .xc and .xsc scripts.
2698         (parse_args): Handle -z combreloc and -z nocombreloc.
2699         * scripttempl/elf.sc (.rela.sbss): Fix a typo.
2700         For .xc and .xsc scripts put all .rel* or .rela* input sections
2701         but .rel*.plt and PLT-like sections into .rel.dyn resp. .rela.dyn.
2702         * genscripts.sh (GENERATE_COMBRELOC_SCRIPT): Set if SCRIPT_NAME
2703         is elf.
2704         Strip trailing whitespace from script.
2705         Generate .xc and .xsc scripts if requested.
2706         * ldmain.c (main): Initialize link_info.combreloc and
2707         link_info.spare_dynamic_tags.
2708         * lexsup.c (OPTION_SPARE_DYNAMIC_TAGS): Define.
2709         (ld_options): Add --spare-dynamic-tags option.
2710         (parse_args): Likewise.
2711         * ld.texinfo: Document -z combreloc and -z nocombreloc.
2712         * ldint.texinfo: Document .xc and .xsc linker scripts.
2713         * NEWS: Add notes about -z combreloc and SHF_MERGE.
2715 2001-08-22  H.J. Lu  <hjl@gnu.org>
2717         * emulparams/elf32fr30.sh: Add a newline.
2719 2001-08-21  Andreas Jaeger  <aj@suse.de>
2721         * deffilep.y: Add missing prototypes.
2722         * pe-dll.c: Likewise.
2724 2001-08-20  Alan Modra  <amodra@bigpond.net.au>
2726         * ldlang.c (insert_pad): Fix typos in last patch.
2728         * ldlang.c: When traversing lang_statement_union_type lists,
2729         consistently use "header.next" rather than "next".
2730         * mpw-eppcmac.c: Likewise.
2731         * emultempl/beos.em: Likewise.
2732         * emultempl/hppaelf.em: Likewise.
2733         * emultempl/pe.em: Likewise.
2734         * ldlang.h (union lang_statement_union): Remove "next" field.
2736         * ldlang.c (insert_pad): Use offsetof macro.
2737         (lang_size_sections): Always neuter padding statements.
2738         * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete.
2740         * pe-dll.c (pe_dll_fill_sections): Correct type of "relax" param
2741         passed to lang_size_sections.
2742         (pe_exe_fill_sections): Likewise.
2743         * emultempl/pe.em (output_prev_sec_find): Copied from elf32.em.
2744         (gld_${EMULATION_NAME}_place_orphan): Merge from elf32.em.
2746 2001-08-18  Alan Modra  <amodra@bigpond.net.au>
2748         * emultempl/aix.em: Formatting fixes.
2750 2001-08-18  Alan Modra  <amodra@bigpond.net.au>
2752         * ldlang.c (insert_pad): Make use of an existing pad statement if
2753         available.  Move code calculating alignment, adjusting section
2754         alignment power, and adjusting dot to ..
2755         (size_input_section): .. here.  Remove unused relax param.
2756         (lang_size_sections): Change boolean `relax' param to boolean *.
2757         Adjust call to size_input_section.  Make use of insert_pad to
2758         place pad after the assignment statement.  If relaxing, zap
2759         padding statements.
2760         (reset_memory_regions): Reset output_bfd section sizes too.
2761         (relax_again): Move to..
2762         (lang_process): ..here.  Adjust call to lang_size_sections, and
2763         remove duplicated code.
2764         * ldlang.h (lang_size_sections): Change `relax' param to boolean *.
2766 2001-08-17  Alan Modra  <amodra@bigpond.net.au>
2768         * ld.texinfo: Document that fill values now use the four least
2769         significant bytes.
2770         * emulparams/elf32fr30.sh (NOP): Update.
2771         * emulparams/elf32mcore.sh: Likewise.
2772         * emulparams/elf64_s390.sh: Likewise.
2773         * emulparams/elf_i386.sh: Likewise.
2774         * emulparams/elf_i386_be.sh: Likewise.
2775         * emulparams/elf_i386_chaos.sh: Likewise.
2776         * emulparams/elf_i386_ldso.sh: Likewise.
2777         * emulparams/elf_s390.sh: Likewise.
2778         * emulparams/elf_x86_64.sh: Likewise.
2779         * emulparams/i386moss.sh: Likewise.
2780         * emulparams/i386nw.sh: Likewise.
2781         * emulparams/m68kelf.sh: Likewise.
2782         * scripttempl/elf.sc: Update NOP comment.
2783         * scripttempl/elfi370.sc: Likewise.
2784         * scripttempl/elfm68hc11.sc: Likewise.
2785         * scripttempl/elfm68hc12.sc: Likewise.
2786         * scripttempl/nw.sc: Likewise.
2788 2001-08-15  Tom Rix <trix@redhat.com>
2790         * ldgram.y (saved_script_handle): Initialize to NULL.
2791         * ldmain.c (main): Change check on saved_script_handle.
2793 2001-08-14  Alan Modra  <amodra@bigpond.net.au>
2795         * emultempl/elf32.em: Formatting fixes.
2796         (output_prev_sec_find): Test for bfd_ind_section too;  do so by
2797         looking at sec->owner.
2798         (output_rel_find): Move function inside LDEMUL_PLACE_ORPHAN test.
2799         (gld${EMULATION_NAME}_place_orphan): Add a few comments.  Remove
2800         unused code, and reorganize orphan section placement code.
2802         * ldlang.c (wild_doit): Rename to lang_add_section.
2803         * ldlang.h: Here too.
2804         * mpw-elfmips.c: And here.
2805         * emultempl/beos.em: And here.
2806         * emultempl/elf32.em: And here.
2807         * emultempl/hppaelf.em: And here.
2808         * emultempl/pe.em: And here.
2810 2001-08-13  Richard Henderson  <rth@redhat.com>
2812         * emultempl/needrelax.em: New file.
2813         * emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Reference it.
2814         * Makefile.am (eelf64_ia64.c): Depend on it.
2815         * Makefile.in: Rebuild.
2817 2001-08-13  Alan Modra  <amodra@bigpond.net.au>
2819         * emultempl/elf32.em: For SEC_EXCLUDE sections, ensure that
2820         output_section is set non-NULL.
2822         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Return
2823         `true' for SEC_EXCLUDE sections so that the generic code doesn't
2824         needlessly create an output_section_statement.  Treat a correctly
2825         named output_section_statement with NULL bfd_section as compatible.
2827 2001-08-13  Hans-Peter Nilsson  <hp@bitrange.com>
2829         * emultempl/generic.em: Support EXTRA_EM_FILE.
2830         (ld_${EMULATION_NAME}_emulation): Support emulation parameters
2831         LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
2832         LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
2833         LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
2834         LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
2835         LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
2836         LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
2837         LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
2838         LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
2839         LDEMUL_FIND_POTENTIAL_LIBRARIES.
2841 2001-08-12  Richard Henderson  <rth@redhat.com>
2843         * scripttempl/elf.sc, scripttempl/elfd30v.sc,
2844         scripttempl/elfm68hc11.sc, scripttempl/elfm68hc12.sc,
2845         scripttempl/v850.sc: Keep .jcr data.
2847 2001-08-12  H.J. Lu  <hjl@gnu.org>
2848             Andrew Haley  <aph@cambridge.redhat.com>
2849             Nick Clifton  <nickc@redhat.com>
2851         * ldgram.y (had_script): Change name to saved_script_handle.
2852         Change type to file handle.
2853         * ld.h (had_script): Rename and retype.
2854         * ldfile.c (ldfile_open_command_file): Save the file handle
2855         used in saved_script_handle.
2856         * lexsup.c (parse_args): Do not allow -c option to alter
2857         saved_script_handle.
2858         * ldmain.c (main): Print out the linker script used if
2859         --verbose is given.  Check saved_script_handle to obtain the
2860         external linker script used, or if NULL, dump the builtin
2861         script.
2862         * ld.texinfo: Document that --verbose now dumps the linker
2863         script used, regardless of whether it was an internal or an
2864         external script.
2866 2001-08-10  Andreas Jaeger  <aj@suse.de>
2868         * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
2869         to build warnings.
2870         * configure: Regenerate.
2872 2001-08-09  Alan Modra  <amodra@bigpond.net.au>
2874         * emultempl/elf32.em (output_prev_sec_find): Add missing prototype.
2876         * scripttempl/elf.sc: Move non-text .dynamic section before
2877         .plt/.got/.sdata* group.
2878         (OTHER_GOT_SECTIONS): Move to immediately after .got.
2879         (OTHER_SDATA_SECTIONS): Add.
2880         * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than
2881         OTHER_GOT_SECTIONS.
2882         * emulparams/crislinux.sh: Likewise.
2883         * emulparams/elf32b4300.sh: Likewise.
2884         * emulparams/elf32bmip.sh: Likewise.
2885         * emulparams/elf32bmipn32.sh: Likewise.
2886         * emulparams/elf32bsmip.sh: Likewise.
2887         * emulparams/elf32btsmip.sh: Likewise.
2888         * emulparams/elf32ebmip.sh: Likewise.
2889         * emulparams/elf32elmip.sh: Likewise.
2890         * emulparams/elf32l4300.sh: Likewise.
2891         * emulparams/elf32lmip.sh: Likewise.
2892         * emulparams/elf32lsmip.sh: Likewise.
2893         * emulparams/elf32ltsmip.sh: Likewise.
2894         * emulparams/elf64bmip.sh: Likewise.
2895         * emulparams/elf64btsmip.sh: Likewise.
2896         * emulparams/elf64ltsmip.sh: Likewise.
2898 2001-08-08  Alan Modra  <amodra@bigpond.net.au>
2900         * genscripts.sh: Source the emulparams script before each output
2901         script is generated so that variables like `RELOCATING' may affect
2902         variables defined in the emulparams script.
2904 2001-08-04  Alan Modra  <amodra@bigpond.net.au>
2906         * emultempl/aix.em: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this
2907         order.
2909         * emultempl/beos.em (sort_sections): Modify for 2001-08-03 change,
2910         ie. iterate over wild_statement.section_list.
2911         (gld${EMULATION_NAME}_place_orphan): Likewise.
2913 2001-08-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2915         * scripttempl/elfm68hc12.sc (FINISH_CODE, FINISH_RELOC): New to handle
2916         .fini[0-4] sections used by _exit
2917         (CTOR, DTOR): Export ctor/dtor symbols; move them to ROM.
2918         (*.text,*.data,*.bss): Take into account .text.*, .data.*, .bss.*.
2919         * scripttempl/elfm68hc11.sc: Likewise.
2921 2001-08-03  H.J. Lu  <hjl@gnu.org>
2923         * emultempl/beos.em (init): Add the missing initialization.
2925 2001-08-03  Alan Modra  <amodra@bigpond.net.au>
2927         * ld.texinfo (Input Section Basics): Clarify ordering of output
2928         sections.
2929         * ldlang.c (callback_t): Add wildcard_list param.
2930         (walk_wild_section): Remove "section" param.  Rewrite for
2931         lang_wild_statement_type change.  Remove unique_section_p test.
2932         (walk_wild_file): Remove "section" param.
2933         (walk_wild): Remove "section" and "file" params.
2934         (lang_gc_wild): Likewise.
2935         (wild): Likewise.  Modify for lang_wild_statement_type change.
2936         (wild_sort): Likewise.  Add "sec" param.
2937         (gc_section_callback): Likewise.
2938         (output_section_callback): Likewise.  Do unique_section_p test.
2939         (map_input_to_output_sections): Modify call to wild.
2940         (lang_gc_sections_1): Likewise.
2941         (print_wild_statement): Modify for lang_wild_statement_type
2942         change.
2943         (lang_add_wild): Replace filename, filenames_sorted param with
2944         filespec.  Replace section_name, sections_sorted,
2945         exclude_filename_list with section_list.
2946         * ldlang.h (lang_add_wild): Here too.
2947         (lang_wild_statement_type): Replace section_name, sections_sorted,
2948         and exclude_filename_list with section_list.
2949         * ldgram.y (current_file): Delete.
2950         (%union): Add wildcard_list.
2951         (file_NAME_list): Set type to wildcard_list.  Build a linked list
2952         rather than calling lang_add_wild for each entry.
2953         (input_section_spec_no_keep): Call lang_add_wild here instead.
2954         * ld.h (struct wildcard_list): Declare.
2955         * mri.c (mri_draw_tree): Modify to suit new lang_add_wild.
2957 2001-08-02  Charles Wilson  <cwilson@ece.gatech.edu>
2959         * ldmain.c (main): initialize link_info.pei386_auto_import
2960         * pe-dll.c: new tables for auto-export filtering
2961         (auto_export): change API, pass abfd for contextual filtering.
2962         Loop thru tables of excluded symbols instead of comparing
2963         "by hand".
2965 2001-08-02  Paul Sokolovsky  <paul.sokolovsky@technologist.com>
2967         * pe-dll.c: new variable pe_dll_enable_extra_debug. New
2968         static variable current_sec (static struct sec *). Add
2969         forward declaration for add_bfd_to_link.
2970         (process_def_file): Don't export undefined symbols. Do not
2971         export symbols starting with  "_imp__".  Call auto_export()
2972         with new API.
2973         (pe_walk_relocs_of_symbol): New function.
2974         (generate_reloc): add optional extra debugging
2975         (pe_dll_generate_def_file): eliminate extraneous initial blank
2976         line in output
2977         (make_one): enlarge symtab to make room for __nm__ symbols
2978         (DATA auto-import support).
2979         (make_singleton_name_thunk): New function.
2980         (make_import_fixup_mark): New function.
2981         (make_import_fixup_entry): New function.
2982         (pe_create_import_fixup): New function.
2983         (add_bfd_to_link): Specify that 'name' argument is a CONST
2984         char *.
2985         * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
2986         declare new functions pe_walk_relocs_of_symbol and
2987         pe_create_import_fixup.
2988         * emultempl/pe.em: add new options --enable-auto-import,
2989         --disable-auto-import, and --enable-extra-pe-debug.
2990         (make_import_fixup): New function.
2991         (pe_find_data_imports): New function.
2992         (pr_sym): New function.
2993         (gld_${EMULATION_NAME}_after_open): Add optional extra pe
2994         debugging. Call pe_find_data_imports.  Mark .idata as DATA, not
2995         CODE.
2997 2001-08-02  Charles Wilson  <cwilson@ece.gatech.edu>
2999         * ld.texinfo: add additional documentation for
3000         --export-all-symbols.  Document --out-implib,
3001         --enable-auto-image-base, --disable-auto-image-base,
3002         --dll-search-prefix, --enable-auto-import, and
3003         --disable-auto-import.
3004         * ldint.texinfo: Add detailed documentation on auto-import
3005         implementation.
3007 2001-07-30  Nick Clifton  <nickc@cambridge.redhat.com>
3009         * ld.texinfo (Simple Assignments): Fix computation in SECTIONS
3010         example.
3012 2001-07-24  Alan Modra  <amodra@bigpond.net.au>
3014         * Makefile.am: Update dependencies with "make dep-am".
3015         * Makefile.in: Regenerate
3017 2001-07-23  Alan Modra  <amodra@bigpond.net.au>
3019         * ldcref.c (check_section_sym_xref): New function.
3020         (check_nocrossrefs): Call it.
3021         (check_nocrossref): Interate over h->refs here instead of..
3022         (check_refs): ..here.  Pass in the symbol name, section, and bfd
3023         rather than hash_entry pointers.
3024         (struct check_refs_info): Keep symbol name rather than hash entry.
3025         Remove "same".
3026         (check_reloc_refs): Tweak for above changes in check_refs_info.
3027         Only report references to section syms when symname is NULL to
3028         prevent duplicate messages for the same reloc.
3030 2001-07-19  Nick Clifton  <nickc@cambridge.redhat.com>
3032         * ldexp.c (exp_print_tree): Use stderr if config.map_file is not
3033         available.  Do not print NULL trees.
3034         (exp_print_token): Print unknown tokens with values > 126 as
3035         decimal values not ASCII characters.
3037         * ldlang.c (lang_leave_overlay): If a region is specified assign
3038         it to all sections inside the overlay unless they have been
3039         assigned to the own, non-default, memory region.
3041         * README: Add header for consistency with other README files.
3043 2001-07-14  H.J. Lu  <hjl@gnu.org>
3045         * emultempl/elf32.em (output_prev_sec_find): Never return
3046         bfd_abs_section_ptr, bfd_com_section_ptr nor
3047         bfd_und_section_ptr.
3049 2001-07-14  Nick Clifton  <nickc@cambridge.redhat.com>
3051         * Makefile.am (em32relf.c): Change dependency from generic.em to
3052         elf32.em.
3053         * Makefile.in: Regenerate.
3055 2001-07-14  matthew green  <mrg@eterna.com.au>
3057         * configure.tgt (i386-*-netbsdelf*): New target.
3058         (i386-*-netbsd*): Set targ_extra_emuls to `elf_i386'
3060 2001-07-13  Jakub Jelinek  <jakub@redhat.com>
3062         * emultempl/elf32.em (output_prev_sec_find): New.
3063         (place_orphan): Use it.
3065 2001-07-11  H.J. Lu  <hjl@gnu.org>
3067         * ldmain.c (main): Fix typos in the last change.
3069 2001-07-11  Jakub Jelinek  <jakub@redhat.com>
3071         * ldmain.c (main): Disallow -F and -f without -shared.
3073 2001-07-11  Nick Clifton  <nickc@cambridge.redhat.com>
3075         * emultempl/pe.em (after_open): Check for the output_bfd not
3076         having any coff_data structure allocated to it.
3078 2001-07-09  David O'Brien  <obrien@FreeBSD.org>
3080         * emultempl/elf32.em: Do not assuming that contents of the buffer
3081         returned from basename function will remain unchanged accross other
3082         function calls.
3084 2001-07-03  H.J. Lu  <hjl@gnu.org>
3086         * scripttempl/elf.sc (DYNAMIC_PAD): Revert the change made on
3087         2001-07-03. It creates dynamic entries even for static binaries.
3089 2001-07-03  Jakub Jelinek  <jakub@redhat.com>
3091         * scripttempl/elf.sc (DYNAMIC_PAD): New variable.
3092         (DYNAMIC): Use it to reserve few dynamic entries for
3093         post-linking tools.
3095 2001-06-27  Alan Modra  <amodra@bigpond.net.au>
3097         * emulparams/hppa64linux.sh: New file.
3098         * configure.tgt: hppa*64*-*-linux* uses hppa64linux.sh
3099         * Makefile.am (ALL_64_EMULATIONS): Add ehppa64linux.o
3100         (ehppa64linux.c): Add rule to make it.
3101         Run "make dep-am".
3102         * Makefile.in: Regenerate.
3104 2001-06-21  Hans-Peter Nilsson  <hp@axis.com>
3106         * ld.texinfo (Options, -r): Mention restrictions when using
3107         different object formats.
3109 2001-06-19  Hans-Peter Nilsson  <hp@axis.com>
3111         * ldlang.c (lang_check): Emit fatal error if relocatable link
3112         between different object flavours with relocations in input.
3114 2001-06-19  H.J. Lu  <hjl@gnu.org>
3116         * ld.texinfo (-E, --export-dynamic): Mention --version-script.
3117         (--version-script): Mention the language support.
3119 2001-06-19  H.J. Lu <hjl@gnu.org>
3121         * ldlang.c (lang_check): Revert the change mode on 2001-06-15.
3123 2001-06-18  H.J. Lu <hjl@gnu.org>
3125         * Makefile.am (ld.1): Remove the prefix `$(srcdir)/'.
3126         (diststuff): Add $(MANS).
3127         * Makefile.in: Regenerated.
3129         * ld.1: Removed.
3131 2001-06-18  Hans-Peter Nilsson  <hp@axis.com>
3133         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
3134         Update for API change in bfd_elf${ELFSIZE}_size_dynamic_sections.
3135         * mpw-elfmips.c (gldelf32ebmip_before_allocation): Ditto.
3136         * ld.h (args_type): Remove member export_dynamic.  All users
3137         changed to use struct bfd_link_info member.
3139         * Makefile.am (ecriself.c, ed10velf.c, ei386moss.c): Depend on
3140         $(srcdir)/emultempl/elf32.em, not $(srcdir)/emultempl/generic.em.
3141         * Makefile.in: Regenerate.
3143 2001-06-18  H.J. Lu  <hjl@gnu.org>
3145         * ldlang.c (init_os): Add the newline to the einfo call.
3146         (lang_check): Likewise.
3147         (lang_do_version_exports_section): Likewise.
3149 2001-06-15  H.J. Lu  <hjl@gnu.org>
3151         * lexsup.c (parse_args); Save optind to report unrecognized
3152         option.
3154 2001-06-15  Hans-Peter Nilsson  <hp@axis.com>
3156         * ldlang.c (lang_check): Emit fatal error if relocatable link
3157         between different object flavours.
3159         * lexsup.c (parse_args) <case OPTION_EXPORT_DYNAMIC, case 'E'>:
3160         Set new link_info member export_dynamic.
3161         * ldmain.c (main): Initialize new link_info member export_dynamic.
3163 2001-06-12  Nick Clifton  <nickc@cambridge.redhat.com>
3165         * ldlang.c (walk_wild): Only call walk_wild_file if
3166         lookup_name returns something.
3167         (lookup_name): If load_symbols fails, return NULL.
3168         (load_symbols): Change to a boolean function.
3169         (open_input_bfds): If load_symbols fails then do not make the
3170         executable.
3172 2001-06-08  Alan Modra  <amodra@bigpond.net.au>
3174         * ldlang.c (record_bfd_errors): Remove.
3176         * emultempl/aix.em: Fix copyright dates.
3178 2001-06-07  Andreas Jaeger  <aj@suse.de>
3180         * elf_x86_64.sh (NONPAGED_TEXT_START_ADDR): Increase.
3181         (TEXT_START_ADDR): Likewise.
3183 2001-06-06  Martin Schwidefsky <schwidefsky@de.ibm.com>
3185         * configure.host: Set HOSTING_CRT0/HOSTING_LIBS correctly for s/390.
3187 2001-06-05  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
3189         * emultempl/pe.em (init): Reduce default stack reserve to 0x200000.
3191 2001-05-31  H.J. Lu  <hjl@gnu.org>
3193         * ldlang.c (open_input_bfds): Don't change the bfd error
3194         handler whilst loading symbols.
3196 2001-05-28  Nick Clifton  <nickc@cambridge.redhat.com>
3198         * configure.tgt: Remove i370-mvs architecture, it is not currently
3199         supported.
3201 2001-05-25  H.J. Lu  <hjl@gnu.org>
3203         * emulparams/ppcmacos.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
3204         like emulparams/aixppc.sh.
3206 2001-05-25  H.J. Lu  <hjl@gnu.org>
3208         * emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Move
3209         setting of output_filename after bfd_scan_arch.
3210         * emultempl/pe.em: Likewise.
3212 2001-05-25  H.J. Lu  <hjl@gnu.org>
3214         * emulparams/aixrs6.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
3215         like emulparams/aixppc.sh.
3217         * emultempl/aix.em (sc): Use ${srcdir}/emultempl/ostring.sed
3218         instead of ${srcdir}/emultempl/stringify.sed.
3220 2001-05-25  Timothy Wall  <twall@oculustech.com>
3222         * emulparams/elf64_aix.sh: Change settings to match IBM linker
3223         output.
3225 2001-05-25  Alan Modra  <amodra@one.net.au>
3227         * configure.host: Replace linuxoldld with linux*oldld.
3228         * configure.tgt: Likewise.
3230 2001-05-24  H.J. Lu  <hjl@gnu.org>
3232         * emultempl/stringify.sed: Removed again.
3234 2001-05-24  H.J. Lu  <hjl@gnu.org>
3236         * emultempl/aix.em (OUTPUT_ARCH): Defined.
3237         (gld${EMULATION_NAME}_before_parse): Initialize
3238         ldfile_output_architecture, ldfile_output_machine and
3239         ldfile_output_machine_name from ${OUTPUT_ARCH} if possible.
3240         * emultempl/beos.em: Likewise.
3241         * emultempl/elf32.em: Likewise.
3242         * emultempl/linux.em: Likewise.
3243         * emultempl/mipsecoff.em: Likewise.
3244         * emultempl/pe.em: Likewise.
3245         * emultempl/sunos.em: Likewise.
3247 2001-05-24 Tom Rix <trix@redhat.com>
3249         * emultempl/aix.em : (gld${EMULATION_NAME}_read_file)
3250         udate import file format.
3251         (change_symbol_mode) New, same
3252         (is_syscall) New, same
3253         * emulparams/aixppc.sh : add SYSCALL_MASK and SYMBOL_MODE_MASK
3254         * emulparams/aixppc64.sh : same
3255         * emulparams/aixrs6.sh : same
3256         * emulparams/ppcmacos.sh : same
3257         * emultempl/aix.em : use strtoull to parse options
3258         * Makefile.am : add eaixppc64 emulation for xcoff64
3259         * Makefile.in : same
3260         * configure.tgt : same
3262         * scripttempl/aix.sc : default text section offset to 0x10000000
3263         default data section offset to 0x20000000
3264         add .sv3264 and .sv64 pseudo sections
3265         loader and debug sections use the currect section offset.
3267         * emultempl/aix.em : Add xcoff64 support
3268         Add -binitfini support
3269         (gld${EMULATION_NAME}_before_parse) -binitfini
3270         (gld${EMULATION_NAME}_parse_args) same
3271         (gld${EMULATION_NAME}_before_allocation) format change for special
3272         sections
3274         * emulparams/aixppc64.sh : New file for xcoff64 support
3276 2001-05-23  Alexandre Oliva  <aoliva@redhat.com>
3278         * emultempl/elf32.em (ELF_INTERPRETER_SET_DEFAULT): Use this new
3279         variable to avoid non-portable shell construct.
3281 2001-05-23  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3283         * ldmain.c (get_emulation): Add -mips5 command line argument.
3285 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
3287         * emulparams/elf_i386_ldso.sh: New, copied from elf_i386.sh.
3288         (ELF_INTERPRETER_NAME): Define it.
3289         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
3290         it.
3291         * configure.tgt (targ_emul, targ_extra_emuls)
3292         [i[3456]86-*-solaris2*, i[3456]86-*-solaris*]: Use elf_i386_ldso
3293         as primary, elf_i386 as extra.
3294         * Makefile.am (ALL_EMULATIONS): Added eelf_i386_ldso.o.
3295         (eelf_i386_ldso.c): New rule.
3296         * Makefile.in: Rebuilt.
3298 2001-05-22  Nick Clifton  <nickc@redhat.com>
3300         * lexsup.c (ld_options):  Allow -I to be an alias for
3301         --dynamic-linker.  This is for Solaris compatability.
3302         * ld.texinfo: Document that -I can be used.
3303         * ld.1: Regenerate.
3305 2001-05-16  Alan Modra  <amodra@one.net.au>
3307         * ldlang.c (wild_doit): Use linker_has_input to reliably determine
3308         whether an input section is the first one assigned to an output
3309         section.
3310         Assorted formatting fixes.
3312 2001-05-14  DJ Delorie  <dj@delorie.com>
3314         * Makefile.am (ld.dvi): Search bfd/doc for texinfo files.
3315         * Makefile.in: Ditto.
3317 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
3319         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
3320         .gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
3321         output sections.
3322         * emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
3324 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
3326         * ldlang.c (lang_process): Call bfd_merge_sections.
3328 2001-05-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
3330         * ldgram.y: Fix typo.
3332 2001-05-03  H.J. Lu  <hjl@gnu.org>
3334         * emultempl/elf32.em: Include "libiberty.h".
3335         (gld${EMULATION_NAME}_vercheck): Call basename () to get the
3336         basename of the bfd filename.
3337         (gld${EMULATION_NAME}_stat_needed): Likewise.
3338         (gld${EMULATION_NAME}_try_needed): Likewise.
3339         (gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
3341 2001-05-02  H.J. Lu  <hjl@gnu.org>
3343         * emultempl/pe.em: Include <ctype.h>.
3345 2001-05-02  Johan Rydberg  <jrydberg@opencores.org>
3347         * emulparams/elf32openrisc.sh: New file.
3349         * Makefile.am: Add OpenRISC target.
3350         * Makefile.in: Regenerated.
3352         * configure.tgt: Add openrisc-*-* mapping.
3354 2001-05-02  Nick Clifton  <nickc@redhat.com>
3356         * emultempl/aix.em: Replace buystring with xstrdup.
3357         * emultempl/beos.em: Replace buystring with xstrdup.
3359 2001-05-02  H.J. Lu  <hjl@gnu.org>
3361         * ldfile.c: Include "libiberty.h".
3362         * ldlex.l: Likewise.
3364         * ldmisc.c (buystring): Removed.
3365         * ldmisc.h: Likewise.
3367         * ldfile.c: Replace buystring with xstrdup.
3368         * ldlang.c: Likewise.
3369         * ldlex.l: Likewise.
3370         * ldmain.c: Likewise.
3371         * ldmisc.c: Likewise.
3372         * lexsup.c: Likewise.
3373         * mpw-eppcmac.c: Likewise.
3375 2001-04-30  Andreas Jaeger  <aj@suse.de>
3377         * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value.
3379 2001-04-28  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
3381         * ldlang.c (load_symbols): Give emulation a chance
3382         to process unrecognized file before fatal error is
3383         reported, not after.
3385 2001-04-27  Sean McNeil <sean@mcneil.com>
3387         * configure.tgt: Add arm-vxworks target.
3388         * scripttempl/armcoff.sc: Support .text or .data as a section name
3389         prefix.
3390         Define _etext.
3392 2001-04-13  J.T. Conklin  <jtc@redback.com>
3394         * ld.texinfo: Document --fatal-warnings.
3395         * ld.1: Regenerate.
3397         * ldmisc.c (vfinfo): Set flag to inhibit making executable if
3398         warnings have been turned into errors.
3399         * lexsup.c (OPTION_WARN_FATAL): Define.
3400         (ld_options): Entry for --fatal-warnings.
3401         (parse_args): Handle OPTION_WARN_FATAL.
3402         * ld.h (ld_config_type): Add fatal_warnings field.
3404 2001-04-13  Jakub Jelinek  <jakub@redhat.com>
3406         * ldmain.c (main): Default to discard_sec_merge.
3407         * lexsup.c (OPTION_DISCARD_NONE): Define.
3408         (ld_options): Add --discard-none.
3409         (parse_args): Handle OPTION_DISCARD_NONE.
3410         * ldlang.c (wild_doit): SEC_MERGE should be set in the output
3411         section only if SEC_MERGE and SEC_STRINGS flags and entsize of
3412         all its input sections match.
3414 2001-04-05  Steven J. Hill  <sjhill@cotw.com>
3416         * Makefile.am (ALL_EMULATIONS): Add eelf32ltsmip.o.
3417         (ALL_64_EMULATIONS): Add eelf64btsmip.o and eelf64ltsmip.o.
3418         (eelf32ltsmip.c): New target.
3419         (eelf64btsmip.c): Likewise.
3420         (eelf64ltsmip.c): Likewise.
3421         * Makefile.in: Regenerated.
3423         * configure.tgt (mips*el-*-linux-gnu): Uses traditional MIPS
3424         target.
3425         (mips*-*-linux-gnu*): Likewise.
3427         * emulparams/elf32ltsmip.sh: New. Traditional little endian
3428         MIPS taget.
3429         * emulparams/elf64btsmip.sh: New. Traditional 64bit big endian
3430         target.
3431         * emulparams/elf64ltsmip.sh: New. Traditional 64bit little
3432         endian target.
3434 2001-04-05  Hans-Peter Nilsson  <hp@axis.com>
3436         * emulparams/criself.sh (EXECUTABLE_SYMBOLS): Cannot provide
3437         correct value of __Stext here.
3438         (TEXT_START_SYMBOLS): Define; always define __Stext, to start of
3439         .startup section.
3441         * emulparams/crislinux.sh: Remove FIXME.
3443 2001-04-02  Alan Modra  <alan@linuxcare.com.au>
3445         * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 64k.
3446         (TEXT_START_ADDR, TARGET_PAGE_SIZE): Likewise.
3448 2001-03-27  Hans-Peter Nilsson  <hp@axis.com>
3450         * configure.tgt (cris-*-*): Change default emulation to criself.
3451         (cris-*-*aout*): New rule.
3453 2001-03-27  Matthew Wilcox  <willy@ldl.fc.hp.com>
3455         * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 0x4000.
3456         (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
3458 2001-03-26  Andreas Jaeger  <aj@suse.de>
3460         * ld.texinfo (Overview): Fix syntax in texi code.
3462 2001-03-25  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
3464         * ld.texinfo: Put @c man indications to generate the ld man page.
3465         When generating man, define all the variables.  Define SEEALSO
3466         and SYNOPSIS.  Re-organize some lines to avoid the cross references.
3467         * Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variables.
3468         (ld.1): Generate from ld.texinfo.
3469         * Makefile.in: Regenerate.
3471 2001-03-23  Mark Elbrecht <snowball3@bigfoot.com>
3473         * scripttempl/i386go32.sc: Support the GCC flags '-ffunction-sections'
3474         and '-fdata-sections'. Set the VMA of STABS sections to zero.
3476 2001-03-17  Ulrich Drepper  <drepper@redhat.com>
3478         * emultmpl/elf32.em (gld${EMULATION_NAME}_search_needed): If NAME
3479         is an absolute path look only for this file and not along the path.
3481 2001-03-17  Ulrich Drepper  <drepper@redhat.com>
3483         * emultempl/elf32.em (OPTION_GROUP): New macro.
3484         Add new option Bgroup to longopts.
3485         (gld*_parse_args): Handle GROUP_OPTION and recognize -z defs.
3486         (gld*_list_options): Add -Bgroup and -z defs.
3487         * ld.1: Document -Bgroup and -z defs.
3488         * ld.texinfo: Likewise.
3490 2001-03-07  Michael Meissner  <meissner@redhat.com>
3492         * scripttempl/elfd10v.sc (.rodata,.rodata1,.data1,.sdata): Deal
3493         with sections created by -fdata-sections.
3494         (.dynbss,.bss): Ditto.
3496 2001-03-05  Alan Modra  <alan@linuxcare.com.au>
3498         * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
3499         after_allocation_default, not gld..._before_allocation.
3501 2001-02-27  Alan Modra  <alan@linuxcare.com.au>
3503         * configure.in (BFD_VERSION): New.
3504         (AM_INIT_AUTOMAKE): Use $BFD_VERSION.
3505         * configure: Regenerate.
3506         * Makefile.am: Run "make dep-am"
3507         * Makefile.in: Regenerate.
3509 2001-02-26  Timothy Wall  <twall@cygnus.com>
3511         * emulparams/elf64_aix.sh: Add additional read-only sections;
3512         uncomment lines which are now required.
3514 2001-02-26  H.J. Lu  <hjl@gnu.org>
3516         * ldlang.c (open_input_bfds): Set the bfd error handler so
3517         that problems can be caught whilst loading symbols.
3518         (record_bfd_errors): New function: Report BFD errors and mark
3519         the executable output as being invalid.
3521 2001-02-22  Timothy Wall  <twall@cygnus.com>
3523         * configure.host: Add configuration for ia64-*-aix*.
3524         * Makefile.am (ALL_64_EMULATIONS): Add emulation for ia64-*-aix*.
3525         Add dependencies for eelf64_aix.c.
3526         * Makefile.in: Regenerate.
3527         * configure.tgt: Add ia64-*-aix* mapping.
3528         * emulparams/elf64_aix.sh: Add settings for elf64 on aix5.
3530 2001-02-20  H.J. Lu  <hjl@gnu.org>
3532         * ldfile.c (ldfile_open_file): Set entry->search_dirs_flag to
3533         false if we found the file.
3535 2001-02-18  David O'Brien  <obrien@FreeBSD.org>
3537         * configure.tgt: Add FreeBSD/Alpha, FreeBSD/x86-64, FreeBSD/ia64,
3538         FreeBSD/PowerPC, FreeBSD/arm, and FreeBSD/sparc64 entries.
3540 2001-02-18  lars brinkhoff  <lars@nocrew.org>
3542         * Makefile.am: Add PDP-11 target.
3543         * configure.tgt: Likewise.
3544         * emulparams/pdp11.sh: New file.
3546 2001-02-17  David O'Brien  <obrien@FreeBSD.org>
3548         * configure.host: Add a generic FreeBSD configuration entry such that
3549         all [modern] FreeBSD systems on all platforms will look the same.
3551 2001-02-14  H.J. Lu  <hjl@gnu.org>
3553         * configure.tgt: Remove mention of earmelf_linux26.
3555 2001-02-13  Richard Henderson  <rth@redhat.com>
3557         * emulparams/elf64_ia64.sh (OTHER_GOT_SYMBOLS): Remove.
3559 2001-02-13  H.J. Lu  <hjl@gnu.org>
3561         * ldexp.h (node_type): Add etree_provided.
3562         * ldexp.c (exp_fold_tree): Handle etree_provided. Set the node
3563         type to etree_provided if defined by PROVIDE. Allow updating
3564         for etree_provided.
3565         (exp_print_tree): Handle etree_provided.
3566         * mpw-elfmips.c (gldelf32ebmip_find_exp_assignment): Handle
3567         etree_provided.
3569 2001-02-09  David Mosberger  <davidm@hpl.hp.com>
3571         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add
3572         .IA_64.unwind.* pattern to unwind table section and
3573         .IA_64.unwind_info* pattern to unwind info section.
3575 2001-02-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3577         * Makefile.am: Add linux target for S/390.
3578         * Makefile.in: Likewise.
3579         * configure.host: Likewise.
3580         * configure.tgt: Likewise.
3581         * emulparams/elf64_s390.sh: New file.
3582         * emulparams/elf_s390.sh: New file.
3584 2001-02-09  Jakub Jelinek  <jakub@redhat.com>
3586         * configure.tgt (sparc64-*-linux-gnu*): Add elf32_sparc into
3587         targ_extra_libpath.
3588         (sparc-*-linux-gnu*): Add elf64_sparc into targ_extra_libpath.
3590 2001-02-06  Philip Blundell  <philb@gnu.org>
3592         * Makefile.am: Remove mention of earmelf_linux26.
3593         * Makefile.in: Regenerate.
3595 2001-02-04  Philip Blundell  <philb@gnu.org>
3597         * emulparams/armelf_linux.sh (TEXT_START_ADDR): Set to 0x8000.
3598         * emulparams/armelf_linux26.sh: Delete.
3599         * configure.tgt: Remove mention of armelf_linux26 emulation.
3601 2001-02-01  Nick Clifton  <nickc@redhat.com>
3603         * ld.1: Replace occurances of -oformat with --oformat.
3605 2001-01-25  Jim Driftmyer <jdrift@stny.rr.com>
3607         * ldlang.c (lang_leave_overlay): Don't set lma_region when
3608         load_base is specified.
3610 2001-01-24  Hans-Peter Nilsson  <hp@axis.com>
3612         * emultempl/elf32.em: Correct spelling in comments and listed
3613         options.
3615 2001-01-23  Alan Modra  <alan@linuxcare.com.au>
3617         * ldlang.c (lang_leave_overlay): Only set lma_region from the
3618         default for the first section of a group of overlay sections.
3620 2001-01-22  Alan Modra  <alan@linuxcare.com.au>
3622         * Makefile.am (GENSCRIPTS): Pass exec_prefix.
3623         * Makefile.in: Regenerate.
3624         * genscripts.sh: Use exec_prefix parameter to specify tool lib.
3625         Check for null tool_dir.
3627 2001-01-16  Jim Wilson  <wilson@redhat.com>
3629         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add IA_64.unwind
3630         and IA_64.unwind.info.
3632 2001-01-16  H.J. Lu  <hjl@gnu.org>
3634         * ldlang.c (lang_check): Merge the private data only if the
3635         input file has contents.
3637 2001-01-14  Alan Modra  <alan@linuxcare.com.au>
3639         * emulparams/hppalinux.sh (OUTPUT_FORMAT): Set to elf32-hppa-linux.
3641         * emultempl/hppaelf.em (hppaelf_after_parse): New function,
3642         enabling search for libmilli.  On a relocatable link, make .text
3643         sections unique.
3644         (LDEMUL_AFTER_PARSE): Define.
3645         (hppaelf_finish): Correct spelling of relocatable in comments.
3647         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
3648         rummage through the script for sections on the unique list.
3649         Correct length of strncmp for ".note".
3650         (gld${EMULATION_NAME}_check_needed): Rearrange function.
3652         * ldlang.c (unique_section_list): New var.
3653         (unique_section_p): New function.
3654         (walk_wild_section): Don't match sections on unique_section_list.
3655         (lang_add_unique): New function.
3656         Correct spelling of relocatable in comments.
3658         * ldlang.h (struct unique_sections): Declare.
3659         (unique_section_list): Declare.
3660         (unique_section_p): Declare.
3661         (lang_add_unique): Declare.
3663         * lexsup.c (ld_options): Allow --unique to take an optional arg.
3664         (parse_args [OPTION_UNIQUE]): Call lang_add_unique.
3666         * ld.texinfo (--unique): Update.
3668 2001-01-13  Nick Clifton  <nickc@redhat.com>
3670         * lexsup.c (parse_args): Remove spurious white space.
3672 2001-01-12  Nick Clifton  <nickc@redhat.com>
3674         * lexsup.c (parse_args): Update copyright date.
3676 2001-01-12  Philip Blundell  <pb@futuretv.com>
3678         * configure.host: Set HOSTING_LIBS appropriately for ix86-cygwin.
3680 2001-01-10  Kazu Hirata  <kazu@hxi.com>
3682         * scripttempl/h8300.sc: Fix formatting.  Fix a comment typo.
3683         * scripttempl/h8300h.sc: Fix formatting.
3684         * scripttempl/h8300s.sc: Likewise.
3685         * scripttempl/h8500.sc: Likewise.
3686         * scripttempl/h8500b.sc: Likewise.
3687         * scripttempl/h8500c.sc: Likewise.
3688         * scripttempl/h8500m.sc: Likewise.
3689         * scripttempl/h8500s.sc: Likewise.
3691 2000-01-07  David O'Brien  <obrien@BSDi.com>
3693         * emultempl/elf32.em: Only perform Linux ld hints processing when
3694         targeting Linux.
3696 2001-01-07  Philip Blundell  <philb@gnu.org>
3698         * ld.texinfo (Bug Reporting): Update email address for reports.
3700 2000-12-31  Nick Clifton  <nickc@redhat.com>
3702         * lexsup.c (parse_args): Set opterr to 0 and detect unparsed long
3703         options by checking for a return value of '?' not -1.
3705 2000-12-28  Nick Clifton  <nickc@redhat.com>
3707         * lexsup.c (struct ld_option): Add new enum value:
3708         EXACTLY_TWO_DASHES.
3709         (ld_options[]): Change -omagic, -output and -oformat options
3710         to be EXACTLY_TWO_DASHES.
3711         (OUTPUT_COUNT): Use ARRAY_SIZE.
3712         (parse_args): Change parameter 'argc' to unsigned.
3713         Place EXACTLY_TWO_DASHES options into new really_longopts
3714         array.
3715         If getopt_long_only fails, try calling getopt_long using the
3716         really_longopts array.
3717         (help): Print a double dash for both EXACTLY_TWO_DASHES and
3718         TWO_DASHES options.
3720         * ldlex.h: Fix prototype of parse_args.
3722         * ld.texinfo: Document that long options starting with 'o'
3723         must be preceeded by two dashes.  Change example of a single
3724         dashed long option from -oformat to -trace-symbol.
3726 2000-12-26  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
3728         * emultempl/pe.em (OPTION_NO_DEFAULT_EXCLUDES): Define.
3729         (longopts[]): New --no-default-excludes option.
3730         (gld_${EMULATION_NAME}_list_options): Document.
3731         (gld_${EMULATION_NAME}_parse_args): Handle.
3733 2000-12-13  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
3735         * ldlang.c (new_stat): Revert the last beautification with "innocent"
3736         whitespace, it breaks the K&R C preprocessor.
3738 2000-12-11  DJ Delorie  <dj@redhat.com>
3740         * ld.texinfo: Add notes about --whole-archive and gcc.
3742 2000-11-18  Fred Fish  <fnf@be.com>
3744         * lexsup.c (OPTION_ALLOW_SHLIB_UNDEFINED): Define.
3745         (ld_options): Entry for --allow-shlib-undefined.
3746         (parse_args): Handle OPTION_ALLOW_SHLIB_UNDEFINED.
3747         * ldmain.c (main): Initialize link_info.allow_shlib_undefined
3748         to false.
3749         * ld.texinfo: Document new command line switch.
3751 2000-12-12  Geoffrey Keating  <geoffk@redhat.com>
3753         * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS):
3754         .fixup is actually read/write.
3755         * emulparams/elf32lppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
3756         * emulparams/elf32ppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
3757         * emulparams/elf32lppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
3759 2000-12-11  Jan Hubicka  <jh@suse.cz>
3761         * NEWS: Add note about x86_64 architecture.
3763 2000-12-06  Mark Elbrecht  <snowball3@bigfoot.com>
3765         * scripttempl/i386go32.sc: Use PROVIDE with _etext, _edata, _end.
3766         Set DWARF2 sections to a VMA of zero.
3768 2000-12-01  Joel Sherrill  <joel@OARcorp.com>
3770         * configure.tgt (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
3771         New targets.
3772         (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
3773         (sparc*-*-rtems*): Switched from a.out to ELF.
3775 2000-11-30  Jan Hubicka  <jh@suse.cz>
3777         * Makefile.am (ALL_EMULATIONS): Add eelf_x86_64.o
3778         (eelf_x86_64.c): New.
3779         * Makefile.in: Regenerate.
3780         * configure.tgt: Add support for x86_64-*-linux-gnu*.
3781         * emulparams/elf_x86_64.sh: New.
3783 2000-11-30  Hans-Peter Nilsson  <hp@axis.com>
3785         * emulparams/crislinux.sh (ENTRY): Change back to _start.
3786         (TEXT_START_SYMBOLS): Remove conditional setting of __start.
3788         * scripttempl/crisaout.sc: Change all RELOCATING not related to
3789         merging non-a.out sections into CONSTRUCTING.
3791 2000-11-28  Nick Clifton  <nickc@redhat.com>
3793         * ld.1 (COPYING): Mention that the GNU Free Documentation
3794         License is present in the sources, but not the output, and
3795         also available from the GNU website.
3796         (GNU Free Documentation License): Comment out this section.
3798 2000-11-28  David O'Brien  <obrien@dragon.nuxi.com>
3800         * emulparams/elf64alpha.sh (ENTRY): Remove leading underscore as ELF
3801         does not use them.
3803 2000-11-25  David O'Brien  <obrien@FreeBSD.org>
3805         * ld.1: Remove old date so it does not give the impression the manpage
3806         is way out of date.
3808 2000-11-24  Nick Clifton  <nickc@redhat.com>
3810         * configure.tgt (xscale-coff): Add target.
3811         (xscale-elf): Add target.
3813 2000-11-24  Fred Fish  <fnf@be.com>
3815         * ldmain.c (main): Remove redundant init of config.make_executable
3816         to true.
3818 2000-11-15  Richard Henderson  <rth@redhat.com>
3820         * emulparams/elf64alpha.sh (MAXPAGESIZE): Typo -- 64k, not 1M.
3822 2000-11-14  Kazu Hirata  <kazu@hxi.com>
3824         * scripttempl/h8300.sc: Fix formatting.
3825         * scripttempl/h8300h.sc: Likewise.
3826         * scripttempl/h8300s.sc: Likewise.
3828 2000-11-14  Denis Chertykov  <denisc@overta.ru>
3830         * scripttempl/elf32avr.sc: Fix bug in .eeprom segment.
3832 2000-11-09  Philip Blundell  <pb@futuretv.com>
3834         * emultempl/pe.em: Define ___start_SECNAME and ___stop_SECNAME
3835         around orphan sections whose names can be represented in C.
3837 2000-11-07  Jim Wilson  <wilson@redhat.com>
3839         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): New local
3840         hold_sdata.  If SEC_SMALL_DATA set, set place to hold_sdata.
3842 2000-11-06  Nick Clifton  <nickc@redhat.com>
3844         * ld.texinfo: Add GNU Free Documentation License.
3845         * ldint.texinfo: Add GNU Free Documentation License.
3846         * ld.1: Add GNU Free Documentation License.
3848 2000-11-05  Alan Modra  <alan@linuxcare.com.au>
3850         * ldlex.l (yy_create_string_buffer): Init yy_is_our_buffer,
3851         yy_is_interactive, yy_at_bol, and yy_fill_buffer.
3853         * Makefile.am (DISTCLEANFILES): Add stringify.sed.
3854         Move 2000-11-02 Makefile.in changes to this file.
3855         * Makefile.in: Regenerate.
3857 2000-11-03  Nick Clifton  <nickc@redhat.com>
3859         * scripttempl/h8300.sc: Use ${CONSTRUCTING...} to enclose
3860         constructors and destructors.
3861         * scripttempl/h8300h.sc: Ditto.
3862         * scripttempl/h8300s.sc: Ditto.
3863         * scripttempl/h8500.sc: Ditto.
3864         * scripttempl/h8500b.sc: Ditto.
3865         * scripttempl/h8500c.sc: Ditto.
3866         * scripttempl/h8500m.sc: Ditto.
3867         * scripttempl/h8500s.sc: Ditto.
3868         * scripttempl/v850.sc: Ditto.
3869         * scripttempl/w65.sc: Ditto.
3870         * scripttempl/z8000.sc: Ditto.
3872 2000-11-02  Per Lundberg  <plundis@chaosdev.org>
3874         * Makefile.in (e_i386_chaos.c): New rule.
3875         (ALL_EMULATIONS): Added e_i386_chaos.o.
3876         * emulparams/elf_i386_chaos.sh: New file.
3877         * configure.tgt: Recognise i[3456]86-chaosdev-storm-chaos.
3879 2000-10-20  Jakub Jelinek  <jakub@redhat.com>
3881         * emulparams/elf64_sparc.sh (TEXT_START_ADDR,
3882         NONPAGED_TEXT_START_ADDR): Set to 4GB for Solaris targets.
3883         Fix sed invocation, so that it coped with '/' in Solaris 64bit
3884         library path suffix.
3885         Based on patch by Andrew Macleod <amacleod@cygnus.com>.
3887 2000-10-18  Hans-Peter Nilsson  <hp@axis.com>
3889         * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32),
3890         for consecutive sections.
3892 2000-10-17  Chandrakala Chavva  <cchavva@redhat.com>
3894         * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific
3895         options.
3896         * ld.texinfo: Added notes about this new option.
3898 2000-10-16  Nick Clifton  <nickc@redhat.com>
3900         * emultempl/pe.em (_after_open): Add tests of return values from
3901         bfd functions.  Emit appropriate error messages if necessary.
3903 2000-10-13  Nick Clifton  <nickc@redhat.com>
3905         * emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
3906         local variables - they are not used, but leave in the call to
3907         bfd_canonicalize_symtab.
3908         (_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
3909         pe_dll_search_prefix.
3911 2000-10-12  Charles Wilson  <cwilson@ece.gatech.edu>
3913         * emultempl/pe.em (pe_dll_search_prefix): New variable,
3914         (longopts): New --dll-search-prefix option.
3915         (gld_${EMULATION_NAME}_list_options): Document.
3916         (gld_${EMULATION_NAME}_parse_args): Handle.
3917         (gld_${EMULATION_NAME}_open_dynamic_archive): When linking
3918         dynamically, search for a dll named '<prefix><basename>.dll'
3919         in preference to 'lib<basename>.dll' if --dll-search-prefix
3920         is specified.
3922 2000-10-12  Alan Modra  <alan@linuxcare.com.au>
3924         * ldlang.c (section_already_linked): Set kept_section instead of
3925         sec->comdat->sec.
3927 2000-10-10  Kazu Hirata  <kazu@hxi.com>
3929         * deffile.h: Fix formatting.
3930         * lexsup.c: Likewise.
3931         * mri.c: Likewise.
3933 2000-10-09  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
3935         * pe-dll.c (make_one): Do not generate code thunk for DATA
3936         exports.
3937         (process_def_file): deduce DATA flag for auto-export sumbols.
3939 2000-10-09  Kazu Hirata  <kazu@hxi.com>
3941         * ld.h: Fix formatting.
3942         * ldcref.c: Likewise.
3943         * ldctor.h: Likewise.
3944         * ldemul.c: Likewise.
3945         * ldemul.h: Likewise.
3946         * ldexp.c: Likewise.
3947         * ldexp.h: Likewise.
3948         * ldfile.c: Likewise.
3949         * ldfile.h: Likewise.
3950         * ldlang.c: Likewise.
3951         * ldlang.h: Likewise.
3952         * ldmain.c: Likewise.
3953         * pe-dll.c: Likewise.
3955         * pe-dll.c: Revert some formatting fixes.
3957 2000-10-08  Kazu Hirata  <kazu@hxi.com>
3959         * pe-dll.c: Fix formatting.
3961 2000-10-05  Kazu Hirata  <kazu@hxi.com>
3963         * ldlang.c: Fix formatting.
3965 2000-10-03  DJ Delorie  <dj@redhat.com>
3967         * pe-dll.c (fill_edata): initialize entire block
3968         (make_one): fill in correct section.
3970 2000-10-03  Kazu Hirata  <kazu@hxi.com>
3972         * ldexp.c: Fix formatting.
3974 2000-10-02  DJ Delorie  <dj@redhat.com>
3976         * emultempl/pe.em (gld_*_after_open): detect case where there two
3977         import libraries for same dll; rename one to ensure proper link
3978         order.
3980         * pe-dll.c (process_def_file): compare ordinals to -1, not 0; fix
3981         typo
3982         (generate_edata): fix typo
3984 2000-09-29  Hans-Peter Nilsson  <hp@axis.com>
3986         * scripttempl/crisaout.sc (ENTRY): Now __start.
3987         (.text): Add default setting for __start.
3988         Remove CONSTRUCTORS handling.
3989         (/DISCARD/): Add .gnu.warning.*.
3990         * emulparams/crislinux.sh (ENTRY): Now __start.
3991         (TEXT_START_SYMBOLS): New; provide __Stext and __start default.
3992         * emulparams/criself.sh (OUTPUT_FORMAT): Now elf32-us-cris.
3993         (ENTRY): Now __start.
3994         (INITIAL_READONLY_SECTIONS): Add KEEP for .startup.
3995         (EXECUTABLE_SYMBOLS): Add default setting for __start.
3997 2000-09-29  Kazu Hirata  <kazu@hxi.com>
3999         * deffile.h: Fix formatting.
4000         * ld.h: Likewise.
4001         * ldcref.c: Likewise.
4002         * ldctor.c: Likewise.
4003         * ldctor.h: Likewise.
4004         * ldemul.c: Likewise.
4005         * ldemul.h: Likewise.
4006         * ldexp.c: Likewise.
4007         * ldexp.h: Likewise.
4008         * ldfile.c: Likewise.
4009         * ldfile.h: Likewise.
4010         * ldlang.c: Likewise.
4011         * ldlang.h: Likewise.
4012         * lexsup.c: Likewise.
4013         * mri.c: Likewise.
4014         * pe-dll.c: Likewise.
4016 2000-09-28  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
4018         * pe-dll.c (process_def_file): Uninitialized data wasn't
4019         exported with --export-all-symbols switch.
4021 2000-09-28  DJ Delorie  <dj@redhat.com>
4023         * pe-dll.c (fill_edata): rearrange the data so that ordinals and
4024         noname work properly.
4026 2000-09-28  Alan Modra  <alan@linuxcare.com.au>
4028         * ld.texinfo (HPPA ELF32): New section.
4030         * emultempl/hppaelf.em (group_size): New.
4031         (hppaelf_finish): Pass group_size to elf32_hppa_size_stubs.
4032         (PARSE_AND_LIST_PROLOGUE): Add OPTION_STUBGROUP_SIZE.
4033         (PARSE_AND_LIST_LONGOPTS): Add --stub-group-size.  Duplicate
4034         options to prevent abbreviations matching.
4035         (PARSE_AND_LIST_OPTIONS): Describe the above.  Reformat.
4036         (PARSE_AND_LIST_ARGS_CASES): Handle it.
4038 2000-09-21  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4040         * emultempl/m68kelf.em: Conditionalise the embedded relocs feature
4041         on the m68*-*-elf target.  Make it support COFF input objects.
4043 2000-09-21  Kazu Hirata  <kazu@hxi.com>
4045         * ldmain.c: Fix formatting.
4046         * ldmisc.c: Likewise.
4047         * ldver.c: Likewise.
4048         * ldwrite.c: Likewise.
4050 2000-09-21  Alan Modra  <alan@linuxcare.com.au>
4052         * ldwrite.c (clone_section): Silence gcc warnings.
4054 2000-09-20  Alan Modra  <alan@linuxcare.com.au>
4056         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Handle
4057         out of memory failure.
4059         * ldwrite.c (ldwrite): Remove unnecessary einfo arg.
4060         (clone_section): Handle out of memory failures.  Rename var to
4061         avoid c++ reserved word.
4063 2000-09-18  Alan Modra  <alan@linuxcare.com.au>
4065         * emultempl/hppaelf.em (hppaelf_add_stub_section): Rename
4066         stub_name param to stub_sec_name.
4067         (hppaelf_finish): Modify call to elf32_hppa_size_stubs.
4069 2000-09-10  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4071         * emultempl/m68kelf.em: New file.
4072         * emulparams/m68kelf.sh (EXTRA_EM_FILE): Use it.
4073         * Makefile.am (em68kelf.c): Add dependency on m68kelf.em.
4074         * Makefile.in: Regenerate.
4076 2000-09-15  Alan Modra  <alan@linuxcare.com.au>
4078         * emulparams/hppalinux.sh (DATA_START_SYMBOLS): Provide $global$
4079         only as needed.
4081 2000-09-13  Nick Clifton  <nickc@redhat.com>
4083         * ldmain.c (multiple_definition): Disable relaxation if
4084         multiple symbol definitions are encountered - otherwise the
4085         linker could abort with an assertion failure.
4087 2000-09-10  Nick Clifton  <nickc@redhat.com>
4089         * mri.c: Fix formatting.
4091 2000-09-07  H.J. Lu  <hjl@gnu.org>
4093         * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
4094         * configure: Rebuild.
4096 2000-09-07  H.J. Lu  <hjl@gnu.org>
4098         * Makefile.am (lexsup.o): Also depend on $(INCDIR)/demangle.h.
4099         * Makefile.in: Rebuild.
4101 2000-09-07  Alan Modra  <alan@linuxcare.com.au>
4103         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Fix
4104         broken list handling.  Create __start_SECNAME and __stop_SECNAME
4105         when no place-holder.  Add some comments.  Test both SEC_CODE and
4106         SEC_READONLY for hold_text to prevent .rodata orphan poisoning.
4107         Handle case where no output section statement created.
4109 2000-09-07  Niibe Yutaka  <gniibe@m17n.org>, Kaz Kojima  <kkojima@rr.iij4u.or.jp>, Alexandre Oliva  <aoliva@redhat.com>
4111         * configure.tgt (sh-*-linux*): Added.
4112         * Makefile.am: Added eshelf_linux and eshlelf_linux.
4113         * Makefile.in: Rebuilt.
4114         * emulparams/shelf_linux.sh: New file.
4115         * emulparams/shlelf_linux.sh: New file.
4117 2000-09-06  Alan Modra  <alan@linuxcare.com.au>
4119         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
4120         try shuffling sections when the orphan happens to be the place
4121         holder.  Keep count of unique section names generated so we speed
4122         the search for a new name.
4124 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
4126         * configure: Rebuilt with new libtool.m4.
4128 2000-09-05  Nick Clifton  <nickc@redhat.com>
4130         * Makefile.in: Regenerate.
4131         * aclocal.m4: Regenerate.
4132         * configure: Regenerate.
4133         * config.in: Regenerate.
4134         * po/ld.pot: Regenerate.
4136         * ldint.texinfo: Remove CVS revision marker - it foils local
4137         comparisons.
4139         * emultempl/ticoff.em: Remove extraneous comma.
4141 2000-09-05  Alan Modra  <alan@linuxcare.com.au>
4143         * emultempl/hppaelf.em (hppaelf_add_stub_section): Add SEC_RELOC
4144         to stub section flags.
4145         (hppa_for_each_input_file_wrapper): New.
4146         (hppa_lang_for_each_input_file): New.
4147         (lang_for_each_input_file): Define to call above.
4148         (multi_subspace): New.
4149         (hppaelf_finish): Pass multi_subspace to elf32_hppa_size_stubs.
4150         (PARSE_AND_LIST_PROLOGUE): Define.
4151         (PARSE_AND_LIST_LONGOPTS): Define.
4152         (PARSE_AND_LIST_OPTIONS): Define.
4153         (PARSE_AND_LIST_ARGS_CASES): Define.
4154         (hppaelf_finish): Call elf32_hppa_set_gp.
4155         (hppaelf_set_output_arch): Remove.
4156         (LDEMUL_SET_OUTPUT_ARCH): Remove.
4158         * emulparams/hppalinux.sh (ELFSIZE): Define.
4159         (MACHINE): Define.
4160         (OTHER_READONLY_SECTIONS): Define.
4161         (DATA_PLT): Define.
4162         (GENERATE_SHLIB_SCRIPT): Define.
4164         * ldlang.c: Add missing prototypes, and tidy others.  Change CONST
4165         to const throughout.  Change `void *' to `PTR' throughout.
4166         (lang_memory_default): Function is local to file, add `static'.
4168         * Makefile.am (ehppaelf.c): Depend on emultempl/elf32.em.
4169         (ehppalinux.c): Likewise.
4170         (earmelf.c): Likewise.
4171         (earmelf_linux.c): Likewise.
4172         (earmelf_linux26.c): Likewise.
4173         * Makefile.in: Regenerate.
4175         * ld.h (ld_config_type): Add unique_orphan_sections.
4176         * lexsup.c (OPTION_UNIQUE): Define.
4177         (ld_options): Add "--unique".
4178         (parse_args): Handle it.
4179         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
4180         search for an existing output section if unique_orphan_sections is
4181         set.  Make use of bfd_get_unique_section_name rather than
4182         duplicating code here.
4183         * ld.texinfo: Describe --unique.
4185         * lexsup.c (ld_options): Make split-by-reloc arg optional. Add
4186         optional arg to split-by-file.
4187         (parse_args): Handle them.
4188         * ld.texinfo: Update description of these options.
4189         * ldwrite.c (clone_section): Pass in the section name.  Replace
4190         local code with bfd_get_unique_section_name.
4191         (split_sections): Tidy code and comments.  Use a list traversal
4192         more appropriate to the list construction.  Handle cooked section
4193         sizes.  Split when split_by_reloc reached rather than exceeded.
4194         Track section size and split when split_by_file reached.  Fix
4195         link_order_tail (even though it's not used).
4196         (ldwrite): Modify condition for calling split_sections to suit
4197         changed split_by_reloc and split_by_file.
4198         * ldmain.c (main): Init config.split_by_reloc and
4199         config.split_by_file to -1.
4200         * ld.h (ld_config_type): Change split_by_reloc to unsigned.
4201         Change split_by_file to bfd_size_type.
4203 2000-09-02  Nick Clifton  <nickc@redhat.com>
4205         * configure.in: Increase version number to 2.10.91.
4206         * NEWS: Mention new ability to support removal of duplicate DWARF2
4207         debug information.
4208         * configure: Regenerate.
4209         * aclocal.m4: Regenerate.
4210         * config.in: Regenerate.
4212 2000-09-02  Daniel Berlin <dberlin@redhat.com>
4214         * scripttempl/elf.sc: Add .gnu.linkonce.wi.* to .debug_info
4215         sections.
4216         * scripttempl/elf32avr.sc: Ditto.
4217         * scripttempl/elfd10v.sc: Ditto.
4218         * scripttempl/elfd30v.sc: Ditto.
4219         * scripttempl/elfi370.sc: Ditto.
4220         * scripttempl/elfm68hc11.sc: Ditto.
4221         * scripttempl/elfm68hc12.sc: Ditto.
4222         * scripttempl/elfi386beos.sc: Ditto.
4223         * scripttempl/v850.sc: Ditto.
4225 2000-08-31  Alexandre Oliva  <aoliva@redhat.com>
4227         * acinclude.m4: Include libtool and gettext macros from the
4228         top level.
4229         * aclocal.m4, configure: Rebuilt.
4231 2000-08-25  Nick Clifton  <nickc@redhat.com>
4233         * ldlang.c (open_output): When choosing the target for a
4234         particular endianness, do nothing if the target is not
4235         supported.
4237 2000-08-25  H.J. Lu  <hjl@gnu.org>
4239         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
4240         check -rpath nor LD_RUN_PATH for cross link.
4241         * ld.texinfo: Document the change.
4243 2000-08-24  Hans-Peter Nilsson  <hp@axis.com>
4245         * NEWS: Mention support for CRIS.
4247 2000-08-23  H.J. Lu  <hjl@gnu.org>
4249         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Get
4250         the current runpath list from bfd_elf_get_runpath_list ()
4251         before search.
4253 2000-08-22  H.J. Lu  <hjl@gnu.org>
4255         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search
4256         the DT_RPATH/DT_RUNPATH entries for DT_NEEDED after
4257         LD_LIBRARY_PATH for native linker. Display the needed DSO if
4258         trace_file_tries is non-zero.
4259         (gld${EMULATION_NAME}_try_needed): Report the needed DSO found
4260         if trace_file_tries is non-zero.
4262         * ld.texinfo: Document the usage of DT_RPATH/DT_RUNPATH.
4263         * NEWS: Mention it.
4265 2000-08-14  Jason Eckhardt  <jle@cygnus.com>
4267         * NEWS: Mention i860 support.
4269 2000-08-14  Andreas Schwab  <schwab@suse.de>
4271         * scripttempl/elf.sc: Fix last change to use correct comment
4272         syntax.
4274 2000-08-10  Geoff Keating  <geoffk@cygnus.com>
4276         * scripttempl/elf.sc: Add a comment giving the correspondence
4277         between sections, per-datum sections, and linkonce sections.  Make
4278         the comment true even for .bss, .sdata, .sdata2, .sbss, and
4279         .sbss2.
4281 2000-08-10  Jason Eckhardt  <jle@cygnus.com>
4283         * emulparams/elf32_i860.sh: New file.
4284         * configure.tgt: Recognize new target i860-stardent-{sysv4*|elf*}.
4285         * Makefile.am (ALL_EMULATIONS): Add eelf32_i860.o.
4286         (eelf32_i860.c): New rule.
4287         * Makefile.in: Regenerate.
4289 2000-08-10  Nick Clifton  <nickc@cygnus.com>
4291         * emulparams/mipspe.sh (ENTRY): Add definition.
4293 2000-08-08  Peter Jeremy  <peter.jeremy@alcatel.com.au>
4295         * emultempl/elf32.em (_after_close): Refer to -rpath not --rpath
4296         in error message.
4298 2000-08-08  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
4300         * scripttempl/elfm68hc11.sc: Define __bss_size symbol to indicate
4301         the final size of .bss section.
4302         * scripttempl/elfm68hc12.sc: Likewise.
4304 2000-08-04  Alan Modra  <alan@linuxcare.com.au>
4306         * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Rename to
4307         gld${EMULATION_NAME}_parse_args for consistency.  Combine
4308         lastoptind and prevoptind vars, and keep track of last optind.
4309         (gld_${EMULATION_NAME}_list_options): Rename to
4310         gld${EMULATION_NAME}_list_options.
4312 2000-08-03  Rodney Brown  <RodneyBrown@pmsc.com>
4314         * configure.tgt: Select targ_emul=elf_i386 for Unixware 7
4315         (i586-sco-sysv5uw7.1.0).
4317 2000-07-27  H.J. Lu  <hjl@gnu.org>
4319         * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
4320         (PARSE_AND_LIST_PROLOGUE): New.
4321         (PARSE_AND_LIST_LONGOPTS): Likewise.
4322         (PARSE_AND_LIST_OPTIONS): Likewise.
4323         (PARSE_AND_LIST_ARGS_CASES): Likewise.
4324         (PARSE_AND_LIST_EPILOGUE): Likewise.
4326 2000-07-28  Alan Modra  <alan@linuxcare.com.au>
4328         * emultempl/armelf.em: Elide functions common to elf32.em,
4329         ie. most of the file.
4330         (arm_elf_after_open): New.  Do arm specific things then call
4331         gld${EMULATION_NAME}_after_open.
4332         (arm_elf_before_allocation): New.  Call
4333         gld${EMULATION_NAME}_before_allocation then do arm specifics.
4334         (PARSE_AND_LIST_PROLOGUE): Define.
4335         (PARSE_AND_LIST_SHORTOPTS): Define.
4336         (PARSE_AND_LIST_LONGOPTS): Define.
4337         (PARSE_AND_LIST_OPTIONS): Define.
4338         (PARSE_AND_LIST_ARGS_CASES): Define.
4339         (LDEMUL_AFTER_OPEN): Define.
4340         (LDEMUL_BEFORE_ALLOCATION): Define.
4341         (LDEMUL_BEFORE_PARSE): Define.
4342         (LDEMUL_FINISH): Define.
4344         * emultempl/hppaelf.em: Similarly zap most of this file.
4345         (hppaelf_add_stub_section): Prototype.
4346         (hppaelf_layaout_sections_again): Prototype.
4347         (hook_in_stub): Prototype.
4348         (LDEMUL_SET_OUTPUT_ARCH): Define.
4349         (LDEMUL_FINISH): Define.
4350         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
4352         * emulparams/armelf.sh (TEMPLATE_NAME): Use elf32.
4353         (EXTRA_EM_FILE): New.
4354         * emulparams/armelf_linux.sh: Likewise.
4355         * emulparams/armelf_linux26.sh: Likewise.
4356         * emulparams/hppalinux.sh: Likewise.
4357         * emulparams/hppaelf.sh: Likewise.
4358         (NOP): Define.
4360         * emultempl/elf32.em: Fix formatting.
4361         (EXTRA_EM_FILE): Source it.
4362         (LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
4363         LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
4364         LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
4365         LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
4366         LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
4367         LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
4368         LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
4369         LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
4370         LDEMUL_FIND_POTENTIAL_LIBRARIES): New shell vars.  Add code to
4371         allow functions in this file to be overridden.
4372         (PARSE_AND_LIST_SHORTOPTS): Handle it.
4374         * emultempl/m68kcoff.em: Include ldfile.h before ldemul.h.
4376         * emultempl/elf32.em: Reorganize file.
4378 2000-07-27  Ivan Kokshaysky  <ink@jurassic.park.msu.ru>
4380         * emulparams/elf64alpha.sh: Implement "-taso" emulation
4381         specific option to fit 64-bit executable in the lower
4382         31-bit address range.  This is done by changing start
4383         address of .interp (the very first section of executable)
4384         and then setting EF_ALPHA_32BIT elf header flag.
4386 2000-07-21  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4388         * emultempl/m68kcoff.em: New file.
4389         * emulparams/m68kcoff.sh (TEMPLATE_NAME): Use m68kcoff template.
4390         * Makefile.am (em68kcoff.c): Depend on m68kcoff.em rather than
4391         generic.em.
4392         * Makefile.in: Regenerate.
4394 2000-07-20  H.J. Lu  <hjl@gnu.org>
4396         * emultempl/elf32.em (longopts): Duplicate "disable-new-dtags"
4397         and "disable-new-dtags" to stop getopt from treating -d/-e as
4398         abbreviations for these options.
4400 2000-07-20  H.J. Lu  <hjl@gnu.org>
4402         * ld.texinfo: Add documentation for --disable-new-dtags and
4403         --enable-new-dtags.
4405         * ldmain.c (main): Initialize link_info.new_dtags to false.
4407         * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add
4408         --disable-new-dtags and --enable-new-dtags.
4409         (gld_${EMULATION_NAME}_list_options): Likewise.
4411 2000-07-05  Kenneth Block  <krblock@computer.org>
4413         * lexsup.c: Add optional style to demangle switch
4414         * ld.texinfo: Document optional style to demangle switch.
4416 2000-07-20  Hans-Peter Nilsson  <hp@axis.com>
4418         * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
4419         ecrislinux.o.
4420         (ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
4421         Regenerate dependencies.
4422         * Makefile.in: Rebuild.
4423         * configure.tgt (cris-*-*): New target.
4424         * emulparams/crisaout.sh, emulparams/criself.sh,
4425         emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
4426         * po/POTFILES.in, po/ld.pot: Regenerate.
4428 2000-07-20  H.J. Lu  <hjl@gnu.org>
4430         * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options):
4431         Print out ignored -z options.
4433 2000-07-19  H.J. Lu  <hjl@gnu.org>
4435         * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Removed.
4436         (PARSE_AND_LIST_PROLOGUE): New.
4437         (PARSE_AND_LIST_LONGOPTS): Likewise.
4438         (PARSE_AND_LIST_OPTIONS): Likewise.
4439         (PARSE_AND_LIST_ARGS_CASES): Likewise.
4441         * ldmain.c (main): Clear link_info.flags and link_info.flags_1.
4443         * lexsup.c (ld_options): Comment out 'z'.
4444         (parse_args): Likewise.
4446         * emultempl/elf32.em: Include "elf/common.h".
4447         (gld_${EMULATION_NAME}_parse_args): Defined. Handle some -z
4448         options.
4449         (gld_${EMULATION_NAME}_list_options): Likewise.
4451         * ld.texinfo: Add documentation for the recognized -z options.
4453 2000-07-19  H.J. Lu  <hjl@gnu.org>
4455         * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Call
4456         bfd_elf_set_dt_needed_soname ().
4458 2000-07-18  DJ Delorie  <dj@cygnus.com>
4460         * pe-dll.c (pe_dll_id_target): check object target name also
4462 2000-07-18  Hans-Peter Nilsson  <hp@axis.com>
4464         * scripttempl/elf.sc (.init): Only do ${INIT_START} and
4465         ${INIT_END} if relocating.
4466         (.fini): Likewise ${FINI_START} and ${FINI_END}.
4468 2000-07-16  Charles Wilson  <cwilson@ece.gatech.edu>
4470         * emultempl/pe.em (gld_*_open_dynamic_archive): New search
4471         order for dynamic library '-lfoo' on pei386: libfoo.dll.a,
4472         foo.dll.a, libfoo.a, libfoo.dll, foo.dll. This fixes compatibility
4473         errors introduced by the old dynamic lib search order.
4475 2000-07-17  DJ Delorie  <dj@cygnus.com>
4477         * pe-dll.c (process_def_file): auto-export data items also
4478         (pe_process_import_defs): also see if _imp_ form needed
4480 2000-07-12  Charles Wilson  <cwilson@ece.gatech.edu>
4482         * pe-dll.c (make_one): fix a typo in the __imp_ name decoration
4483         for dll import libraries
4485 2000-07-12  Mark Elbrecht  <snowball3@bigfoot.com>
4487         * scripttempl/i386go32.sc: Support the g++ attribute init_priority in
4488         gcc 2.95.2 and later.
4490 2000-07-11  Kazu Hirata  <kazu@hxi.com>
4492         * ldfile.c (ldfile_try_open_bfd): Output '\n' after an error
4493         message.
4495 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
4497         * ldemul.h (struct lang_input_statement_struct): Remove forward
4498         declaration.
4499         (struct search_dirs): Likewise.
4500         * ldfile.h (struct lang_input_statement_struct): Likewise.
4501         Protect file from multiple inclusion.
4502         * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
4503         declaration from macro to file scope.
4505         * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
4506         * ldgram.y: Likewise here.
4507         * ldlang.c: And here.
4508         * ldmain.c: And here.
4509         * mpw-elfmips.c: And here.
4510         * mpw-eppcmac.c: And here.
4511         * emultempl/aix.em: And here.
4512         * emultempl/armcoff.em: And here.
4513         * emultempl/armelf.em: And here.
4514         * emultempl/armelf_oabi.em: And here.
4515         * emultempl/beos.em: And here.
4516         * emultempl/elf32.em: And here.
4517         * emultempl/hppaelf.em: And here.
4518         * emultempl/linux.em: And here.
4519         * emultempl/lnk960.em: And here.
4520         * emultempl/pe.em: And here.
4521         * emultempl/sunos.em: And here.
4522         * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
4523         * mpw-idtmips.c: Ditto.
4524         * emultempl/generic.em: Ditto.
4525         * emultempl/gld960.em: Ditto.
4526         * emultempl/gld960c.em: Ditto.
4527         * emultempl/mipsecoff.em: Ditto.
4528         * emultempl/ticoff.em: Ditto.
4529         * emultempl/vanilla.em: Ditto.
4531         * pe-dll.c: Include ldfile.h
4532         * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
4534         * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
4535         arguments to bfd_elf32_size_dynamic_sections call.
4536         (gldelf32ebmip_place_orphan): Add missing arguments to
4537         lang_leave_output_section_statement call.
4539 2000-07-10  H.J. Lu  <hjl@gnu.org>
4541         * emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
4542         DLL_SUPPORT.
4543         (strhash): Likewise.
4544         (compute_dll_image_base): Likewise.
4545         (pe_undef_found_sym): Likewise.
4546         (pe_undef_cdecl_match): Likewise.
4547         (gld_${EMULATION_NAME}_open_dynamic_archive): Mark the
4548         argument "arch" with ATTRIBUTE_UNUSED.
4550 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
4552         * configure.tgt: Remove extraneous hppa*-*-linux-gnu*.
4554         From  Ryan Bradetich  <rbradetich@uswest.net>
4555         * ldwrite.c (SSIZE): Remove to cure macro redefinition warning.
4557 2000-07-09  Alan Modra  <alan@linuxcare.com.au>
4559         Changes to create multiple linker stubs, positioned immediately
4560         before the section where they are required.
4561         * emultempl/hppaelf.em: Include elf32-hppa.h.
4562         (stub_sec, file_chain): Delete.
4563         (hppaelf_create_output_section_statements): Don't make a stub
4564         section here.
4565         (hook_stub_info): New struct.
4566         (hook_in_stub): New function.
4567         (hppaelf_add_stub_section): New function.
4568         (hppaelf_finish): Do nothing for relocateable links.  Modify the
4569         call to elf32_hppa_size_stubs.  Move code for updating section
4570         layout from here...
4571         (hppaelf_layaout_sections_again): ..to here, a new function.
4573         * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Fix
4574         broken list handling.  Pass in a pointer to the list.
4575         (hppaelf_finish): Update call to hppaelf_delete_padding_statements
4576         for above changes.
4577         (hppaelf_before_parse): Prototype.
4578         (hppaelf_set_output_arch): Prototype.
4579         (hppaelf_create_output_section_statements): Prototype.
4580         (hppaelf_delete_padding_statements): Prototype.
4581         (hppaelf_finish): Prototype.
4583         Merge from elf32.em
4584         * emultempl/hppaelf.em: Include ctype.h.
4585         (struct orphan_save): New.
4586         (gld${EMULATION_NAME}_place_orphan): New.
4587         (output_rel_find): New.
4588         (hppaelf_get_script): Update from elf32.em.
4589         (ld_hppaelf_emulation): Rename to ld_${EMULATION_NAME}_emulation.
4590         Change emulation_name field to "${EMULATION_NAME}".  Add
4591         gld${EMULATION_NAME}_place_orphan.
4593         * Makefile.am (ALL_EMULATIONS): Reinstate ehppaelf.o,  add
4594         ehppalinux.o, sort it.  Regenerate dependencies.
4595         (ehppalinux.c): Depend on hppaelf.em
4596         * Makefile.in: Regenerate.
4598         * configure.tgt: targ_emul=hppalinux for hppa*linux
4600         * emulparams/hppalinux.sh: New.
4601         * emulparams/hppaelf.sh (TARGET_PAGE_SIZE): Write in hex.
4603 2000-07-08  Alan Modra  <alan@linuxcare.com.au>
4605         * lexsup.c (parse_args): Copy section name.
4607 2000-07-07  Charles Wilson  <cwilson@ece.gatech.edu>
4609         * emultempl/pe.em: institute the following search order for
4610         dynamic libraries on pei386: libfoo.dll.a, foo.dll.a (import
4611         libs), libfoo.dll, foo.dll (link direct to dll).  Fall back to
4612         static lib (libfoo.a) if none of the above are found.
4614 2000-07-07  Mumit Khan  <khan@xraylith.wisc.edu>
4616         * emultempl/pe.em (pe_enable_auto_image_base): New variable.
4617         (longopts): New --{enable,disable}-auto-image-base options.
4618         (gld_${EMULATION_NAME}_list_options): Document.
4619         (gld_${EMULATION_NAME}_parse): Handle.
4620         (strhash): New static function.
4621         (compute_dll_image_base): New static function.
4622         (gld_${EMULATION_NAME}_set_symbols): Use.
4624 2000-07-05  DJ Delorie  <dj@redhat.com>
4626         * MAINTAINERS: new
4628 2000-07-01  Koundinya K  <kk@ddeorg.soft.net>
4630         * configure.tgt: Add traditional mips (mips*-*-sysv4*) target.
4631         * emulparams/elf32btsmip.sh: New file.
4632         * Makefile.am: Add traditional mips target.
4633         * Makefile.in: Rebuild.
4635 2000-07-01  H.J. Lu  <hjl@gnu.org>
4637         * Makefile.am (EXTRA_ld_new_SOURCES): Set to deffilep.y for
4638         automake to use YLWRAP.
4639         * Makefile.in: Rebuild.
4641 2000-07-01  Alan Modra  <alan@linuxcare.com.au>
4643         * Makefile.am (DEP): Fix 2000-06-22.  grep after running dep.sed
4644         (CLEANFILES): Add DEPA.
4645         * Makefile.in: Regenerate.
4647 2000-06-30  Timothy Wall  <twall@ppc>
4649         * scripttempl/tic54xcoff.sc: PAGE N is not implemented, so encode
4650         the page in the upper octet of the address.
4652 2000-06-26  Marek Michalkiewicz  <marekm@linux.org.pl>
4654         * emulparams/avrmega161.sh (ARCH): Change to avr:5.
4656 2000-06-24  Alan Modra  <alan@linuxcare.com.au>
4658         * NEWS: arm-elf does --gc-sections too.
4660 2000-06-22  Alan Modra  <alan@linuxcare.com.au>
4662         * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
4663         find one.
4664         * Makefile.in: Regenerate.
4666 2000-06-21  H.J. Lu  <hjl@gnu.org>
4668         * Makefile.am: Rebuild dependency.
4669         * Makefile.in: Rebuild.
4671 2000-06-20  H.J. Lu  <hjl@gnu.org>
4673         * Makefile.am: Rebuild dependency.
4674         * Makefile.in: Rebuild.
4676 2000-06-20  Timothy Wall  <twall@cygnus.com>
4678         * scripttempl/tic54xcoff.sc: New.
4679         * ldlang.c (wild_doit): Propagate SEC_BLOCK flag.
4680         * gen-doc.texi: Add flag for TI COFF.
4681         * ld.texinfo: Add documentation for TI COFF handling switches.
4682         * emultempl/ticoff.em: New. TI COFF handling.
4683         * configure.tgt: Add tic54x target.
4684         * Makefile.am: Add tic54x target.
4685         * Makefile.in: Ditto.
4687 2000-06-20  Alan Modra  <alan@linuxcare.com.au>
4689         * ldmain.c (set_scripts_dir): Correct pointer comparison when
4690         checking for backslashes.
4692 2000-06-19  Alan Modra  <alan@linuxcare.com.au>
4694         * NEWS: Move entries not in 2.10 above "Changes in version 2.10".
4696 2000-06-18  Alan Modra  <alan@linuxcare.com.au>
4698         * NEWS: Update list of targets supporting --gc-sections.
4700         * scripttempl/elf.sc: KEEP .eh_frame contents.
4701         * scripttempl/elfd30v.sc: Same here.
4703 2000-06-18  Stephane Carrez  <stcarrez@worldnet.fr>
4705         * Makefile.am (ALL_EMULATIONS): Added new emulation for m68hc12
4706         and m68hc11 (elf).
4707         * Makefile.in: Rebuild.
4708         * configure.tgt: Recognize m68hc12 and m68hc11.
4709         * scripttempl/elfm68hc12.sc: New file.
4710         * emulparams/m68hc12elfb: New emulation.
4711         * emulparams/m68hc12elf: New emulation.
4712         * emulparams/m68hc11elfb.sh: New file.  User configurable emulation
4713         (includes a memory.x script to define the ROM and RAM banks).
4714         * scripttempl/elfm68hc11.sc, emulparams/m68hc11elf.sh:
4715         New configuration files for support of Motorola 68hc11
4717 2000-06-15  Alan Modra  <alan@linuxcare.com.au>
4719         * ldmain.c (main): Only change SEC_READONLY for final link.
4721 2000-06-13  H.J. Lu  <hjl@gnu.org>
4723         * configure: Regenerate.
4725 2000-06-08  David O'Brien  <obrien@FreeBSD.org>
4727         * configure.in (VERSION): Update to show this is the CVS mainline.
4729 2000-06-07  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4731         * emultempl/mipsecoff.em (gld{EMULATION_NAME}_after_open): Require all
4732         input objects to be ECOFF.
4733         (check_sections): einfo takes %B, not %P, to print a BFD name.
4735 2000-06-05  Michael Matz <matz@ifh.de>
4737         * ldgram.y (vers_defns): Handle 'extern "C++" { ... }' in
4738         version scripts.
4740         * ldlex.l (V_IDENTIFIER): Accept `::' in symbols.
4742 2000-05-23  Marek Michalkiewicz  <marekm@linux.org.pl>
4744         * emulparams/avr1200.sh (STACK): Define as 0.
4745         * emulparams/avr23xx.sh (STACK): Define as last internal SRAM address.
4746         * emulparams/avr4433.sh (STACK): Likewise.
4747         * emulparams/avr44x4.sh (STACK): Likewise.
4748         * emulparams/avr85xx.sh (STACK): Likewise.
4749         * emulparams/avrmega103.sh (STACK): Likewise.
4750         * emulparams/avrmega161.sh (STACK): Likewise.
4751         * emulparams/avrmega603.sh (STACK): Likewise.
4752         * scripttempl/elf32avr.sc (__data_start): Define for gcrt1.
4753         (__stack): Define from ${STACK} for main().
4755 2000-05-26  Alan Modra  <alan@linuxcare.com.au>
4757         * Makefile.am: Update dependencies with "make dep-am"
4758         * Makefile.in: Regenerate.
4760 2000-05-26  Eli Zaretskii  <eliz@is.elta.co.il>
4762         * ldmain.c: Include filenames.h.
4763         (set_scripts_dir): Support backslashes in program name.
4765 2000-05-22  Igor Shevlyakov  <igor@windriver.com>
4767         * ldmain.c (main): When deciding if ".text" section should be
4768         read-only, don't forget to reset SEC_READONLY because it
4769         could be already set.
4771 2000-05-22  Thomas de Lellis  <tdel@windriver.com>
4773         * ld.1: Add documentation for new command line option:
4774                 --section-start <sectionname>=<sectionorg>
4775         This is a generic version of -Ttext etc. which accepts
4776         any section name as a parameter instead of just text/data/
4777         bss.
4778         * ld.texinfo: More docs.
4779         * NEWS: More docs.
4780         * lexsup.c: (parse_args): Recognize new command line option.
4781         (ld_options): Add new option.
4783 2000-05-18  H.J. Lu  <hjl@gnu.org>
4785         * lexsup.c (parse_args): `i' == `r', not `q'.
4787 2000-05-18  Jeffrey A Law  (law@cygnus.com)
4789         * configure.tgt (hppa*64*-*-*): Enable PA64 target.
4791 2000-05-17 S. Bharadwaj Yadavalli  <sby@scrugs.lkg.dec.com>
4792               Rick Gorton          <gorton@scrugs.lkg.dec.com>
4794         Add support for '-q' == '--emit-relocs' switch.
4795         * ldmain.c (main): Default to false.
4796         * lexsup.c (parse_args): Turn on emitrelocations flag if set.
4797         * NEWS: Describe the emitrelocations switch.
4798         * ld.texinfo: Describe the emitrelocations switch.
4800 2000-05-16  Charles Wilson <cwilson@ece.gatech.edu>
4802         * emultempl/pe.em (_open_dynamic_archive): New function: Search
4803         the library path for "foo.dll" and "libfoo.dll" dynamic libraries
4804         before searching for 'libfoo.a' in response to a '-Bdynamic -lfoo'
4805         link options.
4807 2000-05-15  David O'Brien  <obrien@FreeBSD.org>
4809         * lexsup.c (parse_args): Update the year in the copyright notice.
4811 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
4813         * ld.h (gettext, dgettext, dcgettext, textdomain, bindtextdomain):
4814         Replace defines with those from intl/libgettext.h to quieten gcc
4815         warnings.
4817 2000-05-10  H.J. Lu  <hjl@gnu.org>
4819         * ldlang.c (open_input_bfds): Don't load the same file within
4820         a group again if the whole archive has been loaded already.
4822 2000-05-03  Alan Modra  <alan@linuxcare.com.au>
4824         From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
4825         * lexsup.c (set_section_start): Use bfd_scan_vma rather than
4826         strtoul.
4828 2000-05-01  Jim Wilson  <wilson@cygnus.com>
4830         * configure.host (ia64-*-linux-gnu*): Change gcc to ${CC}.
4832         * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
4833         host "ia64-*-linux-gnu*".
4835 2000-04-29  Andreas Jaeger  <aj@suse.de>
4837         * ld.h: Correctly check GCC version.
4839 2000-04-25  Jeffrey A Law  (law@cygnus.com)
4841         * Makefile.am: Add PA64 support.  Add missing dependencies for
4842         PA32 elf support.
4843         * Makefile.in: Rebuilt.
4844         * configure.tgt: Add PA64 support (currently disabled).
4846 2000-04-25  Alan Modra  <alan@linuxcare.com.au>
4848         * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Delete.
4849         (output_rel_find): New function.
4850         (hold_section, hold_use): Delete.
4851         (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
4852         hold_interp): Make local to place_orphan.
4853         (gld${EMULATION_NAME}_place_orphan): Use lang_output_section_find
4854         rather than place_section to find possible previous use of orphan.
4855         Similarly find the place-holder output sections.  Use returned
4856         value from lang_enter_output_section_statement rather than calling
4857         lang_output_section_statement_lookup.
4858         * emultempl/armelf.em: Same here.
4859         * emultempl/pe.em: Similar to above, but no need for output_rel_find.
4861         * ldlang.c (lang_enter_output_section_statement): Return output
4862         section statement.
4863         * ldlang.h (lang_enter_output_section_statement): Change
4864         declaration too.
4866         * ldlang.h (lang_output_section_statement): Export it.
4867         * ldlang.c (lang_output_section_statement): Ditto.
4869 2000-04-24  Nick Clifton  <nickc@cygnus.com>
4871         * ld.texinfo (Output Section Data): Add note that section data
4872         commands cannot appear outside of section directives.
4874 2000-04-2  Matthew Green  <mrg@cygnus.com>
4876         * configure.tgt: Add NetBSD/sparc ELF, and NetBSD/sparc64 support.
4878 2000-04-21  Richard Henderson  <rth@cygnus.com>
4879             David Mosberger  <davidm@hpl.hp.com>
4881         * Makefile.am (ALL_64_EMULATIONS): Add eelf64_ia64.o.
4882         (eelf64_ia64.c): New rule.
4883         * Makefile.in: Rebuild.
4884         * configure.tgt (ia64-*-elf*, ia64-*-linux*): New targets.
4885         * emulparams/elf64_ia64.sh: New file.
4887 2000-04-21  Richard Henderson  <rth@cygnus.com>
4889         * scripttempl/elfd30v.sc: Place .gcc_except_table.
4891 2000-04-19  Alan Modra  <alan@linuxcare.com.au>
4893         * dep-in.sed: Match space at start of file name, not at end.
4895 2000-04-18  H.J. Lu  <hjl@gnu.org>
4897         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
4898         lang_leave_output_section_statement () after calling
4899         lang_enter_output_section_statement ().
4900         * emultempl/armelf.em: Likewise.
4902 2000-04-18  Alan Modra  <alan@linuxcare.com.au>
4904         * emultempl/elf32.em (struct orphan_save): Add section field.
4905         (gld${EMULATION_NAME}_place_orphan): Use above to keep sections in
4906         better order, and place first orphan section as we did before the
4907         2000-04-12 patch.  Ignore ~SEC_ALLOC sections when choosing place.
4908         Don't call make_bfd_section here, let wild_doit do the job for us.
4909         Don't build a statement list when we'll only throw it away.
4910         * emultempl/armelf.em: Ditto.
4911         * emultempl/pe.em: Similarly.
4913 2000-04-14  Geoff Keating  <geoffk@cygnus.com>
4915         * scripttempl/elfppc.sc: Remove.
4916         * emulparams/elf32ppc.sh: Use elf.sc.
4917         * emulparams/elf32lppc.sh: Use elf.sc.
4918         * emulparams/elf32ppclinux.sh: Use elf.sc.
4919         * emulparams/elf32ppcsim.sh: New file.
4920         * emulparams/elf32lppcsim.sh: New file.
4921         * Makefile.am: Update dependencies.  Add elf32ppcsim ad elf32lppcsim.
4922         (ALL_EMULATIONS): Add elf32ppcsim ad elf32lppcsim.
4923         * Makefile.in: Regenerate.
4924         * configure.tgt (powerpc-*): Add elf32ppcsim and elf32lppcsim.
4926 2000-04-14  Alan Modra  <alan@linuxcare.com.au>
4928         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Process
4929         ~SEC_ALLOC sections too.  Init start address of debug sections.
4930         * emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan): Ditto.
4931         * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Ditto.
4932         Also set all relocateable section start addresses.
4934 2000-04-13  Geoff Keating  <geoffk@cygnus.com>
4936         * scripttempl/elf.sc: Add support for .sbss2 and .sdata2 sections.
4937         Add new BSS_PLT variable for when .plt need not be contained in
4938         the file.  Move _etext so that it is also after .fini, and provide
4939         both etext and _etext with a leading underscore.  Mark the start
4940         and end of .sbss.
4942 2000-04-12  Alan Modra  <alan@linuxcare.com.au>
4944         * emultempl/elf32.em (struct orphan_save): New.
4945         (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
4946         hold_interp): Make them struct orphan_save.
4947         (gld${EMULATION_NAME}_place_section): Modify for new hold_*.
4948         (gld${EMULATION_NAME}_place_orphan): Add new orphan sections to
4949         the end of the relevant section list.  Also add associated section
4950         statements to the end of any previous orphan statements.
4951         * emultempl/armelf.em: Similarly.
4952         * emultempl/pe.em: Similarly.
4954 2000-04-11  Alan Modra  <alan@linuxcare.com.au>
4956         * ld.texinfo (Simple Example): Remove extraneous paragraph.
4958 2000-04-07  Andrew Cagney  <cagney@b1.cygnus.com>
4960         * configure.in (WARN_CFLAGS): Set to -W -Wall by default.  Add
4961         --enable-build-warnings option.
4962         * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
4963         * Makefile.in, configure: Re-generate.
4965 2000-04-04  Alan Modra  <alan@linuxcare.com.au>
4967         * po/ld.pot: Regenerate.
4969         * lexsup.c (help): Restore translated part of bug string.
4971         * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
4972         (DEP): Quote when passing vars to sub-make.  Add warning message
4973         to end.
4974         (DEP1): Rewrite for "gcc -MM".
4975         (CLEANFILES): Add DEP2.
4976         Update dependencies.
4977         * Makefile.in: Regenerate.
4979 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
4981         * ld.h: #include "bin-bugs.h"
4982         * lexsup.c (help): Use REPORT_BUGS_TO.
4984 2000-03-27  Denis Chertykov  <denisc@overta.ru>
4986         * configure.tgt (avr-*-*): New target support.
4987         * Makefile.am: Likewise.
4988         * scripttempl/elf32avr.sc: New script file.
4989         * emulparams/avr1200.sh: New file.
4990         * emulparams/avr23xx.sh: New file.
4991         * emulparams/avr4433.sh New file.
4992         * emulparams/avr44x4.sh New file.
4993         * emulparams/avr85xx.sh New file.
4994         * emulparams/avrmega103.sh New file.
4995         * emulparams/avrmega161.sh New file.
4996         * emulparams/avrmega603.sh New file.
4997         * Makefile.in: Regenerate.
4999 2000-03-09  Andreas Jaeger  <aj@suse.de>
5001         * Makefile.am (check-DEJAGNU): Also unset LANG.
5002         * Makefile.in: Rebuild.
5004 2000-03-06  Ian Lance Taylor  <ian@zembu.com>
5006         * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
5007         archive.
5009 2000-03-02  H.J. Lu  <hjl@gnu.org>
5011         * emulparams/elf32mcore.sh: Include "getopt.h".
5013 2000-03-01  Ian Lance Taylor  <ian@zembu.com>
5015         * configure.tgt: Remove *-*-aout, *-*-coff, and *-*-netware.
5017 2000-03-01  H.J. Lu  <hjl@gnu.org>
5019         * emulparams/mipspe.sh: Add SUBSYSTEM and INITIAL_SYMBOL_CHAR.
5020         * emulparams/shpe.sh: Likewise.
5022 2000-03-01  Nick Clifton  <nickc@cygnus.com>
5024         * pe-dll.c: Remove unused variables and add ATTRIBUTE_UNUSED
5025         to unused parameters.
5027         * emultempl/pe.em: Add "#ifdef DLL_SUPPORT" around static
5028         functions only used by DLL code.
5029         (_place_orphan): Initialise 'dollar'.
5031 2000-03-01  H.J. Lu  <hjl@gnu.org>
5033         * ldmain.c (undefined_symbol): Take one more arg, fatal, to
5034         indicate if the undefined symbol is a fatal error or not.
5035         Don't delete the output file if "fatal" is false.
5037 2000-02-29  H.J. Lu  <hjl@gnu.org>
5039         * Makefile.am (check-DEJAGNU): Also pass LIBS="$(LIBS)".
5040         Set LC_COLLATE and LC_ALL to null and export them. It is for
5041         sort which expects the C locale.
5042         Add $(LIBS) to all $(HOSTING_LIBS).
5043         * Makefile.in: Rebuild.
5045 2000-02-29  Alan Modra  <alan@spri.levels.unisa.edu.au>
5047         * emultempl/{aix.em, armcoff.em, armelf.em, armelf_oabi.em,
5048         beos.em, elf32.em, generic.em, gld960.em, gld960c.em, hppaelf.em,
5049         linux.em, lnk960.em, mipsecoff.em, sunos.em, vanilla.em}
5050         (ld_emulation_xfer_struct): Add missing NULL initialiser for
5051         find_potential_libraries.
5053 2000-02-28  Jim Blandy  <jimb@redhat.com>
5055         * ldgram.y (exclude_name_list): Don't require a comma to separate
5056         list entries; the lexer considers commas to be valid part of a
5057         filename, so in something like `foo, bar' the comma is considered
5058         part of the first filename, `foo,'.
5059         * ld.texinfo: Update section on EXCLUDE_FILE lists.
5061 2000-02-27  Loren J. Rittle  <ljrittle@acm.org>
5063         * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
5064         host "i[3456]86-*-freebsdelf*".
5066 2000-02-27  Mark Elbrecht  <snowball3@bigfoot.com>
5068         * scripttempl/i386go32.sc: Move misplaced semicolons.
5070 2000-02-25  Ian Lance Taylor  <ian@zembu.com>
5072         * Makefile.am (ALL_EMULATIONS): Remove ehppaelf.o.
5073         (ALL_64_EMULATIONS): Remove eelf64hppa.o.
5074         (eelf64hppa.c, ehppaelf.c): Remove targets.
5075         * Makefile.in: Rebuild.
5077 2000-02-25  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
5079         * configure.tgt (targ_extra_ofiles): Enable elf64_sparc on
5080         GNU/Linux/sparc, but keep the default as 32.
5082         * configure.tgt: Enable elf64_sparc on Solaris7+/sparc.  And make
5083         it default if sparcv9 or sparc64.
5085 2000-02-24  Nick Clifton  <nickc@cygnus.com>
5087         * Makefile.am: Add rules to build emipspe.o and earmpe.o.
5088         * Makefile.in: Regenerate.
5089         * configure.tgt: Add targets for arm-wince, sh-pe and mips-pe.
5091         * ldemul.h (ld_emulation_xfer_struct): Add new field:
5092         find_potential_libraries.
5093         * ldemul.c (ldemul_find_potential_libraries): New function.
5095         * ldfile.c (ldfile_open_file_search): Allow function to be
5096         exported.
5097         (ldfile_open_file): Call ldemul_find_potential_libraries.
5098         * ldfile.h: Add prototype for ldfile_open_file_search.
5100         * pe-dll.c: Add support for ARM, MIPS and SH targets.
5102         * emulparams/mipspe.sh: New file.  Parameters for mips-pe target.
5103         * emulparams/shpe.sh: New file.  Parameters for sh-pe target.
5105         * emultempl/pe.em: Add support for ARM, MIPS and SH DLLs.
5106         (gld_X_find_potential_libraries): New function.  Search for
5107         libraries called "*.lib".
5109         * scripttempl/pe.sc: Add .pdata section.
5111 2000-02-23  Richard Henderson  <rth@cygnus.com>
5113         * scripttempl/elfd10v.sc: Remove dynamic linking hooks.
5114         Add and use memory regions.
5116 2000-02-23  Linas Vepstas (linas@linas.org)
5118         * emulparams/elf32i370.sh, scripttempl/elfi370.sc: New.
5120         * Makefile.am: Add support for Linux/IBM 370.
5121         * configure.tgt: Likewise.
5123         * Makefile.in: Regenerate.
5125 2000-02-21  Alan Modra  <alan@spri.levels.unisa.edu.au>
5127         * ldlang.c (print_input_section, print_data_statement,
5128         print_reloc_statement, print_padding_statement, insert_pad,
5129         size_input_section, lang_check_section_addresses,
5130         lang_size_sections, lang_do_assignments, lang_set_startof,
5131         lang_one_common): Change `opb' to unsigned.
5132         (lang_do_assignments): Also change `size' to unsigned.
5134 2000-02-16  Richard Henderson  <rth@cygnus.com>
5136         * scripttempl/elf.sc: Place OTHER_PLT_RELOC_SECTION.
5138 2000-02-16  Timothy Wall  <twall@cygnus.com>
5140         * mri.c (mri_draw_tree): Add default LMA region argument to call
5141         to lang_leave_output_section_statement.
5142         * ldlang.h: Update prototypes with LMA region arguments.
5143         * ldlang.c (lang_size_sections): Encapsulate region bounds
5144         checking in os_check_region call.
5145         (os_check_region): New function.
5146         (lang_output_section_statement_lookup): Initialize lma_region.
5147         (lang_leave_output_section_statement): Add LMA region argument.
5148         (lang_leave_overlay): Ditto.
5149         * ldgram.y: Handle LMA region syntax.
5150         * ld.texinfo (Output Section Description): Describe LMA region usage.
5151         * emultempl/armelf.em (gld$place_orphan): Add default value for
5152         lma region in call to lang_leave_output_section_statement.
5153         * emultempl/elf32.em (gld$place_orphan): Add default value for
5154         lma region in call to lang_leave_output_section_statement.
5155         * emultempl/pe.em (gld$place_orphan): Add default value for
5156         lma region in call to lang_leave_output_section_statement.
5159 2000-02-04  Timothy Wall  <twall@redhat.com>
5161         * ldlang.c (lang_check_section_addresses): Use bytes instead of
5162         octets when calculating section end addresses.
5164 2000-02-04  Timothy Wall  <twall@redhat.com>
5166         * ldlang.c (lang_size_sections): Fix typo in ALIGN_N invocation.
5168 2000-02-03  Timothy Wall <twall@redhat.com>
5170         * ldexp.c (fold_name): Make SIZEOF operator return byte count, not
5171         octet count.
5172         * ldlang.c (print_input_section, print_data_statement,
5173         print_reloc_statement, print_padding_statement): Print target
5174         address values and section sizes as bytes, not octets.
5175         (insert_pad) Calculate padding size in octets, and adjust "dot"
5176         by bytes.
5177         (size_input_section) Always adjust "dot" by bytes, not octets.
5178         (lang_check_section_addresses, lang_do_assignments) Adjust
5179         "dot" by bytes, not octets.  Use the larger of the directive size
5180         or octets_per_byte for the number of octets actually allocated in
5181         the output section.
5182         (lang_set_startof) Make sure STARTOF returns a target address.
5183         (lang_one_common) Record size changes in octets.
5184         (lang_abs_symbol_at_end_of) Section end symbol's value is
5185         recorded in target bytes.
5186         * ld.texinfo: Updated description of BYTE, SHORT, LONG, etc.
5187         to be clear about behavior when an octet is smaller than one byte.
5189 2000-01-27  Alan Modra  <alan@spri.levels.unisa.edu.au>
5191         * ldcref.c (output_cref): Don't pass message strings to printf
5192         as format arg.
5193         Update copyright.
5195         * ldmisc.c (vfinfo): Same here.
5196         Update copyright.
5198 2000-01-23  Alan Modra  <alan@spri.levels.unisa.edu.au>
5200         * emultempl/{armcoff.em,armelf.em,armelf_oabi.em,beos.em,
5201         generic.em,gld960.em,gld960c.em,hppaelf.em,linux.em,lnk960.em,
5202         mipsecoff.em,sunos.em,vanilla.em} (ld_emulation_xfer_struct):
5203         Add missing NULL initialisers, and comments.
5205 2000-01-21  Nick Clifton  <nickc@cygnus.com>
5207         * ldlang.c (lang_size_sections): Fix typo in comment.
5209 2000-01-18  H.J. Lu  <hjl@gnu.org>
5211         * ldlang.c (lang_size_sections): Also update the current
5212         address of a region if the SEC_NEVER_LOAD bit is not set.
5214 2000-01-10  Philip Blundell  <pb@futuretv.com>
5216         * configure.tgt (arm*-*-conix*): New target.
5218 2000-01-07  Nick Clifton  <nickc@cygnus.com>
5220         * ld.texinfo (Options): Remind users to preceed linker command
5221         line switches with -Wl, (or whatever is appropriate) if it is
5222         being invoked by a comnpiler driver program.
5223         Fix description of the behaviour of the -n command line switch.
5225 2000-01-05  Catherine Moore  <clm@cygnus.com>
5227         * ld.h (wildcard_spec):  Change exclude_name to exclude_name_list.
5228         (name_list): New.
5229         * ld.texinfo (EXCLUDE_FILE): Update documentation.
5230         * ldgram.y (wildcard_spec): Support a list of excluded_files.
5231         (exclude_name_list): New.
5232         ldlang.c (walk_wild_section): Support list of excluded files.
5233         (print_wild_statement): Likewise.
5234         (lang_add_wild): Likewise.
5235         * ldlang.h (lang_wild_statement_type): Likewise.
5236         * scripttempl/elf.sc (OTHER_EXCLUDE_FILES): Support.
5238 2000-01-04  Mumit Khan  <khan@xraylith.wisc.edu>
5240         * pe-dll.c (pe_dll_warn_dup_exports): New variable.
5241         (process_def_file): Use.
5242         (pe_dll_compat_implib): New variable.
5243         (make_one): Use.
5245         * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
5246         pe_dll_compat_implib.
5248         * emultempl/pe.em (longopts): Add warn-duplicate-exports and
5249         compat-implib options.
5250         (gld_${EMULATION_NAME}_list_options): List new options.
5251         (gld_${EMULATION_NAME}_parse_args): Handle.
5253         * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
5254         dll.
5256         * deffilep.y (opt_name): Allow "." in name.
5258 For older changes see ChangeLog-9899
5260 Local Variables:
5261 mode: change-log
5262 left-margin: 8
5263 fill-column: 74
5264 version-control: never
5265 End: