1 2001-09-30 Hans-Peter Nilsson <hp@bitrange.com>
3 * Makefile.am: Update dependencies with "make dep-am".
4 * Makefile.in: Regenerate.
6 2001-09-29 John Reiser <jreiser@BitWagon.com>
8 * ldlang.c (lang_common): Conditionally inhibit Common allocation.
9 * lexsup.c: Add --no-define-common commandline option.
10 * ldgram.y: Add INHIBIT_COMMON_ALLOCATION script command.
12 * ld.h: Add command_line.inhibit_common_definition.
13 * ldmain.c (main): Initialize.
14 * ld.texinfo: Document.
16 2001-09-26 Alan Modra <amodra@bigpond.net.au>
18 * ldmisc.c (USE_STDARG): Remove.
19 (info_msg): Define using VPARAMS, VA_OPEN, VA_FIXEDARG, VA_CLOSE.
24 * ldmisc.h: Remove #ifdef ANSI_PROTOTYPES and non-ansi
25 declarations. Update copyright.
27 2001-09-24 Charles Wilson <cwilson@ece.gatech.edu>
29 * pe-dll.c: Remove obsoleted declaration of
30 pe_get_data_import_dll_name.
31 (pe_create_import_fixup): Fix thinko.
33 * ld.texinfo(enable-auto-import): Clarify the explanation.
35 2001-09-24 Nick Clifton <nickc@cambridge.redhat.com>
37 * pe-dll.c (pe_create_import_fixup): Revert previous patch.
38 * emultemp/pe.em (pe_data_import_dll): Move definition outside of
39 DLL_SUPPORT controlled code.
41 2001-09-24 Charles Wilson <cwilson@ece.gatech.edu>
43 * emultempl/pe.em(pe_data_import_dll): Make static.
44 (pe_get_data_import_dll_name): New accessor function.
45 * pe-dll.c(pe_create_import_fixup): call
46 pe_get_data_import_dll_name() from pe.em, instead of
47 directly accessing pe_data_import_dll variable from pe.em.
49 2001-09-18 Bruno Haible <haible@clisp.cons.org>
51 * deffilep.y: Include "safe-ctype.h" instead of <ctype.h>.
52 (def_file_add_directive): Use ISSPACE instead of isspace.
53 (def_lex): Use ISDIGIT/ISXDIGIT/ISALPHA/ISALNUM instead of
54 isdigit/isxdigit/isalpha/isalnum.
55 * emultempl/aix.em: Include "safe-ctype.h" instead of <ctype.h>.
56 (gld${EMULATION_NAME}_read_file): Use ISSPACE instead of isspace.
57 * emultempl/elf32.em: Include "safe-ctype.h" instead of <ctype.h>.
58 (gld${EMULATION_NAME}_place_orphan): Use ISALNUM instead of
60 * emultempl/gld960c.em: Include "safe-ctype.h" instead of <ctype.h>.
61 (gld960_set_output_arch): Use ISUPPER/TOLOWER instead of
63 * emultempl/sunos.em: Include "safe-ctype.h" instead of <ctype.h>.
64 (gld${EMULATION_NAME}_search_dir): Use ISDIGIT instead of isdigit.
65 * ldctor.c: Include "safe-ctype.h" instead of <ctype.h>.
66 (ctor_prio): Use ISDIGIT instead of isdigit.
67 * ldfile.c: Include "safe-ctype.h" instead of <ctype.h>.
68 (ldfile_open_file_search): Use ISALPHA instead of isalpha.
69 (ldfile_add_arch): Use ISUPPER/TOLOWER instead of
71 * ldlang.c: Include "safe-ctype.h" instead of <ctype.h>.
72 (stricpy): Use TOLOWER instead of isupper/tolower.
73 (lang_leave_overlay_section): Use ISALNUM instead of isalnum.
74 * ldlex.l: Include "safe-ctype.h" instead of <ctype.h>.
75 (lex_warn_invalid): Use ISPRINT instead of isprint.
76 * ldmain.c: Include "safe-ctype.h" instead of <ctype.h>.
77 (main): For gettext, also set the LC_CTYPE locate facet.
78 (add_keepsyms_file): Use ISSPACE instead of isspace.
79 * lexsup.c: Include "safe-ctype.h" instead of <ctype.h>.
80 (is_num, parse_args): Use ISDIGIT instead of isdigit.
81 * mpw-elfmips.c: Include "safe-ctype.h" instead of <ctype.h>.
82 (gldelf32ebmip_place_orphan): Use ISALNUM instead of isalnum.
83 * mpw-eppcmac.c: Include "safe-ctype.h" instead of <ctype.h>.
84 (gldppcmacos_read_file): Use ISSPACE instead of isspace.
85 * pe-dll.c: Include "safe-ctype.h" instead of <ctype.h>.
86 (quoteput): Use ISSPACE instead of isspace.
87 (pe_dll_generate_implib, pe_process_import_defs): Use ISALNUM
90 2001-09-18 Alan Modra <amodra@bigpond.net.au>
92 * deffilep.y (def_stash_module): Constify "name" param.
94 * pe-dll.c: Replace CONST with const throughout.
95 (quick_symbol): Constify "n1", "n2", "n3" params.
96 (make_singleton_name_thunk): Constify "import" param. Make
97 "buffer_len" a size_t.
98 (make_import_fixup_entry): Constify "name", "fixup_name",
100 (pe_get16): Cast args of bfd_seek. Replace bfd_read with bfd_bread.
101 (pe_get32): Likewise.
102 (pe_implied_import_dll): Likewise.
104 * emultempl/beos.em (sort_by_file_name): Constify "ra", "rb".
105 (sort_by_section_name): Likewise.
107 * emultempl/pe.em: Move defines for arm_epoc_pe before bfd.h included.
108 (make_import_fixup): Cast printf arg, rel->address to long rather
110 (gld_${EMULATION_NAME}_after_open): Don't compare NULL against int.
112 2001-09-15 Alan Modra <amodra@bigpond.net.au>
114 * ldmain.c (main): Rename BufferSize to ld_bufsz because HPUX
115 defines BufferSize. Increase buffer size by one.
117 2001-09-14 Ralf Habacker <Ralf.Habacker@freenet.de>
119 * pe-dll.c (pe_walk_relocs_of_symbol): Fix memory leak.
121 2001-09-14 Kevin Lo <kevlo@openbsd.org>
123 * configure.tgt: Add arm-openbsd target.
125 2001-09-12 H.J. Lu <hjl@gnu.org>
127 * Makefile.am (ALL_EMULATIONS): Move eelf64ppc.o and
129 (ALL_64_EMULATIONS): Here.
130 * Makefile.in: Regenerated.
132 2001-09-12 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
134 * emultempl/pe.em(make_import_fixup): change signature to
135 take asection as well as arelec; we need this for proper
136 error reporting. Only call pe_create_import_fixup() if
137 there is no attempt to add a constant addend to the reloc;
138 otherwise, report error condition.
139 * pe-dll.c(pe_walk_relocs_of_symbol): change signature,
140 since final argument is a pointer to make_import_fixup().
141 Change call to cb() to match make_import_fixup() signature.
142 (make_import_fixup_mark): make buffer_len unsigned.
143 * pe-dll.h: change signature of pe_walk_relocs_of_symbol.
145 2001-09-12 Charles Wilson <cwilson@ece.gatech.edu>
147 * ld.texinfo: add verbose documentation for auto-import
148 direct-addressing workaround, to compliment the terse
151 2001-09-12 Andrew MacLeod <amacleod@redhat.com>
153 * scripttempl/v850.sc: Add gcc_except_table sections.
155 Fri Sep 7 11:34:24 2001 Jeffrey A Law (law@cygnus.com)
157 * emulparams/h8300helf.sh: Move stack to a much higher memory address.
158 * emulparams/h8300self.sh: Similarly.
160 2001-09-05 Danny Smith <dannysmith@users.souceforge.net>
162 * ld.texinfo (Options, --stack): Correct default value for stack
165 2001-09-05 Tom Rix <trix@redhat.com>
167 * emultempl/aix.em : Handle import file XMC_XO and syscall symbols.
169 2001-09-03 Andreas Jaeger <aj@suse.de>
171 * emultempl/beos.em: Declare prototypes for comparions functions,
174 2001-09-02 Andreas Jaeger <aj@suse.de>
176 * emultempl/aix.em: Add missing prototype.
177 * emultempl/lnk960.em: Likewise.
178 * emultempl/vanilla.em: Likewise.
179 * emultempl/armcoff.em: Likewise.
180 * emultempl/armelf_oabi.em: Likewise.
181 * emultempl/beos.em: Likewise.
182 * emultempl/gld960c.em: Likewise.
183 * emultempl/gld960.em: Likewise.
185 * emulparams/elf64alpha.sh (PARSE_AND_LIST_PROLOGUE): Add parameter
186 for prototype declaration.
188 2001-08-31 Eric Christopher <echristo@redhat.com>
189 Jason Eckhardt <jle@redhat.com>
191 * ldmain.c (get_emulation): Add support for -mips32 and -mips64.
193 2001-08-31 Andreas Jaeger <aj@suse.de>
195 * emultempl/pe.em: Add missing prototypes.
196 (gld_${EMULATION_NAME}_after_open): Remove extra args to
197 pe_find_data_imports.
198 (pr_sym): Add unused attribute.
200 2001-08-29 Joel Sherrill <joel@OARcorp.com>
202 * configure.tgt (i[3456]86-*-rtems*, m68*-*-rtems*): Change
203 default from coff to elf.
205 2001-08-29 Jeff Law <law@redhat.com>
207 * emulparams/h8300helf.sh: Resync with h8300elf.sh. Update
209 * emulparams/h8300self.sh: Similarly.
211 Wed Aug 28 13:37:20 2001 J"orn Rennecke <amylaar@redhat.com>
213 * Makefile.am (ALL_EMULATIONS): Add eh8300elf.o, eh8300elf.o and
215 (eh8300elf.c, eh8300helf.c, eh8300self.c): New targets.
216 * configure.tgt (h8300-*-elf*): New case.
217 * emulparams/h8300elf.sh, emulparams/h8300helf.sh: New files.
218 * emulparams/h8300self.sh: New file.
219 * Makefile.in: Regenerated.
221 2001-08-28 Nick Clifton <nickc@cambridge.redhat.com>
223 * ldmain.c (main): Rename BSIZE to BufferSize to avoid collision
226 2001-08-27 Linus Nordberg <linus@swox.com>
227 Alan Modra <amodra@bigpond.net.au>
229 * Makefile.am (ALL_EMULATIONS): Add eelf64ppc.o and eelf64lppc.o.
230 (eelf64ppc.c, eelf64lppc.c): Add make targets.
232 * Makefile.in: Regenerate.
233 * configure.tgt: Add powerpc64 support. Move pdp11, pjl, pj
234 entries to correct alphabetical position.
235 * emulparams/elf64ppc.sh: New.
236 * emulparams/elf64lppc.sh: New.
238 2001-08-27 Nick Clifton <nickc@cambridge.redhat.com>
240 * ldmain.c (main): Declare BSIZE as static.
242 2001-08-23 Jakub Jelinek <jakub@redhat.com>
244 * emultempl/elf32.em (place_orphan): Place orphan .rel* sections
245 into .rel.dyn resp. .rela.dyn if combreloc.
246 (get_script): If .x linker script is equal to .xn, only put it
247 once into the binary.
248 Add .xc and .xsc scripts.
249 (parse_args): Handle -z combreloc and -z nocombreloc.
250 * scripttempl/elf.sc (.rela.sbss): Fix a typo.
251 For .xc and .xsc scripts put all .rel* or .rela* input sections
252 but .rel*.plt and PLT-like sections into .rel.dyn resp. .rela.dyn.
253 * genscripts.sh (GENERATE_COMBRELOC_SCRIPT): Set if SCRIPT_NAME
255 Strip trailing whitespace from script.
256 Generate .xc and .xsc scripts if requested.
257 * ldmain.c (main): Initialize link_info.combreloc and
258 link_info.spare_dynamic_tags.
259 * lexsup.c (OPTION_SPARE_DYNAMIC_TAGS): Define.
260 (ld_options): Add --spare-dynamic-tags option.
261 (parse_args): Likewise.
262 * ld.texinfo: Document -z combreloc and -z nocombreloc.
263 * ldint.texinfo: Document .xc and .xsc linker scripts.
264 * NEWS: Add notes about -z combreloc and SHF_MERGE.
266 2001-08-22 H.J. Lu <hjl@gnu.org>
268 * emulparams/elf32fr30.sh: Add a newline.
270 2001-08-21 Andreas Jaeger <aj@suse.de>
272 * deffilep.y: Add missing prototypes.
273 * pe-dll.c: Likewise.
275 2001-08-20 Alan Modra <amodra@bigpond.net.au>
277 * ldlang.c (insert_pad): Fix typos in last patch.
279 * ldlang.c: When traversing lang_statement_union_type lists,
280 consistently use "header.next" rather than "next".
281 * mpw-eppcmac.c: Likewise.
282 * emultempl/beos.em: Likewise.
283 * emultempl/hppaelf.em: Likewise.
284 * emultempl/pe.em: Likewise.
285 * ldlang.h (union lang_statement_union): Remove "next" field.
287 * ldlang.c (insert_pad): Use offsetof macro.
288 (lang_size_sections): Always neuter padding statements.
289 * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete.
291 * pe-dll.c (pe_dll_fill_sections): Correct type of "relax" param
292 passed to lang_size_sections.
293 (pe_exe_fill_sections): Likewise.
294 * emultempl/pe.em (output_prev_sec_find): Copied from elf32.em.
295 (gld_${EMULATION_NAME}_place_orphan): Merge from elf32.em.
297 2001-08-18 Alan Modra <amodra@bigpond.net.au>
299 * emultempl/aix.em: Formatting fixes.
301 2001-08-18 Alan Modra <amodra@bigpond.net.au>
303 * ldlang.c (insert_pad): Make use of an existing pad statement if
304 available. Move code calculating alignment, adjusting section
305 alignment power, and adjusting dot to ..
306 (size_input_section): .. here. Remove unused relax param.
307 (lang_size_sections): Change boolean `relax' param to boolean *.
308 Adjust call to size_input_section. Make use of insert_pad to
309 place pad after the assignment statement. If relaxing, zap
311 (reset_memory_regions): Reset output_bfd section sizes too.
312 (relax_again): Move to..
313 (lang_process): ..here. Adjust call to lang_size_sections, and
314 remove duplicated code.
315 * ldlang.h (lang_size_sections): Change `relax' param to boolean *.
317 2001-08-17 Alan Modra <amodra@bigpond.net.au>
319 * ld.texinfo: Document that fill values now use the four least
321 * emulparams/elf32fr30.sh (NOP): Update.
322 * emulparams/elf32mcore.sh: Likewise.
323 * emulparams/elf64_s390.sh: Likewise.
324 * emulparams/elf_i386.sh: Likewise.
325 * emulparams/elf_i386_be.sh: Likewise.
326 * emulparams/elf_i386_chaos.sh: Likewise.
327 * emulparams/elf_i386_ldso.sh: Likewise.
328 * emulparams/elf_s390.sh: Likewise.
329 * emulparams/elf_x86_64.sh: Likewise.
330 * emulparams/i386moss.sh: Likewise.
331 * emulparams/i386nw.sh: Likewise.
332 * emulparams/m68kelf.sh: Likewise.
333 * scripttempl/elf.sc: Update NOP comment.
334 * scripttempl/elfi370.sc: Likewise.
335 * scripttempl/elfm68hc11.sc: Likewise.
336 * scripttempl/elfm68hc12.sc: Likewise.
337 * scripttempl/nw.sc: Likewise.
339 2001-08-15 Tom Rix <trix@redhat.com>
341 * ldgram.y (saved_script_handle): Initialize to NULL.
342 * ldmain.c (main): Change check on saved_script_handle.
344 2001-08-14 Alan Modra <amodra@bigpond.net.au>
346 * emultempl/elf32.em: Formatting fixes.
347 (output_prev_sec_find): Test for bfd_ind_section too; do so by
348 looking at sec->owner.
349 (output_rel_find): Move function inside LDEMUL_PLACE_ORPHAN test.
350 (gld${EMULATION_NAME}_place_orphan): Add a few comments. Remove
351 unused code, and reorganize orphan section placement code.
353 * ldlang.c (wild_doit): Rename to lang_add_section.
354 * ldlang.h: Here too.
355 * mpw-elfmips.c: And here.
356 * emultempl/beos.em: And here.
357 * emultempl/elf32.em: And here.
358 * emultempl/hppaelf.em: And here.
359 * emultempl/pe.em: And here.
361 2001-08-13 Richard Henderson <rth@redhat.com>
363 * emultempl/needrelax.em: New file.
364 * emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Reference it.
365 * Makefile.am (eelf64_ia64.c): Depend on it.
366 * Makefile.in: Rebuild.
368 2001-08-13 Alan Modra <amodra@bigpond.net.au>
370 * emultempl/elf32.em: For SEC_EXCLUDE sections, ensure that
371 output_section is set non-NULL.
373 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Return
374 `true' for SEC_EXCLUDE sections so that the generic code doesn't
375 needlessly create an output_section_statement. Treat a correctly
376 named output_section_statement with NULL bfd_section as compatible.
378 2001-08-13 Hans-Peter Nilsson <hp@bitrange.com>
380 * emultempl/generic.em: Support EXTRA_EM_FILE.
381 (ld_${EMULATION_NAME}_emulation): Support emulation parameters
382 LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
383 LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
384 LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
385 LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
386 LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
387 LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
388 LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
389 LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
390 LDEMUL_FIND_POTENTIAL_LIBRARIES.
392 2001-08-12 Richard Henderson <rth@redhat.com>
394 * scripttempl/elf.sc, scripttempl/elfd30v.sc,
395 scripttempl/elfm68hc11.sc, scripttempl/elfm68hc12.sc,
396 scripttempl/v850.sc: Keep .jcr data.
398 2001-08-12 H.J. Lu <hjl@gnu.org>
399 Andrew Haley <aph@cambridge.redhat.com>
400 Nick Clifton <nickc@redhat.com>
402 * ldgram.y (had_script): Change name to saved_script_handle.
403 Change type to file handle.
404 * ld.h (had_script): Rename and retype.
405 * ldfile.c (ldfile_open_command_file): Save the file handle
406 used in saved_script_handle.
407 * lexsup.c (parse_args): Do not allow -c option to alter
409 * ldmain.c (main): Print out the linker script used if
410 --verbose is given. Check saved_script_handle to obtain the
411 external linker script used, or if NULL, dump the builtin
413 * ld.texinfo: Document that --verbose now dumps the linker
414 script used, regardless of whether it was an internal or an
417 2001-08-10 Andreas Jaeger <aj@suse.de>
419 * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
421 * configure: Regenerate.
423 2001-08-09 Alan Modra <amodra@bigpond.net.au>
425 * emultempl/elf32.em (output_prev_sec_find): Add missing prototype.
427 * scripttempl/elf.sc: Move non-text .dynamic section before
428 .plt/.got/.sdata* group.
429 (OTHER_GOT_SECTIONS): Move to immediately after .got.
430 (OTHER_SDATA_SECTIONS): Add.
431 * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than
433 * emulparams/crislinux.sh: Likewise.
434 * emulparams/elf32b4300.sh: Likewise.
435 * emulparams/elf32bmip.sh: Likewise.
436 * emulparams/elf32bmipn32.sh: Likewise.
437 * emulparams/elf32bsmip.sh: Likewise.
438 * emulparams/elf32btsmip.sh: Likewise.
439 * emulparams/elf32ebmip.sh: Likewise.
440 * emulparams/elf32elmip.sh: Likewise.
441 * emulparams/elf32l4300.sh: Likewise.
442 * emulparams/elf32lmip.sh: Likewise.
443 * emulparams/elf32lsmip.sh: Likewise.
444 * emulparams/elf32ltsmip.sh: Likewise.
445 * emulparams/elf64bmip.sh: Likewise.
446 * emulparams/elf64btsmip.sh: Likewise.
447 * emulparams/elf64ltsmip.sh: Likewise.
449 2001-08-08 Alan Modra <amodra@bigpond.net.au>
451 * genscripts.sh: Source the emulparams script before each output
452 script is generated so that variables like `RELOCATING' may affect
453 variables defined in the emulparams script.
455 2001-08-04 Alan Modra <amodra@bigpond.net.au>
457 * emultempl/aix.em: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this
460 * emultempl/beos.em (sort_sections): Modify for 2001-08-03 change,
461 ie. iterate over wild_statement.section_list.
462 (gld${EMULATION_NAME}_place_orphan): Likewise.
464 2001-08-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
466 * scripttempl/elfm68hc12.sc (FINISH_CODE, FINISH_RELOC): New to handle
467 .fini[0-4] sections used by _exit
468 (CTOR, DTOR): Export ctor/dtor symbols; move them to ROM.
469 (*.text,*.data,*.bss): Take into account .text.*, .data.*, .bss.*.
470 * scripttempl/elfm68hc11.sc: Likewise.
472 2001-08-03 H.J. Lu <hjl@gnu.org>
474 * emultempl/beos.em (init): Add the missing initialization.
476 2001-08-03 Alan Modra <amodra@bigpond.net.au>
478 * ld.texinfo (Input Section Basics): Clarify ordering of output
480 * ldlang.c (callback_t): Add wildcard_list param.
481 (walk_wild_section): Remove "section" param. Rewrite for
482 lang_wild_statement_type change. Remove unique_section_p test.
483 (walk_wild_file): Remove "section" param.
484 (walk_wild): Remove "section" and "file" params.
485 (lang_gc_wild): Likewise.
486 (wild): Likewise. Modify for lang_wild_statement_type change.
487 (wild_sort): Likewise. Add "sec" param.
488 (gc_section_callback): Likewise.
489 (output_section_callback): Likewise. Do unique_section_p test.
490 (map_input_to_output_sections): Modify call to wild.
491 (lang_gc_sections_1): Likewise.
492 (print_wild_statement): Modify for lang_wild_statement_type
494 (lang_add_wild): Replace filename, filenames_sorted param with
495 filespec. Replace section_name, sections_sorted,
496 exclude_filename_list with section_list.
497 * ldlang.h (lang_add_wild): Here too.
498 (lang_wild_statement_type): Replace section_name, sections_sorted,
499 and exclude_filename_list with section_list.
500 * ldgram.y (current_file): Delete.
501 (%union): Add wildcard_list.
502 (file_NAME_list): Set type to wildcard_list. Build a linked list
503 rather than calling lang_add_wild for each entry.
504 (input_section_spec_no_keep): Call lang_add_wild here instead.
505 * ld.h (struct wildcard_list): Declare.
506 * mri.c (mri_draw_tree): Modify to suit new lang_add_wild.
508 2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
510 * ldmain.c (main): initialize link_info.pei386_auto_import
511 * pe-dll.c: new tables for auto-export filtering
512 (auto_export): change API, pass abfd for contextual filtering.
513 Loop thru tables of excluded symbols instead of comparing
516 2001-08-02 Paul Sokolovsky <paul.sokolovsky@technologist.com>
518 * pe-dll.c: new variable pe_dll_enable_extra_debug. New
519 static variable current_sec (static struct sec *). Add
520 forward declaration for add_bfd_to_link.
521 (process_def_file): Don't export undefined symbols. Do not
522 export symbols starting with "_imp__". Call auto_export()
524 (pe_walk_relocs_of_symbol): New function.
525 (generate_reloc): add optional extra debugging
526 (pe_dll_generate_def_file): eliminate extraneous initial blank
528 (make_one): enlarge symtab to make room for __nm__ symbols
529 (DATA auto-import support).
530 (make_singleton_name_thunk): New function.
531 (make_import_fixup_mark): New function.
532 (make_import_fixup_entry): New function.
533 (pe_create_import_fixup): New function.
534 (add_bfd_to_link): Specify that 'name' argument is a CONST
536 * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
537 declare new functions pe_walk_relocs_of_symbol and
538 pe_create_import_fixup.
539 * emultempl/pe.em: add new options --enable-auto-import,
540 --disable-auto-import, and --enable-extra-pe-debug.
541 (make_import_fixup): New function.
542 (pe_find_data_imports): New function.
543 (pr_sym): New function.
544 (gld_${EMULATION_NAME}_after_open): Add optional extra pe
545 debugging. Call pe_find_data_imports. Mark .idata as DATA, not
548 2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
550 * ld.texinfo: add additional documentation for
551 --export-all-symbols. Document --out-implib,
552 --enable-auto-image-base, --disable-auto-image-base,
553 --dll-search-prefix, --enable-auto-import, and
554 --disable-auto-import.
555 * ldint.texinfo: Add detailed documentation on auto-import
558 2001-07-30 Nick Clifton <nickc@cambridge.redhat.com>
560 * ld.texinfo (Simple Assignments): Fix computation in SECTIONS
563 2001-07-24 Alan Modra <amodra@bigpond.net.au>
565 * Makefile.am: Update dependencies with "make dep-am".
566 * Makefile.in: Regenerate
568 2001-07-23 Alan Modra <amodra@bigpond.net.au>
570 * ldcref.c (check_section_sym_xref): New function.
571 (check_nocrossrefs): Call it.
572 (check_nocrossref): Interate over h->refs here instead of..
573 (check_refs): ..here. Pass in the symbol name, section, and bfd
574 rather than hash_entry pointers.
575 (struct check_refs_info): Keep symbol name rather than hash entry.
577 (check_reloc_refs): Tweak for above changes in check_refs_info.
578 Only report references to section syms when symname is NULL to
579 prevent duplicate messages for the same reloc.
581 2001-07-19 Nick Clifton <nickc@cambridge.redhat.com>
583 * ldexp.c (exp_print_tree): Use stderr if config.map_file is not
584 available. Do not print NULL trees.
585 (exp_print_token): Print unknown tokens with values > 126 as
586 decimal values not ASCII characters.
588 * ldlang.c (lang_leave_overlay): If a region is specified assign
589 it to all sections inside the overlay unless they have been
590 assigned to the own, non-default, memory region.
592 * README: Add header for consistency with other README files.
594 2001-07-14 H.J. Lu <hjl@gnu.org>
596 * emultempl/elf32.em (output_prev_sec_find): Never return
597 bfd_abs_section_ptr, bfd_com_section_ptr nor
600 2001-07-14 Nick Clifton <nickc@cambridge.redhat.com>
602 * Makefile.am (em32relf.c): Change dependency from generic.em to
604 * Makefile.in: Regenerate.
606 2001-07-14 matthew green <mrg@eterna.com.au>
608 * configure.tgt (i386-*-netbsdelf*): New target.
609 (i386-*-netbsd*): Set targ_extra_emuls to `elf_i386'
611 2001-07-13 Jakub Jelinek <jakub@redhat.com>
613 * emultempl/elf32.em (output_prev_sec_find): New.
614 (place_orphan): Use it.
616 2001-07-11 H.J. Lu <hjl@gnu.org>
618 * ldmain.c (main): Fix typos in the last change.
620 2001-07-11 Jakub Jelinek <jakub@redhat.com>
622 * ldmain.c (main): Disallow -F and -f without -shared.
624 2001-07-11 Nick Clifton <nickc@cambridge.redhat.com>
626 * emultempl/pe.em (after_open): Check for the output_bfd not
627 having any coff_data structure allocated to it.
629 2001-07-09 David O'Brien <obrien@FreeBSD.org>
631 * emultempl/elf32.em: Do not assuming that contents of the buffer
632 returned from basename function will remain unchanged accross other
635 2001-07-03 H.J. Lu <hjl@gnu.org>
637 * scripttempl/elf.sc (DYNAMIC_PAD): Revert the change made on
638 2001-07-03. It creates dynamic entries even for static binaries.
640 2001-07-03 Jakub Jelinek <jakub@redhat.com>
642 * scripttempl/elf.sc (DYNAMIC_PAD): New variable.
643 (DYNAMIC): Use it to reserve few dynamic entries for
646 2001-06-27 Alan Modra <amodra@bigpond.net.au>
648 * emulparams/hppa64linux.sh: New file.
649 * configure.tgt: hppa*64*-*-linux* uses hppa64linux.sh
650 * Makefile.am (ALL_64_EMULATIONS): Add ehppa64linux.o
651 (ehppa64linux.c): Add rule to make it.
653 * Makefile.in: Regenerate.
655 2001-06-21 Hans-Peter Nilsson <hp@axis.com>
657 * ld.texinfo (Options, -r): Mention restrictions when using
658 different object formats.
660 2001-06-19 Hans-Peter Nilsson <hp@axis.com>
662 * ldlang.c (lang_check): Emit fatal error if relocatable link
663 between different object flavours with relocations in input.
665 2001-06-19 H.J. Lu <hjl@gnu.org>
667 * ld.texinfo (-E, --export-dynamic): Mention --version-script.
668 (--version-script): Mention the language support.
670 2001-06-19 H.J. Lu <hjl@gnu.org>
672 * ldlang.c (lang_check): Revert the change mode on 2001-06-15.
674 2001-06-18 H.J. Lu <hjl@gnu.org>
676 * Makefile.am (ld.1): Remove the prefix `$(srcdir)/'.
677 (diststuff): Add $(MANS).
678 * Makefile.in: Regenerated.
682 2001-06-18 Hans-Peter Nilsson <hp@axis.com>
684 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
685 Update for API change in bfd_elf${ELFSIZE}_size_dynamic_sections.
686 * mpw-elfmips.c (gldelf32ebmip_before_allocation): Ditto.
687 * ld.h (args_type): Remove member export_dynamic. All users
688 changed to use struct bfd_link_info member.
690 * Makefile.am (ecriself.c, ed10velf.c, ei386moss.c): Depend on
691 $(srcdir)/emultempl/elf32.em, not $(srcdir)/emultempl/generic.em.
692 * Makefile.in: Regenerate.
694 2001-06-18 H.J. Lu <hjl@gnu.org>
696 * ldlang.c (init_os): Add the newline to the einfo call.
697 (lang_check): Likewise.
698 (lang_do_version_exports_section): Likewise.
700 2001-06-15 H.J. Lu <hjl@gnu.org>
702 * lexsup.c (parse_args); Save optind to report unrecognized
705 2001-06-15 Hans-Peter Nilsson <hp@axis.com>
707 * ldlang.c (lang_check): Emit fatal error if relocatable link
708 between different object flavours.
710 * lexsup.c (parse_args) <case OPTION_EXPORT_DYNAMIC, case 'E'>:
711 Set new link_info member export_dynamic.
712 * ldmain.c (main): Initialize new link_info member export_dynamic.
714 2001-06-12 Nick Clifton <nickc@cambridge.redhat.com>
716 * ldlang.c (walk_wild): Only call walk_wild_file if
717 lookup_name returns something.
718 (lookup_name): If load_symbols fails, return NULL.
719 (load_symbols): Change to a boolean function.
720 (open_input_bfds): If load_symbols fails then do not make the
723 2001-06-08 Alan Modra <amodra@bigpond.net.au>
725 * ldlang.c (record_bfd_errors): Remove.
727 * emultempl/aix.em: Fix copyright dates.
729 2001-06-07 Andreas Jaeger <aj@suse.de>
731 * elf_x86_64.sh (NONPAGED_TEXT_START_ADDR): Increase.
732 (TEXT_START_ADDR): Likewise.
734 2001-06-06 Martin Schwidefsky <schwidefsky@de.ibm.com>
736 * configure.host: Set HOSTING_CRT0/HOSTING_LIBS correctly for s/390.
738 2001-06-05 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
740 * emultempl/pe.em (init): Reduce default stack reserve to 0x200000.
742 2001-05-31 H.J. Lu <hjl@gnu.org>
744 * ldlang.c (open_input_bfds): Don't change the bfd error
745 handler whilst loading symbols.
747 2001-05-28 Nick Clifton <nickc@cambridge.redhat.com>
749 * configure.tgt: Remove i370-mvs architecture, it is not currently
752 2001-05-25 H.J. Lu <hjl@gnu.org>
754 * emulparams/ppcmacos.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
755 like emulparams/aixppc.sh.
757 2001-05-25 H.J. Lu <hjl@gnu.org>
759 * emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Move
760 setting of output_filename after bfd_scan_arch.
761 * emultempl/pe.em: Likewise.
763 2001-05-25 H.J. Lu <hjl@gnu.org>
765 * emulparams/aixrs6.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
766 like emulparams/aixppc.sh.
768 * emultempl/aix.em (sc): Use ${srcdir}/emultempl/ostring.sed
769 instead of ${srcdir}/emultempl/stringify.sed.
771 2001-05-25 Timothy Wall <twall@oculustech.com>
773 * emulparams/elf64_aix.sh: Change settings to match IBM linker
776 2001-05-25 Alan Modra <amodra@one.net.au>
778 * configure.host: Replace linuxoldld with linux*oldld.
779 * configure.tgt: Likewise.
781 2001-05-24 H.J. Lu <hjl@gnu.org>
783 * emultempl/stringify.sed: Removed again.
785 2001-05-24 H.J. Lu <hjl@gnu.org>
787 * emultempl/aix.em (OUTPUT_ARCH): Defined.
788 (gld${EMULATION_NAME}_before_parse): Initialize
789 ldfile_output_architecture, ldfile_output_machine and
790 ldfile_output_machine_name from ${OUTPUT_ARCH} if possible.
791 * emultempl/beos.em: Likewise.
792 * emultempl/elf32.em: Likewise.
793 * emultempl/linux.em: Likewise.
794 * emultempl/mipsecoff.em: Likewise.
795 * emultempl/pe.em: Likewise.
796 * emultempl/sunos.em: Likewise.
798 2001-05-24 Tom Rix <trix@redhat.com>
800 * emultempl/aix.em : (gld${EMULATION_NAME}_read_file)
801 udate import file format.
802 (change_symbol_mode) New, same
803 (is_syscall) New, same
804 * emulparams/aixppc.sh : add SYSCALL_MASK and SYMBOL_MODE_MASK
805 * emulparams/aixppc64.sh : same
806 * emulparams/aixrs6.sh : same
807 * emulparams/ppcmacos.sh : same
808 * emultempl/aix.em : use strtoull to parse options
809 * Makefile.am : add eaixppc64 emulation for xcoff64
811 * configure.tgt : same
813 * scripttempl/aix.sc : default text section offset to 0x10000000
814 default data section offset to 0x20000000
815 add .sv3264 and .sv64 pseudo sections
816 loader and debug sections use the currect section offset.
818 * emultempl/aix.em : Add xcoff64 support
819 Add -binitfini support
820 (gld${EMULATION_NAME}_before_parse) -binitfini
821 (gld${EMULATION_NAME}_parse_args) same
822 (gld${EMULATION_NAME}_before_allocation) format change for special
825 * emulparams/aixppc64.sh : New file for xcoff64 support
827 2001-05-23 Alexandre Oliva <aoliva@redhat.com>
829 * emultempl/elf32.em (ELF_INTERPRETER_SET_DEFAULT): Use this new
830 variable to avoid non-portable shell construct.
832 2001-05-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
834 * ldmain.c (get_emulation): Add -mips5 command line argument.
836 2001-05-22 Alexandre Oliva <aoliva@redhat.com>
838 * emulparams/elf_i386_ldso.sh: New, copied from elf_i386.sh.
839 (ELF_INTERPRETER_NAME): Define it.
840 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
842 * configure.tgt (targ_emul, targ_extra_emuls)
843 [i[3456]86-*-solaris2*, i[3456]86-*-solaris*]: Use elf_i386_ldso
844 as primary, elf_i386 as extra.
845 * Makefile.am (ALL_EMULATIONS): Added eelf_i386_ldso.o.
846 (eelf_i386_ldso.c): New rule.
847 * Makefile.in: Rebuilt.
849 2001-05-22 Nick Clifton <nickc@redhat.com>
851 * lexsup.c (ld_options): Allow -I to be an alias for
852 --dynamic-linker. This is for Solaris compatability.
853 * ld.texinfo: Document that -I can be used.
856 2001-05-16 Alan Modra <amodra@one.net.au>
858 * ldlang.c (wild_doit): Use linker_has_input to reliably determine
859 whether an input section is the first one assigned to an output
861 Assorted formatting fixes.
863 2001-05-14 DJ Delorie <dj@delorie.com>
865 * Makefile.am (ld.dvi): Search bfd/doc for texinfo files.
866 * Makefile.in: Ditto.
868 2001-05-11 Jakub Jelinek <jakub@redhat.com>
870 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
871 .gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
873 * emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
875 2001-05-11 Jakub Jelinek <jakub@redhat.com>
877 * ldlang.c (lang_process): Call bfd_merge_sections.
879 2001-05-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
881 * ldgram.y: Fix typo.
883 2001-05-03 H.J. Lu <hjl@gnu.org>
885 * emultempl/elf32.em: Include "libiberty.h".
886 (gld${EMULATION_NAME}_vercheck): Call basename () to get the
887 basename of the bfd filename.
888 (gld${EMULATION_NAME}_stat_needed): Likewise.
889 (gld${EMULATION_NAME}_try_needed): Likewise.
890 (gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
892 2001-05-02 H.J. Lu <hjl@gnu.org>
894 * emultempl/pe.em: Include <ctype.h>.
896 2001-05-02 Johan Rydberg <jrydberg@opencores.org>
898 * emulparams/elf32openrisc.sh: New file.
900 * Makefile.am: Add OpenRISC target.
901 * Makefile.in: Regenerated.
903 * configure.tgt: Add openrisc-*-* mapping.
905 2001-05-02 Nick Clifton <nickc@redhat.com>
907 * emultempl/aix.em: Replace buystring with xstrdup.
908 * emultempl/beos.em: Replace buystring with xstrdup.
910 2001-05-02 H.J. Lu <hjl@gnu.org>
912 * ldfile.c: Include "libiberty.h".
915 * ldmisc.c (buystring): Removed.
916 * ldmisc.h: Likewise.
918 * ldfile.c: Replace buystring with xstrdup.
919 * ldlang.c: Likewise.
921 * ldmain.c: Likewise.
922 * ldmisc.c: Likewise.
923 * lexsup.c: Likewise.
924 * mpw-eppcmac.c: Likewise.
926 2001-04-30 Andreas Jaeger <aj@suse.de>
928 * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value.
930 2001-04-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
932 * ldlang.c (load_symbols): Give emulation a chance
933 to process unrecognized file before fatal error is
936 2001-04-27 Sean McNeil <sean@mcneil.com>
938 * configure.tgt: Add arm-vxworks target.
939 * scripttempl/armcoff.sc: Support .text or .data as a section name
943 2001-04-13 J.T. Conklin <jtc@redback.com>
945 * ld.texinfo: Document --fatal-warnings.
948 * ldmisc.c (vfinfo): Set flag to inhibit making executable if
949 warnings have been turned into errors.
950 * lexsup.c (OPTION_WARN_FATAL): Define.
951 (ld_options): Entry for --fatal-warnings.
952 (parse_args): Handle OPTION_WARN_FATAL.
953 * ld.h (ld_config_type): Add fatal_warnings field.
955 2001-04-13 Jakub Jelinek <jakub@redhat.com>
957 * ldmain.c (main): Default to discard_sec_merge.
958 * lexsup.c (OPTION_DISCARD_NONE): Define.
959 (ld_options): Add --discard-none.
960 (parse_args): Handle OPTION_DISCARD_NONE.
961 * ldlang.c (wild_doit): SEC_MERGE should be set in the output
962 section only if SEC_MERGE and SEC_STRINGS flags and entsize of
963 all its input sections match.
965 2001-04-05 Steven J. Hill <sjhill@cotw.com>
967 * Makefile.am (ALL_EMULATIONS): Add eelf32ltsmip.o.
968 (ALL_64_EMULATIONS): Add eelf64btsmip.o and eelf64ltsmip.o.
969 (eelf32ltsmip.c): New target.
970 (eelf64btsmip.c): Likewise.
971 (eelf64ltsmip.c): Likewise.
972 * Makefile.in: Regenerated.
974 * configure.tgt (mips*el-*-linux-gnu): Uses traditional MIPS
976 (mips*-*-linux-gnu*): Likewise.
978 * emulparams/elf32ltsmip.sh: New. Traditional little endian
980 * emulparams/elf64btsmip.sh: New. Traditional 64bit big endian
982 * emulparams/elf64ltsmip.sh: New. Traditional 64bit little
985 2001-04-05 Hans-Peter Nilsson <hp@axis.com>
987 * emulparams/criself.sh (EXECUTABLE_SYMBOLS): Cannot provide
988 correct value of __Stext here.
989 (TEXT_START_SYMBOLS): Define; always define __Stext, to start of
992 * emulparams/crislinux.sh: Remove FIXME.
994 2001-04-02 Alan Modra <alan@linuxcare.com.au>
996 * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 64k.
997 (TEXT_START_ADDR, TARGET_PAGE_SIZE): Likewise.
999 2001-03-27 Hans-Peter Nilsson <hp@axis.com>
1001 * configure.tgt (cris-*-*): Change default emulation to criself.
1002 (cris-*-*aout*): New rule.
1004 2001-03-27 Matthew Wilcox <willy@ldl.fc.hp.com>
1006 * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 0x4000.
1007 (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
1009 2001-03-26 Andreas Jaeger <aj@suse.de>
1011 * ld.texinfo (Overview): Fix syntax in texi code.
1013 2001-03-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1015 * ld.texinfo: Put @c man indications to generate the ld man page.
1016 When generating man, define all the variables. Define SEEALSO
1017 and SYNOPSIS. Re-organize some lines to avoid the cross references.
1018 * Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variables.
1019 (ld.1): Generate from ld.texinfo.
1020 * Makefile.in: Regenerate.
1022 2001-03-23 Mark Elbrecht <snowball3@bigfoot.com>
1024 * scripttempl/i386go32.sc: Support the GCC flags '-ffunction-sections'
1025 and '-fdata-sections'. Set the VMA of STABS sections to zero.
1027 2001-03-17 Ulrich Drepper <drepper@redhat.com>
1029 * emultmpl/elf32.em (gld${EMULATION_NAME}_search_needed): If NAME
1030 is an absolute path look only for this file and not along the path.
1032 2001-03-17 Ulrich Drepper <drepper@redhat.com>
1034 * emultempl/elf32.em (OPTION_GROUP): New macro.
1035 Add new option Bgroup to longopts.
1036 (gld*_parse_args): Handle GROUP_OPTION and recognize -z defs.
1037 (gld*_list_options): Add -Bgroup and -z defs.
1038 * ld.1: Document -Bgroup and -z defs.
1039 * ld.texinfo: Likewise.
1041 2001-03-07 Michael Meissner <meissner@redhat.com>
1043 * scripttempl/elfd10v.sc (.rodata,.rodata1,.data1,.sdata): Deal
1044 with sections created by -fdata-sections.
1045 (.dynbss,.bss): Ditto.
1047 2001-03-05 Alan Modra <alan@linuxcare.com.au>
1049 * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
1050 after_allocation_default, not gld..._before_allocation.
1052 2001-02-27 Alan Modra <alan@linuxcare.com.au>
1054 * configure.in (BFD_VERSION): New.
1055 (AM_INIT_AUTOMAKE): Use $BFD_VERSION.
1056 * configure: Regenerate.
1057 * Makefile.am: Run "make dep-am"
1058 * Makefile.in: Regenerate.
1060 2001-02-26 Timothy Wall <twall@cygnus.com>
1062 * emulparams/elf64_aix.sh: Add additional read-only sections;
1063 uncomment lines which are now required.
1065 2001-02-26 H.J. Lu <hjl@gnu.org>
1067 * ldlang.c (open_input_bfds): Set the bfd error handler so
1068 that problems can be caught whilst loading symbols.
1069 (record_bfd_errors): New function: Report BFD errors and mark
1070 the executable output as being invalid.
1072 2001-02-22 Timothy Wall <twall@cygnus.com>
1074 * configure.host: Add configuration for ia64-*-aix*.
1075 * Makefile.am (ALL_64_EMULATIONS): Add emulation for ia64-*-aix*.
1076 Add dependencies for eelf64_aix.c.
1077 * Makefile.in: Regenerate.
1078 * configure.tgt: Add ia64-*-aix* mapping.
1079 * emulparams/elf64_aix.sh: Add settings for elf64 on aix5.
1080 * testsuite/ld-bootstrap/bootstrap.exp: Exclude ia64 flavor from
1083 2001-02-20 H.J. Lu <hjl@gnu.org>
1085 * ldfile.c (ldfile_open_file): Set entry->search_dirs_flag to
1086 false if we found the file.
1088 2001-02-18 David O'Brien <obrien@FreeBSD.org>
1090 * configure.tgt: Add FreeBSD/Alpha, FreeBSD/x86-64, FreeBSD/ia64,
1091 FreeBSD/PowerPC, FreeBSD/arm, and FreeBSD/sparc64 entries.
1093 2001-02-18 lars brinkhoff <lars@nocrew.org>
1095 * Makefile.am: Add PDP-11 target.
1096 * configure.tgt: Likewise.
1097 * emulparams/pdp11.sh: New file.
1099 2001-02-17 David O'Brien <obrien@FreeBSD.org>
1101 * configure.host: Add a generic FreeBSD configuration entry such that
1102 all [modern] FreeBSD systems on all platforms will look the same.
1104 2001-02-14 H.J. Lu <hjl@gnu.org>
1106 * configure.tgt: Remove mention of earmelf_linux26.
1108 2001-02-13 Richard Henderson <rth@redhat.com>
1110 * emulparams/elf64_ia64.sh (OTHER_GOT_SYMBOLS): Remove.
1112 2001-02-13 H.J. Lu <hjl@gnu.org>
1114 * ldexp.h (node_type): Add etree_provided.
1115 * ldexp.c (exp_fold_tree): Handle etree_provided. Set the node
1116 type to etree_provided if defined by PROVIDE. Allow updating
1118 (exp_print_tree): Handle etree_provided.
1119 * mpw-elfmips.c (gldelf32ebmip_find_exp_assignment): Handle
1122 2001-02-09 David Mosberger <davidm@hpl.hp.com>
1124 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add
1125 .IA_64.unwind.* pattern to unwind table section and
1126 .IA_64.unwind_info* pattern to unwind info section.
1128 2001-02-09 Martin Schwidefsky <schwidefsky@de.ibm.com>
1130 * Makefile.am: Add linux target for S/390.
1131 * Makefile.in: Likewise.
1132 * configure.host: Likewise.
1133 * configure.tgt: Likewise.
1134 * emulparams/elf64_s390.sh: New file.
1135 * emulparams/elf_s390.sh: New file.
1137 2001-02-09 Jakub Jelinek <jakub@redhat.com>
1139 * configure.tgt (sparc64-*-linux-gnu*): Add elf32_sparc into
1141 (sparc-*-linux-gnu*): Add elf64_sparc into targ_extra_libpath.
1143 2001-02-06 Philip Blundell <philb@gnu.org>
1145 * Makefile.am: Remove mention of earmelf_linux26.
1146 * Makefile.in: Regenerate.
1148 2001-02-04 Philip Blundell <philb@gnu.org>
1150 * emulparams/armelf_linux.sh (TEXT_START_ADDR): Set to 0x8000.
1151 * emulparams/armelf_linux26.sh: Delete.
1152 * configure.tgt: Remove mention of armelf_linux26 emulation.
1154 2001-02-01 Nick Clifton <nickc@redhat.com>
1156 * ld.1: Replace occurances of -oformat with --oformat.
1158 2001-01-25 Jim Driftmyer <jdrift@stny.rr.com>
1160 * ldlang.c (lang_leave_overlay): Don't set lma_region when
1161 load_base is specified.
1163 2001-01-24 Hans-Peter Nilsson <hp@axis.com>
1165 * emultempl/elf32.em: Correct spelling in comments and listed
1168 2001-01-23 Alan Modra <alan@linuxcare.com.au>
1170 * ldlang.c (lang_leave_overlay): Only set lma_region from the
1171 default for the first section of a group of overlay sections.
1173 2001-01-22 Alan Modra <alan@linuxcare.com.au>
1175 * Makefile.am (GENSCRIPTS): Pass exec_prefix.
1176 * Makefile.in: Regenerate.
1177 * genscripts.sh: Use exec_prefix parameter to specify tool lib.
1178 Check for null tool_dir.
1180 2001-01-16 Jim Wilson <wilson@redhat.com>
1182 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add IA_64.unwind
1183 and IA_64.unwind.info.
1185 2001-01-16 H.J. Lu <hjl@gnu.org>
1187 * ldlang.c (lang_check): Merge the private data only if the
1188 input file has contents.
1190 2001-01-14 Alan Modra <alan@linuxcare.com.au>
1192 * emulparams/hppalinux.sh (OUTPUT_FORMAT): Set to elf32-hppa-linux.
1194 * emultempl/hppaelf.em (hppaelf_after_parse): New function,
1195 enabling search for libmilli. On a relocatable link, make .text
1197 (LDEMUL_AFTER_PARSE): Define.
1198 (hppaelf_finish): Correct spelling of relocatable in comments.
1200 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
1201 rummage through the script for sections on the unique list.
1202 Correct length of strncmp for ".note".
1203 (gld${EMULATION_NAME}_check_needed): Rearrange function.
1205 * ldlang.c (unique_section_list): New var.
1206 (unique_section_p): New function.
1207 (walk_wild_section): Don't match sections on unique_section_list.
1208 (lang_add_unique): New function.
1209 Correct spelling of relocatable in comments.
1211 * ldlang.h (struct unique_sections): Declare.
1212 (unique_section_list): Declare.
1213 (unique_section_p): Declare.
1214 (lang_add_unique): Declare.
1216 * lexsup.c (ld_options): Allow --unique to take an optional arg.
1217 (parse_args [OPTION_UNIQUE]): Call lang_add_unique.
1219 * ld.texinfo (--unique): Update.
1221 2001-01-13 Nick Clifton <nickc@redhat.com>
1223 * lexsup.c (parse_args): Remove spurious white space.
1225 2001-01-12 Nick Clifton <nickc@redhat.com>
1227 * lexsup.c (parse_args): Update copyright date.
1229 2001-01-12 Philip Blundell <pb@futuretv.com>
1231 * configure.host: Set HOSTING_LIBS appropriately for ix86-cygwin.
1233 2001-01-10 Kazu Hirata <kazu@hxi.com>
1235 * scripttempl/h8300.sc: Fix formatting. Fix a comment typo.
1236 * scripttempl/h8300h.sc: Fix formatting.
1237 * scripttempl/h8300s.sc: Likewise.
1238 * scripttempl/h8500.sc: Likewise.
1239 * scripttempl/h8500b.sc: Likewise.
1240 * scripttempl/h8500c.sc: Likewise.
1241 * scripttempl/h8500m.sc: Likewise.
1242 * scripttempl/h8500s.sc: Likewise.
1244 2000-01-07 David O'Brien <obrien@BSDi.com>
1246 * emultempl/elf32.em: Only perform Linux ld hints processing when
1249 2001-01-07 Philip Blundell <philb@gnu.org>
1251 * ld.texinfo (Bug Reporting): Update email address for reports.
1253 2000-12-31 Nick Clifton <nickc@redhat.com>
1255 * lexsup.c (parse_args): Set opterr to 0 and detect unparsed long
1256 options by checking for a return value of '?' not -1.
1258 2000-12-28 Nick Clifton <nickc@redhat.com>
1260 * lexsup.c (struct ld_option): Add new enum value:
1262 (ld_options[]): Change -omagic, -output and -oformat options
1263 to be EXACTLY_TWO_DASHES.
1264 (OUTPUT_COUNT): Use ARRAY_SIZE.
1265 (parse_args): Change parameter 'argc' to unsigned.
1266 Place EXACTLY_TWO_DASHES options into new really_longopts
1268 If getopt_long_only fails, try calling getopt_long using the
1269 really_longopts array.
1270 (help): Print a double dash for both EXACTLY_TWO_DASHES and
1273 * ldlex.h: Fix prototype of parse_args.
1275 * ld.texinfo: Document that long options starting with 'o'
1276 must be preceeded by two dashes. Change example of a single
1277 dashed long option from -oformat to -trace-symbol.
1279 2000-12-26 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
1281 * emultempl/pe.em (OPTION_NO_DEFAULT_EXCLUDES): Define.
1282 (longopts[]): New --no-default-excludes option.
1283 (gld_${EMULATION_NAME}_list_options): Document.
1284 (gld_${EMULATION_NAME}_parse_args): Handle.
1286 2000-12-13 Michael Sokolov <msokolov@ivan.Harhan.ORG>
1288 * ldlang.c (new_stat): Revert the last beautification with "innocent"
1289 whitespace, it breaks the K&R C preprocessor.
1291 2000-12-11 DJ Delorie <dj@redhat.com>
1293 * ld.texinfo: Add notes about --whole-archive and gcc.
1295 2000-11-18 Fred Fish <fnf@be.com>
1297 * lexsup.c (OPTION_ALLOW_SHLIB_UNDEFINED): Define.
1298 (ld_options): Entry for --allow-shlib-undefined.
1299 (parse_args): Handle OPTION_ALLOW_SHLIB_UNDEFINED.
1300 * ldmain.c (main): Initialize link_info.allow_shlib_undefined
1302 * ld.texinfo: Document new command line switch.
1304 2000-12-12 Geoffrey Keating <geoffk@redhat.com>
1306 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS):
1307 .fixup is actually read/write.
1308 * emulparams/elf32lppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
1309 * emulparams/elf32ppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
1310 * emulparams/elf32lppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
1312 Mon Dec 11 14:50:33 MET 2000 Jan Hubicka <jh@suse.cz>
1314 * NEWS: Add note about x86_64 architecture.
1316 2000-12-06 Mark Elbrecht <snowball3@bigfoot.com>
1318 * scripttempl/i386go32.sc: Use PROVIDE with _etext, _edata, _end.
1319 Set DWARF2 sections to a VMA of zero.
1321 2000-12-01 Joel Sherrill <joel@OARcorp.com>
1323 * configure.tgt (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
1325 (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
1326 (sparc*-*-rtems*): Switched from a.out to ELF.
1328 2000-11-30 Jan Hubicka <jh@suse.cz>
1330 * Makefile.am (ALL_EMULATIONS): Add eelf_x86_64.o
1331 (eelf_x86_64.c): New.
1332 * Makefile.in: Regenerate.
1333 * configure.tgt: Add support for x86_64-*-linux-gnu*.
1334 * emulparams/elf_x86_64.sh: New.
1336 2000-11-30 Hans-Peter Nilsson <hp@axis.com>
1338 * emulparams/crislinux.sh (ENTRY): Change back to _start.
1339 (TEXT_START_SYMBOLS): Remove conditional setting of __start.
1341 * scripttempl/crisaout.sc: Change all RELOCATING not related to
1342 merging non-a.out sections into CONSTRUCTING.
1344 2000-11-28 Nick Clifton <nickc@redhat.com>
1346 * ld.1 (COPYING): Mention that the GNU Free Documentation
1347 License is present in the sources, but not the output, and
1348 also available from the GNU website.
1349 (GNU Free Documentation License): Comment out this section.
1351 2000-11-28 David O'Brien <obrien@dragon.nuxi.com>
1353 * emulparams/elf64alpha.sh (ENTRY): Remove leading underscore as ELF
1356 2000-11-25 David O'Brien <obrien@FreeBSD.org>
1358 * ld.1: Remove old date so it does not give the impression the manpage
1361 2000-11-24 Nick Clifton <nickc@redhat.com>
1363 * configure.tgt (xscale-coff): Add target.
1364 (xscale-elf): Add target.
1366 2000-11-24 Fred Fish <fnf@be.com>
1368 * ldmain.c (main): Remove redundant init of config.make_executable
1371 2000-11-15 Richard Henderson <rth@redhat.com>
1373 * emulparams/elf64alpha.sh (MAXPAGESIZE): Typo -- 64k, not 1M.
1375 2000-11-14 Kazu Hirata <kazu@hxi.com>
1377 * scripttempl/h8300.sc: Fix formatting.
1378 * scripttempl/h8300h.sc: Likewise.
1379 * scripttempl/h8300s.sc: Likewise.
1381 Tue Nov 14 00:59:19 2000 Denis Chertykov <denisc@overta.ru>
1383 * scripttempl/elf32avr.sc: Fix bug in .eeprom segment.
1385 2000-11-09 Philip Blundell <pb@futuretv.com>
1387 * emultempl/pe.em: Define ___start_SECNAME and ___stop_SECNAME
1388 around orphan sections whose names can be represented in C.
1390 2000-11-07 Jim Wilson <wilson@redhat.com>
1392 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): New local
1393 hold_sdata. If SEC_SMALL_DATA set, set place to hold_sdata.
1395 2000-11-06 Nick Clifton <nickc@redhat.com>
1397 * ld.texinfo: Add GNU Free Documentation License.
1398 * ldint.texinfo: Add GNU Free Documentation License.
1399 * ld.1: Add GNU Free Documentation License.
1401 2000-11-05 Alan Modra <alan@linuxcare.com.au>
1403 * ldlex.l (yy_create_string_buffer): Init yy_is_our_buffer,
1404 yy_is_interactive, yy_at_bol, and yy_fill_buffer.
1406 * Makefile.am (DISTCLEANFILES): Add stringify.sed.
1407 Move 2000-11-02 Makefile.in changes to this file.
1408 * Makefile.in: Regenerate.
1410 2000-11-03 Nick Clifton <nickc@redhat.com>
1412 * scripttempl/h8300.sc: Use ${CONSTRUCTING...} to enclose
1413 constructors and destructors.
1414 * scripttempl/h8300h.sc: Ditto.
1415 * scripttempl/h8300s.sc: Ditto.
1416 * scripttempl/h8500.sc: Ditto.
1417 * scripttempl/h8500b.sc: Ditto.
1418 * scripttempl/h8500c.sc: Ditto.
1419 * scripttempl/h8500m.sc: Ditto.
1420 * scripttempl/h8500s.sc: Ditto.
1421 * scripttempl/v850.sc: Ditto.
1422 * scripttempl/w65.sc: Ditto.
1423 * scripttempl/z8000.sc: Ditto.
1425 2000-11-02 Per Lundberg <plundis@chaosdev.org>
1427 * Makefile.in (e_i386_chaos.c): New rule.
1428 (ALL_EMULATIONS): Added e_i386_chaos.o.
1429 * emulparams/elf_i386_chaos.sh: New file.
1430 * configure.tgt: Recognise i[3456]86-chaosdev-storm-chaos.
1432 2000-10-20 Jakub Jelinek <jakub@redhat.com>
1434 * emulparams/elf64_sparc.sh (TEXT_START_ADDR,
1435 NONPAGED_TEXT_START_ADDR): Set to 4GB for Solaris targets.
1436 Fix sed invocation, so that it coped with '/' in Solaris 64bit
1437 library path suffix.
1438 Based on patch by Andrew Macleod <amacleod@cygnus.com>.
1440 2000-10-18 Hans-Peter Nilsson <hp@axis.com>
1442 * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32),
1443 for consecutive sections.
1445 2000-10-17 Chandrakala Chavva <cchavva@redhat.com>
1447 * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific
1449 * ld.texinfo: Added notes about this new option.
1451 2000-10-16 Nick Clifton <nickc@redhat.com>
1453 * emultempl/pe.em (_after_open): Add tests of return values from
1454 bfd functions. Emit appropriate error messages if necessary.
1456 2000-10-13 Nick Clifton <nickc@redhat.com>
1458 * emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
1459 local variables - they are not used, but leave in the call to
1460 bfd_canonicalize_symtab.
1461 (_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
1462 pe_dll_search_prefix.
1464 2000-10-12 Charles Wilson <cwilson@ece.gatech.edu>
1466 * emultempl/pe.em (pe_dll_search_prefix): New variable,
1467 (longopts): New --dll-search-prefix option.
1468 (gld_${EMULATION_NAME}_list_options): Document.
1469 (gld_${EMULATION_NAME}_parse_args): Handle.
1470 (gld_${EMULATION_NAME}_open_dynamic_archive): When linking
1471 dynamically, search for a dll named '<prefix><basename>.dll'
1472 in preference to 'lib<basename>.dll' if --dll-search-prefix
1475 2000-10-12 Alan Modra <alan@linuxcare.com.au>
1477 * ldlang.c (section_already_linked): Set kept_section instead of
1480 2000-10-10 Kazu Hirata <kazu@hxi.com>
1482 * deffile.h: Fix formatting.
1483 * lexsup.c: Likewise.
1486 2000-10-09 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
1488 * pe-dll.c (make_one): Do not generate code thunk for DATA
1490 (process_def_file): deduce DATA flag for auto-export sumbols.
1492 2000-10-09 Kazu Hirata <kazu@hxi.com>
1494 * ld.h: Fix formatting.
1495 * ldcref.c: Likewise.
1496 * ldctor.h: Likewise.
1497 * ldemul.c: Likewise.
1498 * ldemul.h: Likewise.
1499 * ldexp.c: Likewise.
1500 * ldexp.h: Likewise.
1501 * ldfile.c: Likewise.
1502 * ldfile.h: Likewise.
1503 * ldlang.c: Likewise.
1504 * ldlang.h: Likewise.
1505 * ldmain.c: Likewise.
1506 * pe-dll.c: Likewise.
1508 * pe-dll.c: Revert some formatting fixes.
1510 2000-10-08 Kazu Hirata <kazu@hxi.com>
1512 * pe-dll.c: Fix formatting.
1514 2000-10-05 Kazu Hirata <kazu@hxi.com>
1516 * ldlang.c: Fix formatting.
1518 2000-10-03 DJ Delorie <dj@redhat.com>
1520 * pe-dll.c (fill_edata): initialize entire block
1521 (make_one): fill in correct section.
1523 2000-10-03 Kazu Hirata <kazu@hxi.com>
1525 * ldexp.c: Fix formatting.
1527 2000-10-02 DJ Delorie <dj@redhat.com>
1529 * emultempl/pe.em (gld_*_after_open): detect case where there two
1530 import libraries for same dll; rename one to ensure proper link
1533 * pe-dll.c (process_def_file): compare ordinals to -1, not 0; fix
1535 (generate_edata): fix typo
1537 2000-09-29 Hans-Peter Nilsson <hp@axis.com>
1539 * scripttempl/crisaout.sc (ENTRY): Now __start.
1540 (.text): Add default setting for __start.
1541 Remove CONSTRUCTORS handling.
1542 (/DISCARD/): Add .gnu.warning.*.
1543 * emulparams/crislinux.sh (ENTRY): Now __start.
1544 (TEXT_START_SYMBOLS): New; provide __Stext and __start default.
1545 * emulparams/criself.sh (OUTPUT_FORMAT): Now elf32-us-cris.
1546 (ENTRY): Now __start.
1547 (INITIAL_READONLY_SECTIONS): Add KEEP for .startup.
1548 (EXECUTABLE_SYMBOLS): Add default setting for __start.
1550 2000-09-29 Kazu Hirata <kazu@hxi.com>
1552 * deffile.h: Fix formatting.
1554 * ldcref.c: Likewise.
1555 * ldctor.c: Likewise.
1556 * ldctor.h: Likewise.
1557 * ldemul.c: Likewise.
1558 * ldemul.h: Likewise.
1559 * ldexp.c: Likewise.
1560 * ldexp.h: Likewise.
1561 * ldfile.c: Likewise.
1562 * ldfile.h: Likewise.
1563 * ldlang.c: Likewise.
1564 * ldlang.h: Likewise.
1565 * lexsup.c: Likewise.
1567 * pe-dll.c: Likewise.
1569 2000-09-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
1571 * pe-dll.c (process_def_file): Uninitialized data wasn't
1572 exported with --export-all-symbols switch.
1574 2000-09-28 DJ Delorie <dj@redhat.com>
1576 * pe-dll.c (fill_edata): rearrange the data so that ordinals and
1577 noname work properly.
1579 2000-09-28 Alan Modra <alan@linuxcare.com.au>
1581 * ld.texinfo (HPPA ELF32): New section.
1583 * emultempl/hppaelf.em (group_size): New.
1584 (hppaelf_finish): Pass group_size to elf32_hppa_size_stubs.
1585 (PARSE_AND_LIST_PROLOGUE): Add OPTION_STUBGROUP_SIZE.
1586 (PARSE_AND_LIST_LONGOPTS): Add --stub-group-size. Duplicate
1587 options to prevent abbreviations matching.
1588 (PARSE_AND_LIST_OPTIONS): Describe the above. Reformat.
1589 (PARSE_AND_LIST_ARGS_CASES): Handle it.
1591 2000-09-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
1593 * emultempl/m68kelf.em: Conditionalise the embedded relocs feature
1594 on the m68*-*-elf target. Make it support COFF input objects.
1596 2000-09-21 Kazu Hirata <kazu@hxi.com>
1598 * ldmain.c: Fix formatting.
1599 * ldmisc.c: Likewise.
1600 * ldver.c: Likewise.
1601 * ldwrite.c: Likewise.
1603 2000-09-21 Alan Modra <alan@linuxcare.com.au>
1605 * ldwrite.c (clone_section): Silence gcc warnings.
1607 2000-09-20 Alan Modra <alan@linuxcare.com.au>
1609 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Handle
1610 out of memory failure.
1612 * ldwrite.c (ldwrite): Remove unnecessary einfo arg.
1613 (clone_section): Handle out of memory failures. Rename var to
1614 avoid c++ reserved word.
1616 2000-09-18 Alan Modra <alan@linuxcare.com.au>
1618 * emultempl/hppaelf.em (hppaelf_add_stub_section): Rename
1619 stub_name param to stub_sec_name.
1620 (hppaelf_finish): Modify call to elf32_hppa_size_stubs.
1622 2000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>
1624 * emultempl/m68kelf.em: New file.
1625 * emulparams/m68kelf.sh (EXTRA_EM_FILE): Use it.
1626 * Makefile.am (em68kelf.c): Add dependency on m68kelf.em.
1627 * Makefile.in: Regenerate.
1629 2000-09-15 Alan Modra <alan@linuxcare.com.au>
1631 * emulparams/hppalinux.sh (DATA_START_SYMBOLS): Provide $global$
1634 2000-09-13 Nick Clifton <nickc@redhat.com>
1636 * ldmain.c (multiple_definition): Disable relaxation if
1637 multiple symbol definitions are encountered - otherwise the
1638 linker could abort with an assertion failure.
1640 2000-09-10 Nick Clifton <nickc@redhat.com>
1642 * mri.c: Fix formatting.
1644 2000-09-07 H.J. Lu <hjl@gnu.org>
1646 * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
1647 * configure: Rebuild.
1649 2000-09-07 H.J. Lu <hjl@gnu.org>
1651 * Makefile.am (lexsup.o): Also depend on $(INCDIR)/demangle.h.
1652 * Makefile.in: Rebuild.
1654 2000-09-07 Alan Modra <alan@linuxcare.com.au>
1656 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Fix
1657 broken list handling. Create __start_SECNAME and __stop_SECNAME
1658 when no place-holder. Add some comments. Test both SEC_CODE and
1659 SEC_READONLY for hold_text to prevent .rodata orphan poisoning.
1660 Handle case where no output section statement created.
1662 2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
1664 * configure.tgt (sh-*-linux*): Added.
1665 * Makefile.am: Added eshelf_linux and eshlelf_linux.
1666 * Makefile.in: Rebuilt.
1667 * emulparams/shelf_linux.sh: New file.
1668 * emulparams/shlelf_linux.sh: New file.
1670 2000-09-06 Alan Modra <alan@linuxcare.com.au>
1672 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
1673 try shuffling sections when the orphan happens to be the place
1674 holder. Keep count of unique section names generated so we speed
1675 the search for a new name.
1677 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
1679 * configure: Rebuilt with new libtool.m4.
1681 2000-09-05 Nick Clifton <nickc@redhat.com>
1683 * Makefile.in: Regenerate.
1684 * aclocal.m4: Regenerate.
1685 * configure: Regenerate.
1686 * config.in: Regenerate.
1687 * po/ld.pot: Regenerate.
1689 * ldint.texinfo: Remove CVS revision marker - it foils local
1692 * emultempl/ticoff.em: Remove extraneous comma.
1694 2000-09-05 Alan Modra <alan@linuxcare.com.au>
1696 * emultempl/hppaelf.em (hppaelf_add_stub_section): Add SEC_RELOC
1697 to stub section flags.
1698 (hppa_for_each_input_file_wrapper): New.
1699 (hppa_lang_for_each_input_file): New.
1700 (lang_for_each_input_file): Define to call above.
1701 (multi_subspace): New.
1702 (hppaelf_finish): Pass multi_subspace to elf32_hppa_size_stubs.
1703 (PARSE_AND_LIST_PROLOGUE): Define.
1704 (PARSE_AND_LIST_LONGOPTS): Define.
1705 (PARSE_AND_LIST_OPTIONS): Define.
1706 (PARSE_AND_LIST_ARGS_CASES): Define.
1707 (hppaelf_finish): Call elf32_hppa_set_gp.
1708 (hppaelf_set_output_arch): Remove.
1709 (LDEMUL_SET_OUTPUT_ARCH): Remove.
1711 * emulparams/hppalinux.sh (ELFSIZE): Define.
1713 (OTHER_READONLY_SECTIONS): Define.
1715 (GENERATE_SHLIB_SCRIPT): Define.
1717 * ldlang.c: Add missing prototypes, and tidy others. Change CONST
1718 to const throughout. Change `void *' to `PTR' throughout.
1719 (lang_memory_default): Function is local to file, add `static'.
1721 * Makefile.am (ehppaelf.c): Depend on emultempl/elf32.em.
1722 (ehppalinux.c): Likewise.
1723 (earmelf.c): Likewise.
1724 (earmelf_linux.c): Likewise.
1725 (earmelf_linux26.c): Likewise.
1726 * Makefile.in: Regenerate.
1728 * ld.h (ld_config_type): Add unique_orphan_sections.
1729 * lexsup.c (OPTION_UNIQUE): Define.
1730 (ld_options): Add "--unique".
1731 (parse_args): Handle it.
1732 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
1733 search for an existing output section if unique_orphan_sections is
1734 set. Make use of bfd_get_unique_section_name rather than
1735 duplicating code here.
1736 * ld.texinfo: Describe --unique.
1738 * lexsup.c (ld_options): Make split-by-reloc arg optional. Add
1739 optional arg to split-by-file.
1740 (parse_args): Handle them.
1741 * ld.texinfo: Update description of these options.
1742 * ldwrite.c (clone_section): Pass in the section name. Replace
1743 local code with bfd_get_unique_section_name.
1744 (split_sections): Tidy code and comments. Use a list traversal
1745 more appropriate to the list construction. Handle cooked section
1746 sizes. Split when split_by_reloc reached rather than exceeded.
1747 Track section size and split when split_by_file reached. Fix
1748 link_order_tail (even though it's not used).
1749 (ldwrite): Modify condition for calling split_sections to suit
1750 changed split_by_reloc and split_by_file.
1751 * ldmain.c (main): Init config.split_by_reloc and
1752 config.split_by_file to -1.
1753 * ld.h (ld_config_type): Change split_by_reloc to unsigned.
1754 Change split_by_file to bfd_size_type.
1756 2000-09-02 Nick Clifton <nickc@redhat.com>
1758 * configure.in: Increase version number to 2.10.91.
1759 * NEWS: Mention new ability to support removal of duplicate DWARF2
1761 * configure: Regenerate.
1762 * aclocal.m4: Regenerate.
1763 * config.in: Regenerate.
1765 2000-09-02 Daniel Berlin <dberlin@redhat.com>
1767 * scripttempl/elf.sc: Add .gnu.linkonce.wi.* to .debug_info
1769 * scripttempl/elf32avr.sc: Ditto.
1770 * scripttempl/elfd10v.sc: Ditto.
1771 * scripttempl/elfd30v.sc: Ditto.
1772 * scripttempl/elfi370.sc: Ditto.
1773 * scripttempl/elfm68hc11.sc: Ditto.
1774 * scripttempl/elfm68hc12.sc: Ditto.
1775 * scripttempl/elfi386beos.sc: Ditto.
1776 * scripttempl/v850.sc: Ditto.
1778 2000-08-31 Alexandre Oliva <aoliva@redhat.com>
1780 * acinclude.m4: Include libtool and gettext macros from the
1782 * aclocal.m4, configure: Rebuilt.
1784 2000-08-25 Nick Clifton <nickc@redhat.com>
1786 * ldlang.c (open_output): When choosing the target for a
1787 particular endianness, do nothing if the target is not
1790 2000-08-25 H.J. Lu <hjl@gnu.org>
1792 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
1793 check -rpath nor LD_RUN_PATH for cross link.
1794 * ld.texinfo: Document the change.
1796 2000-08-24 Hans-Peter Nilsson <hp@axis.com>
1798 * NEWS: Mention support for CRIS.
1800 2000-08-23 H.J. Lu <hjl@gnu.org>
1802 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Get
1803 the current runpath list from bfd_elf_get_runpath_list ()
1806 2000-08-22 H.J. Lu <hjl@gnu.org>
1808 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search
1809 the DT_RPATH/DT_RUNPATH entries for DT_NEEDED after
1810 LD_LIBRARY_PATH for native linker. Display the needed DSO if
1811 trace_file_tries is non-zero.
1812 (gld${EMULATION_NAME}_try_needed): Report the needed DSO found
1813 if trace_file_tries is non-zero.
1815 * ld.texinfo: Document the usage of DT_RPATH/DT_RUNPATH.
1818 2000-08-14 Jason Eckhardt <jle@cygnus.com>
1820 * NEWS: Mention i860 support.
1822 2000-08-14 Andreas Schwab <schwab@suse.de>
1824 * scripttempl/elf.sc: Fix last change to use correct comment
1827 2000-08-10 Geoff Keating <geoffk@cygnus.com>
1829 * scripttempl/elf.sc: Add a comment giving the correspondence
1830 between sections, per-datum sections, and linkonce sections. Make
1831 the comment true even for .bss, .sdata, .sdata2, .sbss, and
1834 2000-08-10 Jason Eckhardt <jle@cygnus.com>
1836 * emulparams/elf32_i860.sh: New file.
1837 * configure.tgt: Recognize new target i860-stardent-{sysv4*|elf*}.
1838 * Makefile.am (ALL_EMULATIONS): Add eelf32_i860.o.
1839 (eelf32_i860.c): New rule.
1840 * Makefile.in: Regenerate.
1842 2000-08-10 Nick Clifton <nickc@cygnus.com>
1844 * emulparams/mipspe.sh (ENTRY): Add definition.
1846 2000-08-08 Peter Jeremy <peter.jeremy@alcatel.com.au>
1848 * emultempl/elf32.em (_after_close): Refer to -rpath not --rpath
1851 2000-08-08 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1853 * scripttempl/elfm68hc11.sc: Define __bss_size symbol to indicate
1854 the final size of .bss section.
1855 * scripttempl/elfm68hc12.sc: Likewise.
1857 2000-08-04 Alan Modra <alan@linuxcare.com.au>
1859 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Rename to
1860 gld${EMULATION_NAME}_parse_args for consistency. Combine
1861 lastoptind and prevoptind vars, and keep track of last optind.
1862 (gld_${EMULATION_NAME}_list_options): Rename to
1863 gld${EMULATION_NAME}_list_options.
1865 2000-08-03 Rodney Brown <RodneyBrown@pmsc.com>
1867 * configure.tgt: Select targ_emul=elf_i386 for Unixware 7
1868 (i586-sco-sysv5uw7.1.0).
1870 2000-07-27 H.J. Lu <hjl@gnu.org>
1872 * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
1873 (PARSE_AND_LIST_PROLOGUE): New.
1874 (PARSE_AND_LIST_LONGOPTS): Likewise.
1875 (PARSE_AND_LIST_OPTIONS): Likewise.
1876 (PARSE_AND_LIST_ARGS_CASES): Likewise.
1877 (PARSE_AND_LIST_EPILOGUE): Likewise.
1879 2000-07-28 Alan Modra <alan@linuxcare.com.au>
1881 * emultempl/armelf.em: Elide functions common to elf32.em,
1882 ie. most of the file.
1883 (arm_elf_after_open): New. Do arm specific things then call
1884 gld${EMULATION_NAME}_after_open.
1885 (arm_elf_before_allocation): New. Call
1886 gld${EMULATION_NAME}_before_allocation then do arm specifics.
1887 (PARSE_AND_LIST_PROLOGUE): Define.
1888 (PARSE_AND_LIST_SHORTOPTS): Define.
1889 (PARSE_AND_LIST_LONGOPTS): Define.
1890 (PARSE_AND_LIST_OPTIONS): Define.
1891 (PARSE_AND_LIST_ARGS_CASES): Define.
1892 (LDEMUL_AFTER_OPEN): Define.
1893 (LDEMUL_BEFORE_ALLOCATION): Define.
1894 (LDEMUL_BEFORE_PARSE): Define.
1895 (LDEMUL_FINISH): Define.
1897 * emultempl/hppaelf.em: Similarly zap most of this file.
1898 (hppaelf_add_stub_section): Prototype.
1899 (hppaelf_layaout_sections_again): Prototype.
1900 (hook_in_stub): Prototype.
1901 (LDEMUL_SET_OUTPUT_ARCH): Define.
1902 (LDEMUL_FINISH): Define.
1903 (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
1905 * emulparams/armelf.sh (TEMPLATE_NAME): Use elf32.
1906 (EXTRA_EM_FILE): New.
1907 * emulparams/armelf_linux.sh: Likewise.
1908 * emulparams/armelf_linux26.sh: Likewise.
1909 * emulparams/hppalinux.sh: Likewise.
1910 * emulparams/hppaelf.sh: Likewise.
1913 * emultempl/elf32.em: Fix formatting.
1914 (EXTRA_EM_FILE): Source it.
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): New shell vars. Add code to
1924 allow functions in this file to be overridden.
1925 (PARSE_AND_LIST_SHORTOPTS): Handle it.
1927 * emultempl/m68kcoff.em: Include ldfile.h before ldemul.h.
1929 * emultempl/elf32.em: Reorganize file.
1931 2000-07-27 Ivan Kokshaysky <ink@jurassic.park.msu.ru>
1933 * emulparams/elf64alpha.sh: Implement "-taso" emulation
1934 specific option to fit 64-bit executable in the lower
1935 31-bit address range. This is done by changing start
1936 address of .interp (the very first section of executable)
1937 and then setting EF_ALPHA_32BIT elf header flag.
1939 2000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
1941 * emultempl/m68kcoff.em: New file.
1942 * emulparams/m68kcoff.sh (TEMPLATE_NAME): Use m68kcoff template.
1943 * Makefile.am (em68kcoff.c): Depend on m68kcoff.em rather than
1945 * Makefile.in: Regenerate.
1947 2000-07-20 H.J. Lu <hjl@gnu.org>
1949 * emultempl/elf32.em (longopts): Duplicate "disable-new-dtags"
1950 and "disable-new-dtags" to stop getopt from treating -d/-e as
1951 abbreviations for these options.
1953 2000-07-20 H.J. Lu <hjl@gnu.org>
1955 * ld.texinfo: Add documentation for --disable-new-dtags and
1958 * ldmain.c (main): Initialize link_info.new_dtags to false.
1960 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add
1961 --disable-new-dtags and --enable-new-dtags.
1962 (gld_${EMULATION_NAME}_list_options): Likewise.
1964 2000-07-05 Kenneth Block <krblock@computer.org>
1966 * lexsup.c: Add optional style to demangle switch
1967 * ld.texinfo: Document optional style to demangle switch.
1969 2000-07-20 Hans-Peter Nilsson <hp@axis.com>
1971 * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
1973 (ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
1974 Regenerate dependencies.
1975 * Makefile.in: Rebuild.
1976 * configure.tgt (cris-*-*): New target.
1977 * emulparams/crisaout.sh, emulparams/criself.sh,
1978 emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
1979 * po/POTFILES.in, po/ld.pot: Regenerate.
1981 2000-07-20 H.J. Lu <hjl@gnu.org>
1983 * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options):
1984 Print out ignored -z options.
1986 2000-07-19 H.J. Lu <hjl@gnu.org>
1988 * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Removed.
1989 (PARSE_AND_LIST_PROLOGUE): New.
1990 (PARSE_AND_LIST_LONGOPTS): Likewise.
1991 (PARSE_AND_LIST_OPTIONS): Likewise.
1992 (PARSE_AND_LIST_ARGS_CASES): Likewise.
1994 * ldmain.c (main): Clear link_info.flags and link_info.flags_1.
1996 * lexsup.c (ld_options): Comment out 'z'.
1997 (parse_args): Likewise.
1999 * emultempl/elf32.em: Include "elf/common.h".
2000 (gld_${EMULATION_NAME}_parse_args): Defined. Handle some -z
2002 (gld_${EMULATION_NAME}_list_options): Likewise.
2004 * ld.texinfo: Add documentation for the recognized -z options.
2006 2000-07-19 H.J. Lu <hjl@gnu.org>
2008 * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Call
2009 bfd_elf_set_dt_needed_soname ().
2011 2000-07-18 DJ Delorie <dj@cygnus.com>
2013 * pe-dll.c (pe_dll_id_target): check object target name also
2015 2000-07-18 Hans-Peter Nilsson <hp@axis.com>
2017 * scripttempl/elf.sc (.init): Only do ${INIT_START} and
2018 ${INIT_END} if relocating.
2019 (.fini): Likewise ${FINI_START} and ${FINI_END}.
2021 2000-07-16 Charles Wilson <cwilson@ece.gatech.edu>
2023 * emultempl/pe.em (gld_*_open_dynamic_archive): New search
2024 order for dynamic library '-lfoo' on pei386: libfoo.dll.a,
2025 foo.dll.a, libfoo.a, libfoo.dll, foo.dll. This fixes compatibility
2026 errors introduced by the old dynamic lib search order.
2028 2000-07-17 DJ Delorie <dj@cygnus.com>
2030 * pe-dll.c (process_def_file): auto-export data items also
2031 (pe_process_import_defs): also see if _imp_ form needed
2033 2000-07-12 Charles Wilson <cwilson@ece.gatech.edu>
2035 * pe-dll.c (make_one): fix a typo in the __imp_ name decoration
2036 for dll import libraries
2038 2000-07-12 Mark Elbrecht <snowball3@bigfoot.com>
2040 * scripttempl/i386go32.sc: Support the g++ attribute init_priority in
2041 gcc 2.95.2 and later.
2043 2000-07-11 Kazu Hirata <kazu@hxi.com>
2045 * ldfile.c (ldfile_try_open_bfd): Output '\n' after an error
2048 2000-07-10 Alan Modra <alan@linuxcare.com.au>
2050 * ldemul.h (struct lang_input_statement_struct): Remove forward
2052 (struct search_dirs): Likewise.
2053 * ldfile.h (struct lang_input_statement_struct): Likewise.
2054 Protect file from multiple inclusion.
2055 * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
2056 declaration from macro to file scope.
2058 * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
2059 * ldgram.y: Likewise here.
2060 * ldlang.c: And here.
2061 * ldmain.c: And here.
2062 * mpw-elfmips.c: And here.
2063 * mpw-eppcmac.c: And here.
2064 * emultempl/aix.em: And here.
2065 * emultempl/armcoff.em: And here.
2066 * emultempl/armelf.em: And here.
2067 * emultempl/armelf_oabi.em: And here.
2068 * emultempl/beos.em: And here.
2069 * emultempl/elf32.em: And here.
2070 * emultempl/hppaelf.em: And here.
2071 * emultempl/linux.em: And here.
2072 * emultempl/lnk960.em: And here.
2073 * emultempl/pe.em: And here.
2074 * emultempl/sunos.em: And here.
2075 * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
2076 * mpw-idtmips.c: Ditto.
2077 * emultempl/generic.em: Ditto.
2078 * emultempl/gld960.em: Ditto.
2079 * emultempl/gld960c.em: Ditto.
2080 * emultempl/mipsecoff.em: Ditto.
2081 * emultempl/ticoff.em: Ditto.
2082 * emultempl/vanilla.em: Ditto.
2084 * pe-dll.c: Include ldfile.h
2085 * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
2087 * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
2088 arguments to bfd_elf32_size_dynamic_sections call.
2089 (gldelf32ebmip_place_orphan): Add missing arguments to
2090 lang_leave_output_section_statement call.
2092 2000-07-10 H.J. Lu <hjl@gnu.org>
2094 * emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
2096 (strhash): Likewise.
2097 (compute_dll_image_base): Likewise.
2098 (pe_undef_found_sym): Likewise.
2099 (pe_undef_cdecl_match): Likewise.
2100 (gld_${EMULATION_NAME}_open_dynamic_archive): Mark the
2101 argument "arch" with ATTRIBUTE_UNUSED.
2103 2000-07-10 Alan Modra <alan@linuxcare.com.au>
2105 * configure.tgt: Remove extraneous hppa*-*-linux-gnu*.
2107 From Ryan Bradetich <rbradetich@uswest.net>
2108 * ldwrite.c (SSIZE): Remove to cure macro redefinition warning.
2110 2000-07-09 Alan Modra <alan@linuxcare.com.au>
2112 Changes to create multiple linker stubs, positioned immediately
2113 before the section where they are required.
2114 * emultempl/hppaelf.em: Include elf32-hppa.h.
2115 (stub_sec, file_chain): Delete.
2116 (hppaelf_create_output_section_statements): Don't make a stub
2118 (hook_stub_info): New struct.
2119 (hook_in_stub): New function.
2120 (hppaelf_add_stub_section): New function.
2121 (hppaelf_finish): Do nothing for relocateable links. Modify the
2122 call to elf32_hppa_size_stubs. Move code for updating section
2124 (hppaelf_layaout_sections_again): ..to here, a new function.
2126 * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Fix
2127 broken list handling. Pass in a pointer to the list.
2128 (hppaelf_finish): Update call to hppaelf_delete_padding_statements
2130 (hppaelf_before_parse): Prototype.
2131 (hppaelf_set_output_arch): Prototype.
2132 (hppaelf_create_output_section_statements): Prototype.
2133 (hppaelf_delete_padding_statements): Prototype.
2134 (hppaelf_finish): Prototype.
2137 * emultempl/hppaelf.em: Include ctype.h.
2138 (struct orphan_save): New.
2139 (gld${EMULATION_NAME}_place_orphan): New.
2140 (output_rel_find): New.
2141 (hppaelf_get_script): Update from elf32.em.
2142 (ld_hppaelf_emulation): Rename to ld_${EMULATION_NAME}_emulation.
2143 Change emulation_name field to "${EMULATION_NAME}". Add
2144 gld${EMULATION_NAME}_place_orphan.
2146 * Makefile.am (ALL_EMULATIONS): Reinstate ehppaelf.o, add
2147 ehppalinux.o, sort it. Regenerate dependencies.
2148 (ehppalinux.c): Depend on hppaelf.em
2149 * Makefile.in: Regenerate.
2151 * configure.tgt: targ_emul=hppalinux for hppa*linux
2153 * emulparams/hppalinux.sh: New.
2154 * emulparams/hppaelf.sh (TARGET_PAGE_SIZE): Write in hex.
2156 2000-07-08 Alan Modra <alan@linuxcare.com.au>
2158 * lexsup.c (parse_args): Copy section name.
2160 2000-07-07 Charles Wilson <cwilson@ece.gatech.edu>
2162 * emultempl/pe.em: institute the following search order for
2163 dynamic libraries on pei386: libfoo.dll.a, foo.dll.a (import
2164 libs), libfoo.dll, foo.dll (link direct to dll). Fall back to
2165 static lib (libfoo.a) if none of the above are found.
2167 2000-07-07 Mumit Khan <khan@xraylith.wisc.edu>
2169 * emultempl/pe.em (pe_enable_auto_image_base): New variable.
2170 (longopts): New --{enable,disable}-auto-image-base options.
2171 (gld_${EMULATION_NAME}_list_options): Document.
2172 (gld_${EMULATION_NAME}_parse): Handle.
2173 (strhash): New static function.
2174 (compute_dll_image_base): New static function.
2175 (gld_${EMULATION_NAME}_set_symbols): Use.
2177 2000-07-05 DJ Delorie <dj@redhat.com>
2181 2000-07-01 Koundinya K <kk@ddeorg.soft.net>
2183 * configure.tgt: Add traditional mips (mips*-*-sysv4*) target.
2184 * emulparams/elf32btsmip.sh: New file.
2185 * Makefile.am: Add traditional mips target.
2186 * Makefile.in: Rebuild.
2188 2000-07-01 H.J. Lu <hjl@gnu.org>
2190 * Makefile.am (EXTRA_ld_new_SOURCES): Set to deffilep.y for
2191 automake to use YLWRAP.
2192 * Makefile.in: Rebuild.
2194 2000-07-01 Alan Modra <alan@linuxcare.com.au>
2196 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
2197 (CLEANFILES): Add DEPA.
2198 * Makefile.in: Regenerate.
2200 2000-06-30 Timothy Wall <twall@ppc>
2202 * scripttempl/tic54xcoff.sc: PAGE N is not implemented, so encode
2203 the page in the upper octet of the address.
2205 2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
2207 * emulparams/avrmega161.sh (ARCH): Change to avr:5.
2209 2000-06-24 Alan Modra <alan@linuxcare.com.au>
2211 * NEWS: arm-elf does --gc-sections too.
2213 2000-06-22 Alan Modra <alan@linuxcare.com.au>
2215 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
2217 * Makefile.in: Regenerate.
2219 2000-06-21 H.J. Lu <hjl@gnu.org>
2221 * Makefile.am: Rebuild dependency.
2222 * Makefile.in: Rebuild.
2224 2000-06-20 H.J. Lu <hjl@gnu.org>
2226 * Makefile.am: Rebuild dependency.
2227 * Makefile.in: Rebuild.
2229 2000-06-20 Timothy Wall <twall@cygnus.com>
2231 * scripttempl/tic54xcoff.sc: New.
2232 * ldlang.c (wild_doit): Propagate SEC_BLOCK flag.
2233 * gen-doc.texi: Add flag for TI COFF.
2234 * ld.texinfo: Add documentation for TI COFF handling switches.
2235 * emultempl/ticoff.em: New. TI COFF handling.
2236 * configure.tgt: Add tic54x target.
2237 * Makefile.am: Add tic54x target.
2238 * Makefile.in: Ditto.
2240 2000-06-20 Alan Modra <alan@linuxcare.com.au>
2242 * ldmain.c (set_scripts_dir): Correct pointer comparison when
2243 checking for backslashes.
2245 2000-06-19 Alan Modra <alan@linuxcare.com.au>
2247 * NEWS: Move entries not in 2.10 above "Changes in version 2.10".
2249 2000-06-18 Alan Modra <alan@linuxcare.com.au>
2251 * NEWS: Update list of targets supporting --gc-sections.
2253 * scripttempl/elf.sc: KEEP .eh_frame contents.
2254 * scripttempl/elfd30v.sc: Same here.
2256 2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
2258 * Makefile.am (ALL_EMULATIONS): Added new emulation for m68hc12
2260 * Makefile.in: Rebuild.
2261 * configure.tgt: Recognize m68hc12 and m68hc11.
2262 * scripttempl/elfm68hc12.sc: New file.
2263 * emulparams/m68hc12elfb: New emulation.
2264 * emulparams/m68hc12elf: New emulation.
2265 * emulparams/m68hc11elfb.sh: New file. User configurable emulation
2266 (includes a memory.x script to define the ROM and RAM banks).
2267 * scripttempl/elfm68hc11.sc, emulparams/m68hc11elf.sh:
2268 New configuration files for support of Motorola 68hc11
2270 2000-06-15 Alan Modra <alan@linuxcare.com.au>
2272 * ldmain.c (main): Only change SEC_READONLY for final link.
2274 2000-06-13 H.J. Lu <hjl@gnu.org>
2276 * configure: Regenerate.
2278 2000-06-08 David O'Brien <obrien@FreeBSD.org>
2280 * configure.in (VERSION): Update to show this is the CVS mainline.
2282 2000-06-07 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2284 * emultempl/mipsecoff.em (gld{EMULATION_NAME}_after_open): Require all
2285 input objects to be ECOFF.
2286 (check_sections): einfo takes %B, not %P, to print a BFD name.
2288 2000-06-05 Michael Matz <matz@ifh.de>
2290 * ldgram.y (vers_defns): Handle 'extern "C++" { ... }' in
2293 * ldlex.l (V_IDENTIFIER): Accept `::' in symbols.
2295 2000-05-23 Marek Michalkiewicz <marekm@linux.org.pl>
2297 * emulparams/avr1200.sh (STACK): Define as 0.
2298 * emulparams/avr23xx.sh (STACK): Define as last internal SRAM address.
2299 * emulparams/avr4433.sh (STACK): Likewise.
2300 * emulparams/avr44x4.sh (STACK): Likewise.
2301 * emulparams/avr85xx.sh (STACK): Likewise.
2302 * emulparams/avrmega103.sh (STACK): Likewise.
2303 * emulparams/avrmega161.sh (STACK): Likewise.
2304 * emulparams/avrmega603.sh (STACK): Likewise.
2305 * scripttempl/elf32avr.sc (__data_start): Define for gcrt1.
2306 (__stack): Define from ${STACK} for main().
2308 2000-05-26 Alan Modra <alan@linuxcare.com.au>
2310 * Makefile.am: Update dependencies with "make dep-am"
2311 * Makefile.in: Regenerate.
2313 2000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
2315 * ldmain.c: Include filenames.h.
2316 (set_scripts_dir): Support backslashes in program name.
2318 2000-05-22 Igor Shevlyakov <igor@windriver.com>
2320 * ldmain.c (main): When deciding if ".text" section should be
2321 read-only, don't forget to reset SEC_READONLY because it
2322 could be already set.
2324 2000-05-22 Thomas de Lellis <tdel@windriver.com>
2326 * ld.1: Add documentation for new command line option:
2327 --section-start <sectionname>=<sectionorg>
2328 This is a generic version of -Ttext etc. which accepts
2329 any section name as a parameter instead of just text/data/
2331 * ld.texinfo: More docs.
2333 * lexsup.c: (parse_args): Recognize new command line option.
2334 (ld_options): Add new option.
2336 2000-05-18 H.J. Lu <hjl@gnu.org>
2338 * lexsup.c (parse_args): `i' == `r', not `q'.
2340 Thu May 18 10:47:57 2000 Jeffrey A Law (law@cygnus.com)
2342 * configure.tgt (hppa*64*-*-*): Enable PA64 target.
2344 2000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
2345 Rick Gorton <gorton@scrugs.lkg.dec.com>
2347 Add support for '-q' == '--emit-relocs' switch.
2348 * ldmain.c (main): Default to false.
2349 * lexsup.c (parse_args): Turn on emitrelocations flag if set.
2350 * NEWS: Describe the emitrelocations switch.
2351 * ld.texinfo: Describe the emitrelocations switch.
2353 2000-05-16 Charles Wilson <cwilson@ece.gatech.edu>
2355 * emultempl/pe.em (_open_dynamic_archive): New function: Search
2356 the library path for "foo.dll" and "libfoo.dll" dynamic libraries
2357 before searching for 'libfoo.a' in response to a '-Bdynamic -lfoo'
2360 2000-05-15 David O'Brien <obrien@FreeBSD.org>
2362 * lexsup.c (parse_args): Update the year in the copyright notice.
2364 2000-05-13 Alan Modra <alan@linuxcare.com.au>
2366 * ld.h (gettext, dgettext, dcgettext, textdomain, bindtextdomain):
2367 Replace defines with those from intl/libgettext.h to quieten gcc
2370 2000-05-10 H.J. Lu <hjl@gnu.org>
2372 * ldlang.c (open_input_bfds): Don't load the same file within
2373 a group again if the whole archive has been loaded already.
2375 2000-05-03 Alan Modra <alan@linuxcare.com.au>
2377 From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
2378 * lexsup.c (set_section_start): Use bfd_scan_vma rather than
2381 Mon May 1 17:34:34 2000 Jim Wilson <wilson@cygnus.com>
2383 * configure.host (ia64-*-linux-gnu*): Change gcc to ${CC}.
2385 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
2386 host "ia64-*-linux-gnu*".
2388 2000-04-29 Andreas Jaeger <aj@suse.de>
2390 * ld.h: Correctly check GCC version.
2392 Tue Apr 25 11:20:43 2000 Jeffrey A Law (law@cygnus.com)
2394 * Makefile.am: Add PA64 support. Add missing dependencies for
2396 * Makefile.in: Rebuilt.
2397 * configure.tgt: Add PA64 support (currently disabled).
2399 2000-04-25 Alan Modra <alan@linuxcare.com.au>
2401 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Delete.
2402 (output_rel_find): New function.
2403 (hold_section, hold_use): Delete.
2404 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
2405 hold_interp): Make local to place_orphan.
2406 (gld${EMULATION_NAME}_place_orphan): Use lang_output_section_find
2407 rather than place_section to find possible previous use of orphan.
2408 Similarly find the place-holder output sections. Use returned
2409 value from lang_enter_output_section_statement rather than calling
2410 lang_output_section_statement_lookup.
2411 * emultempl/armelf.em: Same here.
2412 * emultempl/pe.em: Similar to above, but no need for output_rel_find.
2414 * ldlang.c (lang_enter_output_section_statement): Return output
2416 * ldlang.h (lang_enter_output_section_statement): Change
2419 * ldlang.h (lang_output_section_statement): Export it.
2420 * ldlang.c (lang_output_section_statement): Ditto.
2422 2000-04-24 Nick Clifton <nickc@cygnus.com>
2424 * ld.texinfo (Output Section Data): Add note that section data
2425 commands cannot appear outside of section directives.
2427 2000-04-2 Matthew Green <mrg@cygnus.com>
2429 * configure.tgt: Add NetBSD/sparc ELF, and NetBSD/sparc64 support.
2431 Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com>
2432 David Mosberger <davidm@hpl.hp.com>
2434 * Makefile.am (ALL_64_EMULATIONS): Add eelf64_ia64.o.
2435 (eelf64_ia64.c): New rule.
2436 * Makefile.in: Rebuild.
2437 * configure.tgt (ia64-*-elf*, ia64-*-linux*): New targets.
2438 * emulparams/elf64_ia64.sh: New file.
2440 2000-04-21 Richard Henderson <rth@cygnus.com>
2442 * scripttempl/elfd30v.sc: Place .gcc_except_table.
2444 2000-04-19 Alan Modra <alan@linuxcare.com.au>
2446 * dep-in.sed: Match space at start of file name, not at end.
2448 2000-04-18 H.J. Lu <hjl@gnu.org>
2450 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
2451 lang_leave_output_section_statement () after calling
2452 lang_enter_output_section_statement ().
2453 * emultempl/armelf.em: Likewise.
2455 2000-04-18 Alan Modra <alan@linuxcare.com.au>
2457 * emultempl/elf32.em (struct orphan_save): Add section field.
2458 (gld${EMULATION_NAME}_place_orphan): Use above to keep sections in
2459 better order, and place first orphan section as we did before the
2460 2000-04-12 patch. Ignore ~SEC_ALLOC sections when choosing place.
2461 Don't call make_bfd_section here, let wild_doit do the job for us.
2462 Don't build a statement list when we'll only throw it away.
2463 * emultempl/armelf.em: Ditto.
2464 * emultempl/pe.em: Similarly.
2466 2000-04-14 Geoff Keating <geoffk@cygnus.com>
2468 * scripttempl/elfppc.sc: Remove.
2469 * emulparams/elf32ppc.sh: Use elf.sc.
2470 * emulparams/elf32lppc.sh: Use elf.sc.
2471 * emulparams/elf32ppclinux.sh: Use elf.sc.
2472 * emulparams/elf32ppcsim.sh: New file.
2473 * emulparams/elf32lppcsim.sh: New file.
2474 * Makefile.am: Update dependencies. Add elf32ppcsim ad elf32lppcsim.
2475 (ALL_EMULATIONS): Add elf32ppcsim ad elf32lppcsim.
2476 * Makefile.in: Regenerate.
2477 * configure.tgt (powerpc-*): Add elf32ppcsim and elf32lppcsim.
2479 2000-04-14 Alan Modra <alan@linuxcare.com.au>
2481 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Process
2482 ~SEC_ALLOC sections too. Init start address of debug sections.
2483 * emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan): Ditto.
2484 * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Ditto.
2485 Also set all relocateable section start addresses.
2487 2000-04-13 Geoff Keating <geoffk@cygnus.com>
2489 * scripttempl/elf.sc: Add support for .sbss2 and .sdata2 sections.
2490 Add new BSS_PLT variable for when .plt need not be contained in
2491 the file. Move _etext so that it is also after .fini, and provide
2492 both etext and _etext with a leading underscore. Mark the start
2495 2000-04-12 Alan Modra <alan@linuxcare.com.au>
2497 * emultempl/elf32.em (struct orphan_save): New.
2498 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
2499 hold_interp): Make them struct orphan_save.
2500 (gld${EMULATION_NAME}_place_section): Modify for new hold_*.
2501 (gld${EMULATION_NAME}_place_orphan): Add new orphan sections to
2502 the end of the relevant section list. Also add associated section
2503 statements to the end of any previous orphan statements.
2504 * emultempl/armelf.em: Similarly.
2505 * emultempl/pe.em: Similarly.
2507 2000-04-11 Alan Modra <alan@linuxcare.com.au>
2509 * ld.texinfo (Simple Example): Remove extraneous paragraph.
2511 Fri Apr 7 15:56:57 2000 Andrew Cagney <cagney@b1.cygnus.com>
2513 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
2514 --enable-build-warnings option.
2515 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
2516 * Makefile.in, configure: Re-generate.
2518 2000-04-04 Alan Modra <alan@linuxcare.com.au>
2520 * po/ld.pot: Regenerate.
2522 * lexsup.c (help): Restore translated part of bug string.
2524 * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
2525 (DEP): Quote when passing vars to sub-make. Add warning message
2527 (DEP1): Rewrite for "gcc -MM".
2528 (CLEANFILES): Add DEP2.
2529 Update dependencies.
2530 * Makefile.in: Regenerate.
2532 2000-04-03 Alan Modra <alan@linuxcare.com.au>
2534 * ld.h: #include "bin-bugs.h"
2535 * lexsup.c (help): Use REPORT_BUGS_TO.
2537 2000-03-27 Denis Chertykov <denisc@overta.ru>
2539 * configure.tgt (avr-*-*): New target support.
2540 * Makefile.am: Likewise.
2541 * scripttempl/elf32avr.sc: New script file.
2542 * emulparams/avr1200.sh: New file.
2543 * emulparams/avr23xx.sh: New file.
2544 * emulparams/avr4433.sh New file.
2545 * emulparams/avr44x4.sh New file.
2546 * emulparams/avr85xx.sh New file.
2547 * emulparams/avrmega103.sh New file.
2548 * emulparams/avrmega161.sh New file.
2549 * emulparams/avrmega603.sh New file.
2550 * Makefile.in: Regenerate.
2552 2000-03-09 Andreas Jaeger <aj@suse.de>
2554 * Makefile.am (check-DEJAGNU): Also unset LANG.
2555 * Makefile.in: Rebuild.
2557 2000-03-06 Ian Lance Taylor <ian@zembu.com>
2559 * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
2562 2000-03-02 H.J. Lu <hjl@gnu.org>
2564 * emulparams/elf32mcore.sh: Include "getopt.h".
2566 2000-03-01 Ian Lance Taylor <ian@zembu.com>
2568 * configure.tgt: Remove *-*-aout, *-*-coff, and *-*-netware.
2570 2000-03-01 H.J. Lu <hjl@gnu.org>
2572 * emulparams/mipspe.sh: Add SUBSYSTEM and INITIAL_SYMBOL_CHAR.
2573 * emulparams/shpe.sh: Likewise.
2575 2000-03-01 Nick Clifton <nickc@cygnus.com>
2577 * pe-dll.c: Remove unused variables and add ATTRIBUTE_UNUSED
2578 to unused parameters.
2580 * emultempl/pe.em: Add "#ifdef DLL_SUPPORT" around static
2581 functions only used by DLL code.
2582 (_place_orphan): Initialise 'dollar'.
2584 2000-03-01 H.J. Lu <hjl@gnu.org>
2586 * ldmain.c (undefined_symbol): Take one more arg, fatal, to
2587 indicate if the undefined symbol is a fatal error or not.
2588 Don't delete the output file if "fatal" is false.
2590 2000-02-29 H.J. Lu <hjl@gnu.org>
2592 * Makefile.am (check-DEJAGNU): Also pass LIBS="$(LIBS)".
2593 Set LC_COLLATE and LC_ALL to null and export them. It is for
2594 sort which expects the C locale.
2595 Add $(LIBS) to all $(HOSTING_LIBS).
2596 * Makefile.in: Rebuild.
2598 2000-02-29 Alan Modra <alan@spri.levels.unisa.edu.au>
2600 * emultempl/{aix.em, armcoff.em, armelf.em, armelf_oabi.em,
2601 beos.em, elf32.em, generic.em, gld960.em, gld960c.em, hppaelf.em,
2602 linux.em, lnk960.em, mipsecoff.em, sunos.em, vanilla.em}
2603 (ld_emulation_xfer_struct): Add missing NULL initialiser for
2604 find_potential_libraries.
2606 2000-02-28 Jim Blandy <jimb@redhat.com>
2608 * ldgram.y (exclude_name_list): Don't require a comma to separate
2609 list entries; the lexer considers commas to be valid part of a
2610 filename, so in something like `foo, bar' the comma is considered
2611 part of the first filename, `foo,'.
2612 * ld.texinfo: Update section on EXCLUDE_FILE lists.
2614 2000-02-27 Loren J. Rittle <ljrittle@acm.org>
2616 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
2617 host "i[3456]86-*-freebsdelf*".
2619 2000-02-27 Mark Elbrecht <snowball3@bigfoot.com>
2621 * scripttempl/i386go32.sc: Move misplaced semicolons.
2623 2000-02-25 Ian Lance Taylor <ian@zembu.com>
2625 * Makefile.am (ALL_EMULATIONS): Remove ehppaelf.o.
2626 (ALL_64_EMULATIONS): Remove eelf64hppa.o.
2627 (eelf64hppa.c, ehppaelf.c): Remove targets.
2628 * Makefile.in: Rebuild.
2630 2000-02-25 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
2632 * configure.tgt (targ_extra_ofiles): Enable elf64_sparc on
2633 GNU/Linux/sparc, but keep the default as 32.
2635 * configure.tgt: Enable elf64_sparc on Solaris7+/sparc. And make
2636 it default if sparcv9 or sparc64.
2638 2000-02-24 Nick Clifton <nickc@cygnus.com>
2640 * Makefile.am: Add rules to build emipspe.o and earmpe.o.
2641 * Makefile.in: Regenerate.
2642 * configure.tgt: Add targets for arm-wince, sh-pe and mips-pe.
2644 * ldemul.h (ld_emulation_xfer_struct): Add new field:
2645 find_potential_libraries.
2646 * ldemul.c (ldemul_find_potential_libraries): New function.
2648 * ldfile.c (ldfile_open_file_search): Allow function to be
2650 (ldfile_open_file): Call ldemul_find_potential_libraries.
2651 * ldfile.h: Add prototype for ldfile_open_file_search.
2653 * pe-dll.c: Add support for ARM, MIPS and SH targets.
2655 * emulparams/mipspe.sh: New file. Parameters for mips-pe target.
2656 * emulparams/shpe.sh: New file. Parameters for sh-pe target.
2658 * emultempl/pe.em: Add support for ARM, MIPS and SH DLLs.
2659 (gld_X_find_potential_libraries): New function. Search for
2660 libraries called "*.lib".
2662 * scripttempl/pe.sc: Add .pdata section.
2664 2000-02-23 Richard Henderson <rth@cygnus.com>
2666 * scripttempl/elfd10v.sc: Remove dynamic linking hooks.
2667 Add and use memory regions.
2669 2000-02-23 Linas Vepstas (linas@linas.org)
2671 * emulparams/elf32i370.sh, scripttempl/elfi370.sc: New.
2673 * Makefile.am: Add support for Linux/IBM 370.
2674 * configure.tgt: Likewise.
2676 * Makefile.in: Regenerate.
2678 2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
2680 * ldlang.c (print_input_section, print_data_statement,
2681 print_reloc_statement, print_padding_statement, insert_pad,
2682 size_input_section, lang_check_section_addresses,
2683 lang_size_sections, lang_do_assignments, lang_set_startof,
2684 lang_one_common): Change `opb' to unsigned.
2685 (lang_do_assignments): Also change `size' to unsigned.
2687 2000-02-16 Richard Henderson <rth@cygnus.com>
2689 * scripttempl/elf.sc: Place OTHER_PLT_RELOC_SECTION.
2691 2000-02-16 Timothy Wall <twall@cygnus.com>
2693 * mri.c (mri_draw_tree): Add default LMA region argument to call
2694 to lang_leave_output_section_statement.
2695 * ldlang.h: Update prototypes with LMA region arguments.
2696 * ldlang.c (lang_size_sections): Encapsulate region bounds
2697 checking in os_check_region call.
2698 (os_check_region): New function.
2699 (lang_output_section_statement_lookup): Initialize lma_region.
2700 (lang_leave_output_section_statement): Add LMA region argument.
2701 (lang_leave_overlay): Ditto.
2702 * ldgram.y: Handle LMA region syntax.
2703 * ld.texinfo (Output Section Description): Describe LMA region usage.
2704 * emultempl/armelf.em (gld$place_orphan): Add default value for
2705 lma region in call to lang_leave_output_section_statement.
2706 * emultempl/elf32.em (gld$place_orphan): Add default value for
2707 lma region in call to lang_leave_output_section_statement.
2708 * emultempl/pe.em (gld$place_orphan): Add default value for
2709 lma region in call to lang_leave_output_section_statement.
2712 2000-02-04 Timothy Wall <twall@redhat.com>
2714 * ldlang.c (lang_check_section_addresses): Use bytes instead of
2715 octets when calculating section end addresses.
2717 2000-02-04 Timothy Wall <twall@redhat.com>
2719 * ldlang.c (lang_size_sections): Fix typo in ALIGN_N invocation.
2721 2000-02-03 Timothy Wall <twall@redhat.com>
2723 * ldexp.c (fold_name): Make SIZEOF operator return byte count, not
2725 * ldlang.c (print_input_section, print_data_statement,
2726 print_reloc_statement, print_padding_statement): Print target
2727 address values and section sizes as bytes, not octets.
2728 (insert_pad) Calculate padding size in octets, and adjust "dot"
2730 (size_input_section) Always adjust "dot" by bytes, not octets.
2731 (lang_check_section_addresses, lang_do_assignments) Adjust
2732 "dot" by bytes, not octets. Use the larger of the directive size
2733 or octets_per_byte for the number of octets actually allocated in
2735 (lang_set_startof) Make sure STARTOF returns a target address.
2736 (lang_one_common) Record size changes in octets.
2737 (lang_abs_symbol_at_end_of) Section end symbol's value is
2738 recorded in target bytes.
2739 * ld.texinfo: Updated description of BYTE, SHORT, LONG, etc.
2740 to be clear about behavior when an octet is smaller than one byte.
2742 2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au>
2744 * ldcref.c (output_cref): Don't pass message strings to printf
2748 * ldmisc.c (vfinfo): Same here.
2751 2000-01-23 Alan Modra <alan@spri.levels.unisa.edu.au>
2753 * emultempl/{armcoff.em,armelf.em,armelf_oabi.em,beos.em,
2754 generic.em,gld960.em,gld960c.em,hppaelf.em,linux.em,lnk960.em,
2755 mipsecoff.em,sunos.em,vanilla.em} (ld_emulation_xfer_struct):
2756 Add missing NULL initialisers, and comments.
2758 * testsuite/ld-srec/sr3.cc (__rethrow): New.
2760 2000-01-21 Nick Clifton <nickc@cygnus.com>
2762 * ldlang.c (lang_size_sections): Fix typo in comment.
2764 2000-01-18 H.J. Lu <hjl@gnu.org>
2766 * ldlang.c (lang_size_sections): Also update the current
2767 address of a region if the SEC_NEVER_LOAD bit is not set.
2769 2000-01-10 Philip Blundell <pb@futuretv.com>
2771 * configure.tgt (arm*-*-conix*): New target.
2773 2000-01-07 Nick Clifton <nickc@cygnus.com>
2775 * ld.texinfo (Options): Remind users to preceed linker command
2776 line switches with -Wl, (or whatever is appropriate) if it is
2777 being invoked by a comnpiler driver program.
2778 Fix description of the behaviour of the -n command line switch.
2780 Wed Jan 5 08:02:12 2000 Catherine Moore <clm@cygnus.com>
2782 * ld.h (wildcard_spec): Change exclude_name to exclude_name_list.
2784 * ld.texinfo (EXCLUDE_FILE): Update documentation.
2785 * ldgram.y (wildcard_spec): Support a list of excluded_files.
2786 (exclude_name_list): New.
2787 ldlang.c (walk_wild_section): Support list of excluded files.
2788 (print_wild_statement): Likewise.
2789 (lang_add_wild): Likewise.
2790 * ldlang.h (lang_wild_statement_type): Likewise.
2791 * scripttempl/elf.sc (OTHER_EXCLUDE_FILES): Support.
2793 2000-01-04 Mumit Khan <khan@xraylith.wisc.edu>
2795 * pe-dll.c (pe_dll_warn_dup_exports): New variable.
2796 (process_def_file): Use.
2797 (pe_dll_compat_implib): New variable.
2800 * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
2801 pe_dll_compat_implib.
2803 * emultempl/pe.em (longopts): Add warn-duplicate-exports and
2804 compat-implib options.
2805 (gld_${EMULATION_NAME}_list_options): List new options.
2806 (gld_${EMULATION_NAME}_parse_args): Handle.
2808 * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
2811 * deffilep.y (opt_name): Allow "." in name.
2813 For older changes see ChangeLog-9899
2819 version-control: never