Commit graph

121 commits

Author SHA1 Message Date
Nick Clifton
047c90248e PR binutils/6034
* objcopy.c (stuct symlist): Rename to
        is_specified_symbol_predicate_data.
        (strip_specific_list): Rename to strip_specific_htab.
        (strip_unneeded_list): Rename to strip_unneeded_htab.
        (keep_specific_list):  Rename to keep_specific_htab.
        (localize_specific_list): Rename to localize_specific_htab.
        (globalize_specific_list): Rename to globalize_specific_htab.
        (keepglobal_specific_list): Rename to keepglobal_specific_htab.
        (weaken_specific_list): Rename to weaken_specific_htab.
        (eq_string): New function.
        (create_symbol_htab): New function.
        (create_symbol_htabs): New function.
        (add_specific_symbol): Change to use hash tables.
        (is_specified_symbol_predicate): New function.
        (is_specified_symbol): Use hash table lookup.
        (is_strip_section): Update to use new functions and hash tables.
        (filter_symbols): Likewise.
        (copy_object): Likewise.
        (copy_section): Likewise.
        (strip_main): Likewise.
        (copy_main): Likewise.
        (main): Likewise.
2008-04-16 08:24:21 +00:00
Nick Clifton
a8da640382 Add support for thin archives.
* bfd/archive.c (_bfd_find_nested_archive): New function.
    (get_extended_arelt_filename): Add origin parameter.
    (_bfd_generic_read_ar_hdr_mag): Deal with extended name
    combined with a file offset.
    (append_relative_path): New function.
    (_bfd_get_elt_at_filepos): Deal with external members and
    nested archives.
    (bfd_generic_openr_next_archived_file): Thin archives.
    (bfd_generic_archive_p): Recognize new magic string.
    (adjust_relative_path): New function.
    (_bfd_construct_extended_name_table): Construct extended
    names for thin archive members.
    (_bfd_write_archive_contents): Emit new magic string, skip
    copying files for thin archives.
    * bfd/bfd-in.h (bfd_is_thin_archive): New macro.
    * bfd/bfd.c (struct bfd): New fields for thin archives.
    * bfd/libbfd-in.h (struct areltdata): New field for thin archives.
    * bfd/opncls.c (bfd_close): Delete BFDs for nested archives.
    * binutils/ar.c (make_thin_archive): New global flag.
    (map_over_members): Deal with full pathnames in thin archives.
    (usage, main): Add 'T' option for building thin archives.
    (replace_members): Pass thin archive flag to ar_emul_append.
    * binutils/arsup.c (ar_open): Initialize new flag.
    * binutils/binemul.c (ar_emul_append): Add new parameter for
    flattening nested archives.
    (do_ar_emul_default_append): New function.
    (ar_emul_default_append): Factored out recursive code.
    * binutils/binemul.h (ar_emul_default_append): Add new parameter.
    (struct bin_emulation_xfer_struct): New parameter for ar_append.
    * binutils/dlltool.c (gen_lib_file): Initialize thin archive flag.
    * binutils/emul_aix.c (ar_emul_aix_internal): Add new flatten
    parameter, currently unimplemented.
    All callers changed.
    * binutils/objcopy.c (copy_archive): Preserve thin archive flag.
    * binutils/doc/binutils.texi: Update ar documentation.
    * binutils/testsuite/binutils-all/ar.exp: Add thin archive tests.
    * include/aout/ar.h (ARMAGT): New magic string for thin archives.
2008-03-28 06:49:44 +00:00
Nathan Sidwell
2db6cde736 * bucomm.c (bfd_nonfatal_message): New.
* bucomm.h (bfd_nonfatal_message): Declare.
	* objcopy.c (RETURN_NONFATAL): Take BFD not NAME, use
	bfd_nonfatal_message.
	(copy_unknown_object): Adjust bfd_nonfatal and RETURN_NONFATAL
	calls, or replace with bfd_nonfatal_message calls as appropriate.
	(copy_object, copy_archive, copy_file, setup_section,
	copy_section, write_debugging_info): Likewise.
2007-08-30 10:19:03 +00:00
Alan Modra
6612555199 PR 4888
* objcopy.c (setup_section): Do modify section flags for ELF
	STRIP_NONDEBUG (reverting part of 2007-05-30 change).  Prevent
	header rewrite by twiddling input section flags instead.
	Simplify code setting SHT_NOBITS.
2007-08-04 08:26:38 +00:00
Nick Clifton
32866df75e Change sources over to using GPLv3 2007-07-05 16:54:46 +00:00
Alan Modra
e205a09915 PR 4716
* objcopy.c (filter_symbols): Correct relocatable file test.
2007-07-02 08:05:06 +00:00
Roland McGrath
c1c0eb9e7b 2007-06-28 Roland McGrath <roland@frob.com>
* objcopy.c (setup_section): Don't reset ELF section type to
	SHT_NOBITS when it is SHT_NOTE.
	* doc/binutils.texi (objcopy, strip): Mention under --only-keep-debug.
2007-06-29 00:34:14 +00:00
Alan Modra
cc481421d0 bfd/
* bfd.c (struct bfd): Rename "next" to "archive_next".
	* archive.c: Rename uses throughout file.
	* archive64.c: Likewise.
	* coff-rs6000.c: Likewise.
	* ecoff.c: Likewise.
	* som.c: Likewise.
	* bfd-in2.h: Regenerate.
binutils/
	* ar.c: Rename uses of bfd.next to bfd.archive_next throughout.
	* arsup.c: Likewise.
	* binemul.c: Likewise.
	* objcopy.c: Likewise.
	* dlltool.c: Likewise.
ld/
	* pe-dll.c: Rename uses of bfd.next to bfd.archive_next throughout.
2007-06-27 11:54:10 +00:00
Alan Modra
42bb2e3317 bfd/
* elf.c (elf_fake_sections): Adjust test for SHT_NOBITS sections
	created by objcopy --only-keep-debug.
	(_bfd_elf_init_private_section_data): Only change elf_section_type
	if it is SHT_NULL.
binutils/
	* objcopy.c (copy_object): Revert 2007-05-11 change.  Don't
	avoid calling bfd_copy_private_bfd_data for ELF STRIP_NONDEBUG.
	(setup_section): Don't modify flags, and don't avoid calling
	bfd_copy_private_section_data for ELF STRIP_NONDEBUG.
	* readelf.c (process_program_headers): Ignore .dynamic of type
	SHT_NOBITS.
2007-05-30 14:29:27 +00:00
Nathan Sidwell
12f498a721 * objcopy.c (strip_main): Detect identical input and output file
names.
	(copy_main): Refactor tempname detection and use.
2007-05-18 06:36:14 +00:00
Alan Modra
8adb2e35e2 PR 4479
* objcopy.c (copy_object): Don't copy ELF program headers for
	--only-keep-debug.
2007-05-11 14:09:50 +00:00
Alan Modra
3db64b0092 bfd/
Many files: Include sysdep.h before bfd.h.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
binutils/
	* bucumm.h: Split off host dependencies to..
	* sysdep.h: ..here.
	Many files: Include sysdep.h.  Remove duplicate headers and reorder.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
ld/
	Many files: Include sysdep.h first.  Remove duplicate headers.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
opcodes/
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
	* ns32k-dis.c: Include sysdep.h first.
2007-04-26 14:47:00 +00:00
Nick Clifton
312aaa3cfe * objcopy.c (filter_symbols): Explicitly stripping a symbol used in relocations is an error.
Retype 'keep' to bfd_boolean.
* binutils-all/objcopy.exp: Add test for stripping a symbol used in a relocation.
* binutils-all/needed-by-reloc.s: New file.
2007-04-24 10:56:58 +00:00
Nick Clifton
9e48b4c6ec * objcopy.c (reverse_bytes): New variable.
(command_line_switch, copy_main):  Add OPTION_REVERSE_ENDIAN.
  (copy_options, copy_usage):  Add "reverse-bytes" entry.
  (copy_section):  Reverse bytes within output sections.
* doc/binutils.texi:  Document new objcopy option.
* testsuite/binutils-all/objcopy.exp: Add test for --reverse-bytes.
2007-04-23 10:59:07 +00:00
H.J. Lu
1aa9ef630c 2007-04-12 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/4348
	* objcopy.c (copy_object): Don't stop when there are no
	sections to be copied.

testsuite/

2007-04-12  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/4348
	* binutils-all/empty.s: New file.
	* binutils-all/strip-3.d: Likewise.

	* binutils-all/objcopy.exp: Run strip-3 for ELF target.
2007-04-12 19:20:46 +00:00
Richard Sandiford
d3e52d400e binutils/
200x-xx-xx  Phil Edwards  <phil@codesourcery.com>
	    Richard Sandiford  <richard@codesourcery.com>

	* NEWS: Mention addition of --extract-symbol.
	* doc/binutils.texi: Document it.
	* objcopy.c (extract_symbol): New variable.
	(OPTION_EXTRACT_SYMBOLS): New command_line_switch.
	(copy_options): Add an entry for --extract-symbol.
	(copy_usage): Mention --extract-symbol.
	(copy_object): Set the start address to zero for --extract-symbol.
	Do not copy private BFD data in that case.
	(setup_section): Set the size, LMA and VMA to zero for
	--extract-symbol.  Do not copy private BFD data in that case.
	(copy_section): Do not copy section contents if --extract-symbol
	is passed.
	(copy_main): Set extract_symbol to TRUE if --extract-symbol
	is passed.

ld/testsuite/
	* ld-elf/extract-symbol-1sym.d, ld-elf/extract-symbol-1sec.d,
	* ld-elf/extract-symbol-1.s, ld-elf/extract-symbol-1.ld: New tests.
	* ld-elf/binutils.exp: Run them.
2007-03-01 16:39:42 +00:00
Joseph Myers
92f01d6100 top level:
2007-02-17  Mark Mitchell  <mark@codesourcery.com>
            Nathan Sidwell  <nathan@codesourcery.com>
            Vladimir Prus  <vladimir@codesourcery.com
            Joseph Myers  <joseph@codesourcery.com>

	* configure.ac (TOPLEVEL_CONFIGURE_ARGUMENTS): Fix quoting.
	* configure: Regenerate.

bfd:
2007-02-17  Mark Mitchell  <mark@codesourcery.com>
            Nathan Sidwell  <nathan@codesourcery.com>
            Vladimir Prus  <vladimir@codesourcery.com
            Joseph Myers  <joseph@codesourcery.com>

	* configure.in (--with-pkgversion): New option.
	* configure: Regenerate.
	* Makefile.am (bfdver.h): Substitute for @bfd_version_package@.
	* Makefile.in: Regenerate.
	* version.h (BFD_VERSION_STRING): Define using
	@bfd_version_package@.

bfd/doc:
2007-02-17  Mark Mitchell  <mark@codesourcery.com>
            Nathan Sidwell  <nathan@codesourcery.com>
            Vladimir Prus  <vladimir@codesourcery.com
            Joseph Myers  <joseph@codesourcery.com>

	* Makefile.in: Regenerate.

binutils:
2007-02-17  Mark Mitchell  <mark@codesourcery.com>
            Nathan Sidwell  <nathan@codesourcery.com>
            Vladimir Prus  <vladimir@codesourcery.com
            Joseph Myers  <joseph@codesourcery.com>

	* configure.in (--with-bugurl): New option.
	* configure: Regenerate.
	* Makefile.am (REPORT_BUGS_TO): Define.
	(INCLUDES): Define REPORT_BUGS_TO.
	Regenerate dependencies.
	* Makefile.in: Regenerate.
	* doc/Makefile.in: Regenerate.
	* bucomm.h: Remove include of bin-bugs.h.
	* addr2line.c (usage): Don't print empty REPORT_BUGS_TO.
	* ar.c (usage): Pass s to list_supported_targets.  Don't print
	empty REPORT_BUGS_TO.
	* coffdump.c (show_usage): Don't print empty REPORT_BUGS_TO.
	* cxxfilt.c (usage): Print bug url when giving help.
	* dlltool.c (usage): Likewise.
	* dllwrap.c (usage): Likewise.
	* nlmconv.c (show_usage): Don't print empty REPORT_BUGS_TO.
	* nm.c (usage): Likewise.
	* objcopy.c (copy_usage, strip_usage): Likewise.
	* objdump.c (usage): Likewise.
	* readelf.c ((usage): Likewise. Add STREAM argument.  Adjust
	callers.
	* size.c (usage): Don't print empty REPORT_BUGS_TO.
	* srconv.c (show_usage): Likewise.
	* strings.c (usage): Likewise.
	* sysdymp.c (show_usage): Likewise.
	* windres.c (usage): Likewise.

gas:
2007-02-17  Mark Mitchell  <mark@codesourcery.com>
            Nathan Sidwell  <nathan@codesourcery.com>
            Vladimir Prus  <vladimir@codesourcery.com
            Joseph Myers  <joseph@codesourcery.com>

	* configure.in (--with-bugurl): New option.
	* configure: Regenerate.
	* dep-in.sed: Remove bin-bugs.h.
	* Makefile.am (REPORT_BUGS_TO): Define.
	(INCLUDES): Define REPORT_BUGS_TO.
	(DEP_INCLUDES): Likewise.
	($(OBJS)): No longer depend on bin-bugs.h.
	* Makefile.in: Regenerate.
	* doc/Makefile.in: Regenerate.
	* as.c (show_usage): Don't print empty REPORT_BUGS_TO.
	* as.h: Remove include of bin-bugs.h.

gprof:
2007-02-17  Mark Mitchell  <mark@codesourcery.com>
            Nathan Sidwell  <nathan@codesourcery.com>
            Vladimir Prus  <vladimir@codesourcery.com
            Joseph Myers  <joseph@codesourcery.com>

	* configure.in (--with-pkgversion, --with-bugurl): New options.
	* configure: Regenerate.
	* Makefile.am (PKGVERSION, REPORT_BUGS_TO): Define.
	(INCLUDES): Define PKGVERSION and REPORT_BUGS_TO.
	Regenerate dependencies.
	* Makefile.in: Regenerate.
	* gprof.c (usage): Don't print empty REPORT_BUGS_TO.
	(main): Include PKGVERSION in version output.
	* gprof.h: Remove include of bin-bugs.h.

include:
2007-02-17  Mark Mitchell  <mark@codesourcery.com>
            Nathan Sidwell  <nathan@codesourcery.com>
            Vladimir Prus  <vladimir@codesourcery.com
            Joseph Myers  <joseph@codesourcery.com>

	* bin-bugs.h: Remove.

ld:
2007-02-17  Mark Mitchell  <mark@codesourcery.com>
            Nathan Sidwell  <nathan@codesourcery.com>
            Vladimir Prus  <vladimir@codesourcery.com
            Joseph Myers  <joseph@codesourcery.com>

	* configure.in (--with-bugurl): New option.
	* configure: Regenerate.
	* Makefile.am (REPORT_BUGS_TO): Define.
	(INCLUDES): Define REPORT_BUGS_TO.
	Regenerate dependencies.
	* Makefile.in: Regenerate.
	* ld.h: Remove include of bin-bugs.h.
	* lexsup.c (help): Don't print empty REPORT_BUGS_TO.
2007-02-17 13:33:57 +00:00
Alan Modra
485be06348 * bucomm.h (make_tempdir): Declare independently of HAVE_MKDTEMP.
* bucomm.c (template_in_dir): New function, split out from..
	(make_tempname): ..here.  Open the file with O_EXCL if !HAVE_MKSTEMP.
	(make_tempdir): Use template_in_dir.  Handle directory creation
	when !HAVE_MKDTEMP.
	* objcopy.c (MKDIR): Don't define.
	(copy_archive): Use make_tempdir when !HAVE_MKDTEMP too.  Fix
	error message.
2007-01-10 13:36:34 +00:00
Nick Clifton
f9c026a85b PR binutils/2876
* configure.in: Check for the mkstemp and mkdtemp functions.
* configure: Regenerate.
* config.in (HAVE_MKDTEMP): New potential define.
(MAKE_MKSTEMP): Likewise.
* bucomm.c (make_tempname): Use mkstemp if it is available.
* make_tempdir): New function: Create a temporary directory using mkdtemp, if
it is available.
* bucomm.h (make_tempdir): New prototype.
* objcopy.c (copy_archive): Use make_tempdir if it is available.
  (strip_main): Produce an warning message if a temporary file could not be
  (copy_main): Likewise.
* ar.c (write_archive): Likewise.
2006-10-13 09:43:29 +00:00
H.J. Lu
748fc5e9b4 binutils/
2006-09-14  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/3182
	* objcopy.c (group_signature): Return proper group signature.

binutils/testsuite/

2006-09-14  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/3182
	* binutils-all/objcopy.exp: Run strip-1 and strip-2 for ELF
	targets.

	* binutils-all/strip-1.d: New file.
	* binutils-all/strip-2.d: Likewise.

	* lib/utils-lib.exp (run_dump_test): Support strip.
2006-09-14 23:37:35 +00:00
Alan Modra
30288845d6 PR 3182
* elf.c (_bfd_elf_copy_private_header_data): Fix group members
	that have had their SHT_GROUP section removed.
	* objcopy.c (group_signature): New function, split out from..
	(setup_section): ..here.
	(is_strip_section): Return true for SHT_GROUP sections that are
	going to lose their group signature symbol.
2006-09-14 12:11:33 +00:00
Alan Modra
c39ada5438 PR 3182
* objcopy.c (copy_object): Load symbols earlier.
	(setup_section): Mark group signature symbols with BSF_KEEP.
2006-09-13 15:08:38 +00:00
Nick Clifton
ee873e002e PR binutils/3110
* objcopy.c (copy_archive): Add new parameter: force_output_target. If not
  true, then perserve the file formats of each copied archive element,
  otherwise force them to be one specific file format.
  (copy_file): Compute force_output_target parameter to pass to copy_archive.
2006-09-11 14:40:39 +00:00
Nick Clifton
91bb255c67 PR binutils/3166
* objcopy.c (is_strip_section): Do not treat group sections as debugging sections.
* doc/binutils.texi (--only-keep-debug): Document that this switch is only intended for use on fully linked files.
2006-09-05 08:22:27 +00:00
Nick Clifton
d68c385bfc PR binutils/3001
* addr2line.c (process_file): Change function from void to returning an int.  Return 0 upon success, 1 otherwise.
 (main): Use return value from process_file as the exit value.
* ar.c (ranlib_only):  Change function from void to returning an int.  Return 0 upon success, 1 otherwise.
  (ranlib_touch): Likewise.
  (main): Use return value from ranlib functions as exit value.
* objcopy.c (add_specific_symbol): Set status to 1 if get_file_size fails.
  (copy_file): Likewise.
  (strip_main): Likewise.
  (copy_main): Likewise.
* objdump.c (display_file): Set exit_status to 1 if get_file_size fails.
* size.c (display_file): Set return_code to 1 if get_file_size fails.
2006-08-06 15:49:46 +00:00
Richard Sandiford
d58c2e3acd binutils/
* objcopy.c (localize_hidden): New variable.
	(OPTION_LOCALIZE_HIDDEN): New command_line_switch value.
	(copy_options): Add --localize-hidden.
	(copy_usage): Mention --localize-hidden.
	(is_hidden_symbol): New function.
	(filter_symbols): Handle localize_hidden.
	(copy_object): Call filter_symbols if localize_hidden.
	(copy_main): Handle OPTION_LOCALIZE_HIDDEN.
	* doc/binutils.texi (--localize-hidden): Document new option.

binutils/testsuite/
	* binutils-all/localize-hidden-1.s,
	* binutils-all/localize-hidden-1.d,
	* binutils-all/localize-hidden-2.s,
	* binutils-all/localize-hidden-2.d: New tests.
	* binutils-all/objcopy.exp: Run them.
2006-06-23 16:23:09 +00:00
Nick Clifton
f9d4ad2a13 * objcopy.c (use_alt_mach_code): Change type to unsigned long.
(copy_object):  If bfd_alt_mach_code fails emit a more helpful message
   and if the target architecture is ELF use the alternative as replacement
   value for the e_machine number.
   (copy_main): Use strtoul to parse the number provided with the
   --alt-mach-code switch.
* doc/binutils.texi (--alt-mach-code): Document that this switch can now
    set the absolute e_machine value.
2006-02-28 16:09:01 +00:00
Nick Clifton
c8782eeec3 * objcopy.c (copy_object): Catch the case where an attempt is made to add a
section that already exists and produce a more helpful warning message.
2006-01-30 13:06:53 +00:00
Nick Clifton
6e2c86ac4d PR binutils/1391
* objcopy.c (copy_object): For PE format targets set the VMA of a newly
  created gnu_debuglink section to a non-zero, aligned, contiguous value.
* Makefile.am (objcopy.c): Add a dependency upon libbfd.h.
* Makefile.in: Regenerate.
2006-01-18 11:01:09 +00:00
Alan Modra
62d732f540 * objcopy.c (copy_object): Fix thinko. 2006-01-10 22:34:03 +00:00
Alan Modra
e2ba7bd7d0 * objcopy.c (copy_object): Set isympp and osympp to NULL after free. 2006-01-10 22:14:18 +00:00
Jan Beulich
1637cd900b binutils/
2005-11-15  Jan Beulich  <jbeulich@novell.com>

	* objcopy.c (keep_file_symbols): New.
	(enum command_line_switch): Add OPTION_KEEP_FILE_SYMBOLS.
	(strip_options): Add --keep-file-symbols.
	(copy_options): Likewise.
	(copy_usage): Likewise.
	(strip_usage): Likewise.
	(filter_symbols): Act upon keep_file_symbols.
	(strip_main): Handle OPTION_KEEP_FILE_SYMBOLS.
	(copy_main): Likewise.
	* doc/binutils.texi: Document --keep-file-symbols for objcopy
	and strip.
2005-11-15 08:33:38 +00:00
Nick Clifton
3ed30f54fc Remove spurious checking of a potential, but untested patch. 2005-10-12 08:55:55 +00:00
Nick Clifton
ec94898730 PR binutils/1437
* cxxfilt.c (flags): Remove DMGL_TYPES;
  (long_options): Rename --no-types to --types.
  (usage): Likewise.
  (demangle_it): Add a comment describing why _ and $ prefixes are skipped.
  Use printf rather than puts to emit the demangled output in order to avoid
  emitting a new line character.
  (main): Have the -t flag enable type demangling.
  Emit a newline after every demangled command line argument.
  Copy whitespace from stdin to stdout.
* doc/binutils.texi (c++filt): Document the change to the -t switch.
  Document why demangling names on the command line is slightly different
  to demangling names read from the standard input.
2005-10-11 16:33:16 +00:00
Mark Mitchell
07012eeef2 * addr2line.c (usage): Document @file.
* ar.c (usage): Likewise.
	* coffdump (usage): Likewise.
	* cxxfilt.c (usage): Likewise.
	* dlltool.c (usage): Likewise.
	* dllwrap.c (usage): Likewise.
	* nlmconv.c (usage): Likewise.
	* nm.c (usage): Likewise.
	* objcopy.c (usage): Likewise.
	* objdump.c (usage): Likewise.
	* readelf.c (usage): Likewise.
	* size.c (usage): Likeise.
	* srconv.c (usage): Likewise.
	* strings.c (usage): Likewise.
	* windres.c (usage): Likewise.
	* doc/binutils.texi: Add section on common options.
2005-10-03 19:37:44 +00:00
Mark Mitchell
869b9d07bb * addr2line.c (main): Likewise.
* ar.c (main): Likewise.
	* coffdump.c (main): Likewise.
	* cxxfilt.c (main): Likewise.
	* dlltool.c (main): Likewise.
	* dllwrap.c (main): Likewise.
	* nlmconv.c (main): Likewise.
	* nm.c (main): Likewise.
	* objcopy.c (main): Likewise.
	* objdump.c (main): Likewise.
	* readelf.c (main): Likewise.
	* size.c (main): Likeiwse.
	* srcconv.c (main): Likewise.
	* strings.c (main): Likewise.
	* sysdump.c (main): Likewise.
	* sysinfo.c (main): Likewise.
	* windres.c (main): Likewise.

	* ldmain.c (main): Use expandargv.

	* gprof.c (main): Use expandargv.

	* as.c (main): Use expandargv.
2005-09-30 16:37:32 +00:00
Alan Modra
551b43fde1 PR 1004
bfd/
	* elf-bfd.h (struct elf_backend_data): Add get_sec_type_attr.  Delete
	special_sections.
	(_bfd_elf_get_special_section): Declare.
	(bfd_elf_special_section): Update prototype.
	* elf.c (special_sections): Remove unused outer entries.
	(get_special_section): Delete.
	(_bfd_elf_get_special_section): New function.
	(_bfd_elf_get_sec_type_attr): Replace "name" arg with "sec".  Update
	special_sections indexing.
	(_bfd_elf_new_section_hook): Call backend get_sec_type_attr.
	* elf32-arm.c (symbian_special_sections_d): Delete.
	(symbian_special_sections_g, symbian_special_sections_h): Delete.
	(symbian_special_sections_i, symbian_special_sections_f): Delete.
	(symbian_special_sections_p): Delete.
	(elf32_arm_symbian_special_sections): Merge above to here.
	(elf32_arm_symbian_get_sec_type_attr): New function.
	(elf_backend_special_sections): Don't define.
	(elf_backend_get_sec_type_attr): Define.
	* elf32-m32r.c: Similarly to elf32-arm.c.
	* elf32-m68hc11.c: Likewise.
	* elf32-m68hc12.c: Likewise.
	* elf32-mcore.c: Likewise.
	* elf32-sh64.c: Likewise.
	* elf32-v850.c: Likewise.
	* elf32-xtensa.c: Likewise.
	* elf64-alpha.c: Likewise.
	* elf64-hppa.c: Likewise.
	* elf64-ppc.c: Likewise.
	* elf64-sh64.c: Likewise.
	* elfxx-ia64.c: Likewise.
	* elfxx-mips.c: Likewise.
	* elf32-ppc.c: Likewise.
	(bfd_elf_special_section ppc_alt_plt): New.  Use it if .plt loadable.
	* elfxx-mips.h (_bfd_mips_elf_get_sec_type_attr): Declare.
	(_bfd_mips_elf_special_sections, elf_backend_special_sections): Delete.
	(elf_backend_get_sec_type_attr): Define.
	* elfxx-target.h (elf_backend_get_sec_type_attr): Define.
	(elf_backend_special_sections): Don't define.
	(elfNN_bed): Update.

binutils/
	* objcopy.c (copy_object): Use bfd_make_section_with_flags.
	(write_debugging_info): Likewise.
	(setup_section): Use bfd_make_section_anyway_with_flags.
gas/
	* config/obj-elf.c (obj_elf_change_section): Use backend
	get_sec_type_attr.
2005-07-04 01:53:44 +00:00
H.J. Lu
77f762d6e4 2005-06-14 H.J. Lu <hongjiu.lu@intel.com>
PR 995
	* ar.c (BUFSIZE): Moved to ...
	* bucomm.h (BUFSIZE): Here.

	* bucomm.c: Include <assert.h>.
	(bfd_get_archive_filename): New.
	* bucomm.h (bfd_get_archive_filename): New.

	* objcopy.c (copy_unknown_object): New.
	(copy_object): Use bfd_get_archive_filename when reporting input
	error. Don't call fatal on unknown arch.
	(copy_archive): Call copy_unknown_object on unknown format or
	arch.
2005-06-14 13:26:42 +00:00
Nick Clifton
b43b5d5f76 Update FSF address 2005-05-08 14:17:41 +00:00
Jan Beulich
a580b8e051 binutils/
2005-05-06  Jan Beulich  <jbeulich@novell.com>

	* objcopy.c (copy_file): Don't delete output upon error here.
	(copy_main): Delete output upon error.
2005-05-06 06:32:43 +00:00
Nick Clifton
bee59fd28b PR872
* objcopy.c (copy_archive): Initialise 'obfd' field of new name_list structure.
2005-04-25 14:27:00 +00:00
Nick Clifton
5219e4c0b4 Oops - forgot one place where -K is documented. 2005-04-25 09:25:57 +00:00
Nick Clifton
e7f918adb6 * objcopy.c (copy_usage): Fix description of -K switch.
* doc/binutils.texi (strip, objcopy): Fix description of -K switch.
2005-04-25 09:23:24 +00:00
Nick Clifton
ac559f4a6d Issue an error message when attmepting to copy an empty input file. 2005-04-15 16:28:52 +00:00
Nick Clifton
7b4a0685e8 Add new switch --globalize-symbol to convert local symbols into globals. 2005-03-15 17:45:19 +00:00
Alan Modra
aef6203bd6 update copyright dates 2005-03-03 11:52:12 +00:00
Jan Beulich
bb14f52400 bfd/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* Makefile.am: Add dependency of cache.o on libiberty.h.
	* cache.c: Include libiberty.h.
	(bfd_open_file): Use unlink_if_ordinary instead of unlink.

binutils/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* ar.c (remove_output): Use unlink_if_ordinary instead of unlink.
	* objcopy.c (copy_file): Likewise.
	(strip_main): Likewise.

gas/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* as.c (main): Use unlink_if_ordinary instead of unlink.
	* messages.c (as_fatal): Likewise.

ld/
2005-03-02  Jan Beulich  <jbeulich@novell.com>

	* ldmain.c (remove_output): Use unlink_if_ordinary instead of unlink.
	* pe-dll.c (pe_dll_generate_implib): Likewise.
2005-03-02 09:03:58 +00:00
H.J. Lu
ebe372c1dd bfd/
2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>

	* coffcode.h (sec_to_styp_flags): Replaced SEC_CLINK with
	SEC_TIC54X_CLINK. Replace SEC_BLOCK with SEC_TIC54X_BLOCK.
	Replace SEC_SHARED with SEC_COFF_SHARED.
	(styp_to_sec_flags): Likewise.

	* elfxx-target.h (TARGET_BIG_SYM): Remove SEC_ARCH_BIT_0.
	(TARGET_LITTLE_SYM): Likewise.

	* section.c (SEC_ARCH_BIT_0): Removed.
	(SEC_LINK_DUPLICATES_SAME_CONTENTS): Defined with
	SEC_LINK_DUPLICATES_ONE_ONLY and SEC_LINK_DUPLICATES_SAME_SIZE.
	(SEC_SHARED): Renamed to ...
	(SEC_COFF_SHARED): This.
	(SEC_BLOCK): Renamed to ...
	(SEC_TIC54X_BLOCK): This.
	(SEC_CLINK): Renamed to ...
	(SEC_TIC54X_CLINK): This.
	(SEC_XXX): Rearranged. Move SEC_COFF_SHARED_LIBRARY,
	SEC_COFF_SHARED, SEC_TIC54X_BLOCK and SEC_TIC54X_CLINK to the
	end.
	* bfd-in2.h: Regenerated.

binutils/

2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>

	* objcopy.c (parse_flags): Replace SEC_SHARED with
	SEC_COFF_SHARED.

	* objdump.c (dump_section_header): Dump SEC_TIC54X_BLOCK and
	SEC_TIC54X_CLINK for TI c54x only. Remove SEC_ARCH_BIT_0. Dump
	SEC_COFF_SHARED for COFF only.

gas/

2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>

	* config/obj-coff.c (obj_coff_section): Replace SEC_SHARED with
	SEC_COFF_SHARED.

	* config/tc-tic54x.c (tic54x_bss): Replace SEC_BLOCK with
	SEC_TIC54X_BLOCK.
	(demand_empty_rest_of_line): Likewise.
	(tic54x_sblock): Likewise.
	(tic54x_clink): Replace with SEC_CLINK with SEC_TIC54X_CLINK.

ld/

2005-02-21  H.J. Lu  <hongjiu.lu@intel.com>

	* ldlang.c (lang_add_section): Check SEC_TIC54X_BLOCK for TI
	tic54x input only.
	(lang_size_sections_1): Check SEC_COFF_SHARED_LIBRARY for COFF
	and ECOFF output only.
2005-02-22 00:50:07 +00:00
Jan Beulich
bcf32829af binutils/
2004-12-15 Jan Beulich  <jbeulich@novell.com>

	* doc/binutils.texi: Document --strip-unneeded-symbol and
	--strip-unneeded-symbols.
	* objcopy.c (strip_unneeded_list): New.
	(enum command_line_switch): Add OPTION_STRIP_UNNEEDED_SYMBOL
	and OPTION_STRIP_UNNEEDED_SYMBOLS.
	(copy_options): Add  --strip-unneeded-symbol and
	--strip-unneeded-symbols.
	(copy_usage): Likewise.
	(filter_symbols): Suppress copying of symbol if in strip_unneeded_list
	and the symbol is not needed.
	(copy_main): Handle OPTION_STRIP_UNNEEDED_SYMBOL and
	OPTION_STRIP_UNNEEDED_SYMBOLS.
2004-12-16 13:16:33 +00:00
Nick Clifton
d412a550d4 strings.c (usage): Place radix values for -t option into the correct order.
objcopy.c (add_redefine_syms_file): Change error messages to use
  <filename>:<linenumber>: format for easier parsing by automatic tools.

srconv.c (show_usage): Fix spelling typo.

windres.c (format_from_filename): Suggest the use of -J instead	of -I if the
  file type cannot be determined.
2004-10-18 14:04:40 +00:00