* coff-sparc.c: Add missing prototypes.
[binutils.git] / ld / ChangeLog
blob4af9b0775d927338327211296a5e98bea9b47261
1 2001-08-20  Alan Modra  <amodra@bigpond.net.au>
3         * ldlang.c (insert_pad): Fix typos in last patch.
5         * ldlang.c: When traversing lang_statement_union_type lists,
6         consistently use "header.next" rather than "next".
7         * mpw-eppcmac.c: Likewise.
8         * emultempl/beos.em: Likewise.
9         * emultempl/hppaelf.em: Likewise.
10         * emultempl/pe.em: Likewise.
11         * ldlang.h (union lang_statement_union): Remove "next" field.
13         * ldlang.c (insert_pad): Use offsetof macro.
14         (lang_size_sections): Always neuter padding statements.
15         * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete.
17         * pe-dll.c (pe_dll_fill_sections): Correct type of "relax" param
18         passed to lang_size_sections.
19         (pe_exe_fill_sections): Likewise.
20         * emultempl/pe.em (output_prev_sec_find): Copied from elf32.em.
21         (gld_${EMULATION_NAME}_place_orphan): Merge from elf32.em.
23 2001-08-18  Alan Modra  <amodra@bigpond.net.au>
25         * emultempl/aix.em: Formatting fixes.
27 2001-08-18  Alan Modra  <amodra@bigpond.net.au>
29         * ldlang.c (insert_pad): Make use of an existing pad statement if
30         available.  Move code calculating alignment, adjusting section
31         alignment power, and adjusting dot to ..
32         (size_input_section): .. here.  Remove unused relax param.
33         (lang_size_sections): Change boolean `relax' param to boolean *.
34         Adjust call to size_input_section.  Make use of insert_pad to
35         place pad after the assignment statement.  If relaxing, zap
36         padding statements.
37         (reset_memory_regions): Reset output_bfd section sizes too.
38         (relax_again): Move to..
39         (lang_process): ..here.  Adjust call to lang_size_sections, and
40         remove duplicated code.
41         * ldlang.h (lang_size_sections): Change `relax' param to boolean *.
43 2001-08-17  Alan Modra  <amodra@bigpond.net.au>
45         * ld.texinfo: Document that fill values now use the four least
46         significant bytes.
47         * emulparams/elf32fr30.sh (NOP): Update.
48         * emulparams/elf32mcore.sh: Likewise.
49         * emulparams/elf64_s390.sh: Likewise.
50         * emulparams/elf_i386.sh: Likewise.
51         * emulparams/elf_i386_be.sh: Likewise.
52         * emulparams/elf_i386_chaos.sh: Likewise.
53         * emulparams/elf_i386_ldso.sh: Likewise.
54         * emulparams/elf_s390.sh: Likewise.
55         * emulparams/elf_x86_64.sh: Likewise.
56         * emulparams/i386moss.sh: Likewise.
57         * emulparams/i386nw.sh: Likewise.
58         * emulparams/m68kelf.sh: Likewise.
59         * scripttempl/elf.sc: Update NOP comment.
60         * scripttempl/elfi370.sc: Likewise.
61         * scripttempl/elfm68hc11.sc: Likewise.
62         * scripttempl/elfm68hc12.sc: Likewise.
63         * scripttempl/nw.sc: Likewise.
65 2001-08-15  Tom Rix <trix@redhat.com>
67         * ldgram.y (saved_script_handle): Initialize to NULL.
68         * ldmain.c (main): Change check on saved_script_handle.
69         
70 2001-08-14  Alan Modra  <amodra@bigpond.net.au>
72         * emultempl/elf32.em: Formatting fixes.
73         (output_prev_sec_find): Test for bfd_ind_section too;  do so by
74         looking at sec->owner.
75         (output_rel_find): Move function inside LDEMUL_PLACE_ORPHAN test.
76         (gld${EMULATION_NAME}_place_orphan): Add a few comments.  Remove
77         unused code, and reorganize orphan section placement code.
79         * ldlang.c (wild_doit): Rename to lang_add_section.
80         * ldlang.h: Here too.
81         * mpw-elfmips.c: And here.
82         * emultempl/beos.em: And here.
83         * emultempl/elf32.em: And here.
84         * emultempl/hppaelf.em: And here.
85         * emultempl/pe.em: And here.
87 2001-08-13  Richard Henderson  <rth@redhat.com>
89         * emultempl/needrelax.em: New file.
90         * emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Reference it.
91         * Makefile.am (eelf64_ia64.c): Depend on it.
92         * Makefile.in: Rebuild.
94 2001-08-13  Alan Modra  <amodra@bigpond.net.au>
96         * emultempl/elf32.em: For SEC_EXCLUDE sections, ensure that
97         output_section is set non-NULL.
99         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Return
100         `true' for SEC_EXCLUDE sections so that the generic code doesn't
101         needlessly create an output_section_statement.  Treat a correctly
102         named output_section_statement with NULL bfd_section as compatible.
104 2001-08-13  Hans-Peter Nilsson  <hp@bitrange.com>
106         * emultempl/generic.em: Support EXTRA_EM_FILE.
107         (ld_${EMULATION_NAME}_emulation): Support emulation parameters
108         LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
109         LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
110         LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
111         LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
112         LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
113         LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
114         LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
115         LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
116         LDEMUL_FIND_POTENTIAL_LIBRARIES.
118 2001-08-12  Richard Henderson  <rth@redhat.com>
120         * scripttempl/elf.sc, scripttempl/elfd30v.sc,
121         scripttempl/elfm68hc11.sc, scripttempl/elfm68hc12.sc,
122         scripttempl/v850.sc: Keep .jcr data.
124 2001-08-12  H.J. Lu  <hjl@gnu.org>
125             Andrew Haley  <aph@cambridge.redhat.com>
126             Nick Clifton  <nickc@redhat.com>
128         * ldgram.y (had_script): Change name to saved_script_handle.
129         Change type to file handle.
130         * ld.h (had_script): Rename and retype.
131         * ldfile.c (ldfile_open_command_file): Save the file handle
132         used in saved_script_handle.
133         * lexsup.c (parse_args): Do not allow -c option to alter
134         saved_script_handle.
135         * ldmain.c (main): Print out the linker script used if
136         --verbose is given.  Check saved_script_handle to obtain the
137         external linker script used, or if NULL, dump the builtin
138         script.
139         * ld.texinfo: Document that --verbose now dumps the linker
140         script used, regardless of whether it was an internal or an
141         external script.
143 2001-08-10  Andreas Jaeger  <aj@suse.de>
145         * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
146         to build warnings.
147         * configure: Regenerate.
149 2001-08-09  Alan Modra  <amodra@bigpond.net.au>
151         * emultempl/elf32.em (output_prev_sec_find): Add missing prototype.
153         * scripttempl/elf.sc: Move non-text .dynamic section before
154         .plt/.got/.sdata* group.
155         (OTHER_GOT_SECTIONS): Move to immediately after .got.
156         (OTHER_SDATA_SECTIONS): Add.
157         * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than
158         OTHER_GOT_SECTIONS.
159         * emulparams/crislinux.sh: Likewise.
160         * emulparams/elf32b4300.sh: Likewise.
161         * emulparams/elf32bmip.sh: Likewise.
162         * emulparams/elf32bmipn32.sh: Likewise.
163         * emulparams/elf32bsmip.sh: Likewise.
164         * emulparams/elf32btsmip.sh: Likewise.
165         * emulparams/elf32ebmip.sh: Likewise.
166         * emulparams/elf32elmip.sh: Likewise.
167         * emulparams/elf32l4300.sh: Likewise.
168         * emulparams/elf32lmip.sh: Likewise.
169         * emulparams/elf32lsmip.sh: Likewise.
170         * emulparams/elf32ltsmip.sh: Likewise.
171         * emulparams/elf64bmip.sh: Likewise.
172         * emulparams/elf64btsmip.sh: Likewise.
173         * emulparams/elf64ltsmip.sh: Likewise.
175 2001-08-08  Alan Modra  <amodra@bigpond.net.au>
177         * genscripts.sh: Source the emulparams script before each output
178         script is generated so that variables like `RELOCATING' may affect
179         variables defined in the emulparams script.
181 2001-08-04  Alan Modra  <amodra@bigpond.net.au>
183         * emultempl/aix.em: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this
184         order.
186         * emultempl/beos.em (sort_sections): Modify for 2001-08-03 change,
187         ie. iterate over wild_statement.section_list.
188         (gld${EMULATION_NAME}_place_orphan): Likewise.
190 2001-08-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
192         * scripttempl/elfm68hc12.sc (FINISH_CODE, FINISH_RELOC): New to handle
193         .fini[0-4] sections used by _exit
194         (CTOR, DTOR): Export ctor/dtor symbols; move them to ROM.
195         (*.text,*.data,*.bss): Take into account .text.*, .data.*, .bss.*.
196         * scripttempl/elfm68hc11.sc: Likewise.
198 2001-08-03  H.J. Lu  <hjl@gnu.org>
200         * emultempl/beos.em (init): Add the missing initialization.
202 2001-08-03  Alan Modra  <amodra@bigpond.net.au>
204         * ld.texinfo (Input Section Basics): Clarify ordering of output
205         sections.
206         * ldlang.c (callback_t): Add wildcard_list param.
207         (walk_wild_section): Remove "section" param.  Rewrite for
208         lang_wild_statement_type change.  Remove unique_section_p test.
209         (walk_wild_file): Remove "section" param.
210         (walk_wild): Remove "section" and "file" params.
211         (lang_gc_wild): Likewise.
212         (wild): Likewise.  Modify for lang_wild_statement_type change.
213         (wild_sort): Likewise.  Add "sec" param.
214         (gc_section_callback): Likewise.
215         (output_section_callback): Likewise.  Do unique_section_p test.
216         (map_input_to_output_sections): Modify call to wild.
217         (lang_gc_sections_1): Likewise.
218         (print_wild_statement): Modify for lang_wild_statement_type
219         change.
220         (lang_add_wild): Replace filename, filenames_sorted param with
221         filespec.  Replace section_name, sections_sorted,
222         exclude_filename_list with section_list.
223         * ldlang.h (lang_add_wild): Here too.
224         (lang_wild_statement_type): Replace section_name, sections_sorted,
225         and exclude_filename_list with section_list.
226         * ldgram.y (current_file): Delete.
227         (%union): Add wildcard_list.
228         (file_NAME_list): Set type to wildcard_list.  Build a linked list
229         rather than calling lang_add_wild for each entry.
230         (input_section_spec_no_keep): Call lang_add_wild here instead.
231         * ld.h (struct wildcard_list): Declare.
232         * mri.c (mri_draw_tree): Modify to suit new lang_add_wild.
234 2001-08-02  Charles Wilson  <cwilson@ece.gatech.edu>
236         * ldmain.c (main): initialize link_info.pei386_auto_import
237         * pe-dll.c: new tables for auto-export filtering
238         (auto_export): change API, pass abfd for contextual filtering.
239         Loop thru tables of excluded symbols instead of comparing
240         "by hand".
242 2001-08-02  Paul Sokolovsky  <paul.sokolovsky@technologist.com>
244         * pe-dll.c: new variable pe_dll_enable_extra_debug. New
245         static variable current_sec (static struct sec *). Add
246         forward declaration for add_bfd_to_link.
247         (process_def_file): Don't export undefined symbols. Do not
248         export symbols starting with  "_imp__".  Call auto_export()
249         with new API.
250         (pe_walk_relocs_of_symbol): New function.
251         (generate_reloc): add optional extra debugging
252         (pe_dll_generate_def_file): eliminate extraneous initial blank
253         line in output
254         (make_one): enlarge symtab to make room for __nm__ symbols
255         (DATA auto-import support).
256         (make_singleton_name_thunk): New function.
257         (make_import_fixup_mark): New function.
258         (make_import_fixup_entry): New function.
259         (pe_create_import_fixup): New function.
260         (add_bfd_to_link): Specify that 'name' argument is a CONST
261         char *.
262         * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
263         declare new functions pe_walk_relocs_of_symbol and
264         pe_create_import_fixup.
265         * emultempl/pe.em: add new options --enable-auto-import,
266         --disable-auto-import, and --enable-extra-pe-debug.
267         (make_import_fixup): New function.
268         (pe_find_data_imports): New function.
269         (pr_sym): New function.
270         (gld_${EMULATION_NAME}_after_open): Add optional extra pe
271         debugging. Call pe_find_data_imports.  Mark .idata as DATA, not
272         CODE.
274 2001-08-02  Charles Wilson  <cwilson@ece.gatech.edu>
276         * ld.texinfo: add additional documentation for
277         --export-all-symbols.  Document --out-implib,
278         --enable-auto-image-base, --disable-auto-image-base,
279         --dll-search-prefix, --enable-auto-import, and
280         --disable-auto-import.
281         * ldint.texinfo: Add detailed documentation on auto-import
282         implementation.
284 2001-07-30  Nick Clifton  <nickc@cambridge.redhat.com>
286         * ld.texinfo (Simple Assignments): Fix computation in SECTIONS
287         example.
289 2001-07-24  Alan Modra  <amodra@bigpond.net.au>
291         * Makefile.am: Update dependencies with "make dep-am".
292         * Makefile.in: Regenerate
294 2001-07-23  Alan Modra  <amodra@bigpond.net.au>
296         * ldcref.c (check_section_sym_xref): New function.
297         (check_nocrossrefs): Call it.
298         (check_nocrossref): Interate over h->refs here instead of..
299         (check_refs): ..here.  Pass in the symbol name, section, and bfd
300         rather than hash_entry pointers.
301         (struct check_refs_info): Keep symbol name rather than hash entry.
302         Remove "same".
303         (check_reloc_refs): Tweak for above changes in check_refs_info.
304         Only report references to section syms when symname is NULL to
305         prevent duplicate messages for the same reloc.
307 2001-07-19  Nick Clifton  <nickc@cambridge.redhat.com>
309         * ldexp.c (exp_print_tree): Use stderr if config.map_file is not
310         available.  Do not print NULL trees.
311         (exp_print_token): Print unknown tokens with values > 126 as
312         decimal values not ASCII characters.
314         * ldlang.c (lang_leave_overlay): If a region is specified assign
315         it to all sections inside the overlay unless they have been
316         assigned to the own, non-default, memory region.
318         * README: Add header for consistency with other README files.
320 2001-07-14  H.J. Lu  <hjl@gnu.org>
322         * emultempl/elf32.em (output_prev_sec_find): Never return
323         bfd_abs_section_ptr, bfd_com_section_ptr nor
324         bfd_und_section_ptr.
326 2001-07-14  Nick Clifton  <nickc@cambridge.redhat.com>
328         * Makefile.am (em32relf.c): Change dependency from generic.em to
329         elf32.em.
330         * Makefile.in: Regenerate.
332 2001-07-14  matthew green  <mrg@eterna.com.au>
334         * configure.tgt (i386-*-netbsdelf*): New target.
335         (i386-*-netbsd*): Set targ_extra_emuls to `elf_i386'
337 2001-07-13  Jakub Jelinek  <jakub@redhat.com>
339         * emultempl/elf32.em (output_prev_sec_find): New.
340         (place_orphan): Use it.
342 2001-07-11  H.J. Lu  <hjl@gnu.org>
344         * ldmain.c (main): Fix typos in the last change.
346 2001-07-11  Jakub Jelinek  <jakub@redhat.com>
348         * ldmain.c (main): Disallow -F and -f without -shared.
350 2001-07-11  Nick Clifton  <nickc@cambridge.redhat.com>
352         * emultempl/pe.em (after_open): Check for the output_bfd not
353         having any coff_data structure allocated to it.
355 2001-07-09  David O'Brien  <obrien@FreeBSD.org>
357         * emultempl/elf32.em: Do not assuming that contents of the buffer
358         returned from basename function will remain unchanged accross other
359         function calls.
361 2001-07-03  H.J. Lu  <hjl@gnu.org>
363         * scripttempl/elf.sc (DYNAMIC_PAD): Revert the change made on
364         2001-07-03. It creates dynamic entries even for static binaries.
366 2001-07-03  Jakub Jelinek  <jakub@redhat.com>
368         * scripttempl/elf.sc (DYNAMIC_PAD): New variable.
369         (DYNAMIC): Use it to reserve few dynamic entries for
370         post-linking tools.
372 2001-06-27  Alan Modra  <amodra@bigpond.net.au>
374         * emulparams/hppa64linux.sh: New file.
375         * configure.tgt: hppa*64*-*-linux* uses hppa64linux.sh
376         * Makefile.am (ALL_64_EMULATIONS): Add ehppa64linux.o
377         (ehppa64linux.c): Add rule to make it.
378         Run "make dep-am".
379         * Makefile.in: Regenerate.
381 2001-06-21  Hans-Peter Nilsson  <hp@axis.com>
383         * ld.texinfo (Options, -r): Mention restrictions when using
384         different object formats.
386 2001-06-19  Hans-Peter Nilsson  <hp@axis.com>
388         * ldlang.c (lang_check): Emit fatal error if relocatable link
389         between different object flavours with relocations in input.
391 2001-06-19  H.J. Lu  <hjl@gnu.org>
393         * ld.texinfo (-E, --export-dynamic): Mention --version-script.
394         (--version-script): Mention the language support.
396 2001-06-19  H.J. Lu <hjl@gnu.org>
398         * ldlang.c (lang_check): Revert the change mode on 2001-06-15.
400 2001-06-18  H.J. Lu <hjl@gnu.org>
402         * Makefile.am (ld.1): Remove the prefix `$(srcdir)/'.
403         (diststuff): Add $(MANS).
404         * Makefile.in: Regenerated.
406         * ld.1: Removed.
408 2001-06-18  Hans-Peter Nilsson  <hp@axis.com>
410         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
411         Update for API change in bfd_elf${ELFSIZE}_size_dynamic_sections.
412         * mpw-elfmips.c (gldelf32ebmip_before_allocation): Ditto.
413         * ld.h (args_type): Remove member export_dynamic.  All users
414         changed to use struct bfd_link_info member.
416         * Makefile.am (ecriself.c, ed10velf.c, ei386moss.c): Depend on
417         $(srcdir)/emultempl/elf32.em, not $(srcdir)/emultempl/generic.em.
418         * Makefile.in: Regenerate.
420 2001-06-18  H.J. Lu  <hjl@gnu.org>
422         * ldlang.c (init_os): Add the newline to the einfo call.
423         (lang_check): Likewise.
424         (lang_do_version_exports_section): Likewise.
426 2001-06-15  H.J. Lu  <hjl@gnu.org>
428         * lexsup.c (parse_args); Save optind to report unrecognized
429         option.
431 2001-06-15  Hans-Peter Nilsson  <hp@axis.com>
433         * ldlang.c (lang_check): Emit fatal error if relocatable link
434         between different object flavours.
436         * lexsup.c (parse_args) <case OPTION_EXPORT_DYNAMIC, case 'E'>:
437         Set new link_info member export_dynamic.
438         * ldmain.c (main): Initialize new link_info member export_dynamic.
440 2001-06-12  Nick Clifton  <nickc@cambridge.redhat.com>
442         * ldlang.c (walk_wild): Only call walk_wild_file if
443         lookup_name returns something.
444         (lookup_name): If load_symbols fails, return NULL.
445         (load_symbols): Change to a boolean function.
446         (open_input_bfds): If load_symbols fails then do not make the
447         executable.
449 2001-06-08  Alan Modra  <amodra@bigpond.net.au>
451         * ldlang.c (record_bfd_errors): Remove.
453         * emultempl/aix.em: Fix copyright dates.
455 2001-06-07  Andreas Jaeger  <aj@suse.de>
457         * elf_x86_64.sh (NONPAGED_TEXT_START_ADDR): Increase.
458         (TEXT_START_ADDR): Likewise.
460 2001-06-06  Martin Schwidefsky <schwidefsky@de.ibm.com>
462         * configure.host: Set HOSTING_CRT0/HOSTING_LIBS correctly for s/390.
464 2001-06-05  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
466         * emultempl/pe.em (init): Reduce default stack reserve to 0x200000.
468 2001-05-31  H.J. Lu  <hjl@gnu.org>
470         * ldlang.c (open_input_bfds): Don't change the bfd error
471         handler whilst loading symbols.
473 2001-05-28  Nick Clifton  <nickc@cambridge.redhat.com>
475         * configure.tgt: Remove i370-mvs architecture, it is not currently
476         supported.
478 2001-05-25  H.J. Lu  <hjl@gnu.org>
480         * emulparams/ppcmacos.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
481         like emulparams/aixppc.sh.
483 2001-05-25  H.J. Lu  <hjl@gnu.org>
485         * emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Move
486         setting of output_filename after bfd_scan_arch.
487         * emultempl/pe.em: Likewise.
489 2001-05-25  H.J. Lu  <hjl@gnu.org>
491         * emulparams/aixrs6.sh: Add SYSCALL_MASK and SYMBOL_MODE_MASK
492         like emulparams/aixppc.sh.
494         * emultempl/aix.em (sc): Use ${srcdir}/emultempl/ostring.sed
495         instead of ${srcdir}/emultempl/stringify.sed.
497 2001-05-25  Timothy Wall  <twall@oculustech.com>
499         * emulparams/elf64_aix.sh: Change settings to match IBM linker
500         output.
502 2001-05-25  Alan Modra  <amodra@one.net.au>
504         * configure.host: Replace linuxoldld with linux*oldld.
505         * configure.tgt: Likewise.
507 2001-05-24  H.J. Lu  <hjl@gnu.org>
509         * emultempl/stringify.sed: Removed again.
511 2001-05-24  H.J. Lu  <hjl@gnu.org>
513         * emultempl/aix.em (OUTPUT_ARCH): Defined.
514         (gld${EMULATION_NAME}_before_parse): Initialize
515         ldfile_output_architecture, ldfile_output_machine and
516         ldfile_output_machine_name from ${OUTPUT_ARCH} if possible.
517         * emultempl/beos.em: Likewise.
518         * emultempl/elf32.em: Likewise.
519         * emultempl/linux.em: Likewise.
520         * emultempl/mipsecoff.em: Likewise.
521         * emultempl/pe.em: Likewise.
522         * emultempl/sunos.em: Likewise.
524 2001-05-24 Tom Rix <trix@redhat.com>
526         * emultempl/aix.em : (gld${EMULATION_NAME}_read_file)
527         udate import file format.
528         (change_symbol_mode) New, same
529         (is_syscall) New, same
530         * emulparams/aixppc.sh : add SYSCALL_MASK and SYMBOL_MODE_MASK
531         * emulparams/aixppc64.sh : same
532         * emulparams/aixrs6.sh : same
533         * emulparams/ppcmacos.sh : same
534         * emultempl/aix.em : use strtoull to parse options
535         * Makefile.am : add eaixppc64 emulation for xcoff64
536         * Makefile.in : same
537         * configure.tgt : same
539         * scripttempl/aix.sc : default text section offset to 0x10000000
540          default data section offset to 0x20000000
541         add .sv3264 and .sv64 pseudo sections
542         loader and debug sections use the currect section offset.
544         * emultempl/aix.em : Add xcoff64 support
545         Add -binitfini support
546         (gld${EMULATION_NAME}_before_parse) -binitfini
547         (gld${EMULATION_NAME}_parse_args) same
548         (gld${EMULATION_NAME}_before_allocation) format change for special
549         sections
551         * emulparams/aixppc64.sh : New file for xcoff64 support
553 2001-05-23  Alexandre Oliva  <aoliva@redhat.com>
555         * emultempl/elf32.em (ELF_INTERPRETER_SET_DEFAULT): Use this new
556         variable to avoid non-portable shell construct.
558 2001-05-23  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
560         * ldmain.c (get_emulation): Add -mips5 command line argument.
562 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
564         * emulparams/elf_i386_ldso.sh: New, copied from elf_i386.sh.
565         (ELF_INTERPRETER_NAME): Define it.
566         * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Use
567         it.
568         * configure.tgt (targ_emul, targ_extra_emuls)
569         [i[3456]86-*-solaris2*, i[3456]86-*-solaris*]: Use elf_i386_ldso
570         as primary, elf_i386 as extra.
571         * Makefile.am (ALL_EMULATIONS): Added eelf_i386_ldso.o.
572         (eelf_i386_ldso.c): New rule.
573         * Makefile.in: Rebuilt.
575 2001-05-22  Nick Clifton  <nickc@redhat.com>
577         * lexsup.c (ld_options):  Allow -I to be an alias for
578         --dynamic-linker.  This is for Solaris compatability.
579         * ld.texinfo: Document that -I can be used.
580         * ld.1: Regenerate.
582 2001-05-16  Alan Modra  <amodra@one.net.au>
584         * ldlang.c (wild_doit): Use linker_has_input to reliably determine
585         whether an input section is the first one assigned to an output
586         section.
587         Assorted formatting fixes.
589 2001-05-14  DJ Delorie  <dj@delorie.com>
591         * Makefile.am (ld.dvi): Search bfd/doc for texinfo files.
592         * Makefile.in: Ditto.
594 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
596         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
597         .gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
598         output sections.
599         * emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
601 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
603         * ldlang.c (lang_process): Call bfd_merge_sections.
605 2001-05-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
607         * ldgram.y: Fix typo.
609 2001-05-03  H.J. Lu  <hjl@gnu.org>
611         * emultempl/elf32.em: Include "libiberty.h".
612         (gld${EMULATION_NAME}_vercheck): Call basename () to get the
613         basename of the bfd filename.
614         (gld${EMULATION_NAME}_stat_needed): Likewise.
615         (gld${EMULATION_NAME}_try_needed): Likewise.
616         (gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
618 2001-05-02  H.J. Lu  <hjl@gnu.org>
620         * emultempl/pe.em: Include <ctype.h>.
622 2001-05-02  Johan Rydberg  <jrydberg@opencores.org>
624         * emulparams/elf32openrisc.sh: New file.
626         * Makefile.am: Add OpenRISC target.
627         * Makefile.in: Regenerated.
629         * configure.tgt: Add openrisc-*-* mapping.
631 2001-05-02  Nick Clifton  <nickc@redhat.com>
633         * emultempl/aix.em: Replace buystring with xstrdup.
634         * emultempl/beos.em: Replace buystring with xstrdup.
636 2001-05-02  H.J. Lu  <hjl@gnu.org>
638         * ldfile.c: Include "libiberty.h".
639         * ldlex.l: Likewise.
641         * ldmisc.c (buystring): Removed.
642         * ldmisc.h: Likewise.
644         * ldfile.c: Replace buystring with xstrdup.
645         * ldlang.c: Likewise.
646         * ldlex.l: Likewise.
647         * ldmain.c: Likewise.
648         * ldmisc.c: Likewise.
649         * lexsup.c: Likewise.
650         * mpw-eppcmac.c: Likewise.
652 2001-04-30  Andreas Jaeger  <aj@suse.de>
654         * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value.
656 2001-04-28  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
658         * ldlang.c (load_symbols): Give emulation a chance
659         to process unrecognized file before fatal error is
660         reported, not after.
662 2001-04-27  Sean McNeil <sean@mcneil.com>
664         * configure.tgt: Add arm-vxworks target.
665         * scripttempl/armcoff.sc: Support .text or .data as a section name
666         prefix.
667         Define _etext.
669 2001-04-13  J.T. Conklin  <jtc@redback.com>
671         * ld.texinfo: Document --fatal-warnings.
672         * ld.1: Regenerate.
674         * ldmisc.c (vfinfo): Set flag to inhibit making executable if
675         warnings have been turned into errors.
676         * lexsup.c (OPTION_WARN_FATAL): Define.
677         (ld_options): Entry for --fatal-warnings.
678         (parse_args): Handle OPTION_WARN_FATAL.
679         * ld.h (ld_config_type): Add fatal_warnings field.
681 2001-04-13  Jakub Jelinek  <jakub@redhat.com>
683         * ldmain.c (main): Default to discard_sec_merge.
684         * lexsup.c (OPTION_DISCARD_NONE): Define.
685         (ld_options): Add --discard-none.
686         (parse_args): Handle OPTION_DISCARD_NONE.
687         * ldlang.c (wild_doit): SEC_MERGE should be set in the output
688         section only if SEC_MERGE and SEC_STRINGS flags and entsize of
689         all its input sections match.
691 2001-04-05  Steven J. Hill  <sjhill@cotw.com>
693         * Makefile.am (ALL_EMULATIONS): Add eelf32ltsmip.o.
694         (ALL_64_EMULATIONS): Add eelf64btsmip.o and eelf64ltsmip.o.
695         (eelf32ltsmip.c): New target.
696         (eelf64btsmip.c): Likewise.
697         (eelf64ltsmip.c): Likewise.
698         * Makefile.in: Regenerated.
700         * configure.tgt (mips*el-*-linux-gnu): Uses traditional MIPS
701         target.
702         (mips*-*-linux-gnu*): Likewise.
704         * emulparams/elf32ltsmip.sh: New. Traditional little endian
705         MIPS taget.
706         * emulparams/elf64btsmip.sh: New. Traditional 64bit big endian
707         target.
708         * emulparams/elf64ltsmip.sh: New. Traditional 64bit little
709         endian target.
711 2001-04-05  Hans-Peter Nilsson  <hp@axis.com>
713         * emulparams/criself.sh (EXECUTABLE_SYMBOLS): Cannot provide
714         correct value of __Stext here.
715         (TEXT_START_SYMBOLS): Define; always define __Stext, to start of
716         .startup section.
718         * emulparams/crislinux.sh: Remove FIXME.
720 2001-04-02  Alan Modra  <alan@linuxcare.com.au>
722         * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 64k.
723         (TEXT_START_ADDR, TARGET_PAGE_SIZE): Likewise.
725 2001-03-27  Hans-Peter Nilsson  <hp@axis.com>
727         * configure.tgt (cris-*-*): Change default emulation to criself.
728         (cris-*-*aout*): New rule.
730 2001-03-27  Matthew Wilcox  <willy@ldl.fc.hp.com>
732         * emulparams/hppalinux.sh (MAXPAGESIZE): Set to 0x4000.
733         (TEXT_START_ADDR, TARGET_PAGE_SIZE): Ditto.
735 2001-03-26  Andreas Jaeger  <aj@suse.de>
737         * ld.texinfo (Overview): Fix syntax in texi code.
739 2001-03-25  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
741         * ld.texinfo: Put @c man indications to generate the ld man page.
742         When generating man, define all the variables.  Define SEEALSO
743         and SYNOPSIS.  Re-organize some lines to avoid the cross references.
744         * Makefile.am (MANCONF, TEXI2POD, POD2MAN): New variables.
745         (ld.1): Generate from ld.texinfo.
746         * Makefile.in: Regenerate.
748 2001-03-23  Mark Elbrecht <snowball3@bigfoot.com>
750         * scripttempl/i386go32.sc: Support the GCC flags '-ffunction-sections'
751           and '-fdata-sections'. Set the VMA of STABS sections to zero.
753 2001-03-17  Ulrich Drepper  <drepper@redhat.com>
755         * emultmpl/elf32.em (gld${EMULATION_NAME}_search_needed): If NAME
756         is an absolute path look only for this file and not along the path.
758 2001-03-17  Ulrich Drepper  <drepper@redhat.com>
760         * emultempl/elf32.em (OPTION_GROUP): New macro.
761         Add new option Bgroup to longopts.
762         (gld*_parse_args): Handle GROUP_OPTION and recognize -z defs.
763         (gld*_list_options): Add -Bgroup and -z defs.
764         * ld.1: Document -Bgroup and -z defs.
765         * ld.texinfo: Likewise.
767 2001-03-07  Michael Meissner  <meissner@redhat.com>
769         * scripttempl/elfd10v.sc (.rodata,.rodata1,.data1,.sdata): Deal
770         with sections created by -fdata-sections.
771         (.dynbss,.bss): Ditto.
773 2001-03-05  Alan Modra  <alan@linuxcare.com.au>
775         * emultempl/m68kelf.em (m68k_elf_after_allocation): Call
776         after_allocation_default, not gld..._before_allocation.
778 2001-02-27  Alan Modra  <alan@linuxcare.com.au>
780         * configure.in (BFD_VERSION): New.
781         (AM_INIT_AUTOMAKE): Use $BFD_VERSION.
782         * configure: Regenerate.
783         * Makefile.am: Run "make dep-am"
784         * Makefile.in: Regenerate.
786 2001-02-26  Timothy Wall  <twall@cygnus.com>
788         * emulparams/elf64_aix.sh: Add additional read-only sections;
789         uncomment lines which are now required.
791 2001-02-26  H.J. Lu  <hjl@gnu.org>
793         * ldlang.c (open_input_bfds): Set the bfd error handler so
794         that problems can be caught whilst loading symbols.
795         (record_bfd_errors): New function: Report BFD errors and mark
796         the executable output as being invalid.
798 2001-02-22  Timothy Wall  <twall@cygnus.com>
800         * configure.host: Add configuration for ia64-*-aix*.
801         * Makefile.am (ALL_64_EMULATIONS): Add emulation for ia64-*-aix*.
802         Add dependencies for eelf64_aix.c.
803         * Makefile.in: Regenerate.
804         * configure.tgt: Add ia64-*-aix* mapping.
805         * emulparams/elf64_aix.sh: Add settings for elf64 on aix5.
806         * testsuite/ld-bootstrap/bootstrap.exp: Exclude ia64 flavor from
807         AIX-specific test.
809 2001-02-20  H.J. Lu  <hjl@gnu.org>
811         * ldfile.c (ldfile_open_file): Set entry->search_dirs_flag to
812         false if we found the file.
814 2001-02-18  David O'Brien  <obrien@FreeBSD.org>
816         * configure.tgt: Add FreeBSD/Alpha, FreeBSD/x86-64, FreeBSD/ia64,
817         FreeBSD/PowerPC, FreeBSD/arm, and FreeBSD/sparc64 entries.
819 2001-02-18  lars brinkhoff  <lars@nocrew.org>
821         * Makefile.am: Add PDP-11 target.
822         * configure.tgt: Likewise.
823         * emulparams/pdp11.sh: New file.
825 2001-02-17  David O'Brien  <obrien@FreeBSD.org>
827         * configure.host: Add a generic FreeBSD configuration entry such that
828         all [modern] FreeBSD systems on all platforms will look the same.
830 2001-02-14  H.J. Lu  <hjl@gnu.org>
832         * configure.tgt: Remove mention of earmelf_linux26.
834 2001-02-13  Richard Henderson  <rth@redhat.com>
836         * emulparams/elf64_ia64.sh (OTHER_GOT_SYMBOLS): Remove.
838 2001-02-13  H.J. Lu  <hjl@gnu.org>
840         * ldexp.h (node_type): Add etree_provided.
841         * ldexp.c (exp_fold_tree): Handle etree_provided. Set the node
842         type to etree_provided if defined by PROVIDE. Allow updating
843         for etree_provided.
844         (exp_print_tree): Handle etree_provided.
845         * mpw-elfmips.c (gldelf32ebmip_find_exp_assignment): Handle
846         etree_provided.
848 2001-02-09  David Mosberger  <davidm@hpl.hp.com>
850         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add
851         .IA_64.unwind.* pattern to unwind table section and
852         .IA_64.unwind_info* pattern to unwind info section.
854 2001-02-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>
856         * Makefile.am: Add linux target for S/390.
857         * Makefile.in: Likewise.
858         * configure.host: Likewise.
859         * configure.tgt: Likewise.
860         * emulparams/elf64_s390.sh: New file.
861         * emulparams/elf_s390.sh: New file.
863 2001-02-09  Jakub Jelinek  <jakub@redhat.com>
865         * configure.tgt (sparc64-*-linux-gnu*): Add elf32_sparc into
866         targ_extra_libpath.
867         (sparc-*-linux-gnu*): Add elf64_sparc into targ_extra_libpath.
869 2001-02-06  Philip Blundell  <philb@gnu.org>
871         * Makefile.am: Remove mention of earmelf_linux26.
872         * Makefile.in: Regenerate.
874 2001-02-04  Philip Blundell  <philb@gnu.org>
876         * emulparams/armelf_linux.sh (TEXT_START_ADDR): Set to 0x8000.
877         * emulparams/armelf_linux26.sh: Delete.
878         * configure.tgt: Remove mention of armelf_linux26 emulation.
880 2001-02-01  Nick Clifton  <nickc@redhat.com>
882         * ld.1: Replace occurances of -oformat with --oformat.
884 2001-01-25  Jim Driftmyer <jdrift@stny.rr.com>
886         * ldlang.c (lang_leave_overlay): Don't set lma_region when
887         load_base is specified.
889 2001-01-24  Hans-Peter Nilsson  <hp@axis.com>
891         * emultempl/elf32.em: Correct spelling in comments and listed
892         options.
894 2001-01-23  Alan Modra  <alan@linuxcare.com.au>
896         * ldlang.c (lang_leave_overlay): Only set lma_region from the
897         default for the first section of a group of overlay sections.
899 2001-01-22  Alan Modra  <alan@linuxcare.com.au>
901         * Makefile.am (GENSCRIPTS): Pass exec_prefix.
902         * Makefile.in: Regenerate.
903         * genscripts.sh: Use exec_prefix parameter to specify tool lib.
904         Check for null tool_dir.
906 2001-01-16  Jim Wilson  <wilson@redhat.com>
908         * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Add IA_64.unwind
909         and IA_64.unwind.info.
911 2001-01-16  H.J. Lu  <hjl@gnu.org>
913         * ldlang.c (lang_check): Merge the private data only if the
914         input file has contents.
916 2001-01-14  Alan Modra  <alan@linuxcare.com.au>
918         * emulparams/hppalinux.sh (OUTPUT_FORMAT): Set to elf32-hppa-linux.
920         * emultempl/hppaelf.em (hppaelf_after_parse): New function,
921         enabling search for libmilli.  On a relocatable link, make .text
922         sections unique.
923         (LDEMUL_AFTER_PARSE): Define.
924         (hppaelf_finish): Correct spelling of relocatable in comments.
926         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
927         rummage through the script for sections on the unique list.
928         Correct length of strncmp for ".note".
929         (gld${EMULATION_NAME}_check_needed): Rearrange function.
931         * ldlang.c (unique_section_list): New var.
932         (unique_section_p): New function.
933         (walk_wild_section): Don't match sections on unique_section_list.
934         (lang_add_unique): New function.
935         Correct spelling of relocatable in comments.
937         * ldlang.h (struct unique_sections): Declare.
938         (unique_section_list): Declare.
939         (unique_section_p): Declare.
940         (lang_add_unique): Declare.
942         * lexsup.c (ld_options): Allow --unique to take an optional arg.
943         (parse_args [OPTION_UNIQUE]): Call lang_add_unique.
945         * ld.texinfo (--unique): Update.
947 2001-01-13  Nick Clifton  <nickc@redhat.com>
949         * lexsup.c (parse_args): Remove spurious white space.
951 2001-01-12  Nick Clifton  <nickc@redhat.com>
953         * lexsup.c (parse_args): Update copyright date.
955 2001-01-12  Philip Blundell  <pb@futuretv.com>
957         * configure.host: Set HOSTING_LIBS appropriately for ix86-cygwin.
959 2001-01-10  Kazu Hirata  <kazu@hxi.com>
961         * scripttempl/h8300.sc: Fix formatting.  Fix a comment typo.
962         * scripttempl/h8300h.sc: Fix formatting.
963         * scripttempl/h8300s.sc: Likewise.
964         * scripttempl/h8500.sc: Likewise.
965         * scripttempl/h8500b.sc: Likewise.
966         * scripttempl/h8500c.sc: Likewise.
967         * scripttempl/h8500m.sc: Likewise.
968         * scripttempl/h8500s.sc: Likewise.
970 2000-01-07  David O'Brien  <obrien@BSDi.com>
972         * emultempl/elf32.em: Only perform Linux ld hints processing when
973         targeting Linux.
975 2001-01-07  Philip Blundell  <philb@gnu.org>
977         * ld.texinfo (Bug Reporting): Update email address for reports.
979 2000-12-31  Nick Clifton  <nickc@redhat.com>
981         * lexsup.c (parse_args): Set opterr to 0 and detect unparsed long
982         options by checking for a return value of '?' not -1.
984 2000-12-28  Nick Clifton  <nickc@redhat.com>
986         * lexsup.c (struct ld_option): Add new enum value:
987         EXACTLY_TWO_DASHES.
988         (ld_options[]): Change -omagic, -output and -oformat options
989         to be EXACTLY_TWO_DASHES.
990         (OUTPUT_COUNT): Use ARRAY_SIZE.
991         (parse_args): Change parameter 'argc' to unsigned.
992         Place EXACTLY_TWO_DASHES options into new really_longopts
993         array.
994         If getopt_long_only fails, try calling getopt_long using the
995         really_longopts array.
996         (help): Print a double dash for both EXACTLY_TWO_DASHES and
997         TWO_DASHES options.
999         * ldlex.h: Fix prototype of parse_args.
1001         * ld.texinfo: Document that long options starting with 'o'
1002         must be preceeded by two dashes.  Change example of a single
1003         dashed long option from -oformat to -trace-symbol.
1005 2000-12-26  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
1007         * emultempl/pe.em (OPTION_NO_DEFAULT_EXCLUDES): Define.
1008         (longopts[]): New --no-default-excludes option.
1009         (gld_${EMULATION_NAME}_list_options): Document.
1010         (gld_${EMULATION_NAME}_parse_args): Handle.
1012 2000-12-13  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1014         * ldlang.c (new_stat): Revert the last beautification with "innocent"
1015         whitespace, it breaks the K&R C preprocessor.
1017 2000-12-11  DJ Delorie  <dj@redhat.com>
1019         * ld.texinfo: Add notes about --whole-archive and gcc.
1021 2000-11-18  Fred Fish  <fnf@be.com>
1023         * lexsup.c (OPTION_ALLOW_SHLIB_UNDEFINED): Define.
1024         (ld_options): Entry for --allow-shlib-undefined.
1025         (parse_args): Handle OPTION_ALLOW_SHLIB_UNDEFINED.
1026         * ldmain.c (main): Initialize link_info.allow_shlib_undefined
1027         to false.
1028         * ld.texinfo: Document new command line switch.
1030 2000-12-12  Geoffrey Keating  <geoffk@redhat.com>
1032         * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS):
1033         .fixup is actually read/write.
1034         * emulparams/elf32lppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
1035         * emulparams/elf32ppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
1036         * emulparams/elf32lppcsim.sh (OTHER_READWRITE_SECTIONS): Likewise.
1038 Mon Dec 11 14:50:33 MET 2000  Jan Hubicka  <jh@suse.cz>
1040         * NEWS: Add note about x86_64 architecture.
1042 2000-12-06  Mark Elbrecht  <snowball3@bigfoot.com>
1044         * scripttempl/i386go32.sc: Use PROVIDE with _etext, _edata, _end.
1045         Set DWARF2 sections to a VMA of zero.
1047 2000-12-01      Joel Sherrill <joel@OARcorp.com>
1049         * configure.tgt (arm-*-rtems*, a29k-*rtems*, h8300-*-rtems*):
1050         New targets.
1051         (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
1052         (sparc*-*-rtems*): Switched from a.out to ELF.
1054 2000-11-30  Jan Hubicka  <jh@suse.cz>
1056         * Makefile.am (ALL_EMULATIONS): Add eelf_x86_64.o
1057         (eelf_x86_64.c): New.
1058         * Makefile.in: Regenerate.
1059         * configure.tgt: Add support for x86_64-*-linux-gnu*.
1060         * emulparams/elf_x86_64.sh: New.
1062 2000-11-30  Hans-Peter Nilsson  <hp@axis.com>
1064         * emulparams/crislinux.sh (ENTRY): Change back to _start.
1065         (TEXT_START_SYMBOLS): Remove conditional setting of __start.
1067         * scripttempl/crisaout.sc: Change all RELOCATING not related to
1068         merging non-a.out sections into CONSTRUCTING.
1070 2000-11-28  Nick Clifton  <nickc@redhat.com>
1072         * ld.1 (COPYING): Mention that the GNU Free Documentation
1073         License is present in the sources, but not the output, and
1074         also available from the GNU website.
1075         (GNU Free Documentation License): Comment out this section.
1077 2000-11-28  David O'Brien  <obrien@dragon.nuxi.com>
1079         * emulparams/elf64alpha.sh (ENTRY): Remove leading underscore as ELF
1080         does not use them.
1082 2000-11-25  David O'Brien  <obrien@FreeBSD.org>
1084         * ld.1: Remove old date so it does not give the impression the manpage
1085         is way out of date.
1087 2000-11-24  Nick Clifton  <nickc@redhat.com>
1089         * configure.tgt (xscale-coff): Add target.
1090         (xscale-elf): Add target.
1092 2000-11-24  Fred Fish  <fnf@be.com>
1094         * ldmain.c (main): Remove redundant init of config.make_executable
1095         to true.
1097 2000-11-15  Richard Henderson  <rth@redhat.com>
1099         * emulparams/elf64alpha.sh (MAXPAGESIZE): Typo -- 64k, not 1M.
1101 2000-11-14  Kazu Hirata  <kazu@hxi.com>
1103         * scripttempl/h8300.sc: Fix formatting.
1104         * scripttempl/h8300h.sc: Likewise.
1105         * scripttempl/h8300s.sc: Likewise.
1107 Tue Nov 14 00:59:19 2000  Denis Chertykov  <denisc@overta.ru>
1109         * scripttempl/elf32avr.sc: Fix bug in .eeprom segment.
1111 2000-11-09  Philip Blundell  <pb@futuretv.com>
1113         * emultempl/pe.em: Define ___start_SECNAME and ___stop_SECNAME
1114         around orphan sections whose names can be represented in C.
1116 2000-11-07  Jim Wilson  <wilson@redhat.com>
1118         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): New local
1119         hold_sdata.  If SEC_SMALL_DATA set, set place to hold_sdata.
1121 2000-11-06  Nick Clifton  <nickc@redhat.com>
1123         * ld.texinfo: Add GNU Free Documentation License.
1124         * ldint.texinfo: Add GNU Free Documentation License.
1125         * ld.1: Add GNU Free Documentation License.
1127 2000-11-05  Alan Modra  <alan@linuxcare.com.au>
1129         * ldlex.l (yy_create_string_buffer): Init yy_is_our_buffer,
1130         yy_is_interactive, yy_at_bol, and yy_fill_buffer.
1132         * Makefile.am (DISTCLEANFILES): Add stringify.sed.
1133         Move 2000-11-02 Makefile.in changes to this file.
1134         * Makefile.in: Regenerate.
1136 2000-11-03  Nick Clifton  <nickc@redhat.com>
1138         * scripttempl/h8300.sc: Use ${CONSTRUCTING...} to enclose
1139         constructors and destructors.
1140         * scripttempl/h8300h.sc: Ditto.
1141         * scripttempl/h8300s.sc: Ditto.
1142         * scripttempl/h8500.sc: Ditto.
1143         * scripttempl/h8500b.sc: Ditto.
1144         * scripttempl/h8500c.sc: Ditto.
1145         * scripttempl/h8500m.sc: Ditto.
1146         * scripttempl/h8500s.sc: Ditto.
1147         * scripttempl/v850.sc: Ditto.
1148         * scripttempl/w65.sc: Ditto.
1149         * scripttempl/z8000.sc: Ditto.
1151 2000-11-02  Per Lundberg  <plundis@chaosdev.org>
1153         * Makefile.in (e_i386_chaos.c): New rule.
1154         (ALL_EMULATIONS): Added e_i386_chaos.o.
1155         * emulparams/elf_i386_chaos.sh: New file.
1156         * configure.tgt: Recognise i[3456]86-chaosdev-storm-chaos.
1158 2000-10-20  Jakub Jelinek  <jakub@redhat.com>
1160         * emulparams/elf64_sparc.sh (TEXT_START_ADDR,
1161         NONPAGED_TEXT_START_ADDR): Set to 4GB for Solaris targets.
1162         Fix sed invocation, so that it coped with '/' in Solaris 64bit
1163         library path suffix.
1164         Based on patch by Andrew Macleod <amacleod@cygnus.com>.
1166 2000-10-18  Hans-Peter Nilsson  <hp@axis.com>
1168         * scripttempl/crisaout.sc (.text, .data): Pad, with ALIGN (32),
1169         for consecutive sections.
1171 2000-10-17  Chandrakala Chavva  <cchavva@redhat.com>
1173         * lexsup.c: New option OPTION_TARGET_HELP. Prints all target specific
1174         options.
1175         * ld.texinfo: Added notes about this new option.
1177 2000-10-16  Nick Clifton  <nickc@redhat.com>
1179         * emultempl/pe.em (_after_open): Add tests of return values from
1180         bfd functions.  Emit appropriate error messages if necessary.
1182 2000-10-13  Nick Clifton  <nickc@redhat.com>
1184         * emultempl/pe.em (_after_open): Delete 'is2' and 'nsyms'
1185         local variables - they are not used, but leave in the call to
1186         bfd_canonicalize_symtab.
1187         (_open_dynamic_archive): Add #ifdef DLL_SUPPORT around use of
1188         pe_dll_search_prefix.
1190 2000-10-12  Charles Wilson  <cwilson@ece.gatech.edu>
1192         * emultempl/pe.em (pe_dll_search_prefix): New variable,
1193         (longopts): New --dll-search-prefix option.
1194         (gld_${EMULATION_NAME}_list_options): Document.
1195         (gld_${EMULATION_NAME}_parse_args): Handle.
1196         (gld_${EMULATION_NAME}_open_dynamic_archive): When linking
1197         dynamically, search for a dll named '<prefix><basename>.dll'
1198         in preference to 'lib<basename>.dll' if --dll-search-prefix
1199         is specified.
1201 2000-10-12  Alan Modra  <alan@linuxcare.com.au>
1203         * ldlang.c (section_already_linked): Set kept_section instead of
1204         sec->comdat->sec.
1206 2000-10-10  Kazu Hirata  <kazu@hxi.com>
1208         * deffile.h: Fix formatting.
1209         * lexsup.c: Likewise.
1210         * mri.c: Likewise.
1212 2000-10-09  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
1214         * pe-dll.c (make_one): Do not generate code thunk for DATA
1215         exports.
1216         (process_def_file): deduce DATA flag for auto-export sumbols.
1218 2000-10-09  Kazu Hirata  <kazu@hxi.com>
1220         * ld.h: Fix formatting.
1221         * ldcref.c: Likewise.
1222         * ldctor.h: Likewise.
1223         * ldemul.c: Likewise.
1224         * ldemul.h: Likewise.
1225         * ldexp.c: Likewise.
1226         * ldexp.h: Likewise.
1227         * ldfile.c: Likewise.
1228         * ldfile.h: Likewise.
1229         * ldlang.c: Likewise.
1230         * ldlang.h: Likewise.
1231         * ldmain.c: Likewise.
1232         * pe-dll.c: Likewise.
1234         * pe-dll.c: Revert some formatting fixes.
1236 2000-10-08  Kazu Hirata  <kazu@hxi.com>
1238         * pe-dll.c: Fix formatting.
1240 2000-10-05  Kazu Hirata  <kazu@hxi.com>
1242         * ldlang.c: Fix formatting.
1244 2000-10-03  DJ Delorie  <dj@redhat.com>
1246         * pe-dll.c (fill_edata): initialize entire block
1247         (make_one): fill in correct section.
1249 2000-10-03  Kazu Hirata  <kazu@hxi.com>
1251         * ldexp.c: Fix formatting.
1253 2000-10-02  DJ Delorie  <dj@redhat.com>
1255         * emultempl/pe.em (gld_*_after_open): detect case where there two
1256         import libraries for same dll; rename one to ensure proper link
1257         order.
1259         * pe-dll.c (process_def_file): compare ordinals to -1, not 0; fix
1260         typo
1261         (generate_edata): fix typo
1263 2000-09-29  Hans-Peter Nilsson  <hp@axis.com>
1265         * scripttempl/crisaout.sc (ENTRY): Now __start.
1266         (.text): Add default setting for __start.
1267         Remove CONSTRUCTORS handling.
1268         (/DISCARD/): Add .gnu.warning.*.
1269         * emulparams/crislinux.sh (ENTRY): Now __start.
1270         (TEXT_START_SYMBOLS): New; provide __Stext and __start default.
1271         * emulparams/criself.sh (OUTPUT_FORMAT): Now elf32-us-cris.
1272         (ENTRY): Now __start.
1273         (INITIAL_READONLY_SECTIONS): Add KEEP for .startup.
1274         (EXECUTABLE_SYMBOLS): Add default setting for __start.
1276 2000-09-29  Kazu Hirata  <kazu@hxi.com>
1278         * deffile.h: Fix formatting.
1279         * ld.h: Likewise.
1280         * ldcref.c: Likewise.
1281         * ldctor.c: Likewise.
1282         * ldctor.h: Likewise.
1283         * ldemul.c: Likewise.
1284         * ldemul.h: Likewise.
1285         * ldexp.c: Likewise.
1286         * ldexp.h: Likewise.
1287         * ldfile.c: Likewise.
1288         * ldfile.h: Likewise.
1289         * ldlang.c: Likewise.
1290         * ldlang.h: Likewise.
1291         * lexsup.c: Likewise.
1292         * mri.c: Likewise.
1293         * pe-dll.c: Likewise.
1295 2000-09-28  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
1297         * pe-dll.c (process_def_file): Uninitialized data wasn't
1298         exported with --export-all-symbols switch.
1300 2000-09-28  DJ Delorie  <dj@redhat.com>
1302         * pe-dll.c (fill_edata): rearrange the data so that ordinals and
1303         noname work properly.
1305 2000-09-28  Alan Modra  <alan@linuxcare.com.au>
1307         * ld.texinfo (HPPA ELF32): New section.
1309         * emultempl/hppaelf.em (group_size): New.
1310         (hppaelf_finish): Pass group_size to elf32_hppa_size_stubs.
1311         (PARSE_AND_LIST_PROLOGUE): Add OPTION_STUBGROUP_SIZE.
1312         (PARSE_AND_LIST_LONGOPTS): Add --stub-group-size.  Duplicate
1313         options to prevent abbreviations matching.
1314         (PARSE_AND_LIST_OPTIONS): Describe the above.  Reformat.
1315         (PARSE_AND_LIST_ARGS_CASES): Handle it.
1317 2000-09-21  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1319         * emultempl/m68kelf.em: Conditionalise the embedded relocs feature
1320         on the m68*-*-elf target.  Make it support COFF input objects.
1322 2000-09-21  Kazu Hirata  <kazu@hxi.com>
1324         * ldmain.c: Fix formatting.
1325         * ldmisc.c: Likewise.
1326         * ldver.c: Likewise.
1327         * ldwrite.c: Likewise.
1329 2000-09-21  Alan Modra  <alan@linuxcare.com.au>
1331         * ldwrite.c (clone_section): Silence gcc warnings.
1333 2000-09-20  Alan Modra  <alan@linuxcare.com.au>
1335         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Handle
1336         out of memory failure.
1338         * ldwrite.c (ldwrite): Remove unnecessary einfo arg.
1339         (clone_section): Handle out of memory failures.  Rename var to
1340         avoid c++ reserved word.
1342 2000-09-18  Alan Modra  <alan@linuxcare.com.au>
1344         * emultempl/hppaelf.em (hppaelf_add_stub_section): Rename
1345         stub_name param to stub_sec_name.
1346         (hppaelf_finish): Modify call to elf32_hppa_size_stubs.
1348 2000-09-10  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1350         * emultempl/m68kelf.em: New file.
1351         * emulparams/m68kelf.sh (EXTRA_EM_FILE): Use it.
1352         * Makefile.am (em68kelf.c): Add dependency on m68kelf.em.
1353         * Makefile.in: Regenerate.
1355 2000-09-15  Alan Modra  <alan@linuxcare.com.au>
1357         * emulparams/hppalinux.sh (DATA_START_SYMBOLS): Provide $global$
1358         only as needed.
1360 2000-09-13  Nick Clifton  <nickc@redhat.com>
1362         * ldmain.c (multiple_definition): Disable relaxation if
1363         multiple symbol definitions are encountered - otherwise the
1364         linker could abort with an assertion failure.
1366 2000-09-10  Nick Clifton  <nickc@redhat.com>
1368         * mri.c: Fix formatting.
1370 2000-09-07  H.J. Lu  <hjl@gnu.org>
1372         * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
1373         * configure: Rebuild.
1375 2000-09-07  H.J. Lu  <hjl@gnu.org>
1377         * Makefile.am (lexsup.o): Also depend on $(INCDIR)/demangle.h.
1378         * Makefile.in: Rebuild.
1380 2000-09-07  Alan Modra  <alan@linuxcare.com.au>
1382         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Fix
1383         broken list handling.  Create __start_SECNAME and __stop_SECNAME
1384         when no place-holder.  Add some comments.  Test both SEC_CODE and
1385         SEC_READONLY for hold_text to prevent .rodata orphan poisoning.
1386         Handle case where no output section statement created.
1388 2000-09-07  Niibe Yutaka  <gniibe@m17n.org>, Kaz Kojima  <kkojima@rr.iij4u.or.jp>, Alexandre Oliva  <aoliva@redhat.com>
1390         * configure.tgt (sh-*-linux*): Added.
1391         * Makefile.am: Added eshelf_linux and eshlelf_linux.
1392         * Makefile.in: Rebuilt.
1393         * emulparams/shelf_linux.sh: New file.
1394         * emulparams/shlelf_linux.sh: New file.
1396 2000-09-06  Alan Modra  <alan@linuxcare.com.au>
1398         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
1399         try shuffling sections when the orphan happens to be the place
1400         holder.  Keep count of unique section names generated so we speed
1401         the search for a new name.
1403 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
1405         * configure: Rebuilt with new libtool.m4.
1407 2000-09-05  Nick Clifton  <nickc@redhat.com>
1409         * Makefile.in: Regenerate.
1410         * aclocal.m4: Regenerate.
1411         * configure: Regenerate.
1412         * config.in: Regenerate.
1413         * po/ld.pot: Regenerate.
1415         * ldint.texinfo: Remove CVS revision marker - it foils local
1416         comparisons.
1418         * emultempl/ticoff.em: Remove extraneous comma.
1420 2000-09-05  Alan Modra  <alan@linuxcare.com.au>
1422         * emultempl/hppaelf.em (hppaelf_add_stub_section): Add SEC_RELOC
1423         to stub section flags.
1424         (hppa_for_each_input_file_wrapper): New.
1425         (hppa_lang_for_each_input_file): New.
1426         (lang_for_each_input_file): Define to call above.
1427         (multi_subspace): New.
1428         (hppaelf_finish): Pass multi_subspace to elf32_hppa_size_stubs.
1429         (PARSE_AND_LIST_PROLOGUE): Define.
1430         (PARSE_AND_LIST_LONGOPTS): Define.
1431         (PARSE_AND_LIST_OPTIONS): Define.
1432         (PARSE_AND_LIST_ARGS_CASES): Define.
1433         (hppaelf_finish): Call elf32_hppa_set_gp.
1434         (hppaelf_set_output_arch): Remove.
1435         (LDEMUL_SET_OUTPUT_ARCH): Remove.
1437         * emulparams/hppalinux.sh (ELFSIZE): Define.
1438         (MACHINE): Define.
1439         (OTHER_READONLY_SECTIONS): Define.
1440         (DATA_PLT): Define.
1441         (GENERATE_SHLIB_SCRIPT): Define.
1443         * ldlang.c: Add missing prototypes, and tidy others.  Change CONST
1444         to const throughout.  Change `void *' to `PTR' throughout.
1445         (lang_memory_default): Function is local to file, add `static'.
1447         * Makefile.am (ehppaelf.c): Depend on emultempl/elf32.em.
1448         (ehppalinux.c): Likewise.
1449         (earmelf.c): Likewise.
1450         (earmelf_linux.c): Likewise.
1451         (earmelf_linux26.c): Likewise.
1452         * Makefile.in: Regenerate.
1454         * ld.h (ld_config_type): Add unique_orphan_sections.
1455         * lexsup.c (OPTION_UNIQUE): Define.
1456         (ld_options): Add "--unique".
1457         (parse_args): Handle it.
1458         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't
1459         search for an existing output section if unique_orphan_sections is
1460         set.  Make use of bfd_get_unique_section_name rather than
1461         duplicating code here.
1462         * ld.texinfo: Describe --unique.
1464         * lexsup.c (ld_options): Make split-by-reloc arg optional. Add
1465         optional arg to split-by-file.
1466         (parse_args): Handle them.
1467         * ld.texinfo: Update description of these options.
1468         * ldwrite.c (clone_section): Pass in the section name.  Replace
1469         local code with bfd_get_unique_section_name.
1470         (split_sections): Tidy code and comments.  Use a list traversal
1471         more appropriate to the list construction.  Handle cooked section
1472         sizes.  Split when split_by_reloc reached rather than exceeded.
1473         Track section size and split when split_by_file reached.  Fix
1474         link_order_tail (even though it's not used).
1475         (ldwrite): Modify condition for calling split_sections to suit
1476         changed split_by_reloc and split_by_file.
1477         * ldmain.c (main): Init config.split_by_reloc and
1478         config.split_by_file to -1.
1479         * ld.h (ld_config_type): Change split_by_reloc to unsigned.
1480         Change split_by_file to bfd_size_type.
1482 2000-09-02  Nick Clifton  <nickc@redhat.com>
1484         * configure.in: Increase version number to 2.10.91.
1485         * NEWS: Mention new ability to support removal of duplicate DWARF2
1486         debug information.
1487         * configure: Regenerate.
1488         * aclocal.m4: Regenerate.
1489         * config.in: Regenerate.
1491 2000-09-02  Daniel Berlin <dberlin@redhat.com>
1493         * scripttempl/elf.sc: Add .gnu.linkonce.wi.* to .debug_info
1494         sections.
1495         * scripttempl/elf32avr.sc: Ditto.
1496         * scripttempl/elfd10v.sc: Ditto.
1497         * scripttempl/elfd30v.sc: Ditto.
1498         * scripttempl/elfi370.sc: Ditto.
1499         * scripttempl/elfm68hc11.sc: Ditto.
1500         * scripttempl/elfm68hc12.sc: Ditto.
1501         * scripttempl/elfi386beos.sc: Ditto.
1502         * scripttempl/v850.sc: Ditto.
1504 2000-08-31  Alexandre Oliva  <aoliva@redhat.com>
1506         * acinclude.m4: Include libtool and gettext macros from the
1507         top level.
1508         * aclocal.m4, configure: Rebuilt.
1510 2000-08-25  Nick Clifton  <nickc@redhat.com>
1512         * ldlang.c (open_output): When choosing the target for a
1513         particular endianness, do nothing if the target is not
1514         supported.
1516 2000-08-25  H.J. Lu  <hjl@gnu.org>
1518         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Don't
1519         check -rpath nor LD_RUN_PATH for cross link.
1520         * ld.texinfo: Document the change.
1522 2000-08-24  Hans-Peter Nilsson  <hp@axis.com>
1524         * NEWS: Mention support for CRIS.
1526 2000-08-23  H.J. Lu  <hjl@gnu.org>
1528         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Get
1529         the current runpath list from bfd_elf_get_runpath_list ()
1530         before search.
1532 2000-08-22  H.J. Lu  <hjl@gnu.org>
1534         * emultempl/elf32.em (gld${EMULATION_NAME}_after_open): Search
1535         the DT_RPATH/DT_RUNPATH entries for DT_NEEDED after
1536         LD_LIBRARY_PATH for native linker. Display the needed DSO if
1537         trace_file_tries is non-zero.
1538         (gld${EMULATION_NAME}_try_needed): Report the needed DSO found
1539         if trace_file_tries is non-zero.
1541         * ld.texinfo: Document the usage of DT_RPATH/DT_RUNPATH.
1542         * NEWS: Mention it.
1544 2000-08-14  Jason Eckhardt  <jle@cygnus.com>
1546         * NEWS: Mention i860 support.
1548 2000-08-14  Andreas Schwab  <schwab@suse.de>
1550         * scripttempl/elf.sc: Fix last change to use correct comment
1551         syntax.
1553 2000-08-10  Geoff Keating  <geoffk@cygnus.com>
1555         * scripttempl/elf.sc: Add a comment giving the correspondence
1556         between sections, per-datum sections, and linkonce sections.  Make
1557         the comment true even for .bss, .sdata, .sdata2, .sbss, and
1558         .sbss2.
1560 2000-08-10  Jason Eckhardt  <jle@cygnus.com>
1562         * emulparams/elf32_i860.sh: New file.
1563         * configure.tgt: Recognize new target i860-stardent-{sysv4*|elf*}.
1564         * Makefile.am (ALL_EMULATIONS): Add eelf32_i860.o.
1565         (eelf32_i860.c): New rule.
1566         * Makefile.in: Regenerate.
1568 2000-08-10  Nick Clifton  <nickc@cygnus.com>
1570         * emulparams/mipspe.sh (ENTRY): Add definition.
1572 2000-08-08  Peter Jeremy  <peter.jeremy@alcatel.com.au>
1574         * emultempl/elf32.em (_after_close): Refer to -rpath not --rpath
1575         in error message.
1577 2000-08-08  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1579         * scripttempl/elfm68hc11.sc: Define __bss_size symbol to indicate
1580         the final size of .bss section.
1581         * scripttempl/elfm68hc12.sc: Likewise.
1583 2000-08-04  Alan Modra  <alan@linuxcare.com.au>
1585         * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Rename to
1586         gld${EMULATION_NAME}_parse_args for consistency.  Combine
1587         lastoptind and prevoptind vars, and keep track of last optind.
1588         (gld_${EMULATION_NAME}_list_options): Rename to
1589         gld${EMULATION_NAME}_list_options.
1591 2000-08-03  Rodney Brown  <RodneyBrown@pmsc.com>
1593         * configure.tgt: Select targ_emul=elf_i386 for Unixware 7
1594         (i586-sco-sysv5uw7.1.0).
1596 2000-07-27  H.J. Lu  <hjl@gnu.org>
1598         * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
1599         (PARSE_AND_LIST_PROLOGUE): New.
1600         (PARSE_AND_LIST_LONGOPTS): Likewise.
1601         (PARSE_AND_LIST_OPTIONS): Likewise.
1602         (PARSE_AND_LIST_ARGS_CASES): Likewise.
1603         (PARSE_AND_LIST_EPILOGUE): Likewise.
1605 2000-07-28  Alan Modra  <alan@linuxcare.com.au>
1607         * emultempl/armelf.em: Elide functions common to elf32.em,
1608         ie. most of the file.
1609         (arm_elf_after_open): New.  Do arm specific things then call
1610         gld${EMULATION_NAME}_after_open.
1611         (arm_elf_before_allocation): New.  Call
1612         gld${EMULATION_NAME}_before_allocation then do arm specifics.
1613         (PARSE_AND_LIST_PROLOGUE): Define.
1614         (PARSE_AND_LIST_SHORTOPTS): Define.
1615         (PARSE_AND_LIST_LONGOPTS): Define.
1616         (PARSE_AND_LIST_OPTIONS): Define.
1617         (PARSE_AND_LIST_ARGS_CASES): Define.
1618         (LDEMUL_AFTER_OPEN): Define.
1619         (LDEMUL_BEFORE_ALLOCATION): Define.
1620         (LDEMUL_BEFORE_PARSE): Define.
1621         (LDEMUL_FINISH): Define.
1623         * emultempl/hppaelf.em: Similarly zap most of this file.
1624         (hppaelf_add_stub_section): Prototype.
1625         (hppaelf_layaout_sections_again): Prototype.
1626         (hook_in_stub): Prototype.
1627         (LDEMUL_SET_OUTPUT_ARCH): Define.
1628         (LDEMUL_FINISH): Define.
1629         (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define.
1631         * emulparams/armelf.sh (TEMPLATE_NAME): Use elf32.
1632         (EXTRA_EM_FILE): New.
1633         * emulparams/armelf_linux.sh: Likewise.
1634         * emulparams/armelf_linux26.sh: Likewise.
1635         * emulparams/hppalinux.sh: Likewise.
1636         * emulparams/hppaelf.sh: Likewise.
1637         (NOP): Define.
1639         * emultempl/elf32.em: Fix formatting.
1640         (EXTRA_EM_FILE): Source it.
1641         (LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL,
1642         LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION,
1643         LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET,
1644         LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH,
1645         LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS,
1646         LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN,
1647         LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE,
1648         LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE,
1649         LDEMUL_FIND_POTENTIAL_LIBRARIES): New shell vars.  Add code to
1650         allow functions in this file to be overridden.
1651         (PARSE_AND_LIST_SHORTOPTS): Handle it.
1653         * emultempl/m68kcoff.em: Include ldfile.h before ldemul.h.
1655         * emultempl/elf32.em: Reorganize file.
1657 2000-07-27  Ivan Kokshaysky  <ink@jurassic.park.msu.ru>
1659         * emulparams/elf64alpha.sh: Implement "-taso" emulation
1660         specific option to fit 64-bit executable in the lower
1661         31-bit address range.  This is done by changing start
1662         address of .interp (the very first section of executable)
1663         and then setting EF_ALPHA_32BIT elf header flag.
1665 2000-07-21  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
1667         * emultempl/m68kcoff.em: New file.
1668         * emulparams/m68kcoff.sh (TEMPLATE_NAME): Use m68kcoff template.
1669         * Makefile.am (em68kcoff.c): Depend on m68kcoff.em rather than
1670         generic.em.
1671         * Makefile.in: Regenerate.
1673 2000-07-20  H.J. Lu  <hjl@gnu.org>
1675         * emultempl/elf32.em (longopts): Duplicate "disable-new-dtags"
1676         and "disable-new-dtags" to stop getopt from treating -d/-e as
1677         abbreviations for these options.
1679 2000-07-20  H.J. Lu  <hjl@gnu.org>
1681         * ld.texinfo: Add documentation for --disable-new-dtags and
1682         --enable-new-dtags.
1684         * ldmain.c (main): Initialize link_info.new_dtags to false.
1686         * emultempl/elf32.em (gld_${EMULATION_NAME}_parse_args): Add
1687         --disable-new-dtags and --enable-new-dtags.
1688         (gld_${EMULATION_NAME}_list_options): Likewise.
1690 2000-07-05  Kenneth Block  <krblock@computer.org>
1692         * lexsup.c: Add optional style to demangle switch
1693         * ld.texinfo: Document optional style to demangle switch.
1695 2000-07-20  Hans-Peter Nilsson  <hp@axis.com>
1697         * Makefile.am (ALL_EMULATIONS): Add ecrisaout.o, ecriself.o,
1698         ecrislinux.o.
1699         (ecrisaout.c, ecriself.c, ecrislinux.c): New rules.
1700         Regenerate dependencies.
1701         * Makefile.in: Rebuild.
1702         * configure.tgt (cris-*-*): New target.
1703         * emulparams/crisaout.sh, emulparams/criself.sh,
1704         emulparams/crislinux.sh, scripttempl/crisaout.sc: New files.
1705         * po/POTFILES.in, po/ld.pot: Regenerate.
1707 2000-07-20  H.J. Lu  <hjl@gnu.org>
1709         * emultempl/elf32.em (gld_${EMULATION_NAME}_list_options):
1710         Print out ignored -z options.
1712 2000-07-19  H.J. Lu  <hjl@gnu.org>
1714         * emulparams/elf32mcore.sh (PARSE_AND_LIST_ARGS): Removed.
1715         (PARSE_AND_LIST_PROLOGUE): New.
1716         (PARSE_AND_LIST_LONGOPTS): Likewise.
1717         (PARSE_AND_LIST_OPTIONS): Likewise.
1718         (PARSE_AND_LIST_ARGS_CASES): Likewise.
1720         * ldmain.c (main): Clear link_info.flags and link_info.flags_1.
1722         * lexsup.c (ld_options): Comment out 'z'.
1723         (parse_args): Likewise.
1725         * emultempl/elf32.em: Include "elf/common.h".
1726         (gld_${EMULATION_NAME}_parse_args): Defined. Handle some -z
1727         options.
1728         (gld_${EMULATION_NAME}_list_options): Likewise.
1730         * ld.texinfo: Add documentation for the recognized -z options.
1732 2000-07-19  H.J. Lu  <hjl@gnu.org>
1734         * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Call
1735         bfd_elf_set_dt_needed_soname ().
1737 2000-07-18  DJ Delorie  <dj@cygnus.com>
1739         * pe-dll.c (pe_dll_id_target): check object target name also
1741 2000-07-18  Hans-Peter Nilsson  <hp@axis.com>
1743         * scripttempl/elf.sc (.init): Only do ${INIT_START} and
1744         ${INIT_END} if relocating.
1745         (.fini): Likewise ${FINI_START} and ${FINI_END}.
1747 2000-07-16  Charles Wilson  <cwilson@ece.gatech.edu>
1749         * emultempl/pe.em (gld_*_open_dynamic_archive): New search
1750         order for dynamic library '-lfoo' on pei386: libfoo.dll.a,
1751         foo.dll.a, libfoo.a, libfoo.dll, foo.dll. This fixes compatibility
1752         errors introduced by the old dynamic lib search order.
1754 2000-07-17  DJ Delorie  <dj@cygnus.com>
1756         * pe-dll.c (process_def_file): auto-export data items also
1757         (pe_process_import_defs): also see if _imp_ form needed
1759 2000-07-12  Charles Wilson  <cwilson@ece.gatech.edu>
1761         * pe-dll.c (make_one): fix a typo in the __imp_ name decoration
1762         for dll import libraries
1764 2000-07-12  Mark Elbrecht  <snowball3@bigfoot.com>
1766         * scripttempl/i386go32.sc: Support the g++ attribute init_priority in
1767         gcc 2.95.2 and later.
1769 2000-07-11  Kazu Hirata  <kazu@hxi.com>
1771         * ldfile.c (ldfile_try_open_bfd): Output '\n' after an error
1772         message.
1774 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
1776         * ldemul.h (struct lang_input_statement_struct): Remove forward
1777         declaration.
1778         (struct search_dirs): Likewise.
1779         * ldfile.h (struct lang_input_statement_struct): Likewise.
1780         Protect file from multiple inclusion.
1781         * ldlang.h (LANG_FOR_EACH_INPUT_STATEMENT): Move file_chain
1782         declaration from macro to file scope.
1784         * ldemul.c: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this order.
1785         * ldgram.y: Likewise here.
1786         * ldlang.c: And here.
1787         * ldmain.c: And here.
1788         * mpw-elfmips.c: And here.
1789         * mpw-eppcmac.c: And here.
1790         * emultempl/aix.em: And here.
1791         * emultempl/armcoff.em: And here.
1792         * emultempl/armelf.em: And here.
1793         * emultempl/armelf_oabi.em: And here.
1794         * emultempl/beos.em: And here.
1795         * emultempl/elf32.em: And here.
1796         * emultempl/hppaelf.em: And here.
1797         * emultempl/linux.em: And here.
1798         * emultempl/lnk960.em: And here.
1799         * emultempl/pe.em: And here.
1800         * emultempl/sunos.em: And here.
1801         * mpw-esh.c: And here. Include ldexp.h and ldlang.h too.
1802         * mpw-idtmips.c: Ditto.
1803         * emultempl/generic.em: Ditto.
1804         * emultempl/gld960.em: Ditto.
1805         * emultempl/gld960c.em: Ditto.
1806         * emultempl/mipsecoff.em: Ditto.
1807         * emultempl/ticoff.em: Ditto.
1808         * emultempl/vanilla.em: Ditto.
1810         * pe-dll.c: Include ldfile.h
1811         * ldver.c: Include ldexp.h, ldlang.h, ldfile.h
1813         * mpw-elfmips.c: (gldelf32ebmip_before_allocation): Add missing
1814         arguments to bfd_elf32_size_dynamic_sections call.
1815         (gldelf32ebmip_place_orphan): Add missing arguments to
1816         lang_leave_output_section_statement call.
1818 2000-07-10  H.J. Lu  <hjl@gnu.org>
1820         * emultempl/pe.em (pe_enable_stdcall_fixup): Protect with
1821         DLL_SUPPORT.
1822         (strhash): Likewise.
1823         (compute_dll_image_base): Likewise.
1824         (pe_undef_found_sym): Likewise.
1825         (pe_undef_cdecl_match): Likewise.
1826         (gld_${EMULATION_NAME}_open_dynamic_archive): Mark the
1827         argument "arch" with ATTRIBUTE_UNUSED.
1829 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
1831         * configure.tgt: Remove extraneous hppa*-*-linux-gnu*.
1833         From  Ryan Bradetich  <rbradetich@uswest.net>
1834         * ldwrite.c (SSIZE): Remove to cure macro redefinition warning.
1836 2000-07-09  Alan Modra  <alan@linuxcare.com.au>
1838         Changes to create multiple linker stubs, positioned immediately
1839         before the section where they are required.
1840         * emultempl/hppaelf.em: Include elf32-hppa.h.
1841         (stub_sec, file_chain): Delete.
1842         (hppaelf_create_output_section_statements): Don't make a stub
1843         section here.
1844         (hook_stub_info): New struct.
1845         (hook_in_stub): New function.
1846         (hppaelf_add_stub_section): New function.
1847         (hppaelf_finish): Do nothing for relocateable links.  Modify the
1848         call to elf32_hppa_size_stubs.  Move code for updating section
1849         layout from here...
1850         (hppaelf_layaout_sections_again): ..to here, a new function.
1852         * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Fix
1853         broken list handling.  Pass in a pointer to the list.
1854         (hppaelf_finish): Update call to hppaelf_delete_padding_statements
1855         for above changes.
1856         (hppaelf_before_parse): Prototype.
1857         (hppaelf_set_output_arch): Prototype.
1858         (hppaelf_create_output_section_statements): Prototype.
1859         (hppaelf_delete_padding_statements): Prototype.
1860         (hppaelf_finish): Prototype.
1862         Merge from elf32.em
1863         * emultempl/hppaelf.em: Include ctype.h.
1864         (struct orphan_save): New.
1865         (gld${EMULATION_NAME}_place_orphan): New.
1866         (output_rel_find): New.
1867         (hppaelf_get_script): Update from elf32.em.
1868         (ld_hppaelf_emulation): Rename to ld_${EMULATION_NAME}_emulation.
1869         Change emulation_name field to "${EMULATION_NAME}".  Add
1870         gld${EMULATION_NAME}_place_orphan.
1872         * Makefile.am (ALL_EMULATIONS): Reinstate ehppaelf.o,  add
1873         ehppalinux.o, sort it.  Regenerate dependencies.
1874         (ehppalinux.c): Depend on hppaelf.em
1875         * Makefile.in: Regenerate.
1877         * configure.tgt: targ_emul=hppalinux for hppa*linux
1879         * emulparams/hppalinux.sh: New.
1880         * emulparams/hppaelf.sh (TARGET_PAGE_SIZE): Write in hex.
1882 2000-07-08  Alan Modra  <alan@linuxcare.com.au>
1884         * lexsup.c (parse_args): Copy section name.
1886 2000-07-07  Charles Wilson  <cwilson@ece.gatech.edu>
1888         * emultempl/pe.em: institute the following search order for
1889         dynamic libraries on pei386: libfoo.dll.a, foo.dll.a (import
1890         libs), libfoo.dll, foo.dll (link direct to dll).  Fall back to
1891         static lib (libfoo.a) if none of the above are found.
1893 2000-07-07  Mumit Khan  <khan@xraylith.wisc.edu>
1895         * emultempl/pe.em (pe_enable_auto_image_base): New variable.
1896         (longopts): New --{enable,disable}-auto-image-base options.
1897         (gld_${EMULATION_NAME}_list_options): Document.
1898         (gld_${EMULATION_NAME}_parse): Handle.
1899         (strhash): New static function.
1900         (compute_dll_image_base): New static function.
1901         (gld_${EMULATION_NAME}_set_symbols): Use.
1903 2000-07-05  DJ Delorie  <dj@redhat.com>
1905         * MAINTAINERS: new
1907 2000-07-01  Koundinya K  <kk@ddeorg.soft.net>
1909         * configure.tgt: Add traditional mips (mips*-*-sysv4*) target.
1910         * emulparams/elf32btsmip.sh: New file.
1911         * Makefile.am: Add traditional mips target.
1912         * Makefile.in: Rebuild.
1914 2000-07-01  H.J. Lu  <hjl@gnu.org>
1916         * Makefile.am (EXTRA_ld_new_SOURCES): Set to deffilep.y for
1917         automake to use YLWRAP.
1918         * Makefile.in: Rebuild.
1920 2000-07-01  Alan Modra  <alan@linuxcare.com.au>
1922         * Makefile.am (DEP): Fix 2000-06-22.  grep after running dep.sed
1923         (CLEANFILES): Add DEPA.
1924         * Makefile.in: Regenerate.
1926 2000-06-30  Timothy Wall  <twall@ppc>
1928         * scripttempl/tic54xcoff.sc: PAGE N is not implemented, so encode
1929         the page in the upper octet of the address.
1931 2000-06-26  Marek Michalkiewicz  <marekm@linux.org.pl>
1933         * emulparams/avrmega161.sh (ARCH): Change to avr:5.
1935 2000-06-24  Alan Modra  <alan@linuxcare.com.au>
1937         * NEWS: arm-elf does --gc-sections too.
1939 2000-06-22  Alan Modra  <alan@linuxcare.com.au>
1941         * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
1942         find one.
1943         * Makefile.in: Regenerate.
1945 2000-06-21  H.J. Lu  <hjl@gnu.org>
1947         * Makefile.am: Rebuild dependency.
1948         * Makefile.in: Rebuild.
1950 2000-06-20  H.J. Lu  <hjl@gnu.org>
1952         * Makefile.am: Rebuild dependency.
1953         * Makefile.in: Rebuild.
1955 2000-06-20  Timothy Wall  <twall@cygnus.com>
1957         * scripttempl/tic54xcoff.sc: New.
1958         * ldlang.c (wild_doit): Propagate SEC_BLOCK flag.
1959         * gen-doc.texi: Add flag for TI COFF.
1960         * ld.texinfo: Add documentation for TI COFF handling switches.
1961         * emultempl/ticoff.em: New. TI COFF handling.
1962         * configure.tgt: Add tic54x target.
1963         * Makefile.am: Add tic54x target.
1964         * Makefile.in: Ditto.
1966 2000-06-20  Alan Modra  <alan@linuxcare.com.au>
1968         * ldmain.c (set_scripts_dir): Correct pointer comparison when
1969         checking for backslashes.
1971 2000-06-19  Alan Modra  <alan@linuxcare.com.au>
1973         * NEWS: Move entries not in 2.10 above "Changes in version 2.10".
1975 2000-06-18  Alan Modra  <alan@linuxcare.com.au>
1977         * NEWS: Update list of targets supporting --gc-sections.
1979         * scripttempl/elf.sc: KEEP .eh_frame contents.
1980         * scripttempl/elfd30v.sc: Same here.
1982 2000-06-18  Stephane Carrez  <stcarrez@worldnet.fr>
1984         * Makefile.am (ALL_EMULATIONS): Added new emulation for m68hc12
1985         and m68hc11 (elf).
1986         * Makefile.in: Rebuild.
1987         * configure.tgt: Recognize m68hc12 and m68hc11.
1988         * scripttempl/elfm68hc12.sc: New file.
1989         * emulparams/m68hc12elfb: New emulation.
1990         * emulparams/m68hc12elf: New emulation.
1991         * emulparams/m68hc11elfb.sh: New file.  User configurable emulation
1992         (includes a memory.x script to define the ROM and RAM banks).
1993         * scripttempl/elfm68hc11.sc, emulparams/m68hc11elf.sh:
1994         New configuration files for support of Motorola 68hc11
1996 2000-06-15  Alan Modra  <alan@linuxcare.com.au>
1998         * ldmain.c (main): Only change SEC_READONLY for final link.
2000 2000-06-13  H.J. Lu  <hjl@gnu.org>
2002         * configure: Regenerate.
2004 2000-06-08  David O'Brien  <obrien@FreeBSD.org>
2006         * configure.in (VERSION): Update to show this is the CVS mainline.
2008 2000-06-07  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
2010         * emultempl/mipsecoff.em (gld{EMULATION_NAME}_after_open): Require all
2011         input objects to be ECOFF.
2012         (check_sections): einfo takes %B, not %P, to print a BFD name.
2014 2000-06-05  Michael Matz <matz@ifh.de>
2016         * ldgram.y (vers_defns): Handle 'extern "C++" { ... }' in
2017         version scripts.
2019         * ldlex.l (V_IDENTIFIER): Accept `::' in symbols.
2021 2000-05-23  Marek Michalkiewicz  <marekm@linux.org.pl>
2023         * emulparams/avr1200.sh (STACK): Define as 0.
2024         * emulparams/avr23xx.sh (STACK): Define as last internal SRAM address.
2025         * emulparams/avr4433.sh (STACK): Likewise.
2026         * emulparams/avr44x4.sh (STACK): Likewise.
2027         * emulparams/avr85xx.sh (STACK): Likewise.
2028         * emulparams/avrmega103.sh (STACK): Likewise.
2029         * emulparams/avrmega161.sh (STACK): Likewise.
2030         * emulparams/avrmega603.sh (STACK): Likewise.
2031         * scripttempl/elf32avr.sc (__data_start): Define for gcrt1.
2032         (__stack): Define from ${STACK} for main().
2034 2000-05-26  Alan Modra  <alan@linuxcare.com.au>
2036         * Makefile.am: Update dependencies with "make dep-am"
2037         * Makefile.in: Regenerate.
2039 2000-05-26  Eli Zaretskii  <eliz@is.elta.co.il>
2041         * ldmain.c: Include filenames.h.
2042         (set_scripts_dir): Support backslashes in program name.
2044 2000-05-22  Igor Shevlyakov  <igor@windriver.com>
2046         * ldmain.c (main): When deciding if ".text" section should be
2047         read-only, don't forget to reset SEC_READONLY because it
2048         could be already set.
2050 2000-05-22  Thomas de Lellis  <tdel@windriver.com>
2052         * ld.1: Add documentation for new command line option:
2053                 --section-start <sectionname>=<sectionorg>
2054         This is a generic version of -Ttext etc. which accepts
2055         any section name as a parameter instead of just text/data/
2056         bss.
2057         * ld.texinfo: More docs.
2058         * NEWS: More docs.
2059         * lexsup.c: (parse_args): Recognize new command line option.
2060         (ld_options): Add new option.
2062 2000-05-18  H.J. Lu  <hjl@gnu.org>
2064         * lexsup.c (parse_args): `i' == `r', not `q'.
2066 Thu May 18 10:47:57 2000  Jeffrey A Law  (law@cygnus.com)
2068         * configure.tgt (hppa*64*-*-*): Enable PA64 target.
2070 2000-05-17 S. Bharadwaj Yadavalli  <sby@scrugs.lkg.dec.com>
2071               Rick Gorton          <gorton@scrugs.lkg.dec.com>
2073         Add support for '-q' == '--emit-relocs' switch.
2074         * ldmain.c (main): Default to false.
2075         * lexsup.c (parse_args): Turn on emitrelocations flag if set.
2076         * NEWS: Describe the emitrelocations switch.
2077         * ld.texinfo: Describe the emitrelocations switch.
2079 2000-05-16  Charles Wilson <cwilson@ece.gatech.edu>
2081         * emultempl/pe.em (_open_dynamic_archive): New function: Search
2082         the library path for "foo.dll" and "libfoo.dll" dynamic libraries
2083         before searching for 'libfoo.a' in response to a '-Bdynamic -lfoo'
2084         link options.
2086 2000-05-15  David O'Brien  <obrien@FreeBSD.org>
2088         * lexsup.c (parse_args): Update the year in the copyright notice.
2090 2000-05-13  Alan Modra  <alan@linuxcare.com.au>
2092         * ld.h (gettext, dgettext, dcgettext, textdomain, bindtextdomain):
2093         Replace defines with those from intl/libgettext.h to quieten gcc
2094         warnings.
2096 2000-05-10  H.J. Lu  <hjl@gnu.org>
2098         * ldlang.c (open_input_bfds): Don't load the same file within
2099         a group again if the whole archive has been loaded already.
2101 2000-05-03  Alan Modra  <alan@linuxcare.com.au>
2103         From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
2104         * lexsup.c (set_section_start): Use bfd_scan_vma rather than
2105         strtoul.
2107 Mon May  1 17:34:34 2000  Jim Wilson  <wilson@cygnus.com>
2109         * configure.host (ia64-*-linux-gnu*): Change gcc to ${CC}.
2111         * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
2112         host "ia64-*-linux-gnu*".
2114 2000-04-29  Andreas Jaeger  <aj@suse.de>
2116         * ld.h: Correctly check GCC version.
2118 Tue Apr 25 11:20:43 2000  Jeffrey A Law  (law@cygnus.com)
2120         * Makefile.am: Add PA64 support.  Add missing dependencies for
2121         PA32 elf support.
2122         * Makefile.in: Rebuilt.
2123         * configure.tgt: Add PA64 support (currently disabled).
2125 2000-04-25  Alan Modra  <alan@linuxcare.com.au>
2127         * emultempl/elf32.em (gld${EMULATION_NAME}_place_section): Delete.
2128         (output_rel_find): New function.
2129         (hold_section, hold_use): Delete.
2130         (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
2131         hold_interp): Make local to place_orphan.
2132         (gld${EMULATION_NAME}_place_orphan): Use lang_output_section_find
2133         rather than place_section to find possible previous use of orphan.
2134         Similarly find the place-holder output sections.  Use returned
2135         value from lang_enter_output_section_statement rather than calling
2136         lang_output_section_statement_lookup.
2137         * emultempl/armelf.em: Same here.
2138         * emultempl/pe.em: Similar to above, but no need for output_rel_find.
2140         * ldlang.c (lang_enter_output_section_statement): Return output
2141         section statement.
2142         * ldlang.h (lang_enter_output_section_statement): Change
2143         declaration too.
2145         * ldlang.h (lang_output_section_statement): Export it.
2146         * ldlang.c (lang_output_section_statement): Ditto.
2148 2000-04-24  Nick Clifton  <nickc@cygnus.com>
2150         * ld.texinfo (Output Section Data): Add note that section data
2151         commands cannot appear outside of section directives.
2153 2000-04-2  Matthew Green  <mrg@cygnus.com>
2155         * configure.tgt: Add NetBSD/sparc ELF, and NetBSD/sparc64 support.
2157 Fri Apr 21 13:20:53 2000  Richard Henderson  <rth@cygnus.com>
2158                           David Mosberger  <davidm@hpl.hp.com>
2160         * Makefile.am (ALL_64_EMULATIONS): Add eelf64_ia64.o.
2161         (eelf64_ia64.c): New rule.
2162         * Makefile.in: Rebuild.
2163         * configure.tgt (ia64-*-elf*, ia64-*-linux*): New targets.
2164         * emulparams/elf64_ia64.sh: New file.
2166 2000-04-21  Richard Henderson  <rth@cygnus.com>
2168         * scripttempl/elfd30v.sc: Place .gcc_except_table.
2170 2000-04-19  Alan Modra  <alan@linuxcare.com.au>
2172         * dep-in.sed: Match space at start of file name, not at end.
2174 2000-04-18  H.J. Lu  <hjl@gnu.org>
2176         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
2177         lang_leave_output_section_statement () after calling
2178         lang_enter_output_section_statement ().
2179         * emultempl/armelf.em: Likewise.
2181 2000-04-18  Alan Modra  <alan@linuxcare.com.au>
2183         * emultempl/elf32.em (struct orphan_save): Add section field.
2184         (gld${EMULATION_NAME}_place_orphan): Use above to keep sections in
2185         better order, and place first orphan section as we did before the
2186         2000-04-12 patch.  Ignore ~SEC_ALLOC sections when choosing place.
2187         Don't call make_bfd_section here, let wild_doit do the job for us.
2188         Don't build a statement list when we'll only throw it away.
2189         * emultempl/armelf.em: Ditto.
2190         * emultempl/pe.em: Similarly.
2192 2000-04-14  Geoff Keating  <geoffk@cygnus.com>
2194         * scripttempl/elfppc.sc: Remove.
2195         * emulparams/elf32ppc.sh: Use elf.sc.
2196         * emulparams/elf32lppc.sh: Use elf.sc.
2197         * emulparams/elf32ppclinux.sh: Use elf.sc.
2198         * emulparams/elf32ppcsim.sh: New file.
2199         * emulparams/elf32lppcsim.sh: New file.
2200         * Makefile.am: Update dependencies.  Add elf32ppcsim ad elf32lppcsim.
2201         (ALL_EMULATIONS): Add elf32ppcsim ad elf32lppcsim.
2202         * Makefile.in: Regenerate.
2203         * configure.tgt (powerpc-*): Add elf32ppcsim and elf32lppcsim.
2205 2000-04-14  Alan Modra  <alan@linuxcare.com.au>
2207         * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Process
2208         ~SEC_ALLOC sections too.  Init start address of debug sections.
2209         * emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan): Ditto.
2210         * emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Ditto.
2211         Also set all relocateable section start addresses.
2213 2000-04-13  Geoff Keating  <geoffk@cygnus.com>
2215         * scripttempl/elf.sc: Add support for .sbss2 and .sdata2 sections.
2216         Add new BSS_PLT variable for when .plt need not be contained in
2217         the file.  Move _etext so that it is also after .fini, and provide
2218         both etext and _etext with a leading underscore.  Mark the start
2219         and end of .sbss.
2221 2000-04-12  Alan Modra  <alan@linuxcare.com.au>
2223         * emultempl/elf32.em (struct orphan_save): New.
2224         (hold_text, hold_rodata, hold_data, hold_bss, hold_rel,
2225         hold_interp): Make them struct orphan_save.
2226         (gld${EMULATION_NAME}_place_section): Modify for new hold_*.
2227         (gld${EMULATION_NAME}_place_orphan): Add new orphan sections to
2228         the end of the relevant section list.  Also add associated section
2229         statements to the end of any previous orphan statements.
2230         * emultempl/armelf.em: Similarly.
2231         * emultempl/pe.em: Similarly.
2233 2000-04-11  Alan Modra  <alan@linuxcare.com.au>
2235         * ld.texinfo (Simple Example): Remove extraneous paragraph.
2237 Fri Apr  7 15:56:57 2000  Andrew Cagney  <cagney@b1.cygnus.com>
2239         * configure.in (WARN_CFLAGS): Set to -W -Wall by default.  Add
2240         --enable-build-warnings option.
2241         * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
2242         * Makefile.in, configure: Re-generate.
2244 2000-04-04  Alan Modra  <alan@linuxcare.com.au>
2246         * po/ld.pot: Regenerate.
2248         * lexsup.c (help): Restore translated part of bug string.
2250         * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
2251         (DEP): Quote when passing vars to sub-make.  Add warning message
2252         to end.
2253         (DEP1): Rewrite for "gcc -MM".
2254         (CLEANFILES): Add DEP2.
2255         Update dependencies.
2256         * Makefile.in: Regenerate.
2258 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
2260         * ld.h: #include "bin-bugs.h"
2261         * lexsup.c (help): Use REPORT_BUGS_TO.
2263 2000-03-27  Denis Chertykov  <denisc@overta.ru>
2265         * configure.tgt (avr-*-*): New target support.
2266         * Makefile.am: Likewise.
2267         * scripttempl/elf32avr.sc: New script file.
2268         * emulparams/avr1200.sh: New file.
2269         * emulparams/avr23xx.sh: New file.
2270         * emulparams/avr4433.sh New file.
2271         * emulparams/avr44x4.sh New file.
2272         * emulparams/avr85xx.sh New file.
2273         * emulparams/avrmega103.sh New file.
2274         * emulparams/avrmega161.sh New file.
2275         * emulparams/avrmega603.sh New file.
2276         * Makefile.in: Regenerate.
2278 2000-03-09  Andreas Jaeger  <aj@suse.de>
2280         * Makefile.am (check-DEJAGNU): Also unset LANG.
2281         * Makefile.in: Rebuild.
2283 2000-03-06  Ian Lance Taylor  <ian@zembu.com>
2285         * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
2286         archive.
2288 2000-03-02  H.J. Lu  <hjl@gnu.org>
2290         * emulparams/elf32mcore.sh: Include "getopt.h".
2292 2000-03-01  Ian Lance Taylor  <ian@zembu.com>
2294         * configure.tgt: Remove *-*-aout, *-*-coff, and *-*-netware.
2296 2000-03-01  H.J. Lu  <hjl@gnu.org>
2298         * emulparams/mipspe.sh: Add SUBSYSTEM and INITIAL_SYMBOL_CHAR.
2299         * emulparams/shpe.sh: Likewise.
2301 2000-03-01  Nick Clifton  <nickc@cygnus.com>
2303         * pe-dll.c: Remove unused variables and add ATTRIBUTE_UNUSED
2304         to unused parameters.
2306         * emultempl/pe.em: Add "#ifdef DLL_SUPPORT" around static
2307         functions only used by DLL code.
2308         (_place_orphan): Initialise 'dollar'.
2310 2000-03-01  H.J. Lu  <hjl@gnu.org>
2312         * ldmain.c (undefined_symbol): Take one more arg, fatal, to
2313         indicate if the undefined symbol is a fatal error or not.
2314         Don't delete the output file if "fatal" is false.
2316 2000-02-29  H.J. Lu  <hjl@gnu.org>
2318         * Makefile.am (check-DEJAGNU): Also pass LIBS="$(LIBS)".
2319         Set LC_COLLATE and LC_ALL to null and export them. It is for
2320         sort which expects the C locale.
2321         Add $(LIBS) to all $(HOSTING_LIBS).
2322         * Makefile.in: Rebuild.
2324 2000-02-29  Alan Modra  <alan@spri.levels.unisa.edu.au>
2326         * emultempl/{aix.em, armcoff.em, armelf.em, armelf_oabi.em,
2327         beos.em, elf32.em, generic.em, gld960.em, gld960c.em, hppaelf.em,
2328         linux.em, lnk960.em, mipsecoff.em, sunos.em, vanilla.em}
2329         (ld_emulation_xfer_struct): Add missing NULL initialiser for
2330         find_potential_libraries.
2332 2000-02-28  Jim Blandy  <jimb@redhat.com>
2334         * ldgram.y (exclude_name_list): Don't require a comma to separate
2335         list entries; the lexer considers commas to be valid part of a
2336         filename, so in something like `foo, bar' the comma is considered
2337         part of the first filename, `foo,'.
2338         * ld.texinfo: Update section on EXCLUDE_FILE lists.
2340 2000-02-27  Loren J. Rittle  <ljrittle@acm.org>
2342         * configure.host: Added HOSTING_CRT0, HOSTING_LIBS for
2343         host "i[3456]86-*-freebsdelf*".
2345 2000-02-27  Mark Elbrecht  <snowball3@bigfoot.com>
2347         * scripttempl/i386go32.sc: Move misplaced semicolons.
2349 2000-02-25  Ian Lance Taylor  <ian@zembu.com>
2351         * Makefile.am (ALL_EMULATIONS): Remove ehppaelf.o.
2352         (ALL_64_EMULATIONS): Remove eelf64hppa.o.
2353         (eelf64hppa.c, ehppaelf.c): Remove targets.
2354         * Makefile.in: Rebuild.
2356 2000-02-25  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
2358         * configure.tgt (targ_extra_ofiles): Enable elf64_sparc on
2359         GNU/Linux/sparc, but keep the default as 32.
2361         * configure.tgt: Enable elf64_sparc on Solaris7+/sparc.  And make
2362         it default if sparcv9 or sparc64.
2364 2000-02-24  Nick Clifton  <nickc@cygnus.com>
2366         * Makefile.am: Add rules to build emipspe.o and earmpe.o.
2367         * Makefile.in: Regenerate.
2368         * configure.tgt: Add targets for arm-wince, sh-pe and mips-pe.
2370         * ldemul.h (ld_emulation_xfer_struct): Add new field:
2371         find_potential_libraries.
2372         * ldemul.c (ldemul_find_potential_libraries): New function.
2374         * ldfile.c (ldfile_open_file_search): Allow function to be
2375         exported.
2376         (ldfile_open_file): Call ldemul_find_potential_libraries.
2377         * ldfile.h: Add prototype for ldfile_open_file_search.
2379         * pe-dll.c: Add support for ARM, MIPS and SH targets.
2381         * emulparams/mipspe.sh: New file.  Parameters for mips-pe target.
2382         * emulparams/shpe.sh: New file.  Parameters for sh-pe target.
2384         * emultempl/pe.em: Add support for ARM, MIPS and SH DLLs.
2385         (gld_X_find_potential_libraries): New function.  Search for
2386         libraries called "*.lib".
2388         * scripttempl/pe.sc: Add .pdata section.
2390 2000-02-23  Richard Henderson  <rth@cygnus.com>
2392         * scripttempl/elfd10v.sc: Remove dynamic linking hooks.
2393         Add and use memory regions.
2395 2000-02-23  Linas Vepstas (linas@linas.org)
2397         * emulparams/elf32i370.sh, scripttempl/elfi370.sc: New.
2399         * Makefile.am: Add support for Linux/IBM 370.
2400         * configure.tgt: Likewise.
2402         * Makefile.in: Regenerate.
2404 2000-02-21  Alan Modra  <alan@spri.levels.unisa.edu.au>
2406         * ldlang.c (print_input_section, print_data_statement,
2407         print_reloc_statement, print_padding_statement, insert_pad,
2408         size_input_section, lang_check_section_addresses,
2409         lang_size_sections, lang_do_assignments, lang_set_startof,
2410         lang_one_common): Change `opb' to unsigned.
2411         (lang_do_assignments): Also change `size' to unsigned.
2413 2000-02-16  Richard Henderson  <rth@cygnus.com>
2415         * scripttempl/elf.sc: Place OTHER_PLT_RELOC_SECTION.
2417 2000-02-16  Timothy Wall  <twall@cygnus.com>
2419         * mri.c (mri_draw_tree): Add default LMA region argument to call
2420         to lang_leave_output_section_statement.
2421         * ldlang.h: Update prototypes with LMA region arguments.
2422         * ldlang.c (lang_size_sections): Encapsulate region bounds
2423         checking in os_check_region call.
2424         (os_check_region): New function.
2425         (lang_output_section_statement_lookup): Initialize lma_region.
2426         (lang_leave_output_section_statement): Add LMA region argument.
2427         (lang_leave_overlay): Ditto.
2428         * ldgram.y: Handle LMA region syntax.
2429         * ld.texinfo (Output Section Description): Describe LMA region usage.
2430         * emultempl/armelf.em (gld$place_orphan): Add default value for
2431         lma region in call to lang_leave_output_section_statement.
2432         * emultempl/elf32.em (gld$place_orphan): Add default value for
2433         lma region in call to lang_leave_output_section_statement.
2434         * emultempl/pe.em (gld$place_orphan): Add default value for
2435         lma region in call to lang_leave_output_section_statement.
2438 2000-02-04  Timothy Wall  <twall@redhat.com>
2440         * ldlang.c (lang_check_section_addresses): Use bytes instead of
2441         octets when calculating section end addresses.
2443 2000-02-04  Timothy Wall  <twall@redhat.com>
2445         * ldlang.c (lang_size_sections): Fix typo in ALIGN_N invocation.
2447 2000-02-03  Timothy Wall <twall@redhat.com>
2449         * ldexp.c (fold_name): Make SIZEOF operator return byte count, not
2450         octet count.
2451         * ldlang.c (print_input_section, print_data_statement,
2452         print_reloc_statement, print_padding_statement): Print target
2453         address values and section sizes as bytes, not octets.
2454         (insert_pad) Calculate padding size in octets, and adjust "dot"
2455         by bytes.
2456         (size_input_section) Always adjust "dot" by bytes, not octets.
2457         (lang_check_section_addresses, lang_do_assignments) Adjust
2458         "dot" by bytes, not octets.  Use the larger of the directive size
2459         or octets_per_byte for the number of octets actually allocated in
2460         the output section.
2461         (lang_set_startof) Make sure STARTOF returns a target address.
2462         (lang_one_common) Record size changes in octets.
2463         (lang_abs_symbol_at_end_of) Section end symbol's value is
2464         recorded in target bytes.
2465         * ld.texinfo:   Updated description of BYTE, SHORT, LONG, etc.
2466         to be clear about behavior when an octet is smaller than one byte.
2468 2000-01-27  Alan Modra  <alan@spri.levels.unisa.edu.au>
2470         * ldcref.c (output_cref): Don't pass message strings to printf
2471         as format arg.
2472         Update copyright.
2474         * ldmisc.c (vfinfo): Same here.
2475         Update copyright.
2477 2000-01-23  Alan Modra  <alan@spri.levels.unisa.edu.au>
2479         * emultempl/{armcoff.em,armelf.em,armelf_oabi.em,beos.em,
2480         generic.em,gld960.em,gld960c.em,hppaelf.em,linux.em,lnk960.em,
2481         mipsecoff.em,sunos.em,vanilla.em} (ld_emulation_xfer_struct):
2482         Add missing NULL initialisers, and comments.
2484         * testsuite/ld-srec/sr3.cc (__rethrow): New.
2486 2000-01-21  Nick Clifton  <nickc@cygnus.com>
2488         * ldlang.c (lang_size_sections): Fix typo in comment.
2490 2000-01-18  H.J. Lu  <hjl@gnu.org>
2492         * ldlang.c (lang_size_sections): Also update the current
2493         address of a region if the SEC_NEVER_LOAD bit is not set.
2495 2000-01-10  Philip Blundell  <pb@futuretv.com>
2497         * configure.tgt (arm*-*-conix*): New target.
2499 2000-01-07  Nick Clifton  <nickc@cygnus.com>
2501         * ld.texinfo (Options): Remind users to preceed linker command
2502         line switches with -Wl, (or whatever is appropriate) if it is
2503         being invoked by a comnpiler driver program.
2504         Fix description of the behaviour of the -n command line switch.
2506 Wed Jan  5 08:02:12 2000  Catherine Moore  <clm@cygnus.com>
2508         * ld.h (wildcard_spec):  Change exclude_name to exclude_name_list.
2509         (name_list): New.
2510         * ld.texinfo (EXCLUDE_FILE): Update documentation.
2511         * ldgram.y (wildcard_spec): Support a list of excluded_files.
2512         (exclude_name_list): New.
2513         ldlang.c (walk_wild_section): Support list of excluded files.
2514         (print_wild_statement): Likewise.
2515         (lang_add_wild): Likewise.
2516         * ldlang.h (lang_wild_statement_type): Likewise.
2517         * scripttempl/elf.sc (OTHER_EXCLUDE_FILES): Support.
2519 2000-01-04  Mumit Khan  <khan@xraylith.wisc.edu>
2521         * pe-dll.c (pe_dll_warn_dup_exports): New variable.
2522         (process_def_file): Use.
2523         (pe_dll_compat_implib): New variable.
2524         (make_one): Use.
2526         * pe-dll.h: Add exports of pe_dll_warn_dup_exports and
2527         pe_dll_compat_implib.
2529         * emultempl/pe.em (longopts): Add warn-duplicate-exports and
2530         compat-implib options.
2531         (gld_${EMULATION_NAME}_list_options): List new options.
2532         (gld_${EMULATION_NAME}_parse_args): Handle.
2534         * pe-dll.c (pe_dll_generate_implib): Use the correct name for output
2535         dll.
2537         * deffilep.y (opt_name): Allow "." in name.
2539 For older changes see ChangeLog-9899
2541 Local Variables:
2542 mode: change-log
2543 left-margin: 8
2544 fill-column: 74
2545 version-control: never
2546 End: