Convert to C90
[binutils.git] / ld / ChangeLog
blobb8b160ed8365a60a1bede59158f3eff5c8bda92c
1 2003-06-28  Alan Modra  <amodra@bigpond.net.au>
3         * ld.h: Convert to C90, remove unnecessary prototypes and casts.
4         Replace PTR with void *.  Formatting.
5         * ldcref.c: Likewise.
6         * ldctor.c: Likewise.
7         * ldctor.h: Likewise.
8         * ldemul.h: Likewise.
9         * ldexp.c: Likewise.
10         * ldexp.h: Likewise.
11         * ldfile.c: Likewise.
12         * ldfile.h: Likewise.
13         * ldlang.c: Likewise.
14         * ldlang.h: Likewise.
15         * ldlex.h: Likewise.
16         * ldlex.l: Likewise.
17         * ldmain.c: Likewise.
18         * ldmain.h: Likewise.
19         * ldmisc.c: Likewise.
20         * ldmisc.h: Likewise.
21         * ldver.h: Likewise.
22         * ldwrite.c: Likewise.
23         * ldwrite.h: Likewise.
24         * lexsup.c: Likewise.
25         * mri.c: Likewise.
26         * mri.h: Likewise.
27         * pe-dll.c: Likewise.
28         * pe-dll.h: Likewise.
29         * deffilep.y: Likewise.
30         * deffile.h: Likewise.  Don't include ansidecl.h.
31         * emulparams/elf32mcore.sh: Remove unnecessary cast.
32         * emultempl/m68kcoff.em: Likewise.
33         * emultempl/m68kelf.em: Likewise.
34         * emultempl/ticoff.em: Remove lang_add_output_format declaration.
35         * sysdep.h: Don't include ansidecl.h.
36         * Makefile.am: Run "make dep-am".
37         * Makefile.in: Regenerate.
39 2003-06-27  Nick Clifton  <nickc@redhat.com>
41         * deffilep.y (def_file_add_directive): Cope with NUL seperated
42         directives.  Fix reporting of unparseable directives.
43         (def_error): Check for a NULL def_filename.
45 2003-06-27  Alan Modra  <amodra@bigpond.net.au>
47         * emultempl/aix.em: Convert to C90, remove unnecessary prototypes
48         and casts.  Replace PTR with void *.  Formatting.
49         * emultempl/alphaelf.em: Likewise.
50         * emultempl/armcoff.em: Likewise.
51         * emultempl/armelf.em: Likewise.
52         * emultempl/armelf_oabi.em: Likewise.
53         * emultempl/beos.em: Likewise.
54         * emultempl/elf32.em: Likewise.
55         * emultempl/generic.em: Likewise.
56         * emultempl/gld960.em: Likewise.
57         * emultempl/gld960c.em: Likewise.
58         * emultempl/hppaelf.em: Likewise.
59         * emultempl/linux.em: Likewise.
60         * emultempl/lnk960.em: Likewise.
61         * emultempl/m68hc1xelf.em: Likewise.
62         * emultempl/m68kcoff.em: Likewise.
63         * emultempl/m68kelf.em: Likewise.
64         * emultempl/mipsecoff.em: Likewise.
65         * emultempl/mipself.em: Likewise.
66         * emultempl/mmix-elfnmmo.em: Likewise.
67         * emultempl/mmixelf.em: Likewise.
68         * emultempl/mmo.em: Likewise.
69         * emultempl/needrelax.em: Likewise.
70         * emultempl/netbsd.em: Likewise.
71         * emultempl/pe.em: Likewise.
72         * emultempl/sh64elf.em: Likewise.
73         * emultempl/sunos.em: Likewise.
74         * emultempl/ticoff.em: Likewise.
75         * emultempl/vanilla.em: Likewise.
76         * emultempl/xtensaelf.em: Likewise.
77         * Makefile.am: Correct dependencies.
78         * Makefile.in: Regenerate.
80 2003-06-25  Alan Modra  <amodra@bigpond.net.au>
82         * ld.texinfo: Correct spelling of "relocatable".
83         * ldctor.c: Likewise.
84         * ldexp.c: Likewise.
85         * ldfile.c: Likewise.
86         * ldint.texinfo: Likewise.
87         * ldlang.c: Likewise.
88         * ldmain.c: Likewise.
89         * ldwrite.c: Likewise.
90         * lexsup.c: Likewise.
91         * emultempl/aix.em: Likewise.
92         * emultempl/alphaelf.em: Likewise.
93         * emultempl/armcoff.em: Likewise.
94         * emultempl/armelf_oabi.em: Likewise.
95         * emultempl/beos.em: Likewise.
96         * emultempl/elf32.em: Likewise.
97         * emultempl/generic.em: Likewise.
98         * emultempl/gld960.em: Likewise.
99         * emultempl/gld960c.em: Likewise.
100         * emultempl/hppaelf.em: Likewise.
101         * emultempl/linux.em: Likewise.
102         * emultempl/lnk960.em: Likewise.
103         * emultempl/m68hc1xelf.em: Likewise.
104         * emultempl/m68kcoff.em: Likewise.
105         * emultempl/m68kelf.em: Likewise.
106         * emultempl/mipsecoff.em: Likewise.
107         * emultempl/mipself.em: Likewise.
108         * emultempl/mmix-elfnmmo.em: Likewise.
109         * emultempl/mmo.em: Likewise.
110         * emultempl/needrelax.em: Likewise.
111         * emultempl/pe.em: Likewise.
112         * emultempl/ppc64elf.em: Likewise.
113         * emultempl/sh64elf.em: Likewise.
114         * emultempl/sunos.em: Likewise.
115         * emultempl/ticoff.em: Likewise.
116         * emultempl/xtensaelf.em: Likewise.
118 2003-06-24  Alan Modra  <amodra@bigpond.net.au>
120         * emultempl/ppc32elf.em: Convert to C90.
122 2003-06-20  Alan Modra  <amodra@bigpond.net.au>
124         * emultempl/ppc64elf.em: Convert to C90 function definitions, remove
125         unnecessary prototypes and casts.
127 2003-06-19  Alan Modra  <amodra@bigpond.net.au>
129         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Dump out
130         statistics from ppc64_elf_build_stubs.
132 2003-06-19  Alan Modra  <amodra@bigpond.net.au>
134         * emultempl/ppc64elf.em (build_section_lists): Check return status
135         from ppc64_elf_next_input_section.
137 2003-06-17  H.J. Lu <hongjiu.lu@intel.com>
139         * ldlang.c (section_already_linked): Put back assignment of
140         kept_section.
142 2003-06-17  Rainer Keuchel  <rkeuchel@allgeier.com>
144         * pe-dll.c (generate_reloc): Catch and ignore an ARM_26D
145         reloc.
147 2003-06-17  Loren James Rittle  <rittle@latour.rsch.comm.mot.com>
149         * configure.host (*-*-freebsd*): Add known path for ld-elf.so.1
150         if not produced by gcc.
152 2003-06-16  Hans-Peter Nilsson  <hp@axis.com>
154         * configure.tgt: Add specific case for cris-*-linux-gnu*
155         with crislinux emulation only.
157 2003-06-13  Robert Millan  <zeratul2@wanadoo.es>
159         * configure.tgt: Add i386-netbsd-gnu target.
161 2003-06-12  Richard Sandiford  <rsandifo@redhat.com>
163         * configure.tgt (mips*-sgi-irix6*): Add the o32 and n64 emulations
164         to $targ_extra_libpath.
166 2003-06-11  H.J. Lu <hongjiu.lu@intel.com>
168         * po/Make-in (DESTDIR): New.
169         (install-data-yes): Support $(DESTDIR).
170         (uninstall): Likewise.
172 2003-06-10  Doug Evans  <dje@sebabeach.org>
174         * Makefile.am (ALL_EMULATIONS): Add em32relf.o.
175         * Makefile.in: Regenerate.
177 2003-06-10  Richard Sandiford  <rsandifo@redhat.com>
179         * configure.tgt (h8300*): Add h8300sxn emulations.
180         * Makefile.am (ALL_EMULATIONS): Add eh8300sxn.o and eh8300sxnelf.o.
181         (eh8300sxn.c, eh8300sxnelf.c): New rules.
182         * Makefile.in: Regenerate.
183         * emulparams/h8300sxnelf.sh, emulparams/h8300sxn.sh: New files.
184         * scripttempl/h8300sxn.sc: New file.
186 2003-06-10  Alan Modra  <amodra@bigpond.net.au>
188         * emulparams/elf64ppc.sh (EXECUTABLE_SYMBOLS, OTHER_BSS_END_SYMBOLS,
189         CTOR_START, CTOR_END, DTOR_START, DTOR_END): Don't define.
191 2003-06-08  Alan Modra  <amodra@bigpond.net.au>
193         * emultempl/ppc64elf.em (emit_stub_syms, toc_section): New vars.
194         (build_toc_list): New function.
195         (gld${EMULATION_NAME}_finish): Call build_toc_list and
196         ppc64_elf_reinit_toc.  Adjust ppc64_elf_build_stubs call.
197         (OPTION_STUBSYMS): Define.
198         (PARSE_AND_LIST_LONGOPTS): Add emit-stub-syms.
199         (PARSE_AND_LIST_OPTIONS): Document.
200         (PARSE_AND_LIST_ARGS_CASES): Handle.
202 2003-06-05  Roland McGrath  <roland@redhat.com>
204         * emultempl/elf32.em (gld${EMULATION_NAME}_list_options): Remove
205         extra \t in -z noexecstack line.
207 2003-05-23  Jakub Jelinek  <jakub@redhat.com>
209         * ldgram.y (phdr_type): Grok PT_GNU_STACK.
210         * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Add
211         -z execstack and -z noexecstack.
212         (gld${EMULATION_NAME}_list_options): Likewise.
213         * scripttempl/elf.sc: If not -r, discard .note.GNU-stack section.
215 2003-06-03  Michael Snyder  <msnyder@redhat.com>
216         and Bernd Schmidt   <bernds@redhat.com>
217         and Alexandre Oliva <aoliva@redhat.com>
219         * Makefile.am: Add new emulations for h8300sx.
220         * Makefile.in: Regenerate.
221         * configure.tgt: Add new emulations.
222         * emulparams/h8300sx.sh: New emulation.
223         * emulparams/h8300sxelf.sh: Ditto.
224         * scripttempl/h8300sx.sc: Ditto.
226 2003-06-03  H.J. Lu <hongjiu.lu@intel.com>
228         * ldmisc.c: Include "bfdlink.h".
229         (error_handler): Handle LD_DEFINITION_IN_DISCARDED_SECTION
230         and -LD_DEFINITION_IN_DISCARDED_SECTION.
232         * Makefile.am: Rebuild dependency.
233         * Makefile.in: Regenerated.
235 2003-06-03  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
237         * emulparams/shlelf_linux.sh (GENERATE_PIE_SCRIPT): Set to yes.
238         * emulparams/shlelf32_linux.sh (GENERATE_PIE_SCRIPT): Likewize.
240 2003-06-02  Fabrizio Gennari  <fabrizio.ge@tiscalinet.it>
242         * pe-dll.c (fill_edata): Scan table pe_dll->exports, which is
243         sorted alphabetically, instead of exported_symbols, which is
244         sorted by ordinal.
246 2003-05-30  Ulrich Drepper  <drepper@redhat.com>
247             Jakub Jelinek  <jakub@redhat.com>
249         * lexsup.c (OPTION_PIE): Define.
250         (ld_options): Add -pie and --pic-executable options.
251         (parse_args): Handle OPTION_PIE.
252         * ldmain.c (main): Initialize link_info.pie and
253         link_info.executable.
254         * genscripts.sh: Generate PIE scripts.
255         * ld.texinfo: Document -pie and --pic-executable options.
256         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open):
257         (gld${EMULATION_NAME}_place_orphan): Likewise.
258         (gld${EMULATION_NAME}_get_script): Include PIE scripts.
259         * scripttempl/elf.sc: In PIE scripts set . the same way as in
260         shared scripts.
261         * emulparams/elf_i386.sh (GENERATE_PIE_SCRIPT): Set to yes.
262         * emulparams/elf64_ia64.sh (GENERATE_PIE_SCRIPT): Likewise.
263         * emulparams/elf32ppc.sh (GENERATE_PIE_SCRIPT): Likewise.
264         * emulparams/elf64ppc.sh (GENERATE_PIE_SCRIPT): Likewise.
265         * emulparams/elf_x86_64.sh (GENERATE_PIE_SCRIPT): Likewise.
266         * emulparams/elf_s390.sh (GENERATE_PIE_SCRIPT): Likewise.
267         * emulparams/elf32_sparc.sh (GENERATE_PIE_SCRIPT): Likewise.
268         * emulparams/elf64_sparc.sh (GENERATE_PIE_SCRIPT): Likewise.
269         * emulparams/elf64alpha.sh (GENERATE_PIE_SCRIPT): Likewise.
270         * emulparams/elf64_s390.sh (GENERATE_PIE_SCRIPT): Likewise.
271         * emulparams/elf_i386.sh (GENERATE_PIE_SCRIPT): Likewise.
273 2003-05-30  H.J. Lu <hongjiu.lu@intel.com>
275         * genscripts.sh: Create tmpdir/libpath.exp.
277 2003-05-30  Nick Clifton  <nickc@redhat.com>
279         * emultempl/armelf.em (arm_elf_before_allocation): Replace ASSERT
280         with a test for a NULL bfd_for_interworking.
282 2003-05-29  Jason Thorpe  <thorpej@wasabisystems.com>
284         * configure.host (*-*-netbsd*): Set HOSTING_CRT0 and HOSTING_LIBS
285         correctly for more recent versions of NetBSD.
286         (alpha*-*-netbsd*): Remove.
287         (i[3-7]86-*-netbsd*): Remove.
289 2003-05-29  Nick Clifton  <nickc@redhat.com>
291         * emultempl/pe.em: Include "safe-ctype.h" instead of <ctype.h>.
293 2003-05-26  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
295         * emulparams/elf64btsmip.sh: Set TEXT_START_ADDR to 0x120000000 to
296         trap on pointer crops.
298 2003-05-21  Marcus Comstedt  <marcus@mc.pp.se>
300         * configure.tgt: Check for a target triplet of shl-...-netbsdelf
301         as well as shle-...-netbsdelf.
303 2003-05-16  Kelley Cook  <kelleycook@wideopenwest.com>
305         * configure.host: Accept i[3-7]86 variants.
306         * configure.tgt: Likewise.
308 2003-05-15  H.J. Lu <hongjiu.lu@intel.com>
310         * emulparams/elf64_ia64.sh: Don't set COMMONPAGESIZE for now.
312 2003-05-09  Daniel Jacobowitz  <drow@mvista.com>
314         * Makefile.am (ALL_EMULATIONS): Add earmelfb.o and earmelfb_linux.o.
315         (earmelfb.c, earmelfb_linux.c): New rules.
316         * Makefile.in: Regenerated.
317         * emulparams/armelfb.sh, emulparams/armelfb_linux.sh: New files.
318         * configure.tgt: Add armeb-elf and arm*b-*-linux-gnu.
320 2003-05-09  Nick Clifton  <nickc@redhat.com>
322         * ldlang.c (lang_size_sections_1): Default to generating a
323         fatal error message if a loadable section is not allocated
324         to a memory region when regions are defined.
326 2003-05-09  Alan Modra  <amodra@bigpond.net.au>
328         * Makefile.am (em68hc11elf.c): Correct dependencies.
329         (em68hc11elfb.c, em68hc12elf.c, em68hc12elfb.c): Likewise.
330         * Makefile.in: Regenerate.
331         * emultempl/elf32.em (find_exp_assignment): Adjust for changed
332         bfd_elf_record_link_assignment name.
334 2003-05-07  Alexandre Oliva  <aoliva@redhat.com>
336         * ldmain.h (overflow_cutoff_limit): Declare.
337         * ldmain.c (overflow_cutoff_limit): Define, initialized to 10.
338         (reloc_overflow): Limit error messages based on it.
339         * lexsup.c (parse_args) <OPTION_VERBOSE>: Set cutoff to
340         unlimited.
342 2003-05-05  Alan Modra  <amodra@bigpond.net.au>
344         * ldlex.l: Accept C style comments in version scripts.
346 2003-04-28  H.J. Lu <hjl@gnu.org>
348         * ldlang.c (lang_process): Add the relax finalize pass.
350         * ldmain.c (main): Initialize link_info.relax_finalizing to
351         FALSE.
353 2003-04-24  Roland McGrath  <roland@redhat.com>
355         * ldgram.y (phdr_type): Grok PT_TLS and PT_GNU_EH_FRAME names.
356         If a name string is unknown, give an error rather than crashing later.
358 2003-04-23 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
360         * Makefile.am (ALL_EMULATIONS): Add eh8300hn.o, eh8300sn.o,
361         eh8300hnelf.o, eh8300snelf.o and respective rules.
362         * Makefile.in: Regenerate.
363         * configure.tgt: Add h8300hn, h8300sn, h8300hnelf, h8300snelf
364         * emulparams/h8300hn.sh: New
365         * emulparams/h8300sn.sh: New
366         * emulparams/h8300hnelf.sh: New
367         * emulparams/h8300snelf.sh: New
368         * scripttempl/h8300hn.sc: new
369         * scripttempl/h8300sn.sc: new
371 2003-04-23  H.J. Lu <hjl@gnu.org>
373         * ldmain.c (link_callbacks): Initialize error_handler.
375         * ldmisc.c (error_handler): New function.
377         * ldmisc.h (error_handler): New prototype.
379 2003-04-21  Stephane Carrez  <stcarrez@nerim.fr>
381         * emulparams/m68hc11elf.sh: Use m68hc1xelf.em extra.
382         * emulparams/m68hc11elfb.sh: Likewise.
383         * emulparams/m68hc12elf.sh: Likewise.
384         * emulparams/m68hc12elfb.sh: Likewise.
386 2003-04-19  Stephane Carrez  <stcarrez@nerim.fr>
388         * emultempl/m68hc1xelf.em: New file to generate far trampolines on
389         68HC11 and 68HC12.
390         (LDEMUL_BEFORE_ALLOCATION): Override to gather the trampolines to
391         generate.
392         (LDEMUL_FINISH): Override to generate the trampolines after gc and
393         linker relaxation.
394         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Override to create the
395         stub file for trampolines.
396         (PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_LONGOPTS): New options
397         --no-trampoline and --bank-window to control the memory bank window.
399 2003-04-18  H.J. Lu <hjl@gnu.org>
401         * ldfile.c (ldfile_add_library_path): Remove the unused
402         variable.
404 2003-04-18  Andrew Haley  <aph@cambridge.redhat.com>
406         * scripttempl/xstormy16.sc (__data, __rdata): New.
408 2003-04-16  Nick Clifton  <nickc@redhat.com>
410         * scripttempl/xstormy16.sc: Add .jcr section mapping.
412 2003-04-15  H.J. Lu <hjl@gnu.org>
414         From Debian by Jack Howarth <howarth@nitro.med.uc.edu>:
416         * ldlex.l: Use YY_CURRENT_BUFFER instead of yy_current_buffer.
418 2003-04-15  Rohit Kumar Srivastava <rohits@kpitcummins.com>
420         * h8-doc.texi: Replace occurrances of 'Hitachi' with 'Renesas'.
421         * ld.texinfo: Likewise.
423 2003-04-14  Alan Modra  <amodra@bigpond.net.au>
425         From Prashanth Tamraparni <prashanth_t@in.ibm.com>
426         * scripttempl/elf.sc (CTOR): Handle crtbeginS.o, crtendS.o and
427         other variants of crtbegin.o, crtend.o.
428         (DTOR): Likewise.
429         * scripttempl/crisaout.sc (ctors, dtors): Likewise.
430         * scripttempl/elf_chaos.sc (CTOR, DTOR): Likewise.
431         * scripttempl/elfd10v.sc (CTOR, DTOR): Likewise.
432         * scripttempl/elfd30v.sc (CTOR, DTOR): Likewise.
433         * scripttempl/elfxtensa.sc (CTOR, DTOR): Likewise.
434         * scripttempl/iq2000.sc (CTOR, DTOR): Likewise.
435         * scripttempl/mmo.sc (ctors, dtors): Likewise.
436         * scripttempl/xstormy16.sc (CTOR, DTOR): Likewise.
438 2003-04-09   Dmitry Diky  <diwil@mail.ru>
440         * scripttempl/elf32msp430.sc: Add initX, finiX, ctors, dtors
441         sections to respect C++  constructor/destructor. Add ctors/dtors
442         start/stop definitions.
443         * scripttempl/elf32msp430_3.sc: Likewise.
445 2003-04-06  Nick Clifton  <nickc@redhat.com>
447         * ld.texinfo (Options): Add a reminder of the target specific
448         nature to the description of the i386 PE specific options, for
449         readers who have not read all the way through the manual.
451 2003-04-04  Svein E. Seldal  <Svein.Seldal@solidas.com>
453         * configure.tgt: Fixed bug in list of targ_extra_emuls.
454         * emulparams/tic3xcoff.sh (SCRIPT_NAME): Namespace
455         cleanup. Replace s/c4x/tic4x and s/c3x/tic3x/
456         * emulparams/tic3xcoff_onchip.sh: Ditto
457         * emulparams/tic4xcoff.sh: Ditto
458         * scripttempl/tic4xcoff.sc: Ditto
460 2003-04-03  Nick Clifton  <nickc@redhat.com>
462         * NEWS: Mention support for Xtensa architecture.
464 2003-04-02  Nick Clifton  <nickc@redhat.com>
466         * pe-dll.c (pe_detail_list): arm-pe targets use underscores.
468 2003-04-01  Danny Smith <dannysmith@users.sourceforge.net>
470         * emultempl/pe.em (gld_${EMULATION_NAME}_after_open):
471         Don't call pe_dll_build_section() if link_info.relocateable.
472         (gld_${EMULATION_NAME}_finish): Don't call pe_dll_fill_sections()
473         if link_info.relocateable.
475 2003-04-01  Fabrizio Gennari  <fabrizio.ge@tiscalinet.it>
477         * pe-dll.c (process_def_file): Don't create an export
478         section if there are no exports and we're building an exe
479         (pe_dll_build_sections): Ditto
480         (pe_dll_fill_sections): Conditionalize setting
481         abfd->dll true on info->shared
482         * emultempl/pe.em (gld_${EMULATION_NAME}_after_open):
483         If i386pe or armpe, call pe_dll_build_section()
484         for both exe's and dll's, not just dll's.
485         (gld_${EMULATION_NAME}_finish): For all targets except
486         shpe and mipspe, call pe_dll_fill_sections() for both
487         exe's and dll's, not just dll's.
489 2003-04-02  Bob Wilson  <bob.wilson@acm.org>
491         * emulparams/xtensa-config.sh: Remove comment indicating that this is
492         a generated file.
494 2003-04-01  Bob Wilson  <bob.wilson@acm.org>
496         * Makefile.am (ALL_EMULATIONS): Add eelf32xtensa.o.
497         (eelf32xtensa.c): New target.
498         * Makefile.in: Regenerate.
499         * configure.tgt: Handle xtensa-*-*.
500         * gen-doc.texi: Set XTENSA variable.
501         * ld.texinfo: Set XTENSA variable.  Add new Xtensa node.
502         * emulparams/elf32xtensa.sh: New file.
503         * emulparams/xtensa-config.sh: Likewise.
504         * emultempl/xtensaelf.em: Likewise.
505         * scripttempl/elfxtensa.sc: Likewise.
507 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
509         * configure.tgt (powerpc*-*-linux*): Add elf32ppc to ppc64
510         targ_extra_libpath.  Add elf64ppc to ppc targ_extra_libpath
511         if --enable-64-bit-bfd.
513 2003-04-01  Nick Clifton  <nickc@redhat.com>
515         * emulparams/armelf.sh (OTHER_READONLY_SECTIONS): Change name of
516         note section.
517         * emulparams/armelf_linux.sh (OTHER_READONLY_SECTIONS): Change
518         name of note section.
520 2003-03-31  Alexandre Oliva  <aoliva@redhat.com>
522         * ld.texinfo (-Tbss, -Tdata, -Ttext): Document in terms of
523         --section-start.
525 2003-03-31  David Heine  <dlheine@suif.stanford.edu>
527         * ldfile.c (ldfile_add_library_path): Always allocate space for
528         the filename.
529         * ldlang.c (lang_register_vers_node): Free the node if it cannot
530         be used.
531         * ldmain.c (set_scripts_dir): Always free the constructed
532         directory name.
533         (add_keepsyms_file): Fix memory leak.
534         * ldmisc.c (vfinfo): Likewise.
535         * lexsup.c (parse_args): Likewise.
537 2003-03-25  Stan Cox   <scox@redhat.com>
538             Nick Clifton  <nickc@redhat.com>
540         Contribute support for Intel's iWMMXt chip - an ARM variant:
542         * emulparams/armelf.sh (OTHER_READONLY_SECTIONS): Define.
543         * emulparams/armelf_linux.sh (OTHER_READONLY_SECTIONS): Define.
544         * scripttempl/armcoff.sc (.data): Ensure 8 byte alignment.
545         (.bss): Likewise.
547 2003-03-25  Alexandre Oliva  <aoliva@redhat.com>
549         * ldmain.h (ld_canon_sysroot, ld_canon_sysroot_len): Declare.
550         * ldmain.c (ld_canon_sysroot, ld_canon_sysroot_len): Define.
551         (main): Initialize them.
552         * ldfile.c: Include pathnames.h.
553         (is_sysrooted_pathname): New.
554         (ldfile_add_library_path): Use it.
555         (ldfile_open_file_search): Likewise.  Use IS_ABSOLUTE_PATH.  Don't
556         search_dirs if given an absolute pathname.
557         (ldfile_open_file): Issue error message for sysrooted
558         absolute pathnames.
559         * Makefile.am: Updated dependencies.
560         * Makefile.in: Rebuild.
562 2003-03-24  Daniel Néri  <dne@mayonnaise.net>
564         * ld.texinfo: Rename all occurances of C54X to TIC54X.
566 2003-03-19  Andreas Schwab  <schwab@suse.de>
568         * ldfile.c (ldfile_try_open_bfd): Pop lexer start condition after
569         eof.
571 2003-03-18  Danny Smith  <dannysmith@users.sourceforge.net>
573         * defilep.y (opt_base): If no number given, set to default
574         (-1), not 0.
576 2003-03-13  Danny Smith  <dannysmith@users.sourceforge.net>
578         * deffilep.y (def_import): Use default extension of "dll"
579         if no extension provided in parsed IMPORT definition.
581         * deffilep.y (def_lex): Revert 2003-03-12 change.
582         (dot_name): New id type and rule.
583         (expline): Use instead of ID.
584         (opt_equal_name): Likewise.
586 2003-03-12  Danny Smith  <dannysmith@users.sourceforge.net>
588         * deffilep.y (def_lex): Accept '.' as valid non-lead char.
590 2003-03-07  Christopher Faylor  <cgf@redhat.com>
592         * configure.tgt: Add NATIVE_LIB_DIRS for cygwin target back after
593         apparent accidental removal on 2003-01-06.
595 2003-03-04  Dmitry Diky  <diwil@mail.ru>
597         * Makefile.am: Add new devices x1122 x1132 emulation
598         * configure.tgt: Likewise.
599         * Makefile.in: Regenerate.
600         * emulparams/msp430x1122.sh: New file.
601         * emulparams/msp430x1132.sh: New file.
603 2003-03-03  Alexandre Oliva  <aoliva@redhat.com>
605         * ldmain.c (set_scripts_dir): Look for relative to TOOLBINDIR as
606         well.
608         * ldfile.h (struct search_dirs): Added sysrooted field.
609         * ldlang.h (struct lang_input_statement_struct): Likewise.
610         * ldfile.c (ldfile_add_library_path): Mark sysrooted paths.
611         (ldfile_open_file_search): Look for sysrooted filename starting
612         with / in ld_sysroot instead of in the current directory.  Clear
613         sysrooted flag if it's found in the current directory.  Set it
614         from the search directory's sysrooted flag where it is found
615         otherwise.
616         * ldlang.c (ldlang_sysrooted_script): New static variable.
617         (new_afile): Mark search_file_enums as sysrooted if
618         ldlang_sysrooted_script.
619         (load_symbols): Set ldlang_sysrooted_script according to the
620         script's sysrooted field while processing it.
621         * ld.texinfo: Document INPUT behavior in sysroot.
623 2003-03-02  Danny Smith  <dannysmith@users.sourceforge.net>
625         * scripttempl/pe.sc: Use PROVIDE with etext, end, _end,
627 2003-03-03  Alan Modra  <amodra@bigpond.net.au>
629         * emulparams/elf64alpha.sh (EXTRA_EM_FILE): Define.
630         (PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
631         PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES,
632         PARSE_AND_LIST_EPILOGUE): Don't define.
633         * emultempl/alphaelf.em: New file.
635 2003-03-01  Alan Modra  <amodra@bigpond.net.au>
637         * ldemul.c: Include getopt.h.
638         * emultempl/elf32.em: Include getopt.h earlier.
639         * emultempl/ticoff.em: Likewise.
641 2003-02-28  Alan Modra  <amodra@bigpond.net.au>
643         * emultempl/elf32.em (gld${EMULATION_NAME}_get_script): Add combreloc
644         support when scripts read from files.
646 2003-02-28  Alan Modra  <amodra@bigpond.net.au>
648         * ldemul.c (ldemul_parse_args): Return FALSE by default.
649         * ldemul.h (struct ld_emulation_xfer_struct): Update parse_args
650         comment.
652         * ldemul.c (ldemul_add_options, ldemul_handle_option): New functions.
653         (ldemul_parse_args): Return bfd_boolean.  Formatting.
654         * ldemul.h (ldemul_add_options, ldemul_handle_option): Declare.
655         (ldemul_parse_args): Adjust.
656         (struct ld_emulation_xfer_struct): Add add_options and handle_option.
657         Return bfd_boolean from parse_args.
658         * lexsup.c (parse_args): Malloc shortopts, longopts and
659         really_longopts.  Call ldemul_add_options and ldemul_handle_option.
660         * emultempl/aix.em (gld${EMULATION_NAME}_add_options): Split out from
661         gld${EMULATION_NAME}_parse_args.
662         (gld${EMULATION_NAME}_handle_option): Likewise.
663         (ld_${EMULATION_NAME}_emulation): Adjust initializer.
664         * emultempl/armcoff.em: As for aix.em, but remove parse_args.
665         * emultempl/beos.em: Likewise.
666         * emultempl/pe.em: Likewise.
667         * emultempl/ticoff.em: Likewise.
668         * emultempl/elf32.em: Likewise.  Don't duplicate long options either.
669         (gld${EMULATION_NAME}_add_sysroot): Prototype.
670         * emultempl/armelf.em (PARSE_AND_LIST_LONGOPTS): Don't duplicate
671         options.
672         * emultempl/hppaelf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
673         * emultempl/ppc32elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
674         * emultempl/ppc64elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
675         * emultempl/armelf_oabi.em (ld_${EMULATION_NAME}_emulation): Adjust
676         initializer.
677         * emultempl/generic.em: Likewise.
678         * emultempl/gld960.em: Likewise.
679         * emultempl/gld960c.em: Likewise.
680         * emultempl/linux.em: Likewise.
681         * emultempl/lnk960.em: Likewise.
682         * emultempl/m68kcoff.em: Likewise.
683         * emultempl/mipsecoff.em: Likewise.
684         * emultempl/sunos.em: Likewise.
685         * emultempl/vanilla.em: Likewise.
686         * emultempl/netbsd.em (gldnetbsd_before_parse): Prototype.
688 2003-02-25  Alexandre Oliva  <aoliva@redhat.com>
690         * emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Fix
691         memory allocation error.
693         * Makefile.am (ldmain.o): Define TOOLBINDIR.
694         * Makefile.in: Rebuilt.
695         * ldmain.c (ld_sysroot): Try to set from TOOLBINDIR too.
697 2003-02-21  Bob Wilson  <bob.wilson@acm.org>
699         * ldlang.c (lang_size_sections_1): Add CHECK_REGIONS argument and only
700         call os_region_check when it is set.
701         (lang_size_sections): Add CHECK_REGIONS argument and pass it through to
702         lang_size_sections_1.
703         (lang_process): Change lang_size_sections calls to set CHECK_REGIONS
704         only for the last call, not on every relaxation iteration.
705         * ldlang.h (lang_size_sections): Update prototype.
706         * pe-dll.c (pe_dll_fill_sections): Set CHECK_REGIONS argument in calls
707         to lang_size_sections.
708         (pe_exe_fill_sections): Likewise.
709         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Likewise.
710         * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
711         * emultempl/ppc64elf.em (ppc_before_allocation): Likewise.
712         (ppc_layout_sections_again): Likewise.
714 2003-02-21  Bob Wilson  <bob.wilson@acm.org>
716         * gen-doc.texi: Set ARM and HPPA variables.
717         * ld.texinfo: Fix typos and obvious texinfo mistakes.  Make section
718         title capitalization more consistent.  Add missing menu entries for
719         machine-specific sections and conditionalize them consistently.
720         Conditionalize text that is irrelevant when SingleFormat is set.
721         Add @group divisions to improve page breaks in long examples.
722         Use @iftex/@ifnottex instead of @iftex/@ifinfo so that HTML output
723         is correct.  Remove "FIXME" comment about not using
724         @raisesections/@lowersections.  Use @raisesections/@lowersections
725         consistently for machine-specific sections.  Change to be more polite
726         about poor bug reports.  Replace FDL appendix with include of fdl.texi.
727         Move WIN32 node to match its order in the menus.
728         * fdl.texi: New file.
730 2003-02-20  Alexandre Oliva  <aoliva@redhat.com>
732         * configure.in (TARGET_SYSTEM_ROOT): Set default to
733         ${exec_prefix}/${target_alias}/sys-root.  Match explicit
734         '${exec_prefix}' (in addition to the expansion thereof) as
735         relocatable.
736         * configure: Rebuilt.
738 2003-02-20  Phil Edwards  <pme@gcc.gnu.org>
740         * ldgram.y (vers_defns): Also recurse with 'EXTERN NAME' patterns.
742 2003-02-20  Harri Porten  <porten@kde.org>
744         * ldgram.y (vers_defns): Allow optional trailing semicolon in
745         EXTERN NAME block;
747 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
749         * emultempl/ppc32elf.em: New file.
750         * emulparams/elf32ppc.sh (EXTRA_EM_FILE): Define.
751         * Makefile.am (eelf32lppc.c): Depend on emultempl/ppc32elf.em.
752         (eelf32lppcnto.c): Likewise.
753         (eelf32lppcsim.c): Likewise.
754         (eelf32ppcnto.c): Likewise.
755         (eelf32ppc.c): Likewise.
756         (eelf32ppc_fbsd.c): Likewise.
757         (eelf32ppcsim.c): Likewise.
758         (eelf32ppclinux.c): Likewise.
759         * Makefile.in: Regenerate.
761 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
763         * ld.texinfo: Remove spaces between @samp and opening brace.
765 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
767         * emultempl/ppc64elf.em (ppc_create_output_section_statements): Check
768         hash creator.
769         (ppc_before_allocation): Don't do optimizations if wrong hash table.
770         (gld${EMULATION_NAME}_finish): Ditto.
772 2003-02-17  Nick Clifton  <nickc@redhat.com>
774         * ldmain.c (main) Default allow_shlib_undefined to true.
775         * lexsup.c (ld_options): Add --no-allow-shlib-undefined.
776         (parse_args): Parse the new switch.
777         * ld.texinfo: Document new switch and default behaviour of
778         allowing undefined symbols in shared libraries.
780 2003-02-11 Dmitry Diky  <diwil@mail.ru>
782         * scripttempl/elf32msp430.sc: Add new data anchors definitions.
783         * scripttempl/elf32msp430_3.sc: Likewise.
785 2003-02-11  Uwe Stieber  <uwe@wwws.de>
787         * configure.tgt: Add support for kaOS as cross build target
788         system.
790 2003-02-10  John Daivid Anglin  <dave.anglin@nrc-cnrc.gc.ca>
792         * hppaelf.em (group_size): Change default back to 1.
794 2003-02-09  Alan Modra  <amodra@bigpond.net.au>
796         * emultempl/ppc64elf.em: Add "no-tls-optimize" option and support code.
798 2003-02-07  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
800         * hppaelf.em (group_size): Change default to -1.
802 2003-02-07  Nick Clifton  <nickc@redhat.com>
804         * emultempl/armelf.em (PARSE_AND_LIST_SHORTOPTS): Remove 'n' short
805         opt.
806         (PARSE_AND_LIST_LONGOPTS): Add duplicate entry for
807         no-pipeline-knowledge.  This will prevent the getopt package from
808         thinking that there are any shorter abbreviations for
809         --no-pipeline-knowledge.
811 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
813         * genscripts.sh (LIB_PATH): Don't append LIBPATH_SUFFIX to paths
814         which already have it.  Avoid duplicates.
816 2003-02-06  Jakub Jelinek  <jakub@redhat.com>
818         * emulparams/elf64_s390.sh (LIBPATH_SUFFIX): Set to 64.
819         * emulparams/elf_x86_64.sh (LIBPATH_SUFFIX): Likewise.
820         * emulparams/elf64_sparc.sh (LIBPATH_SUFFIX): Set instead of suffix.
822 2003-02-05  Alan Modra  <amodra@bigpond.net.au>
824         * emultempl/ppc64elf.em (ppc_before_allocation): Size sections then
825         call ppc64_elf_tls_optimize.
827 2003-02-03  Daniel Jacobowitz  <drow@mvista.com>
829         * emultempl/elf32.em: Move gld${EMULATION_NAME}_add_sysroot
830         outside of GNU/Linux conditional.
832 2003-01-28  Ralf Habacker  <ralf.habacker@freenet.de>
834         * deffilep.y (def_get_module): New function: locate an already
835         added module.
836         * deffile.h (def_get_module): New prototype.
837         * pe-dll.c (pe_implied_import_dll): Add code to prevent importing
838         a dll multiple times.
840 2003-01-23  Alan Modra  <amodra@bigpond.net.au>
842         * emultempl/sh64elf.em: Include elf32-sh64.h.
843         (sh64_elf_${EMULATION_NAME}_before_allocation): Adjust for changed
844         sh64_elf_section_data.
845         (sh64_elf_${EMULATION_NAME}_after_allocation): Likewise.
847 2003-01-23  Wu Yongwei  <adah@netstd.com>
849         * ld.texinfo: Remove an extra "i" in --dll-search-prefix.
850         * emultempl/pe.em (gld_${EMULATION_NAME}_list_options): Move a
851         cross-80th-column-margin "an" to the next line.
853 2003-01-21  Nick Clifton  <nickc@redhat.com>
855         * emulparams/tic3xcoff-onchip.sh: Rename to ...z
856         * emulparams/tic3xcoff_onchip.sh: ...this.
857         * Makefile.am (etic3xcoff_onchip.c): Fix name of generated C file.
858         * Makefile.in: Regenerate.
860 2003-01-21  Fabio Alemagna  <falemagn@aros.org>
862         * configure.tgt: Handle i[3456]86-*-aros*
864 2003-01-19  Svein E. Seldal  <Svein.Seldal@solidas.com>
866         * Makefile.am: Added etic3xcoff.o and etic4xcoff_onchip.o
867         * Makefile.in: Regenerate
868         * configure.tgt: Added extra target emulations
869         * emulparams/tic3xcoff.sh: Remove old settings
870         * emulparams/tic4xcoff.sh: Ditto
871         * emulparams/tic3xcoff-onchip.sh: Added new
872         * scripttempl/tic4xcoff.sc: Revise and combine both c3x and c4x
873         * scripttempl/tic3xcoff.sc: Remove
875 2003-01-17  Andreas Jaeger  <aj@suse.de>
877         * emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Do not
878         skip ':'.
880 2003-01-16  Alan Modra  <amodra@bigpond.net.au>
882         * Makefile.in: Regenerate.
884 2002-01-14  Charles Wilson  <cwilson@ece.gatech.edu>
886         * ld.texinfo (node WIN32): Some clarifications
887         and formatting fixups.
889 2003-01-09  Chris Demetriou  <cgd@broadcom.com>
891         * ldmain.c (get_emulation): Sort -mipsNN checks in the usual
892         order, and handle (ignore) -mips32r2.
894 2003-01-09  Daniel Jacobowitz  <drow@mvista.com>
896         * ldmain.c (main): Make sure ld_sysroot is initialized.
898 2003-01-06  Daniel Jacobowitz  <drow@mvista.com>
900         * Makefile.am (eelf32iq10.c): Fix tab/whitespace mixup.
902         * Makefile.am (ldmain.o): Add @TARGET_SYSTEM_ROOT_DEFINE@.
903         (GENSCRIPTS): Add @use_sysroot@.
904         * Makefile.in: Regenerated.
905         * configure.host: Move setting of NATIVE_LIB_DIRS to...
906         * configure.tgt: ... here.  Use ${target} instead of ${host}
907         for NATIVE_LIB_DIRS.
908         * configure.in: Add --with-sysroot.
909         * configure: Regenerated.
910         * genscripts.sh: Accept use_sysroot option.  Set new variables
911         NATIVE and USE_LIBPATH.  Prepend "=" to directory names if
912         $use_sysroot.  Don't search $tool_lib if $use_sysroot.
913         * ldfile.c (ldfile_add_library_path): Handle leading '='.
914         * ldmain.c (TARGET_SYSTEM_ROOT): Define if not defined.
915         (ld_sysroot): New variable.
916         (main): Initialize ld_sysroot.
917         * ldmain.h (ld_sysroot): New extern.
918         * emultempl/elf32.em: Use NATIVE and USE_LIBPATH instead of
919         searching $EMULATION_LIBPATH.
920         (gld${EMULATION_NAME}_add_sysroot): New function.
921         (gld${EMULATION_NAME}_check_ld_so_conf): Use it.  Honor ld_sysroot.
922         (gld${EMULATION_NAME}_after_open): Likewise.  Only search
923         environment variables if $NATIVE.
924         * ld.texinfo (Options): Mention "=" prefix in the description of -L.
925         * NEWS: Mention --with-sysroot.
927         * emulparams/elf32bmipn32-defs.sh: Set NATIVE and LIBPATH_SUFFIX
928         instead of setting LIB_PATH.
929         * emulparams/elf32ppc.sh: Likewise.
930         * emulparams/elf64_s390.sh: Likewise.
931         * emulparams/elf64_sparc.sh: Likewise.
932         * emulparams/elf64ppc.sh: Likewise.
933         * emulparams/elf_x86_64.sh: Likewise.
935         * emulparams/elf64_aix.sh: Add "=" prefixes to LIB_PATH.
936         * emulparams/elf64hppa.sh: Add "=" prefixes to LIB_PATH.
938 2003-01-03  Charles Wilson  <cwilson@ece.gatech.edu>
940         * pe-dll.c (autofilter_symbollist): Add cygwin_crt0.
942 2003-01-04  Daniel Jacobowitz  <drow@mvista.com>
944         * Makefile.am (ldmain.o): Pass BINDIR.
945         * Makefile.in: Regenerated.
946         * ldmain.c (set_scripts_dir): Use make_relative_prefix for the first
947         search path.
949 2003-01-02  Ben Elliston  <bje@redhat.com>
951         * Makefile.am (ALL_EMULATIONS): Add eelf32iq2000.o.
952         (eelf32iq2000.c): New target.
953         * Makefile.in: Regenerate.
954         * configure.tgt: Handle iq2000-*-elf.
955         * emulparams/elf32iq10.sh: New file.
956         * emulparams/elf32iq2000.sh: New file.
957         * scripttempl/iq2000.sc: New file.
959 2003-01-02 Charles Wilson <cwilson@ece.gatech.edu>
961         * pe-dll.c (autofilter_symbollist): Add do_pseudo_reloc
962         and _pei386_runtime_relocator to the exclude list.
964 2003-01-01  Kazu Hirata  <kazu@cs.umass.edu>
966         * ldfile.c: Fix comment typos.
967         * ldlang.c: Likewise.
968         * mri.c: Likewise.
969         * pe-dll.c: Likewise.
971 2003-01-01  Daniel Jacobowitz  <drow@mvista.com>
973         Suggested by Manfred Hollstein <manfred.h@gmx.net>:
974         * Makefile.am (ld.1): Depend on configdoc.texi
975         and ldver.texi.
976         * Makefile.in: Regenerated.
978 2002-12-24  Dmitry Diky  <diwil@mail.ru>
980         * Makefile.am: Add msp430 target.
981         * configure.tgt: Likewise.
982         * Makefile.in: Regenerate.
983         * emulparams/msp430x???.sh: New files.  Linker script parameters
984         for various msp430 configurations.
985         * gen-doc.texi: Enable msp430 documenation.
986         * ld.texinfo: Document msp430 sections.
987         * scripttempl/elf32msp430.sc: New file.  Linker script for msp430.
988         * scripttempl/elf32msp430_3.sc: New file.  Linker script for msp430.
990 2002-12-30  Ralf Habacker  <Ralf.Habacker@freenet.de>
991             Charles Wilson  <cwilson@ece.gatech.edu>
993         * config.in (HAVE_REALPATH): New entry.
994         (HAVE_SYS_STAT_H, HAVE_SYS_TYPES_H): Removed: obsolete.
996 2002-12-30  Ralf Habacker  <ralf.habacker@freenet.de>
998         * ld.texinfo: New win32 topics: 'symbol aliasing' and 'export dll
999         symbols'.
1001 2002-12-23  Alan Modra  <amodra@bigpond.net.au>
1003         * ldmain.c (main): Init "strip_discarded".
1004         * lexsup.c (OPTION_STRIP_DISCARDED): Define.
1005         (OPTION_NO_STRIP_DISCARDED): Define.
1006         (ld_options): Add "strip-discarded" and "no-strip-discarded".
1007         (parse_args): Handle them.
1009 2002-12-23  Nick Clifton  <nickc@redhat.com>
1011         * ld.h (struct args_type): Add new field
1012         'accept_unknown_input_architecture'.
1013         * ldmain.c (main): Initialise 'accept_unknown_input_architecture'
1014         to false.
1015         * ldlang.c (lang_check): Pass accept_unknown_input_architecture to
1016         bfd_arch_get_compatible.
1017         * ldfile.c (ldfile_try_open_bfd): Likewise.
1018         * lexsup.c (ld_options): Add new command line switch
1019         --accept-unknown-input-architecture and its inverse.
1020         (parse_args): Handle --accept-unknown-input-architecture.
1021         * ld.texinfo: Document new linker option.
1022         * NEWS: Mention new linker option.
1024 2002-12-20  Alan Modra  <amodra@bigpond.net.au>
1026         * ldmain.c (main): Re-order link_info initialization.  Init all
1027         fields.
1029 2002-12-19  Charles Wilson  <cwilson@ece.gatech.edu>
1031         * ld.texinfo: Clarify and extend the documentation
1032         in the Machine Dependent, WIN32 section.
1034 2002-12-18  Ralf Habacker  <ralf.habacker@freenet.de>
1036         * ld.texinfo: Add win32 machine depending section.
1037         * gen-doc.texi: Enable win32 machine depending section.
1039         * configure.host: Add win32 library search path.
1041 2002-12-17  Ralf Habacker  <ralf.habacker@freenet.de>
1043         * emultempl/pe.em (pe_find_data_imports): Don't search for data
1044         import when auto-import is disabled.
1046 2002-12-17  Danny Smith  <dannysmith@users.sourceforge.net>
1048         * emultempl/pe.em (..._recognized_file): Use LD_PATHMAX+1 to
1049         account for trailing '\0'.
1051 2002-12-17  Nick Clifton  <nickc@redhat.com>
1053         * emultempl/pe.em (longopts): Duplicate entry for --compact-implib
1054         so that it is not confused with -c.
1056 2002-12-13  Ralf Habacker  <Ralf.Habacker@freenet.de>
1057             Charles Wilson  <cwilson@ece.gatech.edu>
1059         * configure.in: Add check for realpath function.
1060         * configure: Regenerate.
1061         * config.in: Regenerate.
1062         * aclocal.m4: Regenerate.
1063         * deffile.h: Add .data field to def_file_import
1064         structure.
1065         * pe-dll.c (pe_proces_import_defs): Use .data field of
1066         def_file_import structure to initialize flag_data field of
1067         def_file_export structure.
1068         (pe_implied_import_dll): New variables exp_funcbase and
1069         [data|bss]_[start|end].  Use DLL's internal name to set dll_name,
1070         not filename (which may be a symlink).  Scan the sections and
1071         initialize [data|bss]_[start|end].  When scanning the export
1072         table, skip _nm_ symbols, and mark any symbols whose rva indicates
1073         that it is in the .bss or .data sections as data.
1074         * sysdep.h: Include limits.h and sys/param.h, and define
1075         LD_PATHMAX as appropriate.  Also define REALPATH as realpath if it
1076         exists, NULL otherwise.
1077         * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Call
1078         pe_process_import_defs before pe_find_data_imports, so that
1079         auto-import will check the virtual implib as well as "real"
1080         implibs.
1081         (gld_${EMULATION_NAME}_recognized_file): Use REALPATH to follow
1082         symlinks to their target; check that the target's extension is
1083         .dll before calling pe_implied_import_dll(), not the filename
1084         itself (which may be a symlink).
1086 2002-12-10  Alan Modra  <amodra@bigpond.net.au>
1088         * emultempl/elf32.em (struct orphan_save): Add os_tail field.
1089         (gld${EMULATION_NAME}_place_orphan): Re-order output_section_statement
1090         list too.
1092 2002-12-08  Alan Modra  <amodra@bigpond.net.au>
1094         * ldlang.h: Formatting.
1096 2002-12-07  Alan Modra  <amodra@bigpond.net.au>
1098         * ldlang.c (init_os): Ensure sections mentioned in load_base
1099         are initialized.
1101 2002-12-05  Alan Modra  <amodra@bigpond.net.au>
1103         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Set
1104         load_base for orphans that follow a section with load_base set.
1106 2002-12-01  H.J. Lu <hjl@gnu.org>
1108         * ld.texinfo: Remove the extra `;' in sample version script.
1110 2002-11-30  Alan Modra  <amodra@bigpond.net.au>
1112         * configure.host: Correct dynamic-linker for powerpc64 hosts.
1114         * Makefile.am (eelf32ppcwindiss.c): Correct dependencies.
1115         * Makefile.in: Regenerate.
1117         * ld.h, ldcref.c, ldctor.c, ldctor.h, ldemul.c, ldemul.h, ldexp.c,
1118         ldexp.h, ldfile.c, ldfile.h, ldgram.y, ldlang.c, ldlang.h, ldmain.c,
1119         ldmain.h, ldmisc.c, ldwrite.c, lexsup.c, mri.c, pe-dll.c, pe-dll.h,
1120         emulparams/elf32b4300.sh, emultempl/aix.em, emultempl/armcoff.em,
1121         emultempl/armelf.em, emultempl/armelf_oabi.em, emultempl/beos.em,
1122         emultempl/elf32.em, emultempl/generic.em, emultempl/gld960.em,
1123         emultempl/gld960c.em, emultempl/hppaelf.em, emultempl/linux.em,
1124         emultempl/lnk960.em, emultempl/m68kcoff.em, emultempl/mipsecoff.em,
1125         emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em, emultempl/mmo.em,
1126         emultempl/needrelax.em, emultempl/pe.em, emultempl/ppc64elf.em,
1127         emultempl/sh64elf.em, emultempl/sunos.em, emultempl/ticoff.em: Replace
1128         boolean with bfd_boolean, true with TRUE, false with FALSE.  Simplify
1129         comparisons of bfd_boolean vars with TRUE/FALSE.  Formatting.
1131 2002-11-27  David O'Brien  <obrien@FreeBSD.org>
1133         * configure.host: Fix generic FreeBSD configuration entry.
1135 2002-11-27  H.J. Lu <hjl@gnu.org>
1137         * ld.texinfo: Add the missing `;' to sample version scripts.
1139 2002-11-20  Alan Modra  <amodra@bigpond.net.au>
1141         * emulparams/elf64ppc.sh (SEGMENT_SIZE): Don't define.
1143 2002-11-14  Egor Duda  <deo@logos-m.ru>
1145         * ldmain.c (main): Make runtime relocs disabled by default. Remove
1146         assignment which has no effect.
1147         * pe-dll.h (pe_create_import_fixup): Change prototype.
1148         * pe-dll.c (make_runtime_pseudo_reloc): New function.
1149         (pe_create_runtime_relocator_reference): Ditto.
1150         (pe_create_import_fixup): Handle relocations with non-zero addends.
1151         * emultempl/pe.em: Add options --enable-runtime-pseudo-reloc and
1152         --disable-runtime-pseudo-reloc.
1153         (make_import_fixup): Handle relocations with non-zero addends. Create
1154         an external reference to _pei386_runtime_relocator symbol if at least
1155         one pseudo reloc was created.
1156         * ld.texinfo: Document --enable-runtime-pseudo-reloc and
1157         --disable-runtime-pseudo-reloc options.
1159 2002-11-12  Earl Chew <earl_chew@agilent.com>
1161         * ldlang.c (lang_add_section): Discard debugging sections that have
1162         been marked SEC_EXCLUDE.
1164 2002-11-12  Nick Clifton  <nickc@redhat.com>
1166         * configure.in (ALL_LINGUAS): Add da.
1167         * configure: Regenerate.
1168         * po/da.po: New Danish translation.
1170 2002-11-12  Alan Modra  <amodra@bigpond.net.au>
1172         * emultempl/ppc64elf.em (ppc_before_allocation): New function.
1173         (LDEMUL_BEFORE_ALLOCATION): Define.
1174         (gld${EMULATION_NAME}_finish): Run discard_info for relocatable
1175         linking.
1176         * emultemp/hppaelf.em ((gld${EMULATION_NAME}_finish): Likewise.
1178 2002-11-11  Christopher Faylor  <cgf@redhat.com>
1180         * configure.tgt (LIB_PATH): Default to searching w32api directory under
1181         cygwin.
1183 2002-11-11  Charles Wilson  <cwilson@ece.gatech.edu>
1185         * pe-dll.c (autofilter_liblist): add libmingwex and libgcj to the list
1186         of restricted auto-export libs.
1188 2002-11-11  Charles Wilson  <cwilson@ece.gatech.edu>
1190         * pe-dll.c (autofilter_liblist): Generalize library names to catch more
1191         creative library naming instances like, e.g., libstdc++-2.a.
1193 2002-11-06  Alexandre Oliva  <aoliva@redhat.com>
1195         * emulparams/elf32btsmipn32.sh (TEXT_DYNAMIC): Define.
1196         * emulparams/elf64btsmip.sh (TEXT_DYNAMIC): Likewise.
1198 2002-11-07  Danny Smith  <dannysmith@users.sourceforge.net>
1200         * deffilep.y (def_lex): Handle '@' as first character of an ID.
1201         * pe-dll.c (auto-export): Filter on "_imp_" prefix, not "_imp__".
1202         (make_one): Don't prefix decorated fastcall symbols with '_'.
1203         (pe_process_import_defs): Likewise.
1204         * emultempl/pe.em (pe_fixup_stdcalls): Don't fixup fastcall
1205         symbols to cdecl names or vise-versa.
1207 2002-10-13  Eric Kohl  <ekohl@rz-online.de>
1209         * pe-dll.c (process_def_file): Handle fastcall symbols when
1210         generating undecorated aliases.  Don't prefix decorated fastcall
1211         symbols with '_'.
1212         (fill_exported_offsets): Don't prefix decorated fastcall symbols
1213         with '_'.
1215 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
1217         * emultempl/aix.em: Use include <> for generated headers.
1218         * emultempl/beos.em: Likewise.
1219         * emultempl/elf32.em: Likewise.
1220         * emultempl/pe.em: Likewise.
1221         * ldctor.c: Likewise.
1222         * ldexp.c: Likewise.
1223         * ldfile.c: Likewise.
1224         * ldlang.c: Likewise.
1225         * ldlex.c: Likewise.
1226         * ldlex.l: Likewise.
1227         * ldmain.c: Likewise.
1228         * ldmisc.c: Likewise.
1229         * ldwrite.c: Likewise.
1230         * lexsup.c: Likewise.
1231         * mri.c: Likewise.
1232         * pe-dll.c: Likewise.
1234 2002-10-23  Jakub Jelinek  <jakub@redhat.com>
1236         * emultempl/elf32.em (place_orphan): Don't put non-allocated .rel*
1237         sections into .rel{,a}.dyn.
1239 2002-10-23  Nick Clifton  <nickc@redhat.com>
1241         * lexsup.c (OPTION_NO_OMAGIC): Define.
1242         (ld_options): Add "no-omagic" option.
1243         (parse_args): Parse --no-omagic.
1244         * ld.texinfo: Document --no-omagic.
1245         * NEWS: Mention new option.
1247 2002-10-21  Danny Smith  <dannysmith@users.sourceforeg.net>
1249         * scripttempl/pe.sc (__RUNTIME_PSEUDO_RELOC_LIST__,
1250         __RUNTIME_PSEUDO_RELOC_LIST_END__): Add only when relocating.
1252 2002-10-22  Alexandre Oliva  <aoliva@redhat.com>
1254         * emulparams/elf32bmipn32-defs.sh: Set ELFSIZE according to
1255         emulation name.  Set LIB_PATH only for native tools, and
1256         search the ABI-specific versions of NATIVE_LIB_DIRS before the
1257         .../lib variants, not instead of them.  Mostly copied from...
1258         * emulparams/elf32ppc.sh: ... here.  Fixed typo.
1259         * emulparams/elf64bmip-defs.sh: Backed out.
1260         * emulparams/elf64bmip.sh: Import elf32bmipn32-defs.sh again.
1261         * emulparams/elf64btsmip.sh: Likewise.
1262         (DATA_ADDR, NONPAGED_TEXT_START_ADDR, SHLIB_TEXT_START_ADDR,
1263         TEXT_DYNAMIC): Removed.
1265 2002-10-17  Alexandre Oliva  <aoliva@redhat.com>
1267         * emulparams/elf32bmipn32-defs.sh (LIB_PATH): Set to /usr/lib32.
1268         (GENERATE_SHLIB_SCRIPT): Set to yes.
1269         (EXECUTABLE_SYMBOLS, WRITABLE_RODATA): Moved to...
1270         * emulparams/elf32bmipn32.sh: here.
1271         (GENERATE_SHLIB_SCRIPT): Deleted as redundant.
1272         * emulparams/elf32btsmipn32.sh: Delete redundant unsets.
1273         * emulparams/elf64bmip-defs.sh: New file.  Extend
1274         elf32bmipn32-defs.sh by overiding ELFSIZE and LIB_PATH.
1275         * emulparams/elf64bmip.sh: Bring in definitions from
1276         elf64bmip-defs.sh.
1277         (ELFSIZE, GENERATE_SHLIB_SCRIPT, LIB_PATH): Delete redundant
1278         settings.
1279         (WRITABLE_RODATA): Moved from elf32bmipn32-defs.sh.
1280         * emulparams/elf64btsmip.sh: Bring in definitions from
1281         elf64bmip-defs.sh.
1282         (ELFSIZE, GENERATE_SHLIB_SCRIPT): Delete, redundant.
1283         (EXECUTABLE_SYMBOLS, WRITABLE_RODATA): Delete redundant unsets.
1285 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
1287         * configure.tgt (s390x-*-linux*): Add elf_s390 emulation.
1288         (s390-*-linux*): Add elf64_s390 emulation if want64.
1289         * emulparams/elf64_sparc.sh (LIB_PATH): Update to match 2002-05-22
1290         genscript.sh changes.
1291         * emulparams/elf_x86_64.sh (LIB_PATH): Likewise.
1292         * emulparams/elf64_s390.sh (LIB_PATH): Set up native 64 bit dirs.
1294 2002-10-15  Alan Modra  <amodra@bigpond.net.au>
1296         * ldlang.c (load_symbols): Revert last change.
1298 2002-10-14  Alan Modra  <amodra@bigpond.net.au>
1300         * ldlang.c (load_symbols): Don't call bfd_link_add_symbols when
1301         just_syms_flag.
1302         (lang_reasonable_defaults): Don't compare against false.
1303         (size_input_section): Likewise.
1304         (lang_size_sections_1): Likewise.
1305         (lang_do_assignments): Likewise.
1306         (lang_add_output): Likewise.
1308         * Makefile.am: Run "make dep-am".
1309         * Makefile.in: Regenerate.
1310         * ldver.c: #include "bfdver.h".
1312 2002-10-13  Stephane Carrez  <stcarrez@nerim.fr>
1314         * scripttempl/elfm68hc11.sc: Use KEEP for .vectors, .installN,
1315         .finiN section.
1316         * scripttempl/elfm68hc12.sc: Likewise.
1318 2002-10-11  Alan Modra  <amodra@bigpond.net.au>
1320         * pe-dll.c (make_import_fixup_mark): Avoid type-punned pointer.
1322         * ldgram.y (memory_spec): Provide empty action.
1323         (section <NAME>): Likewise.
1325 2002-10-10  Jakub Jelinek  <jakub@redhat.com>
1327         * ldfile.c (ldfile_try_open_bfd): When searching skip linker scripts if
1328         they have OUTPUT_FORMAT not matching actual output format.
1329         * ldlang.c (lang_get_output_target): New function.
1330         (open_output): Use it.
1331         * ldlang.h (lang_get_output_target): New prototype.
1333 2002-10-10  Alan Modra  <amodra@bigpond.net.au>
1335         * emultempl/elf32.em (output_rel_find): Prefer .rel script sections
1336         when orphan is .rel, .rela when orphan is .rela.
1337         (gld${EMULATION_NAME}_place_orphan): Handle combreloc .rel* case
1338         first.  Remove outsecname var.
1340 2002-10-09  Richard Shann <richard.shann@superh.com>
1341             Stephen Clarke <stephen.clarke@superh.com>
1343         * Makefile.am: Add eshelf32_linux.o and
1344         eshlelf32_linux.o, new emulations for sh64 Linux.
1345         * Makefile.in: Regenerate.
1346         * configure.tgt: Add sh64eb-*-linux* and sh64-*-linux* emulations.
1347         * emulparams/shelf32_linux.sh: New file.
1348         * emulparams/shlelf32_linux.sh: New file.
1350 2002-10-08  H.J. Lu <hjl@gnu.org>
1352         * ldlang.c (lang_file_exist): Removed.
1353         (new_afile): Revert the last change.
1354         * ldlang.h (lang_file_exist): Removed.
1355         * lexsup.c (parse_args): Revert the last change.
1357 2002-10-07  Ralf Habacker  <Ralf.Habacker@freenet.de>
1359         * pe-dll.cc (autofilter_symbolprefixlist): Don't re-export
1360         auto-import symbols.
1361         (make_one): Create _nm_<symbol> for data only.
1363 2002-10-05  Elias Athanasopoulos  <eathan@otenet.gr>
1365         * ldlang.c (lang_file_exist): New function.
1366         (new_afile): Abort if the filename to be added matches the linker
1367         output filename.
1368         * ldlang.h: Add prototype for lang_file_exist.
1369         * lexsup.c (parse_args): Abort if the output filename matches
1370         one of the input filenames.
1372 2002-10-02  Alan Modra  <amodra@bigpond.net.au>
1374         * emulparams/elf64ppc.sh (MAXPAGESIZE): Set to 0x10000.
1376 2002-09-30  Alan Modra  <amodra@bigpond.net.au>
1378         * scripttempl/elfd30v.sc: Order reloc sections placing .plt last.
1379         * scripttempl/elfm68hc11.sc: Likewise.
1380         * scripttempl/elfm68hc12.sc: Likewise.
1382         * emultempl/elf32.em (output_rel_find): Always place orphan loadable
1383         reloc sections just before .rel.plt/.rela.plt.
1384         (gld${EMULATION_NAME}_place_orphan <.rel>): Remove combreloc code.
1385         Only put loadable reloc sections in hold_rel.
1387 2002-09-29  H.J. Lu <hjl@gnu.org>
1389         * emulparams/elf32ppc.sh (OTHER_GOT_RELOC_SECTIONS): New.
1391 2002-09-25  Daniel Jacobowitz  <drow@mvista.com>
1393         From "Anita Kulkarni" <AnitaK@kpit.com>
1394         * scripttempl/sh.sc: Handle .eh_frame* and .gcc_exc*
1395         sections.
1397 2002-09-25  Alan Modra  <amodra@bigpond.net.au>
1399         * genscripts.sh (SEGMENT_SIZE): Use MAXPAGESIZE before
1400         TARGET_PAGE_SIZE.
1401         * scripttempl/elf.sc (DATA_SEGMENT_ALIGN): Incorporate
1402         SEGMENT_SIZE alignment.
1403         * emulparams/elf64ppc.sh (DATA_ADDR): Delete.
1404         (SEGMENT_SIZE): Define.
1406         * ldexp.c (fold_unary): New.  Split out from exp_fold_tree.
1407         (fold_binary): Correct abs - non-abs case.
1408         (fold_trinary): New.  Split out from exp_fold_tree.
1410 2002-09-24  Alan Modra  <amodra@bigpond.net.au>
1412         * emulparams/elf64ppc.sh (DATA_ADDR): Define.
1413         * emulparams/elf64_aix.sh (DATA_ADDR): Don't use a fixed address
1414         for start of .data, instead align up to 256M boundary.
1415         * scripttempl/aix.sc: Likewise.
1417 2002-09-22  Mark Elbrecht  <snowball3@softhome.net>
1419         * scripttempl/i386go32.sc: Handle bss unique sections.
1421 2002-09-21  Alan Modra  <amodra@bigpond.net.au>
1423         * ldmisc.c (vfinfo <%C,%D,%G>): Always output bfd, section and offset.
1425 2002-09-17  Stan Cox  <scox@redhat.com>
1427         * emulparams/elf32bmipn32-defs.sh: New file.
1428         * emulparams/elf32bmipn32.sh: Use elf32bmipn32-defs.sh.
1429         * emulparams/elf32btsmipn32.sh: Likewise.
1430         * emulparams/elf64bmip.sh: Likewise.
1431         * emulparams/elf64btsmip.sh: Likewise.
1433 2002-09-16  Bruno Haible  <bruno@clisp.org>
1435         * emulparams/elf_i386_fbsd.sh: Set OUTPUT_FORMAT to
1436         elf32-i386-freebsd.
1437         * emulparams/elf64alpha_fbsd.sh: Set OUTPUT_FORMAT to
1438         elf64-alpha-freebsd.
1440 2002-09-11  Nick Clifton  <nickc@redhat.com>
1442         * NEWS: New TI port supports both C4x and C3x series of DSPs.
1444         * po/tr.po: Updated Turkish translation.
1446 2002-09-06  Jeffrey A Law  (law@redhat.com)
1448         * configure.tgt (h8300-*-hms*, h8500-*-hms*): Restore.
1450 2002-09-02  Nick Clifton  <nickc@redhat.com>
1452         * scripttempl/v850.sc: Add EXTERN references to __ctbpm __gp and
1453         __ep.
1454         * emulparams/v850.sh (TEMPLATE_NAME): Define.
1456 2002-08-30  Nick Clifton  <nickc@redhat.com>
1458         * scripttempl/elfd10v.sc (MEMORY): Remove UNIFIED, it is not
1459         used.  Change INSN to start at 0x01000000 and extend for
1460         256K (ignoring holes).  Start the STACK on a word aligned
1461         boundary.
1462         (.rodata): Start it at the READONLY_START_ADDR.
1464 2002-08-30  Alan Modra  <amodra@bigpond.net.au>
1466         * emulparams/elf32ppc.sh (ARCH): Set to "powerpc:common".
1468 2002-08-28  Svein E. Seldal  <Svein.Seldal@solidas.com>
1470         * Makefile.am: Add etic4xcoff.o in ALL_EMULATIONS list and
1471         added makefile targets for this file.
1472         * Makefile.in: Regenerate.
1473         * configure.tgt: Added tic4x-coff and c4x-coff emulations.
1474         * NEWS: Mention new port.
1476 2002-08-28  Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1478         * emulparams/tic3xcoff.sh: New file.
1479         * emulparams/tic4xcoff.sh: New file.
1480         * scripttempl/tic3xcoff.sc: New file.
1481         * scripttempl/tic4xcoff.sc: New file.
1483 2002-08-28  Alan Modra  <amodra@bigpond.net.au>
1485         * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Replace strtoll,
1486         strtoul and strtoull with bfd_scan_vma.
1487         (gld${EMULATION_NAME}_read_file): Likewise.
1489 2002-08-28  Alan Modra  <amodra@bigpond.net.au>
1491         * configure.tgt: Remove h8[35]00-*-hms*.  Add h8500-*-rtems*.
1493 2002-08-27  Egor Duda  <deo@logos-m.ru>
1495         * scripttempl/pe.sc: Handle .rdata_runtime_pseudo_reloc sections.
1496         Add symbols for application to access them.
1498 2002-08-27  Nick Clifton  <nickc@redhat.com>
1500         * emultempl/armelf.em: Revert this patch, it is not needed.
1502         2002-08-22  Adam Nemet  <anemet@lnxw.com>
1504 2002-08-20 Dan Kegel <dank@kegel.com>
1506         * configure.in: added --with-lib-path argument to ld's configure
1507         to set LIB_PATH.
1508         * NEWS: Document new switch.
1509         * README: Mention new switch.
1510         * configure: Regenerate.
1511         * Makefile.in: Regenerate.
1513         Based on this patch:
1514         2001-04-25  Christopher Faylor <cgf@cygnus.com>
1516         * Makefile.in (LIB_PATH): Make configurable.
1517         (GENSCRIPTS): Set LIB_PATH in environment.
1518         * configure.in: Substitute LIB_PATH.
1520 2002-08-22  Adam Nemet  <anemet@lnxw.com>
1522         * emultempl/armelf.em: Include elf-bfd.h and elf/arm.h.
1523         (arm_elf_finish): Set the last bit of DT_INIT and DT_FINI
1524         depending on the type of the function.
1525         (arm_elf_convert_thumb_symbol_to_address): New function.
1527 2002-08-22  Graeme Peterson  <gp@qnx.com>
1529         * Makefile.am: Add esh{l}elf_nto.o files.
1530         * Makefile.in: Regenerate.
1531         * configure.tgt: Add support for sh-**-nto* targets.
1532         * emulparams/shelf_nto.sh: New file.
1533         * emulparams/shlelf_nto.sh: New file.
1535 2002-08-21  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1537         * ldlang.c (offsetof): Define if not defined.
1539 2002-08-14  H.J. Lu <hjl@gnu.org>
1541         * configure.tgt: Always enable 64bit emulations for 32bit
1542         Linux/mips.
1544 2002-08-13  Alan Modra  <amodra@bigpond.net.au>
1546         * emulparams/elf32_dlx.sh (TARGET_PAGE_SIZE): Set to 1.
1547         (MAXPAGESIZE): Set to 1.
1549         * ld.h (ALIGN_N): Delete.
1550         * ldexp.h (align_n): Declare.
1551         * ldexp.c (align_n): New function.
1552         (fold_binary): Use align_n instead of ALIGN_N.
1553         (exp_fold_tree): Likewise.
1554         * ldlang.c (lang_size_sections_1): Likewise.
1555         (lang_one_common): Likewise.
1556         * ld.texinfo (ALIGN): Remove power of 2 restriction.
1558 2002-07-31  Graeme Peterson  <gp@qnx.com>
1560         * configure.tgt: Add support for powerpc{le}-*-nto* targets.
1561         * Makefile.am: Add eelf32{l}ppcnto.o files.
1562         * Makefile.in: Regenerate.
1563         * emulparams/elf32lppcnto.sh: New file.
1564         * emulparams/elf32ppcnto.sh: New file.
1566 2002-08-07  H.J. Lu <hjl@gnu.org>
1568         * ld.texinfo: Document --no-undefined-version.
1570         * ldlang.c (lang_new_vers_pattern): Set the `symver' and
1571         `script.' fields to 0.
1573         * ldmain.c (main): Initialize the allow_undefined_version to
1574         true.
1576         * lexsup.c (OPTION_NO_UNDEFINED_VERSION): New.
1577         (ld_options): Add --no-undefined-version.
1578         (parse_args): Support OPTION_NO_UNDEFINED_VERSION.
1580 2002-08-07  Nick Clifton  <nickc@redhat.com>
1582         * emultempl/armelf.em (arm_elf_before_allocation): Only search for
1583         an interworking bfd if there are input bfds. (107501)
1585 2002-08-06  Alan Modra  <amodra@bigpond.net.au>
1587         * emultempl/aix.em (gld*_before_parse): Set default arch.  Reverts
1588         2002-05-10 change.
1590 2002-08-01  Nick Clifton  <nickc@redhat.com>
1592         * emulparams/armelf.sh: Revert previous delta.
1593         * scripttempl/elf.sc: Revert previous delta.
1595 2002-07-31  H.J. Lu <hjl@gnu.org>
1597         * configure.tgt (powerpc*-*-linux*): Enable elf64ppc for
1598         --enable-64-bit-bfd.
1600 2002-07-31  H.J. Lu <hjl@gnu.org>
1602         * configure.tgt: Enable x86-64 emulation for Linux/i386 if
1603         64bit BFD is selected.
1605 2002-07-31  H.J. Lu <hjl@gnu.org>
1607         * configure.tgt: Enable 64bit emulations for 32bit Linux/mips
1608         if 64bit BFD is selected.
1610 2002-07-31  Ian Dall  <ian@sibyl.beware.dropbear.id.au>
1612         * emultempl/netbsd.em (LDEMUL_BEFORE_PARSE): New file to custom set
1613         link_info.common_skip_ar_aymbols.
1614         * emulparams/ns32knbsd.sh (EXTRA_EM_FILE): Refer to extra file.
1616         * ldmain.c (main): Initialize new field
1617         link_info.common_skip_ar_aymbols.
1619 2002-07-31  Adam Nemet  <anemet@lnxw.com>
1621         * emulparams/armelf.sh (OTHER_PLT_SECTIONS): New variable.  Set it
1622         to .plt.thumb.
1623         * scripttempl/elf.sc: Comment it.  Use the same way as ${PLT} is
1624         used.
1626 2002-07-31  Nick Clifton  <nickc@redhat.com>
1628         * NEWS: Retroactively add entry for Lars Brinkhoff's contribution
1629         of the PDP-11 and 2.11BSD a.out support.
1631 2002-07-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1633         * Makefile.am (eelf32btsmipn32.o, eelf32ltsmipn32.o): New emulations
1634         for n32 ABI support.
1635         * Makefile.in: Regenerate.
1636         * configure.tgt (mips64*el-*-linux-gnu*,mips64*-*-linux-gnu*): Add
1637         n32 ABI emulations for these 64 bit targets.
1638         * emulparams/elf32bmipn32.sh: Expand comment.
1639         * emulparams/elf32btsmipn32.sh: New file, for traditional big endian
1640         n32 ABI.
1641         * emulparams/elf32ltsmipn32.sh: Likewise for little endian.
1643 2002-07-30  Graeme Peterson  <gp@qnx.com>
1645         * configure.tgt: Add support for arm-*-nto target.
1646         * Makefile.am: Add earmnto.o file.
1647         * Makefile.in: Regenerate.
1648         * NEWS: Mention port of ARM support to QNX.
1649         * emulparams/armnto.sh: New file.
1651 2002-07-30  Jakub Jelinek  <jakub@redhat.com>
1653         * ldlang.c (lang_add_section): Don't turn .tbss into normal sections
1654         for relocatable link.
1655         (lang_size_sections_1): Don't make .tbss zero size for relocatable
1656         link.
1658 2002-07-26  Bernd Schmidt  <bernds@redhat.com>
1660         * emulparams/elf32frv.sh (OTHER_RELOCATING_SECTIONS): Delete.
1661         (STACK_ADDR): New.
1663 2002-07-25  Nick Clifton  <nickc@redhat.com>
1665         * po/sv.po: Updated Swedish translation.
1666         * po/es.po: Updated Spanish translation.
1667         * po/fr.po: Updated French translation.
1669 2002-07-24  Nick Clifton  <nickc@redhat.com>
1671         * po/sv.po: Updated Swedish translation.
1672         * po/es.po: Updated Spanish translation.
1674 2002-07-23  Nick Clifton  <nickc@redhat.com>
1676         * po/fr.po: Updated French translation.
1678 2002-07-20  Alan Modra  <amodra@bigpond.net.au>
1680         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
1681         bomb on /DISCARD/ input section.
1682         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
1683         * emultempl/mmo.em (mmo_place_orphan): Likewise.
1685 2002-07-19  Hans-Peter Nilsson  <hp@bitrange.com>
1687         * emultempl/mmo.em (mmo_place_orphan): Handle case of no .text
1688         output section.
1690 2002-07-16  Denis Chertykov  <denisc@overta.ru>
1691             Nick Clifton  <nickc@redhat.com>
1692             Frank Ch. Eigler  <fche@redhat.com>
1693             John Healy  <jhealy@redhat.com>
1695         * configure.tgt: Add support for ip2k-elf.
1696         * Makefile.am: Add support for ip2k-elf.
1697         * Makefile.in: Regenerate.
1698         * emulparams/elf32ip2k.sh: New file.
1699         * scripttempl/ip2k.sc: New file
1700         * NEWS: Mention support for new port.
1702 2002-07-16  Nick Clifton  <nickc@cambridge.redhat.com>
1704         * NEWS: Add 'Changes in 2.13'.
1706 2002-07-14  H.J. Lu <hjl@gnu.org>
1708         * ld.texinfo: Document a .symver takes precedence over a
1709         version script.
1711 2002-07-12  Alan Modra  <amodra@bigpond.net.au>
1713         * emulparams/elf64ppc.sh (ARCH): Set to powerpc:common64.
1714         (COMMONPAGESIZE): Define.
1716 2002-07-09  Alan Modra  <amodra@bigpond.net.au>
1718         * emulparams/hppanbsd.sh: Remark that hppaobsd.sh references this file.
1720 2002-07-09  Federico G. Schwindt <fgsch@olimpo.com.br>
1722         * configure.tgt: Add support for alpha-*-openbsd*, hppa-*-openbsd*,
1723         powerpc-*-openbsd* and sparc64-*-openbsd*.
1724         * Makefile.am (ALL_EMULATIONS): Add ehppaobsd.o.
1725         * Makefile.in: Regenerate.
1726         * emulparams/hppaobsd.sh: New file.
1728 2002-07-05  Alan Modra  <amodra@bigpond.net.au>
1730         * ldlang.c (print_wild_statement): Fix output formatting.
1732 2002-07-04  Alan Modra  <amodra@bigpond.net.au>
1734         * ldlang.c: (strip_excluded_output_sections): New function.
1735         (lang_process): Call it.
1736         (lang_size_sections_1): Revert 2002-06-10 change.
1738 2002-07-03  Alan Modra  <amodra@bigpond.net.au>
1740         * Makefile.am (check-DEJAGNU): Revert 2002-06-25 change.
1741         Run "make dep-am".
1742         * Makefile.in: Regenerate.
1744 2002-07-02  Alan Modra  <amodra@bigpond.net.au>
1746         * ldfile.c (ldfile_try_open_bfd): Formatting.
1748         * ldmisc.c (demangle): Move so that it doesn't intrude between
1749         vfinfo comment and body.  Add comment.
1751 2002-07-01  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1753         * emulparams/vax.sh (OUTPUT_FORMAT): Use a.out-vax-bsd format.
1755 2002-07-01  Alan Modra  <amodra@bigpond.net.au>
1757         * ldlang.h (entry_sym): Make it a struct bfd_sym_chain.
1758         * ldlang.c (entry_sym): Likewise.
1759         (ldlang_undef_chain_list_type): Likewise.
1760         (lang_finish): Adjust references to entry_symbol.
1761         (lang_add_entry): Likewise.
1762         (lang_gc_sections): Use link_info.gc_sym_list.
1763         (lang_process): Set link_info.gc_sym_list.
1764         * ldlex.l: Include bfdlink.h.
1765         * ldmain.c (main): Init link_info.gc_sym_list.
1766         * emultempl/aix.em: Adjust references to entry_symbol.
1767         * emultempl/armcoff.em: Likewise.
1768         * emultempl/armelf.em: Likewise.
1769         * emultempl/pe.em: Likewise.
1770         * emultempl/ppc64elf.em (ppc_after_open): New function.
1771         (LDEMUL_AFTER_OPEN): Define.
1772         * emulparams/elf64ppc.sh: KEEP .opd sections.
1774 2002-06-29  Stephane Carrez  <stcarrez@nerim.fr>
1776         * emulparams/m68hc12elfb.sh (EEPROM_MEMORY): Define.
1777         * emulparams/m68hc11elfb.sh (EEPROM_MEMORY): Define.
1778         * emulparams/m68hc11elf.sh (EEPROM_SIZE): Define.
1779         (EEPROM_START_ADDR): Define.
1780         (EEPROM_MEMORY): Define.
1781         * emulparams/m68hc12elf.sh: Likewise.
1782         * scripttempl/elfm68hc11.sc: Handle .eeprom section; handle .softregs
1783         section to put soft registers in .page0.
1784         * scripttempl/elfm68hc12.sc: Likewise but put soft registers in bss.
1786 2002-06-26  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1788         * emulparams/hppa64linux.sh (OTHER_GOT_RELOC_SECTIONS): Add rela.opd
1789         section.  Add ${RELOCATING-0}.
1791 2002-06-26  J"orn Rennecke <joern.rennecke@superh.com>
1793         * emulparams/shelf.sh (STACK_ADDR): Don't define.
1794         (OTHER_SECTIONS): Define.
1795         * emulparams/shelf_nbsd.sh ((STACK_ADDR): Don't undef.
1796         (OTHER_SECTIONS): Undef.
1798 2002-06-26  Alan Modra  <amodra@bigpond.net.au>
1800         * ldmisc.c (demangle): Restore dots stripped from sym name.
1802 2002-06-25  H.J. Lu <hjl@gnu.org>
1804         * Makefile.am (check-DEJAGNU): Set LC_ALL=C and export it.
1805         * Makefile.in: Regenerated.
1807 2002-06-20  Nick Clifton  <nickc@cambridge.redhat.com>
1809         * ld.texinfo (Bug Reporting): Update text to suggest a limit on
1810         the size of attached object files, to allow make the object files
1811         available via FTP or HTTP and to mention that the mail will be
1812         sent to a mailing list.
1814 2002-06-20  Nathanael Nerode  <neroden@twcny.rr.com>
1816         * configure.host (romp): Drop support.
1818 2002-06-18  Chris Demetriou  <cgd@broadcom.com>
1820         * emultempl/mipself.em (mips_elf${ELFSIZE}_check_sections): Check
1821         section flags for SEC_DATA, rather than for SEC_CODE being unset.
1823 2002-06-18  Chris Demetriou  <cgd@broadcom.com>
1825         * emultempl/mipself.em (mips_elf${ELFSIZE}_check_sections): Fix
1826         format specifier used to print BFD name.
1828 2002-06-18  Dave Brolley  <brolley@redhat.com>
1830         From Catherine Moore, Michael Meissner, Jim Blandy:
1831         * emulparams/elf32frv.sh: New file.
1832         * configure.tgt: Support frv-*-*.
1833         * Makefile.am (ALL_EMULATIONS): Add eelf32frv.o.
1834         (eelf32frv.c): New target.
1836 2002-06-17  Tom Rix  <trix@redhat.com>
1838         * emultempl/elf32.em: gld*_get_script: Check for
1839         GENERATE_COMBRELOC_SCRIPT.
1840         * scripttempl/elfd10v.sc : Fix STACK and INSN.
1841         * emulparams/d10velf.sh : Fix TEXT_START_ADDR.
1843 2002-06-13  J"orn Rennecke <joern.rennecke@superh.com>
1845         * configure.tgt: Add support for sh[1234]*le*-*-elf, sh[1234]*-*-elf.
1847 2002-06-12  H.J. Lu <hjl@gnu.org>
1849         * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Return
1850         false if xvec doesn't match.
1852 2002-06-10  Richard Sandiford  <rsandifo@redhat.com>
1854         * ldlang.c (lang_size_sections_1): Skip removed output sections.
1856 2002-06-08  Alan Modra  <amodra@bigpond.net.au>
1858         * ldexp.c: Replace CONST with const.
1859         * ldfile.c: Likewise.
1860         * ldfile.h: Likewise.
1861         * ldlex.l: Likewise.
1862         * mri.c: Likewise.
1863         * pe-dll.h: Likewise.
1865 2002-06-07  Alan Modra  <amodra@bigpond.net.au>
1867         * emultempl/ppc64elf.em (new_vers_pattern): Warning fix.
1869 2002-06-07  Charles Wilson  <cwilson@ece.gatech.edu>
1871         * ldmain.c (main): initialize link_info.pei386_auto_import
1872         to -1 == implicit enable.
1873         * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse):
1874         initialize link_info.pei386_auto_import to -1 == implicit
1875         enable.
1876         (gld_${EMULATION_NAME}_parse_args): When processing
1877         --enable-auto-import and --disable-auto-import options, use
1878         '1' and '0' instead of 'true' and 'false'.
1879         (pe_find_data_imports): Only issue message about auto-import
1880         when the feature is implicitly enabled.  Downgrade message to
1881         informational instead of warning.
1883 2002-06-07  Alan Modra  <amodra@bigpond.net.au>
1885         * scripttempl/elf.sc (.tbss): Fix mismatched parentheses/braces.
1887 2002-06-06  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1889         * configure.host (hppa*64*-*-hpux11*): Define NATIVE_LIB_DIRS,
1890         HOSTING_CRT0 and HOSTING_LIBS.
1892 2002-06-05  J"orn Rennecke <joern.rennecke@superh.com>
1894         * configure.tgt (shle*-*-elf*, sh64le-*-elf*): New configurations.
1896 2002-06-05  Jason Thorpe  <thorpej@wasabisystems.com>
1898         * emulparams/ns32knbsd.sh (EXECUTABLE_SYMBOLS): Set _DYNAMIC to 0.
1899         (NONPAGED_TEXT_START_ADDR): Set to 0x1000.
1901 2002-06-05  Alan Modra  <amodra@bigpond.net.au>
1903         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Place
1904         SEC_EXCLUDE sections when doing a relocatable link.
1906 2002-06-04  Jason Thorpe  <thorpej@wasabisystems.com>
1908         * Makefile.am (ALL_EMULATIONS): Add eshelf32_nbsd.o,
1909         eshlelf32_nbsd.o, eshelf64_nbsd.o, and eshlelf64_nbsd.o.
1910         (eshelf32_nbsd.c, eshelf64_nbsd.c, eshlelf32_nbsd.c)
1911         (eshlelf64_nbsd.c): New rules.
1912         * Makefile.in: Regenerate.
1913         * configure.tgt (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
1914         (sh64-*-netbsd*): New targets.
1915         * emulparams/shelf32_nbsd.sh: New file.
1916         * emulparams/shelf64_nbsd.sh: New file.
1917         * emulparams/shlelf32_nbsd.sh: New file.
1918         * emulparams/shlelf64_nbsd.sh: New file.
1920 2002-06-04  Alan Modra  <amodra@bigpond.net.au>
1922         * ldlang.c (section_already_linked): Call bfd_discard_group.  Typo fix.
1924 2002-06-02  Marek Michalkiewicz  <marekm@amelek.gda.pl>
1926         * scripttempl/avr.sc: Changes to support current GCC and avr-libc,
1927         C++ constructors/destructors, loosely based on the m68hc11 port.
1929 2002-05-31  Alan Modra  <amodra@bigpond.net.au>
1931         * Makefile.in: Regenerate.
1932         * aclocal.m4: Regenerate.
1933         * config.in: Regenerate.
1934         * configure: Regenerate.
1936 2002-05-31  Graeme Peterson  <gp@qnx.com>
1938         * Makefile.am (ALL_EMULATIONS): Add ei386nto.o.
1939         (ei386nto.c): Add rule.
1940         * Makefile.in: Regenerate.
1941         * configure.tgt: Add i[3456]86-*-nto-qnx*.
1942         * emulparams/i386nto.sh: New file.
1944 2002-05-29  Jason Thorpe  <thorpej@wasabisystems.com>
1946         * NEWS: Add entry for VAX ELF support.
1948 2002-05-29  Matt Thomas  <matt@3am-software.com>
1949             Jason Thorpe  <thorpej@wasabisystems.com>
1951         * Makefile.am (ALL_EMULATIONS): Add eelf32vax.o and evaxnbsd.o.
1952         (eelf32vax.c)
1953         (evaxnbsd.c): New rules.
1954         * Makefile.in: Regenerate.
1955         * configure.tgt (vax-*-netbsdelf*)
1956         (vax-*-netbsdaout*)
1957         (vax-*-netbsd*): New targets.
1958         * emulparams/elf32vax.sh: New file.
1959         * emulparams/vaxnbsd.sh: New file.
1961 2002-05-29  Adam Nemet  <anemet@lnxw.com>
1963         * emultempl/armelf.em (arm_elf_after_open): Don't determine
1964         bfd_for_interwork, instead add glue sections to each input bfd.
1965         (bfd_for_interwork): New global.
1966         (arm_elf_set_bfd_for_interworking): New function.
1967         (arm_elf_before_allocation): Use it.
1969 2002-05-28  Kuang Hwa Lin <kuang@sbcglobal.net>
1971         * Makefile.am: Add DLX make target.
1972         * configure.tgt: Add DLX configuration.
1973         * Makefile.in: Regenerate.
1974         * emulparams/elf32_dlx.sh: New file
1975         * scripttempl/dlx.sc: New file
1977 2002-05-27  Per Lundberg  <per@caleb.dnsalias.org>
1979         * Makefile.am (eelf_i386_chaos): Use elf_chaos.sc script.
1980         * Makefile.in: Regenerate.
1981         * emulparams/elf_chaos.sh: Use elf_chaos script.
1982         * scripttempl/elf_chaos.sc: New file.
1984 2002-05-27  Richard Sandiford  <rsandifo@redhat.com>
1986         * ldlang.c (lang_size_sections_1): Move check for conflicting load
1987         addresses and regions from here...
1988         (lang_get_regions): ...to this new function.
1989         (lang_leave_output_section_statement): Use lang_get_regions.
1990         (lang_leave_overlay): Likewise.
1991         * mri.c (mri_draw_tree): Pass null as last argument to
1992         lang_leave_output_section_statement.
1993         * emultempl/elf32.em (gld*_place_orphan): Likewise.
1994         * emultempl/mmo.em (mmo_place_orphan): Likewise.
1995         * emultempl/pe.em (gld*_place_orphan): Likewise.
1997 2002-05-26  Jason Thorpe  <thorpej@wasabisystems.com>
1999         * configure.tgt: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*.
2001 2002-05-25  Kazu Hirata  <kazu@cs.umass.edu>
2003         * ldemul.c: Fix formatting.
2004         * ldfile.c: Likewise.
2005         * pe-dll.c: Likewise.
2006         * pe-dll.h: Likewise.
2008 2002-05-25  Alan Modra  <amodra@bigpond.net.au>
2010         * ldlang.c (lang_process): Formatting, grammar.
2012         * ldlex.l: Use #include "" instead of <> for local header files.
2014 2002-05-24  TAMURA Kent <kent@netbsd.org>
2016         * configure.tgt: Add a target for i386-netbsdpe.
2018 2002-05-23  Jakub Jelinek  <jakub@redhat.com>
2020         * scripttempl/elf.sc: Add .rel{,a}.t{bss,data}, .tdata and .tbss.
2021         * ldlang.c (lang_add_section): Set SEC_THREAD_LOCAL for
2022         output section if necessary.  Handle .tbss.
2023         (lang_size_sections): Clear _raw_size for .tbss section
2024         (it allocates space in PT_TLS segment only).
2025         * ldwrite.c (build_link_order): Build link order for .tbss too.
2027 2002-05-23  Alan Modra  <amodra@bigpond.net.au>
2029         * configure.in: Correct spelling of AC_PREREQ.
2031 2002-05-21  Danny Smith  <dannysmith@users.sourceforge.net>
2033         * pe-dll.c (autofilter_liblist): Add more system libs excluded by
2034         default.
2035         (autofilter_objlist): Add crtbegin.o, crtend.o.
2037 2002-05-21  Danny Smith  <dannysmith@users.sourceforge.net>
2039         * emultempl/pe.em (OPTION_EXCLUDE_LIBS): Add new define.
2040         (longopts): Add new option --exclude-libs.
2041         (gld_${EMULATION_NAME}_list_options): Give quick help about it.
2042         (gld_${EMULATION_NAME}_parse_args): Use it.
2043         * pe-dll.h (pe_dll_add_excludes): Add second param to prototype.
2044         * pe-dll.c (exclude_list_struct): Add field type to distinguish symbols
2045         from whole archives.
2046         (pe_dll_add_excludes): Set excludes->type.
2047         (auto_export): Add new variable libname and set to archive basename if
2048         abfd.  Use it when filtering default and user-specified libarary
2049         excludes.  Let string "ALL" mean all libs when filtering user-specified
2050         libs.
2051         * ld.texinfo: Document --exclude-libs.
2053 2002-05-22  Alan Modra  <amodra@bigpond.net.au>
2055         * ldemul.c (ldemul_new_vers_pattern): New function.
2056         * ldemul.h (ldemul_new_vers_pattern): Declare.
2057         (struct ld_emulation_xfer_struct): Add new_vers_pattern.
2058         * ldlang.c (lang_new_vers_pattern): Call ldemul_new_vers_pattern.
2059         * emultempl/ppc64elf.em (dotsyms): New static var.
2060         (gld${EMULATION_NAME}_new_vers_pattern): New function.
2061         (LDEMUL_NEW_VERS_PATTERN): Define.
2062         (PARSE_AND_LIST_PROLOGUE): Add OPTION_DOTSYMS, OPTION_NO_DOTSYMS.
2063         (PARSE_AND_LIST_LONGOPTS): Likewise.
2064         (PARSE_AND_LIST_ARGS_CASES): Handle them.
2065         * emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Update
2066         initialiser.
2067         * emultempl/armcoff.em: Likewise.
2068         * emultempl/armelf_oabi.em: Likewise.
2069         * emultempl/beos.em: Likewise.
2070         * emultempl/elf32.em: Likewise.
2071         * emultempl/generic.em: Likewise.
2072         * emultempl/gld960.em: Likewise.
2073         * emultempl/gld960c.em: Likewise.
2074         * emultempl/linux.em: Likewise.
2075         * emultempl/lnk960.em: Likewise.
2076         * emultempl/m68kcoff.em: Likewise.
2077         * emultempl/mipsecoff.em: Likewise.
2078         * emultempl/pe.em: Likewise.
2079         * emultempl/sunos.em: Likewise.
2080         * emultempl/ticoff.em: Likewise.
2081         * emultempl/vanilla.em: Likewise.
2083 2002-05-22  Alan Modra  <amodra@bigpond.net.au>
2085         * genscripts.sh (LIB_PATH): For native targets, concatenate $libdir
2086         and $NATIVE_LIB_DIRS.  Add $tool_lib before other libs.
2087         (LIB_SEARCH_DIRS): No need to use "tr".
2088         (COMPILE_IN): Only set for native targets.
2089         * configure.host (NATIVE_LIB_DIRS): Specify all native search dirs
2090         here, rather than adding lib:/usr/lib:/usr/local/lib in genscripts.sh.
2091         * configure.tgt (powerpc*): Set tdir_*.
2092         (powerpcle*): Correct targ_extra_emuls.
2093         * emulparams/elf32ppc.sh (LIB_PATH): Set up native 64 bit dirs.
2094         * emulparams/elf64ppc.sh (LIB_PATH): Likewise.
2096 2002-05-22  Alan Modra  <amodra@bigpond.net.au>
2098         * emultempl/pe.em (set_pe_subsystem): Don't set "cmdline" when
2099         calling lang_add_entry.
2101 2002-05-21  H.J. Lu  (hjl@gnu.org)
2103         * emultempl/elf32.em (gld${EMULATION_NAME}_parse_args): Handle
2104         "-z muldefs".
2105         (gld${EMULATION_NAME}_list_options): Add "-z muldefs".
2107         * ld.texinfo: Updated for --allow-multiple-definition and
2108         "-z muldefs".
2110         * ldmain.c (main): Initialize the allow_multiple_definition
2111         field to false.
2113         * lexsup.c (OPTION_ALLOW_MULTIPLE_DEFINITION): New.
2114         (ld_options): Add --allow-multiple-definition.
2115         (parse_args): Support OPTION_ALLOW_MULTIPLE_DEFINITION.
2117 2002-05-21  Jason Thorpe  <thorpej@wasabisystems.com>
2119         * Makefile.am (ALL_EMULATIONS): Add earmelfb_nbsd.o.
2120         (earmelfb_nbsd.c): New rule.
2121         * Makefile.in: Regenerate.
2122         * configure.tgt (armeb-*-netbsdelf*): New target.
2123         (arm-*-netbsdelf*): Add armelfb_nbsd to targ_extra_emuls.
2124         (arm-*-netbsd*): Likewise.
2125         * emulparams/armelfb_nbsd.sh: New file.
2127 2002-05-18  Tom Rix  <trix@redhat.com>
2129         * emultempl/aix.em (gld*_parse_args): Add -bnortl and -bnortllib
2130         support.
2132 2002-05-17  Marek Michalkiewicz  <marekm@amelek.gda.pl>
2134         * Makefile.am: Add new emulations avr1, avr2, avr3, avr4, avr5.
2135         * Makefile.in: Regenerate.
2136         * configure.tgt (avr-*-*): Add avr[1-5] to targ_extra_emuls.
2138 2002-05-16  Marek Michalkiewicz  <marekm@amelek.gda.pl>
2140         * emulparams/avr1.sh: New file.
2141         * emulparams/avr2.sh: New file.
2142         * emulparams/avr3.sh: New file.
2143         * emulparams/avr4.sh: New file.
2144         * emulparams/avr5.sh: New file.
2145         * scripttempl/avr.sc: New file.
2147 2002-05-15  Alan Modra  <amodra@bigpond.net.au>
2149         * ldlang.c (section_already_linked): Call bfd_link_just_syms.
2150         (lang_place_orphans): Abort if just_syms_flag.
2152 2002-05-10  Tom Rix  <trix@redhat.com>
2154         * emultempl/aix.em: (gld*_set_output_arch): New function. Use
2155         architecture and machine information in the output bfd.
2156         (gld*_before_parse): Remove old arch and machine code.
2157         (choose_target): Rename to gld*_choose_target.
2158         (rtld): Change type to int.
2159         * ldfile.c (ldfile_try_open_bfd): Disable compatiblity check for
2160         objects in XCOFF archives.
2161         * ldfile.h: Update copyright date.
2163 2002-05-10  Jakub Jelinek  <jakub@redhat.com>
2165         * ldmain.c (main): Enable -z combreloc by default.
2167 2002-05-07  Federico G. Schwindt <fgsch@olimpo.com.br>
2169         * Makefile.am: Honour DESTDIR.
2170         * Makefile.in: Regenerate.
2172 2002-05-07  Richard Sandiford  <rsandifo@redhat.com>
2174         * ldlang.h (lang_output_section_statement_type): Add update_dot_tree.
2175         (lang_enter_overlay): Remove the last two parameters.
2176         (lang_leave_overlay): Take them here instead.
2177         * ldgram.y (memspec_at_opt): Set $$ to null if no region is given.
2178         (section): Pass LMA and crossref flag to lang_leave_overlay rather
2179         than lang_enter_overlay.
2180         * ldlang.c (lang_memory_region_lookup): Return null for null names.
2181         (lang_output_section_statement_lookup): Initialize update_dot_tree.
2182         (lang_size_sections_1): Evaluate it.
2183         (lang_leave_output_section_statement): Rework LMA lookup.
2184         (overlay_lma, overlay_nocrossrefs): Remove.
2185         (lang_enter_overlay): Remove LMA and crossref arguments.
2186         (lang_enter_overlay_section): Don't set the LMA here.
2187         (lang_leave_overlay): Take LMA and crossref arguments.  Move the '.'
2188         assignment to the last section's update_dot_tree.  Unconditionally
2189         use the load and run-time regions specified in the OVERLAY statement.
2190         Likewise the first section's LMA.  Only set the other sections' LMAs
2191         when no load region is given.
2193 2002-05-06  Nick Clifton <nickc@redhat.com>
2195         * po/sv.po: New translation.
2197 2002-05-04  Alan Modra  <amodra@bigpond.net.au>
2199         * emultempl/hppaelf.em (build_section_lists): New function.
2200         (gld${EMULATION_NAME}_finish): Call elf32_hppa_setup_section_lists
2201         and build_section_lists.
2203 2002-05-03  Kazu Hirata  <kazu@cs.umass.edu>
2205         * ld.h: Fix formatting.
2206         * ldexp.c: Likewise.
2207         * ldfile.c: Likewise.
2208         * ldlang.c: Likewise.
2209         * ldmain.c: Likewise.
2210         * lexsup.c: Likewise.
2211         * pe-dll.c: Likewise.
2213 2002-05-02  Alan Modra  <amodra@bigpond.net.au>
2215         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation):
2216         Adjust for ppc64_elf_set_toc change.  #include libbfd.h.
2217         (build_section_lists): Do output_section tests here.
2219 2002-04-30  Tom Rix  <trix@redhat.com>
2221         * emultempl/aix.em : (gld*_parse_arge): Formatting changes.
2223 2002-05-01  Alan Modra  <amodra@bigpond.net.au>
2225         Long branch stubs, multiple stub sections.
2226         * emultempl/ppc64elf.em: Include ldctor.h.
2227         (stub_file): New var.
2228         (group_size): New var.
2229         (ppc_create_output_section_statements): New function.
2230         (struct hook_stub_info): New.
2231         (hook_in_stub): New function.
2232         (ppc_add_stub_section): New function.
2233         (ppc_layout_sections_again): New function.
2234         (build_section_lists): New function.
2235         (gld${EMULATION_NAME}_finish): Rewrite.
2236         (real_func): New var.
2237         (ppc_for_each_input_file_wrapper): New function.
2238         (ppc_lang_for_each_input_file): New function.
2239         (lang_for_each_input_file): Define.
2240         (PARSE_AND_LIST_PROLOGUE): Define.
2241         (PARSE_AND_LIST_LONGOPTS): Define.
2242         (PARSE_AND_LIST_OPTIONS): Define.
2243         (PARSE_AND_LIST_ARGS_CASES): Define.
2244         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
2246 2002-04-30  Tom Rix  <trix@redhat.com>
2248         * emultempl/aix.em (gld*_parse_arge, gld*_before_allocation): Add
2249         -blibpath, -bnolibpath support.
2251 2002-04-30  Mark Mitchell  <mark@codesourcery.com>
2253         * Makefile.am (ALL_EMULATIONS): Add elf32ppcwindiss.o.
2254         (eelf32ppcwindiss.c): New target.
2255         * Makefile.in: Regenerated.
2256         * configure.tgt: Add support for powerpc-*-windiss.
2257         * emulparams/elf32ppcwindiss.sh: New file.
2259 2002-04-30  Richard Sandiford  <rsandifo@redhat.com>
2261         * ldlang.c (print_assignment): Update print_dot for assignments to ".".
2262         * ldexp.c (exp_print_token): Add "infix_p" argument.
2263         (exp_print_tree): Update accordingly.
2265 2002-04-28  Alan Modra  <amodra@bigpond.net.au>
2267         * Makefile.am (mpw): New maintainer mode rule to make mpw-*.c files.
2268         * Makefile.in: Regenerate.
2269         * mpw-elfmips.c: Delete.
2270         * mpw-eppcmac.c: Delete.
2271         * mpw-esh.c: Delete.
2272         * mpw-idtmips.c: Delete.
2274 2002-04-17  J"orn Rennecke <joern.rennecke@superh.com>
2276         * emulparams/shelf32.sh (MACHINE): Now sh5.
2278 2002-04-17  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2280         * ldgram.y: Fix syntax warning.
2282 2002-04-11  Nick Clifton  <nickc@cambridge.redhat.com>
2284         * emultempl/armelf.em (PARSE_AND_LIST_SHORTOPTS): Add 'n' in order
2285         to prevent "-n" from being taken as an abbreviation for
2286         "--no-pipeline-knowledge".
2288 2002-04-08  Alan Modra  <amodra@bigpond.net.au>
2290         * ldlang.c (lang_size_sections_1): Don't complain about
2291         SEC_NEVER_LOAD sections having no memory region specified.
2293         * ld.texinfo (Format Commands <OUTPUT_FORMAT>): Typo fix.
2295 2002-04-07  matthew green  <mrg@redhat.com>
2297         * configure.host (*-*-netbsd*): Add support for NetBSD/ELF.
2299 2002-04-04  Alan Modra  <amodra@bigpond.net.au>
2301         * dep-in.sed: Cope with absolute paths.
2302         * Makefile.am (dep.sed): Subst TOPDIR and BFDDIR.
2303         Run "make dep-am".
2304         * Makefile.in: Regenerate.
2306 2002-04-04  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2308         * emulparams/elf64btsmip.sh: n64 replaces .reginfo with .MIPS.options.
2310 2002-04-03  Jakub Jelinek  <jakub@redhat.com>
2312         * ldexp.c (fold_binary) [DATA_SEGMENT_ALIGN]: If common page size
2313         is smaller than maximum, round dot up to common page boundary.
2315 2002-03-28  Alan Modra  <amodra@bigpond.net.au>
2317         * configure.host: Set up for generic hosts first, then tweak as
2318         necessary in more specific targets.
2319         (HOSTING_LIBS): Include libgcc_eh.a if found.
2321 2002-03-23  Andreas Jaeger  <aj@suse.de>
2323         * emulparams/elf_x86_64.sh (COMMONPAGESIZE): Set it.
2325 2002-03-21  Alan Modra  <amodra@bigpond.net.au>
2327         * Makefile.am: Run "make dep-am".
2328         * Makefile.in: Regenerate.
2330 2002-03-21  Albert Chin-A-Young  <china@thewrittenword.com>
2332         * genscripts.sh (LIB_SEARCH_DIRS): Quote path.
2334 2002-03-20  Alan Modra  <amodra@bigpond.net.au>
2336         * ldlang.c (ldlang_add_undef): If the output bfd has been opened,
2337         add the symbol to the linker hash table immediately.
2338         (lang_place_undefineds): Split symbol creation out..
2339         (insert_undefined): ..to here.
2341 2002-03-18  David O'Brien  <obrien@FreeBSD.org>
2343         * emultempl/elf32.em: Use lbasename vs. basename to fix problem where
2344         the contents of the buffer returned from basename function will are
2345         getting overwritten while still being used.
2347 2002-03-18  Jan Hubicka  <jh@suse.cz>
2348             Andreas Jaeger  <aj@suse.de>
2349             Andreas Schwab  <schwab@suse.de>
2351         * configure.tgt (x86_64-*-linux-gnu*): Configure i386 as native.
2352         * elf_x86_64.sh (ARCH): Set to i386:x86-64
2353         set libraries to default to lib64 paths.
2355 2002-03-18  Tom Rix  <trix@redhat.com>
2357         * Makefile.am : Add eaix5ppc and eaix5rs6, AIX 5 support.
2358         * configure.tgt : Same.
2359         * emulparms/aix5ppc.sh : New file. For eaix5ppc.
2360         * emulparms/aix5rs6.sh : New file. For eaix5rs6.
2361         * emulparms/aixppc.sh : OUPUT_FORMAT_32BIT and OUTPUT_FORMAT_64BIT
2362         emulation parameters for better -b32, -b64 support.
2363         * emulparms/aixrs6.sh : Same.
2364         * emulparms/ppcmacos.sh : Same.
2365         * emultempl/aix.em (choose_target) : Use new emulation parameters
2366         OUTPUT_FORMAT_32BIT and OUTPUT_FORMAT_64BIT.
2367         * Makefile.in : Regenerate.
2369 2002-03-18  Nick Clifton  <nickc@cambridge.redhat.com>
2371         * po/fr.po: Updated version.
2373 2002-03-18  Alan Modra  <amodra@bigpond.net.au>
2375         * ldmain.c (main): Move .text readonly flag fudges from here..
2376         * ldlang.c (lang_process): ..to here.
2378 2002-03-14  Alan Modra  <amodra@bigpond.net.au>
2380         * ldlang.c (lang_check): Remove the word size check added in last
2381         change.  Treat emitrelocations case as for relocatable links.
2383 2002-03-13  Nick Clifton  <nickc@cambridge.redhat.com>
2385         * po/fr.po: Updated version.
2387 2002-03-13  Alan Modra  <amodra@bigpond.net.au>
2389         * ldlang.c (lang_check): Do relocatable link checks first, so that
2390         warn_mismatch can't override.  Check compatible and word size too.
2392 2002-03-07  Daniel Jacobowitz  <drow@mvista.com>
2394         * ld.texinfo: Wrap @menu in @ifnottex, not @ifinfo.
2396 2002-03-05  Jakub Jelinek  <jakub@redhat.com>
2398         * scripttempl/elf.sc: Only use DATA_SEGMENT_END() together with
2399         DATA_SEGMENT_ALIGN.
2401 2002-03-04  H.J. Lu <hjl@gnu.org>
2403         * scripttempl/elf.sc: Put .preinit_array, .init_array and
2404         .fini_array in the data segment.
2406 2002-03-04  Alan Modra  <amodra@bigpond.net.au>
2408         * scripttempl/elf.sc: Correct syntax errors in 2002-03-01 commit.
2410 2002-03-01  David Mosberger  <davidm@hpl.hp.com>
2412         * scripttempl/elf.sc (SECTIONS): Add entries for .preinit_array,
2413         .init_array, and .fini_array.
2415 2002-02-20  Andreas Schwab  <schwab@suse.de>
2417         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Don't fold
2418         .IA64_unwind* in a relocatable link.
2420 2002-02-20  Nick Clifton  <nickc@cambridge.redhat.com>
2422         * NEWS: Mark 2.12 branch.
2424 2002-02-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2426         * emulparams/elf64_s390.sh (ARCH): Change to "s390:64-bit".
2427         * emulparams/elf_s390.sh (ARCH): Change to "s390:31-bit".
2429 2002-02-18  Tom Rix  <trix@redhat.com>
2431         * emultempl/aix.em (gld*_parse_args): Add -brtl support.
2432         (gld*_before_allocation): Same.
2433         (gld*_create_output_section_statements): Generate
2434         __rtinit if run time linking.  Add librtl.a to the link.
2435         (gld*_read_file): Clean.
2437 2002-02-18  Alan Modra  <amodra@bigpond.net.au>
2439         * emulparams/elf64ppc.sh (OTHER_TEXT_SECTIONS): Define.
2441 2002-02-18  David O'Brien  <obrien@FreeBSD.org>
2443         * Makefile.am: Add new files earmelf_fbsd, eelf32ppc_fbsd,
2444         eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
2445         and eelf64alpha_fbsd.
2446         * Makefile.in: Regenerate.
2447         * configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd,
2448         x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd):
2449         use a FreeBSD-specific emulation rather than the psABI one.
2450         * emulparams/elf_fbsd.sh (ELF_INTERPRETER_NAME): Set appropriate value
2451         for all FreeBSD ELF systems.
2452         * emulparams/armelf_fbsd.sh: Bridge elf_fbsd.sh and the "native" psABI
2453         emulation.
2454         * emulparams/elf32ppc_fbsd.sh: Likewise.
2455         * emulparams/elf64_ia64_fbsd.sh: Likewise.
2456         * emulparams/elf64_sparc_fbsd.sh: Likewise.
2457         * emulparams/elf64alpha_fbsd.sh: Likewise.
2458         * emulparams/elf_i386_fbsd.sh: Likewise.
2459         * emulparams/elf_x86_64_fbsd.sh: Likewise.
2461 2002-02-18  Nick Clifton  <nickc@cambridge.redhat.com>
2463         * po/tr.po: Updated version.
2465 2002-02-18  Alan Modra  <amodra@bigpond.net.au>
2467         * ld.texinfo (Output Section Fill): Fix amateur texinfo.
2468         (FILL): Likewise.
2470 2002-02-17  Hans-Peter Nilsson  <hp@bitrange.com>
2472         * emultempl/mmo.em (mmo_after_open): Don't call
2473         _bfd_mmix_check_all_relocs when producing ELF output.
2475 2002-02-15  Richard Henderson  <rth@redhat.com>
2477         * emulparams/elf64alpha.sh (NOP): Adjust for big-endian
2478         definition.  Emit a unop+nop pair.
2480 2002-02-15  Hans-Peter Nilsson  <hp@bitrange.com>
2482         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Also check
2483         for presence of .MMIX.reg_contents.linker_allocated before early
2484         exit.
2486         * NEWS: Mention support for MMIX.
2488 2002-02-15  Alan Modra  <amodra@bigpond.net.au>
2490         Support arbitrary length fill patterns.
2491         * ld.texinfo (Output Section Fill): Describe fill expressions.
2492         (FILL): Refer to the above.
2493         * ldexp.h (etree_value_type): Add "str" field.
2494         (union etree_union): Add "str" to "value" struct.
2495         (exp_bigintop): Declare.
2496         (exp_get_fill): Declare.
2497         * ldexp.c: Include "safe-ctype.h".
2498         (exp_intop): Set value.str to NULL.
2499         (exp_bigintop): New function.
2500         (new_rel): Pass in "str", and set new.str from it.
2501         (new_rel_from_section): Set new.str to NULL.
2502         (fold_name): Adjust calls to new_rel.
2503         (exp_fold_tree): Likewise.
2504         (exp_get_fill): New function.
2505         * ldgram.y (struct big_int bigint, fill_type *fill): New.
2506         (INT): Returns a "bigint".  Adjust all code handling INTs.
2507         (fill_opt): Returns a "fill".
2508         (fill_exp): Split out of fill_opt, use for FILL.
2509         * ldlang.h (struct _fill_type): New.
2510         (fill_type): Move typedef to ldexp.h.
2511         (lang_output_section_statement_type): "fill" is now a pointer.
2512         (lang_fill_statement_type): Likewise.
2513         (lang_padding_statement_type): Likewise.
2514         (lang_add_fill): Now takes a "fill_type *" param.
2515         (lang_leave_output_section_statement): Likewise.
2516         (lang_do_assignments): Likewise.
2517         (lang_size_sections): Likewise.
2518         (lang_leave_overlay_section): Likewise.
2519         (lang_leave_overlay): Likewise.
2520         * ldlang.c: Include ldgram.h after ldexp.h.
2521         (lang_output_section_statement_lookup): Adjust for fill_type change.
2522         (print_fill_statement): Likewise.
2523         (print_padding_statement): Likewise.
2524         (insert_pad): Now takes a "fill_type *" arg.
2525         (size_input_section): Likewise.
2526         (lang_size_sections_1): Likewise.
2527         (lang_size_sections): Likewise.
2528         (lang_do_assignments): Likewise.
2529         (lang_add_fill): Likewise.
2530         (lang_leave_output_section_statement): Likewise.
2531         (lang_leave_overlay_section): Likewise.
2532         (lang_leave_overlay): Likewise.
2533         Adjust all callers of the above function.
2534         * ldlex.l: Include ldgram.h after ldexp.h.  Allow hex numbers
2535         starting with "0X" as well as "0x".  Return bigint.str for hex
2536         numbers starting with "0x" or "0X", zero bigint.str otherwise.
2537         Always use base 16 for numbers starting with "$".
2538         * ldmain.c: Include ldgram.h after ldexp.h.
2539         * ldwrite.c (build_link_order): Use bfd_data_link_order in place
2540         of bfd_fill_link_order.
2541         * pe-dll.c: Adjust lang_do_assignments calls.
2542         * emultempl/elf32.em: Likewise.
2543         * emultempl/hppaelf.em: Likewise.
2544         * emultempl/ppc64elf.em: Likewise.
2545         * emultempl/beos.em: Include ldgram.h after ldexp.h, adjust
2546         lang_add_assignment call.
2547         * emultempl/pe.em: Likewise.
2549 2002-02-14  Phil Edwards  <pme@gcc.gnu.org>
2551         * ld.texinfo (VERSION scripts): Symbol names are globbing patterns.
2552         * ldgram.y (lang_new_vers_regex): Rename to lang_new_vers_pattern;
2553         the pattern in question is not a regexp.
2554         * ldlang.c: Likewise.
2555         * ldlang.h: Likewise.
2556         * ldlex.l (V_IDENTIFIER): Allow '[', ']', '-', '!', and '^' also.
2558 2002-02-12  Jakub Jelinek  <jakub@redhat.com>
2560         * ldlex.l (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
2561         * ldgram.y (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
2562         (exp): Add DATA_SEGMENT_ALIGN (exp, exp) and DATA_SEGMENT_END (exp).
2563         * ldexp.c (exp_data_seg): New variable.
2564         (exp_print_token): Handle DATA_SEGMENT_ALIGN and DATA_SEGMENT_END.
2565         (fold_binary): Handle DATA_SEGMENT_ALIGN.
2566         (exp_fold_tree): Handle DATA_SEGMENT_END.
2567         Pass allocation_done when recursing instead of hardcoding
2568         lang_allocating_phase_enum.
2569         * ldexp.h (exp_data_seg): New.
2570         * ldlang.c (lang_size_sections_1): Renamed from lang_size_sections.
2571         (lang_size_sections): New.
2572         * ld.texinfo (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): Document.
2573         * scripttempl/elf.sc: Use DATA_SEGMENT_ALIGN and DATA_SEGMENT_END
2574         if COMMONPAGESIZE is defined.
2575         * emulparams/elf_i386.sh (COMMONPAGESIZE): Set to 4K.
2576         * emulparams/elf32_sparc.sh (COMMONPAGESIZE): Set to 8K.
2577         * emulparams/elf64_sparc.sh (COMMONPAGESIZE): Set to 8K.
2578         * emulparams/elf64alpha.sh (COMMONPAGESIZE): Set to 8K.
2579         * emulparams/elf64_ia64.sh (COMMONPAGESIZE): Set to 16K for shared
2580         libraries only.
2582 2002-02-11  Alan Modra  <amodra@bigpond.net.au>
2584         * Makefile.in: Regenerate.
2586 2002-02-10  Daniel Jacobowitz  <drow@mvista.com>
2588         * lexsup.c: Remove strtoul declaration.
2590 2002-02-10  Daniel Jacobowitz  <drow@mvista.com>
2592         * ldmain.c: Add prototype for main ().
2593         * lexsup.c: Guard declaration of strtoul with HAVE_STDLIB_H.
2594         * emultempl/lnk960.em (lnk960_choose_target): Function should
2595         take two arguments.
2597 2002-02-10  Alan Modra  <amodra@bigpond.net.au>
2599         * ldlang.c (entry_section): New initialised variable.
2600         (lang_finish): Use it.
2601         * ldlang.h (entry_section): Declare.
2602         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Set
2603         entry_section to ".opd".
2605 2002-02-09  Chris Demetriou  <cgd@broadcom.com>
2607         * ld.texinfo (Options): Add back in -nostdlib documentation,
2608         which had been inadvertently removed.
2610 2002-02-09  Hans-Peter Nilsson  <hp@bitrange.com>
2612         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Adjust
2613         register section vma to a sane value after emitting error.  Make
2614         fatal conditions cause program exit when emitting message.
2616 2002-02-08  Ivan Guzvinec <ivang@opencores.org>
2618         * configure.tgt: Add or32-*-rtems target.
2620 2002-02-08  Alexandre Oliva  <aoliva@redhat.com>
2622         Contribute sh64-elf.
2623         2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
2624         * emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined
2625         in OTHER_RELOCATABLE_SECTIONS.
2626         2002-01-18  Alexandre Oliva  <aoliva@redhat.com>
2627         * emulparams/shelf32.sh (STACK_ADDR): Define.
2628         (OTHER_RELOCATABLE_SECTIONS): Renamed to...
2629         (OTHER_SECTIONS): this.  Removed stack settings.
2630         * emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set.
2631         (OTHER_SECTIONS): Reset after sourcing shelf32.sh.
2632         2001-03-12  DJ Delorie  <dj@redhat.com>
2633         * emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
2634         relaxing if any shmedia or mixed sections are found.
2635         2001-03-07  DJ Delorie  <dj@redhat.com>
2636         * emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
2637         einfo.  Gracefully decline to output to non-elf formats.
2638         2001-03-06  Hans-Peter Nilsson  <hpn@redhat.com>
2639         * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>:
2640         Default to _end aligned to next multiple of 0x40000, plus 0x40000.
2641         * emulparams/shelf32.sh: Ditto.
2642         2001-01-14  Hans-Peter Nilsson  <hpn@cygnus.com>
2643         * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak
2644         comment.
2645         2001-01-10  Ben Elliston  <bje@redhat.com>
2646         * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid
2647         non-portable shell constructs. From Hans-Peter Nilsson.
2648         2001-01-09  Hans-Peter Nilsson  <hpn@cygnus.com>
2649         * emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty.
2650         * Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
2651         dependencies to the shell script include chain.
2652         * Makefile.in: Regenerate.
2653         2001-01-06  Hans-Peter Nilsson  <hpn@cygnus.com>
2654         * emultempl/sh64elf.em: Update and tweak comments.
2655         (sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
2656         make a .cranges section SEC_IN_MEMORY.
2657         2000-12-30  Hans-Peter Nilsson  <hpn@cygnus.com>
2658         * emultempl/sh64elf.em
2659         (sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
2660         .cranges section found to be necessary; continue and set stored
2661         section contents flags for sections with non-mixed contents.
2662         Use a struct sh64_section_data container and sh64_elf_section_data
2663         to store contents-type flags.
2664         Remove unused update of "isec".
2665         (sh64_elf_${EMULATION_NAME}_after_allocation): Only process
2666         sections marked SHF_SH5_ISA32_MIXED.  Use sh64_elf_section_data to
2667         access contents-type flags.  Assert that the associated container
2668         is initialized.  Use that container, not elf_gp_size, to hold size
2669         of linker-generated cranges contents.
2670         2000-12-18  Hans-Peter Nilsson  <hpn@cygnus.com>
2671         * emultempl/sh64elf.em
2672         (sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
2673         there's already a .cranges section.  When section flag difference
2674         is found, don't NULL-check cranges a second time.  Tweak comments.
2675         (sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
2676         merging, not max size, as size of ld-generated .cranges contents.
2677         Don't set ELF section flags in output section.  When checking for
2678         needed .cranges descriptors, don't use a variable; compare
2679         incoming ELF section flags directly to SHF_SH5_ISA32_MIXED.  Tweak
2680         comments.
2681         2000-12-18  Hans-Peter Nilsson  <hpn@cygnus.com>
2682         * emultempl/sh64elf.em: New file.
2683         * Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies.
2684         * Makefile.in: Regenerate.
2685         * emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set.
2686         (OTHER_RELOCATING_SECTIONS): Ditto.
2687         (EXTRA_EM_FILE): New, set to sh64elf if not set.
2688         * emulparams/shlelf32.sh: Stub out all settings except
2689         OUTPUT_FORMAT.  Source shelf32.sh.
2690         * emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and
2691         OTHER_RELOCATING_SECTIONS.
2692         (OTHER_RELOCATING_SECTIONS): Remove .cranges.
2693         * emulparams/shlelf64.sh: Stub out all settings except
2694         OUTPUT_FORMAT.  Source shelf64.sh.
2695         2000-12-15  Hans-Peter Nilsson  <hpn@cygnus.com>
2696         * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include
2697         .cranges section.
2698         (DATA_START_SYMBOLS): Define, provide ___data.
2699         (OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
2700         for consecutive .data section.
2701         (OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
2702         section after .data section.
2703         * emulparams/shlelf64.sh: Ditto.
2704         * emulparams/shelf32.sh: Ditto.
2705         (ALIGNMENT): Define to 8.
2706         * emulparams/shelf32.sh: Ditto.
2707         2000-12-12  Hans-Peter Nilsson  <hpn@cygnus.com>
2708         * configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
2709         built-in linker scripts.
2710         2000-11-30  Hans-Peter Nilsson  <hpn@cygnus.com>
2711         * emulparams/shlelf64.sh: New.
2712         * emulparams/shelf64.sh: New.
2713         * configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
2714         targ_extra_emuls.
2715         * Makefile.am: Add support for shlelf64 and shelf64.
2716         * Makefile.in: Regenerate.
2717         2000-11-29  Hans-Peter Nilsson  <hpn@cygnus.com>
2718         * configure.tgt (sh64-*-elf*): Add shelf as default.
2719         Add shlelf to targ_extra_emuls.
2720         2000-11-24  Hans-Peter Nilsson  <hpn@cygnus.com>
2721         * emulparams/shelf32.sh: New file.
2722         * emulparams/shlelf32.sh: New file.
2723         * Makefile.am: Add support for shlelf32 and shelf32.
2724         * configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
2725         * Makefile.in: Regenerate.
2727 2002-02-05  Hans-Peter Nilsson  <hp@axis.com>
2729         * ldlang.c (lang_reset_memory_regions): Rename from
2730         reset_memory_regions.  Change all callers.  Make public.
2731         * ldlang.h (lang_reset_memory_regions): Prototype.
2732         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Call
2733         lang_reset_memory_regions before lang_size_sections.
2734         * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
2735         * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Likewise.
2737 2002-02-04  Hans-Peter Nilsson  <hp@bitrange.com>
2739         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Use signed
2740         arithmetic when checking for too many global registers.
2742 2002-02-02  Jason Thorpe  <thorpej@wasabisystems.com>
2744         * Makefile.am (ALL_EMULATIONS): Add ehppanbsd.o.
2745         (ehppanbsd.c): New rule.
2746         * Makefile.in: Regenerate.
2747         * configure.tgt (hppa*-*-netbsd*): New target.
2748         * emulparams/hppalinux.sh: Add comment to check other files
2749         that source this file it is modified, and list which
2750         files that do.
2751         * emulparams/hppanbsd.sh: New file.
2753 2002-02-01  Geoffrey Keating  <geoffk@redhat.com>
2755         * scripttempl/xstormy16.sc: Don't allocate extra space for the
2756         stack.
2758 2002-02-01  Hans-Peter Nilsson  <hp@bitrange.com>
2760         Support on-demand global register allocation from
2761         R_MMIX_BASE_PLUS_OFFSET relocs.
2762         * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Rename from
2763         mmix_set_reg_section_vma.  Call
2764         _bfd_mmix_finalize_linker_allocated_gregs.
2765         (mmix_before_allocation): New function.
2766         (LDEMUL_AFTER_ALLOCATION): Set to mmix_after_allocation.
2767         (LDEMUL_BEFORE_ALLOCATION): Define to mmix_before_allocation.
2768         * scripttempl/mmo.sc (.text): Mark .init, .fini as KEEP.
2769         (.MMIX.reg_contents): Add .MMIX.reg_contents.linker_allocated
2770         before .MMIX.reg_contents.
2771         * emultempl/mmo.em (gldmmo_before_allocation): Define to default.
2772         (mmo_after_open): New function.
2773         (LDEMUL_AFTER_OPEN): Define to mmo_after_open.
2774         * emulparams/elf64mmix.sh (OTHER_SECTIONS): Tweak formatting.  Add
2775         .MMIX.reg_contents.linker_allocated before .MMIX.reg_contents.
2777 2002-01-31  Ivan Guzvinec  <ivang@opencores.org>
2779         * emulparams/or32.sh: New file.
2780         * emulparams/or32elf.sh: New file.
2781         * scripttempl/or32.sc: New file.
2782         * configure.tgt : Add support for or32.
2783         * configure: Regenerate
2784         * Makefile.am: Add support for or32.
2785         * Makefile.in: Regenerate.
2786         * NEWS: Mention support for or32.
2787         * po/ld.pot: Regenerate.
2789 2002-01-29  Chris Demetriou  <cgd@broadcom.com>
2790             Mitch Lichtenberg  <mpl@broadcom.com>
2792         * emulparams/elf32bmip.sh (EXTRA_EM_FILE): Define to be mipself.
2793         * emultempl/mipself.em: New file to handle MIPS ELF embedded
2794         reloc creation (ld --embedded-relocs).
2796 2002-01-27  Daniel Jacobowitz  <drow@mvista.com>
2798         * configure: Regenerated.
2800 2002-01-26  Hans-Peter Nilsson  <hp@bitrange.com>
2802         * Makefile.am (install): Depend on install-info.
2803         * Makefile.in: Regenerate.
2805 2002-01-26  Christian Rose  <menthos@menthos.com>
2807         * ldmain.c (main): Use full sentences to ease translation.
2809 2002-01-26  Nick Clifton  <nickc@cambridge.redhat.com>
2811         * po/fr.po: Updated version.
2813 2002-01-25  Nick Clifton  <nickc@cambridge.redhat.com>
2815         * po/es.po: Updated version.
2817 2002-01-25  Andreas Jaeger  <aj@suse.de>
2819         * ldlex.l (yy_input): Correct error check.
2821 2002-01-25  Alan Modra  <amodra@bigpond.net.au>
2823         * ldmisc.c (demangle): Put back dots when string not demangled.
2825 2002-01-22  Richard Henderson  <rth@redhat.com>
2827         * emulparams/elf64alpha.sh (NOP): Use unop.
2829 2002-01-21  Andreas Jaeger  <aj@suse.de>
2831         * ldlex.l: Use fread instead of read.
2833 2002-01-21  Jason Thorpe  <thorpej@wasabisystems.com>
2835         * configure.tgt (ia64-*-netbsd*): New target.
2837 2002-01-21  H.J. Lu <hjl@gnu.org>
2839         * emulparams/elf32btsmip.sh (SHLIB_TEXT_START_ADDR): Change to
2840         0.
2841         * emulparams/elf64btsmip.sh (SHLIB_TEXT_START_ADDR): Likewise.
2843 2002-01-18  Andreas Jaeger  <aj@suse.de>
2845         * ldver.c (ldversion): Update year.
2847 2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
2849         * po/ld.pot: Regenerate.
2851 2002-01-16  Alan Modra  <amodra@bigpond.net.au>
2853         * Makefile.am (eelf64ppc.c, eelf64lppc.c): Depend on ppc64elf.em.
2854         * Makefile.in: Regenerate.
2855         * emulparams/elf64ppc.sh (EXTRA_EM_FILE): Define.
2856         * emultempl/ppc64elf.em: New file.
2858 2002-01-15  DJ Delorie  <dj@redhat.com>
2860         * scripttempl/pe.sc: Add support for constructor priorities.
2862 2002-01-07  Marek Michalkiewicz  <marekm@amelek.gda.pl>
2864         * emulparams/avr1200.sh (DATA_START): Define as 0x60.
2865         * emulparams/avr23xx.sh: Likewise.
2866         * emulparams/avr4433.sh: Likewise.
2867         * emulparams/avr44x4.sh: Likewise.
2868         * emulparams/avr85xx.sh: Likewise.
2869         * emulparams/avrmega103.sh: Likewise.
2870         * emulparams/avrmega161.sh: Likewise.
2871         * emulparams/avrmega603.sh: Likewise.
2872         * scripttempl/elf32avr.sc: Use DATA_START instead of 0x60.
2874 2002-01-08  Alexandre Oliva  <aoliva@redhat.com>
2876         * ldlang.c (walk_wild_section): Exclude object file if enclosing
2877         archive is excluded.
2879 2002-01-07  Jason Thorpe  <thorpej@wasabisystems.com>
2881         * Makefile.am (ALL_EMULATIONS): Add eshelf_nbsd.o and eshlelf_nbsd.o.
2882         (eshelf_nbsd.c): New rule.
2883         (eshlelf_nbsd.c): New rule.
2884         * Makefile.in: Regenerate.
2885         * configure.tgt (sh*le-*-netbsdelf*): New target.
2886         (sh*-*-netbsdelf*): New target.
2887         * emulparams/shelf.sh: Document that shelf_nbsd.sh sources this file.
2888         * emulparams/shelf_nbsd.sh: New emulation.
2889         * emulparams/shlelf_nbsd.sh: New emulation.
2891 2002-01-07  Nick Clifton  <nickc@cambridge.redhat.com>
2893         * po/es.po: New file: Spanish translation.
2894         * configure.in (ALL_LINGUAS): Add es.
2895         * configure: Regenerate.
2897 2002-01-06  John Marshall  <jmarshall@acm.org>
2899         * ld.texinfo: Note that --emit-relocs is currently only
2900         implemented for ELF.
2902 2002-01-05  Alan Modra  <amodra@bigpond.net.au>
2904         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Make use
2905         of bfd_section_list_remove and bfd_section_list_insert macros.
2906         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
2907         * emultempl/mmo.em (mmo_place_orphan): Likewise.
2909 2002-01-04  Jason Thorpe  <thorpej@wasabisystems.com>
2911         * configure.tgt (x86_64-*-netbsd*): New target.
2913 2001-12-21  Tom Rix  <trix@redhat.com>
2915         (gld*_create_output_section_statements): New function.
2916         For -binitfini support.
2917         * emultempl/aix.em (gld*_before_parse): Fix comment.
2918         * emultempl/aix.em (gld*_parse_args): Fix comment.
2920 2001-12-20  Jason Thorpe  <thorpej@wasabisystems.com>
2922         * configure.tgt (mips*-dec-netbsd*): Delete alias for
2923         mips*el-*-netbsd*.
2924         (sparc64-*-netbsd*): Add elf32_sparc to targ_extra_emuls.
2926         * configure.tgt (arm-*-netbsdelf*): Add target.
2927         (arm-*-netbsd*): Add armelf and armelf_nbsd to targ_extra_emuls.
2928         * emulparams/armelf_nbsd.sh: Added.
2929         * Makefile.am: Add rules for earmelf_nbsd.
2930         * Makefile.in: Regenerate.
2932 2001-12-19  Andreas Jaeger  <aj@suse.de>,
2933             Susanne Oberhauser <froh@suse.de>
2935         * configure.host: Add rules for x86_64-*linux-gnu.  Change
2936         s390x-linux entry to use gcc to report configuration, replace gcc
2937         with $CC in s390-linux
2939 2001-12-19  Andreas Jaeger  <aj@suse.de>
2941         * ld.texinfo (VERSION): Fix markup.
2943 2001-12-18  matthew green  <mrg@eterna.com.au>
2945         * Makefile.am (ALL_EMULATIONS): Add m68kelfnbsd.o.
2946         (m68kelfnbsd.c): New rule.
2947         * Makefile.in: Regenerate.
2948         * configure.tgt (m68*-hp-netbsd*): Renamed to ..
2949         (m68*-*-netbsd*4k*): .. this.
2950         (m68*-*-netbsdelf*): New target.
2951         (m68*-*-netbsd*): Also include ELF support.
2952         (m68*-*-netbsdaout*): New alias for m68*-*-netbsd*.
2953         * emulparams/m68kelfnbsd.sh: New emulation.
2955 2001-12-18  Jakub Jelinek  <jakub@redhat.com>
2957         * ldgram.y (vers_node): Support anonymous version tags.
2958         * ldlang.c (lang_register_vers_node): Ensure anonymous version
2959         tag is not defined together with non-anonymous versions.
2960         * ld.texinfo: Document it.
2962 2001-12-18  Nick Clifton  <nickc@cambridge.redhat.com>
2964         * po/tr.po: New file: Turkish translation.
2965         * configure.in (ALL_LINGUAS): Add tr.
2966         * configure: Regenerate.
2968 2001-12-17  Jason Thorpe  <thorpej@wasabisystems.com>
2970         * Makefile.am: Add rules for eelf64alpha_nbsd.
2971         * Makefile.in: Regenerate.
2972         * configure.tgt (alpha*-*-netbsd*): Set
2973         targ_emul to elf64alpha_nbsd.
2974         * emulparams/elf64alpha_nbsd.sh: Added.
2976 2001-12-17  Alan Modra  <amodra@bigpond.net.au>
2978         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Adjust
2979         section_tail when fiddling with section list.
2980         (gld${EMULATION_NAME}_list_options): Ensure sentences aren't
2981         broken into separate strings to make translation easier.
2982         * emultempl/mmo.em (mmo_place_orphan): Adjust section_tail when
2983         fiddling with section list.
2984         * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
2986 2001-12-16  Hans-Peter Nilsson  <hp@bitrange.com>
2988         * scripttempl/mmo.sc: Add .debug_ranges to listed sections.
2990 2001-12-15  Alan Modra  <amodra@bigpond.net.au>
2992         * ldmain.c (main): Initialise link_info.eh_frame_hdr.
2994 2001-12-13  Jakub Jelinek  <jakub@redhat.com>
2996         * emultempl/elf32.em (finish): Supply output_bfd
2997         to bfd_elf*_discard_info.
2998         (OPTION_EH_FRAME_HDR): Define.
2999         (longopts): Add --eh-frame-hdr.
3000         (parse_args): Handle it.
3001         (list_options): Add --eh-frame-hdr to help.
3002         * emultempl/hppaelf.em (finish): Supply output_bfd
3003         to bfd_elf*_discard_info.
3004         * scripttempl/elf.sc (.eh_frame_hdr): Add.
3006 2001-12-13  Alan Modra  <amodra@bigpond.net.au>
3008         * lexsup.c (parse_args): Don't pass shortopts to second call to
3009         getopt functions.  Restore optind rather than decrementing before
3010         second call.  Remove errind as it now duplicates last_optind.
3012 2001-12-11  Christopher Faylor  <cgf@redhat.com>
3014         * emultempl/pe.em (gld_${EMULATION_NAME}_list_options): Fix typo.
3016 2001-12-07  Geoffrey Keating  <geoffk@redhat.com>
3017             Richard Henderson  <rth@redhat.com>
3019         * Makefile.am: Add support for xstormy16.
3020         * configure.tgt: Add support for xstormy16.
3021         * Makefile.in: Regenerate.
3022         * emulparams/elf32xstormy16.sh: New file.
3023         * scripttempl/xstormy16.sc: New file.
3025 2001-10-01  Christopher Faylor <cgf@cygnus.com>
3027         * Makefile.in (LIB_PATH): Make configurable.
3028         (GENSCRIPTS): Set LIB_PATH in environment.
3029         * configure.in: Substitute LIB_PATH.
3030         * configure: Regenerate.
3031         * configure.tgt (*cygwin): Set LIB_PATH for cross build.
3032         * configure.host (*cygwin): Add /usr/lib/w32api to NATIVE_LIB_DIRS.
3034 2001-12-07  Nick Clifton  <nickc@cambridge.redhat.com>
3036         * lexsup.c (ld_options): Insert 'PROGRAM' into the text string
3037         describing the -N option so that it is easier to translate into
3038         foreign languages.
3040 2001-12-05  Nick Clifton  <nickc@cambridge.redhat.com>
3042         * emultempl/pe.em (..._list_options): Replace multiple fprintf
3043         statements describing a single option with a single, newline
3044         escaped fprintf.  This allows better translation into other
3045         languages.
3047         * ldmain.c (add_archive_element): Combine multiple strings
3048         into a single string to permit better translation into other
3049         languages.
3051 2001-12-05  Tom Rix  <trix@redhat.com>
3053         * Makefile.am: Remove eaixppc64.
3054         * Makefile.in: Regenerate.
3056 2001-12-04  Tom Rix  <trix@redhat.com>
3058         * emultempl/aix.em (choose_target): Change default target to
3059         OUTPUT_FORMAT for ppcmacos.  Add braces to remove compiler
3060         warning.
3061         (gld*_read_file): Fix typo.
3062         (change_symbol_mode): Add prototype.
3063         (is_syscall): Same.
3065         * emulparams/aixppc.sh (SYSCALL_MASK, SYMBOL_MODE_MASK): Delete.
3066         * emulparams/aixrs6.sh : Same.
3067         * emulparams/ppcmacos.sh : Same.
3068         * emulparams/aixppc64.sh : Delete file.
3069         * emultempl/aix.em : Formatting changes.
3071 2001-12-04  Hans-Peter Nilsson  <hp@axis.com>
3073         * emulparams/criself.sh (NO_SMALL_DATA): Set, to yes.
3074         (OTHER_BSS_END_SYMBOLS): Don't refer to .sbss when setting
3075         __Sbss.
3076         (OTHER_END_SYMBOLS): Fix formatting.
3077         * emulparams/crislinux.sh (NO_SMALL_DATA): Set, to yes.
3078         (OTHER_END_SYMBOLS): Fix formatting.
3080 2001-12-04  Alan Modra  <amodra@bigpond.net.au>
3082         * ldexp.c (exp_print_token): Correct "table" entry for RSHIFT.
3084 2001-12-02  Tom Rix  <trix@redhat.com>
3086         * configure.tgt : Remove eaixppc64 emulations.
3087         * Makefile.in : Remove eaixppc64.c
3088         * ldemul.c (ldemul_choose_target): New parameters argc, argv.
3089         (ldemul_default_target): Same.
3090         * emultempl/gld960.em (gld960_choose_target): Same.
3091         * emultempl/gld960c.em (gld960_choose_target): Same.
3092         * scripttempl/aix.sc: Remove OUTPUT_FORMAT.
3093         * emultempl/aix.em (is_syscall): syscall_mask now a variable.
3094         * emultempl/aix.em (gld*_read_file): symbol_mode_mask now a variable.
3095         * emultempl/aix.em (gld*_parse_args): Handle -b32 -b64 emulation.
3096         * emultempl/aix.em (choose_target): New function.  Handle emulation of
3097         -b32 and -b64.
3099 2001-11-27  H.J. Lu <hjl@gnu.org>
3101         * emulparams/elf_i386.sh (NO_SMALL_DATA): Set to yes.
3102         * emulparams/elf_i386_be.sh (NO_SMALL_DATA): Likewise.
3103         * emulparams/elf_i386_chaos.sh (NO_SMALL_DATA): Likewise.
3104         * emulparams/elf_i386_ldso.sh (NO_SMALL_DATA): Likewise.
3105         * emulparams/elf_x86_64.sh (NO_SMALL_DATA): Likewise.
3106         * emulparams/m68kelf.sh (NO_SMALL_DATA): Likewise.
3107         * emulparams/elf32_sparc.sh (NO_SMALL_DATA): Likewise.
3108         * emulparams/elf64_sparc.sh (NO_SMALL_DATA): Likewise.
3110         * scripttempl/elf.sc (SBSS): New. Define if ${NO_SMALL_DATA}
3111         is not empty.
3112         (SDATA): Likewise.
3113         (REL_SDATA): Likewise.
3114         (REL_SBSS): Likewise.
3115         (REL_SDATA2): Likewise.
3116         (REL_SBSS2): Likewise.
3117         (SBSS2): Define if ${NO_SMALL_DATA} is not empty.
3118         (SDATA2): Likewise.
3120 2001-11-25  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
3122         * scripttempl/elfm68hc11.sc (CTOR, DTOR): Put constructor and
3123         destructor in rom.
3124         * scripttempl/elfm68hc12.sc (CTOR, DTOR): Likewise.
3126 2001-11-22  H.J. Lu  <hjl@gnu.org>
3128         * Makefile.in: Regenerated with automake based on automake
3129         1.4-8 in RedHat 7.1.
3131 2001-11-22  Alan Modra  <amodra@bigpond.net.au>
3133         * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
3134         (config.status): Delete rule.
3135         Add extra dependencies to cover sourced emulparams files.
3136         * Makefile.in: Regenerate.
3138         * scripttempl/elf.sc: Order <section>, <section>.* and
3139         corresponding linkonce sections as seen in input files.
3140         Formatting fixes.  Zero vma of all sections if not relocating.
3141         (STACK): Define and insert if STACK_ADDR defined.
3142         (OTHER_RELOCATING_SECTIONS): Delete.
3143         (OTHER_END_SYMBOLS): Define.
3144         (OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
3145         (OTHER_READWRITE_SECTIONS): Likewise.
3146         (OTHER_GOT_SECTIONS): Likewise.
3147         (OTHER_SDATA_SECTIONS): Likewise.
3148         (OTHER_BSS_SECTIONS): Likewise.
3149         * scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
3150         (OTHER_READWRITE_SECTIONS): Likewise.
3151         * scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
3152         (OTHER_READWRITE_SECTIONS): Likewise.
3154         * emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
3155         (STACK_ADDR): Define.
3156         * emulparams/armelf_oabi.sh: As for armelf.sh.
3157         * emulparams/elf32mcore.sh: As for armelf.sh.
3158         * emulparams/h8300elf.sh: As for armelf.sh.
3159         * emulparams/mn10200.sh: As for armelf.sh.
3160         * emulparams/shelf.sh: As for armelf.sh.
3162         * emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
3163         (OTHER_END_SYMBOLS): Define.
3164         * emulparams/m32relf.sh: As for elf32fr30.sh.
3165         * emulparams/h8300helf.sh: As for elf32fr30.sh.
3166         * emulparams/h8300self.sh: As for elf32fr30.sh.
3168         * emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
3169         defines with RELOCATING test.
3170         (OTHER_SDATA_SECTIONS): Likewise.
3171         (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
3172         (OTHER_END_SYMBOLS): ..this.
3173         * emulparams/crislinux.sh: As for criself.sh.
3175         * emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
3176         if not relocating.
3177         (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
3178         (OTHER_SECTIONS): ..this.  Zero vma if not relocating.  Order
3179         normal and linkonce sections as seen in input files.
3180         * emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
3181         (TEXT_DYNAMIC): Likewise.
3182         (INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
3183         (OTHER_SDATA_SECTIONS): Likewise.
3184         * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
3185         * emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
3186         * emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
3187         * emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
3188         * emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
3189         (OTHER_PLT_RELOC_SECTIONS): Likewise.
3190         (OTHER_READONLY_SECTIONS): Likewise.  Order normal and linkonce
3191         sections as seen in input files.
3192         * emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
3193         * emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
3194         if not relocating.
3195         (OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
3196         (OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
3197         * emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
3198         (OTHER_SECTIONS): Instead, use this..
3199         (OTHER_END_SYMBOLS): ..and this.
3201         * emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
3202         * emulparams/elf32bsmip.sh: Likewise.
3203         * emulparams/elf32btsmip.sh: Likewise.
3204         * emulparams/elf32ebmip.sh: Likewise.
3205         * emulparams/elf32lmip.sh: Likewise.
3206         * emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
3207         * emulparams/elf32lsmip.sh: Likewise.
3208         * emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
3209         * emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
3210         * emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
3211         * emulparams/elf64btsmip.sh: Likewise.
3212         * emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
3213         * emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
3214         * emulparams/elf32ppclinux.sh: Likewise.
3215         * emulparams/elf32ppcsim.sh: Likewise.
3216         * emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
3217         * emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
3218         * emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
3219         * emulparams/h8300self.sh: Likewise.
3220         * emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
3221         * emulparams/sh.sh: Comment.
3222         * emulparams/shl.sh: Source sh.sh, remove duplicates.
3223         * emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
3224         * emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
3226 2001-11-21  David Heine <dlheine@tensilica.com>
3227             Alan Modra  <amodra@bigpond.net.au>
3229         * ldlang.c (map_input_to_output_sections): Replace "break"
3230         accidentally removed with 2001-08-03 change.
3231         (lang_gc_sections_1): Likewise.
3233 2001-11-21  Alan Modra  <amodra@bigpond.net.au>
3235         * ldlang.c (walk_wild_section): Move sec == NULL case out of loop.
3237 2001-11-20  Angela Marie Thomas <angela@redhat.com>
3239         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Use NULL instead
3240         of false when calling lang_size_sections.
3241         * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
3243 2001-11-15  Alan Modra  <amodra@bigpond.net.au>
3245         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Only emit this
3246         function when LDEMUL_FINISH isn't set to the same name.  Don't
3247         call ${LDEMUL_FINISH}.
3248         (ld_${EMULATION_NAME}_emulation): Call $LDEMUL_FINISH if defined.
3249         * emultempl/armelf.em (arm_elf_finish): Call
3250         gld${EMULATION_NAME}_finish.
3251         * emultempl/hppaelf.em (hppaelf_finish): Rename to
3252         gld${EMULATION_NAME}_finish.  Call bfd_elf32_discard_info and
3253         hppaelf_layout_sections_again if necessary.
3254         (need_laying_out): New var.
3255         (hppaelf_layaout_sections_again): Rename to
3256         hppaelf_layout_sections_again.  Clear need_laying_out.
3257         (PARSE_AND_LIST_OPTIONS): Format text.
3259 2001-11-14  H.J. Lu  <hjl@gnu.org>
3261         * emultempl/armelf.em (arm_elf_finish): Renamed from
3262         gld${EMULATION_NAME}_finish.
3263         (LDEMUL_FINISH): Set to arm_elf_finish.
3265 2001-11-14  Daniel Jacobowitz  <drow@mvista.com>
3267         * emultempl/elf32.em (gld${EMULATION_NAME}_finish): New.
3268         (struct ld_emulation_xfer_struct): Use it.
3270 2001-11-13  Ross Alexander <ross.alexander@uk.neceur.com>
3272         * emulparams/elf64hppa.sh (OTHER_BSS_END_SYMBOLS): Add
3273         additional symbols referenced by newer crt0.o files from HP.
3275 2001-11-12  Anthony Green  <green@redhat.com>
3277         * emulparams/armelf.sh (DATA_START_SYMBOLS): New symbol.
3279 2001-11-12  Alfred M. Szmidt  <ams@kemisten.nu>
3281         * Makefile.am (GENSCRIPTS): Quote ${exec_prefix}.
3282         * Makefile.in: Regenerate.
3284 2001-11-02  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
3286         * ld.texinfo: Use @command for commands, @option for options.
3287         * Makefile.am (POD2MAN): Use 'GNU Development Tools' for
3288         the page man title.
3289         * Makefile.in: Rebuild.
3291 2001-11-04  Chris Demetriou  <cgd@broadcom.com>
3293         * configure.tgt (mips*el-*-netbsd*, mips*-*-netbsd*):
3294         Add support for targets.
3296 2001-11-02  Nick Clifton  <nickc@cambridge.redhat.com>
3298         * configure.in (ALL_LINGUAS): Add "fr" and "sv"
3299         * configure: Regernate.
3300         * po/fr.po: New file.
3301         * po/sv.po: New file.
3303 2001-11-01  NIIBE Yutaka  <gniibe@m17n.org>
3305         * configure.tgt (sh-*-linux): Set targ_emul, targ_extra_emuls
3306         as little endian default and to support big endian.
3308 2001-11-01  Chris Demetriou  <cgd@broadcom.com>
3310         * ld.texinfo (Options): Document new option, -nostdlib.
3311         * lexsup.c (OPTION_NOSTDLIB): New definition.
3312         (ld_options): Add entry for "nostdlib".
3313         (parse_args): Handle OPTIONS_NOSTDLIB.
3314         * ldfile.c (ldfile_add_library_path): Don't add directories
3315         to the search path if they weren't specified on the command line
3316         and -nostdlib was specified.
3317         * ld.h (ld_config_type): New member only_cmd_line_lib_dirs.
3319 2001-10-31  Nick Clifton  <nickc@cambridge.redhat.com>
3321         * lexsup.c (parse_args): Prevent infinite parsing loop when
3322         "-rpath.a" is specified on the command line.
3323         Replace calls to fprintf with calls to einfo.
3325 2001-10-31  John Marshall  <jmarshall@acm.org>
3327         * ld.texinfo: A historical requirement that MEMORY and SECTIONS
3328         appear only once across all the linker scripts involved in a link
3329         invocation no longer applies.  Make the documentation reflect
3330         that.
3332 2001-10-31  NIIBE Yutaka  <gniibe@m17n.org>
3334         * configure.tgt: Supports sh3/sh4/sh3eb/sh4eb-unknown-linux-gnu
3335         targets.
3336         (sh-*-linux*): Added targ_extra_libpath.
3338 2001-10-31  David Heine  <dlheine@tensilica.com>
3340         * ldlang.c (lang_size_sections): Keep a valid output_offset field
3341         for padding statements.
3343 2001-10-30  Hans-Peter Nilsson  <hp@bitrange.com>
3345         * configure.tgt (mmix-*-*): New target.
3346         * Makefile.am (ALL_EMULATIONS): Add eelf64mmix.o and emmo.o.
3347         Add dependencies to match.
3348         * emulparams/mmo.sh, emulparams/elf64mmix.sh, emultempl/mmo.em,
3349         emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em,
3350         scripttempl/mmo.sc: New files.
3351         * gen-doc.texi: @set MMIX.
3352         * ld.texinfo: Ditto.
3353         [MMIX] Add MMIX node.
3354         * Makefile.in: Regenerate.
3356 2001-10-29  Kazu Hirata  <kazu@hxi.com>
3358         * ldlang.c: Fix a comment typo.
3360 2001-10-23  Alan Modra  <amodra@bigpond.net.au>
3362         * configure.host: Move alpha*-*-linux-gnu* entry to generic
3363         entries, and match *-*-linux*.
3365 2001-10-20  Alan Modra  <amodra@bigpond.net.au>
3367         * ldgram.y (mri_script_command): Surround processing of INCLUDE
3368         with ldlex_script, ldlex_popstate.
3369         (ifile_p1): Likewise.
3370         * ldlex.l (EOF): Don't BEGIN(SCRIPT).  Restore lineno from the
3371         correct slot.
3372         (lex_push_file): Save current lineno to lineno_stack.  Set lineno
3373         to 1.  Don't BEGIN(SCRIPT).
3374         (lex_redirect): Similarly.
3375         * ldmain.c (main): Set yydebug non-zero if YYDEBUG.
3377 2001-10-20  Nick Clifton  <nickc@cambridge.redhat.com>
3379         * scripttempl/armcoff.sc: Define __EH_FRAME_BEGIN__ and
3380         __EH_FRAME_END__ and accept eh frames into data section.
3381         Add ctor and dtor sections.
3383 2001-10-19  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
3385         * pe-dll.c (autofilter_objectlist): Add gcrt0.o.
3386         (auto-export): Fix indentation.
3388 2001-10-18  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
3390         * pe-dll.c (autofilter_objectlist): Add startup objects
3391         for profiling.
3392         (auto-export): Constify char * p.
3393         Extract file basename and use strcmp rather than ststr
3394         for object lookup.
3396 2001-10-18  Chris Demetriou  <cgd@broadcom.com>
3398         * ldmain.c (get_emulation): Improve comment about the handling
3399         of -mipsN options.
3401 2001-10-17  Alan Modra  <amodra@bigpond.net.au>
3403         * po/POTFILES.in: Regenerate.
3405 2001-10-16  Vassili Karpov  <malc@pulsesoft.com>
3407         * emultempl/elf32.em (gld*_list_options): Remove extra '\t' from
3408         -z nocopyreloc and -z nocombreloc usage strings.
3410 2001-10-12  Vassili Karpov  <malc@pulsesoft.com>
3412         * emultempl/elf32.em (gld*_list_options): Include -z nocopyreloc
3413         in usage.
3415 2001-10-11  Aleksey Romanov <aromanov@ennovatenetworks.com>
3417         * scripttempl/armaout.sc: Place .bss section after end of aligned
3418         data section to match behaviour of aout code in constructrion of
3419         header.
3421 2001-10-11  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
3423         * pe-dll.c (autofilter_entry_type autofilter_liblist: Add
3424         startup files for mingw32 dlls to list.
3426 2001-10-10  Chris Demetriou  <cgd@broadcom.com>
3428         * emultempl/elf32.em: Fix shell 'if' usage for portability.
3430 2001-10-08  Aldy Hernandez  <aldyh@redhat.com>
3432         * configure.tgt (targ): Add arm9e-*-elf.
3434 2001-10-05  H.J. Lu  <hjl@gnu.org>
3436         * genscripts.sh: Fix a typo in the last change.
3438 2001-10-05  Jakub Jelinek  <jakub@redhat.com>
3440         * emultempl/elf32.em (gld_*_list_options): Include -z combreloc and
3441         -z nocombreloc in usage.
3443 2001-10-03  Jim Blandy  <jimb@redhat.com>
3445         * genscripts.sh: Include a comment at the top of each generated
3446         script, explaining its purpose.
3448 2001-10-03  Vassili Karpov  <malc@pulsesoft.com>
3450         * emultempl/elf32.em (parse_args): Handle -z nocopyreloc.
3451         * NEWS: Mention -z nocopyreloc.
3452         * ld.texinfo (Options): Describe nocopyreloc.
3454 2001-10-03  Alan Modra  <amodra@bigpond.net.au>
3456         * configure: Regenerate.
3458 2001-10-02  Alan Modra  <amodra@bigpond.net.au>
3460         * ldver.h (ld_program_version): Remove declaration.
3461         * lexsup.c (parse_args): Move printing of copyright message..
3462         * ldver.c (ldversion): .. to here.
3463         Use BFD_VERSION_STRING in place of BFD_VERSION.
3464         (ld_program_version): Remove.
3465         * Makefile.am (Makefile): Depend on bfd/configure.in.
3466         Run "make dep-am".
3467         * Makefile.in: Regenerate.
3469 2001-09-30  Hans-Peter Nilsson  <hp@bitrange.com>
3471         * Makefile.am: Update dependencies with "make dep-am".
3472         * Makefile.in: Regenerate.
3474 2001-09-29  John Reiser  <jreiser@BitWagon.com>
3476         * ldlang.c (lang_common): Conditionally inhibit Common allocation.
3477         * lexsup.c: Add --no-define-common commandline option.
3478         * ldgram.y: Add INHIBIT_COMMON_ALLOCATION script command.
3479         * ldlex.l: Likewise.
3480         * ld.h: Add command_line.inhibit_common_definition.
3481         * ldmain.c (main): Initialize.
3482         * ld.texinfo: Document.
3484 2001-09-29  Alan Modra  <amodra@bigpond.net.au>
3486         * ldlang.c (section_already_linked): Remove assignment to kept_section.
3488 2001-09-26  Alan Modra  <amodra@bigpond.net.au>
3490         * ldmisc.c (USE_STDARG): Remove.
3491         (info_msg): Define using VPARAMS, VA_OPEN, VA_FIXEDARG, VA_CLOSE.
3492         (einfo): Likewise.
3493         (minfo): Likewise.
3494         (lfinfo): Likewise.
3496         * ldmisc.h: Remove #ifdef ANSI_PROTOTYPES and non-ansi
3497         declarations.  Update copyright.
3499 2001-09-24  Charles Wilson  <cwilson@ece.gatech.edu>
3501         * pe-dll.c: Remove obsoleted declaration of
3502         pe_get_data_import_dll_name.
3503         (pe_create_import_fixup): Fix thinko.
3505         * ld.texinfo(enable-auto-import): Clarify the explanation.
3507 2001-09-24  Nick Clifton  <nickc@cambridge.redhat.com>
3509         * pe-dll.c (pe_create_import_fixup): Revert previous patch.
3510         * emultemp/pe.em (pe_data_import_dll): Move definition outside of
3511         DLL_SUPPORT controlled code.
3513 2001-09-24  Charles Wilson  <cwilson@ece.gatech.edu>
3515         * emultempl/pe.em(pe_data_import_dll): Make static.
3516         (pe_get_data_import_dll_name): New accessor function.
3517         * pe-dll.c(pe_create_import_fixup): call
3518         pe_get_data_import_dll_name() from pe.em, instead of
3519         directly accessing pe_data_import_dll variable from pe.em.
3521 2001-09-18  Bruno Haible  <haible@clisp.cons.org>
3523         * deffilep.y: Include "safe-ctype.h" instead of <ctype.h>.
3524         (def_file_add_directive): Use ISSPACE instead of isspace.
3525         (def_lex): Use ISDIGIT/ISXDIGIT/ISALPHA/ISALNUM instead of
3526         isdigit/isxdigit/isalpha/isalnum.
3527         * emultempl/aix.em: Include "safe-ctype.h" instead of <ctype.h>.
3528         (gld${EMULATION_NAME}_read_file): Use ISSPACE instead of isspace.
3529         * emultempl/elf32.em: Include "safe-ctype.h" instead of <ctype.h>.
3530         (gld${EMULATION_NAME}_place_orphan): Use ISALNUM instead of
3531         isalnum.
3532         * emultempl/gld960c.em: Include "safe-ctype.h" instead of <ctype.h>.
3533         (gld960_set_output_arch): Use ISUPPER/TOLOWER instead of
3534         isupper/tolower.
3535         * emultempl/sunos.em: Include "safe-ctype.h" instead of <ctype.h>.
3536         (gld${EMULATION_NAME}_search_dir): Use ISDIGIT instead of isdigit.
3537         * ldctor.c: Include "safe-ctype.h" instead of <ctype.h>.
3538         (ctor_prio): Use ISDIGIT instead of isdigit.
3539         * ldfile.c: Include "safe-ctype.h" instead of <ctype.h>.
3540         (ldfile_open_file_search): Use ISALPHA instead of isalpha.
3541         (ldfile_add_arch): Use ISUPPER/TOLOWER instead of
3542         isupper/tolower.
3543         * ldlang.c: Include "safe-ctype.h" instead of <ctype.h>.
3544         (stricpy): Use TOLOWER instead of isupper/tolower.
3545         (lang_leave_overlay_section): Use ISALNUM instead of isalnum.
3546         * ldlex.l: Include "safe-ctype.h" instead of <ctype.h>.
3547         (lex_warn_invalid): Use ISPRINT instead of isprint.
3548         * ldmain.c: Include "safe-ctype.h" instead of <ctype.h>.
3549         (main): For gettext, also set the LC_CTYPE locate facet.
3550         (add_keepsyms_file): Use ISSPACE instead of isspace.
3551         * lexsup.c: Include "safe-ctype.h" instead of <ctype.h>.
3552         (is_num, parse_args): Use ISDIGIT instead of isdigit.
3553         * mpw-elfmips.c: Include "safe-ctype.h" instead of <ctype.h>.
3554         (gldelf32ebmip_place_orphan): Use ISALNUM instead of isalnum.
3555         * mpw-eppcmac.c: Include "safe-ctype.h" instead of <ctype.h>.
3556         (gldppcmacos_read_file): Use ISSPACE instead of isspace.
3557         * pe-dll.c: Include "safe-ctype.h" instead of <ctype.h>.
3558         (quoteput): Use ISSPACE instead of isspace.
3559         (pe_dll_generate_implib, pe_process_import_defs): Use ISALNUM
3560         instead of isalnum.
3562 2001-09-18  Alan Modra  <amodra@bigpond.net.au>
3564         * deffilep.y (def_stash_module): Constify "name" param.
3566         * pe-dll.c: Replace CONST with const throughout.
3567         (quick_symbol): Constify "n1", "n2", "n3" params.
3568         (make_singleton_name_thunk): Constify "import" param.  Make
3569         "buffer_len" a size_t.
3570         (make_import_fixup_entry): Constify "name", "fixup_name",
3571         "dll_symname" params.
3572         (pe_get16): Cast args of bfd_seek.  Replace bfd_read with bfd_bread.
3573         (pe_get32): Likewise.
3574         (pe_implied_import_dll): Likewise.
3576         * emultempl/beos.em (sort_by_file_name): Constify "ra", "rb".
3577         (sort_by_section_name): Likewise.
3579         * emultempl/pe.em: Move defines for arm_epoc_pe before bfd.h included.
3580         (make_import_fixup): Cast printf arg, rel->address to long rather
3581         than int.
3582         (gld_${EMULATION_NAME}_after_open): Don't compare NULL against int.
3584 2001-09-15  Alan Modra  <amodra@bigpond.net.au>
3586         * ldmain.c (main): Rename BufferSize to ld_bufsz because HPUX
3587         defines BufferSize.  Increase buffer size by one.
3589 2001-09-14  Ralf Habacker <Ralf.Habacker@freenet.de>
3591         * pe-dll.c (pe_walk_relocs_of_symbol): Fix memory leak.
3593 2001-09-14  Kevin Lo <kevlo@openbsd.org>
3595         * configure.tgt: Add arm-openbsd target.
3597 2001-09-12  H.J. Lu  <hjl@gnu.org>
3599         * Makefile.am (ALL_EMULATIONS): Move eelf64ppc.o and
3600         eelf64lppc.o to ...
3601         (ALL_64_EMULATIONS): Here.
3602         * Makefile.in: Regenerated.
3604 2001-09-12  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
3606         * emultempl/pe.em(make_import_fixup): change signature to
3607         take asection as well as arelec; we need this for proper
3608         error reporting.  Only call pe_create_import_fixup() if
3609         there is no attempt to add a constant addend to the reloc;
3610         otherwise, report error condition.
3611         * pe-dll.c(pe_walk_relocs_of_symbol): change signature,
3612         since final argument is a pointer to make_import_fixup().
3613         Change call to cb() to match make_import_fixup() signature.
3614         (make_import_fixup_mark): make buffer_len unsigned.
3615         * pe-dll.h: change signature of pe_walk_relocs_of_symbol.
3617 2001-09-12  Charles Wilson  <cwilson@ece.gatech.edu>
3619         * ld.texinfo: add verbose documentation for auto-import
3620         direct-addressing workaround, to compliment the terse
3621         error message.
3623 2001-09-12  Andrew MacLeod  <amacleod@redhat.com>
3625         * scripttempl/v850.sc: Add gcc_except_table sections.
3627 2001-09-11  Jeffrey A Law  (law@cygnus.com)
3629         * emulparams/h8300helf.sh: Move stack to a much higher memory address.
3630         * emulparams/h8300self.sh: Similarly.
3632 2001-09-05 Danny Smith <dannysmith@users.souceforge.net>
3634         * ld.texinfo (Options, --stack): Correct default value for stack
3635         reserve.
3637 2001-09-05  Tom Rix <trix@redhat.com>
3639         * emultempl/aix.em : Handle import file XMC_XO and syscall symbols.
3641 2001-09-03  Andreas Jaeger  <aj@suse.de>
3643         * emultempl/beos.em: Declare prototypes for comparions functions,
3644         adjust definitions.
3646 2001-09-02  Andreas Jaeger  <aj@suse.de>
3648         * emultempl/aix.em: Add missing prototype.
3649         * emultempl/lnk960.em: Likewise.
3650         * emultempl/vanilla.em: Likewise.
3651         * emultempl/armcoff.em: Likewise.
3652         * emultempl/armelf_oabi.em: Likewise.
3653         * emultempl/beos.em: Likewise.
3654         * emultempl/gld960c.em: Likewise.
3655         * emultempl/gld960.em: Likewise.
3657         * emulparams/elf64alpha.sh (PARSE_AND_LIST_PROLOGUE): Add parameter
3658         for prototype declaration.
3660 2001-08-31  Eric Christopher  <echristo@redhat.com>
3661             Jason Eckhardt  <jle@redhat.com>
3663         * ldmain.c (get_emulation): Add support for -mips32 and -mips64.
3665 2001-08-31  Andreas Jaeger  <aj@suse.de>
3667         * emultempl/pe.em: Add missing prototypes.
3668         (gld_${EMULATION_NAME}_after_open): Remove extra args to
3669         pe_find_data_imports.
3670         (pr_sym): Add unused attribute.
3672 2001-08-29  Joel Sherrill <joel@OARcorp.com>
3674         * configure.tgt (i[3456]86-*-rtems*, m68*-*-rtems*): Change
3675         default from coff to elf.
3677 2001-08-29  Jeff Law <law@redhat.com>
3679         * emulparams/h8300helf.sh: Resync with h8300elf.sh.  Update
3680         ARCH specification.
3681         * emulparams/h8300self.sh: Similarly.
3683 2001-08-28  J"orn Rennecke <amylaar@redhat.com>
3685         * Makefile.am (ALL_EMULATIONS): Add eh8300elf.o, eh8300elf.o and
3686         eh8300self.o .
3687         (eh8300elf.c, eh8300helf.c, eh8300self.c): New targets.
3688         * configure.tgt (h8300-*-elf*): New case.
3689         * emulparams/h8300elf.sh, emulparams/h8300helf.sh: New files.
3690         * emulparams/h8300self.sh: New file.
3691         * Makefile.in: Regenerated.
3693 2001-08-28  Nick Clifton  <nickc@cambridge.redhat.com>
3695         * ldmain.c (main): Rename BSIZE to BufferSize to avoid collision
3696         with macro name.
3698 2001-08-27  Linus Nordberg  <linus@swox.com>
3699             Alan Modra  <amodra@bigpond.net.au>
3701         * Makefile.am (ALL_EMULATIONS): Add eelf64ppc.o and eelf64lppc.o.
3702         (eelf64ppc.c, eelf64lppc.c): Add make targets.
3703         Run "make dep-am"
3704         * Makefile.in: Regenerate.
3705         * configure.tgt: Add powerpc64 support.  Move pdp11, pjl, pj
3706         entries to correct alphabetical position.
3707         * emulparams/elf64ppc.sh: New.
3708         * emulparams/elf64lppc.sh: New.
3710 2001-08-27  Nick Clifton  <nickc@cambridge.redhat.com>
3712         * ldmain.c (main): Declare BSIZE as static.
3714 2001-08-23  Jakub Jelinek  <jakub@redhat.com>
3716         * emultempl/elf32.em (place_orphan): Place orphan .rel* sections
3717         into .rel.dyn resp. .rela.dyn if combreloc.
3718         (get_script): If .x linker script is equal to .xn, only put it
3719         once into the binary.
3720         Add .xc and .xsc scripts.
3721         (parse_args): Handle -z combreloc and -z nocombreloc.
3722         * scripttempl/elf.sc (.rela.sbss): Fix a typo.
3723         For .xc and .xsc scripts put all .rel* or .rela* input sections
3724         but .rel*.plt and PLT-like sections into .rel.dyn resp. .rela.dyn.
3725         * genscripts.sh (GENERATE_COMBRELOC_SCRIPT): Set if SCRIPT_NAME
3726         is elf.
3727         Strip trailing whitespace from script.
3728         Generate .xc and .xsc scripts if requested.
3729         * ldmain.c (main): Initialize link_info.combreloc and
3730         link_info.spare_dynamic_tags.
3731         * lexsup.c (OPTION_SPARE_DYNAMIC_TAGS): Define.
3732         (ld_options): Add --spare-dynamic-tags option.
3733         (parse_args): Likewise.
3734         * ld.texinfo: Document -z combreloc and -z nocombreloc.
3735         * ldint.texinfo: Document .xc and .xsc linker scripts.
3736         * NEWS: Add notes about -z combreloc and SHF_MERGE.
3738 2001-08-22  H.J. Lu  <hjl@gnu.org>
3740         * emulparams/elf32fr30.sh: Add a newline.
3742 2001-08-21  Andreas Jaeger  <aj@suse.de>
3744         * deffilep.y: Add missing prototypes.
3745         * pe-dll.c: Likewise.
3747 2001-08-20  Alan Modra  <amodra@bigpond.net.au>
3749         * ldlang.c (insert_pad): Fix typos in last patch.
3751         * ldlang.c: When traversing lang_statement_union_type lists,
3752         consistently use "header.next" rather than "next".
3753         * mpw-eppcmac.c: Likewise.
3754         * emultempl/beos.em: Likewise.
3755         * emultempl/hppaelf.em: Likewise.
3756         * emultempl/pe.em: Likewise.
3757         * ldlang.h (union lang_statement_union): Remove "next" field.
3759         * ldlang.c (insert_pad): Use offsetof macro.
3760         (lang_size_sections): Always neuter padding statements.
3761         * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete.
3763         * pe-dll.c (pe_dll_fill_sections): Correct type of "relax" param
3764         passed to lang_size_sections.
3765         (pe_exe_fill_sections): Likewise.
3766         * emultempl/pe.em (output_prev_sec_find): Copied from elf32.em.
3767         (gld_${EMULATION_NAME}_place_orphan): Merge from elf32.em.
3769 2001-08-18  Alan Modra  <amodra@bigpond.net.au>
3771         * emultempl/aix.em: Formatting fixes.
3773 2001-08-18  Alan Modra  <amodra@bigpond.net.au>
3775         * ldlang.c (insert_pad): Make use of an existing pad statement if
3776         available.  Move code calculating alignment, adjusting section
3777         alignment power, and adjusting dot to ..
3778         (size_input_section): .. here.  Remove unused relax param.
3779         (lang_size_sections): Change boolean `relax' param to boolean *.
3780         Adjust call to size_input_section.  Make use of insert_pad to
3781         place pad after the assignment statement.  If relaxing, zap
3782         padding statements.
3783         (reset_memory_regions): Reset output_bfd section sizes too.
3784         (relax_again): Move to..
3785         (lang_process): ..here.  Adjust call to lang_size_sections, and
3786         remove duplicated code.
3787         * ldlang.h (lang_size_sections): Change `relax' param to boolean *.
3789 2001-08-17  Alan Modra  <amodra@bigpond.net.au>
3791         * ld.texinfo: Document that fill values now use the four least
3792         significant bytes.
3793         * emulparams/elf32fr30.sh (NOP): Update.
3794         * emulparams/elf32mcore.sh: Likewise.
3795         * emulparams/elf64_s390.sh: Likewise.
3796         * emulparams/elf_i386.sh: Likewise.
3797         * emulparams/elf_i386_be.sh: Likewise.
3798         * emulparams/elf_i386_chaos.sh: Likewise.
3799         * emulparams/elf_i386_ldso.sh: Likewise.
3800         * emulparams/elf_s390.sh: Likewise.
3801         * emulparams/elf_x86_64.sh: Likewise.
3802         * emulparams/i386moss.sh: Likewise.
3803         * emulparams/i386nw.sh: Likewise.
3804         * emulparams/m68kelf.sh: Likewise.
3805         * scripttempl/elf.sc: Update NOP comment.
3806         * scripttempl/elfi370.sc: Likewise.
3807         * scripttempl/elfm68hc11.sc: Likewise.
3808         * scripttempl/elfm68hc12.sc: Likewise.
3809         * scripttempl/nw.sc: Likewise.
3811 2001-08-15  Tom Rix <trix@redhat.com>
3813         * ldgram.y (saved_script_handle): Initialize to NULL.
3814         * ldmain.c (main): Change check on saved_script_handle.
3816 2001-08-14  Alan Modra  <amodra@bigpond.net.au>
3818         * emultempl/elf32.em: Formatting fixes.
3819         (output_prev_sec_find): Test for bfd_ind_section too;  do so by
3820         looking at sec->owner.
3821         (output_rel_find): Move function inside LDEMUL_PLACE_ORPHAN test.
3822         (gld${EMULATION_NAME}_place_orphan): Add a few comments.  Remove
3823         unused code, and reorganize orphan section placement code.
3825         * ldlang.c (wild_doit): Rename to lang_add_section.
3826         * ldlang.h: Here too.
3827         * mpw-elfmips.c: And here.
3828         * emultempl/beos.em: And here.
3829         * emultempl/elf32.em: And here.
3830         * emultempl/hppaelf.em: And here.
3831         * emultempl/pe.em: And here.
3833 2001-08-13  Richard Henderson  <rth@redhat.com>
3835         * emultempl/needrelax.em: New file.
3836         * emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Reference it.
3837         * Makefile.am (eelf64_ia64.c): Depend on it.
3838         * Makefile.in: Rebuild.
3840 2001-08-13  Alan Modra  <amodra@bigpond.net.au>
3842         * emultempl/elf32.em: For SEC_EXCLUDE sections, ensure that
3843         output_section is set non-NULL.
3845         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Return
3846         `true' for SEC_EXCLUDE sections so that the generic code doesn't
3847         needlessly create an output_section_statement.  Treat a correctly
3848         named output_section_statement with NULL bfd_section as compatible.
3850 2001-08-13  Hans-Peter Nilsson  <hp@bitrange.com>
3852         * emultempl/generic.em: Support EXTRA_EM_FILE.
3853         (ld_${EMULATION_NAME}_emulation): Support emulation parameters
3854         LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
3855         LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
3856         LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
3857         LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
3858         LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
3859         LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
3860         LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
3861         LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
3862         LDEMUL_FIND_POTENTIAL_LIBRARIES.
3864 2001-08-12  Richard Henderson  <rth@redhat.com>
3866         * scripttempl/elf.sc, scripttempl/elfd30v.sc,
3867         scripttempl/elfm68hc11.sc, scripttempl/elfm68hc12.sc,
3868         scripttempl/v850.sc: Keep .jcr data.
3870 2001-08-12  H.J. Lu  <hjl@gnu.org>
3871             Andrew Haley  <aph@cambridge.redhat.com>
3872             Nick Clifton  <nickc@redhat.com>
3874         * ldgram.y (had_script): Change name to saved_script_handle.
3875         Change type to file handle.
3876         * ld.h (had_script): Rename and retype.
3877         * ldfile.c (ldfile_open_command_file): Save the file handle
3878         used in saved_script_handle.
3879         * lexsup.c (parse_args): Do not allow -c option to alter
3880         saved_script_handle.
3881         * ldmain.c (main): Print out the linker script used if
3882         --verbose is given.  Check saved_script_handle to obtain the
3883         external linker script used, or if NULL, dump the builtin
3884         script.
3885         * ld.texinfo: Document that --verbose now dumps the linker
3886         script used, regardless of whether it was an internal or an
3887         external script.
3889 2001-08-10  Andreas Jaeger  <aj@suse.de>
3891         * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
3892         to build warnings.
3893         * configure: Regenerate.
3895 2001-08-09  Alan Modra  <amodra@bigpond.net.au>
3897         * emultempl/elf32.em (output_prev_sec_find): Add missing prototype.
3899         * scripttempl/elf.sc: Move non-text .dynamic section before
3900         .plt/.got/.sdata* group.
3901         (OTHER_GOT_SECTIONS): Move to immediately after .got.
3902         (OTHER_SDATA_SECTIONS): Add.
3903         * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than
3904         OTHER_GOT_SECTIONS.
3905         * emulparams/crislinux.sh: Likewise.
3906         * emulparams/elf32b4300.sh: Likewise.
3907         * emulparams/elf32bmip.sh: Likewise.
3908         * emulparams/elf32bmipn32.sh: Likewise.
3909         * emulparams/elf32bsmip.sh: Likewise.
3910         * emulparams/elf32btsmip.sh: Likewise.
3911         * emulparams/elf32ebmip.sh: Likewise.
3912         * emulparams/elf32elmip.sh: Likewise.
3913         * emulparams/elf32l4300.sh: Likewise.
3914         * emulparams/elf32lmip.sh: Likewise.
3915         * emulparams/elf32lsmip.sh: Likewise.
3916         * emulparams/elf32ltsmip.sh: Likewise.
3917         * emulparams/elf64bmip.sh: Likewise.
3918         * emulparams/elf64btsmip.sh: Likewise.
3919         * emulparams/elf64ltsmip.sh: Likewise.
3921 2001-08-08  Alan Modra  <amodra@bigpond.net.au>
3923         * genscripts.sh: Source the emulparams script before each output
3924         script is generated so that variables like `RELOCATING' may affect
3925         variables defined in the emulparams script.
3927 2001-08-04  Alan Modra  <amodra@bigpond.net.au>
3929         * emultempl/aix.em: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this
3930         order.
3932         * emultempl/beos.em (sort_sections): Modify for 2001-08-03 change,
3933         ie. iterate over wild_statement.section_list.
3934         (gld${EMULATION_NAME}_place_orphan): Likewise.
3936 2001-08-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
3938         * scripttempl/elfm68hc12.sc (FINISH_CODE, FINISH_RELOC): New to handle
3939         .fini[0-4] sections used by _exit
3940         (CTOR, DTOR): Export ctor/dtor symbols; move them to ROM.
3941         (*.text,*.data,*.bss): Take into account .text.*, .data.*, .bss.*.
3942         * scripttempl/elfm68hc11.sc: Likewise.
3944 2001-08-03  H.J. Lu  <hjl@gnu.org>
3946         * emultempl/beos.em (init): Add the missing initialization.
3948 2001-08-03  Alan Modra  <amodra@bigpond.net.au>
3950         * ld.texinfo (Input Section Basics): Clarify ordering of output
3951         sections.
3952         * ldlang.c (callback_t): Add wildcard_list param.
3953         (walk_wild_section): Remove "section" param.  Rewrite for
3954         lang_wild_statement_type change.  Remove unique_section_p test.
3955         (walk_wild_file): Remove "section" param.
3956         (walk_wild): Remove "section" and "file" params.
3957         (lang_gc_wild): Likewise.
3958         (wild): Likewise.  Modify for lang_wild_statement_type change.
3959         (wild_sort): Likewise.  Add "sec" param.
3960         (gc_section_callback): Likewise.
3961         (output_section_callback): Likewise.  Do unique_section_p test.
3962         (map_input_to_output_sections): Modify call to wild.
3963         (lang_gc_sections_1): Likewise.
3964         (print_wild_statement): Modify for lang_wild_statement_type
3965         change.
3966         (lang_add_wild): Replace filename, filenames_sorted param with
3967         filespec.  Replace section_name, sections_sorted,
3968         exclude_filename_list with section_list.
3969         * ldlang.h (lang_add_wild): Here too.
3970         (lang_wild_statement_type): Replace section_name, sections_sorted,
3971         and exclude_filename_list with section_list.
3972         * ldgram.y (current_file): Delete.
3973         (%union): Add wildcard_list.
3974         (file_NAME_list): Set type to wildcard_list.  Build a linked list
3975         rather than calling lang_add_wild for each entry.
3976         (input_section_spec_no_keep): Call lang_add_wild here instead.
3977         * ld.h (struct wildcard_list): Declare.
3978         * mri.c (mri_draw_tree): Modify to suit new lang_add_wild.
3980 2001-08-02  Charles Wilson  <cwilson@ece.gatech.edu>
3982         * ldmain.c (main): initialize link_info.pei386_auto_import
3983         * pe-dll.c: new tables for auto-export filtering
3984         (auto_export): change API, pass abfd for contextual filtering.
3985         Loop thru tables of excluded symbols instead of comparing
3986         "by hand".
3988 2001-08-02  Paul Sokolovsky  <paul.sokolovsky@technologist.com>
3990         * pe-dll.c: new variable pe_dll_enable_extra_debug. New
3991         static variable current_sec (static struct sec *). Add
3992         forward declaration for add_bfd_to_link.
3993         (process_def_file): Don't export undefined symbols. Do not
3994         export symbols starting with  "_imp__".  Call auto_export()
3995         with new API.
3996         (pe_walk_relocs_of_symbol): New function.
3997         (generate_reloc): add optional extra debugging
3998         (pe_dll_generate_def_file): eliminate extraneous initial blank
3999         line in output
4000         (make_one): enlarge symtab to make room for __nm__ symbols
4001         (DATA auto-import support).
4002         (make_singleton_name_thunk): New function.
4003         (make_import_fixup_mark): New function.
4004         (make_import_fixup_entry): New function.
4005         (pe_create_import_fixup): New function.
4006         (add_bfd_to_link): Specify that 'name' argument is a CONST
4007         char *.
4008         * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
4009         declare new functions pe_walk_relocs_of_symbol and
4010         pe_create_import_fixup.
4011         * emultempl/pe.em: add new options --enable-auto-import,
4012         --disable-auto-import, and --enable-extra-pe-debug.
4013         (make_import_fixup): New function.
4014         (pe_find_data_imports): New function.
4015         (pr_sym): New function.
4016         (gld_${EMULATION_NAME}_after_open): Add optional extra pe
4017         debugging. Call pe_find_data_imports.  Mark .idata as DATA, not
4018         CODE.
4020 2001-08-02  Charles Wilson  <cwilson@ece.gatech.edu>
4022         * ld.texinfo: add additional documentation for
4023         --export-all-symbols.  Document --out-implib,
4024         --enable-auto-image-base, --disable-auto-image-base,
4025         --dll-search-prefix, --enable-auto-import, and
4026         --disable-auto-import.
4027         * ldint.texinfo: Add detailed documentation on auto-import
4028         implementation.
4030 2001-07-30  Nick Clifton  <nickc@cambridge.redhat.com>
4032         * ld.texinfo (Simple Assignments): Fix computation in SECTIONS
4033         example.
4035 2001-07-24  Alan Modra  <amodra@bigpond.net.au>
4037         * Makefile.am: Update dependencies with "make dep-am".
4038         * Makefile.in: Regenerate
4040 2001-07-23  Alan Modra  <amodra@bigpond.net.au>
4042         * ldcref.c (check_section_sym_xref): New function.
4043         (check_nocrossrefs): Call it.
4044         (check_nocrossref): Interate over h->refs here instead of..
4045         (check_refs): ..here.  Pass in the symbol name, section, and bfd
4046         rather than hash_entry pointers.
4047         (struct check_refs_info): Keep symbol name rather than hash entry.
4048         Remove "same".
4049         (check_reloc_refs): Tweak for above changes in check_refs_info.
4050         Only report references to section syms when symname is NULL to
4051         prevent duplicate messages for the same reloc.
4053 2001-07-19  Nick Clifton  <nickc@cambridge.redhat.com>
4055         * ldexp.c (exp_print_tree): Use stderr if config.map_file is not
4056         available.  Do not print NULL trees.
4057         (exp_print_token): Print unknown tokens with values > 126 as
4058         decimal values not ASCII characters.
4060         * ldlang.c (lang_leave_overlay): If a region is specified assign
4061         it to all sections inside the overlay unless they have been
4062         assigned to the own, non-default, memory region.
4064         * README: Add header for consistency with other README files.
4066 2001-07-14  H.J. Lu  <hjl@gnu.org>
4068         * emultempl/elf32.em (output_prev_sec_find): Never return
4069         bfd_abs_section_ptr, bfd_com_section_ptr nor
4070         bfd_und_section_ptr.
4072 2001-07-14  Nick Clifton  <nickc@cambridge.redhat.com>
4074         * Makefile.am (em32relf.c): Change dependency from generic.em to
4075         elf32.em.
4076         * Makefile.in: Regenerate.
4078 2001-07-14  matthew green  <mrg@eterna.com.au>
4080         * configure.tgt (i386-*-netbsdelf*): New target.
4081         (i386-*-netbsd*): Set targ_extra_emuls to `elf_i386'
4083 2001-07-13  Jakub Jelinek  <jakub@redhat.com>
4085         * emultempl/elf32.em (output_prev_sec_find): New.
4086         (place_orphan): Use it.
4088 2001-07-11  H.J. Lu  <hjl@gnu.org>
4090         * ldmain.c (main): Fix typos in the last change.
4092 2001-07-11  Jakub Jelinek  <jakub@redhat.com>
4094         * ldmain.c (main): Disallow -F and -f without -shared.
4096 2001-07-11  Nick Clifton  <nickc@cambridge.redhat.com>
4098         * emultempl/pe.em (after_open): Check for the output_bfd not
4099         having any coff_data structure allocated to it.
4101 2001-07-09  David O'Brien  <obrien@FreeBSD.org>
4103         * emultempl/elf32.em: Do not assuming that contents of the buffer
4104         returned from basename function will remain unchanged accross other
4105         function calls.
4107 2001-07-03  H.J. Lu  <hjl@gnu.org>
4109         * scripttempl/elf.sc (DYNAMIC_PAD): Revert the change made on
4110         2001-07-03. It creates dynamic entries even for static binaries.
4112 2001-07-03  Jakub Jelinek  <jakub@redhat.com>
4114         * scripttempl/elf.sc (DYNAMIC_PAD): New variable.
4115         (DYNAMIC): Use it to reserve few dynamic entries for
4116         post-linking tools.
4118 2001-06-27  Alan Modra  <amodra@bigpond.net.au>
4120         * emulparams/hppa64linux.sh: New file.
4121         * configure.tgt: hppa*64*-*-linux* uses hppa64linux.sh
4122         * Makefile.am (ALL_64_EMULATIONS): Add ehppa64linux.o
4123         (ehppa64linux.c): Add rule to make it.
4124         Run "make dep-am".
4125         * Makefile.in: Regenerate.
4127 2001-06-21  Hans-Peter Nilsson  <hp@axis.com>
4129         * ld.texinfo (Options, -r): Mention restrictions when using
4130         different object formats.
4132 2001-06-19  Hans-Peter Nilsson  <hp@axis.com>
4134         * ldlang.c (lang_check): Emit fatal error if relocatable link
4135         between different object flavours with relocations in input.
4137 2001-06-19  H.J. Lu  <hjl@gnu.org>
4139         * ld.texinfo (-E, --export-dynamic): Mention --version-script.
4140         (--version-script): Mention the language support.
4142 2001-06-19  H.J. Lu <hjl@gnu.org>
4144         * ldlang.c (lang_check): Revert the change mode on 2001-06-15.
4146 2001-06-18  H.J. Lu <hjl@gnu.org>
4148         * Makefile.am (ld.1): Remove the prefix `$(srcdir)/'.
4149         (diststuff): Add $(MANS).
4150         * Makefile.in: Regenerated.
4152         * ld.1: Removed.
4154 2001-06-18  Hans-Peter Nilsson  <hp@axis.com>
4156         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
4157         Update for API change in bfd_elf${ELFSIZE}_size_dynamic_sections.
4158         * mpw-elfmips.c (gldelf32ebmip_before_allocation): Ditto.
4159         * ld.h (args_type): Remove member export_dynamic.  All users
4160         changed to use struct bfd_link_info member.
4162         * Makefile.am (ecriself.c, ed10velf.c, ei386moss.c): Depend on
4163         $(srcdir)/emultempl/elf32.em, not $(srcdir)/emultempl/generic.em.
4164         * Makefile.in: Regenerate.
4166 2001-06-18  H.J. Lu  <hjl@gnu.org>
4168         * ldlang.c (init_os): Add the newline to the einfo call.
4169         (lang_check): Likewise.
4170         (lang_do_version_exports_section): Likewise.
4172 2001-06-15  H.J. Lu  <hjl@gnu.org>
4174         * lexsup.c (parse_args); Save optind to report unrecognized
4175         option.
4177 2001-06-15  Hans-Peter Nilsson  <hp@axis.com>
4179         * ldlang.c (lang_check): Emit fatal error if relocatable link
4180         between different object flavours.
4182         * lexsup.c (parse_args) <case OPTION_EXPORT_DYNAMIC, case 'E'>:
4183         Set new link_info member export_dynamic.
4184         * ldmain.c (main): Initialize new link_info member export_dynamic.
4186 2001-06-12  Nick Clifton  <nickc@cambridge.redhat.com>
4188         * ldlang.c (walk_wild): Only call walk_wild_file if
4189         lookup_name returns something.
4190         (lookup_name): If load_symbols fails, return NULL.
4191         (load_symbols): Change to a boolean function.
4192         (open_input_bfds): If load_symbols fails then do not make the
4193         executable.
4195 2001-06-08  Alan Modra  <amodra@bigpond.net.au>
4197         * ldlang.c (record_bfd_errors): Remove.
4199         * emultempl/aix.em: Fix copyright dates.
4201 2001-06-07  Andreas Jaeger  <aj@suse.de>
4203         * elf_x86_64.sh (NONPAGED_TEXT_START_ADDR): Increase.
4204         (TEXT_START_ADDR): Likewise.
4206 2001-06-06  Martin Schwidefsky <schwidefsky@de.ibm.com>
4208         * configure.host: Set HOSTING_CRT0/HOSTING_LIBS correctly for s/390.
4210 2001-06-05  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
4212         * emultempl/pe.em (init): Reduce default stack reserve to 0x200000.
4214 2001-05-31  H.J. Lu  <hjl@gnu.org>
4216         * ldlang.c (open_input_bfds): Don't change the bfd error
4217         handler whilst loading symbols.
4219 2001-05-28  Nick Clifton  <nickc@cambridge.redhat.com>
4221         * configure.tgt: Remove i370-mvs architecture, it is not currently
4222         supported.
4224 2001-05-25  H.J. Lu  <hjl@gnu.org>
4226         * emulparams/ppcmacos.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
4227         like emulparams/aixppc.sh.
4229 2001-05-25  H.J. Lu  <hjl@gnu.org>
4231         * emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Move
4232         setting of output_filename after bfd_scan_arch.
4233         * emultempl/pe.em: Likewise.
4235 2001-05-25  H.J. Lu  <hjl@gnu.org>
4237         * emulparams/aixrs6.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
4238         like emulparams/aixppc.sh.
4240         * emultempl/aix.em (sc): Use ${srcdir}/emultempl/ostring.sed
4241         instead of ${srcdir}/emultempl/stringify.sed.
4243 2001-05-25  Timothy Wall  <twall@oculustech.com>
4245         * emulparams/elf64_aix.sh: Change settings to match IBM linker
4246         output.
4248 2001-05-25  Alan Modra  <amodra@one.net.au>
4250         * configure.host: Replace linuxoldld with linux*oldld.
4251         * configure.tgt: Likewise.
4253 2001-05-24  H.J. Lu  <hjl@gnu.org>
4255         * emultempl/stringify.sed: Removed again.
4257 2001-05-24  H.J. Lu  <hjl@gnu.org>
4259         * emultempl/aix.em (OUTPUT_ARCH): Defined.
4260         (gld${EMULATION_NAME}_before_parse): Initialize
4261         ldfile_output_architecture, ldfile_output_machine and
4262         ldfile_output_machine_name from ${OUTPUT_ARCH} if possible.
4263         * emultempl/beos.em: Likewise.
4264         * emultempl/elf32.em: Likewise.
4265         * emultempl/linux.em: Likewise.
4266         * emultempl/mipsecoff.em: Likewise.
4267         * emultempl/pe.em: Likewise.
4268         * emultempl/sunos.em: Likewise.
4270 2001-05-24 Tom Rix <trix@redhat.com>
4272         * emultempl/aix.em : (gld${EMULATION_NAME}_read_file)
4273         udate import file format.
4274         (change_symbol_mode) New, same
4275         (is_syscall) New, same
4276         * emulparams/aixppc.sh : add SYSCALL_MASK and SYMBOL_MODE_MASK
4277         * emulparams/aixppc64.sh : same
4278         * emulparams/aixrs6.sh : same
4279         * emulparams/ppcmacos.sh : same
4280         * emultempl/aix.em : use strtoull to parse options
4281         * Makefile.am : add eaixppc64 emulation for xcoff64
4282         * Makefile.in : same
4283         * configure.tgt : same
4285         * scripttempl/aix.sc : default text section offset to 0x10000000
4286         default data section offset to 0x20000000
4287         add .sv3264 and .sv64 pseudo sections
4288         loader and debug sections use the currect section offset.
4290         * emultempl/aix.em : Add xcoff64 support
4291         Add -binitfini support
4292         (gld${EMULATION_NAME}_before_parse) -binitfini
4293         (gld${EMULATION_NAME}_parse_args) same
4294         (gld${EMULATION_NAME}_before_allocation) format change for special
4295         sections
4297         * emulparams/aixppc64.sh : New file for xcoff64 support
4299 2001-05-23  Alexandre Oliva  <aoliva@redhat.com>
4301         * emultempl/elf32.em (ELF_INTERPRETER_SET_DEFAULT): Use this new
4302         variable to avoid non-portable shell construct.
4304 2001-05-23  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4306         * ldmain.c (get_emulation): Add -mips5 command line argument.
4308 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
4310         * emulparams/elf_i386_ldso.sh: New, copied from elf_i386.sh.
4311         (ELF_INTERPRETER_NAME): Define it.
4312         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
4313         it.
4314         * configure.tgt (targ_emul, targ_extra_emuls)
4315         [i[3456]86-*-solaris2*, i[3456]86-*-solaris*]: Use elf_i386_ldso
4316         as primary, elf_i386 as extra.
4317         * Makefile.am (ALL_EMULATIONS): Added eelf_i386_ldso.o.
4318         (eelf_i386_ldso.c): New rule.
4319         * Makefile.in: Rebuilt.
4321 2001-05-22  Nick Clifton  <nickc@redhat.com>
4323         * lexsup.c (ld_options): Allow -I to be an alias for
4324         --dynamic-linker.  This is for Solaris compatability.
4325         * ld.texinfo: Document that -I can be used.
4326         * ld.1: Regenerate.
4328 2001-05-16  Alan Modra  <amodra@one.net.au>
4330         * ldlang.c (wild_doit): Use linker_has_input to reliably determine
4331         whether an input section is the first one assigned to an output
4332         section.
4333         Assorted formatting fixes.
4335 2001-05-14  DJ Delorie  <dj@delorie.com>
4337         * Makefile.am (ld.dvi): Search bfd/doc for texinfo files.
4338         * Makefile.in: Ditto.
4340 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
4342         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
4343         .gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
4344         output sections.
4345         * emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
4347 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
4349         * ldlang.c (lang_process): Call bfd_merge_sections.
4351 2001-05-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
4353         * ldgram.y: Fix typo.
4355 2001-05-03  H.J. Lu  <hjl@gnu.org>
4357         * emultempl/elf32.em: Include "libiberty.h".
4358         (gld${EMULATION_NAME}_vercheck): Call basename () to get the
4359         basename of the bfd filename.
4360         (gld${EMULATION_NAME}_stat_needed): Likewise.
4361         (gld${EMULATION_NAME}_try_needed): Likewise.
4362         (gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
4364 2001-05-02  H.J. Lu  <hjl@gnu.org>
4366         * emultempl/pe.em: Include <ctype.h>.
4368 2001-05-02  Johan Rydberg  <jrydberg@opencores.org>
4370         * emulparams/elf32openrisc.sh: New file.
4372         * Makefile.am: Add OpenRISC target.
4373         * Makefile.in: Regenerated.
4375         * configure.tgt: Add openrisc-*-* mapping.
4377 2001-05-02  Nick Clifton  <nickc@redhat.com>
4379         * emultempl/aix.em: Replace buystring with xstrdup.
4380         * emultempl/beos.em: Replace buystring with xstrdup.
4382 2001-05-02  H.J. Lu  <hjl@gnu.org>
4384         * ldfile.c: Include "libiberty.h".
4385         * ldlex.l: Likewise.
4387         * ldmisc.c (buystring): Removed.
4388         * ldmisc.h: Likewise.
4390         * ldfile.c: Replace buystring with xstrdup.
4391         * ldlang.c: Likewise.
4392         * ldlex.l: Likewise.
4393         * ldmain.c: Likewise.
4394         * ldmisc.c: Likewise.
4395         * lexsup.c: Likewise.
4396         * mpw-eppcmac.c: Likewise.
4398 2001-04-30  Andreas Jaeger  <aj@suse.de>
4400         * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value.
4402 2001-04-28  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
4404         * ldlang.c (load_symbols): Give emulation a chance
4405         to process unrecognized file before fatal error is
4406         reported, not after.
4408 2001-04-27  Sean McNeil <sean@mcneil.com>
4410         * configure.tgt: Add arm-vxworks target.
4411         * scripttempl/armcoff.sc: Support .text or .data as a section name
4412         prefix.
4413         Define _etext.
4415 2001-04-13  J.T. Conklin  <jtc@redback.com>
4417         * ld.texinfo: Document --fatal-warnings.
4418         * ld.1: Regenerate.
4420         * ldmisc.c (vfinfo): Set flag to inhibit making executable if
4421         warnings have been turned into errors.
4422         * lexsup.c (OPTION_WARN_FATAL): Define.
4423         (ld_options): Entry for --fatal-warnings.
4424         (parse_args): Handle OPTION_WARN_FATAL.
4425         * ld.h (ld_config_type): Add fatal_warnings field.
4427 2001-04-13  Jakub Jelinek  <jakub@redhat.com>
4429         * ldmain.c (main): Default to discard_sec_merge.
4430         * lexsup.c (OPTION_DISCARD_NONE): Define.
4431         (ld_options): Add --discard-none.
4432         (parse_args): Handle OPTION_DISCARD_NONE.
4433         * ldlang.c (wild_doit): SEC_MERGE should be set in the output
4434         section only if SEC_MERGE and SEC_STRINGS flags and entsize of
4435         all its input sections match.
4437 2001-04-05  Steven J. Hill  <sjhill@cotw.com>
4439         * Makefile.am (ALL_EMULATIONS): Add eelf32ltsmip.o.
4440         (ALL_64_EMULATIONS): Add eelf64btsmip.o and eelf64ltsmip.o.
4441         (eelf32ltsmip.c): New target.
4442         (eelf64btsmip.c): Likewise.
4443         (eelf64ltsmip.c): Likewise.
4444         * Makefile.in: Regenerated.
4446         * configure.tgt (mips*el-*-linux-gnu): Uses traditional MIPS
4447         target.
4448         (mips*-*-linux-gnu*): Likewise.
4450         * emulparams/elf32ltsmip.sh: New. Traditional little endian
4451         MIPS taget.
4452         * emulparams/elf64btsmip.sh: New. Traditional 64bit big endian
4453         target.
4454         * emulparams/elf64ltsmip.sh: New. Traditional 64bit little
4455         endian target.
4457 2001-04-05  Hans-Peter Nilsson  <hp@axis.com>
4459         * emulparams/criself.sh (EXECUTABLE_SYMBOLS): Cannot provide
4460         correct value of __Stext here.
4461         (TEXT_START_SYMBOLS): Define; always define __Stext, to start of
4462         .startup section.
4464         * emulparams/crislinux.sh: Remove FIXME.
4466 2001-04-02  Alan Modra  <alan@linuxcare.com.au>
4468         * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 64k.
4469         (TEXT_START_ADDR, TARGET_PAGE_SIZE): Likewise.
4471 2001-03-27  Hans-Peter Nilsson  <hp@axis.com>
4473         * configure.tgt (cris-*-*): Change default emulation to criself.
4474         (cris-*-*aout*): New rule.
4476 2001-03-27  Matthew Wilcox  <willy@ldl.fc.hp.com>
4478         * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 0x4000.
4479         (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
4481 2001-03-26  Andreas Jaeger  <aj@suse.de>
4483         * ld.texinfo (Overview): Fix syntax in texi code.
4485 2001-03-25  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
4487         * ld.texinfo: Put @c man indications to generate the ld man page.
4488         When generating man, define all the variables.  Define SEEALSO
4489         and SYNOPSIS.  Re-organize some lines to avoid the cross references.
4490         * Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variables.
4491         (ld.1): Generate from ld.texinfo.
4492         * Makefile.in: Regenerate.
4494 2001-03-23  Mark Elbrecht <snowball3@bigfoot.com>
4496         * scripttempl/i386go32.sc: Support the GCC flags '-ffunction-sections'
4497         and '-fdata-sections'. Set the VMA of STABS sections to zero.
4499 2001-03-17  Ulrich Drepper  <drepper@redhat.com>
4501         * emultmpl/elf32.em (gld${EMULATION_NAME}_search_needed): If NAME
4502         is an absolute path look only for this file and not along the path.
4504 2001-03-17  Ulrich Drepper  <drepper@redhat.com>
4506         * emultempl/elf32.em (OPTION_GROUP): New macro.
4507         Add new option Bgroup to longopts.
4508         (gld*_parse_args): Handle GROUP_OPTION and recognize -z defs.
4509         (gld*_list_options): Add -Bgroup and -z defs.
4510         * ld.1: Document -Bgroup and -z defs.
4511         * ld.texinfo: Likewise.
4513 2001-03-07  Michael Meissner  <meissner@redhat.com>
4515         * scripttempl/elfd10v.sc (.rodata,.rodata1,.data1,.sdata): Deal
4516         with sections created by -fdata-sections.
4517         (.dynbss,.bss): Ditto.
4519 2001-03-05  Alan Modra  <alan@linuxcare.com.au>
4521         * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
4522         after_allocation_default, not gld..._before_allocation.
4524 2001-02-27  Alan Modra  <alan@linuxcare.com.au>
4526         * configure.in (BFD_VERSION): New.
4527         (AM_INIT_AUTOMAKE): Use $BFD_VERSION.
4528         * configure: Regenerate.
4529         * Makefile.am: Run "make dep-am"
4530         * Makefile.in: Regenerate.
4532 2001-02-26  Timothy Wall  <twall@cygnus.com>
4534         * emulparams/elf64_aix.sh: Add additional read-only sections;
4535         uncomment lines which are now required.
4537 2001-02-26  H.J. Lu  <hjl@gnu.org>
4539         * ldlang.c (open_input_bfds): Set the bfd error handler so
4540         that problems can be caught whilst loading symbols.
4541         (record_bfd_errors): New function: Report BFD errors and mark
4542         the executable output as being invalid.
4544 2001-02-22  Timothy Wall  <twall@cygnus.com>
4546         * configure.host: Add configuration for ia64-*-aix*.
4547         * Makefile.am (ALL_64_EMULATIONS): Add emulation for ia64-*-aix*.
4548         Add dependencies for eelf64_aix.c.
4549         * Makefile.in: Regenerate.
4550         * configure.tgt: Add ia64-*-aix* mapping.
4551         * emulparams/elf64_aix.sh: Add settings for elf64 on aix5.
4553 2001-02-20  H.J. Lu  <hjl@gnu.org>
4555         * ldfile.c (ldfile_open_file): Set entry->search_dirs_flag to
4556         false if we found the file.
4558 2001-02-18  David O'Brien  <obrien@FreeBSD.org>
4560         * configure.tgt: Add FreeBSD/Alpha, FreeBSD/x86-64, FreeBSD/ia64,
4561         FreeBSD/PowerPC, FreeBSD/arm, and FreeBSD/sparc64 entries.
4563 2001-02-18  lars brinkhoff  <lars@nocrew.org>
4565         * Makefile.am: Add PDP-11 target.
4566         * configure.tgt: Likewise.
4567         * emulparams/pdp11.sh: New file.
4569 2001-02-17  David O'Brien  <obrien@FreeBSD.org>
4571         * configure.host: Add a generic FreeBSD configuration entry such that
4572         all [modern] FreeBSD systems on all platforms will look the same.
4574 2001-02-14  H.J. Lu  <hjl@gnu.org>
4576         * configure.tgt: Remove mention of earmelf_linux26.
4578 2001-02-13  Richard Henderson  <rth@redhat.com>
4580         * emulparams/elf64_ia64.sh (OTHER_GOT_SYMBOLS): Remove.
4582 2001-02-13  H.J. Lu  <hjl@gnu.org>
4584         * ldexp.h (node_type): Add etree_provided.
4585         * ldexp.c (exp_fold_tree): Handle etree_provided. Set the node
4586         type to etree_provided if defined by PROVIDE. Allow updating
4587         for etree_provided.
4588         (exp_print_tree): Handle etree_provided.
4589         * mpw-elfmips.c (gldelf32ebmip_find_exp_assignment): Handle
4590         etree_provided.
4592 2001-02-09  David Mosberger  <davidm@hpl.hp.com>
4594         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add
4595         .IA_64.unwind.* pattern to unwind table section and
4596         .IA_64.unwind_info* pattern to unwind info section.
4598 2001-02-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4600         * Makefile.am: Add linux target for S/390.
4601         * Makefile.in: Likewise.
4602         * configure.host: Likewise.
4603         * configure.tgt: Likewise.
4604         * emulparams/elf64_s390.sh: New file.
4605         * emulparams/elf_s390.sh: New file.
4607 2001-02-09  Jakub Jelinek  <jakub@redhat.com>
4609         * configure.tgt (sparc64-*-linux-gnu*): Add elf32_sparc into
4610         targ_extra_libpath.
4611         (sparc-*-linux-gnu*): Add elf64_sparc into targ_extra_libpath.
4613 2001-02-06  Philip Blundell  <philb@gnu.org>
4615         * Makefile.am: Remove mention of earmelf_linux26.
4616         * Makefile.in: Regenerate.
4618 2001-02-04  Philip Blundell  <philb@gnu.org>
4620         * emulparams/armelf_linux.sh (TEXT_START_ADDR): Set to 0x8000.
4621         * emulparams/armelf_linux26.sh: Delete.
4622         * configure.tgt: Remove mention of armelf_linux26 emulation.
4624 2001-02-01  Nick Clifton  <nickc@redhat.com>
4626         * ld.1: Replace occurances of -oformat with --oformat.
4628 2001-01-25  Jim Driftmyer <jdrift@stny.rr.com>
4630         * ldlang.c (lang_leave_overlay): Don't set lma_region when
4631         load_base is specified.
4633 2001-01-24  Hans-Peter Nilsson  <hp@axis.com>
4635         * emultempl/elf32.em: Correct spelling in comments and listed
4636         options.
4638 2001-01-23  Alan Modra  <alan@linuxcare.com.au>
4640         * ldlang.c (lang_leave_overlay): Only set lma_region from the
4641         default for the first section of a group of overlay sections.
4643 2001-01-22  Alan Modra  <alan@linuxcare.com.au>
4645         * Makefile.am (GENSCRIPTS): Pass exec_prefix.
4646         * Makefile.in: Regenerate.
4647         * genscripts.sh: Use exec_prefix parameter to specify tool lib.
4648         Check for null tool_dir.
4650 2001-01-16  Jim Wilson  <wilson@redhat.com>
4652         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add IA_64.unwind
4653         and IA_64.unwind.info.
4655 2001-01-16  H.J. Lu  <hjl@gnu.org>
4657         * ldlang.c (lang_check): Merge the private data only if the
4658         input file has contents.
4660 2001-01-14  Alan Modra  <alan@linuxcare.com.au>
4662         * emulparams/hppalinux.sh (OUTPUT_FORMAT): Set to elf32-hppa-linux.
4664         * emultempl/hppaelf.em (hppaelf_after_parse): New function,
4665         enabling search for libmilli.  On a relocatable link, make .text
4666         sections unique.
4667         (LDEMUL_AFTER_PARSE): Define.
4668         (hppaelf_finish): Correct spelling of relocatable in comments.
4670         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
4671         rummage through the script for sections on the unique list.
4672         Correct length of strncmp for ".note".
4673         (gld${EMULATION_NAME}_check_needed): Rearrange function.
4675         * ldlang.c (unique_section_list): New var.
4676         (unique_section_p): New function.
4677         (walk_wild_section): Don't match sections on unique_section_list.
4678         (lang_add_unique): New function.
4679         Correct spelling of relocatable in comments.
4681         * ldlang.h (struct unique_sections): Declare.
4682         (unique_section_list): Declare.
4683         (unique_section_p): Declare.
4684         (lang_add_unique): Declare.
4686         * lexsup.c (ld_options): Allow --unique to take an optional arg.
4687         (parse_args [OPTION_UNIQUE]): Call lang_add_unique.
4689         * ld.texinfo (--unique): Update.
4691 2001-01-13  Nick Clifton  <nickc@redhat.com>
4693         * lexsup.c (parse_args): Remove spurious white space.
4695 2001-01-12  Nick Clifton  <nickc@redhat.com>
4697         * lexsup.c (parse_args): Update copyright date.
4699 2001-01-12  Philip Blundell  <pb@futuretv.com>
4701         * configure.host: Set HOSTING_LIBS appropriately for ix86-cygwin.
4703 2001-01-10  Kazu Hirata  <kazu@hxi.com>
4705         * scripttempl/h8300.sc: Fix formatting.  Fix a comment typo.
4706         * scripttempl/h8300h.sc: Fix formatting.
4707         * scripttempl/h8300s.sc: Likewise.
4708         * scripttempl/h8500.sc: Likewise.
4709         * scripttempl/h8500b.sc: Likewise.
4710         * scripttempl/h8500c.sc: Likewise.
4711         * scripttempl/h8500m.sc: Likewise.
4712         * scripttempl/h8500s.sc: Likewise.
4714 2000-01-07  David O'Brien  <obrien@BSDi.com>
4716         * emultempl/elf32.em: Only perform Linux ld hints processing when
4717         targeting Linux.
4719 2001-01-07  Philip Blundell  <philb@gnu.org>
4721         * ld.texinfo (Bug Reporting): Update email address for reports.
4723 2000-12-31  Nick Clifton  <nickc@redhat.com>
4725         * lexsup.c (parse_args): Set opterr to 0 and detect unparsed long
4726         options by checking for a return value of '?' not -1.
4728 2000-12-28  Nick Clifton  <nickc@redhat.com>
4730         * lexsup.c (struct ld_option): Add new enum value:
4731         EXACTLY_TWO_DASHES.
4732         (ld_options[]): Change -omagic, -output and -oformat options
4733         to be EXACTLY_TWO_DASHES.
4734         (OUTPUT_COUNT): Use ARRAY_SIZE.
4735         (parse_args): Change parameter 'argc' to unsigned.
4736         Place EXACTLY_TWO_DASHES options into new really_longopts
4737         array.
4738         If getopt_long_only fails, try calling getopt_long using the
4739         really_longopts array.
4740         (help): Print a double dash for both EXACTLY_TWO_DASHES and
4741         TWO_DASHES options.
4743         * ldlex.h: Fix prototype of parse_args.
4745         * ld.texinfo: Document that long options starting with 'o'
4746         must be preceeded by two dashes.  Change example of a single
4747         dashed long option from -oformat to -trace-symbol.
4749 2000-12-26  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
4751         * emultempl/pe.em (OPTION_NO_DEFAULT_EXCLUDES): Define.
4752         (longopts[]): New --no-default-excludes option.
4753         (gld_${EMULATION_NAME}_list_options): Document.
4754         (gld_${EMULATION_NAME}_parse_args): Handle.
4756 2000-12-13  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
4758         * ldlang.c (new_stat): Revert the last beautification with "innocent"
4759         whitespace, it breaks the K&R C preprocessor.
4761 2000-12-11  DJ Delorie  <dj@redhat.com>
4763         * ld.texinfo: Add notes about --whole-archive and gcc.
4765 2000-11-18  Fred Fish  <fnf@be.com>
4767         * lexsup.c (OPTION_ALLOW_SHLIB_UNDEFINED): Define.
4768         (ld_options): Entry for --allow-shlib-undefined.
4769         (parse_args): Handle OPTION_ALLOW_SHLIB_UNDEFINED.
4770         * ldmain.c (main): Initialize link_info.allow_shlib_undefined
4771         to false.
4772         * ld.texinfo: Document new command line switch.
4774 2000-12-12  Geoffrey Keating  <geoffk@redhat.com>
4776         * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS):
4777         .fixup is actually read/write.
4778         * emulparams/elf32lppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
4779         * emulparams/elf32ppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
4780         * emulparams/elf32lppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
4782 2000-12-11  Jan Hubicka  <jh@suse.cz>
4784         * NEWS: Add note about x86_64 architecture.
4786 2000-12-06  Mark Elbrecht  <snowball3@bigfoot.com>
4788         * scripttempl/i386go32.sc: Use PROVIDE with _etext, _edata, _end.
4789         Set DWARF2 sections to a VMA of zero.
4791 2000-12-01  Joel Sherrill  <joel@OARcorp.com>
4793         * configure.tgt (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
4794         New targets.
4795         (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
4796         (sparc*-*-rtems*): Switched from a.out to ELF.
4798 2000-11-30  Jan Hubicka  <jh@suse.cz>
4800         * Makefile.am (ALL_EMULATIONS): Add eelf_x86_64.o
4801         (eelf_x86_64.c): New.
4802         * Makefile.in: Regenerate.
4803         * configure.tgt: Add support for x86_64-*-linux-gnu*.
4804         * emulparams/elf_x86_64.sh: New.
4806 2000-11-30  Hans-Peter Nilsson  <hp@axis.com>
4808         * emulparams/crislinux.sh (ENTRY): Change back to _start.
4809         (TEXT_START_SYMBOLS): Remove conditional setting of __start.
4811         * scripttempl/crisaout.sc: Change all RELOCATING not related to
4812         merging non-a.out sections into CONSTRUCTING.
4814 2000-11-28  Nick Clifton  <nickc@redhat.com>
4816         * ld.1 (COPYING): Mention that the GNU Free Documentation
4817         License is present in the sources, but not the output, and
4818         also available from the GNU website.
4819         (GNU Free Documentation License): Comment out this section.
4821 2000-11-28  David O'Brien  <obrien@dragon.nuxi.com>
4823         * emulparams/elf64alpha.sh (ENTRY): Remove leading underscore as ELF
4824         does not use them.
4826 2000-11-25  David O'Brien  <obrien@FreeBSD.org>
4828         * ld.1: Remove old date so it does not give the impression the manpage
4829         is way out of date.
4831 2000-11-24  Nick Clifton  <nickc@redhat.com>
4833         * configure.tgt (xscale-coff): Add target.
4834         (xscale-elf): Add target.
4836 2000-11-24  Fred Fish  <fnf@be.com>
4838         * ldmain.c (main): Remove redundant init of config.make_executable
4839         to true.
4841 2000-11-15  Richard Henderson  <rth@redhat.com>
4843         * emulparams/elf64alpha.sh (MAXPAGESIZE): Typo -- 64k, not 1M.
4845 2000-11-14  Kazu Hirata  <kazu@hxi.com>
4847         * scripttempl/h8300.sc: Fix formatting.
4848         * scripttempl/h8300h.sc: Likewise.
4849         * scripttempl/h8300s.sc: Likewise.
4851 2000-11-14  Denis Chertykov  <denisc@overta.ru>
4853         * scripttempl/elf32avr.sc: Fix bug in .eeprom segment.
4855 2000-11-09  Philip Blundell  <pb@futuretv.com>
4857         * emultempl/pe.em: Define ___start_SECNAME and ___stop_SECNAME
4858         around orphan sections whose names can be represented in C.
4860 2000-11-07  Jim Wilson  <wilson@redhat.com>
4862         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): New local
4863         hold_sdata.  If SEC_SMALL_DATA set, set place to hold_sdata.
4865 2000-11-06  Nick Clifton  <nickc@redhat.com>
4867         * ld.texinfo: Add GNU Free Documentation License.
4868         * ldint.texinfo: Add GNU Free Documentation License.
4869         * ld.1: Add GNU Free Documentation License.
4871 2000-11-05  Alan Modra  <alan@linuxcare.com.au>
4873         * ldlex.l (yy_create_string_buffer): Init yy_is_our_buffer,
4874         yy_is_interactive, yy_at_bol, and yy_fill_buffer.
4876         * Makefile.am (DISTCLEANFILES): Add stringify.sed.
4877         Move 2000-11-02 Makefile.in changes to this file.
4878         * Makefile.in: Regenerate.
4880 2000-11-03  Nick Clifton  <nickc@redhat.com>
4882         * scripttempl/h8300.sc: Use ${CONSTRUCTING...} to enclose
4883         constructors and destructors.
4884         * scripttempl/h8300h.sc: Ditto.
4885         * scripttempl/h8300s.sc: Ditto.
4886         * scripttempl/h8500.sc: Ditto.
4887         * scripttempl/h8500b.sc: Ditto.
4888         * scripttempl/h8500c.sc: Ditto.
4889         * scripttempl/h8500m.sc: Ditto.
4890         * scripttempl/h8500s.sc: Ditto.
4891         * scripttempl/v850.sc: Ditto.
4892         * scripttempl/w65.sc: Ditto.
4893         * scripttempl/z8000.sc: Ditto.
4895 2000-11-02  Per Lundberg  <plundis@chaosdev.org>
4897         * Makefile.in (e_i386_chaos.c): New rule.
4898         (ALL_EMULATIONS): Added e_i386_chaos.o.
4899         * emulparams/elf_i386_chaos.sh: New file.
4900         * configure.tgt: Recognise i[3456]86-chaosdev-storm-chaos.
4902 2000-10-20  Jakub Jelinek  <jakub@redhat.com>
4904         * emulparams/elf64_sparc.sh (TEXT_START_ADDR,
4905         NONPAGED_TEXT_START_ADDR): Set to 4GB for Solaris targets.
4906         Fix sed invocation, so that it coped with '/' in Solaris 64bit
4907         library path suffix.
4908         Based on patch by Andrew Macleod <amacleod@cygnus.com>.
4910 2000-10-18  Hans-Peter Nilsson  <hp@axis.com>
4912         * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32),
4913         for consecutive sections.
4915 2000-10-17  Chandrakala Chavva  <cchavva@redhat.com>
4917         * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific
4918         options.
4919         * ld.texinfo: Added notes about this new option.
4921 2000-10-16  Nick Clifton  <nickc@redhat.com>
4923         * emultempl/pe.em (_after_open): Add tests of return values from
4924         bfd functions.  Emit appropriate error messages if necessary.
4926 2000-10-13  Nick Clifton  <nickc@redhat.com>
4928         * emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
4929         local variables - they are not used, but leave in the call to
4930         bfd_canonicalize_symtab.
4931         (_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
4932         pe_dll_search_prefix.
4934 2000-10-12  Charles Wilson  <cwilson@ece.gatech.edu>
4936         * emultempl/pe.em (pe_dll_search_prefix): New variable,
4937         (longopts): New --dll-search-prefix option.
4938         (gld_${EMULATION_NAME}_list_options): Document.
4939         (gld_${EMULATION_NAME}_parse_args): Handle.
4940         (gld_${EMULATION_NAME}_open_dynamic_archive): When linking
4941         dynamically, search for a dll named '<prefix><basename>.dll'
4942         in preference to 'lib<basename>.dll' if --dll-search-prefix
4943         is specified.
4945 2000-10-12  Alan Modra  <alan@linuxcare.com.au>
4947         * ldlang.c (section_already_linked): Set kept_section instead of
4948         sec->comdat->sec.
4950 2000-10-10  Kazu Hirata  <kazu@hxi.com>
4952         * deffile.h: Fix formatting.
4953         * lexsup.c: Likewise.
4954         * mri.c: Likewise.
4956 2000-10-09  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
4958         * pe-dll.c (make_one): Do not generate code thunk for DATA
4959         exports.
4960         (process_def_file): deduce DATA flag for auto-export sumbols.
4962 2000-10-09  Kazu Hirata  <kazu@hxi.com>
4964         * ld.h: Fix formatting.
4965         * ldcref.c: Likewise.
4966         * ldctor.h: Likewise.
4967         * ldemul.c: Likewise.
4968         * ldemul.h: Likewise.
4969         * ldexp.c: Likewise.
4970         * ldexp.h: Likewise.
4971         * ldfile.c: Likewise.
4972         * ldfile.h: Likewise.
4973         * ldlang.c: Likewise.
4974         * ldlang.h: Likewise.
4975         * ldmain.c: Likewise.
4976         * pe-dll.c: Likewise.
4978         * pe-dll.c: Revert some formatting fixes.
4980 2000-10-08  Kazu Hirata  <kazu@hxi.com>
4982         * pe-dll.c: Fix formatting.
4984 2000-10-05  Kazu Hirata  <kazu@hxi.com>
4986         * ldlang.c: Fix formatting.
4988 2000-10-03  DJ Delorie  <dj@redhat.com>
4990         * pe-dll.c (fill_edata): initialize entire block
4991         (make_one): fill in correct section.
4993 2000-10-03  Kazu Hirata  <kazu@hxi.com>
4995         * ldexp.c: Fix formatting.
4997 2000-10-02  DJ Delorie  <dj@redhat.com>
4999         * emultempl/pe.em (gld_*_after_open): detect case where there two
5000         import libraries for same dll; rename one to ensure proper link
5001         order.
5003         * pe-dll.c (process_def_file): compare ordinals to -1, not 0; fix
5004         typo
5005         (generate_edata): fix typo
5007 2000-09-29  Hans-Peter Nilsson  <hp@axis.com>
5009         * scripttempl/crisaout.sc (ENTRY): Now __start.
5010         (.text): Add default setting for __start.
5011         Remove CONSTRUCTORS handling.
5012         (/DISCARD/): Add .gnu.warning.*.
5013         * emulparams/crislinux.sh (ENTRY): Now __start.
5014         (TEXT_START_SYMBOLS): New; provide __Stext and __start default.
5015         * emulparams/criself.sh (OUTPUT_FORMAT): Now elf32-us-cris.
5016         (ENTRY): Now __start.
5017         (INITIAL_READONLY_SECTIONS): Add KEEP for .startup.
5018         (EXECUTABLE_SYMBOLS): Add default setting for __start.
5020 2000-09-29  Kazu Hirata  <kazu@hxi.com>
5022         * deffile.h: Fix formatting.
5023         * ld.h: Likewise.
5024         * ldcref.c: Likewise.
5025         * ldctor.c: Likewise.
5026         * ldctor.h: Likewise.
5027         * ldemul.c: Likewise.
5028         * ldemul.h: Likewise.
5029         * ldexp.c: Likewise.
5030         * ldexp.h: Likewise.
5031         * ldfile.c: Likewise.
5032         * ldfile.h: Likewise.
5033         * ldlang.c: Likewise.
5034         * ldlang.h: Likewise.
5035         * lexsup.c: Likewise.
5036         * mri.c: Likewise.
5037         * pe-dll.c: Likewise.
5039 2000-09-28  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
5041         * pe-dll.c (process_def_file): Uninitialized data wasn't
5042         exported with --export-all-symbols switch.
5044 2000-09-28  DJ Delorie  <dj@redhat.com>
5046         * pe-dll.c (fill_edata): rearrange the data so that ordinals and
5047         noname work properly.
5049 2000-09-28  Alan Modra  <alan@linuxcare.com.au>
5051         * ld.texinfo (HPPA ELF32): New section.
5053         * emultempl/hppaelf.em (group_size): New.
5054         (hppaelf_finish): Pass group_size to elf32_hppa_size_stubs.
5055         (PARSE_AND_LIST_PROLOGUE): Add OPTION_STUBGROUP_SIZE.
5056         (PARSE_AND_LIST_LONGOPTS): Add --stub-group-size.  Duplicate
5057         options to prevent abbreviations matching.
5058         (PARSE_AND_LIST_OPTIONS): Describe the above.  Reformat.
5059         (PARSE_AND_LIST_ARGS_CASES): Handle it.
5061 2000-09-21  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
5063         * emultempl/m68kelf.em: Conditionalise the embedded relocs feature
5064         on the m68*-*-elf target.  Make it support COFF input objects.
5066 2000-09-21  Kazu Hirata  <kazu@hxi.com>
5068         * ldmain.c: Fix formatting.
5069         * ldmisc.c: Likewise.
5070         * ldver.c: Likewise.
5071         * ldwrite.c: Likewise.
5073 2000-09-21  Alan Modra  <alan@linuxcare.com.au>
5075         * ldwrite.c (clone_section): Silence gcc warnings.
5077 2000-09-20  Alan Modra  <alan@linuxcare.com.au>
5079         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Handle
5080         out of memory failure.
5082         * ldwrite.c (ldwrite): Remove unnecessary einfo arg.
5083         (clone_section): Handle out of memory failures.  Rename var to
5084         avoid c++ reserved word.
5086 2000-09-18  Alan Modra  <alan@linuxcare.com.au>
5088         * emultempl/hppaelf.em (hppaelf_add_stub_section): Rename
5089         stub_name param to stub_sec_name.
5090         (hppaelf_finish): Modify call to elf32_hppa_size_stubs.
5092 2000-09-10  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
5094         * emultempl/m68kelf.em: New file.
5095         * emulparams/m68kelf.sh (EXTRA_EM_FILE): Use it.
5096         * Makefile.am (em68kelf.c): Add dependency on m68kelf.em.
5097         * Makefile.in: Regenerate.
5099 2000-09-15  Alan Modra  <alan@linuxcare.com.au>
5101         * emulparams/hppalinux.sh (DATA_START_SYMBOLS): Provide $global$
5102         only as needed.
5104 2000-09-13  Nick Clifton  <nickc@redhat.com>
5106         * ldmain.c (multiple_definition): Disable relaxation if
5107         multiple symbol definitions are encountered - otherwise the
5108         linker could abort with an assertion failure.
5110 2000-09-10  Nick Clifton  <nickc@redhat.com>
5112         * mri.c: Fix formatting.
5114 2000-09-07  H.J. Lu  <hjl@gnu.org>
5116         * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
5117         * configure: Rebuild.
5119 2000-09-07  H.J. Lu  <hjl@gnu.org>
5121         * Makefile.am (lexsup.o): Also depend on $(INCDIR)/demangle.h.
5122         * Makefile.in: Rebuild.
5124 2000-09-07  Alan Modra  <alan@linuxcare.com.au>
5126         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Fix
5127         broken list handling.  Create __start_SECNAME and __stop_SECNAME
5128         when no place-holder.  Add some comments.  Test both SEC_CODE and
5129         SEC_READONLY for hold_text to prevent .rodata orphan poisoning.
5130         Handle case where no output section statement created.
5132 2000-09-07  Niibe Yutaka  <gniibe@m17n.org>, Kaz Kojima  <kkojima@rr.iij4u.or.jp>, Alexandre Oliva  <aoliva@redhat.com>
5134         * configure.tgt (sh-*-linux*): Added.
5135         * Makefile.am: Added eshelf_linux and eshlelf_linux.
5136         * Makefile.in: Rebuilt.
5137         * emulparams/shelf_linux.sh: New file.
5138         * emulparams/shlelf_linux.sh: New file.
5140 2000-09-06  Alan Modra  <alan@linuxcare.com.au>
5142         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
5143         try shuffling sections when the orphan happens to be the place
5144         holder.  Keep count of unique section names generated so we speed
5145         the search for a new name.
5147 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
5149         * configure: Rebuilt with new libtool.m4.
5151 2000-09-05  Nick Clifton  <nickc@redhat.com>
5153         * Makefile.in: Regenerate.
5154         * aclocal.m4: Regenerate.
5155         * configure: Regenerate.
5156         * config.in: Regenerate.
5157         * po/ld.pot: Regenerate.
5159         * ldint.texinfo: Remove CVS revision marker - it foils local
5160         comparisons.
5162         * emultempl/ticoff.em: Remove extraneous comma.
5164 2000-09-05  Alan Modra  <alan@linuxcare.com.au>
5166         * emultempl/hppaelf.em (hppaelf_add_stub_section): Add SEC_RELOC
5167         to stub section flags.
5168         (hppa_for_each_input_file_wrapper): New.
5169         (hppa_lang_for_each_input_file): New.
5170         (lang_for_each_input_file): Define to call above.
5171         (multi_subspace): New.
5172         (hppaelf_finish): Pass multi_subspace to elf32_hppa_size_stubs.
5173         (PARSE_AND_LIST_PROLOGUE): Define.
5174         (PARSE_AND_LIST_LONGOPTS): Define.
5175         (PARSE_AND_LIST_OPTIONS): Define.
5176         (PARSE_AND_LIST_ARGS_CASES): Define.
5177         (hppaelf_finish): Call elf32_hppa_set_gp.
5178         (hppaelf_set_output_arch): Remove.
5179         (LDEMUL_SET_OUTPUT_ARCH): Remove.
5181         * emulparams/hppalinux.sh (ELFSIZE): Define.
5182         (MACHINE): Define.
5183         (OTHER_READONLY_SECTIONS): Define.
5184         (DATA_PLT): Define.
5185         (GENERATE_SHLIB_SCRIPT): Define.
5187         * ldlang.c: Add missing prototypes, and tidy others.  Change CONST
5188         to const throughout.  Change `void *' to `PTR' throughout.
5189         (lang_memory_default): Function is local to file, add `static'.
5191         * Makefile.am (ehppaelf.c): Depend on emultempl/elf32.em.
5192         (ehppalinux.c): Likewise.
5193         (earmelf.c): Likewise.
5194         (earmelf_linux.c): Likewise.
5195         (earmelf_linux26.c): Likewise.
5196         * Makefile.in: Regenerate.
5198         * ld.h (ld_config_type): Add unique_orphan_sections.
5199         * lexsup.c (OPTION_UNIQUE): Define.
5200         (ld_options): Add "--unique".
5201         (parse_args): Handle it.
5202         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
5203         search for an existing output section if unique_orphan_sections is
5204         set.  Make use of bfd_get_unique_section_name rather than
5205         duplicating code here.
5206         * ld.texinfo: Describe --unique.
5208         * lexsup.c (ld_options): Make split-by-reloc arg optional. Add
5209         optional arg to split-by-file.
5210         (parse_args): Handle them.
5211         * ld.texinfo: Update description of these options.
5212         * ldwrite.c (clone_section): Pass in the section name.  Replace
5213         local code with bfd_get_unique_section_name.
5214         (split_sections): Tidy code and comments.  Use a list traversal
5215         more appropriate to the list construction.  Handle cooked section
5216         sizes.  Split when split_by_reloc reached rather than exceeded.
5217         Track section size and split when split_by_file reached.  Fix
5218         link_order_tail (even though it's not used).
5219         (ldwrite): Modify condition for calling split_sections to suit
5220         changed split_by_reloc and split_by_file.
5221         * ldmain.c (main): Init config.split_by_reloc and
5222         config.split_by_file to -1.
5223         * ld.h (ld_config_type): Change split_by_reloc to unsigned.
5224         Change split_by_file to bfd_size_type.
5226 2000-09-02  Nick Clifton  <nickc@redhat.com>
5228         * configure.in: Increase version number to 2.10.91.
5229         * NEWS: Mention new ability to support removal of duplicate DWARF2
5230         debug information.
5231         * configure: Regenerate.
5232         * aclocal.m4: Regenerate.
5233         * config.in: Regenerate.
5235 2000-09-02  Daniel Berlin <dberlin@redhat.com>
5237         * scripttempl/elf.sc: Add .gnu.linkonce.wi.* to .debug_info
5238         sections.
5239         * scripttempl/elf32avr.sc: Ditto.
5240         * scripttempl/elfd10v.sc: Ditto.
5241         * scripttempl/elfd30v.sc: Ditto.
5242         * scripttempl/elfi370.sc: Ditto.
5243         * scripttempl/elfm68hc11.sc: Ditto.
5244         * scripttempl/elfm68hc12.sc: Ditto.
5245         * scripttempl/elfi386beos.sc: Ditto.
5246         * scripttempl/v850.sc: Ditto.
5248 2000-08-31  Alexandre Oliva  <aoliva@redhat.com>
5250         * acinclude.m4: Include libtool and gettext macros from the
5251         top level.
5252         * aclocal.m4, configure: Rebuilt.
5254 2000-08-25  Nick Clifton  <nickc@redhat.com>
5256         * ldlang.c (open_output): When choosing the target for a
5257         particular endianness, do nothing if the target is not
5258         supported.
5260 2000-08-25  H.J. Lu  <hjl@gnu.org>
5262         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
5263         check -rpath nor LD_RUN_PATH for cross link.
5264         * ld.texinfo: Document the change.
5266 2000-08-24  Hans-Peter Nilsson  <hp@axis.com>
5268         * NEWS: Mention support for CRIS.
5270 2000-08-23  H.J. Lu  <hjl@gnu.org>
5272         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Get
5273         the current runpath list from bfd_elf_get_runpath_list ()
5274         before search.
5276 2000-08-22  H.J. Lu  <hjl@gnu.org>
5278         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search
5279         the DT_RPATH/DT_RUNPATH entries for DT_NEEDED after
5280         LD_LIBRARY_PATH for native linker. Display the needed DSO if
5281         trace_file_tries is non-zero.
5282         (gld${EMULATION_NAME}_try_needed): Report the needed DSO found
5283         if trace_file_tries is non-zero.
5285         * ld.texinfo: Document the usage of DT_RPATH/DT_RUNPATH.
5286         * NEWS: Mention it.
5288 2000-08-14  Jason Eckhardt  <jle@cygnus.com>
5290         * NEWS: Mention i860 support.
5292 2000-08-14  Andreas Schwab  <schwab@suse.de>
5294         * scripttempl/elf.sc: Fix last change to use correct comment
5295         syntax.
5297 2000-08-10  Geoff Keating  <geoffk@cygnus.com>
5299         * scripttempl/elf.sc: Add a comment giving the correspondence
5300         between sections, per-datum sections, and linkonce sections.  Make
5301         the comment true even for .bss, .sdata, .sdata2, .sbss, and
5302         .sbss2.
5304 2000-08-10  Jason Eckhardt  <jle@cygnus.com>
5306         * emulparams/elf32_i860.sh: New file.
5307         * configure.tgt: Recognize new target i860-stardent-{sysv4*|elf*}.
5308         * Makefile.am (ALL_EMULATIONS): Add eelf32_i860.o.
5309         (eelf32_i860.c): New rule.
5310         * Makefile.in: Regenerate.
5312 2000-08-10  Nick Clifton  <nickc@cygnus.com>
5314         * emulparams/mipspe.sh (ENTRY): Add definition.
5316 2000-08-08  Peter Jeremy  <peter.jeremy@alcatel.com.au>
5318         * emultempl/elf32.em (_after_close): Refer to -rpath not --rpath
5319         in error message.
5321 2000-08-08  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
5323         * scripttempl/elfm68hc11.sc: Define __bss_size symbol to indicate
5324         the final size of .bss section.
5325         * scripttempl/elfm68hc12.sc: Likewise.
5327 2000-08-04  Alan Modra  <alan@linuxcare.com.au>
5329         * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Rename to
5330         gld${EMULATION_NAME}_parse_args for consistency.  Combine
5331         lastoptind and prevoptind vars, and keep track of last optind.
5332         (gld_${EMULATION_NAME}_list_options): Rename to
5333         gld${EMULATION_NAME}_list_options.
5335 2000-08-03  Rodney Brown  <RodneyBrown@pmsc.com>
5337         * configure.tgt: Select targ_emul=elf_i386 for Unixware 7
5338         (i586-sco-sysv5uw7.1.0).
5340 2000-07-27  H.J. Lu  <hjl@gnu.org>
5342         * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
5343         (PARSE_AND_LIST_PROLOGUE): New.
5344         (PARSE_AND_LIST_LONGOPTS): Likewise.
5345         (PARSE_AND_LIST_OPTIONS): Likewise.
5346         (PARSE_AND_LIST_ARGS_CASES): Likewise.
5347         (PARSE_AND_LIST_EPILOGUE): Likewise.
5349 2000-07-28  Alan Modra  <alan@linuxcare.com.au>
5351         * emultempl/armelf.em: Elide functions common to elf32.em,
5352         ie. most of the file.
5353         (arm_elf_after_open): New.  Do arm specific things then call
5354         gld${EMULATION_NAME}_after_open.
5355         (arm_elf_before_allocation): New.  Call
5356         gld${EMULATION_NAME}_before_allocation then do arm specifics.
5357         (PARSE_AND_LIST_PROLOGUE): Define.
5358         (PARSE_AND_LIST_SHORTOPTS): Define.
5359         (PARSE_AND_LIST_LONGOPTS): Define.
5360         (PARSE_AND_LIST_OPTIONS): Define.
5361         (PARSE_AND_LIST_ARGS_CASES): Define.
5362         (LDEMUL_AFTER_OPEN): Define.
5363         (LDEMUL_BEFORE_ALLOCATION): Define.
5364         (LDEMUL_BEFORE_PARSE): Define.
5365         (LDEMUL_FINISH): Define.
5367         * emultempl/hppaelf.em: Similarly zap most of this file.
5368         (hppaelf_add_stub_section): Prototype.
5369         (hppaelf_layaout_sections_again): Prototype.
5370         (hook_in_stub): Prototype.
5371         (LDEMUL_SET_OUTPUT_ARCH): Define.
5372         (LDEMUL_FINISH): Define.
5373         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
5375         * emulparams/armelf.sh (TEMPLATE_NAME): Use elf32.
5376         (EXTRA_EM_FILE): New.
5377         * emulparams/armelf_linux.sh: Likewise.
5378         * emulparams/armelf_linux26.sh: Likewise.
5379         * emulparams/hppalinux.sh: Likewise.
5380         * emulparams/hppaelf.sh: Likewise.
5381         (NOP): Define.
5383         * emultempl/elf32.em: Fix formatting.
5384         (EXTRA_EM_FILE): Source it.
5385         (LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
5386         LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
5387         LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
5388         LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
5389         LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
5390         LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
5391         LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
5392         LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
5393         LDEMUL_FIND_POTENTIAL_LIBRARIES): New shell vars.  Add code to
5394         allow functions in this file to be overridden.
5395         (PARSE_AND_LIST_SHORTOPTS): Handle it.
5397         * emultempl/m68kcoff.em: Include ldfile.h before ldemul.h.
5399         * emultempl/elf32.em: Reorganize file.
5401 2000-07-27  Ivan Kokshaysky  <ink@jurassic.park.msu.ru>
5403         * emulparams/elf64alpha.sh: Implement "-taso" emulation
5404         specific option to fit 64-bit executable in the lower
5405         31-bit address range.  This is done by changing start
5406         address of .interp (the very first section of executable)
5407         and then setting EF_ALPHA_32BIT elf header flag.
5409 2000-07-21  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
5411         * emultempl/m68kcoff.em: New file.
5412         * emulparams/m68kcoff.sh (TEMPLATE_NAME): Use m68kcoff template.
5413         * Makefile.am (em68kcoff.c): Depend on m68kcoff.em rather than
5414         generic.em.
5415         * Makefile.in: Regenerate.
5417 2000-07-20  H.J. Lu  <hjl@gnu.org>
5419         * emultempl/elf32.em (longopts): Duplicate "disable-new-dtags"
5420         and "disable-new-dtags" to stop getopt from treating -d/-e as
5421         abbreviations for these options.
5423 2000-07-20  H.J. Lu  <hjl@gnu.org>
5425         * ld.texinfo: Add documentation for --disable-new-dtags and
5426         --enable-new-dtags.
5428         * ldmain.c (main): Initialize link_info.new_dtags to false.
5430         * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add
5431         --disable-new-dtags and --enable-new-dtags.
5432         (gld_${EMULATION_NAME}_list_options): Likewise.
5434 2000-07-05  Kenneth Block  <krblock@computer.org>
5436         * lexsup.c: Add optional style to demangle switch
5437         * ld.texinfo: Document optional style to demangle switch.
5439 2000-07-20  Hans-Peter Nilsson  <hp@axis.com>
5441         * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
5442         ecrislinux.o.
5443         (ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
5444         Regenerate dependencies.
5445         * Makefile.in: Rebuild.
5446         * configure.tgt (cris-*-*): New target.
5447         * emulparams/crisaout.sh, emulparams/criself.sh,
5448         emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
5449         * po/POTFILES.in, po/ld.pot: Regenerate.
5451 2000-07-20  H.J. Lu  <hjl@gnu.org>
5453         * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options):
5454         Print out ignored -z options.
5456 2000-07-19  H.J. Lu  <hjl@gnu.org>
5458         * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Removed.
5459         (PARSE_AND_LIST_PROLOGUE): New.
5460         (PARSE_AND_LIST_LONGOPTS): Likewise.
5461         (PARSE_AND_LIST_OPTIONS): Likewise.
5462         (PARSE_AND_LIST_ARGS_CASES): Likewise.
5464         * ldmain.c (main): Clear link_info.flags and link_info.flags_1.
5466         * lexsup.c (ld_options): Comment out 'z'.
5467         (parse_args): Likewise.
5469         * emultempl/elf32.em: Include "elf/common.h".
5470         (gld_${EMULATION_NAME}_parse_args): Defined. Handle some -z
5471         options.
5472         (gld_${EMULATION_NAME}_list_options): Likewise.
5474         * ld.texinfo: Add documentation for the recognized -z options.
5476 2000-07-19  H.J. Lu  <hjl@gnu.org>
5478         * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Call
5479         bfd_elf_set_dt_needed_soname ().
5481 2000-07-18  DJ Delorie  <dj@cygnus.com>
5483         * pe-dll.c (pe_dll_id_target): check object target name also
5485 2000-07-18  Hans-Peter Nilsson  <hp@axis.com>
5487         * scripttempl/elf.sc (.init): Only do ${INIT_START} and
5488         ${INIT_END} if relocating.
5489         (.fini): Likewise ${FINI_START} and ${FINI_END}.
5491 2000-07-16  Charles Wilson  <cwilson@ece.gatech.edu>
5493         * emultempl/pe.em (gld_*_open_dynamic_archive): New search
5494         order for dynamic library '-lfoo' on pei386: libfoo.dll.a,
5495         foo.dll.a, libfoo.a, libfoo.dll, foo.dll. This fixes compatibility
5496         errors introduced by the old dynamic lib search order.
5498 2000-07-17  DJ Delorie  <dj@cygnus.com>
5500         * pe-dll.c (process_def_file): auto-export data items also
5501         (pe_process_import_defs): also see if _imp_ form needed
5503 2000-07-12  Charles Wilson  <cwilson@ece.gatech.edu>
5505         * pe-dll.c (make_one): fix a typo in the __imp_ name decoration
5506         for dll import libraries
5508 2000-07-12  Mark Elbrecht  <snowball3@bigfoot.com>
5510         * scripttempl/i386go32.sc: Support the g++ attribute init_priority in
5511         gcc 2.95.2 and later.
5513 2000-07-11  Kazu Hirata  <kazu@hxi.com>
5515         * ldfile.c (ldfile_try_open_bfd): Output '\n' after an error
5516         message.
5518 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
5520         * ldemul.h (struct lang_input_statement_struct): Remove forward
5521         declaration.
5522         (struct search_dirs): Likewise.
5523         * ldfile.h (struct lang_input_statement_struct): Likewise.
5524         Protect file from multiple inclusion.
5525         * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
5526         declaration from macro to file scope.
5528         * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
5529         * ldgram.y: Likewise here.
5530         * ldlang.c: And here.
5531         * ldmain.c: And here.
5532         * mpw-elfmips.c: And here.
5533         * mpw-eppcmac.c: And here.
5534         * emultempl/aix.em: And here.
5535         * emultempl/armcoff.em: And here.
5536         * emultempl/armelf.em: And here.
5537         * emultempl/armelf_oabi.em: And here.
5538         * emultempl/beos.em: And here.
5539         * emultempl/elf32.em: And here.
5540         * emultempl/hppaelf.em: And here.
5541         * emultempl/linux.em: And here.
5542         * emultempl/lnk960.em: And here.
5543         * emultempl/pe.em: And here.
5544         * emultempl/sunos.em: And here.
5545         * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
5546         * mpw-idtmips.c: Ditto.
5547         * emultempl/generic.em: Ditto.
5548         * emultempl/gld960.em: Ditto.
5549         * emultempl/gld960c.em: Ditto.
5550         * emultempl/mipsecoff.em: Ditto.
5551         * emultempl/ticoff.em: Ditto.
5552         * emultempl/vanilla.em: Ditto.
5554         * pe-dll.c: Include ldfile.h
5555         * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
5557         * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
5558         arguments to bfd_elf32_size_dynamic_sections call.
5559         (gldelf32ebmip_place_orphan): Add missing arguments to
5560         lang_leave_output_section_statement call.
5562 2000-07-10  H.J. Lu  <hjl@gnu.org>
5564         * emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
5565         DLL_SUPPORT.
5566         (strhash): Likewise.
5567         (compute_dll_image_base): Likewise.
5568         (pe_undef_found_sym): Likewise.
5569         (pe_undef_cdecl_match): Likewise.
5570         (gld_${EMULATION_NAME}_open_dynamic_archive): Mark the
5571         argument "arch" with ATTRIBUTE_UNUSED.
5573 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
5575         * configure.tgt: Remove extraneous hppa*-*-linux-gnu*.
5577         From  Ryan Bradetich  <rbradetich@uswest.net>
5578         * ldwrite.c (SSIZE): Remove to cure macro redefinition warning.
5580 2000-07-09  Alan Modra  <alan@linuxcare.com.au>
5582         Changes to create multiple linker stubs, positioned immediately
5583         before the section where they are required.
5584         * emultempl/hppaelf.em: Include elf32-hppa.h.
5585         (stub_sec, file_chain): Delete.
5586         (hppaelf_create_output_section_statements): Don't make a stub
5587         section here.
5588         (hook_stub_info): New struct.
5589         (hook_in_stub): New function.
5590         (hppaelf_add_stub_section): New function.
5591         (hppaelf_finish): Do nothing for relocateable links.  Modify the
5592         call to elf32_hppa_size_stubs.  Move code for updating section
5593         layout from here...
5594         (hppaelf_layaout_sections_again): ..to here, a new function.
5596         * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Fix
5597         broken list handling.  Pass in a pointer to the list.
5598         (hppaelf_finish): Update call to hppaelf_delete_padding_statements
5599         for above changes.
5600         (hppaelf_before_parse): Prototype.
5601         (hppaelf_set_output_arch): Prototype.
5602         (hppaelf_create_output_section_statements): Prototype.
5603         (hppaelf_delete_padding_statements): Prototype.
5604         (hppaelf_finish): Prototype.
5606         Merge from elf32.em
5607         * emultempl/hppaelf.em: Include ctype.h.
5608         (struct orphan_save): New.
5609         (gld${EMULATION_NAME}_place_orphan): New.
5610         (output_rel_find): New.
5611         (hppaelf_get_script): Update from elf32.em.
5612         (ld_hppaelf_emulation): Rename to ld_${EMULATION_NAME}_emulation.
5613         Change emulation_name field to "${EMULATION_NAME}".  Add
5614         gld${EMULATION_NAME}_place_orphan.
5616         * Makefile.am (ALL_EMULATIONS): Reinstate ehppaelf.o,  add
5617         ehppalinux.o, sort it.  Regenerate dependencies.
5618         (ehppalinux.c): Depend on hppaelf.em
5619         * Makefile.in: Regenerate.
5621         * configure.tgt: targ_emul=hppalinux for hppa*linux
5623         * emulparams/hppalinux.sh: New.
5624         * emulparams/hppaelf.sh (TARGET_PAGE_SIZE): Write in hex.
5626 2000-07-08  Alan Modra  <alan@linuxcare.com.au>
5628         * lexsup.c (parse_args): Copy section name.
5630 2000-07-07  Charles Wilson  <cwilson@ece.gatech.edu>
5632         * emultempl/pe.em: institute the following search order for
5633         dynamic libraries on pei386: libfoo.dll.a, foo.dll.a (import
5634         libs), libfoo.dll, foo.dll (link direct to dll).  Fall back to
5635         static lib (libfoo.a) if none of the above are found.
5637 2000-07-07  Mumit Khan  <khan@xraylith.wisc.edu>
5639         * emultempl/pe.em (pe_enable_auto_image_base): New variable.
5640         (longopts): New --{enable,disable}-auto-image-base options.
5641         (gld_${EMULATION_NAME}_list_options): Document.
5642         (gld_${EMULATION_NAME}_parse): Handle.
5643         (strhash): New static function.
5644         (compute_dll_image_base): New static function.
5645         (gld_${EMULATION_NAME}_set_symbols): Use.
5647 2000-07-05  DJ Delorie  <dj@redhat.com>
5649         * MAINTAINERS: new
5651 2000-07-01  Koundinya K  <kk@ddeorg.soft.net>
5653         * configure.tgt: Add traditional mips (mips*-*-sysv4*) target.
5654         * emulparams/elf32btsmip.sh: New file.
5655         * Makefile.am: Add traditional mips target.
5656         * Makefile.in: Rebuild.
5658 2000-07-01  H.J. Lu  <hjl@gnu.org>
5660         * Makefile.am (EXTRA_ld_new_SOURCES): Set to deffilep.y for
5661         automake to use YLWRAP.
5662         * Makefile.in: Rebuild.
5664 2000-07-01  Alan Modra  <alan@linuxcare.com.au>
5666         * Makefile.am (DEP): Fix 2000-06-22.  grep after running dep.sed
5667         (CLEANFILES): Add DEPA.
5668         * Makefile.in: Regenerate.
5670 2000-06-30  Timothy Wall  <twall@ppc>
5672         * scripttempl/tic54xcoff.sc: PAGE N is not implemented, so encode
5673         the page in the upper octet of the address.
5675 2000-06-26  Marek Michalkiewicz  <marekm@linux.org.pl>
5677         * emulparams/avrmega161.sh (ARCH): Change to avr:5.
5679 2000-06-24  Alan Modra  <alan@linuxcare.com.au>
5681         * NEWS: arm-elf does --gc-sections too.
5683 2000-06-22  Alan Modra  <alan@linuxcare.com.au>
5685         * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
5686         find one.
5687         * Makefile.in: Regenerate.
5689 2000-06-21  H.J. Lu  <hjl@gnu.org>
5691         * Makefile.am: Rebuild dependency.
5692         * Makefile.in: Rebuild.
5694 2000-06-20  H.J. Lu  <hjl@gnu.org>
5696         * Makefile.am: Rebuild dependency.
5697         * Makefile.in: Rebuild.
5699 2000-06-20  Timothy Wall  <twall@cygnus.com>
5701         * scripttempl/tic54xcoff.sc: New.
5702         * ldlang.c (wild_doit): Propagate SEC_BLOCK flag.
5703         * gen-doc.texi: Add flag for TI COFF.
5704         * ld.texinfo: Add documentation for TI COFF handling switches.
5705         * emultempl/ticoff.em: New. TI COFF handling.
5706         * configure.tgt: Add tic54x target.
5707         * Makefile.am: Add tic54x target.
5708         * Makefile.in: Ditto.
5710 2000-06-20  Alan Modra  <alan@linuxcare.com.au>
5712         * ldmain.c (set_scripts_dir): Correct pointer comparison when
5713         checking for backslashes.
5715 2000-06-19  Alan Modra  <alan@linuxcare.com.au>
5717         * NEWS: Move entries not in 2.10 above "Changes in version 2.10".
5719 2000-06-18  Alan Modra  <alan@linuxcare.com.au>
5721         * NEWS: Update list of targets supporting --gc-sections.
5723         * scripttempl/elf.sc: KEEP .eh_frame contents.
5724         * scripttempl/elfd30v.sc: Same here.
5726 2000-06-18  Stephane Carrez  <stcarrez@worldnet.fr>
5728         * Makefile.am (ALL_EMULATIONS): Added new emulation for m68hc12
5729         and m68hc11 (elf).
5730         * Makefile.in: Rebuild.
5731         * configure.tgt: Recognize m68hc12 and m68hc11.
5732         * scripttempl/elfm68hc12.sc: New file.
5733         * emulparams/m68hc12elfb: New emulation.
5734         * emulparams/m68hc12elf: New emulation.
5735         * emulparams/m68hc11elfb.sh: New file.  User configurable emulation
5736         (includes a memory.x script to define the ROM and RAM banks).
5737         * scripttempl/elfm68hc11.sc, emulparams/m68hc11elf.sh:
5738         New configuration files for support of Motorola 68hc11
5740 2000-06-15  Alan Modra  <alan@linuxcare.com.au>
5742         * ldmain.c (main): Only change SEC_READONLY for final link.
5744 2000-06-13  H.J. Lu  <hjl@gnu.org>
5746         * configure: Regenerate.
5748 2000-06-08  David O'Brien  <obrien@FreeBSD.org>
5750         * configure.in (VERSION): Update to show this is the CVS mainline.
5752 2000-06-07  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
5754         * emultempl/mipsecoff.em (gld{EMULATION_NAME}_after_open): Require all
5755         input objects to be ECOFF.
5756         (check_sections): einfo takes %B, not %P, to print a BFD name.
5758 2000-06-05  Michael Matz <matz@ifh.de>
5760         * ldgram.y (vers_defns): Handle 'extern "C++" { ... }' in
5761         version scripts.
5763         * ldlex.l (V_IDENTIFIER): Accept `::' in symbols.
5765 2000-05-23  Marek Michalkiewicz  <marekm@linux.org.pl>
5767         * emulparams/avr1200.sh (STACK): Define as 0.
5768         * emulparams/avr23xx.sh (STACK): Define as last internal SRAM address.
5769         * emulparams/avr4433.sh (STACK): Likewise.
5770         * emulparams/avr44x4.sh (STACK): Likewise.
5771         * emulparams/avr85xx.sh (STACK): Likewise.
5772         * emulparams/avrmega103.sh (STACK): Likewise.
5773         * emulparams/avrmega161.sh (STACK): Likewise.
5774         * emulparams/avrmega603.sh (STACK): Likewise.
5775         * scripttempl/elf32avr.sc (__data_start): Define for gcrt1.
5776         (__stack): Define from ${STACK} for main().
5778 2000-05-26  Alan Modra  <alan@linuxcare.com.au>
5780         * Makefile.am: Update dependencies with "make dep-am"
5781         * Makefile.in: Regenerate.
5783 2000-05-26  Eli Zaretskii  <eliz@is.elta.co.il>
5785         * ldmain.c: Include filenames.h.
5786         (set_scripts_dir): Support backslashes in program name.
5788 2000-05-22  Igor Shevlyakov  <igor@windriver.com>
5790         * ldmain.c (main): When deciding if ".text" section should be
5791         read-only, don't forget to reset SEC_READONLY because it
5792         could be already set.
5794 2000-05-22  Thomas de Lellis  <tdel@windriver.com>
5796         * ld.1: Add documentation for new command line option:
5797         --section-start <sectionname>=<sectionorg>
5798         This is a generic version of -Ttext etc. which accepts
5799         any section name as a parameter instead of just text/data/
5800         bss.
5801         * ld.texinfo: More docs.
5802         * NEWS: More docs.
5803         * lexsup.c: (parse_args): Recognize new command line option.
5804         (ld_options): Add new option.
5806 2000-05-18  H.J. Lu  <hjl@gnu.org>
5808         * lexsup.c (parse_args): `i' == `r', not `q'.
5810 2000-05-18  Jeffrey A Law  (law@cygnus.com)
5812         * configure.tgt (hppa*64*-*-*): Enable PA64 target.
5814 2000-05-17 S. Bharadwaj Yadavalli  <sby@scrugs.lkg.dec.com>
5815               Rick Gorton          <gorton@scrugs.lkg.dec.com>
5817         Add support for '-q' == '--emit-relocs' switch.
5818         * ldmain.c (main): Default to false.
5819         * lexsup.c (parse_args): Turn on emitrelocations flag if set.
5820         * NEWS: Describe the emitrelocations switch.
5821         * ld.texinfo: Describe the emitrelocations switch.
5823 2000-05-16  Charles Wilson <cwilson@ece.gatech.edu>
5825         * emultempl/pe.em (_open_dynamic_archive): New function: Search
5826         the library path for "foo.dll" and "libfoo.dll" dynamic libraries
5827         before searching for 'libfoo.a' in response to a '-Bdynamic -lfoo'
5828         link options.
5830 2000-05-15  David O'Brien  <obrien@FreeBSD.org>
5832         * lexsup.c (parse_args): Update the year in the copyright notice.
5834 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
5836         * ld.h (gettext, dgettext, dcgettext, textdomain, bindtextdomain):
5837         Replace defines with those from intl/libgettext.h to quieten gcc
5838         warnings.
5840 2000-05-10  H.J. Lu  <hjl@gnu.org>
5842         * ldlang.c (open_input_bfds): Don't load the same file within
5843         a group again if the whole archive has been loaded already.
5845 2000-05-03  Alan Modra  <alan@linuxcare.com.au>
5847         From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
5848         * lexsup.c (set_section_start): Use bfd_scan_vma rather than
5849         strtoul.
5851 2000-05-01  Jim Wilson  <wilson@cygnus.com>
5853         * configure.host (ia64-*-linux-gnu*): Change gcc to ${CC}.
5855         * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
5856         host "ia64-*-linux-gnu*".
5858 2000-04-29  Andreas Jaeger  <aj@suse.de>
5860         * ld.h: Correctly check GCC version.
5862 2000-04-25  Jeffrey A Law  (law@cygnus.com)
5864         * Makefile.am: Add PA64 support.  Add missing dependencies for
5865         PA32 elf support.
5866         * Makefile.in: Rebuilt.
5867         * configure.tgt: Add PA64 support (currently disabled).
5869 2000-04-25  Alan Modra  <alan@linuxcare.com.au>
5871         * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Delete.
5872         (output_rel_find): New function.
5873         (hold_section, hold_use): Delete.
5874         (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
5875         hold_interp): Make local to place_orphan.
5876         (gld${EMULATION_NAME}_place_orphan): Use lang_output_section_find
5877         rather than place_section to find possible previous use of orphan.
5878         Similarly find the place-holder output sections.  Use returned
5879         value from lang_enter_output_section_statement rather than calling
5880         lang_output_section_statement_lookup.
5881         * emultempl/armelf.em: Same here.
5882         * emultempl/pe.em: Similar to above, but no need for output_rel_find.
5884         * ldlang.c (lang_enter_output_section_statement): Return output
5885         section statement.
5886         * ldlang.h (lang_enter_output_section_statement): Change
5887         declaration too.
5889         * ldlang.h (lang_output_section_statement): Export it.
5890         * ldlang.c (lang_output_section_statement): Ditto.
5892 2000-04-24  Nick Clifton  <nickc@cygnus.com>
5894         * ld.texinfo (Output Section Data): Add note that section data
5895         commands cannot appear outside of section directives.
5897 2000-04-2  Matthew Green  <mrg@cygnus.com>
5899         * configure.tgt: Add NetBSD/sparc ELF, and NetBSD/sparc64 support.
5901 2000-04-21  Richard Henderson  <rth@cygnus.com>
5902             David Mosberger  <davidm@hpl.hp.com>
5904         * Makefile.am (ALL_64_EMULATIONS): Add eelf64_ia64.o.
5905         (eelf64_ia64.c): New rule.
5906         * Makefile.in: Rebuild.
5907         * configure.tgt (ia64-*-elf*, ia64-*-linux*): New targets.
5908         * emulparams/elf64_ia64.sh: New file.
5910 2000-04-21  Richard Henderson  <rth@cygnus.com>
5912         * scripttempl/elfd30v.sc: Place .gcc_except_table.
5914 2000-04-19  Alan Modra  <alan@linuxcare.com.au>
5916         * dep-in.sed: Match space at start of file name, not at end.
5918 2000-04-18  H.J. Lu  <hjl@gnu.org>
5920         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
5921         lang_leave_output_section_statement () after calling
5922         lang_enter_output_section_statement ().
5923         * emultempl/armelf.em: Likewise.
5925 2000-04-18  Alan Modra  <alan@linuxcare.com.au>
5927         * emultempl/elf32.em (struct orphan_save): Add section field.
5928         (gld${EMULATION_NAME}_place_orphan): Use above to keep sections in
5929         better order, and place first orphan section as we did before the
5930         2000-04-12 patch.  Ignore ~SEC_ALLOC sections when choosing place.
5931         Don't call make_bfd_section here, let wild_doit do the job for us.
5932         Don't build a statement list when we'll only throw it away.
5933         * emultempl/armelf.em: Ditto.
5934         * emultempl/pe.em: Similarly.
5936 2000-04-14  Geoff Keating  <geoffk@cygnus.com>
5938         * scripttempl/elfppc.sc: Remove.
5939         * emulparams/elf32ppc.sh: Use elf.sc.
5940         * emulparams/elf32lppc.sh: Use elf.sc.
5941         * emulparams/elf32ppclinux.sh: Use elf.sc.
5942         * emulparams/elf32ppcsim.sh: New file.
5943         * emulparams/elf32lppcsim.sh: New file.
5944         * Makefile.am: Update dependencies.  Add elf32ppcsim ad elf32lppcsim.
5945         (ALL_EMULATIONS): Add elf32ppcsim ad elf32lppcsim.
5946         * Makefile.in: Regenerate.
5947         * configure.tgt (powerpc-*): Add elf32ppcsim and elf32lppcsim.
5949 2000-04-14  Alan Modra  <alan@linuxcare.com.au>
5951         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Process
5952         ~SEC_ALLOC sections too.  Init start address of debug sections.
5953         * emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan): Ditto.
5954         * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Ditto.
5955         Also set all relocateable section start addresses.
5957 2000-04-13  Geoff Keating  <geoffk@cygnus.com>
5959         * scripttempl/elf.sc: Add support for .sbss2 and .sdata2 sections.
5960         Add new BSS_PLT variable for when .plt need not be contained in
5961         the file.  Move _etext so that it is also after .fini, and provide
5962         both etext and _etext with a leading underscore.  Mark the start
5963         and end of .sbss.
5965 2000-04-12  Alan Modra  <alan@linuxcare.com.au>
5967         * emultempl/elf32.em (struct orphan_save): New.
5968         (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
5969         hold_interp): Make them struct orphan_save.
5970         (gld${EMULATION_NAME}_place_section): Modify for new hold_*.
5971         (gld${EMULATION_NAME}_place_orphan): Add new orphan sections to
5972         the end of the relevant section list.  Also add associated section
5973         statements to the end of any previous orphan statements.
5974         * emultempl/armelf.em: Similarly.
5975         * emultempl/pe.em: Similarly.
5977 2000-04-11  Alan Modra  <alan@linuxcare.com.au>
5979         * ld.texinfo (Simple Example): Remove extraneous paragraph.
5981 2000-04-07  Andrew Cagney  <cagney@b1.cygnus.com>
5983         * configure.in (WARN_CFLAGS): Set to -W -Wall by default.  Add
5984         --enable-build-warnings option.
5985         * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
5986         * Makefile.in, configure: Re-generate.
5988 2000-04-04  Alan Modra  <alan@linuxcare.com.au>
5990         * po/ld.pot: Regenerate.
5992         * lexsup.c (help): Restore translated part of bug string.
5994         * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
5995         (DEP): Quote when passing vars to sub-make.  Add warning message
5996         to end.
5997         (DEP1): Rewrite for "gcc -MM".
5998         (CLEANFILES): Add DEP2.
5999         Update dependencies.
6000         * Makefile.in: Regenerate.
6002 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
6004         * ld.h: #include "bin-bugs.h"
6005         * lexsup.c (help): Use REPORT_BUGS_TO.
6007 2000-03-27  Denis Chertykov  <denisc@overta.ru>
6009         * configure.tgt (avr-*-*): New target support.
6010         * Makefile.am: Likewise.
6011         * scripttempl/elf32avr.sc: New script file.
6012         * emulparams/avr1200.sh: New file.
6013         * emulparams/avr23xx.sh: New file.
6014         * emulparams/avr4433.sh New file.
6015         * emulparams/avr44x4.sh New file.
6016         * emulparams/avr85xx.sh New file.
6017         * emulparams/avrmega103.sh New file.
6018         * emulparams/avrmega161.sh New file.
6019         * emulparams/avrmega603.sh New file.
6020         * Makefile.in: Regenerate.
6022 2000-03-09  Andreas Jaeger  <aj@suse.de>
6024         * Makefile.am (check-DEJAGNU): Also unset LANG.
6025         * Makefile.in: Rebuild.
6027 2000-03-06  Ian Lance Taylor  <ian@zembu.com>
6029         * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
6030         archive.
6032 2000-03-02  H.J. Lu  <hjl@gnu.org>
6034         * emulparams/elf32mcore.sh: Include "getopt.h".
6036 2000-03-01  Ian Lance Taylor  <ian@zembu.com>
6038         * configure.tgt: Remove *-*-aout, *-*-coff, and *-*-netware.
6040 2000-03-01  H.J. Lu  <hjl@gnu.org>
6042         * emulparams/mipspe.sh: Add SUBSYSTEM and INITIAL_SYMBOL_CHAR.
6043         * emulparams/shpe.sh: Likewise.
6045 2000-03-01  Nick Clifton  <nickc@cygnus.com>
6047         * pe-dll.c: Remove unused variables and add ATTRIBUTE_UNUSED
6048         to unused parameters.
6050         * emultempl/pe.em: Add "#ifdef DLL_SUPPORT" around static
6051         functions only used by DLL code.
6052         (_place_orphan): Initialise 'dollar'.
6054 2000-03-01  H.J. Lu  <hjl@gnu.org>
6056         * ldmain.c (undefined_symbol): Take one more arg, fatal, to
6057         indicate if the undefined symbol is a fatal error or not.
6058         Don't delete the output file if "fatal" is false.
6060 2000-02-29  H.J. Lu  <hjl@gnu.org>
6062         * Makefile.am (check-DEJAGNU): Also pass LIBS="$(LIBS)".
6063         Set LC_COLLATE and LC_ALL to null and export them. It is for
6064         sort which expects the C locale.
6065         Add $(LIBS) to all $(HOSTING_LIBS).
6066         * Makefile.in: Rebuild.
6068 2000-02-29  Alan Modra  <alan@spri.levels.unisa.edu.au>
6070         * emultempl/{aix.em, armcoff.em, armelf.em, armelf_oabi.em,
6071         beos.em, elf32.em, generic.em, gld960.em, gld960c.em, hppaelf.em,
6072         linux.em, lnk960.em, mipsecoff.em, sunos.em, vanilla.em}
6073         (ld_emulation_xfer_struct): Add missing NULL initialiser for
6074         find_potential_libraries.
6076 2000-02-28  Jim Blandy  <jimb@redhat.com>
6078         * ldgram.y (exclude_name_list): Don't require a comma to separate
6079         list entries; the lexer considers commas to be valid part of a
6080         filename, so in something like `foo, bar' the comma is considered
6081         part of the first filename, `foo,'.
6082         * ld.texinfo: Update section on EXCLUDE_FILE lists.
6084 2000-02-27  Loren J. Rittle  <ljrittle@acm.org>
6086         * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
6087         host "i[3456]86-*-freebsdelf*".
6089 2000-02-27  Mark Elbrecht  <snowball3@bigfoot.com>
6091         * scripttempl/i386go32.sc: Move misplaced semicolons.
6093 2000-02-25  Ian Lance Taylor  <ian@zembu.com>
6095         * Makefile.am (ALL_EMULATIONS): Remove ehppaelf.o.
6096         (ALL_64_EMULATIONS): Remove eelf64hppa.o.
6097         (eelf64hppa.c, ehppaelf.c): Remove targets.
6098         * Makefile.in: Rebuild.
6100 2000-02-25  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
6102         * configure.tgt (targ_extra_ofiles): Enable elf64_sparc on
6103         GNU/Linux/sparc, but keep the default as 32.
6105         * configure.tgt: Enable elf64_sparc on Solaris7+/sparc.  And make
6106         it default if sparcv9 or sparc64.
6108 2000-02-24  Nick Clifton  <nickc@cygnus.com>
6110         * Makefile.am: Add rules to build emipspe.o and earmpe.o.
6111         * Makefile.in: Regenerate.
6112         * configure.tgt: Add targets for arm-wince, sh-pe and mips-pe.
6114         * ldemul.h (ld_emulation_xfer_struct): Add new field:
6115         find_potential_libraries.
6116         * ldemul.c (ldemul_find_potential_libraries): New function.
6118         * ldfile.c (ldfile_open_file_search): Allow function to be
6119         exported.
6120         (ldfile_open_file): Call ldemul_find_potential_libraries.
6121         * ldfile.h: Add prototype for ldfile_open_file_search.
6123         * pe-dll.c: Add support for ARM, MIPS and SH targets.
6125         * emulparams/mipspe.sh: New file.  Parameters for mips-pe target.
6126         * emulparams/shpe.sh: New file.  Parameters for sh-pe target.
6128         * emultempl/pe.em: Add support for ARM, MIPS and SH DLLs.
6129         (gld_X_find_potential_libraries): New function.  Search for
6130         libraries called "*.lib".
6132         * scripttempl/pe.sc: Add .pdata section.
6134 2000-02-23  Richard Henderson  <rth@cygnus.com>
6136         * scripttempl/elfd10v.sc: Remove dynamic linking hooks.
6137         Add and use memory regions.
6139 2000-02-23  Linas Vepstas (linas@linas.org)
6141         * emulparams/elf32i370.sh, scripttempl/elfi370.sc: New.
6143         * Makefile.am: Add support for Linux/IBM 370.
6144         * configure.tgt: Likewise.
6146         * Makefile.in: Regenerate.
6148 2000-02-21  Alan Modra  <alan@spri.levels.unisa.edu.au>
6150         * ldlang.c (print_input_section, print_data_statement,
6151         print_reloc_statement, print_padding_statement, insert_pad,
6152         size_input_section, lang_check_section_addresses,
6153         lang_size_sections, lang_do_assignments, lang_set_startof,
6154         lang_one_common): Change `opb' to unsigned.
6155         (lang_do_assignments): Also change `size' to unsigned.
6157 2000-02-16  Richard Henderson  <rth@cygnus.com>
6159         * scripttempl/elf.sc: Place OTHER_PLT_RELOC_SECTION.
6161 2000-02-16  Timothy Wall  <twall@cygnus.com>
6163         * mri.c (mri_draw_tree): Add default LMA region argument to call
6164         to lang_leave_output_section_statement.
6165         * ldlang.h: Update prototypes with LMA region arguments.
6166         * ldlang.c (lang_size_sections): Encapsulate region bounds
6167         checking in os_check_region call.
6168         (os_check_region): New function.
6169         (lang_output_section_statement_lookup): Initialize lma_region.
6170         (lang_leave_output_section_statement): Add LMA region argument.
6171         (lang_leave_overlay): Ditto.
6172         * ldgram.y: Handle LMA region syntax.
6173         * ld.texinfo (Output Section Description): Describe LMA region usage.
6174         * emultempl/armelf.em (gld$place_orphan): Add default value for
6175         lma region in call to lang_leave_output_section_statement.
6176         * emultempl/elf32.em (gld$place_orphan): Add default value for
6177         lma region in call to lang_leave_output_section_statement.
6178         * emultempl/pe.em (gld$place_orphan): Add default value for
6179         lma region in call to lang_leave_output_section_statement.
6182 2000-02-04  Timothy Wall  <twall@redhat.com>
6184         * ldlang.c (lang_check_section_addresses): Use bytes instead of
6185         octets when calculating section end addresses.
6187 2000-02-04  Timothy Wall  <twall@redhat.com>
6189         * ldlang.c (lang_size_sections): Fix typo in ALIGN_N invocation.
6191 2000-02-03  Timothy Wall <twall@redhat.com>
6193         * ldexp.c (fold_name): Make SIZEOF operator return byte count, not
6194         octet count.
6195         * ldlang.c (print_input_section, print_data_statement,
6196         print_reloc_statement, print_padding_statement): Print target
6197         address values and section sizes as bytes, not octets.
6198         (insert_pad) Calculate padding size in octets, and adjust "dot"
6199         by bytes.
6200         (size_input_section) Always adjust "dot" by bytes, not octets.
6201         (lang_check_section_addresses, lang_do_assignments) Adjust
6202         "dot" by bytes, not octets.  Use the larger of the directive size
6203         or octets_per_byte for the number of octets actually allocated in
6204         the output section.
6205         (lang_set_startof) Make sure STARTOF returns a target address.
6206         (lang_one_common) Record size changes in octets.
6207         (lang_abs_symbol_at_end_of) Section end symbol's value is
6208         recorded in target bytes.
6209         * ld.texinfo: Updated description of BYTE, SHORT, LONG, etc.
6210         to be clear about behavior when an octet is smaller than one byte.
6212 2000-01-27  Alan Modra  <alan@spri.levels.unisa.edu.au>
6214         * ldcref.c (output_cref): Don't pass message strings to printf
6215         as format arg.
6216         Update copyright.
6218         * ldmisc.c (vfinfo): Same here.
6219         Update copyright.
6221 2000-01-23  Alan Modra  <alan@spri.levels.unisa.edu.au>
6223         * emultempl/{armcoff.em,armelf.em,armelf_oabi.em,beos.em,
6224         generic.em,gld960.em,gld960c.em,hppaelf.em,linux.em,lnk960.em,
6225         mipsecoff.em,sunos.em,vanilla.em} (ld_emulation_xfer_struct):
6226         Add missing NULL initialisers, and comments.
6228 2000-01-21  Nick Clifton  <nickc@cygnus.com>
6230         * ldlang.c (lang_size_sections): Fix typo in comment.
6232 2000-01-18  H.J. Lu  <hjl@gnu.org>
6234         * ldlang.c (lang_size_sections): Also update the current
6235         address of a region if the SEC_NEVER_LOAD bit is not set.
6237 2000-01-10  Philip Blundell  <pb@futuretv.com>
6239         * configure.tgt (arm*-*-conix*): New target.
6241 2000-01-07  Nick Clifton  <nickc@cygnus.com>
6243         * ld.texinfo (Options): Remind users to preceed linker command
6244         line switches with -Wl, (or whatever is appropriate) if it is
6245         being invoked by a comnpiler driver program.
6246         Fix description of the behaviour of the -n command line switch.
6248 2000-01-05  Catherine Moore  <clm@cygnus.com>
6250         * ld.h (wildcard_spec): Change exclude_name to exclude_name_list.
6251         (name_list): New.
6252         * ld.texinfo (EXCLUDE_FILE): Update documentation.
6253         * ldgram.y (wildcard_spec): Support a list of excluded_files.
6254         (exclude_name_list): New.
6255         ldlang.c (walk_wild_section): Support list of excluded files.
6256         (print_wild_statement): Likewise.
6257         (lang_add_wild): Likewise.
6258         * ldlang.h (lang_wild_statement_type): Likewise.
6259         * scripttempl/elf.sc (OTHER_EXCLUDE_FILES): Support.
6261 2000-01-04  Mumit Khan  <khan@xraylith.wisc.edu>
6263         * pe-dll.c (pe_dll_warn_dup_exports): New variable.
6264         (process_def_file): Use.
6265         (pe_dll_compat_implib): New variable.
6266         (make_one): Use.
6268         * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
6269         pe_dll_compat_implib.
6271         * emultempl/pe.em (longopts): Add warn-duplicate-exports and
6272         compat-implib options.
6273         (gld_${EMULATION_NAME}_list_options): List new options.
6274         (gld_${EMULATION_NAME}_parse_args): Handle.
6276         * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
6277         dll.
6279         * deffilep.y (opt_name): Allow "." in name.
6281 For older changes see ChangeLog-9899
6283 Local Variables:
6284 mode: change-log
6285 left-margin: 8
6286 fill-column: 74
6287 version-control: never
6288 End: