+
+ * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes
+ to build warnings.
+ * configure: Regenerate.
+
+
+ * emultempl/elf32.em (output_prev_sec_find): Add missing prototype.
+
+ * scripttempl/elf.sc: Move non-text .dynamic section before
+ .plt/.got/.sdata* group.
+ (OTHER_GOT_SECTIONS): Move to immediately after .got.
+ (OTHER_SDATA_SECTIONS): Add.
+ * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than
+ OTHER_GOT_SECTIONS.
+ * emulparams/crislinux.sh: Likewise.
+ * emulparams/elf32b4300.sh: Likewise.
+ * emulparams/elf32bmip.sh: Likewise.
+ * emulparams/elf32bmipn32.sh: Likewise.
+ * emulparams/elf32bsmip.sh: Likewise.
+ * emulparams/elf32btsmip.sh: Likewise.
+ * emulparams/elf32ebmip.sh: Likewise.
+ * emulparams/elf32elmip.sh: Likewise.
+ * emulparams/elf32l4300.sh: Likewise.
+ * emulparams/elf32lmip.sh: Likewise.
+ * emulparams/elf32lsmip.sh: Likewise.
+ * emulparams/elf32ltsmip.sh: Likewise.
+ * emulparams/elf64bmip.sh: Likewise.
+ * emulparams/elf64btsmip.sh: Likewise.
+ * emulparams/elf64ltsmip.sh: Likewise.
+
+
+ * genscripts.sh: Source the emulparams script before each output
+ script is generated so that variables like `RELOCATING' may affect
+ variables defined in the emulparams script.
+
+
+ * emultempl/aix.em: ldexp.h,ldlang.h,ldfile.h,ldemul.h go in this
+ order.
+
+ * emultempl/beos.em (sort_sections): Modify for 2001-08-03 change,
+ ie. iterate over wild_statement.section_list.
+ (gld${EMULATION_NAME}_place_orphan): Likewise.
+
+
+ * scripttempl/elfm68hc12.sc (FINISH_CODE, FINISH_RELOC): New to handle
+ .fini[0-4] sections used by _exit
+ (CTOR, DTOR): Export ctor/dtor symbols; move them to ROM.
+ (*.text,*.data,*.bss): Take into account .text.*, .data.*, .bss.*.
+ * scripttempl/elfm68hc11.sc: Likewise.
+
+
+ * emultempl/beos.em (init): Add the missing initialization.
+
+
+ * ld.texinfo (Input Section Basics): Clarify ordering of output
+ sections.
+ * ldlang.c (callback_t): Add wildcard_list param.
+ (walk_wild_section): Remove "section" param. Rewrite for
+ lang_wild_statement_type change. Remove unique_section_p test.
+ (walk_wild_file): Remove "section" param.
+ (walk_wild): Remove "section" and "file" params.
+ (lang_gc_wild): Likewise.
+ (wild): Likewise. Modify for lang_wild_statement_type change.
+ (wild_sort): Likewise. Add "sec" param.
+ (gc_section_callback): Likewise.
+ (output_section_callback): Likewise. Do unique_section_p test.
+ (map_input_to_output_sections): Modify call to wild.
+ (lang_gc_sections_1): Likewise.
+ (print_wild_statement): Modify for lang_wild_statement_type
+ change.
+ (lang_add_wild): Replace filename, filenames_sorted param with
+ filespec. Replace section_name, sections_sorted,
+ exclude_filename_list with section_list.
+ * ldlang.h (lang_add_wild): Here too.
+ (lang_wild_statement_type): Replace section_name, sections_sorted,
+ and exclude_filename_list with section_list.
+ * ldgram.y (current_file): Delete.
+ (%union): Add wildcard_list.
+ (file_NAME_list): Set type to wildcard_list. Build a linked list
+ rather than calling lang_add_wild for each entry.
+ (input_section_spec_no_keep): Call lang_add_wild here instead.
+ * ld.h (struct wildcard_list): Declare.
+ * mri.c (mri_draw_tree): Modify to suit new lang_add_wild.
+
+
+ * ldmain.c (main): initialize link_info.pei386_auto_import
+ * pe-dll.c: new tables for auto-export filtering
+ (auto_export): change API, pass abfd for contextual filtering.
+ Loop thru tables of excluded symbols instead of comparing
+ "by hand".
+
+
+ * pe-dll.c: new variable pe_dll_enable_extra_debug. New
+ static variable current_sec (static struct sec *). Add
+ forward declaration for add_bfd_to_link.
+ (process_def_file): Don't export undefined symbols. Do not
+ export symbols starting with "_imp__". Call auto_export()
+ with new API.
+ (pe_walk_relocs_of_symbol): New function.
+ (generate_reloc): add optional extra debugging
+ (pe_dll_generate_def_file): eliminate extraneous initial blank
+ line in output
+ (make_one): enlarge symtab to make room for __nm__ symbols
+ (DATA auto-import support).
+ (make_singleton_name_thunk): New function.
+ (make_import_fixup_mark): New function.
+ (make_import_fixup_entry): New function.
+ (pe_create_import_fixup): New function.
+ (add_bfd_to_link): Specify that 'name' argument is a CONST
+ char *.
+ * pe-dll.h: declare new variable pe_dll_extra_pe_debug;
+ declare new functions pe_walk_relocs_of_symbol and
+ pe_create_import_fixup.
+ * emultempl/pe.em: add new options --enable-auto-import,
+ --disable-auto-import, and --enable-extra-pe-debug.
+ (make_import_fixup): New function.
+ (pe_find_data_imports): New function.
+ (pr_sym): New function.
+ (gld_${EMULATION_NAME}_after_open): Add optional extra pe
+ debugging. Call pe_find_data_imports. Mark .idata as DATA, not
+ CODE.
+
+
+ * ld.texinfo: add additional documentation for
+ --export-all-symbols. Document --out-implib,
+ --enable-auto-image-base, --disable-auto-image-base,
+ --dll-search-prefix, --enable-auto-import, and
+ --disable-auto-import.
+ * ldint.texinfo: Add detailed documentation on auto-import
+ implementation.
+
+
+ * ld.texinfo (Simple Assignments): Fix computation in SECTIONS
+ example.
+
+
+ * Makefile.am: Update dependencies with "make dep-am".
+ * Makefile.in: Regenerate
+
+
+ * ldcref.c (check_section_sym_xref): New function.
+ (check_nocrossrefs): Call it.
+ (check_nocrossref): Interate over h->refs here instead of..
+ (check_refs): ..here. Pass in the symbol name, section, and bfd
+ rather than hash_entry pointers.
+ (struct check_refs_info): Keep symbol name rather than hash entry.
+ Remove "same".
+ (check_reloc_refs): Tweak for above changes in check_refs_info.
+ Only report references to section syms when symname is NULL to
+ prevent duplicate messages for the same reloc.
+
+
+ * ldexp.c (exp_print_tree): Use stderr if config.map_file is not
+ available. Do not print NULL trees.
+ (exp_print_token): Print unknown tokens with values > 126 as
+ decimal values not ASCII characters.
+
+ * ldlang.c (lang_leave_overlay): If a region is specified assign
+ it to all sections inside the overlay unless they have been
+ assigned to the own, non-default, memory region.
+
+ * README: Add header for consistency with other README files.
+
* emultempl/elf32.em (output_prev_sec_find): Never return
- * Makefile.am (ld.1): Remove the prefix `$(srcdir)/'.
- (diststuff): Add $(MANS).
- * Makefile.in: Regenerated.
+ * Makefile.am (ld.1): Remove the prefix `$(srcdir)/'.
+ (diststuff): Add $(MANS).
+ * Makefile.in: Regenerated.
- * ld.1: Removed.
+ * ld.1: Removed.
* ldlang.c (walk_wild): Only call walk_wild_file if
lookup_name returns something.
- (lookup_name): If load_symbols fails, return NULL.
- (load_symbols): Chnage to a boolean function.
- (open_input_bfds): If load_symbols fails then do not make the
+ (lookup_name): If load_symbols fails, return NULL.
+ (load_symbols): Chnage to a boolean function.
+ (open_input_bfds): If load_symbols fails then do not make the
executable.
- * emulparams/elf32openrisc.sh: New file.
+ * emulparams/elf32openrisc.sh: New file.
- * Makefile.am: Add OpenRISC target.
- * Makefile.in: Regenerated.
+ * Makefile.am: Add OpenRISC target.
+ * Makefile.in: Regenerated.
- * configure.tgt: Add openrisc-*-* mapping.
+ * configure.tgt: Add openrisc-*-* mapping.
- * ldlang.c (load_symbols): Give emulation a chance
- to process unrecognized file before fatal error is
- reported, not after.
+ * ldlang.c (load_symbols): Give emulation a chance
+ to process unrecognized file before fatal error is
+ reported, not after.
* ldlang.c (open_input_bfds): Set the bfd error handler so
- that problems can be caught whilst loading symbols.
- (record_bfd_errors): New function: Report BFD errors and mark
- the executable output as being invalid.
+ that problems can be caught whilst loading symbols.
+ (record_bfd_errors): New function: Report BFD errors and mark
+ the executable output as being invalid.