1 2001-12-11 Christopher Faylor <cgf@redhat.com>
3 * emultempl/pe.em (gld_${EMULATION_NAME}_list_options): Fix typo.
5 2001-12-07 Geoffrey Keating <geoffk@redhat.com>
6 Richard Henderson <rth@redhat.com>
8 * Makefile.am: Add support for xstormy16.
9 * configure.tgt: Add support for xstormy16.
10 * Makefile.in: Regenerate.
11 * emulparams/elf32xstormy16.sh: New file.
12 * scripttempl/xstormy16.sc: New file.
14 2001-10-01 Christopher Faylor <cgf@cygnus.com>
16 * Makefile.in (LIB_PATH): Make configurable.
17 (GENSCRIPTS): Set LIB_PATH in environment.
18 * configure.in: Substitute LIB_PATH.
19 * configure: Regenerate.
20 * configure.tgt (*cygwin): Set LIB_PATH for cross build.
21 * configure.host (*cygwin): Add /usr/lib/w32api to NATIVE_LIB_DIRS.
23 2001-12-07 Nick Clifton <nickc@cambridge.redhat.com>
25 * lexsup.c (ld_options): Insert 'PROGRAM' into the text string
26 describing the -N option so that it is easier to translate into
29 2001-12-05 Nick Clifton <nickc@cambridge.redhat.com>
31 * emultempl/pe.em (..._list_options): Replace multiple fprintf
32 statements describing a single option with a single, newline
33 escaped fprintf. This allows better translation into other
36 * ldmain.c (add_archive_element): Combine multiple strings
37 into a single string to permit better translation into other
40 2001-12-05 Tom Rix <trix@redhat.com>
42 * Makefile.am: Remove eaixppc64.
43 * Makefile.in: Regenerate.
45 2001-12-04 Tom Rix <trix@redhat.com>
47 * emultempl/aix.em (choose_target): Change default target to
48 OUTPUT_FORMAT for ppcmacos. Add braces to remove compiler
50 (gld*_read_file): Fix typo.
51 (change_symbol_mode): Add prototype.
54 * emulparams/aixppc.sh (SYSCALL_MASK, SYMBOL_MODE_MASK): Delete.
55 * emulparams/aixrs6.sh : Same.
56 * emulparams/ppcmacos.sh : Same.
57 * emulparams/aixppc64.sh : Delete file.
58 * emultempl/aix.em : Formatting changes.
60 2001-12-04 Hans-Peter Nilsson <hp@axis.com>
62 * emulparams/criself.sh (NO_SMALL_DATA): Set, to yes.
63 (OTHER_BSS_END_SYMBOLS): Don't refer to .sbss when setting
65 (OTHER_END_SYMBOLS): Fix formatting.
66 * emulparams/crislinux.sh (NO_SMALL_DATA): Set, to yes.
67 (OTHER_END_SYMBOLS): Fix formatting.
69 2001-12-04 Alan Modra <amodra@bigpond.net.au>
71 * ldexp.c (exp_print_token): Correct "table" entry for RSHIFT.
73 2001-12-02 Tom Rix <trix@redhat.com>
75 * configure.tgt : Remove eaixppc64 emulations.
76 * Makefile.in : Remove eaixppc64.c
77 * ldemul.c (ldemul_choose_target): New parameters argc, argv.
78 (ldemul_default_target): Same.
79 * emultempl/gld960.em (gld960_choose_target): Same.
80 * emultempl/gld960c.em (gld960_choose_target): Same.
81 * scripttempl/aix.sc: Remove OUTPUT_FORMAT.
82 * emultempl/aix.em (is_syscall): syscall_mask now a variable.
83 * emultempl/aix.em (gld*_read_file): symbol_mode_mask now a variable.
84 * emultempl/aix.em (gld*_parse_args): Handle -b32 -b64 emulation.
85 * emultempl/aix.em (choose_target): New function. Handle emulation of
88 2001-11-27 H.J. Lu <hjl@gnu.org>
90 * emulparams/elf_i386.sh (NO_SMALL_DATA): Set to yes.
91 * emulparams/elf_i386_be.sh (NO_SMALL_DATA): Likewise.
92 * emulparams/elf_i386_chaos.sh (NO_SMALL_DATA): Likewise.
93 * emulparams/elf_i386_ldso.sh (NO_SMALL_DATA): Likewise.
94 * emulparams/elf_x86_64.sh (NO_SMALL_DATA): Likewise.
95 * emulparams/m68kelf.sh (NO_SMALL_DATA): Likewise.
96 * emulparams/elf32_sparc.sh (NO_SMALL_DATA): Likewise.
97 * emulparams/elf64_sparc.sh (NO_SMALL_DATA): Likewise.
99 * scripttempl/elf.sc (SBSS): New. Define if ${NO_SMALL_DATA}
102 (REL_SDATA): Likewise.
103 (REL_SBSS): Likewise.
104 (REL_SDATA2): Likewise.
105 (REL_SBSS2): Likewise.
106 (SBSS2): Define if ${NO_SMALL_DATA} is not empty.
109 2001-11-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>
111 * scripttempl/elfm68hc11.sc (CTOR, DTOR): Put constructor and
113 * scripttempl/elfm68hc12.sc (CTOR, DTOR): Likewise.
115 2001-11-22 H.J. Lu <hjl@gnu.org>
117 * Makefile.in: Regenerated with automake based on automake
120 2001-11-22 Alan Modra <amodra@bigpond.net.au>
122 * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
123 (config.status): Delete rule.
124 Add extra dependencies to cover sourced emulparams files.
125 * Makefile.in: Regenerate.
127 * scripttempl/elf.sc: Order <section>, <section>.* and
128 corresponding linkonce sections as seen in input files.
129 Formatting fixes. Zero vma of all sections if not relocating.
130 (STACK): Define and insert if STACK_ADDR defined.
131 (OTHER_RELOCATING_SECTIONS): Delete.
132 (OTHER_END_SYMBOLS): Define.
133 (OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
134 (OTHER_READWRITE_SECTIONS): Likewise.
135 (OTHER_GOT_SECTIONS): Likewise.
136 (OTHER_SDATA_SECTIONS): Likewise.
137 (OTHER_BSS_SECTIONS): Likewise.
138 * scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
139 (OTHER_READWRITE_SECTIONS): Likewise.
140 * scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
141 (OTHER_READWRITE_SECTIONS): Likewise
143 * emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
144 (STACK_ADDR): Define.
145 * emulparams/armelf_oabi.sh: As for armelf.sh.
146 * emulparams/elf32mcore.sh: As for armelf.sh.
147 * emulparams/h8300elf.sh: As for armelf.sh.
148 * emulparams/mn10200.sh: As for armelf.sh.
149 * emulparams/shelf.sh: As for armelf.sh.
151 * emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
152 (OTHER_END_SYMBOLS): Define.
153 * emulparams/m32relf.sh: As for elf32fr30.sh.
154 * emulparams/h8300helf.sh: As for elf32fr30.sh.
155 * emulparams/h8300self.sh: As for elf32fr30.sh.
157 * emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
158 defines with RELOCATING test.
159 (OTHER_SDATA_SECTIONS): Likewise.
160 (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
161 (OTHER_END_SYMBOLS): ..this.
162 * emulparams/crislinux.sh: As for criself.sh.
164 * emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
166 (OTHER_RELOCATING_SECTIONS): Delete, replacing with..
167 (OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
168 normal and linkonce sections as seen in input files.
169 * emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
170 (TEXT_DYNAMIC): Likewise.
171 (INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
172 (OTHER_SDATA_SECTIONS): Likewise.
173 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
174 * emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
175 * emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
176 * emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
177 * emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
178 (OTHER_PLT_RELOC_SECTIONS): Likewise.
179 (OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
180 sections as seen in input files.
181 * emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
182 * emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
184 (OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
185 (OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
186 * emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
187 (OTHER_SECTIONS): Instead, use this..
188 (OTHER_END_SYMBOLS): ..and this.
190 * emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
191 * emulparams/elf32bsmip.sh: Likewise.
192 * emulparams/elf32btsmip.sh: Likewise.
193 * emulparams/elf32ebmip.sh: Likewise.
194 * emulparams/elf32lmip.sh: Likewise.
195 * emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
196 * emulparams/elf32lsmip.sh: Likewise.
197 * emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
198 * emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
199 * emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
200 * emulparams/elf64btsmip.sh: Likewise.
201 * emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
202 * emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
203 * emulparams/elf32ppclinux.sh: Likewise.
204 * emulparams/elf32ppcsim.sh: Likewise.
205 * emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
206 * emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
207 * emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
208 * emulparams/h8300self.sh: Likewise.
209 * emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
210 * emulparams/sh.sh: Comment.
211 * emulparams/shl.sh: Source sh.sh, remove duplicates.
212 * emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
213 * emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
215 2001-11-21 David Heine <dlheine@tensilica.com>
216 Alan Modra <amodra@bigpond.net.au>
218 * ldlang.c (map_input_to_output_sections): Replace "break"
219 accidentally removed with 2001-08-03 change.
220 (lang_gc_sections_1): Likewise.
222 2001-11-21 Alan Modra <amodra@bigpond.net.au>
224 * ldlang.c (walk_wild_section): Move sec == NULL case out of loop.
226 2001-11-20 Angela Marie Thomas <angela@redhat.com>
228 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Use NULL instead
229 of false when calling lang_size_sections.
230 * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
232 2001-11-15 Alan Modra <amodra@bigpond.net.au>
234 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Only emit this
235 function when LDEMUL_FINISH isn't set to the same name. Don't
236 call ${LDEMUL_FINISH}.
237 (ld_${EMULATION_NAME}_emulation): Call $LDEMUL_FINISH if defined.
238 * emultempl/armelf.em (arm_elf_finish): Call
239 gld${EMULATION_NAME}_finish.
240 * emultempl/hppaelf.em (hppaelf_finish): Rename to
241 gld${EMULATION_NAME}_finish. Call bfd_elf32_discard_info and
242 hppaelf_layout_sections_again if necessary.
243 (need_laying_out): New var.
244 (hppaelf_layaout_sections_again): Rename to
245 hppaelf_layout_sections_again. Clear need_laying_out.
246 (PARSE_AND_LIST_OPTIONS): Format text.
248 2001-11-14 H.J. Lu <hjl@gnu.org>
250 * emultempl/armelf.em (arm_elf_finish): Renamed from
251 gld${EMULATION_NAME}_finish.
252 (LDEMUL_FINISH): Set to arm_elf_finish.
254 2001-11-14 Daniel Jacobowitz <drow@mvista.com>
256 * emultempl/elf32.em (gld${EMULATION_NAME}_finish): New.
257 (struct ld_emulation_xfer_struct): Use it.
259 Tue Nov 13 11:27:14 2001 Ross Alexander <ross.alexander@uk.neceur.com>
261 * emulparams/elf64hppa.sh (OTHER_BSS_END_SYMBOLS): Add
262 additional symbols referenced by newer crt0.o files from HP.
264 2001-11-12 Anthony Green <green@redhat.com>
266 * emulparams/armelf.sh (DATA_START_SYMBOLS): New symbol.
268 2001-11-12 Alfred M. Szmidt <ams@kemisten.nu>
270 * Makefile.am (GENSCRIPTS): Quote ${exec_prefix}.
271 * Makefile.in: Regenerate.
273 2001-11-02 Stephane Carrez <Stephane.Carrez@worldnet.fr>
275 * ld.texinfo: Use @command for commands, @option for options.
276 * Makefile.am (POD2MAN): Use 'GNU Development Tools' for
278 * Makefile.in: Rebuild.
280 2001-11-04 Chris Demetriou <cgd@broadcom.com>
282 * configure.tgt (mips*el-*-netbsd*, mips*-*-netbsd*):
283 Add support for targets.
285 2001-11-02 Nick Clifton <nickc@cambridge.redhat.com>
287 * configure.in (ALL_LINGUAS): Add "fr" and "sv"
288 * configure: Regernate.
289 * po/fr.po: New file.
290 * po/sv.po: New file.
292 2001-11-01 NIIBE Yutaka <gniibe@m17n.org>
294 * configure.tgt (sh-*-linux): Set targ_emul, targ_extra_emuls
295 as little endian default and to support big endian.
297 2001-11-01 Chris Demetriou <cgd@broadcom.com>
299 * ld.texinfo (Options): Document new option, -nostdlib.
300 * lexsup.c (OPTION_NOSTDLIB): New definition.
301 (ld_options): Add entry for "nostdlib".
302 (parse_args): Handle OPTIONS_NOSTDLIB.
303 * ldfile.c (ldfile_add_library_path): Don't add directories
304 to the search path if they weren't specified on the command line
305 and -nostdlib was specified.
306 * ld.h (ld_config_type): New member only_cmd_line_lib_dirs.
308 2001-10-31 Nick Clifton <nickc@cambridge.redhat.com>
310 * lexsup.c (parse_args): Prevent infinite parsing loop when
311 "-rpath.a" is specified on the command line.
312 Replace calls to fprintf with calls to einfo.
314 2001-10-31 John Marshall <jmarshall@acm.org>
316 * ld.texinfo: A historical requirement that MEMORY and SECTIONS
317 appear only once across all the linker scripts involved in a link
318 invocation no longer applies. Make the documentation reflect
321 2001-10-31 NIIBE Yutaka <gniibe@m17n.org>
323 * configure.tgt: Supports sh3/sh4/sh3eb/sh4eb-unknown-linux-gnu
325 (sh-*-linux*): Added targ_extra_libpath.
327 2001-10-31 David Heine <dlheine@tensilica.com>
329 * ldlang.c (lang_size_sections): Keep a valid output_offset field
330 for padding statements.
332 2001-10-30 Hans-Peter Nilsson <hp@bitrange.com>
334 * configure.tgt (mmix-*-*): New target.
335 * Makefile.am (ALL_EMULATIONS): Add eelf64mmix.o and emmo.o.
336 Add dependencies to match.
337 * emulparams/mmo.sh, emulparams/elf64mmix.sh, emultempl/mmo.em,
338 emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em,
339 scripttempl/mmo.sc: New files.
340 * gen-doc.texi: @set MMIX.
342 [MMIX] Add MMIX node.
343 * Makefile.in: Regenerate.
345 2001-10-29 Kazu Hirata <kazu@hxi.com>
347 * ldlang.c: Fix a comment typo.
349 2001-10-23 Alan Modra <amodra@bigpond.net.au>
351 * configure.host: Move alpha*-*-linux-gnu* entry to generic
352 entries, and match *-*-linux*.
354 2001-10-20 Alan Modra <amodra@bigpond.net.au>
356 * ldgram.y (mri_script_command): Surround processing of INCLUDE
357 with ldlex_script, ldlex_popstate.
358 (ifile_p1): Likewise.
359 * ldlex.l (EOF): Don't BEGIN(SCRIPT). Restore lineno from the
361 (lex_push_file): Save current lineno to lineno_stack. Set lineno
362 to 1. Don't BEGIN(SCRIPT).
363 (lex_redirect): Similarly.
364 * ldmain.c (main): Set yydebug non-zero if YYDEBUG.
366 2001-10-20 Nick Clifton <nickc@cambridge.redhat.com>
368 * scripttempl/armcoff.sc: Define __EH_FRAME_BEGIN__ and
369 __EH_FRAME_END__ and accept eh frames into data section.
370 Add ctor and dtor sections.
372 2001-10-19 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
374 * pe-dll.c (autofilter_objectlist): Add gcrt0.o.
375 (auto-export): Fix indentation.
377 2001-10-18 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
379 * pe-dll.c (autofilter_objectlist): Add startup objects
381 (auto-export): Constify char * p.
382 Extract file basename and use strcmp rather than ststr
385 2001-10-18 Chris Demetriou <cgd@broadcom.com>
387 * ldmain.c (get_emulation): Improve comment about the handling
390 2001-10-17 Alan Modra <amodra@bigpond.net.au>
392 * po/POTFILES.in: Regenerate.
394 2001-10-16 Vassili Karpov <malc@pulsesoft.com>
396 * emultempl/elf32.em (gld*_list_options): Remove extra '\t' from
397 -z nocopyreloc and -z nocombreloc usage strings.
399 2001-10-12 Vassili Karpov <malc@pulsesoft.com>
401 * emultempl/elf32.em (gld*_list_options): Include -z nocopyreloc
404 2001-10-11 Aleksey Romanov <aromanov@ennovatenetworks.com>
406 * scripttempl/armaout.sc: Place .bss section after end of aligned
407 data section to match behaviour of aout code in constructrion of
410 2001-10-11 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
412 * pe-dll.c (autofilter_entry_type autofilter_liblist: Add
413 startup files for mingw32 dlls to list.
415 2001-10-10 Chris Demetriou <cgd@broadcom.com>
417 * emultempl/elf32.em: Fix shell 'if' usage for portability.
419 2001-10-08 Aldy Hernandez <aldyh@redhat.com>
421 * configure.tgt (targ): Add arm9e-*-elf.
423 2001-10-05 H.J. Lu <hjl@gnu.org>
425 * genscripts.sh: Fix a typo in the last change.
427 2001-10-05 Jakub Jelinek <jakub@redhat.com>
429 * emultempl/elf32.em (gld_*_list_options): Include -z combreloc and
430 -z nocombreloc in usage.
432 2001-10-03 Jim Blandy <jimb@redhat.com>
434 * genscripts.sh: Include a comment at the top of each generated
435 script, explaining its purpose.
437 2001-10-03 Vassili Karpov <malc@pulsesoft.com>
439 * emultempl/elf32.em (parse_args): Handle -z nocopyreloc.
440 * NEWS: Mention -z nocopyreloc.
441 * ld.texinfo (Options): Describe nocopyreloc.
443 2001-10-03 Alan Modra <amodra@bigpond.net.au>
445 * configure: Regenerate.
447 2001-10-02 Alan Modra <amodra@bigpond.net.au>
449 * ldver.h (ld_program_version): Remove declaration.
450 * lexsup.c (parse_args): Move printing of copyright message..
451 * ldver.c (ldversion): .. to here.
452 Use BFD_VERSION_STRING in place of BFD_VERSION.
453 (ld_program_version): Remove.
454 * Makefile.am (Makefile): Depend on bfd/configure.in.
456 * Makefile.in: Regenerate.
458 2001-09-30 Hans-Peter Nilsson <hp@bitrange.com>
460 * Makefile.am: Update dependencies with "make dep-am".
461 * Makefile.in: Regenerate.
463 2001-09-29 John Reiser <jreiser@BitWagon.com>
465 * ldlang.c (lang_common): Conditionally inhibit Common allocation.
466 * lexsup.c: Add --no-define-common commandline option.
467 * ldgram.y: Add INHIBIT_COMMON_ALLOCATION script command.
469 * ld.h: Add command_line.inhibit_common_definition.
470 * ldmain.c (main): Initialize.
471 * ld.texinfo: Document.
473 2001-09-26 Alan Modra <amodra@bigpond.net.au>
475 * ldmisc.c (USE_STDARG): Remove.
476 (info_msg): Define using VPARAMS, VA_OPEN, VA_FIXEDARG, VA_CLOSE.
481 * ldmisc.h: Remove #ifdef ANSI_PROTOTYPES and non-ansi
482 declarations. Update copyright.
484 2001-09-24 Charles Wilson <cwilson@ece.gatech.edu>
486 * pe-dll.c: Remove obsoleted declaration of
487 pe_get_data_import_dll_name.
488 (pe_create_import_fixup): Fix thinko.
490 * ld.texinfo(enable-auto-import): Clarify the explanation.
492 2001-09-24 Nick Clifton <nickc@cambridge.redhat.com>
494 * pe-dll.c (pe_create_import_fixup): Revert previous patch.
495 * emultemp/pe.em (pe_data_import_dll): Move definition outside of
496 DLL_SUPPORT controlled code.
498 2001-09-24 Charles Wilson <cwilson@ece.gatech.edu>
500 * emultempl/pe.em(pe_data_import_dll): Make static.
501 (pe_get_data_import_dll_name): New accessor function.
502 * pe-dll.c(pe_create_import_fixup): call
503 pe_get_data_import_dll_name() from pe.em, instead of
504 directly accessing pe_data_import_dll variable from pe.em.
506 2001-09-18 Bruno Haible <haible@clisp.cons.org>
508 * deffilep.y: Include "safe-ctype.h" instead of <ctype.h>.
509 (def_file_add_directive): Use ISSPACE instead of isspace.
510 (def_lex): Use ISDIGIT/ISXDIGIT/ISALPHA/ISALNUM instead of
511 isdigit/isxdigit/isalpha/isalnum.
512 * emultempl/aix.em: Include "safe-ctype.h" instead of <ctype.h>.
513 (gld${EMULATION_NAME}_read_file): Use ISSPACE instead of isspace.
514 * emultempl/elf32.em: Include "safe-ctype.h" instead of <ctype.h>.
515 (gld${EMULATION_NAME}_place_orphan): Use ISALNUM instead of
517 * emultempl/gld960c.em: Include "safe-ctype.h" instead of <ctype.h>.
518 (gld960_set_output_arch): Use ISUPPER/TOLOWER instead of
520 * emultempl/sunos.em: Include "safe-ctype.h" instead of <ctype.h>.
521 (gld${EMULATION_NAME}_search_dir): Use ISDIGIT instead of isdigit.
522 * ldctor.c: Include "safe-ctype.h" instead of <ctype.h>.
523 (ctor_prio): Use ISDIGIT instead of isdigit.
524 * ldfile.c: Include "safe-ctype.h" instead of <ctype.h>.
525 (ldfile_open_file_search): Use ISALPHA instead of isalpha.
526 (ldfile_add_arch): Use ISUPPER/TOLOWER instead of
528 * ldlang.c: Include "safe-ctype.h" instead of <ctype.h>.
529 (stricpy): Use TOLOWER instead of isupper/tolower.
530 (lang_leave_overlay_section): Use ISALNUM instead of isalnum.
531 * ldlex.l: Include "safe-ctype.h" instead of <ctype.h>.
532 (lex_warn_invalid): Use ISPRINT instead of isprint.
533 * ldmain.c: Include "safe-ctype.h" instead of <ctype.h>.
534 (main): For gettext, also set the LC_CTYPE locate facet.
535 (add_keepsyms_file): Use ISSPACE instead of isspace.
536 * lexsup.c: Include "safe-ctype.h" instead of <ctype.h>.
537 (is_num, parse_args): Use ISDIGIT instead of isdigit.
538 * mpw-elfmips.c: Include "safe-ctype.h" instead of <ctype.h>.
539 (gldelf32ebmip_place_orphan): Use ISALNUM instead of isalnum.
540 * mpw-eppcmac.c: Include "safe-ctype.h" instead of <ctype.h>.
541 (gldppcmacos_read_file): Use ISSPACE instead of isspace.
542 * pe-dll.c: Include "safe-ctype.h" instead of <ctype.h>.
543 (quoteput): Use ISSPACE instead of isspace.
544 (pe_dll_generate_implib, pe_process_import_defs): Use ISALNUM
547 2001-09-18 Alan Modra <amodra@bigpond.net.au>
549 * deffilep.y (def_stash_module): Constify "name" param.
551 * pe-dll.c: Replace CONST with const throughout.
552 (quick_symbol): Constify "n1", "n2", "n3" params.
553 (make_singleton_name_thunk): Constify "import" param. Make
554 "buffer_len" a size_t.
555 (make_import_fixup_entry): Constify "name", "fixup_name",
556 "dll_symname" params.
557 (pe_get16): Cast args of bfd_seek. Replace bfd_read with bfd_bread.
558 (pe_get32): Likewise.
559 (pe_implied_import_dll): Likewise.
561 * emultempl/beos.em (sort_by_file_name): Constify "ra", "rb".
562 (sort_by_section_name): Likewise.
564 * emultempl/pe.em: Move defines for arm_epoc_pe before bfd.h included.
565 (make_import_fixup): Cast printf arg, rel->address to long rather
567 (gld_${EMULATION_NAME}_after_open): Don't compare NULL against int.
569 2001-09-15 Alan Modra <amodra@bigpond.net.au>
571 * ldmain.c (main): Rename BufferSize to ld_bufsz because HPUX
572 defines BufferSize. Increase buffer size by one.
574 2001-09-14 Ralf Habacker <Ralf.Habacker@freenet.de>
576 * pe-dll.c (pe_walk_relocs_of_symbol): Fix memory leak.
578 2001-09-14 Kevin Lo <kevlo@openbsd.org>
580 * configure.tgt: Add arm-openbsd target.
582 2001-09-12 H.J. Lu <hjl@gnu.org>
584 * Makefile.am (ALL_EMULATIONS): Move eelf64ppc.o and
586 (ALL_64_EMULATIONS): Here.
587 * Makefile.in: Regenerated.
589 2001-09-12 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
591 * emultempl/pe.em(make_import_fixup): change signature to
592 take asection as well as arelec; we need this for proper
593 error reporting. Only call pe_create_import_fixup() if
594 there is no attempt to add a constant addend to the reloc;
595 otherwise, report error condition.
596 * pe-dll.c(pe_walk_relocs_of_symbol): change signature,
597 since final argument is a pointer to make_import_fixup().
598 Change call to cb() to match make_import_fixup() signature.
599 (make_import_fixup_mark): make buffer_len unsigned.
600 * pe-dll.h: change signature of pe_walk_relocs_of_symbol.
602 2001-09-12 Charles Wilson <cwilson@ece.gatech.edu>
604 * ld.texinfo: add verbose documentation for auto-import
605 direct-addressing workaround, to compliment the terse
608 2001-09-12 Andrew MacLeod <amacleod@redhat.com>
610 * scripttempl/v850.sc: Add gcc_except_table sections.
612 Fri Sep 7 11:34:24 2001 Jeffrey A Law (law@cygnus.com)
614 * emulparams/h8300helf.sh: Move stack to a much higher memory address.
615 * emulparams/h8300self.sh: Similarly.
617 2001-09-05 Danny Smith <dannysmith@users.souceforge.net>
619 * ld.texinfo (Options, --stack): Correct default value for stack
622 2001-09-05 Tom Rix <trix@redhat.com>
624 * emultempl/aix.em : Handle import file XMC_XO and syscall symbols.
626 2001-09-03 Andreas Jaeger <aj@suse.de>
628 * emultempl/beos.em: Declare prototypes for comparions functions,
631 2001-09-02 Andreas Jaeger <aj@suse.de>
633 * emultempl/aix.em: Add missing prototype.
634 * emultempl/lnk960.em: Likewise.
635 * emultempl/vanilla.em: Likewise.
636 * emultempl/armcoff.em: Likewise.
637 * emultempl/armelf_oabi.em: Likewise.
638 * emultempl/beos.em: Likewise.
639 * emultempl/gld960c.em: Likewise.
640 * emultempl/gld960.em: Likewise.
642 * emulparams/elf64alpha.sh (PARSE_AND_LIST_PROLOGUE): Add parameter
643 for prototype declaration.
645 2001-08-31 Eric Christopher <echristo@redhat.com>
646 Jason Eckhardt <jle@redhat.com>
648 * ldmain.c (get_emulation): Add support for -mips32 and -mips64.
650 2001-08-31 Andreas Jaeger <aj@suse.de>
652 * emultempl/pe.em: Add missing prototypes.
653 (gld_${EMULATION_NAME}_after_open): Remove extra args to
654 pe_find_data_imports.
655 (pr_sym): Add unused attribute.
657 2001-08-29 Joel Sherrill <joel@OARcorp.com>
659 * configure.tgt (i[3456]86-*-rtems*, m68*-*-rtems*): Change
660 default from coff to elf.
662 2001-08-29 Jeff Law <law@redhat.com>
664 * emulparams/h8300helf.sh: Resync with h8300elf.sh. Update
666 * emulparams/h8300self.sh: Similarly.
668 Wed Aug 28 13:37:20 2001 J"orn Rennecke <amylaar@redhat.com>
670 * Makefile.am (ALL_EMULATIONS): Add eh8300elf.o, eh8300elf.o and
672 (eh8300elf.c, eh8300helf.c, eh8300self.c): New targets.
673 * configure.tgt (h8300-*-elf*): New case.
674 * emulparams/h8300elf.sh, emulparams/h8300helf.sh: New files.
675 * emulparams/h8300self.sh: New file.
676 * Makefile.in: Regenerated.
678 2001-08-28 Nick Clifton <nickc@cambridge.redhat.com>
680 * ldmain.c (main): Rename BSIZE to BufferSize to avoid collision
683 2001-08-27 Linus Nordberg <linus@swox.com>
684 Alan Modra <amodra@bigpond.net.au>
686 * Makefile.am (ALL_EMULATIONS): Add eelf64ppc.o and eelf64lppc.o.
687 (eelf64ppc.c, eelf64lppc.c): Add make targets.
689 * Makefile.in: Regenerate.
690 * configure.tgt: Add powerpc64 support. Move pdp11, pjl, pj
691 entries to correct alphabetical position.
692 * emulparams/elf64ppc.sh: New.
693 * emulparams/elf64lppc.sh: New.
695 2001-08-27 Nick Clifton <nickc@cambridge.redhat.com>
697 * ldmain.c (main): Declare BSIZE as static.
699 2001-08-23 Jakub Jelinek <jakub@redhat.com>
701 * emultempl/elf32.em (place_orphan): Place orphan .rel* sections
702 into .rel.dyn resp. .rela.dyn if combreloc.
703 (get_script): If .x linker script is equal to .xn, only put it
704 once into the binary.
705 Add .xc and .xsc scripts.
706 (parse_args): Handle -z combreloc and -z nocombreloc.
707 * scripttempl/elf.sc (.rela.sbss): Fix a typo.
708 For .xc and .xsc scripts put all .rel* or .rela* input sections
709 but .rel*.plt and PLT-like sections into .rel.dyn resp. .rela.dyn.
710 * genscripts.sh (GENERATE_COMBRELOC_SCRIPT): Set if SCRIPT_NAME
712 Strip trailing whitespace from script.
713 Generate .xc and .xsc scripts if requested.
714 * ldmain.c (main): Initialize link_info.combreloc and
715 link_info.spare_dynamic_tags.
716 * lexsup.c (OPTION_SPARE_DYNAMIC_TAGS): Define.
717 (ld_options): Add --spare-dynamic-tags option.
718 (parse_args): Likewise.
719 * ld.texinfo: Document -z combreloc and -z nocombreloc.
720 * ldint.texinfo: Document .xc and .xsc linker scripts.
721 * NEWS: Add notes about -z combreloc and SHF_MERGE.
723 2001-08-22 H.J. Lu <hjl@gnu.org>
725 * emulparams/elf32fr30.sh: Add a newline.
727 2001-08-21 Andreas Jaeger <aj@suse.de>
729 * deffilep.y: Add missing prototypes.
730 * pe-dll.c: Likewise.
732 2001-08-20 Alan Modra <amodra@bigpond.net.au>
734 * ldlang.c (insert_pad): Fix typos in last patch.
736 * ldlang.c: When traversing lang_statement_union_type lists,
737 consistently use "header.next" rather than "next".
738 * mpw-eppcmac.c: Likewise.
739 * emultempl/beos.em: Likewise.
740 * emultempl/hppaelf.em: Likewise.
741 * emultempl/pe.em: Likewise.
742 * ldlang.h (union lang_statement_union): Remove "next" field.
744 * ldlang.c (insert_pad): Use offsetof macro.
745 (lang_size_sections): Always neuter padding statements.
746 * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete.
748 * pe-dll.c (pe_dll_fill_sections): Correct type of "relax" param
749 passed to lang_size_sections.
750 (pe_exe_fill_sections): Likewise.
751 * emultempl/pe.em (output_prev_sec_find): Copied from elf32.em.
752 (gld_${EMULATION_NAME}_place_orphan): Merge from elf32.em.
754 2001-08-18 Alan Modra <amodra@bigpond.net.au>
756 * emultempl/aix.em: Formatting fixes.
758 2001-08-18 Alan Modra <amodra@bigpond.net.au>
760 * ldlang.c (insert_pad): Make use of an existing pad statement if
761 available. Move code calculating alignment, adjusting section
762 alignment power, and adjusting dot to ..
763 (size_input_section): .. here. Remove unused relax param.
764 (lang_size_sections): Change boolean `relax' param to boolean *.
765 Adjust call to size_input_section. Make use of insert_pad to
766 place pad after the assignment statement. If relaxing, zap
768 (reset_memory_regions): Reset output_bfd section sizes too.
769 (relax_again): Move to..
770 (lang_process): ..here. Adjust call to lang_size_sections, and
771 remove duplicated code.
772 * ldlang.h (lang_size_sections): Change `relax' param to boolean *.
774 2001-08-17 Alan Modra <amodra@bigpond.net.au>
776 * ld.texinfo: Document that fill values now use the four least
778 * emulparams/elf32fr30.sh (NOP): Update.
779 * emulparams/elf32mcore.sh: Likewise.
780 * emulparams/elf64_s390.sh: Likewise.
781 * emulparams/elf_i386.sh: Likewise.
782 * emulparams/elf_i386_be.sh: Likewise.
783 * emulparams/elf_i386_chaos.sh: Likewise.
784 * emulparams/elf_i386_ldso.sh: Likewise.
785 * emulparams/elf_s390.sh: Likewise.
786 * emulparams/elf_x86_64.sh: Likewise.
787 * emulparams/i386moss.sh: Likewise.
788 * emulparams/i386nw.sh: Likewise.
789 * emulparams/m68kelf.sh: Likewise.
790 * scripttempl/elf.sc: Update NOP comment.
791 * scripttempl/elfi370.sc: Likewise.
792 * scripttempl/elfm68hc11.sc: Likewise.
793 * scripttempl/elfm68hc12.sc: Likewise.
794 * scripttempl/nw.sc: Likewise.
796 2001-08-15 Tom Rix <trix@redhat.com>
798 * ldgram.y (saved_script_handle): Initialize to NULL.
799 * ldmain.c (main): Change check on saved_script_handle.
801 2001-08-14 Alan Modra <amodra@bigpond.net.au>
803 * emultempl/elf32.em: Formatting fixes.
804 (output_prev_sec_find): Test for bfd_ind_section too; do so by
805 looking at sec->owner.
806 (output_rel_find): Move function inside LDEMUL_PLACE_ORPHAN test.
807 (gld${EMULATION_NAME}_place_orphan): Add a few comments. Remove
808 unused code, and reorganize orphan section placement code.
810 * ldlang.c (wild_doit): Rename to lang_add_section.
811 * ldlang.h: Here too.
812 * mpw-elfmips.c: And here.
813 * emultempl/beos.em: And here.
814 * emultempl/elf32.em: And here.
815 * emultempl/hppaelf.em: And here.
816 * emultempl/pe.em: And here.
818 2001-08-13 Richard Henderson <rth@redhat.com>
820 * emultempl/needrelax.em: New file.
821 * emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Reference it.
822 * Makefile.am (eelf64_ia64.c): Depend on it.
823 * Makefile.in: Rebuild.
825 2001-08-13 Alan Modra <amodra@bigpond.net.au>
827 * emultempl/elf32.em: For SEC_EXCLUDE sections, ensure that
828 output_section is set non-NULL.
830 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Return
831 `true' for SEC_EXCLUDE sections so that the generic code doesn't
832 needlessly create an output_section_statement. Treat a correctly
833 named output_section_statement with NULL bfd_section as compatible.
835 2001-08-13 Hans-Peter Nilsson <hp@bitrange.com>
837 * emultempl/generic.em: Support EXTRA_EM_FILE.
838 (ld_${EMULATION_NAME}_emulation): Support emulation parameters
839 LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
840 LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
841 LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
842 LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
843 LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
844 LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
845 LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
846 LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
847 LDEMUL_FIND_POTENTIAL_LIBRARIES.
849 2001-08-12 Richard Henderson <rth@redhat.com>
851 * scripttempl/elf.sc, scripttempl/elfd30v.sc,
852 scripttempl/elfm68hc11.sc, scripttempl/elfm68hc12.sc,
853 scripttempl/v850.sc: Keep .jcr data.
855 2001-08-12 H.J. Lu <hjl@gnu.org>
856 Andrew Haley <aph@cambridge.redhat.com>
857 Nick Clifton <nickc@redhat.com>
859 * ldgram.y (had_script): Change name to saved_script_handle.
860 Change type to file handle.
861 * ld.h (had_script): Rename and retype.
862 * ldfile.c (ldfile_open_command_file): Save the file handle
863 used in saved_script_handle.
864 * lexsup.c (parse_args): Do not allow -c option to alter
866 * ldmain.c (main): Print out the linker script used if
867 --verbose is given. Check saved_script_handle to obtain the
868 external linker script used, or if NULL, dump the builtin
870 * ld.texinfo: Document that --verbose now dumps the linker
871 script used, regardless of whether it was an internal or an
874 2001-08-10 Andreas Jaeger <aj@suse.de>
876 * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
878 * configure: Regenerate.
880 2001-08-09 Alan Modra <amodra@bigpond.net.au>
882 * emultempl/elf32.em (output_prev_sec_find): Add missing prototype.
884 * scripttempl/elf.sc: Move non-text .dynamic section before
885 .plt/.got/.sdata* group.
886 (OTHER_GOT_SECTIONS): Move to immediately after .got.
887 (OTHER_SDATA_SECTIONS): Add.
888 * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than
890 * emulparams/crislinux.sh: Likewise.
891 * emulparams/elf32b4300.sh: Likewise.
892 * emulparams/elf32bmip.sh: Likewise.
893 * emulparams/elf32bmipn32.sh: Likewise.
894 * emulparams/elf32bsmip.sh: Likewise.
895 * emulparams/elf32btsmip.sh: Likewise.
896 * emulparams/elf32ebmip.sh: Likewise.
897 * emulparams/elf32elmip.sh: Likewise.
898 * emulparams/elf32l4300.sh: Likewise.
899 * emulparams/elf32lmip.sh: Likewise.
900 * emulparams/elf32lsmip.sh: Likewise.
901 * emulparams/elf32ltsmip.sh: Likewise.
902 * emulparams/elf64bmip.sh: Likewise.
903 * emulparams/elf64btsmip.sh: Likewise.
904 * emulparams/elf64ltsmip.sh: Likewise.
906 2001-08-08 Alan Modra <amodra@bigpond.net.au>
908 * genscripts.sh: Source the emulparams script before each output
909 script is generated so that variables like `RELOCATING' may affect
910 variables defined in the emulparams script.
912 2001-08-04 Alan Modra <amodra@bigpond.net.au>
914 * emultempl/aix.em: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this
917 * emultempl/beos.em (sort_sections): Modify for 2001-08-03 change,
918 ie. iterate over wild_statement.section_list.
919 (gld${EMULATION_NAME}_place_orphan): Likewise.
921 2001-08-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
923 * scripttempl/elfm68hc12.sc (FINISH_CODE, FINISH_RELOC): New to handle
924 .fini[0-4] sections used by _exit
925 (CTOR, DTOR): Export ctor/dtor symbols; move them to ROM.
926 (*.text,*.data,*.bss): Take into account .text.*, .data.*, .bss.*.
927 * scripttempl/elfm68hc11.sc: Likewise.
929 2001-08-03 H.J. Lu <hjl@gnu.org>
931 * emultempl/beos.em (init): Add the missing initialization.
933 2001-08-03 Alan Modra <amodra@bigpond.net.au>
935 * ld.texinfo (Input Section Basics): Clarify ordering of output
937 * ldlang.c (callback_t): Add wildcard_list param.
938 (walk_wild_section): Remove "section" param. Rewrite for
939 lang_wild_statement_type change. Remove unique_section_p test.
940 (walk_wild_file): Remove "section" param.
941 (walk_wild): Remove "section" and "file" params.
942 (lang_gc_wild): Likewise.
943 (wild): Likewise. Modify for lang_wild_statement_type change.
944 (wild_sort): Likewise. Add "sec" param.
945 (gc_section_callback): Likewise.
946 (output_section_callback): Likewise. Do unique_section_p test.
947 (map_input_to_output_sections): Modify call to wild.
948 (lang_gc_sections_1): Likewise.
949 (print_wild_statement): Modify for lang_wild_statement_type
951 (lang_add_wild): Replace filename, filenames_sorted param with
952 filespec. Replace section_name, sections_sorted,
953 exclude_filename_list with section_list.
954 * ldlang.h (lang_add_wild): Here too.
955 (lang_wild_statement_type): Replace section_name, sections_sorted,
956 and exclude_filename_list with section_list.
957 * ldgram.y (current_file): Delete.
958 (%union): Add wildcard_list.
959 (file_NAME_list): Set type to wildcard_list. Build a linked list
960 rather than calling lang_add_wild for each entry.
961 (input_section_spec_no_keep): Call lang_add_wild here instead.
962 * ld.h (struct wildcard_list): Declare.
963 * mri.c (mri_draw_tree): Modify to suit new lang_add_wild.
965 2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
967 * ldmain.c (main): initialize link_info.pei386_auto_import
968 * pe-dll.c: new tables for auto-export filtering
969 (auto_export): change API, pass abfd for contextual filtering.
970 Loop thru tables of excluded symbols instead of comparing
973 2001-08-02 Paul Sokolovsky <paul.sokolovsky@technologist.com>
975 * pe-dll.c: new variable pe_dll_enable_extra_debug. New
976 static variable current_sec (static struct sec *). Add
977 forward declaration for add_bfd_to_link.
978 (process_def_file): Don't export undefined symbols. Do not
979 export symbols starting with "_imp__". Call auto_export()
981 (pe_walk_relocs_of_symbol): New function.
982 (generate_reloc): add optional extra debugging
983 (pe_dll_generate_def_file): eliminate extraneous initial blank
985 (make_one): enlarge symtab to make room for __nm__ symbols
986 (DATA auto-import support).
987 (make_singleton_name_thunk): New function.
988 (make_import_fixup_mark): New function.
989 (make_import_fixup_entry): New function.
990 (pe_create_import_fixup): New function.
991 (add_bfd_to_link): Specify that 'name' argument is a CONST
993 * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
994 declare new functions pe_walk_relocs_of_symbol and
995 pe_create_import_fixup.
996 * emultempl/pe.em: add new options --enable-auto-import,
997 --disable-auto-import, and --enable-extra-pe-debug.
998 (make_import_fixup): New function.
999 (pe_find_data_imports): New function.
1000 (pr_sym): New function.
1001 (gld_${EMULATION_NAME}_after_open): Add optional extra pe
1002 debugging. Call pe_find_data_imports. Mark .idata as DATA, not
1005 2001-08-02 Charles Wilson <cwilson@ece.gatech.edu>
1007 * ld.texinfo: add additional documentation for
1008 --export-all-symbols. Document --out-implib,
1009 --enable-auto-image-base, --disable-auto-image-base,
1010 --dll-search-prefix, --enable-auto-import, and
1011 --disable-auto-import.
1012 * ldint.texinfo: Add detailed documentation on auto-import
1015 2001-07-30 Nick Clifton <nickc@cambridge.redhat.com>
1017 * ld.texinfo (Simple Assignments): Fix computation in SECTIONS
1020 2001-07-24 Alan Modra <amodra@bigpond.net.au>
1022 * Makefile.am: Update dependencies with "make dep-am".
1023 * Makefile.in: Regenerate
1025 2001-07-23 Alan Modra <amodra@bigpond.net.au>
1027 * ldcref.c (check_section_sym_xref): New function.
1028 (check_nocrossrefs): Call it.
1029 (check_nocrossref): Interate over h->refs here instead of..
1030 (check_refs): ..here. Pass in the symbol name, section, and bfd
1031 rather than hash_entry pointers.
1032 (struct check_refs_info): Keep symbol name rather than hash entry.
1034 (check_reloc_refs): Tweak for above changes in check_refs_info.
1035 Only report references to section syms when symname is NULL to
1036 prevent duplicate messages for the same reloc.
1038 2001-07-19 Nick Clifton <nickc@cambridge.redhat.com>
1040 * ldexp.c (exp_print_tree): Use stderr if config.map_file is not
1041 available. Do not print NULL trees.
1042 (exp_print_token): Print unknown tokens with values > 126 as
1043 decimal values not ASCII characters.
1045 * ldlang.c (lang_leave_overlay): If a region is specified assign
1046 it to all sections inside the overlay unless they have been
1047 assigned to the own, non-default, memory region.
1049 * README: Add header for consistency with other README files.
1051 2001-07-14 H.J. Lu <hjl@gnu.org>
1053 * emultempl/elf32.em (output_prev_sec_find): Never return
1054 bfd_abs_section_ptr, bfd_com_section_ptr nor
1055 bfd_und_section_ptr.
1057 2001-07-14 Nick Clifton <nickc@cambridge.redhat.com>
1059 * Makefile.am (em32relf.c): Change dependency from generic.em to
1061 * Makefile.in: Regenerate.
1063 2001-07-14 matthew green <mrg@eterna.com.au>
1065 * configure.tgt (i386-*-netbsdelf*): New target.
1066 (i386-*-netbsd*): Set targ_extra_emuls to `elf_i386'
1068 2001-07-13 Jakub Jelinek <jakub@redhat.com>
1070 * emultempl/elf32.em (output_prev_sec_find): New.
1071 (place_orphan): Use it.
1073 2001-07-11 H.J. Lu <hjl@gnu.org>
1075 * ldmain.c (main): Fix typos in the last change.
1077 2001-07-11 Jakub Jelinek <jakub@redhat.com>
1079 * ldmain.c (main): Disallow -F and -f without -shared.
1081 2001-07-11 Nick Clifton <nickc@cambridge.redhat.com>
1083 * emultempl/pe.em (after_open): Check for the output_bfd not
1084 having any coff_data structure allocated to it.
1086 2001-07-09 David O'Brien <obrien@FreeBSD.org>
1088 * emultempl/elf32.em: Do not assuming that contents of the buffer
1089 returned from basename function will remain unchanged accross other
1092 2001-07-03 H.J. Lu <hjl@gnu.org>
1094 * scripttempl/elf.sc (DYNAMIC_PAD): Revert the change made on
1095 2001-07-03. It creates dynamic entries even for static binaries.
1097 2001-07-03 Jakub Jelinek <jakub@redhat.com>
1099 * scripttempl/elf.sc (DYNAMIC_PAD): New variable.
1100 (DYNAMIC): Use it to reserve few dynamic entries for
1103 2001-06-27 Alan Modra <amodra@bigpond.net.au>
1105 * emulparams/hppa64linux.sh: New file.
1106 * configure.tgt: hppa*64*-*-linux* uses hppa64linux.sh
1107 * Makefile.am (ALL_64_EMULATIONS): Add ehppa64linux.o
1108 (ehppa64linux.c): Add rule to make it.
1110 * Makefile.in: Regenerate.
1112 2001-06-21 Hans-Peter Nilsson <hp@axis.com>
1114 * ld.texinfo (Options, -r): Mention restrictions when using
1115 different object formats.
1117 2001-06-19 Hans-Peter Nilsson <hp@axis.com>
1119 * ldlang.c (lang_check): Emit fatal error if relocatable link
1120 between different object flavours with relocations in input.
1122 2001-06-19 H.J. Lu <hjl@gnu.org>
1124 * ld.texinfo (-E, --export-dynamic): Mention --version-script.
1125 (--version-script): Mention the language support.
1127 2001-06-19 H.J. Lu <hjl@gnu.org>
1129 * ldlang.c (lang_check): Revert the change mode on 2001-06-15.
1131 2001-06-18 H.J. Lu <hjl@gnu.org>
1133 * Makefile.am (ld.1): Remove the prefix `$(srcdir)/'.
1134 (diststuff): Add $(MANS).
1135 * Makefile.in: Regenerated.
1139 2001-06-18 Hans-Peter Nilsson <hp@axis.com>
1141 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
1142 Update for API change in bfd_elf${ELFSIZE}_size_dynamic_sections.
1143 * mpw-elfmips.c (gldelf32ebmip_before_allocation): Ditto.
1144 * ld.h (args_type): Remove member export_dynamic. All users
1145 changed to use struct bfd_link_info member.
1147 * Makefile.am (ecriself.c, ed10velf.c, ei386moss.c): Depend on
1148 $(srcdir)/emultempl/elf32.em, not $(srcdir)/emultempl/generic.em.
1149 * Makefile.in: Regenerate.
1151 2001-06-18 H.J. Lu <hjl@gnu.org>
1153 * ldlang.c (init_os): Add the newline to the einfo call.
1154 (lang_check): Likewise.
1155 (lang_do_version_exports_section): Likewise.
1157 2001-06-15 H.J. Lu <hjl@gnu.org>
1159 * lexsup.c (parse_args); Save optind to report unrecognized
1162 2001-06-15 Hans-Peter Nilsson <hp@axis.com>
1164 * ldlang.c (lang_check): Emit fatal error if relocatable link
1165 between different object flavours.
1167 * lexsup.c (parse_args) <case OPTION_EXPORT_DYNAMIC, case 'E'>:
1168 Set new link_info member export_dynamic.
1169 * ldmain.c (main): Initialize new link_info member export_dynamic.
1171 2001-06-12 Nick Clifton <nickc@cambridge.redhat.com>
1173 * ldlang.c (walk_wild): Only call walk_wild_file if
1174 lookup_name returns something.
1175 (lookup_name): If load_symbols fails, return NULL.
1176 (load_symbols): Change to a boolean function.
1177 (open_input_bfds): If load_symbols fails then do not make the
1180 2001-06-08 Alan Modra <amodra@bigpond.net.au>
1182 * ldlang.c (record_bfd_errors): Remove.
1184 * emultempl/aix.em: Fix copyright dates.
1186 2001-06-07 Andreas Jaeger <aj@suse.de>
1188 * elf_x86_64.sh (NONPAGED_TEXT_START_ADDR): Increase.
1189 (TEXT_START_ADDR): Likewise.
1191 2001-06-06 Martin Schwidefsky <schwidefsky@de.ibm.com>
1193 * configure.host: Set HOSTING_CRT0/HOSTING_LIBS correctly for s/390.
1195 2001-06-05 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
1197 * emultempl/pe.em (init): Reduce default stack reserve to 0x200000.
1199 2001-05-31 H.J. Lu <hjl@gnu.org>
1201 * ldlang.c (open_input_bfds): Don't change the bfd error
1202 handler whilst loading symbols.
1204 2001-05-28 Nick Clifton <nickc@cambridge.redhat.com>
1206 * configure.tgt: Remove i370-mvs architecture, it is not currently
1209 2001-05-25 H.J. Lu <hjl@gnu.org>
1211 * emulparams/ppcmacos.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
1212 like emulparams/aixppc.sh.
1214 2001-05-25 H.J. Lu <hjl@gnu.org>
1216 * emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Move
1217 setting of output_filename after bfd_scan_arch.
1218 * emultempl/pe.em: Likewise.
1220 2001-05-25 H.J. Lu <hjl@gnu.org>
1222 * emulparams/aixrs6.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
1223 like emulparams/aixppc.sh.
1225 * emultempl/aix.em (sc): Use ${srcdir}/emultempl/ostring.sed
1226 instead of ${srcdir}/emultempl/stringify.sed.
1228 2001-05-25 Timothy Wall <twall@oculustech.com>
1230 * emulparams/elf64_aix.sh: Change settings to match IBM linker
1233 2001-05-25 Alan Modra <amodra@one.net.au>
1235 * configure.host: Replace linuxoldld with linux*oldld.
1236 * configure.tgt: Likewise.
1238 2001-05-24 H.J. Lu <hjl@gnu.org>
1240 * emultempl/stringify.sed: Removed again.
1242 2001-05-24 H.J. Lu <hjl@gnu.org>
1244 * emultempl/aix.em (OUTPUT_ARCH): Defined.
1245 (gld${EMULATION_NAME}_before_parse): Initialize
1246 ldfile_output_architecture, ldfile_output_machine and
1247 ldfile_output_machine_name from ${OUTPUT_ARCH} if possible.
1248 * emultempl/beos.em: Likewise.
1249 * emultempl/elf32.em: Likewise.
1250 * emultempl/linux.em: Likewise.
1251 * emultempl/mipsecoff.em: Likewise.
1252 * emultempl/pe.em: Likewise.
1253 * emultempl/sunos.em: Likewise.
1255 2001-05-24 Tom Rix <trix@redhat.com>
1257 * emultempl/aix.em : (gld${EMULATION_NAME}_read_file)
1258 udate import file format.
1259 (change_symbol_mode) New, same
1260 (is_syscall) New, same
1261 * emulparams/aixppc.sh : add SYSCALL_MASK and SYMBOL_MODE_MASK
1262 * emulparams/aixppc64.sh : same
1263 * emulparams/aixrs6.sh : same
1264 * emulparams/ppcmacos.sh : same
1265 * emultempl/aix.em : use strtoull to parse options
1266 * Makefile.am : add eaixppc64 emulation for xcoff64
1267 * Makefile.in : same
1268 * configure.tgt : same
1270 * scripttempl/aix.sc : default text section offset to 0x10000000
1271 default data section offset to 0x20000000
1272 add .sv3264 and .sv64 pseudo sections
1273 loader and debug sections use the currect section offset.
1275 * emultempl/aix.em : Add xcoff64 support
1276 Add -binitfini support
1277 (gld${EMULATION_NAME}_before_parse) -binitfini
1278 (gld${EMULATION_NAME}_parse_args) same
1279 (gld${EMULATION_NAME}_before_allocation) format change for special
1282 * emulparams/aixppc64.sh : New file for xcoff64 support
1284 2001-05-23 Alexandre Oliva <aoliva@redhat.com>
1286 * emultempl/elf32.em (ELF_INTERPRETER_SET_DEFAULT): Use this new
1287 variable to avoid non-portable shell construct.
1289 2001-05-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1291 * ldmain.c (get_emulation): Add -mips5 command line argument.
1293 2001-05-22 Alexandre Oliva <aoliva@redhat.com>
1295 * emulparams/elf_i386_ldso.sh: New, copied from elf_i386.sh.
1296 (ELF_INTERPRETER_NAME): Define it.
1297 * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
1299 * configure.tgt (targ_emul, targ_extra_emuls)
1300 [i[3456]86-*-solaris2*, i[3456]86-*-solaris*]: Use elf_i386_ldso
1301 as primary, elf_i386 as extra.
1302 * Makefile.am (ALL_EMULATIONS): Added eelf_i386_ldso.o.
1303 (eelf_i386_ldso.c): New rule.
1304 * Makefile.in: Rebuilt.
1306 2001-05-22 Nick Clifton <nickc@redhat.com>
1308 * lexsup.c (ld_options): Allow -I to be an alias for
1309 --dynamic-linker. This is for Solaris compatability.
1310 * ld.texinfo: Document that -I can be used.
1313 2001-05-16 Alan Modra <amodra@one.net.au>
1315 * ldlang.c (wild_doit): Use linker_has_input to reliably determine
1316 whether an input section is the first one assigned to an output
1318 Assorted formatting fixes.
1320 2001-05-14 DJ Delorie <dj@delorie.com>
1322 * Makefile.am (ld.dvi): Search bfd/doc for texinfo files.
1323 * Makefile.in: Ditto.
1325 2001-05-11 Jakub Jelinek <jakub@redhat.com>
1327 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
1328 .gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
1330 * emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
1332 2001-05-11 Jakub Jelinek <jakub@redhat.com>
1334 * ldlang.c (lang_process): Call bfd_merge_sections.
1336 2001-05-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
1338 * ldgram.y: Fix typo.
1340 2001-05-03 H.J. Lu <hjl@gnu.org>
1342 * emultempl/elf32.em: Include "libiberty.h".
1343 (gld${EMULATION_NAME}_vercheck): Call basename () to get the
1344 basename of the bfd filename.
1345 (gld${EMULATION_NAME}_stat_needed): Likewise.
1346 (gld${EMULATION_NAME}_try_needed): Likewise.
1347 (gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
1349 2001-05-02 H.J. Lu <hjl@gnu.org>
1351 * emultempl/pe.em: Include <ctype.h>.
1353 2001-05-02 Johan Rydberg <jrydberg@opencores.org>
1355 * emulparams/elf32openrisc.sh: New file.
1357 * Makefile.am: Add OpenRISC target.
1358 * Makefile.in: Regenerated.
1360 * configure.tgt: Add openrisc-*-* mapping.
1362 2001-05-02 Nick Clifton <nickc@redhat.com>
1364 * emultempl/aix.em: Replace buystring with xstrdup.
1365 * emultempl/beos.em: Replace buystring with xstrdup.
1367 2001-05-02 H.J. Lu <hjl@gnu.org>
1369 * ldfile.c: Include "libiberty.h".
1370 * ldlex.l: Likewise.
1372 * ldmisc.c (buystring): Removed.
1373 * ldmisc.h: Likewise.
1375 * ldfile.c: Replace buystring with xstrdup.
1376 * ldlang.c: Likewise.
1377 * ldlex.l: Likewise.
1378 * ldmain.c: Likewise.
1379 * ldmisc.c: Likewise.
1380 * lexsup.c: Likewise.
1381 * mpw-eppcmac.c: Likewise.
1383 2001-04-30 Andreas Jaeger <aj@suse.de>
1385 * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value.
1387 2001-04-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
1389 * ldlang.c (load_symbols): Give emulation a chance
1390 to process unrecognized file before fatal error is
1391 reported, not after.
1393 2001-04-27 Sean McNeil <sean@mcneil.com>
1395 * configure.tgt: Add arm-vxworks target.
1396 * scripttempl/armcoff.sc: Support .text or .data as a section name
1400 2001-04-13 J.T. Conklin <jtc@redback.com>
1402 * ld.texinfo: Document --fatal-warnings.
1405 * ldmisc.c (vfinfo): Set flag to inhibit making executable if
1406 warnings have been turned into errors.
1407 * lexsup.c (OPTION_WARN_FATAL): Define.
1408 (ld_options): Entry for --fatal-warnings.
1409 (parse_args): Handle OPTION_WARN_FATAL.
1410 * ld.h (ld_config_type): Add fatal_warnings field.
1412 2001-04-13 Jakub Jelinek <jakub@redhat.com>
1414 * ldmain.c (main): Default to discard_sec_merge.
1415 * lexsup.c (OPTION_DISCARD_NONE): Define.
1416 (ld_options): Add --discard-none.
1417 (parse_args): Handle OPTION_DISCARD_NONE.
1418 * ldlang.c (wild_doit): SEC_MERGE should be set in the output
1419 section only if SEC_MERGE and SEC_STRINGS flags and entsize of
1420 all its input sections match.
1422 2001-04-05 Steven J. Hill <sjhill@cotw.com>
1424 * Makefile.am (ALL_EMULATIONS): Add eelf32ltsmip.o.
1425 (ALL_64_EMULATIONS): Add eelf64btsmip.o and eelf64ltsmip.o.
1426 (eelf32ltsmip.c): New target.
1427 (eelf64btsmip.c): Likewise.
1428 (eelf64ltsmip.c): Likewise.
1429 * Makefile.in: Regenerated.
1431 * configure.tgt (mips*el-*-linux-gnu): Uses traditional MIPS
1433 (mips*-*-linux-gnu*): Likewise.
1435 * emulparams/elf32ltsmip.sh: New. Traditional little endian
1437 * emulparams/elf64btsmip.sh: New. Traditional 64bit big endian
1439 * emulparams/elf64ltsmip.sh: New. Traditional 64bit little
1442 2001-04-05 Hans-Peter Nilsson <hp@axis.com>
1444 * emulparams/criself.sh (EXECUTABLE_SYMBOLS): Cannot provide
1445 correct value of __Stext here.
1446 (TEXT_START_SYMBOLS): Define; always define __Stext, to start of
1449 * emulparams/crislinux.sh: Remove FIXME.
1451 2001-04-02 Alan Modra <alan@linuxcare.com.au>
1453 * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 64k.
1454 (TEXT_START_ADDR, TARGET_PAGE_SIZE): Likewise.
1456 2001-03-27 Hans-Peter Nilsson <hp@axis.com>
1458 * configure.tgt (cris-*-*): Change default emulation to criself.
1459 (cris-*-*aout*): New rule.
1461 2001-03-27 Matthew Wilcox <willy@ldl.fc.hp.com>
1463 * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 0x4000.
1464 (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
1466 2001-03-26 Andreas Jaeger <aj@suse.de>
1468 * ld.texinfo (Overview): Fix syntax in texi code.
1470 2001-03-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1472 * ld.texinfo: Put @c man indications to generate the ld man page.
1473 When generating man, define all the variables. Define SEEALSO
1474 and SYNOPSIS. Re-organize some lines to avoid the cross references.
1475 * Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variables.
1476 (ld.1): Generate from ld.texinfo.
1477 * Makefile.in: Regenerate.
1479 2001-03-23 Mark Elbrecht <snowball3@bigfoot.com>
1481 * scripttempl/i386go32.sc: Support the GCC flags '-ffunction-sections'
1482 and '-fdata-sections'. Set the VMA of STABS sections to zero.
1484 2001-03-17 Ulrich Drepper <drepper@redhat.com>
1486 * emultmpl/elf32.em (gld${EMULATION_NAME}_search_needed): If NAME
1487 is an absolute path look only for this file and not along the path.
1489 2001-03-17 Ulrich Drepper <drepper@redhat.com>
1491 * emultempl/elf32.em (OPTION_GROUP): New macro.
1492 Add new option Bgroup to longopts.
1493 (gld*_parse_args): Handle GROUP_OPTION and recognize -z defs.
1494 (gld*_list_options): Add -Bgroup and -z defs.
1495 * ld.1: Document -Bgroup and -z defs.
1496 * ld.texinfo: Likewise.
1498 2001-03-07 Michael Meissner <meissner@redhat.com>
1500 * scripttempl/elfd10v.sc (.rodata,.rodata1,.data1,.sdata): Deal
1501 with sections created by -fdata-sections.
1502 (.dynbss,.bss): Ditto.
1504 2001-03-05 Alan Modra <alan@linuxcare.com.au>
1506 * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
1507 after_allocation_default, not gld..._before_allocation.
1509 2001-02-27 Alan Modra <alan@linuxcare.com.au>
1511 * configure.in (BFD_VERSION): New.
1512 (AM_INIT_AUTOMAKE): Use $BFD_VERSION.
1513 * configure: Regenerate.
1514 * Makefile.am: Run "make dep-am"
1515 * Makefile.in: Regenerate.
1517 2001-02-26 Timothy Wall <twall@cygnus.com>
1519 * emulparams/elf64_aix.sh: Add additional read-only sections;
1520 uncomment lines which are now required.
1522 2001-02-26 H.J. Lu <hjl@gnu.org>
1524 * ldlang.c (open_input_bfds): Set the bfd error handler so
1525 that problems can be caught whilst loading symbols.
1526 (record_bfd_errors): New function: Report BFD errors and mark
1527 the executable output as being invalid.
1529 2001-02-22 Timothy Wall <twall@cygnus.com>
1531 * configure.host: Add configuration for ia64-*-aix*.
1532 * Makefile.am (ALL_64_EMULATIONS): Add emulation for ia64-*-aix*.
1533 Add dependencies for eelf64_aix.c.
1534 * Makefile.in: Regenerate.
1535 * configure.tgt: Add ia64-*-aix* mapping.
1536 * emulparams/elf64_aix.sh: Add settings for elf64 on aix5.
1537 * testsuite/ld-bootstrap/bootstrap.exp: Exclude ia64 flavor from
1540 2001-02-20 H.J. Lu <hjl@gnu.org>
1542 * ldfile.c (ldfile_open_file): Set entry->search_dirs_flag to
1543 false if we found the file.
1545 2001-02-18 David O'Brien <obrien@FreeBSD.org>
1547 * configure.tgt: Add FreeBSD/Alpha, FreeBSD/x86-64, FreeBSD/ia64,
1548 FreeBSD/PowerPC, FreeBSD/arm, and FreeBSD/sparc64 entries.
1550 2001-02-18 lars brinkhoff <lars@nocrew.org>
1552 * Makefile.am: Add PDP-11 target.
1553 * configure.tgt: Likewise.
1554 * emulparams/pdp11.sh: New file.
1556 2001-02-17 David O'Brien <obrien@FreeBSD.org>
1558 * configure.host: Add a generic FreeBSD configuration entry such that
1559 all [modern] FreeBSD systems on all platforms will look the same.
1561 2001-02-14 H.J. Lu <hjl@gnu.org>
1563 * configure.tgt: Remove mention of earmelf_linux26.
1565 2001-02-13 Richard Henderson <rth@redhat.com>
1567 * emulparams/elf64_ia64.sh (OTHER_GOT_SYMBOLS): Remove.
1569 2001-02-13 H.J. Lu <hjl@gnu.org>
1571 * ldexp.h (node_type): Add etree_provided.
1572 * ldexp.c (exp_fold_tree): Handle etree_provided. Set the node
1573 type to etree_provided if defined by PROVIDE. Allow updating
1575 (exp_print_tree): Handle etree_provided.
1576 * mpw-elfmips.c (gldelf32ebmip_find_exp_assignment): Handle
1579 2001-02-09 David Mosberger <davidm@hpl.hp.com>
1581 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add
1582 .IA_64.unwind.* pattern to unwind table section and
1583 .IA_64.unwind_info* pattern to unwind info section.
1585 2001-02-09 Martin Schwidefsky <schwidefsky@de.ibm.com>
1587 * Makefile.am: Add linux target for S/390.
1588 * Makefile.in: Likewise.
1589 * configure.host: Likewise.
1590 * configure.tgt: Likewise.
1591 * emulparams/elf64_s390.sh: New file.
1592 * emulparams/elf_s390.sh: New file.
1594 2001-02-09 Jakub Jelinek <jakub@redhat.com>
1596 * configure.tgt (sparc64-*-linux-gnu*): Add elf32_sparc into
1598 (sparc-*-linux-gnu*): Add elf64_sparc into targ_extra_libpath.
1600 2001-02-06 Philip Blundell <philb@gnu.org>
1602 * Makefile.am: Remove mention of earmelf_linux26.
1603 * Makefile.in: Regenerate.
1605 2001-02-04 Philip Blundell <philb@gnu.org>
1607 * emulparams/armelf_linux.sh (TEXT_START_ADDR): Set to 0x8000.
1608 * emulparams/armelf_linux26.sh: Delete.
1609 * configure.tgt: Remove mention of armelf_linux26 emulation.
1611 2001-02-01 Nick Clifton <nickc@redhat.com>
1613 * ld.1: Replace occurances of -oformat with --oformat.
1615 2001-01-25 Jim Driftmyer <jdrift@stny.rr.com>
1617 * ldlang.c (lang_leave_overlay): Don't set lma_region when
1618 load_base is specified.
1620 2001-01-24 Hans-Peter Nilsson <hp@axis.com>
1622 * emultempl/elf32.em: Correct spelling in comments and listed
1625 2001-01-23 Alan Modra <alan@linuxcare.com.au>
1627 * ldlang.c (lang_leave_overlay): Only set lma_region from the
1628 default for the first section of a group of overlay sections.
1630 2001-01-22 Alan Modra <alan@linuxcare.com.au>
1632 * Makefile.am (GENSCRIPTS): Pass exec_prefix.
1633 * Makefile.in: Regenerate.
1634 * genscripts.sh: Use exec_prefix parameter to specify tool lib.
1635 Check for null tool_dir.
1637 2001-01-16 Jim Wilson <wilson@redhat.com>
1639 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add IA_64.unwind
1640 and IA_64.unwind.info.
1642 2001-01-16 H.J. Lu <hjl@gnu.org>
1644 * ldlang.c (lang_check): Merge the private data only if the
1645 input file has contents.
1647 2001-01-14 Alan Modra <alan@linuxcare.com.au>
1649 * emulparams/hppalinux.sh (OUTPUT_FORMAT): Set to elf32-hppa-linux.
1651 * emultempl/hppaelf.em (hppaelf_after_parse): New function,
1652 enabling search for libmilli. On a relocatable link, make .text
1654 (LDEMUL_AFTER_PARSE): Define.
1655 (hppaelf_finish): Correct spelling of relocatable in comments.
1657 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
1658 rummage through the script for sections on the unique list.
1659 Correct length of strncmp for ".note".
1660 (gld${EMULATION_NAME}_check_needed): Rearrange function.
1662 * ldlang.c (unique_section_list): New var.
1663 (unique_section_p): New function.
1664 (walk_wild_section): Don't match sections on unique_section_list.
1665 (lang_add_unique): New function.
1666 Correct spelling of relocatable in comments.
1668 * ldlang.h (struct unique_sections): Declare.
1669 (unique_section_list): Declare.
1670 (unique_section_p): Declare.
1671 (lang_add_unique): Declare.
1673 * lexsup.c (ld_options): Allow --unique to take an optional arg.
1674 (parse_args [OPTION_UNIQUE]): Call lang_add_unique.
1676 * ld.texinfo (--unique): Update.
1678 2001-01-13 Nick Clifton <nickc@redhat.com>
1680 * lexsup.c (parse_args): Remove spurious white space.
1682 2001-01-12 Nick Clifton <nickc@redhat.com>
1684 * lexsup.c (parse_args): Update copyright date.
1686 2001-01-12 Philip Blundell <pb@futuretv.com>
1688 * configure.host: Set HOSTING_LIBS appropriately for ix86-cygwin.
1690 2001-01-10 Kazu Hirata <kazu@hxi.com>
1692 * scripttempl/h8300.sc: Fix formatting. Fix a comment typo.
1693 * scripttempl/h8300h.sc: Fix formatting.
1694 * scripttempl/h8300s.sc: Likewise.
1695 * scripttempl/h8500.sc: Likewise.
1696 * scripttempl/h8500b.sc: Likewise.
1697 * scripttempl/h8500c.sc: Likewise.
1698 * scripttempl/h8500m.sc: Likewise.
1699 * scripttempl/h8500s.sc: Likewise.
1701 2000-01-07 David O'Brien <obrien@BSDi.com>
1703 * emultempl/elf32.em: Only perform Linux ld hints processing when
1706 2001-01-07 Philip Blundell <philb@gnu.org>
1708 * ld.texinfo (Bug Reporting): Update email address for reports.
1710 2000-12-31 Nick Clifton <nickc@redhat.com>
1712 * lexsup.c (parse_args): Set opterr to 0 and detect unparsed long
1713 options by checking for a return value of '?' not -1.
1715 2000-12-28 Nick Clifton <nickc@redhat.com>
1717 * lexsup.c (struct ld_option): Add new enum value:
1719 (ld_options[]): Change -omagic, -output and -oformat options
1720 to be EXACTLY_TWO_DASHES.
1721 (OUTPUT_COUNT): Use ARRAY_SIZE.
1722 (parse_args): Change parameter 'argc' to unsigned.
1723 Place EXACTLY_TWO_DASHES options into new really_longopts
1725 If getopt_long_only fails, try calling getopt_long using the
1726 really_longopts array.
1727 (help): Print a double dash for both EXACTLY_TWO_DASHES and
1730 * ldlex.h: Fix prototype of parse_args.
1732 * ld.texinfo: Document that long options starting with 'o'
1733 must be preceeded by two dashes. Change example of a single
1734 dashed long option from -oformat to -trace-symbol.
1736 2000-12-26 Danny Smith <danny_r_smith_2001@yahoo.co.nz>
1738 * emultempl/pe.em (OPTION_NO_DEFAULT_EXCLUDES): Define.
1739 (longopts[]): New --no-default-excludes option.
1740 (gld_${EMULATION_NAME}_list_options): Document.
1741 (gld_${EMULATION_NAME}_parse_args): Handle.
1743 2000-12-13 Michael Sokolov <msokolov@ivan.Harhan.ORG>
1745 * ldlang.c (new_stat): Revert the last beautification with "innocent"
1746 whitespace, it breaks the K&R C preprocessor.
1748 2000-12-11 DJ Delorie <dj@redhat.com>
1750 * ld.texinfo: Add notes about --whole-archive and gcc.
1752 2000-11-18 Fred Fish <fnf@be.com>
1754 * lexsup.c (OPTION_ALLOW_SHLIB_UNDEFINED): Define.
1755 (ld_options): Entry for --allow-shlib-undefined.
1756 (parse_args): Handle OPTION_ALLOW_SHLIB_UNDEFINED.
1757 * ldmain.c (main): Initialize link_info.allow_shlib_undefined
1759 * ld.texinfo: Document new command line switch.
1761 2000-12-12 Geoffrey Keating <geoffk@redhat.com>
1763 * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS):
1764 .fixup is actually read/write.
1765 * emulparams/elf32lppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
1766 * emulparams/elf32ppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
1767 * emulparams/elf32lppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
1769 Mon Dec 11 14:50:33 MET 2000 Jan Hubicka <jh@suse.cz>
1771 * NEWS: Add note about x86_64 architecture.
1773 2000-12-06 Mark Elbrecht <snowball3@bigfoot.com>
1775 * scripttempl/i386go32.sc: Use PROVIDE with _etext, _edata, _end.
1776 Set DWARF2 sections to a VMA of zero.
1778 2000-12-01 Joel Sherrill <joel@OARcorp.com>
1780 * configure.tgt (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
1782 (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
1783 (sparc*-*-rtems*): Switched from a.out to ELF.
1785 2000-11-30 Jan Hubicka <jh@suse.cz>
1787 * Makefile.am (ALL_EMULATIONS): Add eelf_x86_64.o
1788 (eelf_x86_64.c): New.
1789 * Makefile.in: Regenerate.
1790 * configure.tgt: Add support for x86_64-*-linux-gnu*.
1791 * emulparams/elf_x86_64.sh: New.
1793 2000-11-30 Hans-Peter Nilsson <hp@axis.com>
1795 * emulparams/crislinux.sh (ENTRY): Change back to _start.
1796 (TEXT_START_SYMBOLS): Remove conditional setting of __start.
1798 * scripttempl/crisaout.sc: Change all RELOCATING not related to
1799 merging non-a.out sections into CONSTRUCTING.
1801 2000-11-28 Nick Clifton <nickc@redhat.com>
1803 * ld.1 (COPYING): Mention that the GNU Free Documentation
1804 License is present in the sources, but not the output, and
1805 also available from the GNU website.
1806 (GNU Free Documentation License): Comment out this section.
1808 2000-11-28 David O'Brien <obrien@dragon.nuxi.com>
1810 * emulparams/elf64alpha.sh (ENTRY): Remove leading underscore as ELF
1813 2000-11-25 David O'Brien <obrien@FreeBSD.org>
1815 * ld.1: Remove old date so it does not give the impression the manpage
1818 2000-11-24 Nick Clifton <nickc@redhat.com>
1820 * configure.tgt (xscale-coff): Add target.
1821 (xscale-elf): Add target.
1823 2000-11-24 Fred Fish <fnf@be.com>
1825 * ldmain.c (main): Remove redundant init of config.make_executable
1828 2000-11-15 Richard Henderson <rth@redhat.com>
1830 * emulparams/elf64alpha.sh (MAXPAGESIZE): Typo -- 64k, not 1M.
1832 2000-11-14 Kazu Hirata <kazu@hxi.com>
1834 * scripttempl/h8300.sc: Fix formatting.
1835 * scripttempl/h8300h.sc: Likewise.
1836 * scripttempl/h8300s.sc: Likewise.
1838 Tue Nov 14 00:59:19 2000 Denis Chertykov <denisc@overta.ru>
1840 * scripttempl/elf32avr.sc: Fix bug in .eeprom segment.
1842 2000-11-09 Philip Blundell <pb@futuretv.com>
1844 * emultempl/pe.em: Define ___start_SECNAME and ___stop_SECNAME
1845 around orphan sections whose names can be represented in C.
1847 2000-11-07 Jim Wilson <wilson@redhat.com>
1849 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): New local
1850 hold_sdata. If SEC_SMALL_DATA set, set place to hold_sdata.
1852 2000-11-06 Nick Clifton <nickc@redhat.com>
1854 * ld.texinfo: Add GNU Free Documentation License.
1855 * ldint.texinfo: Add GNU Free Documentation License.
1856 * ld.1: Add GNU Free Documentation License.
1858 2000-11-05 Alan Modra <alan@linuxcare.com.au>
1860 * ldlex.l (yy_create_string_buffer): Init yy_is_our_buffer,
1861 yy_is_interactive, yy_at_bol, and yy_fill_buffer.
1863 * Makefile.am (DISTCLEANFILES): Add stringify.sed.
1864 Move 2000-11-02 Makefile.in changes to this file.
1865 * Makefile.in: Regenerate.
1867 2000-11-03 Nick Clifton <nickc@redhat.com>
1869 * scripttempl/h8300.sc: Use ${CONSTRUCTING...} to enclose
1870 constructors and destructors.
1871 * scripttempl/h8300h.sc: Ditto.
1872 * scripttempl/h8300s.sc: Ditto.
1873 * scripttempl/h8500.sc: Ditto.
1874 * scripttempl/h8500b.sc: Ditto.
1875 * scripttempl/h8500c.sc: Ditto.
1876 * scripttempl/h8500m.sc: Ditto.
1877 * scripttempl/h8500s.sc: Ditto.
1878 * scripttempl/v850.sc: Ditto.
1879 * scripttempl/w65.sc: Ditto.
1880 * scripttempl/z8000.sc: Ditto.
1882 2000-11-02 Per Lundberg <plundis@chaosdev.org>
1884 * Makefile.in (e_i386_chaos.c): New rule.
1885 (ALL_EMULATIONS): Added e_i386_chaos.o.
1886 * emulparams/elf_i386_chaos.sh: New file.
1887 * configure.tgt: Recognise i[3456]86-chaosdev-storm-chaos.
1889 2000-10-20 Jakub Jelinek <jakub@redhat.com>
1891 * emulparams/elf64_sparc.sh (TEXT_START_ADDR,
1892 NONPAGED_TEXT_START_ADDR): Set to 4GB for Solaris targets.
1893 Fix sed invocation, so that it coped with '/' in Solaris 64bit
1894 library path suffix.
1895 Based on patch by Andrew Macleod <amacleod@cygnus.com>.
1897 2000-10-18 Hans-Peter Nilsson <hp@axis.com>
1899 * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32),
1900 for consecutive sections.
1902 2000-10-17 Chandrakala Chavva <cchavva@redhat.com>
1904 * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific
1906 * ld.texinfo: Added notes about this new option.
1908 2000-10-16 Nick Clifton <nickc@redhat.com>
1910 * emultempl/pe.em (_after_open): Add tests of return values from
1911 bfd functions. Emit appropriate error messages if necessary.
1913 2000-10-13 Nick Clifton <nickc@redhat.com>
1915 * emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
1916 local variables - they are not used, but leave in the call to
1917 bfd_canonicalize_symtab.
1918 (_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
1919 pe_dll_search_prefix.
1921 2000-10-12 Charles Wilson <cwilson@ece.gatech.edu>
1923 * emultempl/pe.em (pe_dll_search_prefix): New variable,
1924 (longopts): New --dll-search-prefix option.
1925 (gld_${EMULATION_NAME}_list_options): Document.
1926 (gld_${EMULATION_NAME}_parse_args): Handle.
1927 (gld_${EMULATION_NAME}_open_dynamic_archive): When linking
1928 dynamically, search for a dll named '<prefix><basename>.dll'
1929 in preference to 'lib<basename>.dll' if --dll-search-prefix
1932 2000-10-12 Alan Modra <alan@linuxcare.com.au>
1934 * ldlang.c (section_already_linked): Set kept_section instead of
1937 2000-10-10 Kazu Hirata <kazu@hxi.com>
1939 * deffile.h: Fix formatting.
1940 * lexsup.c: Likewise.
1943 2000-10-09 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
1945 * pe-dll.c (make_one): Do not generate code thunk for DATA
1947 (process_def_file): deduce DATA flag for auto-export sumbols.
1949 2000-10-09 Kazu Hirata <kazu@hxi.com>
1951 * ld.h: Fix formatting.
1952 * ldcref.c: Likewise.
1953 * ldctor.h: Likewise.
1954 * ldemul.c: Likewise.
1955 * ldemul.h: Likewise.
1956 * ldexp.c: Likewise.
1957 * ldexp.h: Likewise.
1958 * ldfile.c: Likewise.
1959 * ldfile.h: Likewise.
1960 * ldlang.c: Likewise.
1961 * ldlang.h: Likewise.
1962 * ldmain.c: Likewise.
1963 * pe-dll.c: Likewise.
1965 * pe-dll.c: Revert some formatting fixes.
1967 2000-10-08 Kazu Hirata <kazu@hxi.com>
1969 * pe-dll.c: Fix formatting.
1971 2000-10-05 Kazu Hirata <kazu@hxi.com>
1973 * ldlang.c: Fix formatting.
1975 2000-10-03 DJ Delorie <dj@redhat.com>
1977 * pe-dll.c (fill_edata): initialize entire block
1978 (make_one): fill in correct section.
1980 2000-10-03 Kazu Hirata <kazu@hxi.com>
1982 * ldexp.c: Fix formatting.
1984 2000-10-02 DJ Delorie <dj@redhat.com>
1986 * emultempl/pe.em (gld_*_after_open): detect case where there two
1987 import libraries for same dll; rename one to ensure proper link
1990 * pe-dll.c (process_def_file): compare ordinals to -1, not 0; fix
1992 (generate_edata): fix typo
1994 2000-09-29 Hans-Peter Nilsson <hp@axis.com>
1996 * scripttempl/crisaout.sc (ENTRY): Now __start.
1997 (.text): Add default setting for __start.
1998 Remove CONSTRUCTORS handling.
1999 (/DISCARD/): Add .gnu.warning.*.
2000 * emulparams/crislinux.sh (ENTRY): Now __start.
2001 (TEXT_START_SYMBOLS): New; provide __Stext and __start default.
2002 * emulparams/criself.sh (OUTPUT_FORMAT): Now elf32-us-cris.
2003 (ENTRY): Now __start.
2004 (INITIAL_READONLY_SECTIONS): Add KEEP for .startup.
2005 (EXECUTABLE_SYMBOLS): Add default setting for __start.
2007 2000-09-29 Kazu Hirata <kazu@hxi.com>
2009 * deffile.h: Fix formatting.
2011 * ldcref.c: Likewise.
2012 * ldctor.c: Likewise.
2013 * ldctor.h: Likewise.
2014 * ldemul.c: Likewise.
2015 * ldemul.h: Likewise.
2016 * ldexp.c: Likewise.
2017 * ldexp.h: Likewise.
2018 * ldfile.c: Likewise.
2019 * ldfile.h: Likewise.
2020 * ldlang.c: Likewise.
2021 * ldlang.h: Likewise.
2022 * lexsup.c: Likewise.
2024 * pe-dll.c: Likewise.
2026 2000-09-28 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
2028 * pe-dll.c (process_def_file): Uninitialized data wasn't
2029 exported with --export-all-symbols switch.
2031 2000-09-28 DJ Delorie <dj@redhat.com>
2033 * pe-dll.c (fill_edata): rearrange the data so that ordinals and
2034 noname work properly.
2036 2000-09-28 Alan Modra <alan@linuxcare.com.au>
2038 * ld.texinfo (HPPA ELF32): New section.
2040 * emultempl/hppaelf.em (group_size): New.
2041 (hppaelf_finish): Pass group_size to elf32_hppa_size_stubs.
2042 (PARSE_AND_LIST_PROLOGUE): Add OPTION_STUBGROUP_SIZE.
2043 (PARSE_AND_LIST_LONGOPTS): Add --stub-group-size. Duplicate
2044 options to prevent abbreviations matching.
2045 (PARSE_AND_LIST_OPTIONS): Describe the above. Reformat.
2046 (PARSE_AND_LIST_ARGS_CASES): Handle it.
2048 2000-09-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2050 * emultempl/m68kelf.em: Conditionalise the embedded relocs feature
2051 on the m68*-*-elf target. Make it support COFF input objects.
2053 2000-09-21 Kazu Hirata <kazu@hxi.com>
2055 * ldmain.c: Fix formatting.
2056 * ldmisc.c: Likewise.
2057 * ldver.c: Likewise.
2058 * ldwrite.c: Likewise.
2060 2000-09-21 Alan Modra <alan@linuxcare.com.au>
2062 * ldwrite.c (clone_section): Silence gcc warnings.
2064 2000-09-20 Alan Modra <alan@linuxcare.com.au>
2066 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Handle
2067 out of memory failure.
2069 * ldwrite.c (ldwrite): Remove unnecessary einfo arg.
2070 (clone_section): Handle out of memory failures. Rename var to
2071 avoid c++ reserved word.
2073 2000-09-18 Alan Modra <alan@linuxcare.com.au>
2075 * emultempl/hppaelf.em (hppaelf_add_stub_section): Rename
2076 stub_name param to stub_sec_name.
2077 (hppaelf_finish): Modify call to elf32_hppa_size_stubs.
2079 2000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2081 * emultempl/m68kelf.em: New file.
2082 * emulparams/m68kelf.sh (EXTRA_EM_FILE): Use it.
2083 * Makefile.am (em68kelf.c): Add dependency on m68kelf.em.
2084 * Makefile.in: Regenerate.
2086 2000-09-15 Alan Modra <alan@linuxcare.com.au>
2088 * emulparams/hppalinux.sh (DATA_START_SYMBOLS): Provide $global$
2091 2000-09-13 Nick Clifton <nickc@redhat.com>
2093 * ldmain.c (multiple_definition): Disable relaxation if
2094 multiple symbol definitions are encountered - otherwise the
2095 linker could abort with an assertion failure.
2097 2000-09-10 Nick Clifton <nickc@redhat.com>
2099 * mri.c: Fix formatting.
2101 2000-09-07 H.J. Lu <hjl@gnu.org>
2103 * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
2104 * configure: Rebuild.
2106 2000-09-07 H.J. Lu <hjl@gnu.org>
2108 * Makefile.am (lexsup.o): Also depend on $(INCDIR)/demangle.h.
2109 * Makefile.in: Rebuild.
2111 2000-09-07 Alan Modra <alan@linuxcare.com.au>
2113 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Fix
2114 broken list handling. Create __start_SECNAME and __stop_SECNAME
2115 when no place-holder. Add some comments. Test both SEC_CODE and
2116 SEC_READONLY for hold_text to prevent .rodata orphan poisoning.
2117 Handle case where no output section statement created.
2119 2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
2121 * configure.tgt (sh-*-linux*): Added.
2122 * Makefile.am: Added eshelf_linux and eshlelf_linux.
2123 * Makefile.in: Rebuilt.
2124 * emulparams/shelf_linux.sh: New file.
2125 * emulparams/shlelf_linux.sh: New file.
2127 2000-09-06 Alan Modra <alan@linuxcare.com.au>
2129 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
2130 try shuffling sections when the orphan happens to be the place
2131 holder. Keep count of unique section names generated so we speed
2132 the search for a new name.
2134 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
2136 * configure: Rebuilt with new libtool.m4.
2138 2000-09-05 Nick Clifton <nickc@redhat.com>
2140 * Makefile.in: Regenerate.
2141 * aclocal.m4: Regenerate.
2142 * configure: Regenerate.
2143 * config.in: Regenerate.
2144 * po/ld.pot: Regenerate.
2146 * ldint.texinfo: Remove CVS revision marker - it foils local
2149 * emultempl/ticoff.em: Remove extraneous comma.
2151 2000-09-05 Alan Modra <alan@linuxcare.com.au>
2153 * emultempl/hppaelf.em (hppaelf_add_stub_section): Add SEC_RELOC
2154 to stub section flags.
2155 (hppa_for_each_input_file_wrapper): New.
2156 (hppa_lang_for_each_input_file): New.
2157 (lang_for_each_input_file): Define to call above.
2158 (multi_subspace): New.
2159 (hppaelf_finish): Pass multi_subspace to elf32_hppa_size_stubs.
2160 (PARSE_AND_LIST_PROLOGUE): Define.
2161 (PARSE_AND_LIST_LONGOPTS): Define.
2162 (PARSE_AND_LIST_OPTIONS): Define.
2163 (PARSE_AND_LIST_ARGS_CASES): Define.
2164 (hppaelf_finish): Call elf32_hppa_set_gp.
2165 (hppaelf_set_output_arch): Remove.
2166 (LDEMUL_SET_OUTPUT_ARCH): Remove.
2168 * emulparams/hppalinux.sh (ELFSIZE): Define.
2170 (OTHER_READONLY_SECTIONS): Define.
2172 (GENERATE_SHLIB_SCRIPT): Define.
2174 * ldlang.c: Add missing prototypes, and tidy others. Change CONST
2175 to const throughout. Change `void *' to `PTR' throughout.
2176 (lang_memory_default): Function is local to file, add `static'.
2178 * Makefile.am (ehppaelf.c): Depend on emultempl/elf32.em.
2179 (ehppalinux.c): Likewise.
2180 (earmelf.c): Likewise.
2181 (earmelf_linux.c): Likewise.
2182 (earmelf_linux26.c): Likewise.
2183 * Makefile.in: Regenerate.
2185 * ld.h (ld_config_type): Add unique_orphan_sections.
2186 * lexsup.c (OPTION_UNIQUE): Define.
2187 (ld_options): Add "--unique".
2188 (parse_args): Handle it.
2189 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
2190 search for an existing output section if unique_orphan_sections is
2191 set. Make use of bfd_get_unique_section_name rather than
2192 duplicating code here.
2193 * ld.texinfo: Describe --unique.
2195 * lexsup.c (ld_options): Make split-by-reloc arg optional. Add
2196 optional arg to split-by-file.
2197 (parse_args): Handle them.
2198 * ld.texinfo: Update description of these options.
2199 * ldwrite.c (clone_section): Pass in the section name. Replace
2200 local code with bfd_get_unique_section_name.
2201 (split_sections): Tidy code and comments. Use a list traversal
2202 more appropriate to the list construction. Handle cooked section
2203 sizes. Split when split_by_reloc reached rather than exceeded.
2204 Track section size and split when split_by_file reached. Fix
2205 link_order_tail (even though it's not used).
2206 (ldwrite): Modify condition for calling split_sections to suit
2207 changed split_by_reloc and split_by_file.
2208 * ldmain.c (main): Init config.split_by_reloc and
2209 config.split_by_file to -1.
2210 * ld.h (ld_config_type): Change split_by_reloc to unsigned.
2211 Change split_by_file to bfd_size_type.
2213 2000-09-02 Nick Clifton <nickc@redhat.com>
2215 * configure.in: Increase version number to 2.10.91.
2216 * NEWS: Mention new ability to support removal of duplicate DWARF2
2218 * configure: Regenerate.
2219 * aclocal.m4: Regenerate.
2220 * config.in: Regenerate.
2222 2000-09-02 Daniel Berlin <dberlin@redhat.com>
2224 * scripttempl/elf.sc: Add .gnu.linkonce.wi.* to .debug_info
2226 * scripttempl/elf32avr.sc: Ditto.
2227 * scripttempl/elfd10v.sc: Ditto.
2228 * scripttempl/elfd30v.sc: Ditto.
2229 * scripttempl/elfi370.sc: Ditto.
2230 * scripttempl/elfm68hc11.sc: Ditto.
2231 * scripttempl/elfm68hc12.sc: Ditto.
2232 * scripttempl/elfi386beos.sc: Ditto.
2233 * scripttempl/v850.sc: Ditto.
2235 2000-08-31 Alexandre Oliva <aoliva@redhat.com>
2237 * acinclude.m4: Include libtool and gettext macros from the
2239 * aclocal.m4, configure: Rebuilt.
2241 2000-08-25 Nick Clifton <nickc@redhat.com>
2243 * ldlang.c (open_output): When choosing the target for a
2244 particular endianness, do nothing if the target is not
2247 2000-08-25 H.J. Lu <hjl@gnu.org>
2249 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
2250 check -rpath nor LD_RUN_PATH for cross link.
2251 * ld.texinfo: Document the change.
2253 2000-08-24 Hans-Peter Nilsson <hp@axis.com>
2255 * NEWS: Mention support for CRIS.
2257 2000-08-23 H.J. Lu <hjl@gnu.org>
2259 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Get
2260 the current runpath list from bfd_elf_get_runpath_list ()
2263 2000-08-22 H.J. Lu <hjl@gnu.org>
2265 * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search
2266 the DT_RPATH/DT_RUNPATH entries for DT_NEEDED after
2267 LD_LIBRARY_PATH for native linker. Display the needed DSO if
2268 trace_file_tries is non-zero.
2269 (gld${EMULATION_NAME}_try_needed): Report the needed DSO found
2270 if trace_file_tries is non-zero.
2272 * ld.texinfo: Document the usage of DT_RPATH/DT_RUNPATH.
2275 2000-08-14 Jason Eckhardt <jle@cygnus.com>
2277 * NEWS: Mention i860 support.
2279 2000-08-14 Andreas Schwab <schwab@suse.de>
2281 * scripttempl/elf.sc: Fix last change to use correct comment
2284 2000-08-10 Geoff Keating <geoffk@cygnus.com>
2286 * scripttempl/elf.sc: Add a comment giving the correspondence
2287 between sections, per-datum sections, and linkonce sections. Make
2288 the comment true even for .bss, .sdata, .sdata2, .sbss, and
2291 2000-08-10 Jason Eckhardt <jle@cygnus.com>
2293 * emulparams/elf32_i860.sh: New file.
2294 * configure.tgt: Recognize new target i860-stardent-{sysv4*|elf*}.
2295 * Makefile.am (ALL_EMULATIONS): Add eelf32_i860.o.
2296 (eelf32_i860.c): New rule.
2297 * Makefile.in: Regenerate.
2299 2000-08-10 Nick Clifton <nickc@cygnus.com>
2301 * emulparams/mipspe.sh (ENTRY): Add definition.
2303 2000-08-08 Peter Jeremy <peter.jeremy@alcatel.com.au>
2305 * emultempl/elf32.em (_after_close): Refer to -rpath not --rpath
2308 2000-08-08 Stephane Carrez <Stephane.Carrez@worldnet.fr>
2310 * scripttempl/elfm68hc11.sc: Define __bss_size symbol to indicate
2311 the final size of .bss section.
2312 * scripttempl/elfm68hc12.sc: Likewise.
2314 2000-08-04 Alan Modra <alan@linuxcare.com.au>
2316 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Rename to
2317 gld${EMULATION_NAME}_parse_args for consistency. Combine
2318 lastoptind and prevoptind vars, and keep track of last optind.
2319 (gld_${EMULATION_NAME}_list_options): Rename to
2320 gld${EMULATION_NAME}_list_options.
2322 2000-08-03 Rodney Brown <RodneyBrown@pmsc.com>
2324 * configure.tgt: Select targ_emul=elf_i386 for Unixware 7
2325 (i586-sco-sysv5uw7.1.0).
2327 2000-07-27 H.J. Lu <hjl@gnu.org>
2329 * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
2330 (PARSE_AND_LIST_PROLOGUE): New.
2331 (PARSE_AND_LIST_LONGOPTS): Likewise.
2332 (PARSE_AND_LIST_OPTIONS): Likewise.
2333 (PARSE_AND_LIST_ARGS_CASES): Likewise.
2334 (PARSE_AND_LIST_EPILOGUE): Likewise.
2336 2000-07-28 Alan Modra <alan@linuxcare.com.au>
2338 * emultempl/armelf.em: Elide functions common to elf32.em,
2339 ie. most of the file.
2340 (arm_elf_after_open): New. Do arm specific things then call
2341 gld${EMULATION_NAME}_after_open.
2342 (arm_elf_before_allocation): New. Call
2343 gld${EMULATION_NAME}_before_allocation then do arm specifics.
2344 (PARSE_AND_LIST_PROLOGUE): Define.
2345 (PARSE_AND_LIST_SHORTOPTS): Define.
2346 (PARSE_AND_LIST_LONGOPTS): Define.
2347 (PARSE_AND_LIST_OPTIONS): Define.
2348 (PARSE_AND_LIST_ARGS_CASES): Define.
2349 (LDEMUL_AFTER_OPEN): Define.
2350 (LDEMUL_BEFORE_ALLOCATION): Define.
2351 (LDEMUL_BEFORE_PARSE): Define.
2352 (LDEMUL_FINISH): Define.
2354 * emultempl/hppaelf.em: Similarly zap most of this file.
2355 (hppaelf_add_stub_section): Prototype.
2356 (hppaelf_layaout_sections_again): Prototype.
2357 (hook_in_stub): Prototype.
2358 (LDEMUL_SET_OUTPUT_ARCH): Define.
2359 (LDEMUL_FINISH): Define.
2360 (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
2362 * emulparams/armelf.sh (TEMPLATE_NAME): Use elf32.
2363 (EXTRA_EM_FILE): New.
2364 * emulparams/armelf_linux.sh: Likewise.
2365 * emulparams/armelf_linux26.sh: Likewise.
2366 * emulparams/hppalinux.sh: Likewise.
2367 * emulparams/hppaelf.sh: Likewise.
2370 * emultempl/elf32.em: Fix formatting.
2371 (EXTRA_EM_FILE): Source it.
2372 (LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
2373 LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
2374 LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
2375 LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
2376 LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
2377 LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
2378 LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
2379 LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
2380 LDEMUL_FIND_POTENTIAL_LIBRARIES): New shell vars. Add code to
2381 allow functions in this file to be overridden.
2382 (PARSE_AND_LIST_SHORTOPTS): Handle it.
2384 * emultempl/m68kcoff.em: Include ldfile.h before ldemul.h.
2386 * emultempl/elf32.em: Reorganize file.
2388 2000-07-27 Ivan Kokshaysky <ink@jurassic.park.msu.ru>
2390 * emulparams/elf64alpha.sh: Implement "-taso" emulation
2391 specific option to fit 64-bit executable in the lower
2392 31-bit address range. This is done by changing start
2393 address of .interp (the very first section of executable)
2394 and then setting EF_ALPHA_32BIT elf header flag.
2396 2000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2398 * emultempl/m68kcoff.em: New file.
2399 * emulparams/m68kcoff.sh (TEMPLATE_NAME): Use m68kcoff template.
2400 * Makefile.am (em68kcoff.c): Depend on m68kcoff.em rather than
2402 * Makefile.in: Regenerate.
2404 2000-07-20 H.J. Lu <hjl@gnu.org>
2406 * emultempl/elf32.em (longopts): Duplicate "disable-new-dtags"
2407 and "disable-new-dtags" to stop getopt from treating -d/-e as
2408 abbreviations for these options.
2410 2000-07-20 H.J. Lu <hjl@gnu.org>
2412 * ld.texinfo: Add documentation for --disable-new-dtags and
2415 * ldmain.c (main): Initialize link_info.new_dtags to false.
2417 * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add
2418 --disable-new-dtags and --enable-new-dtags.
2419 (gld_${EMULATION_NAME}_list_options): Likewise.
2421 2000-07-05 Kenneth Block <krblock@computer.org>
2423 * lexsup.c: Add optional style to demangle switch
2424 * ld.texinfo: Document optional style to demangle switch.
2426 2000-07-20 Hans-Peter Nilsson <hp@axis.com>
2428 * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
2430 (ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
2431 Regenerate dependencies.
2432 * Makefile.in: Rebuild.
2433 * configure.tgt (cris-*-*): New target.
2434 * emulparams/crisaout.sh, emulparams/criself.sh,
2435 emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
2436 * po/POTFILES.in, po/ld.pot: Regenerate.
2438 2000-07-20 H.J. Lu <hjl@gnu.org>
2440 * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options):
2441 Print out ignored -z options.
2443 2000-07-19 H.J. Lu <hjl@gnu.org>
2445 * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Removed.
2446 (PARSE_AND_LIST_PROLOGUE): New.
2447 (PARSE_AND_LIST_LONGOPTS): Likewise.
2448 (PARSE_AND_LIST_OPTIONS): Likewise.
2449 (PARSE_AND_LIST_ARGS_CASES): Likewise.
2451 * ldmain.c (main): Clear link_info.flags and link_info.flags_1.
2453 * lexsup.c (ld_options): Comment out 'z'.
2454 (parse_args): Likewise.
2456 * emultempl/elf32.em: Include "elf/common.h".
2457 (gld_${EMULATION_NAME}_parse_args): Defined. Handle some -z
2459 (gld_${EMULATION_NAME}_list_options): Likewise.
2461 * ld.texinfo: Add documentation for the recognized -z options.
2463 2000-07-19 H.J. Lu <hjl@gnu.org>
2465 * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Call
2466 bfd_elf_set_dt_needed_soname ().
2468 2000-07-18 DJ Delorie <dj@cygnus.com>
2470 * pe-dll.c (pe_dll_id_target): check object target name also
2472 2000-07-18 Hans-Peter Nilsson <hp@axis.com>
2474 * scripttempl/elf.sc (.init): Only do ${INIT_START} and
2475 ${INIT_END} if relocating.
2476 (.fini): Likewise ${FINI_START} and ${FINI_END}.
2478 2000-07-16 Charles Wilson <cwilson@ece.gatech.edu>
2480 * emultempl/pe.em (gld_*_open_dynamic_archive): New search
2481 order for dynamic library '-lfoo' on pei386: libfoo.dll.a,
2482 foo.dll.a, libfoo.a, libfoo.dll, foo.dll. This fixes compatibility
2483 errors introduced by the old dynamic lib search order.
2485 2000-07-17 DJ Delorie <dj@cygnus.com>
2487 * pe-dll.c (process_def_file): auto-export data items also
2488 (pe_process_import_defs): also see if _imp_ form needed
2490 2000-07-12 Charles Wilson <cwilson@ece.gatech.edu>
2492 * pe-dll.c (make_one): fix a typo in the __imp_ name decoration
2493 for dll import libraries
2495 2000-07-12 Mark Elbrecht <snowball3@bigfoot.com>
2497 * scripttempl/i386go32.sc: Support the g++ attribute init_priority in
2498 gcc 2.95.2 and later.
2500 2000-07-11 Kazu Hirata <kazu@hxi.com>
2502 * ldfile.c (ldfile_try_open_bfd): Output '\n' after an error
2505 2000-07-10 Alan Modra <alan@linuxcare.com.au>
2507 * ldemul.h (struct lang_input_statement_struct): Remove forward
2509 (struct search_dirs): Likewise.
2510 * ldfile.h (struct lang_input_statement_struct): Likewise.
2511 Protect file from multiple inclusion.
2512 * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
2513 declaration from macro to file scope.
2515 * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
2516 * ldgram.y: Likewise here.
2517 * ldlang.c: And here.
2518 * ldmain.c: And here.
2519 * mpw-elfmips.c: And here.
2520 * mpw-eppcmac.c: And here.
2521 * emultempl/aix.em: And here.
2522 * emultempl/armcoff.em: And here.
2523 * emultempl/armelf.em: And here.
2524 * emultempl/armelf_oabi.em: And here.
2525 * emultempl/beos.em: And here.
2526 * emultempl/elf32.em: And here.
2527 * emultempl/hppaelf.em: And here.
2528 * emultempl/linux.em: And here.
2529 * emultempl/lnk960.em: And here.
2530 * emultempl/pe.em: And here.
2531 * emultempl/sunos.em: And here.
2532 * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
2533 * mpw-idtmips.c: Ditto.
2534 * emultempl/generic.em: Ditto.
2535 * emultempl/gld960.em: Ditto.
2536 * emultempl/gld960c.em: Ditto.
2537 * emultempl/mipsecoff.em: Ditto.
2538 * emultempl/ticoff.em: Ditto.
2539 * emultempl/vanilla.em: Ditto.
2541 * pe-dll.c: Include ldfile.h
2542 * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
2544 * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
2545 arguments to bfd_elf32_size_dynamic_sections call.
2546 (gldelf32ebmip_place_orphan): Add missing arguments to
2547 lang_leave_output_section_statement call.
2549 2000-07-10 H.J. Lu <hjl@gnu.org>
2551 * emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
2553 (strhash): Likewise.
2554 (compute_dll_image_base): Likewise.
2555 (pe_undef_found_sym): Likewise.
2556 (pe_undef_cdecl_match): Likewise.
2557 (gld_${EMULATION_NAME}_open_dynamic_archive): Mark the
2558 argument "arch" with ATTRIBUTE_UNUSED.
2560 2000-07-10 Alan Modra <alan@linuxcare.com.au>
2562 * configure.tgt: Remove extraneous hppa*-*-linux-gnu*.
2564 From Ryan Bradetich <rbradetich@uswest.net>
2565 * ldwrite.c (SSIZE): Remove to cure macro redefinition warning.
2567 2000-07-09 Alan Modra <alan@linuxcare.com.au>
2569 Changes to create multiple linker stubs, positioned immediately
2570 before the section where they are required.
2571 * emultempl/hppaelf.em: Include elf32-hppa.h.
2572 (stub_sec, file_chain): Delete.
2573 (hppaelf_create_output_section_statements): Don't make a stub
2575 (hook_stub_info): New struct.
2576 (hook_in_stub): New function.
2577 (hppaelf_add_stub_section): New function.
2578 (hppaelf_finish): Do nothing for relocateable links. Modify the
2579 call to elf32_hppa_size_stubs. Move code for updating section
2581 (hppaelf_layaout_sections_again): ..to here, a new function.
2583 * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Fix
2584 broken list handling. Pass in a pointer to the list.
2585 (hppaelf_finish): Update call to hppaelf_delete_padding_statements
2587 (hppaelf_before_parse): Prototype.
2588 (hppaelf_set_output_arch): Prototype.
2589 (hppaelf_create_output_section_statements): Prototype.
2590 (hppaelf_delete_padding_statements): Prototype.
2591 (hppaelf_finish): Prototype.
2594 * emultempl/hppaelf.em: Include ctype.h.
2595 (struct orphan_save): New.
2596 (gld${EMULATION_NAME}_place_orphan): New.
2597 (output_rel_find): New.
2598 (hppaelf_get_script): Update from elf32.em.
2599 (ld_hppaelf_emulation): Rename to ld_${EMULATION_NAME}_emulation.
2600 Change emulation_name field to "${EMULATION_NAME}". Add
2601 gld${EMULATION_NAME}_place_orphan.
2603 * Makefile.am (ALL_EMULATIONS): Reinstate ehppaelf.o, add
2604 ehppalinux.o, sort it. Regenerate dependencies.
2605 (ehppalinux.c): Depend on hppaelf.em
2606 * Makefile.in: Regenerate.
2608 * configure.tgt: targ_emul=hppalinux for hppa*linux
2610 * emulparams/hppalinux.sh: New.
2611 * emulparams/hppaelf.sh (TARGET_PAGE_SIZE): Write in hex.
2613 2000-07-08 Alan Modra <alan@linuxcare.com.au>
2615 * lexsup.c (parse_args): Copy section name.
2617 2000-07-07 Charles Wilson <cwilson@ece.gatech.edu>
2619 * emultempl/pe.em: institute the following search order for
2620 dynamic libraries on pei386: libfoo.dll.a, foo.dll.a (import
2621 libs), libfoo.dll, foo.dll (link direct to dll). Fall back to
2622 static lib (libfoo.a) if none of the above are found.
2624 2000-07-07 Mumit Khan <khan@xraylith.wisc.edu>
2626 * emultempl/pe.em (pe_enable_auto_image_base): New variable.
2627 (longopts): New --{enable,disable}-auto-image-base options.
2628 (gld_${EMULATION_NAME}_list_options): Document.
2629 (gld_${EMULATION_NAME}_parse): Handle.
2630 (strhash): New static function.
2631 (compute_dll_image_base): New static function.
2632 (gld_${EMULATION_NAME}_set_symbols): Use.
2634 2000-07-05 DJ Delorie <dj@redhat.com>
2638 2000-07-01 Koundinya K <kk@ddeorg.soft.net>
2640 * configure.tgt: Add traditional mips (mips*-*-sysv4*) target.
2641 * emulparams/elf32btsmip.sh: New file.
2642 * Makefile.am: Add traditional mips target.
2643 * Makefile.in: Rebuild.
2645 2000-07-01 H.J. Lu <hjl@gnu.org>
2647 * Makefile.am (EXTRA_ld_new_SOURCES): Set to deffilep.y for
2648 automake to use YLWRAP.
2649 * Makefile.in: Rebuild.
2651 2000-07-01 Alan Modra <alan@linuxcare.com.au>
2653 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
2654 (CLEANFILES): Add DEPA.
2655 * Makefile.in: Regenerate.
2657 2000-06-30 Timothy Wall <twall@ppc>
2659 * scripttempl/tic54xcoff.sc: PAGE N is not implemented, so encode
2660 the page in the upper octet of the address.
2662 2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl>
2664 * emulparams/avrmega161.sh (ARCH): Change to avr:5.
2666 2000-06-24 Alan Modra <alan@linuxcare.com.au>
2668 * NEWS: arm-elf does --gc-sections too.
2670 2000-06-22 Alan Modra <alan@linuxcare.com.au>
2672 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
2674 * Makefile.in: Regenerate.
2676 2000-06-21 H.J. Lu <hjl@gnu.org>
2678 * Makefile.am: Rebuild dependency.
2679 * Makefile.in: Rebuild.
2681 2000-06-20 H.J. Lu <hjl@gnu.org>
2683 * Makefile.am: Rebuild dependency.
2684 * Makefile.in: Rebuild.
2686 2000-06-20 Timothy Wall <twall@cygnus.com>
2688 * scripttempl/tic54xcoff.sc: New.
2689 * ldlang.c (wild_doit): Propagate SEC_BLOCK flag.
2690 * gen-doc.texi: Add flag for TI COFF.
2691 * ld.texinfo: Add documentation for TI COFF handling switches.
2692 * emultempl/ticoff.em: New. TI COFF handling.
2693 * configure.tgt: Add tic54x target.
2694 * Makefile.am: Add tic54x target.
2695 * Makefile.in: Ditto.
2697 2000-06-20 Alan Modra <alan@linuxcare.com.au>
2699 * ldmain.c (set_scripts_dir): Correct pointer comparison when
2700 checking for backslashes.
2702 2000-06-19 Alan Modra <alan@linuxcare.com.au>
2704 * NEWS: Move entries not in 2.10 above "Changes in version 2.10".
2706 2000-06-18 Alan Modra <alan@linuxcare.com.au>
2708 * NEWS: Update list of targets supporting --gc-sections.
2710 * scripttempl/elf.sc: KEEP .eh_frame contents.
2711 * scripttempl/elfd30v.sc: Same here.
2713 2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
2715 * Makefile.am (ALL_EMULATIONS): Added new emulation for m68hc12
2717 * Makefile.in: Rebuild.
2718 * configure.tgt: Recognize m68hc12 and m68hc11.
2719 * scripttempl/elfm68hc12.sc: New file.
2720 * emulparams/m68hc12elfb: New emulation.
2721 * emulparams/m68hc12elf: New emulation.
2722 * emulparams/m68hc11elfb.sh: New file. User configurable emulation
2723 (includes a memory.x script to define the ROM and RAM banks).
2724 * scripttempl/elfm68hc11.sc, emulparams/m68hc11elf.sh:
2725 New configuration files for support of Motorola 68hc11
2727 2000-06-15 Alan Modra <alan@linuxcare.com.au>
2729 * ldmain.c (main): Only change SEC_READONLY for final link.
2731 2000-06-13 H.J. Lu <hjl@gnu.org>
2733 * configure: Regenerate.
2735 2000-06-08 David O'Brien <obrien@FreeBSD.org>
2737 * configure.in (VERSION): Update to show this is the CVS mainline.
2739 2000-06-07 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2741 * emultempl/mipsecoff.em (gld{EMULATION_NAME}_after_open): Require all
2742 input objects to be ECOFF.
2743 (check_sections): einfo takes %B, not %P, to print a BFD name.
2745 2000-06-05 Michael Matz <matz@ifh.de>
2747 * ldgram.y (vers_defns): Handle 'extern "C++" { ... }' in
2750 * ldlex.l (V_IDENTIFIER): Accept `::' in symbols.
2752 2000-05-23 Marek Michalkiewicz <marekm@linux.org.pl>
2754 * emulparams/avr1200.sh (STACK): Define as 0.
2755 * emulparams/avr23xx.sh (STACK): Define as last internal SRAM address.
2756 * emulparams/avr4433.sh (STACK): Likewise.
2757 * emulparams/avr44x4.sh (STACK): Likewise.
2758 * emulparams/avr85xx.sh (STACK): Likewise.
2759 * emulparams/avrmega103.sh (STACK): Likewise.
2760 * emulparams/avrmega161.sh (STACK): Likewise.
2761 * emulparams/avrmega603.sh (STACK): Likewise.
2762 * scripttempl/elf32avr.sc (__data_start): Define for gcrt1.
2763 (__stack): Define from ${STACK} for main().
2765 2000-05-26 Alan Modra <alan@linuxcare.com.au>
2767 * Makefile.am: Update dependencies with "make dep-am"
2768 * Makefile.in: Regenerate.
2770 2000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
2772 * ldmain.c: Include filenames.h.
2773 (set_scripts_dir): Support backslashes in program name.
2775 2000-05-22 Igor Shevlyakov <igor@windriver.com>
2777 * ldmain.c (main): When deciding if ".text" section should be
2778 read-only, don't forget to reset SEC_READONLY because it
2779 could be already set.
2781 2000-05-22 Thomas de Lellis <tdel@windriver.com>
2783 * ld.1: Add documentation for new command line option:
2784 --section-start <sectionname>=<sectionorg>
2785 This is a generic version of -Ttext etc. which accepts
2786 any section name as a parameter instead of just text/data/
2788 * ld.texinfo: More docs.
2790 * lexsup.c: (parse_args): Recognize new command line option.
2791 (ld_options): Add new option.
2793 2000-05-18 H.J. Lu <hjl@gnu.org>
2795 * lexsup.c (parse_args): `i' == `r', not `q'.
2797 Thu May 18 10:47:57 2000 Jeffrey A Law (law@cygnus.com)
2799 * configure.tgt (hppa*64*-*-*): Enable PA64 target.
2801 2000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com>
2802 Rick Gorton <gorton@scrugs.lkg.dec.com>
2804 Add support for '-q' == '--emit-relocs' switch.
2805 * ldmain.c (main): Default to false.
2806 * lexsup.c (parse_args): Turn on emitrelocations flag if set.
2807 * NEWS: Describe the emitrelocations switch.
2808 * ld.texinfo: Describe the emitrelocations switch.
2810 2000-05-16 Charles Wilson <cwilson@ece.gatech.edu>
2812 * emultempl/pe.em (_open_dynamic_archive): New function: Search
2813 the library path for "foo.dll" and "libfoo.dll" dynamic libraries
2814 before searching for 'libfoo.a' in response to a '-Bdynamic -lfoo'
2817 2000-05-15 David O'Brien <obrien@FreeBSD.org>
2819 * lexsup.c (parse_args): Update the year in the copyright notice.
2821 2000-05-13 Alan Modra <alan@linuxcare.com.au>
2823 * ld.h (gettext, dgettext, dcgettext, textdomain, bindtextdomain):
2824 Replace defines with those from intl/libgettext.h to quieten gcc
2827 2000-05-10 H.J. Lu <hjl@gnu.org>
2829 * ldlang.c (open_input_bfds): Don't load the same file within
2830 a group again if the whole archive has been loaded already.
2832 2000-05-03 Alan Modra <alan@linuxcare.com.au>
2834 From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
2835 * lexsup.c (set_section_start): Use bfd_scan_vma rather than
2838 Mon May 1 17:34:34 2000 Jim Wilson <wilson@cygnus.com>
2840 * configure.host (ia64-*-linux-gnu*): Change gcc to ${CC}.
2842 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
2843 host "ia64-*-linux-gnu*".
2845 2000-04-29 Andreas Jaeger <aj@suse.de>
2847 * ld.h: Correctly check GCC version.
2849 Tue Apr 25 11:20:43 2000 Jeffrey A Law (law@cygnus.com)
2851 * Makefile.am: Add PA64 support. Add missing dependencies for
2853 * Makefile.in: Rebuilt.
2854 * configure.tgt: Add PA64 support (currently disabled).
2856 2000-04-25 Alan Modra <alan@linuxcare.com.au>
2858 * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Delete.
2859 (output_rel_find): New function.
2860 (hold_section, hold_use): Delete.
2861 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
2862 hold_interp): Make local to place_orphan.
2863 (gld${EMULATION_NAME}_place_orphan): Use lang_output_section_find
2864 rather than place_section to find possible previous use of orphan.
2865 Similarly find the place-holder output sections. Use returned
2866 value from lang_enter_output_section_statement rather than calling
2867 lang_output_section_statement_lookup.
2868 * emultempl/armelf.em: Same here.
2869 * emultempl/pe.em: Similar to above, but no need for output_rel_find.
2871 * ldlang.c (lang_enter_output_section_statement): Return output
2873 * ldlang.h (lang_enter_output_section_statement): Change
2876 * ldlang.h (lang_output_section_statement): Export it.
2877 * ldlang.c (lang_output_section_statement): Ditto.
2879 2000-04-24 Nick Clifton <nickc@cygnus.com>
2881 * ld.texinfo (Output Section Data): Add note that section data
2882 commands cannot appear outside of section directives.
2884 2000-04-2 Matthew Green <mrg@cygnus.com>
2886 * configure.tgt: Add NetBSD/sparc ELF, and NetBSD/sparc64 support.
2888 Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com>
2889 David Mosberger <davidm@hpl.hp.com>
2891 * Makefile.am (ALL_64_EMULATIONS): Add eelf64_ia64.o.
2892 (eelf64_ia64.c): New rule.
2893 * Makefile.in: Rebuild.
2894 * configure.tgt (ia64-*-elf*, ia64-*-linux*): New targets.
2895 * emulparams/elf64_ia64.sh: New file.
2897 2000-04-21 Richard Henderson <rth@cygnus.com>
2899 * scripttempl/elfd30v.sc: Place .gcc_except_table.
2901 2000-04-19 Alan Modra <alan@linuxcare.com.au>
2903 * dep-in.sed: Match space at start of file name, not at end.
2905 2000-04-18 H.J. Lu <hjl@gnu.org>
2907 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
2908 lang_leave_output_section_statement () after calling
2909 lang_enter_output_section_statement ().
2910 * emultempl/armelf.em: Likewise.
2912 2000-04-18 Alan Modra <alan@linuxcare.com.au>
2914 * emultempl/elf32.em (struct orphan_save): Add section field.
2915 (gld${EMULATION_NAME}_place_orphan): Use above to keep sections in
2916 better order, and place first orphan section as we did before the
2917 2000-04-12 patch. Ignore ~SEC_ALLOC sections when choosing place.
2918 Don't call make_bfd_section here, let wild_doit do the job for us.
2919 Don't build a statement list when we'll only throw it away.
2920 * emultempl/armelf.em: Ditto.
2921 * emultempl/pe.em: Similarly.
2923 2000-04-14 Geoff Keating <geoffk@cygnus.com>
2925 * scripttempl/elfppc.sc: Remove.
2926 * emulparams/elf32ppc.sh: Use elf.sc.
2927 * emulparams/elf32lppc.sh: Use elf.sc.
2928 * emulparams/elf32ppclinux.sh: Use elf.sc.
2929 * emulparams/elf32ppcsim.sh: New file.
2930 * emulparams/elf32lppcsim.sh: New file.
2931 * Makefile.am: Update dependencies. Add elf32ppcsim ad elf32lppcsim.
2932 (ALL_EMULATIONS): Add elf32ppcsim ad elf32lppcsim.
2933 * Makefile.in: Regenerate.
2934 * configure.tgt (powerpc-*): Add elf32ppcsim and elf32lppcsim.
2936 2000-04-14 Alan Modra <alan@linuxcare.com.au>
2938 * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Process
2939 ~SEC_ALLOC sections too. Init start address of debug sections.
2940 * emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan): Ditto.
2941 * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Ditto.
2942 Also set all relocateable section start addresses.
2944 2000-04-13 Geoff Keating <geoffk@cygnus.com>
2946 * scripttempl/elf.sc: Add support for .sbss2 and .sdata2 sections.
2947 Add new BSS_PLT variable for when .plt need not be contained in
2948 the file. Move _etext so that it is also after .fini, and provide
2949 both etext and _etext with a leading underscore. Mark the start
2952 2000-04-12 Alan Modra <alan@linuxcare.com.au>
2954 * emultempl/elf32.em (struct orphan_save): New.
2955 (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
2956 hold_interp): Make them struct orphan_save.
2957 (gld${EMULATION_NAME}_place_section): Modify for new hold_*.
2958 (gld${EMULATION_NAME}_place_orphan): Add new orphan sections to
2959 the end of the relevant section list. Also add associated section
2960 statements to the end of any previous orphan statements.
2961 * emultempl/armelf.em: Similarly.
2962 * emultempl/pe.em: Similarly.
2964 2000-04-11 Alan Modra <alan@linuxcare.com.au>
2966 * ld.texinfo (Simple Example): Remove extraneous paragraph.
2968 Fri Apr 7 15:56:57 2000 Andrew Cagney <cagney@b1.cygnus.com>
2970 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
2971 --enable-build-warnings option.
2972 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
2973 * Makefile.in, configure: Re-generate.
2975 2000-04-04 Alan Modra <alan@linuxcare.com.au>
2977 * po/ld.pot: Regenerate.
2979 * lexsup.c (help): Restore translated part of bug string.
2981 * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
2982 (DEP): Quote when passing vars to sub-make. Add warning message
2984 (DEP1): Rewrite for "gcc -MM".
2985 (CLEANFILES): Add DEP2.
2986 Update dependencies.
2987 * Makefile.in: Regenerate.
2989 2000-04-03 Alan Modra <alan@linuxcare.com.au>
2991 * ld.h: #include "bin-bugs.h"
2992 * lexsup.c (help): Use REPORT_BUGS_TO.
2994 2000-03-27 Denis Chertykov <denisc@overta.ru>
2996 * configure.tgt (avr-*-*): New target support.
2997 * Makefile.am: Likewise.
2998 * scripttempl/elf32avr.sc: New script file.
2999 * emulparams/avr1200.sh: New file.
3000 * emulparams/avr23xx.sh: New file.
3001 * emulparams/avr4433.sh New file.
3002 * emulparams/avr44x4.sh New file.
3003 * emulparams/avr85xx.sh New file.
3004 * emulparams/avrmega103.sh New file.
3005 * emulparams/avrmega161.sh New file.
3006 * emulparams/avrmega603.sh New file.
3007 * Makefile.in: Regenerate.
3009 2000-03-09 Andreas Jaeger <aj@suse.de>
3011 * Makefile.am (check-DEJAGNU): Also unset LANG.
3012 * Makefile.in: Rebuild.
3014 2000-03-06 Ian Lance Taylor <ian@zembu.com>
3016 * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
3019 2000-03-02 H.J. Lu <hjl@gnu.org>
3021 * emulparams/elf32mcore.sh: Include "getopt.h".
3023 2000-03-01 Ian Lance Taylor <ian@zembu.com>
3025 * configure.tgt: Remove *-*-aout, *-*-coff, and *-*-netware.
3027 2000-03-01 H.J. Lu <hjl@gnu.org>
3029 * emulparams/mipspe.sh: Add SUBSYSTEM and INITIAL_SYMBOL_CHAR.
3030 * emulparams/shpe.sh: Likewise.
3032 2000-03-01 Nick Clifton <nickc@cygnus.com>
3034 * pe-dll.c: Remove unused variables and add ATTRIBUTE_UNUSED
3035 to unused parameters.
3037 * emultempl/pe.em: Add "#ifdef DLL_SUPPORT" around static
3038 functions only used by DLL code.
3039 (_place_orphan): Initialise 'dollar'.
3041 2000-03-01 H.J. Lu <hjl@gnu.org>
3043 * ldmain.c (undefined_symbol): Take one more arg, fatal, to
3044 indicate if the undefined symbol is a fatal error or not.
3045 Don't delete the output file if "fatal" is false.
3047 2000-02-29 H.J. Lu <hjl@gnu.org>
3049 * Makefile.am (check-DEJAGNU): Also pass LIBS="$(LIBS)".
3050 Set LC_COLLATE and LC_ALL to null and export them. It is for
3051 sort which expects the C locale.
3052 Add $(LIBS) to all $(HOSTING_LIBS).
3053 * Makefile.in: Rebuild.
3055 2000-02-29 Alan Modra <alan@spri.levels.unisa.edu.au>
3057 * emultempl/{aix.em, armcoff.em, armelf.em, armelf_oabi.em,
3058 beos.em, elf32.em, generic.em, gld960.em, gld960c.em, hppaelf.em,
3059 linux.em, lnk960.em, mipsecoff.em, sunos.em, vanilla.em}
3060 (ld_emulation_xfer_struct): Add missing NULL initialiser for
3061 find_potential_libraries.
3063 2000-02-28 Jim Blandy <jimb@redhat.com>
3065 * ldgram.y (exclude_name_list): Don't require a comma to separate
3066 list entries; the lexer considers commas to be valid part of a
3067 filename, so in something like `foo, bar' the comma is considered
3068 part of the first filename, `foo,'.
3069 * ld.texinfo: Update section on EXCLUDE_FILE lists.
3071 2000-02-27 Loren J. Rittle <ljrittle@acm.org>
3073 * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
3074 host "i[3456]86-*-freebsdelf*".
3076 2000-02-27 Mark Elbrecht <snowball3@bigfoot.com>
3078 * scripttempl/i386go32.sc: Move misplaced semicolons.
3080 2000-02-25 Ian Lance Taylor <ian@zembu.com>
3082 * Makefile.am (ALL_EMULATIONS): Remove ehppaelf.o.
3083 (ALL_64_EMULATIONS): Remove eelf64hppa.o.
3084 (eelf64hppa.c, ehppaelf.c): Remove targets.
3085 * Makefile.in: Rebuild.
3087 2000-02-25 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
3089 * configure.tgt (targ_extra_ofiles): Enable elf64_sparc on
3090 GNU/Linux/sparc, but keep the default as 32.
3092 * configure.tgt: Enable elf64_sparc on Solaris7+/sparc. And make
3093 it default if sparcv9 or sparc64.
3095 2000-02-24 Nick Clifton <nickc@cygnus.com>
3097 * Makefile.am: Add rules to build emipspe.o and earmpe.o.
3098 * Makefile.in: Regenerate.
3099 * configure.tgt: Add targets for arm-wince, sh-pe and mips-pe.
3101 * ldemul.h (ld_emulation_xfer_struct): Add new field:
3102 find_potential_libraries.
3103 * ldemul.c (ldemul_find_potential_libraries): New function.
3105 * ldfile.c (ldfile_open_file_search): Allow function to be
3107 (ldfile_open_file): Call ldemul_find_potential_libraries.
3108 * ldfile.h: Add prototype for ldfile_open_file_search.
3110 * pe-dll.c: Add support for ARM, MIPS and SH targets.
3112 * emulparams/mipspe.sh: New file. Parameters for mips-pe target.
3113 * emulparams/shpe.sh: New file. Parameters for sh-pe target.
3115 * emultempl/pe.em: Add support for ARM, MIPS and SH DLLs.
3116 (gld_X_find_potential_libraries): New function. Search for
3117 libraries called "*.lib".
3119 * scripttempl/pe.sc: Add .pdata section.
3121 2000-02-23 Richard Henderson <rth@cygnus.com>
3123 * scripttempl/elfd10v.sc: Remove dynamic linking hooks.
3124 Add and use memory regions.
3126 2000-02-23 Linas Vepstas (linas@linas.org)
3128 * emulparams/elf32i370.sh, scripttempl/elfi370.sc: New.
3130 * Makefile.am: Add support for Linux/IBM 370.
3131 * configure.tgt: Likewise.
3133 * Makefile.in: Regenerate.
3135 2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
3137 * ldlang.c (print_input_section, print_data_statement,
3138 print_reloc_statement, print_padding_statement, insert_pad,
3139 size_input_section, lang_check_section_addresses,
3140 lang_size_sections, lang_do_assignments, lang_set_startof,
3141 lang_one_common): Change `opb' to unsigned.
3142 (lang_do_assignments): Also change `size' to unsigned.
3144 2000-02-16 Richard Henderson <rth@cygnus.com>
3146 * scripttempl/elf.sc: Place OTHER_PLT_RELOC_SECTION.
3148 2000-02-16 Timothy Wall <twall@cygnus.com>
3150 * mri.c (mri_draw_tree): Add default LMA region argument to call
3151 to lang_leave_output_section_statement.
3152 * ldlang.h: Update prototypes with LMA region arguments.
3153 * ldlang.c (lang_size_sections): Encapsulate region bounds
3154 checking in os_check_region call.
3155 (os_check_region): New function.
3156 (lang_output_section_statement_lookup): Initialize lma_region.
3157 (lang_leave_output_section_statement): Add LMA region argument.
3158 (lang_leave_overlay): Ditto.
3159 * ldgram.y: Handle LMA region syntax.
3160 * ld.texinfo (Output Section Description): Describe LMA region usage.
3161 * emultempl/armelf.em (gld$place_orphan): Add default value for
3162 lma region in call to lang_leave_output_section_statement.
3163 * emultempl/elf32.em (gld$place_orphan): Add default value for
3164 lma region in call to lang_leave_output_section_statement.
3165 * emultempl/pe.em (gld$place_orphan): Add default value for
3166 lma region in call to lang_leave_output_section_statement.
3169 2000-02-04 Timothy Wall <twall@redhat.com>
3171 * ldlang.c (lang_check_section_addresses): Use bytes instead of
3172 octets when calculating section end addresses.
3174 2000-02-04 Timothy Wall <twall@redhat.com>
3176 * ldlang.c (lang_size_sections): Fix typo in ALIGN_N invocation.
3178 2000-02-03 Timothy Wall <twall@redhat.com>
3180 * ldexp.c (fold_name): Make SIZEOF operator return byte count, not
3182 * ldlang.c (print_input_section, print_data_statement,
3183 print_reloc_statement, print_padding_statement): Print target
3184 address values and section sizes as bytes, not octets.
3185 (insert_pad) Calculate padding size in octets, and adjust "dot"
3187 (size_input_section) Always adjust "dot" by bytes, not octets.
3188 (lang_check_section_addresses, lang_do_assignments) Adjust
3189 "dot" by bytes, not octets. Use the larger of the directive size
3190 or octets_per_byte for the number of octets actually allocated in
3192 (lang_set_startof) Make sure STARTOF returns a target address.
3193 (lang_one_common) Record size changes in octets.
3194 (lang_abs_symbol_at_end_of) Section end symbol's value is
3195 recorded in target bytes.
3196 * ld.texinfo: Updated description of BYTE, SHORT, LONG, etc.
3197 to be clear about behavior when an octet is smaller than one byte.
3199 2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au>
3201 * ldcref.c (output_cref): Don't pass message strings to printf
3205 * ldmisc.c (vfinfo): Same here.
3208 2000-01-23 Alan Modra <alan@spri.levels.unisa.edu.au>
3210 * emultempl/{armcoff.em,armelf.em,armelf_oabi.em,beos.em,
3211 generic.em,gld960.em,gld960c.em,hppaelf.em,linux.em,lnk960.em,
3212 mipsecoff.em,sunos.em,vanilla.em} (ld_emulation_xfer_struct):
3213 Add missing NULL initialisers, and comments.
3215 * testsuite/ld-srec/sr3.cc (__rethrow): New.
3217 2000-01-21 Nick Clifton <nickc@cygnus.com>
3219 * ldlang.c (lang_size_sections): Fix typo in comment.
3221 2000-01-18 H.J. Lu <hjl@gnu.org>
3223 * ldlang.c (lang_size_sections): Also update the current
3224 address of a region if the SEC_NEVER_LOAD bit is not set.
3226 2000-01-10 Philip Blundell <pb@futuretv.com>
3228 * configure.tgt (arm*-*-conix*): New target.
3230 2000-01-07 Nick Clifton <nickc@cygnus.com>
3232 * ld.texinfo (Options): Remind users to preceed linker command
3233 line switches with -Wl, (or whatever is appropriate) if it is
3234 being invoked by a comnpiler driver program.
3235 Fix description of the behaviour of the -n command line switch.
3237 Wed Jan 5 08:02:12 2000 Catherine Moore <clm@cygnus.com>
3239 * ld.h (wildcard_spec): Change exclude_name to exclude_name_list.
3241 * ld.texinfo (EXCLUDE_FILE): Update documentation.
3242 * ldgram.y (wildcard_spec): Support a list of excluded_files.
3243 (exclude_name_list): New.
3244 ldlang.c (walk_wild_section): Support list of excluded files.
3245 (print_wild_statement): Likewise.
3246 (lang_add_wild): Likewise.
3247 * ldlang.h (lang_wild_statement_type): Likewise.
3248 * scripttempl/elf.sc (OTHER_EXCLUDE_FILES): Support.
3250 2000-01-04 Mumit Khan <khan@xraylith.wisc.edu>
3252 * pe-dll.c (pe_dll_warn_dup_exports): New variable.
3253 (process_def_file): Use.
3254 (pe_dll_compat_implib): New variable.
3257 * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
3258 pe_dll_compat_implib.
3260 * emultempl/pe.em (longopts): Add warn-duplicate-exports and
3261 compat-implib options.
3262 (gld_${EMULATION_NAME}_list_options): List new options.
3263 (gld_${EMULATION_NAME}_parse_args): Handle.
3265 * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
3268 * deffilep.y (opt_name): Allow "." in name.
3270 For older changes see ChangeLog-9899
3276 version-control: never