1 2002-05-31 Graeme Peterson <gp@qnx.com>
3 * Makefile.am (ALL_EMULATIONS): Add ei386nto.o.
4 (ei386nto.c): Add rule.
5 * Makefile.in: Regenerate.
6 * configure.tgt: Add i[3456]86-*-nto-qnx*.
7 * emulparams/i386nto.sh: New file.
9 2002-05-29 Jason Thorpe <thorpej@wasabisystems.com>
11 * NEWS: Add entry for VAX ELF support.
13 2002-05-29 Matt Thomas <matt@3am-software.com>
14 Jason Thorpe <thorpej@wasabisystems.com>
16 * Makefile.am (ALL_EMULATIONS): Add eelf32vax.o and evaxnbsd.o.
18 (evaxnbsd.c): New rules.
19 * Makefile.in: Regenerate.
20 * configure.tgt (vax-*-netbsdelf*)
22 (vax-*-netbsd*): New targets.
23 * emulparams/elf32vax.sh: New file.
24 * emulparams/vaxnbsd.sh: New file.
26 2002-05-29 Adam Nemet <anemet@lnxw.com>
28 * emultempl/armelf.em (arm_elf_after_open): Don't determine
29 bfd_for_interwork, instead add glue sections to each input bfd.
30 (bfd_for_interwork): New global.
31 (arm_elf_set_bfd_for_interworking): New function.
32 (arm_elf_before_allocation): Use it.
34 2002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net>
36 * Makefile.am: Add DLX make target.
37 * configure.tgt: Add DLX configuration.
38 * Makefile.in: Regenerate.
39 * emulparams/elf32_dlx.sh: New file
40 * scripttempl/dlx.sc: New file
42 2002-05-27 Per Lundberg <per@caleb.dnsalias.org>
44 * Makefile.am (eelf_i386_chaos): Use elf_chaos.sc script.
45 * Makefile.in: Regenerate.
46 * emulparams/elf_chaos.sh: Use elf_chaos script.
47 * scripttempl/elf_chaos.sc: New file.
49 2002-05-27 Richard Sandiford <rsandifo@redhat.com>
51 * ldlang.c (lang_size_sections_1): Move check for conflicting load
52 addresses and regions from here...
53 (lang_get_regions): ...to this new function.
54 (lang_leave_output_section_statement): Use lang_get_regions.
55 (lang_leave_overlay): Likewise.
56 * mri.c (mri_draw_tree): Pass null as last argument to
57 lang_leave_output_section_statement.
58 * emultempl/elf32.em (gld*_place_orphan): Likewise.
59 * emultempl/mmo.em (mmo_place_orphan): Likewise.
60 * emultempl/pe.em (gld*_place_orphan): Likewise.
62 2002-05-26 Jason Thorpe <thorpej@wasabisystems.com>
64 * configure.tgt: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*.
66 2002-05-25 Kazu Hirata <kazu@cs.umass.edu>
68 * ldemul.c: Fix formatting.
73 2002-05-25 Alan Modra <amodra@bigpond.net.au>
75 * ldlang.c (lang_process): Formatting, grammar.
77 * ldlex.l: Use #include "" instead of <> for local header files.
79 2002-05-24 TAMURA Kent <kent@netbsd.org>
81 * configure.tgt: Add a target for i386-netbsdpe.
83 2002-05-23 Jakub Jelinek <jakub@redhat.com>
85 * scripttempl/elf.sc: Add .rel{,a}.t{bss,data}, .tdata and .tbss.
86 * ldlang.c (lang_add_section): Set SEC_THREAD_LOCAL for
87 output section if necessary. Handle .tbss.
88 (lang_size_sections): Clear _raw_size for .tbss section
89 (it allocates space in PT_TLS segment only).
90 * ldwrite.c (build_link_order): Build link order for .tbss too.
92 2002-05-23 Alan Modra <amodra@bigpond.net.au>
94 * configure.in: Correct spelling of AC_PREREQ.
96 2002-05-21 Danny Smith <dannysmith@users.sourceforge.net>
98 * pe-dll.c (autofilter_liblist): Add more system libs excluded by
100 (autofilter_objlist): Add crtbegin.o, crtend.o.
102 2002-05-21 Danny Smith <dannysmith@users.sourceforge.net>
104 * emultempl/pe.em (OPTION_EXCLUDE_LIBS): Add new define.
105 (longopts): Add new option --exclude-libs.
106 (gld_${EMULATION_NAME}_list_options): Give quick help about it.
107 (gld_${EMULATION_NAME}_parse_args): Use it.
108 * pe-dll.h (pe_dll_add_excludes): Add second param to prototype.
109 * pe-dll.c (exclude_list_struct): Add field type to distinguish symbols
111 (pe_dll_add_excludes): Set excludes->type.
112 (auto_export): Add new variable libname and set to archive basename if
113 abfd. Use it when filtering default and user-specified libarary
114 excludes. Let string "ALL" mean all libs when filtering user-specified
116 * ld.texinfo: Document --exclude-libs.
118 2002-05-22 Alan Modra <amodra@bigpond.net.au>
120 * ldemul.c (ldemul_new_vers_pattern): New function.
121 * ldemul.h (ldemul_new_vers_pattern): Declare.
122 (struct ld_emulation_xfer_struct): Add new_vers_pattern.
123 * ldlang.c (lang_new_vers_pattern): Call ldemul_new_vers_pattern.
124 * emultempl/ppc64elf.em (dotsyms): New static var.
125 (gld${EMULATION_NAME}_new_vers_pattern): New function.
126 (LDEMUL_NEW_VERS_PATTERN): Define.
127 (PARSE_AND_LIST_PROLOGUE): Add OPTION_DOTSYMS, OPTION_NO_DOTSYMS.
128 (PARSE_AND_LIST_LONGOPTS): Likewise.
129 (PARSE_AND_LIST_ARGS_CASES): Handle them.
130 * emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Update
132 * emultempl/armcoff.em: Likewise.
133 * emultempl/armelf_oabi.em: Likewise.
134 * emultempl/beos.em: Likewise.
135 * emultempl/elf32.em: Likewise.
136 * emultempl/generic.em: Likewise.
137 * emultempl/gld960.em: Likewise.
138 * emultempl/gld960c.em: Likewise.
139 * emultempl/linux.em: Likewise.
140 * emultempl/lnk960.em: Likewise.
141 * emultempl/m68kcoff.em: Likewise.
142 * emultempl/mipsecoff.em: Likewise.
143 * emultempl/pe.em: Likewise.
144 * emultempl/sunos.em: Likewise.
145 * emultempl/ticoff.em: Likewise.
146 * emultempl/vanilla.em: Likewise.
148 2002-05-22 Alan Modra <amodra@bigpond.net.au>
150 * genscripts.sh (LIB_PATH): For native targets, concatenate $libdir
151 and $NATIVE_LIB_DIRS. Add $tool_lib before other libs.
152 (LIB_SEARCH_DIRS): No need to use "tr".
153 (COMPILE_IN): Only set for native targets.
154 * configure.host (NATIVE_LIB_DIRS): Specify all native search dirs
155 here, rather than adding lib:/usr/lib:/usr/local/lib in genscripts.sh.
156 * configure.tgt (powerpc*): Set tdir_*.
157 (powerpcle*): Correct targ_extra_emuls.
158 * emulparams/elf32ppc.sh (LIB_PATH): Set up native 64 bit dirs.
159 * emulparams/elf64ppc.sh (LIB_PATH): Likewise.
161 2002-05-22 Alan Modra <amodra@bigpond.net.au>
163 * emultempl/pe.em (set_pe_subsystem): Don't set "cmdline" when
164 calling lang_add_entry.
166 2002-05-21 H.J. Lu (hjl@gnu.org)
168 * emultempl/elf32.em (gld${EMULATION_NAME}_parse_args): Handle
170 (gld${EMULATION_NAME}_list_options): Add "-z muldefs".
172 * ld.texinfo: Updated for --allow-multiple-definition and
175 * ldmain.c (main): Initialize the allow_multiple_definition
178 * lexsup.c (OPTION_ALLOW_MULTIPLE_DEFINITION): New.
179 (ld_options): Add --allow-multiple-definition.
180 (parse_args): Support OPTION_ALLOW_MULTIPLE_DEFINITION.
182 2002-05-21 Jason Thorpe <thorpej@wasabisystems.com>
184 * Makefile.am (ALL_EMULATIONS): Add earmelfb_nbsd.o.
185 (earmelfb_nbsd.c): New rule.
186 * Makefile.in: Regenerate.
187 * configure.tgt (armeb-*-netbsdelf*): New target.
188 (arm-*-netbsdelf*): Add armelfb_nbsd to targ_extra_emuls.
189 (arm-*-netbsd*): Likewise.
190 * emulparams/armelfb_nbsd.sh: New file.
192 2002-05-18 Tom Rix <trix@redhat.com>
194 * emultempl/aix.em (gld*_parse_args): Add -bnortl and -bnortllib
197 2002-05-17 Marek Michalkiewicz <marekm@amelek.gda.pl>
199 * Makefile.am: Add new emulations avr1, avr2, avr3, avr4, avr5.
200 * Makefile.in: Regenerate.
201 * configure.tgt (avr-*-*): Add avr[1-5] to targ_extra_emuls.
203 2002-05-16 Marek Michalkiewicz <marekm@amelek.gda.pl>
205 * emulparams/avr1.sh: New file.
206 * emulparams/avr2.sh: New file.
207 * emulparams/avr3.sh: New file.
208 * emulparams/avr4.sh: New file.
209 * emulparams/avr5.sh: New file.
210 * scripttempl/avr.sc: New file.
212 2002-05-15 Alan Modra <amodra@bigpond.net.au>
214 * ldlang.c (section_already_linked): Call bfd_link_just_syms.
215 (lang_place_orphans): Abort if just_syms_flag.
217 2002-05-10 Tom Rix <trix@redhat.com>
219 * emultempl/aix.em: (gld*_set_output_arch): New function. Use
220 architecture and machine information in the output bfd.
221 (gld*_before_parse): Remove old arch and machine code.
222 (choose_target): Rename to gld*_choose_target.
223 (rtld): Change type to int.
224 * ldfile.c (ldfile_try_open_bfd): Disable compatiblity check for
225 objects in XCOFF archives.
226 * ldfile.h: Update copyright date.
228 2002-05-10 Jakub Jelinek <jakub@redhat.com>
230 * ldmain.c (main): Enable -z combreloc by default.
232 2002-05-07 Federico G. Schwindt <fgsch@olimpo.com.br>
234 * Makefile.am: Honour DESTDIR.
235 * Makefile.in: Regenerate.
237 2002-05-07 Richard Sandiford <rsandifo@redhat.com>
239 * ldlang.h (lang_output_section_statement_type): Add update_dot_tree.
240 (lang_enter_overlay): Remove the last two parameters.
241 (lang_leave_overlay): Take them here instead.
242 * ldgram.y (memspec_at_opt): Set $$ to null if no region is given.
243 (section): Pass LMA and crossref flag to lang_leave_overlay rather
244 than lang_enter_overlay.
245 * ldlang.c (lang_memory_region_lookup): Return null for null names.
246 (lang_output_section_statement_lookup): Initialize update_dot_tree.
247 (lang_size_sections_1): Evaluate it.
248 (lang_leave_output_section_statement): Rework LMA lookup.
249 (overlay_lma, overlay_nocrossrefs): Remove.
250 (lang_enter_overlay): Remove LMA and crossref arguments.
251 (lang_enter_overlay_section): Don't set the LMA here.
252 (lang_leave_overlay): Take LMA and crossref arguments. Move the '.'
253 assignment to the last section's update_dot_tree. Unconditionally
254 use the load and run-time regions specified in the OVERLAY statement.
255 Likewise the first section's LMA. Only set the other sections' LMAs
256 when no load region is given.
258 2002-05-06 Nick Clifton <nickc@redhat.com>
260 * po/sv.po: New translation.
262 2002-05-04 Alan Modra <amodra@bigpond.net.au>
264 * emultempl/hppaelf.em (build_section_lists): New function.
265 (gld${EMULATION_NAME}_finish): Call elf32_hppa_setup_section_lists
266 and build_section_lists.
268 2002-05-03 Kazu Hirata <kazu@cs.umass.edu>
270 * ld.h: Fix formatting.
272 * ldfile.c: Likewise.
273 * ldlang.c: Likewise.
274 * ldmain.c: Likewise.
275 * lexsup.c: Likewise.
276 * pe-dll.c: Likewise.
278 2002-05-02 Alan Modra <amodra@bigpond.net.au>
280 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation):
281 Adjust for ppc64_elf_set_toc change. #include libbfd.h.
282 (build_section_lists): Do output_section tests here.
284 2002-04-30 Tom Rix <trix@redhat.com>
286 * emultempl/aix.em : (gld*_parse_arge): Formatting changes.
288 2002-05-01 Alan Modra <amodra@bigpond.net.au>
290 Long branch stubs, multiple stub sections.
291 * emultempl/ppc64elf.em: Include ldctor.h.
292 (stub_file): New var.
293 (group_size): New var.
294 (ppc_create_output_section_statements): New function.
295 (struct hook_stub_info): New.
296 (hook_in_stub): New function.
297 (ppc_add_stub_section): New function.
298 (ppc_layout_sections_again): New function.
299 (build_section_lists): New function.
300 (gld${EMULATION_NAME}_finish): Rewrite.
301 (real_func): New var.
302 (ppc_for_each_input_file_wrapper): New function.
303 (ppc_lang_for_each_input_file): New function.
304 (lang_for_each_input_file): Define.
305 (PARSE_AND_LIST_PROLOGUE): Define.
306 (PARSE_AND_LIST_LONGOPTS): Define.
307 (PARSE_AND_LIST_OPTIONS): Define.
308 (PARSE_AND_LIST_ARGS_CASES): Define.
309 (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
311 2002-04-30 Tom Rix <trix@redhat.com>
313 * emultempl/aix.em (gld*_parse_arge, gld*_before_allocation): Add
314 -blibpath, -bnolibpath support.
316 2002-04-30 Mark Mitchell <mark@codesourcery.com>
318 * Makefile.am (ALL_EMULATIONS): Add elf32ppcwindiss.o.
319 (eelf32ppcwindiss.c): New target.
320 * Makefile.in: Regenerated.
321 * configure.tgt: Add support for powerpc-*-windiss.
322 * emulparams/elf32ppcwindiss.sh: New file.
324 2002-04-30 Richard Sandiford <rsandifo@redhat.com>
326 * ldlang.c (print_assignment): Update print_dot for assignments to ".".
327 * ldexp.c (exp_print_token): Add "infix_p" argument.
328 (exp_print_tree): Update accordingly.
330 2002-04-28 Alan Modra <amodra@bigpond.net.au>
332 * Makefile.am (mpw): New maintainer mode rule to make mpw-*.c files.
333 * Makefile.in: Regenerate.
334 * mpw-elfmips.c: Delete.
335 * mpw-eppcmac.c: Delete.
337 * mpw-idtmips.c: Delete.
339 Wed Apr 17 19:23:14 2002 J"orn Rennecke <joern.rennecke@superh.com>
341 * emulparams/shelf32.sh (MACHINE): Now sh5.
343 2002-04-17 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
345 * ldgram.y: Fix syntax warning.
347 2002-04-11 Nick Clifton <nickc@cambridge.redhat.com>
349 * emultempl/armelf.em (PARSE_AND_LIST_SHORTOPTS): Add 'n' in order
350 to prevent "-n" from being taken as an abbreviation for
351 "--no-pipeline-knowledge".
353 2002-04-08 Alan Modra <amodra@bigpond.net.au>
355 * ldlang.c (lang_size_sections_1): Don't complain about
356 SEC_NEVER_LOAD sections having no memory region specified.
358 * ld.texinfo (Format Commands <OUTPUT_FORMAT>): Typo fix.
360 2002-04-07 matthew green <mrg@redhat.com>
362 * ld/configure.host (*-*-netbsd*): Add support for NetBSD/ELF.
364 2002-04-04 Alan Modra <amodra@bigpond.net.au>
366 * dep-in.sed: Cope with absolute paths.
367 * Makefile.am (dep.sed): Subst TOPDIR and BFDDIR.
369 * Makefile.in: Regenerate.
371 2002-04-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
373 * emulparams/elf64btsmip.sh: n64 replaces .reginfo with .MIPS.options.
375 2002-04-03 Jakub Jelinek <jakub@redhat.com>
377 * ldexp.c (fold_binary) [DATA_SEGMENT_ALIGN]: If common page size
378 is smaller than maximum, round dot up to common page boundary.
380 2002-03-28 Alan Modra <amodra@bigpond.net.au>
382 * configure.host: Set up for generic hosts first, then tweak as
383 necessary in more specific targets.
384 (HOSTING_LIBS): Include libgcc_eh.a if found.
386 2002-03-23 Andreas Jaeger <aj@suse.de>
388 * emulparams/elf_x86_64.sh (COMMONPAGESIZE): Set it.
390 2002-03-21 Alan Modra <amodra@bigpond.net.au>
392 * Makefile.am: Run "make dep-am".
393 * Makefile.in: Regenerate.
395 2002-03-21 Albert Chin-A-Young <china@thewrittenword.com>
397 * genscripts.sh (LIB_SEARCH_DIRS): Quote path.
399 2002-03-20 Alan Modra <amodra@bigpond.net.au>
401 * ldlang.c (ldlang_add_undef): If the output bfd has been opened,
402 add the symbol to the linker hash table immediately.
403 (lang_place_undefineds): Split symbol creation out..
404 (insert_undefined): ..to here.
406 2002-03-18 David O'Brien <obrien@FreeBSD.org>
408 * emultempl/elf32.em: Use lbasename vs. basename to fix problem where
409 the contents of the buffer returned from basename function will are
410 getting overwritten while still being used.
412 Mon Mar 18 17:38:39 CET 2002 Jan Hubicka <jh@suse.cz>
413 Andreas Jaeger <aj@suse.de>
414 Andreas Schwab <schwab@suse.de>
416 * configure.tgt (x86_64-*-linux-gnu*): Configure i386 as native.
417 * elf_x86_64.sh (ARCH): Set to i386:x86-64
418 set libraries to default to lib64 paths.
420 2002-03-18 Tom Rix <trix@redhat.com>
422 * Makefile.am : Add eaix5ppc and eaix5rs6, AIX 5 support.
423 * configure.tgt : Same.
424 * emulparms/aix5ppc.sh : New file. For eaix5ppc.
425 * emulparms/aix5rs6.sh : New file. For eaix5rs6.
426 * emulparms/aixppc.sh : OUPUT_FORMAT_32BIT and OUTPUT_FORMAT_64BIT
427 emulation parameters for better -b32, -b64 support.
428 * emulparms/aixrs6.sh : Same.
429 * emulparms/ppcmacos.sh : Same.
430 * emultempl/aix.em (choose_target) : Use new emulation parameters
431 OUTPUT_FORMAT_32BIT and OUTPUT_FORMAT_64BIT.
432 * Makefile.in : Regenerate.
434 2002-03-18 Nick Clifton <nickc@cambridge.redhat.com>
436 * po/fr.po: Updated version.
438 2002-03-18 Alan Modra <amodra@bigpond.net.au>
440 * ldmain.c (main): Move .text readonly flag fudges from here..
441 * ldlang.c (lang_process): ..to here.
443 2002-03-14 Alan Modra <amodra@bigpond.net.au>
445 * ldlang.c (lang_check): Remove the word size check added in last
446 change. Treat emitrelocations case as for relocatable links.
448 2002-03-13 Nick Clifton <nickc@cambridge.redhat.com>
450 * po/fr.po: Updated version.
452 2002-03-13 Alan Modra <amodra@bigpond.net.au>
454 * ldlang.c (lang_check): Do relocatable link checks first, so that
455 warn_mismatch can't override. Check compatible and word size too.
457 2002-03-07 Daniel Jacobowitz <drow@mvista.com>
459 * ld.texinfo: Wrap @menu in @ifnottex, not @ifinfo.
461 2002-03-05 Jakub Jelinek <jakub@redhat.com>
463 * scripttempl/elf.sc: Only use DATA_SEGMENT_END() together with
466 2002-03-04 H.J. Lu <hjl@gnu.org>
468 * scripttempl/elf.sc: Put .preinit_array, .init_array and
469 .fini_array in the data segment.
471 2002-03-04 Alan Modra <amodra@bigpond.net.au>
473 * scripttempl/elf.sc: Correct syntax errors in 2002-03-01 commit.
475 2002-03-01 David Mosberger <davidm@hpl.hp.com>
477 * scripttempl/elf.sc (SECTIONS): Add entries for .preinit_array,
478 .init_array, and .fini_array.
480 2002-02-20 Andreas Schwab <schwab@suse.de>
482 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Don't fold
483 .IA64_unwind* in a relocatable link.
485 2002-02-20 Nick Clifton <nickc@cambridge.redhat.com>
487 * NEWS: Mark 2.12 branch.
489 2002-02-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
491 * emulparams/elf64_s390.sh (ARCH): Change to "s390:64-bit".
492 * emulparams/elf_s390.sh (ARCH): Change to "s390:31-bit".
494 2002-02-18 Tom Rix <trix@redhat.com>
496 * emultempl/aix.em (gld*_parse_args): Add -brtl support.
497 (gld*_before_allocation): Same.
498 (gld*_create_output_section_statements): Generate
499 __rtinit if run time linking. Add librtl.a to the link.
500 (gld*_read_file): Clean.
502 2002-02-18 Alan Modra <amodra@bigpond.net.au>
504 * emulparams/elf64ppc.sh (OTHER_TEXT_SECTIONS): Define.
506 2002-02-18 David O'Brien <obrien@FreeBSD.org>
508 * Makefile.am: Add new files earmelf_fbsd, eelf32ppc_fbsd,
509 eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
510 and eelf64alpha_fbsd.
511 * Makefile.in: Regenerate.
512 * configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd,
513 x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd):
514 use a FreeBSD-specific emulation rather than the psABI one.
515 * emulparams/elf_fbsd.sh (ELF_INTERPRETER_NAME): Set appropriate value
516 for all FreeBSD ELF systems.
517 * emulparams/armelf_fbsd.sh: Bridge elf_fbsd.sh and the "native" psABI
519 * emulparams/elf32ppc_fbsd.sh: Likewise.
520 * emulparams/elf64_ia64_fbsd.sh: Likewise.
521 * emulparams/elf64_sparc_fbsd.sh: Likewise.
522 * emulparams/elf64alpha_fbsd.sh: Likewise.
523 * emulparams/elf_i386_fbsd.sh: Likewise.
524 * emulparams/elf_x86_64_fbsd.sh: Likewise.
526 2002-02-18 Nick Clifton <nickc@cambridge.redhat.com>
528 * po/tr.po: Updated version.
530 2002-02-18 Alan Modra <amodra@bigpond.net.au>
532 * ld.texinfo (Output Section Fill): Fix amateur texinfo.
535 2002-02-17 Hans-Peter Nilsson <hp@bitrange.com>
537 * emultempl/mmo.em (mmo_after_open): Don't call
538 _bfd_mmix_check_all_relocs when producing ELF output.
540 2002-02-15 Richard Henderson <rth@redhat.com>
542 * emulparams/elf64alpha.sh (NOP): Adjust for big-endian
543 definition. Emit a unop+nop pair.
545 2002-02-15 Hans-Peter Nilsson <hp@bitrange.com>
547 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Also check
548 for presence of .MMIX.reg_contents.linker_allocated before early
551 * NEWS: Mention support for MMIX.
553 2002-02-15 Alan Modra <amodra@bigpond.net.au>
555 Support arbitrary length fill patterns.
556 * ld.texinfo (Output Section Fill): Describe fill expressions.
557 (FILL): Refer to the above.
558 * ldexp.h (etree_value_type): Add "str" field.
559 (union etree_union): Add "str" to "value" struct.
560 (exp_bigintop): Declare.
561 (exp_get_fill): Declare.
562 * ldexp.c: Include "safe-ctype.h".
563 (exp_intop): Set value.str to NULL.
564 (exp_bigintop): New function.
565 (new_rel): Pass in "str", and set new.str from it.
566 (new_rel_from_section): Set new.str to NULL.
567 (fold_name): Adjust calls to new_rel.
568 (exp_fold_tree): Likewise.
569 (exp_get_fill): New function.
570 * ldgram.y (struct big_int bigint, fill_type *fill): New.
571 (INT): Returns a "bigint". Adjust all code handling INTs.
572 (fill_opt): Returns a "fill".
573 (fill_exp): Split out of fill_opt, use for FILL.
574 * ldlang.h (struct _fill_type): New.
575 (fill_type): Move typedef to ldexp.h.
576 (lang_output_section_statement_type): "fill" is now a pointer.
577 (lang_fill_statement_type): Likewise.
578 (lang_padding_statement_type): Likewise.
579 (lang_add_fill): Now takes a "fill_type *" param.
580 (lang_leave_output_section_statement): Likewise.
581 (lang_do_assignments): Likewise.
582 (lang_size_sections): Likewise.
583 (lang_leave_overlay_section): Likewise.
584 (lang_leave_overlay): Likewise.
585 * ldlang.c: Include ldgram.h after ldexp.h.
586 (lang_output_section_statement_lookup): Adjust for fill_type change.
587 (print_fill_statement): Likewise.
588 (print_padding_statement): Likewise.
589 (insert_pad): Now takes a "fill_type *" arg.
590 (size_input_section): Likewise.
591 (lang_size_sections_1): Likewise.
592 (lang_size_sections): Likewise.
593 (lang_do_assignments): Likewise.
594 (lang_add_fill): Likewise.
595 (lang_leave_output_section_statement): Likewise.
596 (lang_leave_overlay_section): Likewise.
597 (lang_leave_overlay): Likewise.
598 Adjust all callers of the above function.
599 * ldlex.l: Include ldgram.h after ldexp.h. Allow hex numbers
600 starting with "0X" as well as "0x". Return bigint.str for hex
601 numbers starting with "0x" or "0X", zero bigint.str otherwise.
602 Always use base 16 for numbers starting with "$".
603 * ldmain.c: Include ldgram.h after ldexp.h.
604 * ldwrite.c (build_link_order): Use bfd_data_link_order in place
605 of bfd_fill_link_order.
606 * pe-dll.c: Adjust lang_do_assignments calls.
607 * emultempl/elf32.em: Likewise.
608 * emultempl/hppaelf.em: Likewise.
609 * emultempl/ppc64elf.em: Likewise.
610 * emultempl/beos.em: Include ldgram.h after ldexp.h, adjust
611 lang_add_assignment call.
612 * emultempl/pe.em: Likewise.
614 2002-02-14 Phil Edwards <pme@gcc.gnu.org>
616 * ld.texinfo (VERSION scripts): Symbol names are globbing patterns.
617 * ldgram.y (lang_new_vers_regex): Rename to lang_new_vers_pattern;
618 the pattern in question is not a regexp.
619 * ldlang.c: Likewise.
620 * ldlang.h: Likewise.
621 * ldlex.l (V_IDENTIFIER): Allow '[', ']', '-', '!', and '^' also.
623 2002-02-12 Jakub Jelinek <jakub@redhat.com>
625 * ldlex.l (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
626 * ldgram.y (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
627 (exp): Add DATA_SEGMENT_ALIGN (exp, exp) and DATA_SEGMENT_END (exp).
628 * ldexp.c (exp_data_seg): New variable.
629 (exp_print_token): Handle DATA_SEGMENT_ALIGN and DATA_SEGMENT_END.
630 (fold_binary): Handle DATA_SEGMENT_ALIGN.
631 (exp_fold_tree): Handle DATA_SEGMENT_END.
632 Pass allocation_done when recursing instead of hardcoding
633 lang_allocating_phase_enum.
634 * ldexp.h (exp_data_seg): New.
635 * ldlang.c (lang_size_sections_1): Renamed from lang_size_sections.
636 (lang_size_sections): New.
637 * ld.texinfo (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): Document.
638 * scripttempl/elf.sc: Use DATA_SEGMENT_ALIGN and DATA_SEGMENT_END
639 if COMMONPAGESIZE is defined.
640 * emulparams/elf_i386.sh (COMMONPAGESIZE): Set to 4K.
641 * emulparams/elf32_sparc.sh (COMMONPAGESIZE): Set to 8K.
642 * emulparams/elf64_sparc.sh (COMMONPAGESIZE): Set to 8K.
643 * emulparams/elf64alpha.sh (COMMONPAGESIZE): Set to 8K.
644 * emulparams/elf64_ia64.sh (COMMONPAGESIZE): Set to 16K for shared
647 2002-02-11 Alan Modra <amodra@bigpond.net.au>
649 * Makefile.in: Regenerate.
651 2002-02-10 Daniel Jacobowitz <drow@mvista.com>
653 * lexsup.c: Remove strtoul declaration.
655 2002-02-10 Daniel Jacobowitz <drow@mvista.com>
657 * ldmain.c: Add prototype for main ().
658 * lexsup.c: Guard declaration of strtoul with HAVE_STDLIB_H.
659 * emultempl/lnk960.em (lnk960_choose_target): Function should
662 2002-02-10 Alan Modra <amodra@bigpond.net.au>
664 * ldlang.c (entry_section): New initialised variable.
665 (lang_finish): Use it.
666 * ldlang.h (entry_section): Declare.
667 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Set
668 entry_section to ".opd".
670 2002-02-09 Chris Demetriou <cgd@broadcom.com>
672 * ld.texinfo (Options): Add back in -nostdlib documentation,
673 which had been inadvertently removed.
675 2002-02-09 Hans-Peter Nilsson <hp@bitrange.com>
677 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Adjust
678 register section vma to a sane value after emitting error. Make
679 fatal conditions cause program exit when emitting message.
681 2002-02-08 Ivan Guzvinec <ivang@opencores.org>
683 * configure.tgt: Add or32-*-rtems target.
685 2002-02-08 Alexandre Oliva <aoliva@redhat.com>
688 2002-01-24 Alexandre Oliva <aoliva@redhat.com>
689 * emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined
690 in OTHER_RELOCATABLE_SECTIONS.
691 2002-01-18 Alexandre Oliva <aoliva@redhat.com>
692 * emulparams/shelf32.sh (STACK_ADDR): Define.
693 (OTHER_RELOCATABLE_SECTIONS): Renamed to...
694 (OTHER_SECTIONS): this. Removed stack settings.
695 * emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set.
696 (OTHER_SECTIONS): Reset after sourcing shelf32.sh.
697 2001-03-12 DJ Delorie <dj@redhat.com>
698 * emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
699 relaxing if any shmedia or mixed sections are found.
700 2001-03-07 DJ Delorie <dj@redhat.com>
701 * emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
702 einfo. Gracefully decline to output to non-elf formats.
703 2001-03-06 Hans-Peter Nilsson <hpn@redhat.com>
704 * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>:
705 Default to _end aligned to next multiple of 0x40000, plus 0x40000.
706 * emulparams/shelf32.sh: Ditto.
707 2001-01-14 Hans-Peter Nilsson <hpn@cygnus.com>
708 * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak
710 2001-01-10 Ben Elliston <bje@redhat.com>
711 * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid
712 non-portable shell constructs. From Hans-Peter Nilsson.
713 2001-01-09 Hans-Peter Nilsson <hpn@cygnus.com>
714 * emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty.
715 * Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
716 dependencies to the shell script include chain.
717 * Makefile.in: Regenerate.
718 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
719 * emultempl/sh64elf.em: Update and tweak comments.
720 (sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
721 make a .cranges section SEC_IN_MEMORY.
722 2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
723 * emultempl/sh64elf.em
724 (sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
725 .cranges section found to be necessary; continue and set stored
726 section contents flags for sections with non-mixed contents.
727 Use a struct sh64_section_data container and sh64_elf_section_data
728 to store contents-type flags.
729 Remove unused update of "isec".
730 (sh64_elf_${EMULATION_NAME}_after_allocation): Only process
731 sections marked SHF_SH5_ISA32_MIXED. Use sh64_elf_section_data to
732 access contents-type flags. Assert that the associated container
733 is initialized. Use that container, not elf_gp_size, to hold size
734 of linker-generated cranges contents.
735 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
736 * emultempl/sh64elf.em
737 (sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
738 there's already a .cranges section. When section flag difference
739 is found, don't NULL-check cranges a second time. Tweak comments.
740 (sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
741 merging, not max size, as size of ld-generated .cranges contents.
742 Don't set ELF section flags in output section. When checking for
743 needed .cranges descriptors, don't use a variable; compare
744 incoming ELF section flags directly to SHF_SH5_ISA32_MIXED. Tweak
746 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
747 * emultempl/sh64elf.em: New file.
748 * Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies.
749 * Makefile.in: Regenerate.
750 * emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set.
751 (OTHER_RELOCATING_SECTIONS): Ditto.
752 (EXTRA_EM_FILE): New, set to sh64elf if not set.
753 * emulparams/shlelf32.sh: Stub out all settings except
754 OUTPUT_FORMAT. Source shelf32.sh.
755 * emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and
756 OTHER_RELOCATING_SECTIONS.
757 (OTHER_RELOCATING_SECTIONS): Remove .cranges.
758 * emulparams/shlelf64.sh: Stub out all settings except
759 OUTPUT_FORMAT. Source shelf64.sh.
760 2000-12-15 Hans-Peter Nilsson <hpn@cygnus.com>
761 * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include
763 (DATA_START_SYMBOLS): Define, provide ___data.
764 (OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
765 for consecutive .data section.
766 (OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
767 section after .data section.
768 * emulparams/shlelf64.sh: Ditto.
769 * emulparams/shelf32.sh: Ditto.
770 (ALIGNMENT): Define to 8.
771 * emulparams/shelf32.sh: Ditto.
772 2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
773 * configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
774 built-in linker scripts.
775 2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com>
776 * emulparams/shlelf64.sh: New.
777 * emulparams/shelf64.sh: New.
778 * configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
780 * Makefile.am: Add support for shlelf64 and shelf64.
781 * Makefile.in: Regenerate.
782 2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com>
783 * configure.tgt (sh64-*-elf*): Add shelf as default.
784 Add shlelf to targ_extra_emuls.
785 2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
786 * emulparams/shelf32.sh: New file.
787 * emulparams/shlelf32.sh: New file.
788 * Makefile.am: Add support for shlelf32 and shelf32.
789 * configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
790 * Makefile.in: Regenerate.
792 2002-02-05 Hans-Peter Nilsson <hp@axis.com>
794 * ldlang.c (lang_reset_memory_regions): Rename from
795 reset_memory_regions. Change all callers. Make public.
796 * ldlang.h (lang_reset_memory_regions): Prototype.
797 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Call
798 lang_reset_memory_regions before lang_size_sections.
799 * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
800 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Likewise.
802 2002-02-04 Hans-Peter Nilsson <hp@bitrange.com>
804 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Use signed
805 arithmetic when checking for too many global registers.
807 2002-02-02 Jason Thorpe <thorpej@wasabisystems.com>
809 * Makefile.am (ALL_EMULATIONS): Add ehppanbsd.o.
810 (ehppanbsd.c): New rule.
811 * Makefile.in: Regenerate.
812 * configure.tgt (hppa*-*-netbsd*): New target.
813 * emulparams/hppalinux.sh: Add comment to check other files
814 that source this file it is modified, and list which
816 * emulparams/hppanbsd.sh: New file.
818 2002-02-01 Geoffrey Keating <geoffk@redhat.com>
820 * scripttempl/xstormy16.sc: Don't allocate extra space for the
823 2002-02-01 Hans-Peter Nilsson <hp@bitrange.com>
825 Support on-demand global register allocation from
826 R_MMIX_BASE_PLUS_OFFSET relocs.
827 * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Rename from
828 mmix_set_reg_section_vma. Call
829 _bfd_mmix_finalize_linker_allocated_gregs.
830 (mmix_before_allocation): New function.
831 (LDEMUL_AFTER_ALLOCATION): Set to mmix_after_allocation.
832 (LDEMUL_BEFORE_ALLOCATION): Define to mmix_before_allocation.
833 * scripttempl/mmo.sc (.text): Mark .init, .fini as KEEP.
834 (.MMIX.reg_contents): Add .MMIX.reg_contents.linker_allocated
835 before .MMIX.reg_contents.
836 * emultempl/mmo.em (gldmmo_before_allocation): Define to default.
837 (mmo_after_open): New function.
838 (LDEMUL_AFTER_OPEN): Define to mmo_after_open.
839 * emulparams/elf64mmix.sh (OTHER_SECTIONS): Tweak formatting. Add
840 .MMIX.reg_contents.linker_allocated before .MMIX.reg_contents.
842 2002-01-31 Ivan Guzvinec <ivang@opencores.org>
844 * emulparams/or32.sh: New file.
845 * emulparams/or32elf.sh: New file.
846 * scripttempl/or32.sc: New file.
847 * configure.tgt : Add support for or32.
848 * configure: Regenerate
849 * Makefile.am: Add support for or32.
850 * Makefile.in: Regenerate.
851 * NEWS: Mention support for or32.
852 * po/ld.pot: Regenerate.
854 2002-01-29 Chris Demetriou <cgd@broadcom.com>
855 Mitch Lichtenberg <mpl@broadcom.com>
857 * emulparams/elf32bmip.sh (EXTRA_EM_FILE): Define to be mipself.
858 * emultempl/mipself.em: New file to handle MIPS ELF embedded
859 reloc creation (ld --embedded-relocs).
861 2002-01-27 Daniel Jacobowitz <drow@mvista.com>
863 * configure: Regenerated.
865 2002-01-26 Hans-Peter Nilsson <hp@bitrange.com>
867 * Makefile.am (install): Depend on install-info.
868 * Makefile.in: Regenerate.
870 2002-01-26 Christian Rose <menthos@menthos.com>
872 * ldmain.c (main): Use full sentences to ease translation.
874 2002-01-26 Nick Clifton <nickc@cambridge.redhat.com>
876 * po/fr.po: Updated version.
878 2002-01-25 Nick Clifton <nickc@cambridge.redhat.com>
880 * po/es.po: Updated version.
882 2002-01-25 Andreas Jaeger <aj@suse.de>
884 * ldlex.l (yy_input): Correct error check.
886 2002-01-25 Alan Modra <amodra@bigpond.net.au>
888 * ldmisc.c (demangle): Put back dots when string not demangled.
890 2002-01-22 Richard Henderson <rth@redhat.com>
892 * emulparams/elf64alpha.sh (NOP): Use unop.
894 2002-01-21 Andreas Jaeger <aj@suse.de>
896 * ldlex.l: Use fread instead of read.
898 2002-01-21 Jason Thorpe <thorpej@wasabisystems.com>
900 * configure.tgt (ia64-*-netbsd*): New target.
902 2002-01-21 H.J. Lu <hjl@gnu.org>
904 * emulparams/elf32btsmip.sh (SHLIB_TEXT_START_ADDR): Change to
906 * emulparams/elf64btsmip.sh (SHLIB_TEXT_START_ADDR): Likewise.
908 2002-01-18 Andreas Jaeger <aj@suse.de>
910 * ldver.c (ldversion): Update year.
912 2002-01-17 Nick Clifton <nickc@cambridge.redhat.com>
914 * po/ld.pot: Regenerate.
916 2002-01-16 Alan Modra <amodra@bigpond.net.au>
918 * Makefile.am (eelf64ppc.c, eelf64lppc.c): Depend on ppc64elf.em.
919 * Makefile.in: Regenerate.
920 * emulparams/elf64ppc.sh (EXTRA_EM_FILE): Define.
921 * emultempl/ppc64elf.em: New file.
923 2002-01-15 DJ Delorie <dj@redhat.com>
925 * scripttempl/pe.sc: Add support for constructor priorities.
927 2002-01-07 Marek Michalkiewicz <marekm@amelek.gda.pl>
929 * emulparams/avr1200.sh (DATA_START): Define as 0x60.
930 * emulparams/avr23xx.sh: Likewise.
931 * emulparams/avr4433.sh: Likewise.
932 * emulparams/avr44x4.sh: Likewise.
933 * emulparams/avr85xx.sh: Likewise.
934 * emulparams/avrmega103.sh: Likewise.
935 * emulparams/avrmega161.sh: Likewise.
936 * emulparams/avrmega603.sh: Likewise.
937 * scripttempl/elf32avr.sc: Use DATA_START instead of 0x60.
939 2002-01-08 Alexandre Oliva <aoliva@redhat.com>
941 * ldlang.c (walk_wild_section): Exclude object file if enclosing
944 2002-01-07 Jason Thorpe <thorpej@wasabisystems.com>
946 * Makefile.am (ALL_EMULATIONS): Add eshelf_nbsd.o and eshlelf_nbsd.o.
947 (eshelf_nbsd.c): New rule.
948 (eshlelf_nbsd.c): New rule.
949 * Makefile.in: Regenerate.
950 * configure.tgt (sh*le-*-netbsdelf*): New target.
951 (sh*-*-netbsdelf*): New target.
952 * emulparams/shelf.sh: Document that shelf_nbsd.sh sources this file.
953 * ld/emulparams/shelf_nbsd.sh: New emulation.
954 * ld/emulparams/shlelf_nbsd.sh: New emulation.
956 2002-01-07 Nick Clifton <nickc@cambridge.redhat.com>
958 * po/es.po: New file: Spanish translation.
959 * configure.in (ALL_LINGUAS): Add es.
960 * configure: Regenerate.
962 2002-01-06 John Marshall <jmarshall@acm.org>
964 * ld.texinfo: Note that --emit-relocs is currently only
967 2002-01-05 Alan Modra <amodra@bigpond.net.au>
969 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Make use
970 of bfd_section_list_remove and bfd_section_list_insert macros.
971 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
972 * emultempl/mmo.em (mmo_place_orphan): Likewise.
974 2002-01-04 Jason Thorpe <thorpej@wasabisystems.com>
976 * configure.tgt (x86_64-*-netbsd*): New target.
978 2001-12-21 Tom Rix <trix@redhat.com>
980 (gld*_create_output_section_statements): New function.
981 For -binitfini support.
982 * emultempl/aix.em (gld*_before_parse): Fix comment.
983 * emultempl/aix.em (gld*_parse_args): Fix comment.
985 2001-12-20 Jason Thorpe <thorpej@wasabisystems.com>
987 * configure.tgt (mips*-dec-netbsd*): Delete alias for
989 (sparc64-*-netbsd*): Add elf32_sparc to targ_extra_emuls.
991 * configure.tgt (arm-*-netbsdelf*): Add target.
992 (arm-*-netbsd*): Add armelf and armelf_nbsd to targ_extra_emuls.
993 * emulparams/armelf_nbsd.sh: Added.
994 * Makefile.am: Add rules for earmelf_nbsd.
995 * Makefile.in: Regenerate.
997 2001-12-19 Andreas Jaeger <aj@suse.de>,
998 Susanne Oberhauser <froh@suse.de>
1000 * configure.host: Add rules for x86_64-*linux-gnu. Change
1001 s390x-linux entry to use gcc to report configuration, replace gcc
1002 with $CC in s390-linux
1004 2001-12-19 Andreas Jaeger <aj@suse.de>
1006 * ld.texinfo (VERSION): Fix markup.
1008 2001-12-18 matthew green <mrg@eterna.com.au>
1010 * Makefile.am (ALL_EMULATIONS): Add m68kelfnbsd.o.
1011 (m68kelfnbsd.c): New rule.
1012 * Makefile.in: Regenerate.
1013 * configure.tgt (m68*-hp-netbsd*): Renamed to ..
1014 (m68*-*-netbsd*4k*): .. this.
1015 (m68*-*-netbsdelf*): New target.
1016 (m68*-*-netbsd*): Also include ELF support.
1017 (m68*-*-netbsdaout*): New alias for m68*-*-netbsd*.
1018 * emulparams/m68kelfnbsd.sh: New emulation.
1020 2001-12-18 Jakub Jelinek <jakub@redhat.com>
1022 * ldgram.y (vers_node): Support anonymous version tags.
1023 * ldlang.c (lang_register_vers_node): Ensure anonymous version
1024 tag is not defined together with non-anonymous versions.
1025 * ld.texinfo: Document it.
1027 2001-12-18 Nick Clifton <nickc@cambridge.redhat.com>
1029 * po/tr.po: New file: Turkish translation.
1030 * configure.in (ALL_LINGUAS): Add tr.
1031 * configure: Regenerate.
1033 2001-12-17 Jason Thorpe <thorpej@wasabisystems.com>
1035 * Makefile.am: Add rules for eelf64alpha_nbsd.
1036 * Makefile.in: Regenerate.
1037 * configure.tgt (alpha*-*-netbsd*): Set
1038 targ_emul to elf64alpha_nbsd.
1039 * emulparams/elf64alpha_nbsd.sh: Added.
1041 2001-12-17 Alan Modra <amodra@bigpond.net.au>
1043 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Adjust
1044 section_tail when fiddling with section list.
1045 (gld${EMULATION_NAME}_list_options): Ensure sentences aren't
1046 broken into separate strings to make translation easier.
1047 * emultempl/mmo.em (mmo_place_orphan): Adjust section_tail when
1048 fiddling with section list.
1049 * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise.
1051 2001-12-16 Hans-Peter Nilsson <hp@bitrange.com>
1053 * scripttempl/mmo.sc: Add .debug_ranges to listed sections.
1055 2001-12-15 Alan Modra <amodra@bigpond.net.au>
1057 * ldmain.c (main): Initialise link_info.eh_frame_hdr.
1059 2001-12-13 Jakub Jelinek <jakub@redhat.com>
1061 * emultempl/elf32.em (finish): Supply output_bfd
1062 to bfd_elf*_discard_info.
1063 (OPTION_EH_FRAME_HDR): Define.
1064 (longopts): Add --eh-frame-hdr.
1065 (parse_args): Handle it.
1066 (list_options): Add --eh-frame-hdr to help.
1067 * emultempl/hppaelf.em (finish): Supply output_bfd
1068 to bfd_elf*_discard_info.
1069 * scripttempl/elf.sc (.eh_frame_hdr): Add.
1071 2001-12-13 Alan Modra <amodra@bigpond.net.au>
1073 * lexsup.c (parse_args): Don't pass shortopts to second call to
1074 getopt functions. Restore optind rather than decrementing before
1075 second call. Remove errind as it now duplicates last_optind.
1077 2001-12-11 Christopher Faylor <cgf@redhat.com>
1079 * emultempl/pe.em (gld_${EMULATION_NAME}_list_options): Fix typo.
1081 2001-12-07 Geoffrey Keating <geoffk@redhat.com>
1082 Richard Henderson <rth@redhat.com>
1084 * Makefile.am: Add support for xstormy16.
1085 * configure.tgt: Add support for xstormy16.
1086 * Makefile.in: Regenerate.
1087 * emulparams/elf32xstormy16.sh: New file.
1088 * scripttempl/xstormy16.sc: New file.
1090 2001-10-01 Christopher Faylor <cgf@cygnus.com>
1092 * Makefile.in (LIB_PATH): Make configurable.
1093 (GENSCRIPTS): Set LIB_PATH in environment.
1094 * configure.in: Substitute LIB_PATH.
1095 * configure: Regenerate.
1096 * configure.tgt (*cygwin): Set LIB_PATH for cross build.
1097 * configure.host (*cygwin): Add /usr/lib/w32api to NATIVE_LIB_DIRS.
1099 2001-12-07 Nick Clifton <nickc@cambridge.redhat.com>
1101 * lexsup.c (ld_options): Insert 'PROGRAM' into the text string
1102 describing the -N option so that it is easier to translate into
1105 2001-12-05 Nick Clifton <nickc@cambridge.redhat.com>
1107 * emultempl/pe.em (..._list_options): Replace multiple fprintf
1108 statements describing a single option with a single, newline
1109 escaped fprintf. This allows better translation into other
1112 * ldmain.c (add_archive_element): Combine multiple strings
1113 into a single string to permit better translation into other
1116 2001-12-05 Tom Rix <trix@redhat.com>
1118 * Makefile.am: Remove eaixppc64.
1119 * Makefile.in: Regenerate.
1121 2001-12-04 Tom Rix <trix@redhat.com>
1123 * emultempl/aix.em (choose_target): Change default target to
1124 OUTPUT_FORMAT for ppcmacos. Add braces to remove compiler
1126 (gld*_read_file): Fix typo.
1127 (change_symbol_mode): Add prototype.
1130 * emulparams/aixppc.sh (SYSCALL_MASK, SYMBOL_MODE_MASK): Delete.
1131 * emulparams/aixrs6.sh : Same.
1132 * emulparams/ppcmacos.sh : Same.
1133 * emulparams/aixppc64.sh : Delete file.
1134 * emultempl/aix.em : Formatting changes.
1136 2001-12-04 Hans-Peter Nilsson <hp@axis.com>
1138 * emulparams/criself.sh (NO_SMALL_DATA): Set, to yes.
1139 (OTHER_BSS_END_SYMBOLS): Don't refer to .sbss when setting
1141 (OTHER_END_SYMBOLS): Fix formatting.
1142 * emulparams/crislinux.sh (NO_SMALL_DATA): Set, to yes.
1143 (OTHER_END_SYMBOLS): Fix formatting.
1145 2001-12-04 Alan Modra <amodra@bigpond.net.au>
1147 * ldexp.c (exp_print_token): Correct "table" entry for RSHIFT.
1149 2001-12-02 Tom Rix <trix@redhat.com>
1151 * configure.tgt : Remove eaixppc64 emulations.
1152 * Makefile.in : Remove eaixppc64.c
1153 * ldemul.c (ldemul_choose_target): New parameters argc, argv.
1154 (ldemul_default_target): Same.
1155 * emultempl/gld960.em (gld960_choose_target): Same.
1156 * emultempl/gld960c.em (gld960_choose_target): Same.
1157 * scripttempl/aix.sc: Remove OUTPUT_FORMAT.
1158 * emultempl/aix.em (is_syscall): syscall_mask now a variable.
1159 * emultempl/aix.em (gld*_read_file): symbol_mode_mask now a variable.
1160 * emultempl/aix.em (gld*_parse_args): Handle -b32 -b64 emulation.
1161 * emultempl/aix.em (choose_target): New function. Handle emulation of
1164 2001-11-27 H.J. Lu <hjl@gnu.org>
1166 * emulparams/elf_i386.sh (NO_SMALL_DATA): Set to yes.
1167 * emulparams/elf_i386_be.sh (NO_SMALL_DATA): Likewise.
1168 * emulparams/elf_i386_chaos.sh (NO_SMALL_DATA): Likewise.
1169 * emulparams/elf_i386_ldso.sh (NO_SMALL_DATA): Likewise.
1170 * emulparams/elf_x86_64.sh (NO_SMALL_DATA): Likewise.
1171 * emulparams/m68kelf.sh (NO_SMALL_DATA): Likewise.
1172 * emulparams/elf32_sparc.sh (NO_SMALL_DATA): Likewise.
1173 * emulparams/elf64_sparc.sh (NO_SMALL_DATA): Likewise.
1175 * scripttempl/elf.sc (SBSS): New. Define if ${NO_SMALL_DATA}
1178 (REL_SDATA): Likewise.
1179 (REL_SBSS): Likewise.
1180 (REL_SDATA2): Likewise.
1181 (REL_SBSS2): Likewise.
1182 (SBSS2): Define if ${NO_SMALL_DATA} is not empty.
1185 2001-11-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1187 * scripttempl/elfm68hc11.sc (CTOR, DTOR): Put constructor and
1189 * scripttempl/elfm68hc12.sc (CTOR, DTOR): Likewise.
1191 2001-11-22 H.J. Lu <hjl@gnu.org>
1193 * Makefile.in: Regenerated with automake based on automake
1194 1.4-8 in RedHat 7.1.
1196 2001-11-22 Alan Modra <amodra@bigpond.net.au>
1198 * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
1199 (config.status): Delete rule.
1200 Add extra dependencies to cover sourced emulparams files.
1201 * Makefile.in: Regenerate.
1203 * scripttempl/elf.sc: Order <section>, <section>.* and
1204 corresponding linkonce sections as seen in input files.
1205 Formatting fixes. Zero vma of all sections if not relocating.
1206 (STACK): Define and insert if STACK_ADDR defined.
1207 (OTHER_RELOCATING_SECTIONS): Delete.
1208 (OTHER_END_SYMBOLS): Define.
1209 (OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
1210 (OTHER_READWRITE_SECTIONS): Likewise.
1211 (OTHER_GOT_SECTIONS): Likewise.
1212 (OTHER_SDATA_SECTIONS): Likewise.
1213 (OTHER_BSS_SECTIONS): Likewise.
1214 * scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
1215 (OTHER_READWRITE_SECTIONS): Likewise.
1216 * scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
1217 (OTHER_READWRITE_SECTIONS): Likewise
1219 * emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
1220 (STACK_ADDR): Define.
1221 * emulparams/armelf_oabi.sh: As for armelf.sh.
1222 * emulparams/elf32mcore.sh: As for armelf.sh.
1223 * emulparams/h8300elf.sh: As for armelf.sh.
1224 * emulparams/mn10200.sh: As for armelf.sh.
1225 * emulparams/shelf.sh: As for armelf.sh.
1227 * emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
1228 (OTHER_END_SYMBOLS): Define.
1229 * emulparams/m32relf.sh: As for elf32fr30.sh.
1230 * emulparams/h8300helf.sh: As for elf32fr30.sh.
1231 * emulparams/h8300self.sh: As for elf32fr30.sh.
1233 * emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
1234 defines with RELOCATING test.
1235 (OTHER_SDATA_SECTIONS): Likewise.
1236 (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
1237 (OTHER_END_SYMBOLS): ..this.
1238 * emulparams/crislinux.sh: As for criself.sh.
1240 * emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
1242 (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
1243 (OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
1244 normal and linkonce sections as seen in input files.
1245 * emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
1246 (TEXT_DYNAMIC): Likewise.
1247 (INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
1248 (OTHER_SDATA_SECTIONS): Likewise.
1249 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
1250 * emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
1251 * emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
1252 * emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
1253 * emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
1254 (OTHER_PLT_RELOC_SECTIONS): Likewise.
1255 (OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
1256 sections as seen in input files.
1257 * emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
1258 * emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
1260 (OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
1261 (OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
1262 * emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
1263 (OTHER_SECTIONS): Instead, use this..
1264 (OTHER_END_SYMBOLS): ..and this.
1266 * emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
1267 * emulparams/elf32bsmip.sh: Likewise.
1268 * emulparams/elf32btsmip.sh: Likewise.
1269 * emulparams/elf32ebmip.sh: Likewise.
1270 * emulparams/elf32lmip.sh: Likewise.
1271 * emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
1272 * emulparams/elf32lsmip.sh: Likewise.
1273 * emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
1274 * emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
1275 * emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
1276 * emulparams/elf64btsmip.sh: Likewise.
1277 * emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
1278 * emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
1279 * emulparams/elf32ppclinux.sh: Likewise.
1280 * emulparams/elf32ppcsim.sh: Likewise.
1281 * emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
1282 * emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
1283 * emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
1284 * emulparams/h8300self.sh: Likewise.
1285 * emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
1286 * emulparams/sh.sh: Comment.
1287 * emulparams/shl.sh: Source sh.sh, remove duplicates.
1288 * emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
1289 * emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
1291 2001-11-21 David Heine <dlheine@tensilica.com>
1292 Alan Modra <amodra@bigpond.net.au>
1294 * ldlang.c (map_input_to_output_sections): Replace "break"
1295 accidentally removed with 2001-08-03 change.
1296 (lang_gc_sections_1): Likewise.
1298 2001-11-21 Alan Modra <amodra@bigpond.net.au>
1300 * ldlang.c (walk_wild_section): Move sec == NULL case out of loop.
1302 2001-11-20 Angela Marie Thomas <angela@redhat.com>
1304 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Use NULL instead
1305 of false when calling lang_size_sections.
1306 * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
1308 2001-11-15 Alan Modra <amodra@bigpond.net.au>
1310 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Only emit this
1311 function when LDEMUL_FINISH isn't set to the same name. Don't
1312 call ${LDEMUL_FINISH}.
1313 (ld_${EMULATION_NAME}_emulation): Call $LDEMUL_FINISH if defined.
1314 * emultempl/armelf.em (arm_elf_finish): Call
1315 gld${EMULATION_NAME}_finish.
1316 * emultempl/hppaelf.em (hppaelf_finish): Rename to
1317 gld${EMULATION_NAME}_finish. Call bfd_elf32_discard_info and
1318 hppaelf_layout_sections_again if necessary.
1319 (need_laying_out): New var.
1320 (hppaelf_layaout_sections_again): Rename to
1321 hppaelf_layout_sections_again. Clear need_laying_out.
1322 (PARSE_AND_LIST_OPTIONS): Format text.
1324 2001-11-14 H.J. Lu <hjl@gnu.org>
1326 * emultempl/armelf.em (arm_elf_finish): Renamed from
1327 gld${EMULATION_NAME}_finish.
1328 (LDEMUL_FINISH): Set to arm_elf_finish.
1330 2001-11-14 Daniel Jacobowitz <drow@mvista.com>
1332 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): New.
1333 (struct ld_emulation_xfer_struct): Use it.
1335 2001-11-13 Ross Alexander <ross.alexander@uk.neceur.com>
1337 * emulparams/elf64hppa.sh (OTHER_BSS_END_SYMBOLS): Add
1338 additional symbols referenced by newer crt0.o files from HP.
1340 2001-11-12 Anthony Green <green@redhat.com>
1342 * emulparams/armelf.sh (DATA_START_SYMBOLS): New symbol.
1344 2001-11-12 Alfred M. Szmidt <ams@kemisten.nu>
1346 * Makefile.am (GENSCRIPTS): Quote ${exec_prefix}.
1347 * Makefile.in: Regenerate.
1349 2001-11-02 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1351 * ld.texinfo: Use @command for commands, @option for options.
1352 * Makefile.am (POD2MAN): Use 'GNU Development Tools' for
1354 * Makefile.in: Rebuild.
1356 2001-11-04 Chris Demetriou <cgd@broadcom.com>
1358 * configure.tgt (mips*el-*-netbsd*, mips*-*-netbsd*):
1359 Add support for targets.
1361 2001-11-02 Nick Clifton <nickc@cambridge.redhat.com>
1363 * configure.in (ALL_LINGUAS): Add "fr" and "sv"
1364 * configure: Regernate.
1365 * po/fr.po: New file.
1366 * po/sv.po: New file.
1368 2001-11-01 NIIBE Yutaka <gniibe@m17n.org>
1370 * configure.tgt (sh-*-linux): Set targ_emul, targ_extra_emuls
1371 as little endian default and to support big endian.
1373 2001-11-01 Chris Demetriou <cgd@broadcom.com>
1375 * ld.texinfo (Options): Document new option, -nostdlib.
1376 * lexsup.c (OPTION_NOSTDLIB): New definition.
1377 (ld_options): Add entry for "nostdlib".
1378 (parse_args): Handle OPTIONS_NOSTDLIB.
1379 * ldfile.c (ldfile_add_library_path): Don't add directories
1380 to the search path if they weren't specified on the command line
1381 and -nostdlib was specified.
1382 * ld.h (ld_config_type): New member only_cmd_line_lib_dirs.
1384 2001-10-31 Nick Clifton <nickc@cambridge.redhat.com>
1386 * lexsup.c (parse_args): Prevent infinite parsing loop when
1387 "-rpath.a" is specified on the command line.
1388 Replace calls to fprintf with calls to einfo.
1390 2001-10-31 John Marshall <jmarshall@acm.org>
1392 * ld.texinfo: A historical requirement that MEMORY and SECTIONS
1393 appear only once across all the linker scripts involved in a link
1394 invocation no longer applies. Make the documentation reflect
1397 2001-10-31 NIIBE Yutaka <gniibe@m17n.org>
1399 * configure.tgt: Supports sh3/sh4/sh3eb/sh4eb-unknown-linux-gnu
1401 (sh-*-linux*): Added targ_extra_libpath.
1403 2001-10-31 David Heine <dlheine@tensilica.com>
1405 * ldlang.c (lang_size_sections): Keep a valid output_offset field
1406 for padding statements.
1408 2001-10-30 Hans-Peter Nilsson <hp@bitrange.com>
1410 * configure.tgt (mmix-*-*): New target.
1411 * Makefile.am (ALL_EMULATIONS): Add eelf64mmix.o and emmo.o.
1412 Add dependencies to match.
1413 * emulparams/mmo.sh, emulparams/elf64mmix.sh, emultempl/mmo.em,
1414 emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em,
1415 scripttempl/mmo.sc: New files.
1416 * gen-doc.texi: @set MMIX.
1417 * ld.texinfo: Ditto.
1418 [MMIX] Add MMIX node.
1419 * Makefile.in: Regenerate.
1421 2001-10-29 Kazu Hirata <kazu@hxi.com>
1423 * ldlang.c: Fix a comment typo.
1425 2001-10-23 Alan Modra <amodra@bigpond.net.au>
1427 * configure.host: Move alpha*-*-linux-gnu* entry to generic
1428 entries, and match *-*-linux*.
1430 2001-10-20 Alan Modra <amodra@bigpond.net.au>
1432 * ldgram.y (mri_script_command): Surround processing of INCLUDE
1433 with ldlex_script, ldlex_popstate.
1434 (ifile_p1): Likewise.
1435 * ldlex.l (EOF): Don't BEGIN(SCRIPT). Restore lineno from the
1437 (lex_push_file): Save current lineno to lineno_stack. Set lineno
1438 to 1. Don't BEGIN(SCRIPT).
1439 (lex_redirect): Similarly.
1440 * ldmain.c (main): Set yydebug non-zero if YYDEBUG.
1442 2001-10-20 Nick Clifton <nickc@cambridge.redhat.com>
1444 * scripttempl/armcoff.sc: Define __EH_FRAME_BEGIN__ and
1445 __EH_FRAME_END__ and accept eh frames into data section.
1446 Add ctor and dtor sections.
1448 2001-10-19 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
1450 * pe-dll.c (autofilter_objectlist): Add gcrt0.o.
1451 (auto-export): Fix indentation.
1453 2001-10-18 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
1455 * pe-dll.c (autofilter_objectlist): Add startup objects
1457 (auto-export): Constify char * p.
1458 Extract file basename and use strcmp rather than ststr
1461 2001-10-18 Chris Demetriou <cgd@broadcom.com>
1463 * ldmain.c (get_emulation): Improve comment about the handling
1466 2001-10-17 Alan Modra <amodra@bigpond.net.au>
1468 * po/POTFILES.in: Regenerate.
1470 2001-10-16 Vassili Karpov <malc@pulsesoft.com>
1472 * emultempl/elf32.em (gld*_list_options): Remove extra '\t' from
1473 -z nocopyreloc and -z nocombreloc usage strings.
1475 2001-10-12 Vassili Karpov <malc@pulsesoft.com>
1477 * emultempl/elf32.em (gld*_list_options): Include -z nocopyreloc
1480 2001-10-11 Aleksey Romanov <aromanov@ennovatenetworks.com>
1482 * scripttempl/armaout.sc: Place .bss section after end of aligned
1483 data section to match behaviour of aout code in constructrion of
1486 2001-10-11 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
1488 * pe-dll.c (autofilter_entry_type autofilter_liblist: Add
1489 startup files for mingw32 dlls to list.
1491 2001-10-10 Chris Demetriou <cgd@broadcom.com>
1493 * emultempl/elf32.em: Fix shell 'if' usage for portability.
1495 2001-10-08 Aldy Hernandez <aldyh@redhat.com>
1497 * configure.tgt (targ): Add arm9e-*-elf.
1499 2001-10-05 H.J. Lu <hjl@gnu.org>
1501 * genscripts.sh: Fix a typo in the last change.
1503 2001-10-05 Jakub Jelinek <jakub@redhat.com>
1505 * emultempl/elf32.em (gld_*_list_options): Include -z combreloc and
1506 -z nocombreloc in usage.
1508 2001-10-03 Jim Blandy <jimb@redhat.com>
1510 * genscripts.sh: Include a comment at the top of each generated
1511 script, explaining its purpose.
1513 2001-10-03 Vassili Karpov <malc@pulsesoft.com>
1515 * emultempl/elf32.em (parse_args): Handle -z nocopyreloc.
1516 * NEWS: Mention -z nocopyreloc.
1517 * ld.texinfo (Options): Describe nocopyreloc.
1519 2001-10-03 Alan Modra <amodra@bigpond.net.au>
1521 * configure: Regenerate.
1523 2001-10-02 Alan Modra <amodra@bigpond.net.au>
1525 * ldver.h (ld_program_version): Remove declaration.
1526 * lexsup.c (parse_args): Move printing of copyright message..
1527 * ldver.c (ldversion): .. to here.
1528 Use BFD_VERSION_STRING in place of BFD_VERSION.
1529 (ld_program_version): Remove.
1530 * Makefile.am (Makefile): Depend on bfd/configure.in.
1532 * Makefile.in: Regenerate.
1534 2001-09-30 Hans-Peter Nilsson <hp@bitrange.com>
1536 * Makefile.am: Update dependencies with "make dep-am".
1537 * Makefile.in: Regenerate.
1539 2001-09-29 John Reiser <jreiser@BitWagon.com>
1541 * ldlang.c (lang_common): Conditionally inhibit Common allocation.
1542 * lexsup.c: Add --no-define-common commandline option.
1543 * ldgram.y: Add INHIBIT_COMMON_ALLOCATION script command.
1544 * ldlex.l: Likewise.
1545 * ld.h: Add command_line.inhibit_common_definition.
1546 * ldmain.c (main): Initialize.
1547 * ld.texinfo: Document.
1549 2001-09-26 Alan Modra <amodra@bigpond.net.au>
1551 * ldmisc.c (USE_STDARG): Remove.
1552 (info_msg): Define using VPARAMS, VA_OPEN, VA_FIXEDARG, VA_CLOSE.
1557 * ldmisc.h: Remove #ifdef ANSI_PROTOTYPES and non-ansi
1558 declarations. Update copyright.
1560 2001-09-24 Charles Wilson <cwilson@ece.gatech.edu>
1562 * pe-dll.c: Remove obsoleted declaration of
1563 pe_get_data_import_dll_name.
1564 (pe_create_import_fixup): Fix thinko.
1566 * ld.texinfo(enable-auto-import): Clarify the explanation.
1568 2001-09-24 Nick Clifton <nickc@cambridge.redhat.com>
1570 * pe-dll.c (pe_create_import_fixup): Revert previous patch.
1571 * emultemp/pe.em (pe_data_import_dll): Move definition outside of
1572 DLL_SUPPORT controlled code.
1574 2001-09-24 Charles Wilson <cwilson@ece.gatech.edu>
1576 * emultempl/pe.em(pe_data_import_dll): Make static.
1577 (pe_get_data_import_dll_name): New accessor function.
1578 * pe-dll.c(pe_create_import_fixup): call
1579 pe_get_data_import_dll_name() from pe.em, instead of
1580 directly accessing pe_data_import_dll variable from pe.em.
1582 2001-09-18 Bruno Haible <haible@clisp.cons.org>
1584 * deffilep.y: Include "safe-ctype.h" instead of <ctype.h>.
1585 (def_file_add_directive): Use ISSPACE instead of isspace.
1586 (def_lex): Use ISDIGIT/ISXDIGIT/ISALPHA/ISALNUM instead of
1587 isdigit/isxdigit/isalpha/isalnum.
1588 * emultempl/aix.em: Include "safe-ctype.h" instead of <ctype.h>.
1589 (gld${EMULATION_NAME}_read_file): Use ISSPACE instead of isspace.
1590 * emultempl/elf32.em: Include "safe-ctype.h" instead of <ctype.h>.
1591 (gld${EMULATION_NAME}_place_orphan): Use ISALNUM instead of
1593 * emultempl/gld960c.em: Include "safe-ctype.h" instead of <ctype.h>.
1594 (gld960_set_output_arch): Use ISUPPER/TOLOWER instead of
1596 * emultempl/sunos.em: Include "safe-ctype.h" instead of <ctype.h>.
1597 (gld${EMULATION_NAME}_search_dir): Use ISDIGIT instead of isdigit.
1598 * ldctor.c: Include "safe-ctype.h" instead of <ctype.h>.
1599 (ctor_prio): Use ISDIGIT instead of isdigit.
1600 * ldfile.c: Include "safe-ctype.h" instead of <ctype.h>.
1601 (ldfile_open_file_search): Use ISALPHA instead of isalpha.
1602 (ldfile_add_arch): Use ISUPPER/TOLOWER instead of
1604 * ldlang.c: Include "safe-ctype.h" instead of <ctype.h>.
1605 (stricpy): Use TOLOWER instead of isupper/tolower.
1606 (lang_leave_overlay_section): Use ISALNUM instead of isalnum.
1607 * ldlex.l: Include "safe-ctype.h" instead of <ctype.h>.
1608 (lex_warn_invalid): Use ISPRINT instead of isprint.
1609 * ldmain.c: Include "safe-ctype.h" instead of <ctype.h>.
1610 (main): For gettext, also set the LC_CTYPE locate facet.
1611 (add_keepsyms_file): Use ISSPACE instead of isspace.
1612 * lexsup.c: Include "safe-ctype.h" instead of <ctype.h>.
1613 (is_num, parse_args): Use ISDIGIT instead of isdigit.
1614 * mpw-elfmips.c: Include "safe-ctype.h" instead of <ctype.h>.
1615 (gldelf32ebmip_place_orphan): Use ISALNUM instead of isalnum.
1616 * mpw-eppcmac.c: Include "safe-ctype.h" instead of <ctype.h>.
1617 (gldppcmacos_read_file): Use ISSPACE instead of isspace.
1618 * pe-dll.c: Include "safe-ctype.h" instead of <ctype.h>.
1619 (quoteput): Use ISSPACE instead of isspace.
1620 (pe_dll_generate_implib, pe_process_import_defs): Use ISALNUM
1623 2001-09-18 Alan Modra <amodra@bigpond.net.au>
1625 * deffilep.y (def_stash_module): Constify "name" param.
1627 * pe-dll.c: Replace CONST with const throughout.
1628 (quick_symbol): Constify "n1", "n2", "n3" params.
1629 (make_singleton_name_thunk): Constify "import" param. Make
1630 "buffer_len" a size_t.
1631 (make_import_fixup_entry): Constify "name", "fixup_name",
1632 "dll_symname" params.
1633 (pe_get16): Cast args of bfd_seek. Replace bfd_read with bfd_bread.
1634 (pe_get32): Likewise.
1635 (pe_implied_import_dll): Likewise.
1637 * emultempl/beos.em (sort_by_file_name): Constify "ra", "rb".
1638 (sort_by_section_name): Likewise.
1640 * emultempl/pe.em: Move defines for arm_epoc_pe before bfd.h included.
1641 (make_import_fixup): Cast printf arg, rel->address to long rather
1643 (gld_${EMULATION_NAME}_after_open): Don't compare NULL against int.
1645 2001-09-15 Alan Modra <amodra@bigpond.net.au>
1647 * ldmain.c (main): Rename BufferSize to ld_bufsz because HPUX
1648 defines BufferSize. Increase buffer size by one.
1650 2001-09-14 Ralf Habacker <Ralf.Habacker@freenet.de>
1652 * pe-dll.c (pe_walk_relocs_of_symbol): Fix memory leak.
1654 2001-09-14 Kevin Lo <kevlo@openbsd.org>
1656 * configure.tgt: Add arm-openbsd target.
1658 2001-09-12 H.J. Lu <hjl@gnu.org>
1660 * Makefile.am (ALL_EMULATIONS): Move eelf64ppc.o and
1662 (ALL_64_EMULATIONS): Here.
1663 * Makefile.in: Regenerated.
1665 2001-09-12 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
1667 * emultempl/pe.em(make_import_fixup): change signature to
1668 take asection as well as arelec; we need this for proper
1669 error reporting. Only call pe_create_import_fixup() if
1670 there is no attempt to add a constant addend to the reloc;
1671 otherwise, report error condition.
1672 * pe-dll.c(pe_walk_relocs_of_symbol): change signature,
1673 since final argument is a pointer to make_import_fixup().
1674 Change call to cb() to match make_import_fixup() signature.
1675 (make_import_fixup_mark): make buffer_len unsigned.
1676 * pe-dll.h: change signature of pe_walk_relocs_of_symbol.
1678 2001-09-12 Charles Wilson <cwilson@ece.gatech.edu>
1680 * ld.texinfo: add verbose documentation for auto-import
1681 direct-addressing workaround, to compliment the terse
1684 2001-09-12 Andrew MacLeod <amacleod@redhat.com>
1686 * scripttempl/v850.sc: Add gcc_except_table sections.
1688 2001-09-11 Jeffrey A Law (law@cygnus.com)
1690 * emulparams/h8300helf.sh: Move stack to a much higher memory address.
1691 * emulparams/h8300self.sh: Similarly.
1693 2001-09-05 Danny Smith <dannysmith@users.souceforge.net>
1695 * ld.texinfo (Options, --stack): Correct default value for stack
1698 2001-09-05 Tom Rix <trix@redhat.com>
1700 * emultempl/aix.em : Handle import file XMC_XO and syscall symbols.
1702 2001-09-03 Andreas Jaeger <aj@suse.de>
1704 * emultempl/beos.em: Declare prototypes for comparions functions,
1707 2001-09-02 Andreas Jaeger <aj@suse.de>
1709 * emultempl/aix.em: Add missing prototype.
1710 * emultempl/lnk960.em: Likewise.
1711 * emultempl/vanilla.em: Likewise.
1712 * emultempl/armcoff.em: Likewise.
1713 * emultempl/armelf_oabi.em: Likewise.
1714 * emultempl/beos.em: Likewise.
1715 * emultempl/gld960c.em: Likewise.
1716 * emultempl/gld960.em: Likewise.
1718 * emulparams/elf64alpha.sh (PARSE_AND_LIST_PROLOGUE): Add parameter
1719 for prototype declaration.
1721 2001-08-31 Eric Christopher <echristo@redhat.com>
1722 Jason Eckhardt <jle@redhat.com>
1724 * ldmain.c (get_emulation): Add support for -mips32 and -mips64.
1726 2001-08-31 Andreas Jaeger <aj@suse.de>
1728 * emultempl/pe.em: Add missing prototypes.
1729 (gld_${EMULATION_NAME}_after_open): Remove extra args to
1730 pe_find_data_imports.
1731 (pr_sym): Add unused attribute.
1733 2001-08-29 Joel Sherrill <joel@OARcorp.com>
1735 * configure.tgt (i[3456]86-*-rtems*, m68*-*-rtems*): Change
1736 default from coff to elf.
1738 2001-08-29 Jeff Law <law@redhat.com>
1740 * emulparams/h8300helf.sh: Resync with h8300elf.sh. Update
1742 * emulparams/h8300self.sh: Similarly.
1744 2001-08-28 J"orn Rennecke <amylaar@redhat.com>
1746 * Makefile.am (ALL_EMULATIONS): Add eh8300elf.o, eh8300elf.o and
1748 (eh8300elf.c, eh8300helf.c, eh8300self.c): New targets.
1749 * configure.tgt (h8300-*-elf*): New case.
1750 * emulparams/h8300elf.sh, emulparams/h8300helf.sh: New files.
1751 * emulparams/h8300self.sh: New file.
1752 * Makefile.in: Regenerated.
1754 2001-08-28 Nick Clifton <nickc@cambridge.redhat.com>
1756 * ldmain.c (main): Rename BSIZE to BufferSize to avoid collision
1759 2001-08-27 Linus Nordberg <linus@swox.com>
1760 Alan Modra <amodra@bigpond.net.au>
1762 * Makefile.am (ALL_EMULATIONS): Add eelf64ppc.o and eelf64lppc.o.
1763 (eelf64ppc.c, eelf64lppc.c): Add make targets.
1765 * Makefile.in: Regenerate.
1766 * configure.tgt: Add powerpc64 support. Move pdp11, pjl, pj
1767 entries to correct alphabetical position.
1768 * emulparams/elf64ppc.sh: New.
1769 * emulparams/elf64lppc.sh: New.
1771 2001-08-27 Nick Clifton <nickc@cambridge.redhat.com>
1773 * ldmain.c (main): Declare BSIZE as static.
1775 2001-08-23 Jakub Jelinek <jakub@redhat.com>
1777 * emultempl/elf32.em (place_orphan): Place orphan .rel* sections
1778 into .rel.dyn resp. .rela.dyn if combreloc.
1779 (get_script): If .x linker script is equal to .xn, only put it
1780 once into the binary.
1781 Add .xc and .xsc scripts.
1782 (parse_args): Handle -z combreloc and -z nocombreloc.
1783 * scripttempl/elf.sc (.rela.sbss): Fix a typo.
1784 For .xc and .xsc scripts put all .rel* or .rela* input sections
1785 but .rel*.plt and PLT-like sections into .rel.dyn resp. .rela.dyn.
1786 * genscripts.sh (GENERATE_COMBRELOC_SCRIPT): Set if SCRIPT_NAME
1788 Strip trailing whitespace from script.
1789 Generate .xc and .xsc scripts if requested.
1790 * ldmain.c (main): Initialize link_info.combreloc and
1791 link_info.spare_dynamic_tags.
1792 * lexsup.c (OPTION_SPARE_DYNAMIC_TAGS): Define.
1793 (ld_options): Add --spare-dynamic-tags option.
1794 (parse_args): Likewise.
1795 * ld.texinfo: Document -z combreloc and -z nocombreloc.
1796 * ldint.texinfo: Document .xc and .xsc linker scripts.
1797 * NEWS: Add notes about -z combreloc and SHF_MERGE.
1799 2001-08-22 H.J. Lu <hjl@gnu.org>
1801 * emulparams/elf32fr30.sh: Add a newline.
1803 2001-08-21 Andreas Jaeger <aj@suse.de>
1805 * deffilep.y: Add missing prototypes.
1806 * pe-dll.c: Likewise.
1808 2001-08-20 Alan Modra <amodra@bigpond.net.au>
1810 * ldlang.c (insert_pad): Fix typos in last patch.
1812 * ldlang.c: When traversing lang_statement_union_type lists,
1813 consistently use "header.next" rather than "next".
1814 * mpw-eppcmac.c: Likewise.
1815 * emultempl/beos.em: Likewise.
1816 * emultempl/hppaelf.em: Likewise.
1817 * emultempl/pe.em: Likewise.
1818 * ldlang.h (union lang_statement_union): Remove "next" field.
1820 * ldlang.c (insert_pad): Use offsetof macro.
1821 (lang_size_sections): Always neuter padding statements.
1822 * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete.
1824 * pe-dll.c (pe_dll_fill_sections): Correct type of "relax" param
1825 passed to lang_size_sections.
1826 (pe_exe_fill_sections): Likewise.
1827 * emultempl/pe.em (output_prev_sec_find): Copied from elf32.em.
1828 (gld_${EMULATION_NAME}_place_orphan): Merge from elf32.em.
1830 2001-08-18 Alan Modra <amodra@bigpond.net.au>
1832 * emultempl/aix.em: Formatting fixes.
1834 2001-08-18 Alan Modra <amodra@bigpond.net.au>
1836 * ldlang.c (insert_pad): Make use of an existing pad statement if
1837 available. Move code calculating alignment, adjusting section
1838 alignment power, and adjusting dot to ..
1839 (size_input_section): .. here. Remove unused relax param.
1840 (lang_size_sections): Change boolean `relax' param to boolean *.
1841 Adjust call to size_input_section. Make use of insert_pad to
1842 place pad after the assignment statement. If relaxing, zap
1844 (reset_memory_regions): Reset output_bfd section sizes too.
1845 (relax_again): Move to..
1846 (lang_process): ..here. Adjust call to lang_size_sections, and
1847 remove duplicated code.
1848 * ldlang.h (lang_size_sections): Change `relax' param to boolean *.
1850 2001-08-17 Alan Modra <amodra@bigpond.net.au>
1852 * ld.texinfo: Document that fill values now use the four least
1854 * emulparams/elf32fr30.sh (NOP): Update.
1855 * emulparams/elf32mcore.sh: Likewise.
1856 * emulparams/elf64_s390.sh: Likewise.
1857 * emulparams/elf_i386.sh: Likewise.
1858 * emulparams/elf_i386_be.sh: Likewise.
1859 * emulparams/elf_i386_chaos.sh: Likewise.
1860 * emulparams/elf_i386_ldso.sh: Likewise.
1861 * emulparams/elf_s390.sh: Likewise.
1862 * emulparams/elf_x86_64.sh: Likewise.
1863 * emulparams/i386moss.sh: Likewise.
1864 * emulparams/i386nw.sh: Likewise.
1865 * emulparams/m68kelf.sh: Likewise.
1866 * scripttempl/elf.sc: Update NOP comment.
1867 * scripttempl/elfi370.sc: Likewise.
1868 * scripttempl/elfm68hc11.sc: Likewise.
1869 * scripttempl/elfm68hc12.sc: Likewise.
1870 * scripttempl/nw.sc: Likewise.
1872 2001-08-15 Tom Rix <trix@redhat.com>
1874 * ldgram.y (saved_script_handle): Initialize to NULL.
1875 * ldmain.c (main): Change check on saved_script_handle.
1877 2001-08-14 Alan Modra <amodra@bigpond.net.au>
1879 * emultempl/elf32.em: Formatting fixes.
1880 (output_prev_sec_find): Test for bfd_ind_section too; do so by
1881 looking at sec->owner.
1882 (output_rel_find): Move function inside LDEMUL_PLACE_ORPHAN test.
1883 (gld${EMULATION_NAME}_place_orphan): Add a few comments. Remove
1884 unused code, and reorganize orphan section placement code.
1886 * ldlang.c (wild_doit): Rename to lang_add_section.
1887 * ldlang.h: Here too.
1888 * mpw-elfmips.c: And here.
1889 * emultempl/beos.em: And here.
1890 * emultempl/elf32.em: And here.
1891 * emultempl/hppaelf.em: And here.
1892 * emultempl/pe.em: And here.
1894 2001-08-13 Richard Henderson <rth@redhat.com>
1896 * emultempl/needrelax.em: New file.
1897 * emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Reference it.
1898 * Makefile.am (eelf64_ia64.c): Depend on it.
1899 * Makefile.in: Rebuild.
1901 2001-08-13 Alan Modra <amodra@bigpond.net.au>
1903 * emultempl/elf32.em: For SEC_EXCLUDE sections, ensure that
1904 output_section is set non-NULL.
1906 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Return
1907 `true' for SEC_EXCLUDE sections so that the generic code doesn't
1908 needlessly create an output_section_statement. Treat a correctly
1909 named output_section_statement with NULL bfd_section as compatible.
1911 2001-08-13 Hans-Peter Nilsson <hp@bitrange.com>
1913 * emultempl/generic.em: Support EXTRA_EM_FILE.
1914 (ld_${EMULATION_NAME}_emulation): Support emulation parameters
1915 LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
1916 LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
1917 LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
1918 LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
1919 LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
1920 LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
1921 LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
1922 LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
1923 LDEMUL_FIND_POTENTIAL_LIBRARIES.
1925 2001-08-12 Richard Henderson <rth@redhat.com>
1927 * scripttempl/elf.sc, scripttempl/elfd30v.sc,
1928 scripttempl/elfm68hc11.sc, scripttempl/elfm68hc12.sc,
1929 scripttempl/v850.sc: Keep .jcr data.
1931 2001-08-12 H.J. Lu <hjl@gnu.org>
1932 Andrew Haley <aph@cambridge.redhat.com>
1933 Nick Clifton <nickc@redhat.com>
1935 * ldgram.y (had_script): Change name to saved_script_handle.
1936 Change type to file handle.
1937 * ld.h (had_script): Rename and retype.
1938 * ldfile.c (ldfile_open_command_file): Save the file handle
1939 used in saved_script_handle.
1940 * lexsup.c (parse_args): Do not allow -c option to alter
1941 saved_script_handle.
1942 * ldmain.c (main): Print out the linker script used if
1943 --verbose is given. Check saved_script_handle to obtain the
1944 external linker script used, or if NULL, dump the builtin
1946 * ld.texinfo: Document that --verbose now dumps the linker
1947 script used, regardless of whether it was an internal or an
1950 2001-08-10 Andreas Jaeger <aj@suse.de>
1952 * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
1954 * configure: Regenerate.
1956 2001-08-09 Alan Modra <amodra@bigpond.net.au>
1958 * emultempl/elf32.em (output_prev_sec_find): Add missing prototype.
1960 * scripttempl/elf.sc: Move non-text .dynamic section before
1961 .plt/.got/.sdata* group.
1962 (OTHER_GOT_SECTIONS): Move to immediately after .got.
1963 (OTHER_SDATA_SECTIONS): Add.
1964 * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than
1966 * emulparams/crislinux.sh: Likewise.
1967 * emulparams/elf32b4300.sh: Likewise.
1968 * emulparams/elf32bmip.sh: Likewise.
1969 * emulparams/elf32bmipn32.sh: Likewise.
1970 * emulparams/elf32bsmip.sh: Likewise.
1971 * emulparams/elf32btsmip.sh: Likewise.
1972 * emulparams/elf32ebmip.sh: Likewise.
1973 * emulparams/elf32elmip.sh: Likewise.
1974 * emulparams/elf32l4300.sh: Likewise.
1975 * emulparams/elf32lmip.sh: Likewise.
1976 * emulparams/elf32lsmip.sh: Likewise.
1977 * emulparams/elf32ltsmip.sh: Likewise.
1978 * emulparams/elf64bmip.sh: Likewise.
1979 * emulparams/elf64btsmip.sh: Likewise.
1980 * emulparams/elf64ltsmip.sh: Likewise.
1982 2001-08-08 Alan Modra <amodra@bigpond.net.au>
1984 * genscripts.sh: Source the emulparams script before each output
1985 script is generated so that variables like `RELOCATING' may affect
1986 variables defined in the emulparams script.
1988 2001-08-04 Alan Modra <amodra@bigpond.net.au>
1990 * emultempl/aix.em: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this
1993 * emultempl/beos.em (sort_sections): Modify for 2001-08-03 change,
1994 ie. iterate over wild_statement.section_list.
1995 (gld${EMULATION_NAME}_place_orphan): Likewise.
1997 2001-08-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1999 * scripttempl/elfm68hc12.sc (FINISH_CODE, FINISH_RELOC): New to handle
2000 .fini[0-4] sections used by _exit
2001 (CTOR, DTOR): Export ctor/dtor symbols; move them to ROM.
2002 (*.text,*.data,*.bss): Take into account .text.*, .data.*, .bss.*.
2003 * scripttempl/elfm68hc11.sc: Likewise.
2005 2001-08-03 H.J. Lu <hjl@gnu.org>
2007 * emultempl/beos.em (init): Add the missing initialization.
2009 2001-08-03 Alan Modra <amodra@bigpond.net.au>
2011 * ld.texinfo (Input Section Basics): Clarify ordering of output
2013 * ldlang.c (callback_t): Add wildcard_list param.
2014 (walk_wild_section): Remove "section" param. Rewrite for
2015 lang_wild_statement_type change. Remove unique_section_p test.
2016 (walk_wild_file): Remove "section" param.
2017 (walk_wild): Remove "section" and "file" params.
2018 (lang_gc_wild): Likewise.
2019 (wild): Likewise. Modify for lang_wild_statement_type change.
2020 (wild_sort): Likewise. Add "sec" param.
2021 (gc_section_callback): Likewise.
2022 (output_section_callback): Likewise. Do unique_section_p test.
2023 (map_input_to_output_sections): Modify call to wild.
2024 (lang_gc_sections_1): Likewise.
2025 (print_wild_statement): Modify for lang_wild_statement_type
2027 (lang_add_wild): Replace filename, filenames_sorted param with
2028 filespec. Replace section_name, sections_sorted,
2029 exclude_filename_list with section_list.
2030 * ldlang.h (lang_add_wild): Here too.
2031 (lang_wild_statement_type): Replace section_name, sections_sorted,
2032 and exclude_filename_list with section_list.
2033 * ldgram.y (current_file): Delete.
2034 (%union): Add wildcard_list.
2035 (file_NAME_list): Set type to wildcard_list. Build a linked list
2036 rather than calling lang_add_wild for each entry.
2037 (input_section_spec_no_keep): Call lang_add_wild here instead.
2038 * ld.h (struct wildcard_list): Declare.
2039 * mri.c (mri_draw_tree): Modify to suit new lang_add_wild.
2041 2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
2043 * ldmain.c (main): initialize link_info.pei386_auto_import
2044 * pe-dll.c: new tables for auto-export filtering
2045 (auto_export): change API, pass abfd for contextual filtering.
2046 Loop thru tables of excluded symbols instead of comparing
2049 2001-08-02 Paul Sokolovsky <paul.sokolovsky@technologist.com>
2051 * pe-dll.c: new variable pe_dll_enable_extra_debug. New
2052 static variable current_sec (static struct sec *). Add
2053 forward declaration for add_bfd_to_link.
2054 (process_def_file): Don't export undefined symbols. Do not
2055 export symbols starting with "_imp__". Call auto_export()
2057 (pe_walk_relocs_of_symbol): New function.
2058 (generate_reloc): add optional extra debugging
2059 (pe_dll_generate_def_file): eliminate extraneous initial blank
2061 (make_one): enlarge symtab to make room for __nm__ symbols
2062 (DATA auto-import support).
2063 (make_singleton_name_thunk): New function.
2064 (make_import_fixup_mark): New function.
2065 (make_import_fixup_entry): New function.
2066 (pe_create_import_fixup): New function.
2067 (add_bfd_to_link): Specify that 'name' argument is a CONST
2069 * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
2070 declare new functions pe_walk_relocs_of_symbol and
2071 pe_create_import_fixup.
2072 * emultempl/pe.em: add new options --enable-auto-import,
2073 --disable-auto-import, and --enable-extra-pe-debug.
2074 (make_import_fixup): New function.
2075 (pe_find_data_imports): New function.
2076 (pr_sym): New function.
2077 (gld_${EMULATION_NAME}_after_open): Add optional extra pe
2078 debugging. Call pe_find_data_imports. Mark .idata as DATA, not
2081 2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
2083 * ld.texinfo: add additional documentation for
2084 --export-all-symbols. Document --out-implib,
2085 --enable-auto-image-base, --disable-auto-image-base,
2086 --dll-search-prefix, --enable-auto-import, and
2087 --disable-auto-import.
2088 * ldint.texinfo: Add detailed documentation on auto-import
2091 2001-07-30 Nick Clifton <nickc@cambridge.redhat.com>
2093 * ld.texinfo (Simple Assignments): Fix computation in SECTIONS
2096 2001-07-24 Alan Modra <amodra@bigpond.net.au>
2098 * Makefile.am: Update dependencies with "make dep-am".
2099 * Makefile.in: Regenerate
2101 2001-07-23 Alan Modra <amodra@bigpond.net.au>
2103 * ldcref.c (check_section_sym_xref): New function.
2104 (check_nocrossrefs): Call it.
2105 (check_nocrossref): Interate over h->refs here instead of..
2106 (check_refs): ..here. Pass in the symbol name, section, and bfd
2107 rather than hash_entry pointers.
2108 (struct check_refs_info): Keep symbol name rather than hash entry.
2110 (check_reloc_refs): Tweak for above changes in check_refs_info.
2111 Only report references to section syms when symname is NULL to
2112 prevent duplicate messages for the same reloc.
2114 2001-07-19 Nick Clifton <nickc@cambridge.redhat.com>
2116 * ldexp.c (exp_print_tree): Use stderr if config.map_file is not
2117 available. Do not print NULL trees.
2118 (exp_print_token): Print unknown tokens with values > 126 as
2119 decimal values not ASCII characters.
2121 * ldlang.c (lang_leave_overlay): If a region is specified assign
2122 it to all sections inside the overlay unless they have been
2123 assigned to the own, non-default, memory region.
2125 * README: Add header for consistency with other README files.
2127 2001-07-14 H.J. Lu <hjl@gnu.org>
2129 * emultempl/elf32.em (output_prev_sec_find): Never return
2130 bfd_abs_section_ptr, bfd_com_section_ptr nor
2131 bfd_und_section_ptr.
2133 2001-07-14 Nick Clifton <nickc@cambridge.redhat.com>
2135 * Makefile.am (em32relf.c): Change dependency from generic.em to
2137 * Makefile.in: Regenerate.
2139 2001-07-14 matthew green <mrg@eterna.com.au>
2141 * configure.tgt (i386-*-netbsdelf*): New target.
2142 (i386-*-netbsd*): Set targ_extra_emuls to `elf_i386'
2144 2001-07-13 Jakub Jelinek <jakub@redhat.com>
2146 * emultempl/elf32.em (output_prev_sec_find): New.
2147 (place_orphan): Use it.
2149 2001-07-11 H.J. Lu <hjl@gnu.org>
2151 * ldmain.c (main): Fix typos in the last change.
2153 2001-07-11 Jakub Jelinek <jakub@redhat.com>
2155 * ldmain.c (main): Disallow -F and -f without -shared.
2157 2001-07-11 Nick Clifton <nickc@cambridge.redhat.com>
2159 * emultempl/pe.em (after_open): Check for the output_bfd not
2160 having any coff_data structure allocated to it.
2162 2001-07-09 David O'Brien <obrien@FreeBSD.org>
2164 * emultempl/elf32.em: Do not assuming that contents of the buffer
2165 returned from basename function will remain unchanged accross other
2168 2001-07-03 H.J. Lu <hjl@gnu.org>
2170 * scripttempl/elf.sc (DYNAMIC_PAD): Revert the change made on
2171 2001-07-03. It creates dynamic entries even for static binaries.
2173 2001-07-03 Jakub Jelinek <jakub@redhat.com>
2175 * scripttempl/elf.sc (DYNAMIC_PAD): New variable.
2176 (DYNAMIC): Use it to reserve few dynamic entries for
2179 2001-06-27 Alan Modra <amodra@bigpond.net.au>
2181 * emulparams/hppa64linux.sh: New file.
2182 * configure.tgt: hppa*64*-*-linux* uses hppa64linux.sh
2183 * Makefile.am (ALL_64_EMULATIONS): Add ehppa64linux.o
2184 (ehppa64linux.c): Add rule to make it.
2186 * Makefile.in: Regenerate.
2188 2001-06-21 Hans-Peter Nilsson <hp@axis.com>
2190 * ld.texinfo (Options, -r): Mention restrictions when using
2191 different object formats.
2193 2001-06-19 Hans-Peter Nilsson <hp@axis.com>
2195 * ldlang.c (lang_check): Emit fatal error if relocatable link
2196 between different object flavours with relocations in input.
2198 2001-06-19 H.J. Lu <hjl@gnu.org>
2200 * ld.texinfo (-E, --export-dynamic): Mention --version-script.
2201 (--version-script): Mention the language support.
2203 2001-06-19 H.J. Lu <hjl@gnu.org>
2205 * ldlang.c (lang_check): Revert the change mode on 2001-06-15.
2207 2001-06-18 H.J. Lu <hjl@gnu.org>
2209 * Makefile.am (ld.1): Remove the prefix `$(srcdir)/'.
2210 (diststuff): Add $(MANS).
2211 * Makefile.in: Regenerated.
2215 2001-06-18 Hans-Peter Nilsson <hp@axis.com>
2217 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
2218 Update for API change in bfd_elf${ELFSIZE}_size_dynamic_sections.
2219 * mpw-elfmips.c (gldelf32ebmip_before_allocation): Ditto.
2220 * ld.h (args_type): Remove member export_dynamic. All users
2221 changed to use struct bfd_link_info member.
2223 * Makefile.am (ecriself.c, ed10velf.c, ei386moss.c): Depend on
2224 $(srcdir)/emultempl/elf32.em, not $(srcdir)/emultempl/generic.em.
2225 * Makefile.in: Regenerate.
2227 2001-06-18 H.J. Lu <hjl@gnu.org>
2229 * ldlang.c (init_os): Add the newline to the einfo call.
2230 (lang_check): Likewise.
2231 (lang_do_version_exports_section): Likewise.
2233 2001-06-15 H.J. Lu <hjl@gnu.org>
2235 * lexsup.c (parse_args); Save optind to report unrecognized
2238 2001-06-15 Hans-Peter Nilsson <hp@axis.com>
2240 * ldlang.c (lang_check): Emit fatal error if relocatable link
2241 between different object flavours.
2243 * lexsup.c (parse_args) <case OPTION_EXPORT_DYNAMIC, case 'E'>:
2244 Set new link_info member export_dynamic.
2245 * ldmain.c (main): Initialize new link_info member export_dynamic.
2247 2001-06-12 Nick Clifton <nickc@cambridge.redhat.com>
2249 * ldlang.c (walk_wild): Only call walk_wild_file if
2250 lookup_name returns something.
2251 (lookup_name): If load_symbols fails, return NULL.
2252 (load_symbols): Change to a boolean function.
2253 (open_input_bfds): If load_symbols fails then do not make the
2256 2001-06-08 Alan Modra <amodra@bigpond.net.au>
2258 * ldlang.c (record_bfd_errors): Remove.
2260 * emultempl/aix.em: Fix copyright dates.
2262 2001-06-07 Andreas Jaeger <aj@suse.de>
2264 * elf_x86_64.sh (NONPAGED_TEXT_START_ADDR): Increase.
2265 (TEXT_START_ADDR): Likewise.
2267 2001-06-06 Martin Schwidefsky <schwidefsky@de.ibm.com>
2269 * configure.host: Set HOSTING_CRT0/HOSTING_LIBS correctly for s/390.
2271 2001-06-05 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
2273 * emultempl/pe.em (init): Reduce default stack reserve to 0x200000.
2275 2001-05-31 H.J. Lu <hjl@gnu.org>
2277 * ldlang.c (open_input_bfds): Don't change the bfd error
2278 handler whilst loading symbols.
2280 2001-05-28 Nick Clifton <nickc@cambridge.redhat.com>
2282 * configure.tgt: Remove i370-mvs architecture, it is not currently
2285 2001-05-25 H.J. Lu <hjl@gnu.org>
2287 * emulparams/ppcmacos.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
2288 like emulparams/aixppc.sh.
2290 2001-05-25 H.J. Lu <hjl@gnu.org>
2292 * emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Move
2293 setting of output_filename after bfd_scan_arch.
2294 * emultempl/pe.em: Likewise.
2296 2001-05-25 H.J. Lu <hjl@gnu.org>
2298 * emulparams/aixrs6.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
2299 like emulparams/aixppc.sh.
2301 * emultempl/aix.em (sc): Use ${srcdir}/emultempl/ostring.sed
2302 instead of ${srcdir}/emultempl/stringify.sed.
2304 2001-05-25 Timothy Wall <twall@oculustech.com>
2306 * emulparams/elf64_aix.sh: Change settings to match IBM linker
2309 2001-05-25 Alan Modra <amodra@one.net.au>
2311 * configure.host: Replace linuxoldld with linux*oldld.
2312 * configure.tgt: Likewise.
2314 2001-05-24 H.J. Lu <hjl@gnu.org>
2316 * emultempl/stringify.sed: Removed again.
2318 2001-05-24 H.J. Lu <hjl@gnu.org>
2320 * emultempl/aix.em (OUTPUT_ARCH): Defined.
2321 (gld${EMULATION_NAME}_before_parse): Initialize
2322 ldfile_output_architecture, ldfile_output_machine and
2323 ldfile_output_machine_name from ${OUTPUT_ARCH} if possible.
2324 * emultempl/beos.em: Likewise.
2325 * emultempl/elf32.em: Likewise.
2326 * emultempl/linux.em: Likewise.
2327 * emultempl/mipsecoff.em: Likewise.
2328 * emultempl/pe.em: Likewise.
2329 * emultempl/sunos.em: Likewise.
2331 2001-05-24 Tom Rix <trix@redhat.com>
2333 * emultempl/aix.em : (gld${EMULATION_NAME}_read_file)
2334 udate import file format.
2335 (change_symbol_mode) New, same
2336 (is_syscall) New, same
2337 * emulparams/aixppc.sh : add SYSCALL_MASK and SYMBOL_MODE_MASK
2338 * emulparams/aixppc64.sh : same
2339 * emulparams/aixrs6.sh : same
2340 * emulparams/ppcmacos.sh : same
2341 * emultempl/aix.em : use strtoull to parse options
2342 * Makefile.am : add eaixppc64 emulation for xcoff64
2343 * Makefile.in : same
2344 * configure.tgt : same
2346 * scripttempl/aix.sc : default text section offset to 0x10000000
2347 default data section offset to 0x20000000
2348 add .sv3264 and .sv64 pseudo sections
2349 loader and debug sections use the currect section offset.
2351 * emultempl/aix.em : Add xcoff64 support
2352 Add -binitfini support
2353 (gld${EMULATION_NAME}_before_parse) -binitfini
2354 (gld${EMULATION_NAME}_parse_args) same
2355 (gld${EMULATION_NAME}_before_allocation) format change for special
2358 * emulparams/aixppc64.sh : New file for xcoff64 support
2360 2001-05-23 Alexandre Oliva <aoliva@redhat.com>
2362 * emultempl/elf32.em (ELF_INTERPRETER_SET_DEFAULT): Use this new
2363 variable to avoid non-portable shell construct.
2365 2001-05-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2367 * ldmain.c (get_emulation): Add -mips5 command line argument.
2369 2001-05-22 Alexandre Oliva <aoliva@redhat.com>
2371 * emulparams/elf_i386_ldso.sh: New, copied from elf_i386.sh.
2372 (ELF_INTERPRETER_NAME): Define it.
2373 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
2375 * configure.tgt (targ_emul, targ_extra_emuls)
2376 [i[3456]86-*-solaris2*, i[3456]86-*-solaris*]: Use elf_i386_ldso
2377 as primary, elf_i386 as extra.
2378 * Makefile.am (ALL_EMULATIONS): Added eelf_i386_ldso.o.
2379 (eelf_i386_ldso.c): New rule.
2380 * Makefile.in: Rebuilt.
2382 2001-05-22 Nick Clifton <nickc@redhat.com>
2384 * lexsup.c (ld_options): Allow -I to be an alias for
2385 --dynamic-linker. This is for Solaris compatability.
2386 * ld.texinfo: Document that -I can be used.
2389 2001-05-16 Alan Modra <amodra@one.net.au>
2391 * ldlang.c (wild_doit): Use linker_has_input to reliably determine
2392 whether an input section is the first one assigned to an output
2394 Assorted formatting fixes.
2396 2001-05-14 DJ Delorie <dj@delorie.com>
2398 * Makefile.am (ld.dvi): Search bfd/doc for texinfo files.
2399 * Makefile.in: Ditto.
2401 2001-05-11 Jakub Jelinek <jakub@redhat.com>
2403 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
2404 .gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
2406 * emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
2408 2001-05-11 Jakub Jelinek <jakub@redhat.com>
2410 * ldlang.c (lang_process): Call bfd_merge_sections.
2412 2001-05-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
2414 * ldgram.y: Fix typo.
2416 2001-05-03 H.J. Lu <hjl@gnu.org>
2418 * emultempl/elf32.em: Include "libiberty.h".
2419 (gld${EMULATION_NAME}_vercheck): Call basename () to get the
2420 basename of the bfd filename.
2421 (gld${EMULATION_NAME}_stat_needed): Likewise.
2422 (gld${EMULATION_NAME}_try_needed): Likewise.
2423 (gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
2425 2001-05-02 H.J. Lu <hjl@gnu.org>
2427 * emultempl/pe.em: Include <ctype.h>.
2429 2001-05-02 Johan Rydberg <jrydberg@opencores.org>
2431 * emulparams/elf32openrisc.sh: New file.
2433 * Makefile.am: Add OpenRISC target.
2434 * Makefile.in: Regenerated.
2436 * configure.tgt: Add openrisc-*-* mapping.
2438 2001-05-02 Nick Clifton <nickc@redhat.com>
2440 * emultempl/aix.em: Replace buystring with xstrdup.
2441 * emultempl/beos.em: Replace buystring with xstrdup.
2443 2001-05-02 H.J. Lu <hjl@gnu.org>
2445 * ldfile.c: Include "libiberty.h".
2446 * ldlex.l: Likewise.
2448 * ldmisc.c (buystring): Removed.
2449 * ldmisc.h: Likewise.
2451 * ldfile.c: Replace buystring with xstrdup.
2452 * ldlang.c: Likewise.
2453 * ldlex.l: Likewise.
2454 * ldmain.c: Likewise.
2455 * ldmisc.c: Likewise.
2456 * lexsup.c: Likewise.
2457 * mpw-eppcmac.c: Likewise.
2459 2001-04-30 Andreas Jaeger <aj@suse.de>
2461 * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value.
2463 2001-04-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
2465 * ldlang.c (load_symbols): Give emulation a chance
2466 to process unrecognized file before fatal error is
2467 reported, not after.
2469 2001-04-27 Sean McNeil <sean@mcneil.com>
2471 * configure.tgt: Add arm-vxworks target.
2472 * scripttempl/armcoff.sc: Support .text or .data as a section name
2476 2001-04-13 J.T. Conklin <jtc@redback.com>
2478 * ld.texinfo: Document --fatal-warnings.
2481 * ldmisc.c (vfinfo): Set flag to inhibit making executable if
2482 warnings have been turned into errors.
2483 * lexsup.c (OPTION_WARN_FATAL): Define.
2484 (ld_options): Entry for --fatal-warnings.
2485 (parse_args): Handle OPTION_WARN_FATAL.
2486 * ld.h (ld_config_type): Add fatal_warnings field.
2488 2001-04-13 Jakub Jelinek <jakub@redhat.com>
2490 * ldmain.c (main): Default to discard_sec_merge.
2491 * lexsup.c (OPTION_DISCARD_NONE): Define.
2492 (ld_options): Add --discard-none.
2493 (parse_args): Handle OPTION_DISCARD_NONE.
2494 * ldlang.c (wild_doit): SEC_MERGE should be set in the output
2495 section only if SEC_MERGE and SEC_STRINGS flags and entsize of
2496 all its input sections match.
2498 2001-04-05 Steven J. Hill <sjhill@cotw.com>
2500 * Makefile.am (ALL_EMULATIONS): Add eelf32ltsmip.o.
2501 (ALL_64_EMULATIONS): Add eelf64btsmip.o and eelf64ltsmip.o.
2502 (eelf32ltsmip.c): New target.
2503 (eelf64btsmip.c): Likewise.
2504 (eelf64ltsmip.c): Likewise.
2505 * Makefile.in: Regenerated.
2507 * configure.tgt (mips*el-*-linux-gnu): Uses traditional MIPS
2509 (mips*-*-linux-gnu*): Likewise.
2511 * emulparams/elf32ltsmip.sh: New. Traditional little endian
2513 * emulparams/elf64btsmip.sh: New. Traditional 64bit big endian
2515 * emulparams/elf64ltsmip.sh: New. Traditional 64bit little
2518 2001-04-05 Hans-Peter Nilsson <hp@axis.com>
2520 * emulparams/criself.sh (EXECUTABLE_SYMBOLS): Cannot provide
2521 correct value of __Stext here.
2522 (TEXT_START_SYMBOLS): Define; always define __Stext, to start of
2525 * emulparams/crislinux.sh: Remove FIXME.
2527 2001-04-02 Alan Modra <alan@linuxcare.com.au>
2529 * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 64k.
2530 (TEXT_START_ADDR, TARGET_PAGE_SIZE): Likewise.
2532 2001-03-27 Hans-Peter Nilsson <hp@axis.com>
2534 * configure.tgt (cris-*-*): Change default emulation to criself.
2535 (cris-*-*aout*): New rule.
2537 2001-03-27 Matthew Wilcox <willy@ldl.fc.hp.com>
2539 * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 0x4000.
2540 (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
2542 2001-03-26 Andreas Jaeger <aj@suse.de>
2544 * ld.texinfo (Overview): Fix syntax in texi code.
2546 2001-03-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>
2548 * ld.texinfo: Put @c man indications to generate the ld man page.
2549 When generating man, define all the variables. Define SEEALSO
2550 and SYNOPSIS. Re-organize some lines to avoid the cross references.
2551 * Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variables.
2552 (ld.1): Generate from ld.texinfo.
2553 * Makefile.in: Regenerate.
2555 2001-03-23 Mark Elbrecht <snowball3@bigfoot.com>
2557 * scripttempl/i386go32.sc: Support the GCC flags '-ffunction-sections'
2558 and '-fdata-sections'. Set the VMA of STABS sections to zero.
2560 2001-03-17 Ulrich Drepper <drepper@redhat.com>
2562 * emultmpl/elf32.em (gld${EMULATION_NAME}_search_needed): If NAME
2563 is an absolute path look only for this file and not along the path.
2565 2001-03-17 Ulrich Drepper <drepper@redhat.com>
2567 * emultempl/elf32.em (OPTION_GROUP): New macro.
2568 Add new option Bgroup to longopts.
2569 (gld*_parse_args): Handle GROUP_OPTION and recognize -z defs.
2570 (gld*_list_options): Add -Bgroup and -z defs.
2571 * ld.1: Document -Bgroup and -z defs.
2572 * ld.texinfo: Likewise.
2574 2001-03-07 Michael Meissner <meissner@redhat.com>
2576 * scripttempl/elfd10v.sc (.rodata,.rodata1,.data1,.sdata): Deal
2577 with sections created by -fdata-sections.
2578 (.dynbss,.bss): Ditto.
2580 2001-03-05 Alan Modra <alan@linuxcare.com.au>
2582 * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
2583 after_allocation_default, not gld..._before_allocation.
2585 2001-02-27 Alan Modra <alan@linuxcare.com.au>
2587 * configure.in (BFD_VERSION): New.
2588 (AM_INIT_AUTOMAKE): Use $BFD_VERSION.
2589 * configure: Regenerate.
2590 * Makefile.am: Run "make dep-am"
2591 * Makefile.in: Regenerate.
2593 2001-02-26 Timothy Wall <twall@cygnus.com>
2595 * emulparams/elf64_aix.sh: Add additional read-only sections;
2596 uncomment lines which are now required.
2598 2001-02-26 H.J. Lu <hjl@gnu.org>
2600 * ldlang.c (open_input_bfds): Set the bfd error handler so
2601 that problems can be caught whilst loading symbols.
2602 (record_bfd_errors): New function: Report BFD errors and mark
2603 the executable output as being invalid.
2605 2001-02-22 Timothy Wall <twall@cygnus.com>
2607 * configure.host: Add configuration for ia64-*-aix*.
2608 * Makefile.am (ALL_64_EMULATIONS): Add emulation for ia64-*-aix*.
2609 Add dependencies for eelf64_aix.c.
2610 * Makefile.in: Regenerate.
2611 * configure.tgt: Add ia64-*-aix* mapping.
2612 * emulparams/elf64_aix.sh: Add settings for elf64 on aix5.
2613 * testsuite/ld-bootstrap/bootstrap.exp: Exclude ia64 flavor from
2616 2001-02-20 H.J. Lu <hjl@gnu.org>
2618 * ldfile.c (ldfile_open_file): Set entry->search_dirs_flag to
2619 false if we found the file.
2621 2001-02-18 David O'Brien <obrien@FreeBSD.org>
2623 * configure.tgt: Add FreeBSD/Alpha, FreeBSD/x86-64, FreeBSD/ia64,
2624 FreeBSD/PowerPC, FreeBSD/arm, and FreeBSD/sparc64 entries.
2626 2001-02-18 lars brinkhoff <lars@nocrew.org>
2628 * Makefile.am: Add PDP-11 target.
2629 * configure.tgt: Likewise.
2630 * emulparams/pdp11.sh: New file.
2632 2001-02-17 David O'Brien <obrien@FreeBSD.org>
2634 * configure.host: Add a generic FreeBSD configuration entry such that
2635 all [modern] FreeBSD systems on all platforms will look the same.
2637 2001-02-14 H.J. Lu <hjl@gnu.org>
2639 * configure.tgt: Remove mention of earmelf_linux26.
2641 2001-02-13 Richard Henderson <rth@redhat.com>
2643 * emulparams/elf64_ia64.sh (OTHER_GOT_SYMBOLS): Remove.
2645 2001-02-13 H.J. Lu <hjl@gnu.org>
2647 * ldexp.h (node_type): Add etree_provided.
2648 * ldexp.c (exp_fold_tree): Handle etree_provided. Set the node
2649 type to etree_provided if defined by PROVIDE. Allow updating
2651 (exp_print_tree): Handle etree_provided.
2652 * mpw-elfmips.c (gldelf32ebmip_find_exp_assignment): Handle
2655 2001-02-09 David Mosberger <davidm@hpl.hp.com>
2657 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add
2658 .IA_64.unwind.* pattern to unwind table section and
2659 .IA_64.unwind_info* pattern to unwind info section.
2661 2001-02-09 Martin Schwidefsky <schwidefsky@de.ibm.com>
2663 * Makefile.am: Add linux target for S/390.
2664 * Makefile.in: Likewise.
2665 * configure.host: Likewise.
2666 * configure.tgt: Likewise.
2667 * emulparams/elf64_s390.sh: New file.
2668 * emulparams/elf_s390.sh: New file.
2670 2001-02-09 Jakub Jelinek <jakub@redhat.com>
2672 * configure.tgt (sparc64-*-linux-gnu*): Add elf32_sparc into
2674 (sparc-*-linux-gnu*): Add elf64_sparc into targ_extra_libpath.
2676 2001-02-06 Philip Blundell <philb@gnu.org>
2678 * Makefile.am: Remove mention of earmelf_linux26.
2679 * Makefile.in: Regenerate.
2681 2001-02-04 Philip Blundell <philb@gnu.org>
2683 * emulparams/armelf_linux.sh (TEXT_START_ADDR): Set to 0x8000.
2684 * emulparams/armelf_linux26.sh: Delete.
2685 * configure.tgt: Remove mention of armelf_linux26 emulation.
2687 2001-02-01 Nick Clifton <nickc@redhat.com>
2689 * ld.1: Replace occurances of -oformat with --oformat.
2691 2001-01-25 Jim Driftmyer <jdrift@stny.rr.com>
2693 * ldlang.c (lang_leave_overlay): Don't set lma_region when
2694 load_base is specified.
2696 2001-01-24 Hans-Peter Nilsson <hp@axis.com>
2698 * emultempl/elf32.em: Correct spelling in comments and listed
2701 2001-01-23 Alan Modra <alan@linuxcare.com.au>
2703 * ldlang.c (lang_leave_overlay): Only set lma_region from the
2704 default for the first section of a group of overlay sections.
2706 2001-01-22 Alan Modra <alan@linuxcare.com.au>
2708 * Makefile.am (GENSCRIPTS): Pass exec_prefix.
2709 * Makefile.in: Regenerate.
2710 * genscripts.sh: Use exec_prefix parameter to specify tool lib.
2711 Check for null tool_dir.
2713 2001-01-16 Jim Wilson <wilson@redhat.com>
2715 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add IA_64.unwind
2716 and IA_64.unwind.info.
2718 2001-01-16 H.J. Lu <hjl@gnu.org>
2720 * ldlang.c (lang_check): Merge the private data only if the
2721 input file has contents.
2723 2001-01-14 Alan Modra <alan@linuxcare.com.au>
2725 * emulparams/hppalinux.sh (OUTPUT_FORMAT): Set to elf32-hppa-linux.
2727 * emultempl/hppaelf.em (hppaelf_after_parse): New function,
2728 enabling search for libmilli. On a relocatable link, make .text
2730 (LDEMUL_AFTER_PARSE): Define.
2731 (hppaelf_finish): Correct spelling of relocatable in comments.
2733 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
2734 rummage through the script for sections on the unique list.
2735 Correct length of strncmp for ".note".
2736 (gld${EMULATION_NAME}_check_needed): Rearrange function.
2738 * ldlang.c (unique_section_list): New var.
2739 (unique_section_p): New function.
2740 (walk_wild_section): Don't match sections on unique_section_list.
2741 (lang_add_unique): New function.
2742 Correct spelling of relocatable in comments.
2744 * ldlang.h (struct unique_sections): Declare.
2745 (unique_section_list): Declare.
2746 (unique_section_p): Declare.
2747 (lang_add_unique): Declare.
2749 * lexsup.c (ld_options): Allow --unique to take an optional arg.
2750 (parse_args [OPTION_UNIQUE]): Call lang_add_unique.
2752 * ld.texinfo (--unique): Update.
2754 2001-01-13 Nick Clifton <nickc@redhat.com>
2756 * lexsup.c (parse_args): Remove spurious white space.
2758 2001-01-12 Nick Clifton <nickc@redhat.com>
2760 * lexsup.c (parse_args): Update copyright date.
2762 2001-01-12 Philip Blundell <pb@futuretv.com>
2764 * configure.host: Set HOSTING_LIBS appropriately for ix86-cygwin.
2766 2001-01-10 Kazu Hirata <kazu@hxi.com>
2768 * scripttempl/h8300.sc: Fix formatting. Fix a comment typo.
2769 * scripttempl/h8300h.sc: Fix formatting.
2770 * scripttempl/h8300s.sc: Likewise.
2771 * scripttempl/h8500.sc: Likewise.
2772 * scripttempl/h8500b.sc: Likewise.
2773 * scripttempl/h8500c.sc: Likewise.
2774 * scripttempl/h8500m.sc: Likewise.
2775 * scripttempl/h8500s.sc: Likewise.
2777 2000-01-07 David O'Brien <obrien@BSDi.com>
2779 * emultempl/elf32.em: Only perform Linux ld hints processing when
2782 2001-01-07 Philip Blundell <philb@gnu.org>
2784 * ld.texinfo (Bug Reporting): Update email address for reports.
2786 2000-12-31 Nick Clifton <nickc@redhat.com>
2788 * lexsup.c (parse_args): Set opterr to 0 and detect unparsed long
2789 options by checking for a return value of '?' not -1.
2791 2000-12-28 Nick Clifton <nickc@redhat.com>
2793 * lexsup.c (struct ld_option): Add new enum value:
2795 (ld_options[]): Change -omagic, -output and -oformat options
2796 to be EXACTLY_TWO_DASHES.
2797 (OUTPUT_COUNT): Use ARRAY_SIZE.
2798 (parse_args): Change parameter 'argc' to unsigned.
2799 Place EXACTLY_TWO_DASHES options into new really_longopts
2801 If getopt_long_only fails, try calling getopt_long using the
2802 really_longopts array.
2803 (help): Print a double dash for both EXACTLY_TWO_DASHES and
2806 * ldlex.h: Fix prototype of parse_args.
2808 * ld.texinfo: Document that long options starting with 'o'
2809 must be preceeded by two dashes. Change example of a single
2810 dashed long option from -oformat to -trace-symbol.
2812 2000-12-26 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
2814 * emultempl/pe.em (OPTION_NO_DEFAULT_EXCLUDES): Define.
2815 (longopts[]): New --no-default-excludes option.
2816 (gld_${EMULATION_NAME}_list_options): Document.
2817 (gld_${EMULATION_NAME}_parse_args): Handle.
2819 2000-12-13 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2821 * ldlang.c (new_stat): Revert the last beautification with "innocent"
2822 whitespace, it breaks the K&R C preprocessor.
2824 2000-12-11 DJ Delorie <dj@redhat.com>
2826 * ld.texinfo: Add notes about --whole-archive and gcc.
2828 2000-11-18 Fred Fish <fnf@be.com>
2830 * lexsup.c (OPTION_ALLOW_SHLIB_UNDEFINED): Define.
2831 (ld_options): Entry for --allow-shlib-undefined.
2832 (parse_args): Handle OPTION_ALLOW_SHLIB_UNDEFINED.
2833 * ldmain.c (main): Initialize link_info.allow_shlib_undefined
2835 * ld.texinfo: Document new command line switch.
2837 2000-12-12 Geoffrey Keating <geoffk@redhat.com>
2839 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS):
2840 .fixup is actually read/write.
2841 * emulparams/elf32lppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
2842 * emulparams/elf32ppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
2843 * emulparams/elf32lppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
2845 2000-12-11 Jan Hubicka <jh@suse.cz>
2847 * NEWS: Add note about x86_64 architecture.
2849 2000-12-06 Mark Elbrecht <snowball3@bigfoot.com>
2851 * scripttempl/i386go32.sc: Use PROVIDE with _etext, _edata, _end.
2852 Set DWARF2 sections to a VMA of zero.
2854 2000-12-01 Joel Sherrill <joel@OARcorp.com>
2856 * configure.tgt (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
2858 (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
2859 (sparc*-*-rtems*): Switched from a.out to ELF.
2861 2000-11-30 Jan Hubicka <jh@suse.cz>
2863 * Makefile.am (ALL_EMULATIONS): Add eelf_x86_64.o
2864 (eelf_x86_64.c): New.
2865 * Makefile.in: Regenerate.
2866 * configure.tgt: Add support for x86_64-*-linux-gnu*.
2867 * emulparams/elf_x86_64.sh: New.
2869 2000-11-30 Hans-Peter Nilsson <hp@axis.com>
2871 * emulparams/crislinux.sh (ENTRY): Change back to _start.
2872 (TEXT_START_SYMBOLS): Remove conditional setting of __start.
2874 * scripttempl/crisaout.sc: Change all RELOCATING not related to
2875 merging non-a.out sections into CONSTRUCTING.
2877 2000-11-28 Nick Clifton <nickc@redhat.com>
2879 * ld.1 (COPYING): Mention that the GNU Free Documentation
2880 License is present in the sources, but not the output, and
2881 also available from the GNU website.
2882 (GNU Free Documentation License): Comment out this section.
2884 2000-11-28 David O'Brien <obrien@dragon.nuxi.com>
2886 * emulparams/elf64alpha.sh (ENTRY): Remove leading underscore as ELF
2889 2000-11-25 David O'Brien <obrien@FreeBSD.org>
2891 * ld.1: Remove old date so it does not give the impression the manpage
2894 2000-11-24 Nick Clifton <nickc@redhat.com>
2896 * configure.tgt (xscale-coff): Add target.
2897 (xscale-elf): Add target.
2899 2000-11-24 Fred Fish <fnf@be.com>
2901 * ldmain.c (main): Remove redundant init of config.make_executable
2904 2000-11-15 Richard Henderson <rth@redhat.com>
2906 * emulparams/elf64alpha.sh (MAXPAGESIZE): Typo -- 64k, not 1M.
2908 2000-11-14 Kazu Hirata <kazu@hxi.com>
2910 * scripttempl/h8300.sc: Fix formatting.
2911 * scripttempl/h8300h.sc: Likewise.
2912 * scripttempl/h8300s.sc: Likewise.
2914 2000-11-14 Denis Chertykov <denisc@overta.ru>
2916 * scripttempl/elf32avr.sc: Fix bug in .eeprom segment.
2918 2000-11-09 Philip Blundell <pb@futuretv.com>
2920 * emultempl/pe.em: Define ___start_SECNAME and ___stop_SECNAME
2921 around orphan sections whose names can be represented in C.
2923 2000-11-07 Jim Wilson <wilson@redhat.com>
2925 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): New local
2926 hold_sdata. If SEC_SMALL_DATA set, set place to hold_sdata.
2928 2000-11-06 Nick Clifton <nickc@redhat.com>
2930 * ld.texinfo: Add GNU Free Documentation License.
2931 * ldint.texinfo: Add GNU Free Documentation License.
2932 * ld.1: Add GNU Free Documentation License.
2934 2000-11-05 Alan Modra <alan@linuxcare.com.au>
2936 * ldlex.l (yy_create_string_buffer): Init yy_is_our_buffer,
2937 yy_is_interactive, yy_at_bol, and yy_fill_buffer.
2939 * Makefile.am (DISTCLEANFILES): Add stringify.sed.
2940 Move 2000-11-02 Makefile.in changes to this file.
2941 * Makefile.in: Regenerate.
2943 2000-11-03 Nick Clifton <nickc@redhat.com>
2945 * scripttempl/h8300.sc: Use ${CONSTRUCTING...} to enclose
2946 constructors and destructors.
2947 * scripttempl/h8300h.sc: Ditto.
2948 * scripttempl/h8300s.sc: Ditto.
2949 * scripttempl/h8500.sc: Ditto.
2950 * scripttempl/h8500b.sc: Ditto.
2951 * scripttempl/h8500c.sc: Ditto.
2952 * scripttempl/h8500m.sc: Ditto.
2953 * scripttempl/h8500s.sc: Ditto.
2954 * scripttempl/v850.sc: Ditto.
2955 * scripttempl/w65.sc: Ditto.
2956 * scripttempl/z8000.sc: Ditto.
2958 2000-11-02 Per Lundberg <plundis@chaosdev.org>
2960 * Makefile.in (e_i386_chaos.c): New rule.
2961 (ALL_EMULATIONS): Added e_i386_chaos.o.
2962 * emulparams/elf_i386_chaos.sh: New file.
2963 * configure.tgt: Recognise i[3456]86-chaosdev-storm-chaos.
2965 2000-10-20 Jakub Jelinek <jakub@redhat.com>
2967 * emulparams/elf64_sparc.sh (TEXT_START_ADDR,
2968 NONPAGED_TEXT_START_ADDR): Set to 4GB for Solaris targets.
2969 Fix sed invocation, so that it coped with '/' in Solaris 64bit
2970 library path suffix.
2971 Based on patch by Andrew Macleod <amacleod@cygnus.com>.
2973 2000-10-18 Hans-Peter Nilsson <hp@axis.com>
2975 * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32),
2976 for consecutive sections.
2978 2000-10-17 Chandrakala Chavva <cchavva@redhat.com>
2980 * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific
2982 * ld.texinfo: Added notes about this new option.
2984 2000-10-16 Nick Clifton <nickc@redhat.com>
2986 * emultempl/pe.em (_after_open): Add tests of return values from
2987 bfd functions. Emit appropriate error messages if necessary.
2989 2000-10-13 Nick Clifton <nickc@redhat.com>
2991 * emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
2992 local variables - they are not used, but leave in the call to
2993 bfd_canonicalize_symtab.
2994 (_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
2995 pe_dll_search_prefix.
2997 2000-10-12 Charles Wilson <cwilson@ece.gatech.edu>
2999 * emultempl/pe.em (pe_dll_search_prefix): New variable,
3000 (longopts): New --dll-search-prefix option.
3001 (gld_${EMULATION_NAME}_list_options): Document.
3002 (gld_${EMULATION_NAME}_parse_args): Handle.
3003 (gld_${EMULATION_NAME}_open_dynamic_archive): When linking
3004 dynamically, search for a dll named '<prefix><basename>.dll'
3005 in preference to 'lib<basename>.dll' if --dll-search-prefix
3008 2000-10-12 Alan Modra <alan@linuxcare.com.au>
3010 * ldlang.c (section_already_linked): Set kept_section instead of
3013 2000-10-10 Kazu Hirata <kazu@hxi.com>
3015 * deffile.h: Fix formatting.
3016 * lexsup.c: Likewise.
3019 2000-10-09 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
3021 * pe-dll.c (make_one): Do not generate code thunk for DATA
3023 (process_def_file): deduce DATA flag for auto-export sumbols.
3025 2000-10-09 Kazu Hirata <kazu@hxi.com>
3027 * ld.h: Fix formatting.
3028 * ldcref.c: Likewise.
3029 * ldctor.h: Likewise.
3030 * ldemul.c: Likewise.
3031 * ldemul.h: Likewise.
3032 * ldexp.c: Likewise.
3033 * ldexp.h: Likewise.
3034 * ldfile.c: Likewise.
3035 * ldfile.h: Likewise.
3036 * ldlang.c: Likewise.
3037 * ldlang.h: Likewise.
3038 * ldmain.c: Likewise.
3039 * pe-dll.c: Likewise.
3041 * pe-dll.c: Revert some formatting fixes.
3043 2000-10-08 Kazu Hirata <kazu@hxi.com>
3045 * pe-dll.c: Fix formatting.
3047 2000-10-05 Kazu Hirata <kazu@hxi.com>
3049 * ldlang.c: Fix formatting.
3051 2000-10-03 DJ Delorie <dj@redhat.com>
3053 * pe-dll.c (fill_edata): initialize entire block
3054 (make_one): fill in correct section.
3056 2000-10-03 Kazu Hirata <kazu@hxi.com>
3058 * ldexp.c: Fix formatting.
3060 2000-10-02 DJ Delorie <dj@redhat.com>
3062 * emultempl/pe.em (gld_*_after_open): detect case where there two
3063 import libraries for same dll; rename one to ensure proper link
3066 * pe-dll.c (process_def_file): compare ordinals to -1, not 0; fix
3068 (generate_edata): fix typo
3070 2000-09-29 Hans-Peter Nilsson <hp@axis.com>
3072 * scripttempl/crisaout.sc (ENTRY): Now __start.
3073 (.text): Add default setting for __start.
3074 Remove CONSTRUCTORS handling.
3075 (/DISCARD/): Add .gnu.warning.*.
3076 * emulparams/crislinux.sh (ENTRY): Now __start.
3077 (TEXT_START_SYMBOLS): New; provide __Stext and __start default.
3078 * emulparams/criself.sh (OUTPUT_FORMAT): Now elf32-us-cris.
3079 (ENTRY): Now __start.
3080 (INITIAL_READONLY_SECTIONS): Add KEEP for .startup.
3081 (EXECUTABLE_SYMBOLS): Add default setting for __start.
3083 2000-09-29 Kazu Hirata <kazu@hxi.com>
3085 * deffile.h: Fix formatting.
3087 * ldcref.c: Likewise.
3088 * ldctor.c: Likewise.
3089 * ldctor.h: Likewise.
3090 * ldemul.c: Likewise.
3091 * ldemul.h: Likewise.
3092 * ldexp.c: Likewise.
3093 * ldexp.h: Likewise.
3094 * ldfile.c: Likewise.
3095 * ldfile.h: Likewise.
3096 * ldlang.c: Likewise.
3097 * ldlang.h: Likewise.
3098 * lexsup.c: Likewise.
3100 * pe-dll.c: Likewise.
3102 2000-09-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
3104 * pe-dll.c (process_def_file): Uninitialized data wasn't
3105 exported with --export-all-symbols switch.
3107 2000-09-28 DJ Delorie <dj@redhat.com>
3109 * pe-dll.c (fill_edata): rearrange the data so that ordinals and
3110 noname work properly.
3112 2000-09-28 Alan Modra <alan@linuxcare.com.au>
3114 * ld.texinfo (HPPA ELF32): New section.
3116 * emultempl/hppaelf.em (group_size): New.
3117 (hppaelf_finish): Pass group_size to elf32_hppa_size_stubs.
3118 (PARSE_AND_LIST_PROLOGUE): Add OPTION_STUBGROUP_SIZE.
3119 (PARSE_AND_LIST_LONGOPTS): Add --stub-group-size. Duplicate
3120 options to prevent abbreviations matching.
3121 (PARSE_AND_LIST_OPTIONS): Describe the above. Reformat.
3122 (PARSE_AND_LIST_ARGS_CASES): Handle it.
3124 2000-09-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3126 * emultempl/m68kelf.em: Conditionalise the embedded relocs feature
3127 on the m68*-*-elf target. Make it support COFF input objects.
3129 2000-09-21 Kazu Hirata <kazu@hxi.com>
3131 * ldmain.c: Fix formatting.
3132 * ldmisc.c: Likewise.
3133 * ldver.c: Likewise.
3134 * ldwrite.c: Likewise.
3136 2000-09-21 Alan Modra <alan@linuxcare.com.au>
3138 * ldwrite.c (clone_section): Silence gcc warnings.
3140 2000-09-20 Alan Modra <alan@linuxcare.com.au>
3142 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Handle
3143 out of memory failure.
3145 * ldwrite.c (ldwrite): Remove unnecessary einfo arg.
3146 (clone_section): Handle out of memory failures. Rename var to
3147 avoid c++ reserved word.
3149 2000-09-18 Alan Modra <alan@linuxcare.com.au>
3151 * emultempl/hppaelf.em (hppaelf_add_stub_section): Rename
3152 stub_name param to stub_sec_name.
3153 (hppaelf_finish): Modify call to elf32_hppa_size_stubs.
3155 2000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3157 * emultempl/m68kelf.em: New file.
3158 * emulparams/m68kelf.sh (EXTRA_EM_FILE): Use it.
3159 * Makefile.am (em68kelf.c): Add dependency on m68kelf.em.
3160 * Makefile.in: Regenerate.
3162 2000-09-15 Alan Modra <alan@linuxcare.com.au>
3164 * emulparams/hppalinux.sh (DATA_START_SYMBOLS): Provide $global$
3167 2000-09-13 Nick Clifton <nickc@redhat.com>
3169 * ldmain.c (multiple_definition): Disable relaxation if
3170 multiple symbol definitions are encountered - otherwise the
3171 linker could abort with an assertion failure.
3173 2000-09-10 Nick Clifton <nickc@redhat.com>
3175 * mri.c: Fix formatting.
3177 2000-09-07 H.J. Lu <hjl@gnu.org>
3179 * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
3180 * configure: Rebuild.
3182 2000-09-07 H.J. Lu <hjl@gnu.org>
3184 * Makefile.am (lexsup.o): Also depend on $(INCDIR)/demangle.h.
3185 * Makefile.in: Rebuild.
3187 2000-09-07 Alan Modra <alan@linuxcare.com.au>
3189 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Fix
3190 broken list handling. Create __start_SECNAME and __stop_SECNAME
3191 when no place-holder. Add some comments. Test both SEC_CODE and
3192 SEC_READONLY for hold_text to prevent .rodata orphan poisoning.
3193 Handle case where no output section statement created.
3195 2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
3197 * configure.tgt (sh-*-linux*): Added.
3198 * Makefile.am: Added eshelf_linux and eshlelf_linux.
3199 * Makefile.in: Rebuilt.
3200 * emulparams/shelf_linux.sh: New file.
3201 * emulparams/shlelf_linux.sh: New file.
3203 2000-09-06 Alan Modra <alan@linuxcare.com.au>
3205 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
3206 try shuffling sections when the orphan happens to be the place
3207 holder. Keep count of unique section names generated so we speed
3208 the search for a new name.
3210 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
3212 * configure: Rebuilt with new libtool.m4.
3214 2000-09-05 Nick Clifton <nickc@redhat.com>
3216 * Makefile.in: Regenerate.
3217 * aclocal.m4: Regenerate.
3218 * configure: Regenerate.
3219 * config.in: Regenerate.
3220 * po/ld.pot: Regenerate.
3222 * ldint.texinfo: Remove CVS revision marker - it foils local
3225 * emultempl/ticoff.em: Remove extraneous comma.
3227 2000-09-05 Alan Modra <alan@linuxcare.com.au>
3229 * emultempl/hppaelf.em (hppaelf_add_stub_section): Add SEC_RELOC
3230 to stub section flags.
3231 (hppa_for_each_input_file_wrapper): New.
3232 (hppa_lang_for_each_input_file): New.
3233 (lang_for_each_input_file): Define to call above.
3234 (multi_subspace): New.
3235 (hppaelf_finish): Pass multi_subspace to elf32_hppa_size_stubs.
3236 (PARSE_AND_LIST_PROLOGUE): Define.
3237 (PARSE_AND_LIST_LONGOPTS): Define.
3238 (PARSE_AND_LIST_OPTIONS): Define.
3239 (PARSE_AND_LIST_ARGS_CASES): Define.
3240 (hppaelf_finish): Call elf32_hppa_set_gp.
3241 (hppaelf_set_output_arch): Remove.
3242 (LDEMUL_SET_OUTPUT_ARCH): Remove.
3244 * emulparams/hppalinux.sh (ELFSIZE): Define.
3246 (OTHER_READONLY_SECTIONS): Define.
3248 (GENERATE_SHLIB_SCRIPT): Define.
3250 * ldlang.c: Add missing prototypes, and tidy others. Change CONST
3251 to const throughout. Change `void *' to `PTR' throughout.
3252 (lang_memory_default): Function is local to file, add `static'.
3254 * Makefile.am (ehppaelf.c): Depend on emultempl/elf32.em.
3255 (ehppalinux.c): Likewise.
3256 (earmelf.c): Likewise.
3257 (earmelf_linux.c): Likewise.
3258 (earmelf_linux26.c): Likewise.
3259 * Makefile.in: Regenerate.
3261 * ld.h (ld_config_type): Add unique_orphan_sections.
3262 * lexsup.c (OPTION_UNIQUE): Define.
3263 (ld_options): Add "--unique".
3264 (parse_args): Handle it.
3265 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
3266 search for an existing output section if unique_orphan_sections is
3267 set. Make use of bfd_get_unique_section_name rather than
3268 duplicating code here.
3269 * ld.texinfo: Describe --unique.
3271 * lexsup.c (ld_options): Make split-by-reloc arg optional. Add
3272 optional arg to split-by-file.
3273 (parse_args): Handle them.
3274 * ld.texinfo: Update description of these options.
3275 * ldwrite.c (clone_section): Pass in the section name. Replace
3276 local code with bfd_get_unique_section_name.
3277 (split_sections): Tidy code and comments. Use a list traversal
3278 more appropriate to the list construction. Handle cooked section
3279 sizes. Split when split_by_reloc reached rather than exceeded.
3280 Track section size and split when split_by_file reached. Fix
3281 link_order_tail (even though it's not used).
3282 (ldwrite): Modify condition for calling split_sections to suit
3283 changed split_by_reloc and split_by_file.
3284 * ldmain.c (main): Init config.split_by_reloc and
3285 config.split_by_file to -1.
3286 * ld.h (ld_config_type): Change split_by_reloc to unsigned.
3287 Change split_by_file to bfd_size_type.
3289 2000-09-02 Nick Clifton <nickc@redhat.com>
3291 * configure.in: Increase version number to 2.10.91.
3292 * NEWS: Mention new ability to support removal of duplicate DWARF2
3294 * configure: Regenerate.
3295 * aclocal.m4: Regenerate.
3296 * config.in: Regenerate.
3298 2000-09-02 Daniel Berlin <dberlin@redhat.com>
3300 * scripttempl/elf.sc: Add .gnu.linkonce.wi.* to .debug_info
3302 * scripttempl/elf32avr.sc: Ditto.
3303 * scripttempl/elfd10v.sc: Ditto.
3304 * scripttempl/elfd30v.sc: Ditto.
3305 * scripttempl/elfi370.sc: Ditto.
3306 * scripttempl/elfm68hc11.sc: Ditto.
3307 * scripttempl/elfm68hc12.sc: Ditto.
3308 * scripttempl/elfi386beos.sc: Ditto.
3309 * scripttempl/v850.sc: Ditto.
3311 2000-08-31 Alexandre Oliva <aoliva@redhat.com>
3313 * acinclude.m4: Include libtool and gettext macros from the
3315 * aclocal.m4, configure: Rebuilt.
3317 2000-08-25 Nick Clifton <nickc@redhat.com>
3319 * ldlang.c (open_output): When choosing the target for a
3320 particular endianness, do nothing if the target is not
3323 2000-08-25 H.J. Lu <hjl@gnu.org>
3325 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
3326 check -rpath nor LD_RUN_PATH for cross link.
3327 * ld.texinfo: Document the change.
3329 2000-08-24 Hans-Peter Nilsson <hp@axis.com>
3331 * NEWS: Mention support for CRIS.
3333 2000-08-23 H.J. Lu <hjl@gnu.org>
3335 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Get
3336 the current runpath list from bfd_elf_get_runpath_list ()
3339 2000-08-22 H.J. Lu <hjl@gnu.org>
3341 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search
3342 the DT_RPATH/DT_RUNPATH entries for DT_NEEDED after
3343 LD_LIBRARY_PATH for native linker. Display the needed DSO if
3344 trace_file_tries is non-zero.
3345 (gld${EMULATION_NAME}_try_needed): Report the needed DSO found
3346 if trace_file_tries is non-zero.
3348 * ld.texinfo: Document the usage of DT_RPATH/DT_RUNPATH.
3351 2000-08-14 Jason Eckhardt <jle@cygnus.com>
3353 * NEWS: Mention i860 support.
3355 2000-08-14 Andreas Schwab <schwab@suse.de>
3357 * scripttempl/elf.sc: Fix last change to use correct comment
3360 2000-08-10 Geoff Keating <geoffk@cygnus.com>
3362 * scripttempl/elf.sc: Add a comment giving the correspondence
3363 between sections, per-datum sections, and linkonce sections. Make
3364 the comment true even for .bss, .sdata, .sdata2, .sbss, and
3367 2000-08-10 Jason Eckhardt <jle@cygnus.com>
3369 * emulparams/elf32_i860.sh: New file.
3370 * configure.tgt: Recognize new target i860-stardent-{sysv4*|elf*}.
3371 * Makefile.am (ALL_EMULATIONS): Add eelf32_i860.o.
3372 (eelf32_i860.c): New rule.
3373 * Makefile.in: Regenerate.
3375 2000-08-10 Nick Clifton <nickc@cygnus.com>
3377 * emulparams/mipspe.sh (ENTRY): Add definition.
3379 2000-08-08 Peter Jeremy <peter.jeremy@alcatel.com.au>
3381 * emultempl/elf32.em (_after_close): Refer to -rpath not --rpath
3384 2000-08-08 Stephane Carrez <Stephane.Carrez@worldnet.fr>
3386 * scripttempl/elfm68hc11.sc: Define __bss_size symbol to indicate
3387 the final size of .bss section.
3388 * scripttempl/elfm68hc12.sc: Likewise.
3390 2000-08-04 Alan Modra <alan@linuxcare.com.au>
3392 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Rename to
3393 gld${EMULATION_NAME}_parse_args for consistency. Combine
3394 lastoptind and prevoptind vars, and keep track of last optind.
3395 (gld_${EMULATION_NAME}_list_options): Rename to
3396 gld${EMULATION_NAME}_list_options.
3398 2000-08-03 Rodney Brown <RodneyBrown@pmsc.com>
3400 * configure.tgt: Select targ_emul=elf_i386 for Unixware 7
3401 (i586-sco-sysv5uw7.1.0).
3403 2000-07-27 H.J. Lu <hjl@gnu.org>
3405 * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
3406 (PARSE_AND_LIST_PROLOGUE): New.
3407 (PARSE_AND_LIST_LONGOPTS): Likewise.
3408 (PARSE_AND_LIST_OPTIONS): Likewise.
3409 (PARSE_AND_LIST_ARGS_CASES): Likewise.
3410 (PARSE_AND_LIST_EPILOGUE): Likewise.
3412 2000-07-28 Alan Modra <alan@linuxcare.com.au>
3414 * emultempl/armelf.em: Elide functions common to elf32.em,
3415 ie. most of the file.
3416 (arm_elf_after_open): New. Do arm specific things then call
3417 gld${EMULATION_NAME}_after_open.
3418 (arm_elf_before_allocation): New. Call
3419 gld${EMULATION_NAME}_before_allocation then do arm specifics.
3420 (PARSE_AND_LIST_PROLOGUE): Define.
3421 (PARSE_AND_LIST_SHORTOPTS): Define.
3422 (PARSE_AND_LIST_LONGOPTS): Define.
3423 (PARSE_AND_LIST_OPTIONS): Define.
3424 (PARSE_AND_LIST_ARGS_CASES): Define.
3425 (LDEMUL_AFTER_OPEN): Define.
3426 (LDEMUL_BEFORE_ALLOCATION): Define.
3427 (LDEMUL_BEFORE_PARSE): Define.
3428 (LDEMUL_FINISH): Define.
3430 * emultempl/hppaelf.em: Similarly zap most of this file.
3431 (hppaelf_add_stub_section): Prototype.
3432 (hppaelf_layaout_sections_again): Prototype.
3433 (hook_in_stub): Prototype.
3434 (LDEMUL_SET_OUTPUT_ARCH): Define.
3435 (LDEMUL_FINISH): Define.
3436 (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
3438 * emulparams/armelf.sh (TEMPLATE_NAME): Use elf32.
3439 (EXTRA_EM_FILE): New.
3440 * emulparams/armelf_linux.sh: Likewise.
3441 * emulparams/armelf_linux26.sh: Likewise.
3442 * emulparams/hppalinux.sh: Likewise.
3443 * emulparams/hppaelf.sh: Likewise.
3446 * emultempl/elf32.em: Fix formatting.
3447 (EXTRA_EM_FILE): Source it.
3448 (LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
3449 LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
3450 LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
3451 LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
3452 LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
3453 LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
3454 LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
3455 LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
3456 LDEMUL_FIND_POTENTIAL_LIBRARIES): New shell vars. Add code to
3457 allow functions in this file to be overridden.
3458 (PARSE_AND_LIST_SHORTOPTS): Handle it.
3460 * emultempl/m68kcoff.em: Include ldfile.h before ldemul.h.
3462 * emultempl/elf32.em: Reorganize file.
3464 2000-07-27 Ivan Kokshaysky <ink@jurassic.park.msu.ru>
3466 * emulparams/elf64alpha.sh: Implement "-taso" emulation
3467 specific option to fit 64-bit executable in the lower
3468 31-bit address range. This is done by changing start
3469 address of .interp (the very first section of executable)
3470 and then setting EF_ALPHA_32BIT elf header flag.
3472 2000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3474 * emultempl/m68kcoff.em: New file.
3475 * emulparams/m68kcoff.sh (TEMPLATE_NAME): Use m68kcoff template.
3476 * Makefile.am (em68kcoff.c): Depend on m68kcoff.em rather than
3478 * Makefile.in: Regenerate.
3480 2000-07-20 H.J. Lu <hjl@gnu.org>
3482 * emultempl/elf32.em (longopts): Duplicate "disable-new-dtags"
3483 and "disable-new-dtags" to stop getopt from treating -d/-e as
3484 abbreviations for these options.
3486 2000-07-20 H.J. Lu <hjl@gnu.org>
3488 * ld.texinfo: Add documentation for --disable-new-dtags and
3491 * ldmain.c (main): Initialize link_info.new_dtags to false.
3493 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add
3494 --disable-new-dtags and --enable-new-dtags.
3495 (gld_${EMULATION_NAME}_list_options): Likewise.
3497 2000-07-05 Kenneth Block <krblock@computer.org>
3499 * lexsup.c: Add optional style to demangle switch
3500 * ld.texinfo: Document optional style to demangle switch.
3502 2000-07-20 Hans-Peter Nilsson <hp@axis.com>
3504 * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
3506 (ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
3507 Regenerate dependencies.
3508 * Makefile.in: Rebuild.
3509 * configure.tgt (cris-*-*): New target.
3510 * emulparams/crisaout.sh, emulparams/criself.sh,
3511 emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
3512 * po/POTFILES.in, po/ld.pot: Regenerate.
3514 2000-07-20 H.J. Lu <hjl@gnu.org>
3516 * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options):
3517 Print out ignored -z options.
3519 2000-07-19 H.J. Lu <hjl@gnu.org>
3521 * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Removed.
3522 (PARSE_AND_LIST_PROLOGUE): New.
3523 (PARSE_AND_LIST_LONGOPTS): Likewise.
3524 (PARSE_AND_LIST_OPTIONS): Likewise.
3525 (PARSE_AND_LIST_ARGS_CASES): Likewise.
3527 * ldmain.c (main): Clear link_info.flags and link_info.flags_1.
3529 * lexsup.c (ld_options): Comment out 'z'.
3530 (parse_args): Likewise.
3532 * emultempl/elf32.em: Include "elf/common.h".
3533 (gld_${EMULATION_NAME}_parse_args): Defined. Handle some -z
3535 (gld_${EMULATION_NAME}_list_options): Likewise.
3537 * ld.texinfo: Add documentation for the recognized -z options.
3539 2000-07-19 H.J. Lu <hjl@gnu.org>
3541 * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Call
3542 bfd_elf_set_dt_needed_soname ().
3544 2000-07-18 DJ Delorie <dj@cygnus.com>
3546 * pe-dll.c (pe_dll_id_target): check object target name also
3548 2000-07-18 Hans-Peter Nilsson <hp@axis.com>
3550 * scripttempl/elf.sc (.init): Only do ${INIT_START} and
3551 ${INIT_END} if relocating.
3552 (.fini): Likewise ${FINI_START} and ${FINI_END}.
3554 2000-07-16 Charles Wilson <cwilson@ece.gatech.edu>
3556 * emultempl/pe.em (gld_*_open_dynamic_archive): New search
3557 order for dynamic library '-lfoo' on pei386: libfoo.dll.a,
3558 foo.dll.a, libfoo.a, libfoo.dll, foo.dll. This fixes compatibility
3559 errors introduced by the old dynamic lib search order.
3561 2000-07-17 DJ Delorie <dj@cygnus.com>
3563 * pe-dll.c (process_def_file): auto-export data items also
3564 (pe_process_import_defs): also see if _imp_ form needed
3566 2000-07-12 Charles Wilson <cwilson@ece.gatech.edu>
3568 * pe-dll.c (make_one): fix a typo in the __imp_ name decoration
3569 for dll import libraries
3571 2000-07-12 Mark Elbrecht <snowball3@bigfoot.com>
3573 * scripttempl/i386go32.sc: Support the g++ attribute init_priority in
3574 gcc 2.95.2 and later.
3576 2000-07-11 Kazu Hirata <kazu@hxi.com>
3578 * ldfile.c (ldfile_try_open_bfd): Output '\n' after an error
3581 2000-07-10 Alan Modra <alan@linuxcare.com.au>
3583 * ldemul.h (struct lang_input_statement_struct): Remove forward
3585 (struct search_dirs): Likewise.
3586 * ldfile.h (struct lang_input_statement_struct): Likewise.
3587 Protect file from multiple inclusion.
3588 * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
3589 declaration from macro to file scope.
3591 * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
3592 * ldgram.y: Likewise here.
3593 * ldlang.c: And here.
3594 * ldmain.c: And here.
3595 * mpw-elfmips.c: And here.
3596 * mpw-eppcmac.c: And here.
3597 * emultempl/aix.em: And here.
3598 * emultempl/armcoff.em: And here.
3599 * emultempl/armelf.em: And here.
3600 * emultempl/armelf_oabi.em: And here.
3601 * emultempl/beos.em: And here.
3602 * emultempl/elf32.em: And here.
3603 * emultempl/hppaelf.em: And here.
3604 * emultempl/linux.em: And here.
3605 * emultempl/lnk960.em: And here.
3606 * emultempl/pe.em: And here.
3607 * emultempl/sunos.em: And here.
3608 * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
3609 * mpw-idtmips.c: Ditto.
3610 * emultempl/generic.em: Ditto.
3611 * emultempl/gld960.em: Ditto.
3612 * emultempl/gld960c.em: Ditto.
3613 * emultempl/mipsecoff.em: Ditto.
3614 * emultempl/ticoff.em: Ditto.
3615 * emultempl/vanilla.em: Ditto.
3617 * pe-dll.c: Include ldfile.h
3618 * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
3620 * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
3621 arguments to bfd_elf32_size_dynamic_sections call.
3622 (gldelf32ebmip_place_orphan): Add missing arguments to
3623 lang_leave_output_section_statement call.
3625 2000-07-10 H.J. Lu <hjl@gnu.org>
3627 * emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
3629 (strhash): Likewise.
3630 (compute_dll_image_base): Likewise.
3631 (pe_undef_found_sym): Likewise.
3632 (pe_undef_cdecl_match): Likewise.
3633 (gld_${EMULATION_NAME}_open_dynamic_archive): Mark the
3634 argument "arch" with ATTRIBUTE_UNUSED.
3636 2000-07-10 Alan Modra <alan@linuxcare.com.au>
3638 * configure.tgt: Remove extraneous hppa*-*-linux-gnu*.
3640 From Ryan Bradetich <rbradetich@uswest.net>
3641 * ldwrite.c (SSIZE): Remove to cure macro redefinition warning.
3643 2000-07-09 Alan Modra <alan@linuxcare.com.au>
3645 Changes to create multiple linker stubs, positioned immediately
3646 before the section where they are required.
3647 * emultempl/hppaelf.em: Include elf32-hppa.h.
3648 (stub_sec, file_chain): Delete.
3649 (hppaelf_create_output_section_statements): Don't make a stub
3651 (hook_stub_info): New struct.
3652 (hook_in_stub): New function.
3653 (hppaelf_add_stub_section): New function.
3654 (hppaelf_finish): Do nothing for relocateable links. Modify the
3655 call to elf32_hppa_size_stubs. Move code for updating section
3657 (hppaelf_layaout_sections_again): ..to here, a new function.
3659 * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Fix
3660 broken list handling. Pass in a pointer to the list.
3661 (hppaelf_finish): Update call to hppaelf_delete_padding_statements
3663 (hppaelf_before_parse): Prototype.
3664 (hppaelf_set_output_arch): Prototype.
3665 (hppaelf_create_output_section_statements): Prototype.
3666 (hppaelf_delete_padding_statements): Prototype.
3667 (hppaelf_finish): Prototype.
3670 * emultempl/hppaelf.em: Include ctype.h.
3671 (struct orphan_save): New.
3672 (gld${EMULATION_NAME}_place_orphan): New.
3673 (output_rel_find): New.
3674 (hppaelf_get_script): Update from elf32.em.
3675 (ld_hppaelf_emulation): Rename to ld_${EMULATION_NAME}_emulation.
3676 Change emulation_name field to "${EMULATION_NAME}". Add
3677 gld${EMULATION_NAME}_place_orphan.
3679 * Makefile.am (ALL_EMULATIONS): Reinstate ehppaelf.o, add
3680 ehppalinux.o, sort it. Regenerate dependencies.
3681 (ehppalinux.c): Depend on hppaelf.em
3682 * Makefile.in: Regenerate.
3684 * configure.tgt: targ_emul=hppalinux for hppa*linux
3686 * emulparams/hppalinux.sh: New.
3687 * emulparams/hppaelf.sh (TARGET_PAGE_SIZE): Write in hex.
3689 2000-07-08 Alan Modra <alan@linuxcare.com.au>
3691 * lexsup.c (parse_args): Copy section name.
3693 2000-07-07 Charles Wilson <cwilson@ece.gatech.edu>
3695 * emultempl/pe.em: institute the following search order for
3696 dynamic libraries on pei386: libfoo.dll.a, foo.dll.a (import
3697 libs), libfoo.dll, foo.dll (link direct to dll). Fall back to
3698 static lib (libfoo.a) if none of the above are found.
3700 2000-07-07 Mumit Khan <khan@xraylith.wisc.edu>
3702 * emultempl/pe.em (pe_enable_auto_image_base): New variable.
3703 (longopts): New --{enable,disable}-auto-image-base options.
3704 (gld_${EMULATION_NAME}_list_options): Document.
3705 (gld_${EMULATION_NAME}_parse): Handle.
3706 (strhash): New static function.
3707 (compute_dll_image_base): New static function.
3708 (gld_${EMULATION_NAME}_set_symbols): Use.
3710 2000-07-05 DJ Delorie <dj@redhat.com>
3714 2000-07-01 Koundinya K <kk@ddeorg.soft.net>
3716 * configure.tgt: Add traditional mips (mips*-*-sysv4*) target.
3717 * emulparams/elf32btsmip.sh: New file.
3718 * Makefile.am: Add traditional mips target.
3719 * Makefile.in: Rebuild.
3721 2000-07-01 H.J. Lu <hjl@gnu.org>
3723 * Makefile.am (EXTRA_ld_new_SOURCES): Set to deffilep.y for
3724 automake to use YLWRAP.
3725 * Makefile.in: Rebuild.
3727 2000-07-01 Alan Modra <alan@linuxcare.com.au>
3729 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
3730 (CLEANFILES): Add DEPA.
3731 * Makefile.in: Regenerate.
3733 2000-06-30 Timothy Wall <twall@ppc>
3735 * scripttempl/tic54xcoff.sc: PAGE N is not implemented, so encode
3736 the page in the upper octet of the address.
3738 2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
3740 * emulparams/avrmega161.sh (ARCH): Change to avr:5.
3742 2000-06-24 Alan Modra <alan@linuxcare.com.au>
3744 * NEWS: arm-elf does --gc-sections too.
3746 2000-06-22 Alan Modra <alan@linuxcare.com.au>
3748 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
3750 * Makefile.in: Regenerate.
3752 2000-06-21 H.J. Lu <hjl@gnu.org>
3754 * Makefile.am: Rebuild dependency.
3755 * Makefile.in: Rebuild.
3757 2000-06-20 H.J. Lu <hjl@gnu.org>
3759 * Makefile.am: Rebuild dependency.
3760 * Makefile.in: Rebuild.
3762 2000-06-20 Timothy Wall <twall@cygnus.com>
3764 * scripttempl/tic54xcoff.sc: New.
3765 * ldlang.c (wild_doit): Propagate SEC_BLOCK flag.
3766 * gen-doc.texi: Add flag for TI COFF.
3767 * ld.texinfo: Add documentation for TI COFF handling switches.
3768 * emultempl/ticoff.em: New. TI COFF handling.
3769 * configure.tgt: Add tic54x target.
3770 * Makefile.am: Add tic54x target.
3771 * Makefile.in: Ditto.
3773 2000-06-20 Alan Modra <alan@linuxcare.com.au>
3775 * ldmain.c (set_scripts_dir): Correct pointer comparison when
3776 checking for backslashes.
3778 2000-06-19 Alan Modra <alan@linuxcare.com.au>
3780 * NEWS: Move entries not in 2.10 above "Changes in version 2.10".
3782 2000-06-18 Alan Modra <alan@linuxcare.com.au>
3784 * NEWS: Update list of targets supporting --gc-sections.
3786 * scripttempl/elf.sc: KEEP .eh_frame contents.
3787 * scripttempl/elfd30v.sc: Same here.
3789 2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
3791 * Makefile.am (ALL_EMULATIONS): Added new emulation for m68hc12
3793 * Makefile.in: Rebuild.
3794 * configure.tgt: Recognize m68hc12 and m68hc11.
3795 * scripttempl/elfm68hc12.sc: New file.
3796 * emulparams/m68hc12elfb: New emulation.
3797 * emulparams/m68hc12elf: New emulation.
3798 * emulparams/m68hc11elfb.sh: New file. User configurable emulation
3799 (includes a memory.x script to define the ROM and RAM banks).
3800 * scripttempl/elfm68hc11.sc, emulparams/m68hc11elf.sh:
3801 New configuration files for support of Motorola 68hc11
3803 2000-06-15 Alan Modra <alan@linuxcare.com.au>
3805 * ldmain.c (main): Only change SEC_READONLY for final link.
3807 2000-06-13 H.J. Lu <hjl@gnu.org>
3809 * configure: Regenerate.
3811 2000-06-08 David O'Brien <obrien@FreeBSD.org>
3813 * configure.in (VERSION): Update to show this is the CVS mainline.
3815 2000-06-07 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3817 * emultempl/mipsecoff.em (gld{EMULATION_NAME}_after_open): Require all
3818 input objects to be ECOFF.
3819 (check_sections): einfo takes %B, not %P, to print a BFD name.
3821 2000-06-05 Michael Matz <matz@ifh.de>
3823 * ldgram.y (vers_defns): Handle 'extern "C++" { ... }' in
3826 * ldlex.l (V_IDENTIFIER): Accept `::' in symbols.
3828 2000-05-23 Marek Michalkiewicz <marekm@linux.org.pl>
3830 * emulparams/avr1200.sh (STACK): Define as 0.
3831 * emulparams/avr23xx.sh (STACK): Define as last internal SRAM address.
3832 * emulparams/avr4433.sh (STACK): Likewise.
3833 * emulparams/avr44x4.sh (STACK): Likewise.
3834 * emulparams/avr85xx.sh (STACK): Likewise.
3835 * emulparams/avrmega103.sh (STACK): Likewise.
3836 * emulparams/avrmega161.sh (STACK): Likewise.
3837 * emulparams/avrmega603.sh (STACK): Likewise.
3838 * scripttempl/elf32avr.sc (__data_start): Define for gcrt1.
3839 (__stack): Define from ${STACK} for main().
3841 2000-05-26 Alan Modra <alan@linuxcare.com.au>
3843 * Makefile.am: Update dependencies with "make dep-am"
3844 * Makefile.in: Regenerate.
3846 2000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
3848 * ldmain.c: Include filenames.h.
3849 (set_scripts_dir): Support backslashes in program name.
3851 2000-05-22 Igor Shevlyakov <igor@windriver.com>
3853 * ldmain.c (main): When deciding if ".text" section should be
3854 read-only, don't forget to reset SEC_READONLY because it
3855 could be already set.
3857 2000-05-22 Thomas de Lellis <tdel@windriver.com>
3859 * ld.1: Add documentation for new command line option:
3860 --section-start <sectionname>=<sectionorg>
3861 This is a generic version of -Ttext etc. which accepts
3862 any section name as a parameter instead of just text/data/
3864 * ld.texinfo: More docs.
3866 * lexsup.c: (parse_args): Recognize new command line option.
3867 (ld_options): Add new option.
3869 2000-05-18 H.J. Lu <hjl@gnu.org>
3871 * lexsup.c (parse_args): `i' == `r', not `q'.
3873 2000-05-18 Jeffrey A Law (law@cygnus.com)
3875 * configure.tgt (hppa*64*-*-*): Enable PA64 target.
3877 2000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
3878 Rick Gorton <gorton@scrugs.lkg.dec.com>
3880 Add support for '-q' == '--emit-relocs' switch.
3881 * ldmain.c (main): Default to false.
3882 * lexsup.c (parse_args): Turn on emitrelocations flag if set.
3883 * NEWS: Describe the emitrelocations switch.
3884 * ld.texinfo: Describe the emitrelocations switch.
3886 2000-05-16 Charles Wilson <cwilson@ece.gatech.edu>
3888 * emultempl/pe.em (_open_dynamic_archive): New function: Search
3889 the library path for "foo.dll" and "libfoo.dll" dynamic libraries
3890 before searching for 'libfoo.a' in response to a '-Bdynamic -lfoo'
3893 2000-05-15 David O'Brien <obrien@FreeBSD.org>
3895 * lexsup.c (parse_args): Update the year in the copyright notice.
3897 2000-05-13 Alan Modra <alan@linuxcare.com.au>
3899 * ld.h (gettext, dgettext, dcgettext, textdomain, bindtextdomain):
3900 Replace defines with those from intl/libgettext.h to quieten gcc
3903 2000-05-10 H.J. Lu <hjl@gnu.org>
3905 * ldlang.c (open_input_bfds): Don't load the same file within
3906 a group again if the whole archive has been loaded already.
3908 2000-05-03 Alan Modra <alan@linuxcare.com.au>
3910 From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
3911 * lexsup.c (set_section_start): Use bfd_scan_vma rather than
3914 2000-05-01 Jim Wilson <wilson@cygnus.com>
3916 * configure.host (ia64-*-linux-gnu*): Change gcc to ${CC}.
3918 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
3919 host "ia64-*-linux-gnu*".
3921 2000-04-29 Andreas Jaeger <aj@suse.de>
3923 * ld.h: Correctly check GCC version.
3925 2000-04-25 Jeffrey A Law (law@cygnus.com)
3927 * Makefile.am: Add PA64 support. Add missing dependencies for
3929 * Makefile.in: Rebuilt.
3930 * configure.tgt: Add PA64 support (currently disabled).
3932 2000-04-25 Alan Modra <alan@linuxcare.com.au>
3934 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Delete.
3935 (output_rel_find): New function.
3936 (hold_section, hold_use): Delete.
3937 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
3938 hold_interp): Make local to place_orphan.
3939 (gld${EMULATION_NAME}_place_orphan): Use lang_output_section_find
3940 rather than place_section to find possible previous use of orphan.
3941 Similarly find the place-holder output sections. Use returned
3942 value from lang_enter_output_section_statement rather than calling
3943 lang_output_section_statement_lookup.
3944 * emultempl/armelf.em: Same here.
3945 * emultempl/pe.em: Similar to above, but no need for output_rel_find.
3947 * ldlang.c (lang_enter_output_section_statement): Return output
3949 * ldlang.h (lang_enter_output_section_statement): Change
3952 * ldlang.h (lang_output_section_statement): Export it.
3953 * ldlang.c (lang_output_section_statement): Ditto.
3955 2000-04-24 Nick Clifton <nickc@cygnus.com>
3957 * ld.texinfo (Output Section Data): Add note that section data
3958 commands cannot appear outside of section directives.
3960 2000-04-2 Matthew Green <mrg@cygnus.com>
3962 * configure.tgt: Add NetBSD/sparc ELF, and NetBSD/sparc64 support.
3964 2000-04-21 Richard Henderson <rth@cygnus.com>
3965 David Mosberger <davidm@hpl.hp.com>
3967 * Makefile.am (ALL_64_EMULATIONS): Add eelf64_ia64.o.
3968 (eelf64_ia64.c): New rule.
3969 * Makefile.in: Rebuild.
3970 * configure.tgt (ia64-*-elf*, ia64-*-linux*): New targets.
3971 * emulparams/elf64_ia64.sh: New file.
3973 2000-04-21 Richard Henderson <rth@cygnus.com>
3975 * scripttempl/elfd30v.sc: Place .gcc_except_table.
3977 2000-04-19 Alan Modra <alan@linuxcare.com.au>
3979 * dep-in.sed: Match space at start of file name, not at end.
3981 2000-04-18 H.J. Lu <hjl@gnu.org>
3983 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
3984 lang_leave_output_section_statement () after calling
3985 lang_enter_output_section_statement ().
3986 * emultempl/armelf.em: Likewise.
3988 2000-04-18 Alan Modra <alan@linuxcare.com.au>
3990 * emultempl/elf32.em (struct orphan_save): Add section field.
3991 (gld${EMULATION_NAME}_place_orphan): Use above to keep sections in
3992 better order, and place first orphan section as we did before the
3993 2000-04-12 patch. Ignore ~SEC_ALLOC sections when choosing place.
3994 Don't call make_bfd_section here, let wild_doit do the job for us.
3995 Don't build a statement list when we'll only throw it away.
3996 * emultempl/armelf.em: Ditto.
3997 * emultempl/pe.em: Similarly.
3999 2000-04-14 Geoff Keating <geoffk@cygnus.com>
4001 * scripttempl/elfppc.sc: Remove.
4002 * emulparams/elf32ppc.sh: Use elf.sc.
4003 * emulparams/elf32lppc.sh: Use elf.sc.
4004 * emulparams/elf32ppclinux.sh: Use elf.sc.
4005 * emulparams/elf32ppcsim.sh: New file.
4006 * emulparams/elf32lppcsim.sh: New file.
4007 * Makefile.am: Update dependencies. Add elf32ppcsim ad elf32lppcsim.
4008 (ALL_EMULATIONS): Add elf32ppcsim ad elf32lppcsim.
4009 * Makefile.in: Regenerate.
4010 * configure.tgt (powerpc-*): Add elf32ppcsim and elf32lppcsim.
4012 2000-04-14 Alan Modra <alan@linuxcare.com.au>
4014 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Process
4015 ~SEC_ALLOC sections too. Init start address of debug sections.
4016 * emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan): Ditto.
4017 * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Ditto.
4018 Also set all relocateable section start addresses.
4020 2000-04-13 Geoff Keating <geoffk@cygnus.com>
4022 * scripttempl/elf.sc: Add support for .sbss2 and .sdata2 sections.
4023 Add new BSS_PLT variable for when .plt need not be contained in
4024 the file. Move _etext so that it is also after .fini, and provide
4025 both etext and _etext with a leading underscore. Mark the start
4028 2000-04-12 Alan Modra <alan@linuxcare.com.au>
4030 * emultempl/elf32.em (struct orphan_save): New.
4031 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
4032 hold_interp): Make them struct orphan_save.
4033 (gld${EMULATION_NAME}_place_section): Modify for new hold_*.
4034 (gld${EMULATION_NAME}_place_orphan): Add new orphan sections to
4035 the end of the relevant section list. Also add associated section
4036 statements to the end of any previous orphan statements.
4037 * emultempl/armelf.em: Similarly.
4038 * emultempl/pe.em: Similarly.
4040 2000-04-11 Alan Modra <alan@linuxcare.com.au>
4042 * ld.texinfo (Simple Example): Remove extraneous paragraph.
4044 2000-04-07 Andrew Cagney <cagney@b1.cygnus.com>
4046 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
4047 --enable-build-warnings option.
4048 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
4049 * Makefile.in, configure: Re-generate.
4051 2000-04-04 Alan Modra <alan@linuxcare.com.au>
4053 * po/ld.pot: Regenerate.
4055 * lexsup.c (help): Restore translated part of bug string.
4057 * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
4058 (DEP): Quote when passing vars to sub-make. Add warning message
4060 (DEP1): Rewrite for "gcc -MM".
4061 (CLEANFILES): Add DEP2.
4062 Update dependencies.
4063 * Makefile.in: Regenerate.
4065 2000-04-03 Alan Modra <alan@linuxcare.com.au>
4067 * ld.h: #include "bin-bugs.h"
4068 * lexsup.c (help): Use REPORT_BUGS_TO.
4070 2000-03-27 Denis Chertykov <denisc@overta.ru>
4072 * configure.tgt (avr-*-*): New target support.
4073 * Makefile.am: Likewise.
4074 * scripttempl/elf32avr.sc: New script file.
4075 * emulparams/avr1200.sh: New file.
4076 * emulparams/avr23xx.sh: New file.
4077 * emulparams/avr4433.sh New file.
4078 * emulparams/avr44x4.sh New file.
4079 * emulparams/avr85xx.sh New file.
4080 * emulparams/avrmega103.sh New file.
4081 * emulparams/avrmega161.sh New file.
4082 * emulparams/avrmega603.sh New file.
4083 * Makefile.in: Regenerate.
4085 2000-03-09 Andreas Jaeger <aj@suse.de>
4087 * Makefile.am (check-DEJAGNU): Also unset LANG.
4088 * Makefile.in: Rebuild.
4090 2000-03-06 Ian Lance Taylor <ian@zembu.com>
4092 * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
4095 2000-03-02 H.J. Lu <hjl@gnu.org>
4097 * emulparams/elf32mcore.sh: Include "getopt.h".
4099 2000-03-01 Ian Lance Taylor <ian@zembu.com>
4101 * configure.tgt: Remove *-*-aout, *-*-coff, and *-*-netware.
4103 2000-03-01 H.J. Lu <hjl@gnu.org>
4105 * emulparams/mipspe.sh: Add SUBSYSTEM and INITIAL_SYMBOL_CHAR.
4106 * emulparams/shpe.sh: Likewise.
4108 2000-03-01 Nick Clifton <nickc@cygnus.com>
4110 * pe-dll.c: Remove unused variables and add ATTRIBUTE_UNUSED
4111 to unused parameters.
4113 * emultempl/pe.em: Add "#ifdef DLL_SUPPORT" around static
4114 functions only used by DLL code.
4115 (_place_orphan): Initialise 'dollar'.
4117 2000-03-01 H.J. Lu <hjl@gnu.org>
4119 * ldmain.c (undefined_symbol): Take one more arg, fatal, to
4120 indicate if the undefined symbol is a fatal error or not.
4121 Don't delete the output file if "fatal" is false.
4123 2000-02-29 H.J. Lu <hjl@gnu.org>
4125 * Makefile.am (check-DEJAGNU): Also pass LIBS="$(LIBS)".
4126 Set LC_COLLATE and LC_ALL to null and export them. It is for
4127 sort which expects the C locale.
4128 Add $(LIBS) to all $(HOSTING_LIBS).
4129 * Makefile.in: Rebuild.
4131 2000-02-29 Alan Modra <alan@spri.levels.unisa.edu.au>
4133 * emultempl/{aix.em, armcoff.em, armelf.em, armelf_oabi.em,
4134 beos.em, elf32.em, generic.em, gld960.em, gld960c.em, hppaelf.em,
4135 linux.em, lnk960.em, mipsecoff.em, sunos.em, vanilla.em}
4136 (ld_emulation_xfer_struct): Add missing NULL initialiser for
4137 find_potential_libraries.
4139 2000-02-28 Jim Blandy <jimb@redhat.com>
4141 * ldgram.y (exclude_name_list): Don't require a comma to separate
4142 list entries; the lexer considers commas to be valid part of a
4143 filename, so in something like `foo, bar' the comma is considered
4144 part of the first filename, `foo,'.
4145 * ld.texinfo: Update section on EXCLUDE_FILE lists.
4147 2000-02-27 Loren J. Rittle <ljrittle@acm.org>
4149 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
4150 host "i[3456]86-*-freebsdelf*".
4152 2000-02-27 Mark Elbrecht <snowball3@bigfoot.com>
4154 * scripttempl/i386go32.sc: Move misplaced semicolons.
4156 2000-02-25 Ian Lance Taylor <ian@zembu.com>
4158 * Makefile.am (ALL_EMULATIONS): Remove ehppaelf.o.
4159 (ALL_64_EMULATIONS): Remove eelf64hppa.o.
4160 (eelf64hppa.c, ehppaelf.c): Remove targets.
4161 * Makefile.in: Rebuild.
4163 2000-02-25 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
4165 * configure.tgt (targ_extra_ofiles): Enable elf64_sparc on
4166 GNU/Linux/sparc, but keep the default as 32.
4168 * configure.tgt: Enable elf64_sparc on Solaris7+/sparc. And make
4169 it default if sparcv9 or sparc64.
4171 2000-02-24 Nick Clifton <nickc@cygnus.com>
4173 * Makefile.am: Add rules to build emipspe.o and earmpe.o.
4174 * Makefile.in: Regenerate.
4175 * configure.tgt: Add targets for arm-wince, sh-pe and mips-pe.
4177 * ldemul.h (ld_emulation_xfer_struct): Add new field:
4178 find_potential_libraries.
4179 * ldemul.c (ldemul_find_potential_libraries): New function.
4181 * ldfile.c (ldfile_open_file_search): Allow function to be
4183 (ldfile_open_file): Call ldemul_find_potential_libraries.
4184 * ldfile.h: Add prototype for ldfile_open_file_search.
4186 * pe-dll.c: Add support for ARM, MIPS and SH targets.
4188 * emulparams/mipspe.sh: New file. Parameters for mips-pe target.
4189 * emulparams/shpe.sh: New file. Parameters for sh-pe target.
4191 * emultempl/pe.em: Add support for ARM, MIPS and SH DLLs.
4192 (gld_X_find_potential_libraries): New function. Search for
4193 libraries called "*.lib".
4195 * scripttempl/pe.sc: Add .pdata section.
4197 2000-02-23 Richard Henderson <rth@cygnus.com>
4199 * scripttempl/elfd10v.sc: Remove dynamic linking hooks.
4200 Add and use memory regions.
4202 2000-02-23 Linas Vepstas (linas@linas.org)
4204 * emulparams/elf32i370.sh, scripttempl/elfi370.sc: New.
4206 * Makefile.am: Add support for Linux/IBM 370.
4207 * configure.tgt: Likewise.
4209 * Makefile.in: Regenerate.
4211 2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
4213 * ldlang.c (print_input_section, print_data_statement,
4214 print_reloc_statement, print_padding_statement, insert_pad,
4215 size_input_section, lang_check_section_addresses,
4216 lang_size_sections, lang_do_assignments, lang_set_startof,
4217 lang_one_common): Change `opb' to unsigned.
4218 (lang_do_assignments): Also change `size' to unsigned.
4220 2000-02-16 Richard Henderson <rth@cygnus.com>
4222 * scripttempl/elf.sc: Place OTHER_PLT_RELOC_SECTION.
4224 2000-02-16 Timothy Wall <twall@cygnus.com>
4226 * mri.c (mri_draw_tree): Add default LMA region argument to call
4227 to lang_leave_output_section_statement.
4228 * ldlang.h: Update prototypes with LMA region arguments.
4229 * ldlang.c (lang_size_sections): Encapsulate region bounds
4230 checking in os_check_region call.
4231 (os_check_region): New function.
4232 (lang_output_section_statement_lookup): Initialize lma_region.
4233 (lang_leave_output_section_statement): Add LMA region argument.
4234 (lang_leave_overlay): Ditto.
4235 * ldgram.y: Handle LMA region syntax.
4236 * ld.texinfo (Output Section Description): Describe LMA region usage.
4237 * emultempl/armelf.em (gld$place_orphan): Add default value for
4238 lma region in call to lang_leave_output_section_statement.
4239 * emultempl/elf32.em (gld$place_orphan): Add default value for
4240 lma region in call to lang_leave_output_section_statement.
4241 * emultempl/pe.em (gld$place_orphan): Add default value for
4242 lma region in call to lang_leave_output_section_statement.
4245 2000-02-04 Timothy Wall <twall@redhat.com>
4247 * ldlang.c (lang_check_section_addresses): Use bytes instead of
4248 octets when calculating section end addresses.
4250 2000-02-04 Timothy Wall <twall@redhat.com>
4252 * ldlang.c (lang_size_sections): Fix typo in ALIGN_N invocation.
4254 2000-02-03 Timothy Wall <twall@redhat.com>
4256 * ldexp.c (fold_name): Make SIZEOF operator return byte count, not
4258 * ldlang.c (print_input_section, print_data_statement,
4259 print_reloc_statement, print_padding_statement): Print target
4260 address values and section sizes as bytes, not octets.
4261 (insert_pad) Calculate padding size in octets, and adjust "dot"
4263 (size_input_section) Always adjust "dot" by bytes, not octets.
4264 (lang_check_section_addresses, lang_do_assignments) Adjust
4265 "dot" by bytes, not octets. Use the larger of the directive size
4266 or octets_per_byte for the number of octets actually allocated in
4268 (lang_set_startof) Make sure STARTOF returns a target address.
4269 (lang_one_common) Record size changes in octets.
4270 (lang_abs_symbol_at_end_of) Section end symbol's value is
4271 recorded in target bytes.
4272 * ld.texinfo: Updated description of BYTE, SHORT, LONG, etc.
4273 to be clear about behavior when an octet is smaller than one byte.
4275 2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au>
4277 * ldcref.c (output_cref): Don't pass message strings to printf
4281 * ldmisc.c (vfinfo): Same here.
4284 2000-01-23 Alan Modra <alan@spri.levels.unisa.edu.au>
4286 * emultempl/{armcoff.em,armelf.em,armelf_oabi.em,beos.em,
4287 generic.em,gld960.em,gld960c.em,hppaelf.em,linux.em,lnk960.em,
4288 mipsecoff.em,sunos.em,vanilla.em} (ld_emulation_xfer_struct):
4289 Add missing NULL initialisers, and comments.
4291 * testsuite/ld-srec/sr3.cc (__rethrow): New.
4293 2000-01-21 Nick Clifton <nickc@cygnus.com>
4295 * ldlang.c (lang_size_sections): Fix typo in comment.
4297 2000-01-18 H.J. Lu <hjl@gnu.org>
4299 * ldlang.c (lang_size_sections): Also update the current
4300 address of a region if the SEC_NEVER_LOAD bit is not set.
4302 2000-01-10 Philip Blundell <pb@futuretv.com>
4304 * configure.tgt (arm*-*-conix*): New target.
4306 2000-01-07 Nick Clifton <nickc@cygnus.com>
4308 * ld.texinfo (Options): Remind users to preceed linker command
4309 line switches with -Wl, (or whatever is appropriate) if it is
4310 being invoked by a comnpiler driver program.
4311 Fix description of the behaviour of the -n command line switch.
4313 2000-01-05 Catherine Moore <clm@cygnus.com>
4315 * ld.h (wildcard_spec): Change exclude_name to exclude_name_list.
4317 * ld.texinfo (EXCLUDE_FILE): Update documentation.
4318 * ldgram.y (wildcard_spec): Support a list of excluded_files.
4319 (exclude_name_list): New.
4320 ldlang.c (walk_wild_section): Support list of excluded files.
4321 (print_wild_statement): Likewise.
4322 (lang_add_wild): Likewise.
4323 * ldlang.h (lang_wild_statement_type): Likewise.
4324 * scripttempl/elf.sc (OTHER_EXCLUDE_FILES): Support.
4326 2000-01-04 Mumit Khan <khan@xraylith.wisc.edu>
4328 * pe-dll.c (pe_dll_warn_dup_exports): New variable.
4329 (process_def_file): Use.
4330 (pe_dll_compat_implib): New variable.
4333 * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
4334 pe_dll_compat_implib.
4336 * emultempl/pe.em (longopts): Add warn-duplicate-exports and
4337 compat-implib options.
4338 (gld_${EMULATION_NAME}_list_options): List new options.
4339 (gld_${EMULATION_NAME}_parse_args): Handle.
4341 * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
4344 * deffilep.y (opt_name): Allow "." in name.
4346 For older changes see ChangeLog-9899
4352 version-control: never