Commit graph

153 commits

Author SHA1 Message Date
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
Joseph Myers
b67ce46f15 * config/default.exp (gcc_gas_flag, dlltool_gas_flag): Define to
empty for testing an installed toolchain.
2008-02-26 12:29:10 +00:00
Bob Wilson
2d312b6be3 binutils/testsuite/
* binutils-all/objdump.exp (cpus_expected): Add xtensa.
ld/testsuite/
    * ld-undefined/undefined.exp: XFAIL for xtensa*-*-linux*.
2008-02-04 23:41:54 +00:00
Alan Modra
08a80eb619 * binutils-all/windres/windres.exp: Don't xfail. 2007-10-26 06:45:07 +00:00
Nick Clifton
504b7d2026 Support the use of the STT_COMMON type. (In source and object files only at the moment) 2007-10-16 14:42:15 +00:00
Nick Clifton
09c11c861b * readelf.c (dump_type): New type used to classify the kinds of dump requested by the user.
(dump_sects, cmdline_dump_sects): Use the new type.
  (options): Add --string-dump option.
  (request_dump): Rename to request_dump_bynumber.  Use dump_type.
  (request_dump_byname): Use dump_type.
  (parse_args): Parse --string-dump option.
  (process_section_headers): Fix calls to request_dump.
  (initialise_dumps_byname): Likewise.
  (dump_section): Rename to dump_section_as_bytes.
  (dump_section_as_strings): New function.  Display the contents of a section as printable strings.
  (process_section_contents): String dump the section if requested.
  (process_object): Use dump_type.
  (main): Likewise.
* Makefile.am: Add dependency for readelf.c on safe-ctype.h.
* Makefile.in: Regenerate.
* NEWS: Mention the new feature.
* doc/binutils.texi: Document the new feature.
* testsuite/binutils-all/dumptest.s: New test file.
* testsuite/binutils-all/readelf.exp: Add test of readelf's -p switch.
2007-08-30 13:47:35 +00:00
Joseph Myers
7f6a71ffb6 bfd:
2007-08-28  Mark Shinwell  <shinwell@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* elf32-arm.c (elf32_arm_compare_mapping): Compare first on vma,
	then on type.

binutils/testsuite:
2007-08-28  Mark Shinwell  <shinwell@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* binutils-all/ar.exp (long_filenames): Delete temporary files on
	the host.
	* binutils-all/arm/objdump.exp: Only check "which $OBJDUMP" if
	host is local.
	* binutils-all/objcopy.exp: Use ${srecfile} to get the name of the
	srec file to be passed to binutils_run.
	(objcopy_test_readelf): Use remote_exec.
	* binutils-all/readelf.exp (readelf_find_size): Use remote_exec.
	(readelf_test): Likewise.
	(readelf_wi_test): Likewise.
	* lib/utils-lib.exp (run_dump_test): Only check "which $binary" if
	host is local.  Use remote_exec.  Use $tempfile not
	tmpdir/bintest.o.

gas:
2007-08-28  Mark Shinwell  <shinwell@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* as.c (main): Flush stderr before printing listings to ensure
	consistent output order across platforms.

gas/testsuite:
2007-08-28  Mark Shinwell  <shinwell@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* lib/gas-defs.exp (gas_version): Use remote_* functions instead
	of exec.
	(gas_host_run): New.
	(gas_run): Use gas_host_run.
	(gas_start): Likewise.
	(run_dump_test): Likewise.
	(objdump): Use gas_host_run.
	(objdump_start_no_subdir): Likewise.
	* lib/gas-dg.exp (gas-dg-test): Use "remote_file host delete".
	* lib/run: Remove.
	* gas/macros/macros.exp: Download app4b.s to host.
	* gas/i386/i386.exp (gas_64_check): Use gas_host_run.
	(gas_32_check): Likewise.
	* gas/maxq10/maxq10.exp (gas_64_check): Likewise
	(gas_32_check): Likewise.
	* gas/maxq20/maxq20.exp (gas_64_check): Likewise
	(gas_32_check): Likewise.
	* gas/sparc/sparc.exp (gas_64_check): Likewise.
	* gas/cfi/cfi.exp: Likewise.
	* gas/elf/elf.exp (run_list_test): Likewise.  Use temporary file
	for readelf output in place of pipe.
	* gas/all/gas.exp: Download incbin.dat to host.
	(do_comment): Allow \r\r\n.

ld:
2007-08-28  Mark Shinwell  <shinwell@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* ldlang.c (sort_sections_by_lma): Sort by internal id after lma
	for stable sort.

ld/testsuite:
2007-08-28  Mark Shinwell  <shinwell@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* ld-elfcomm/elfcomm.exp: Use run_host_cmd.  Only check "which
	$CC" if host is local.
	* ld-checks/checks.exp: Use run_host_cmd.
	* ld-elf/exclude.exp: Likewise.
	* ld-elf/elf.exp: Download merge.ld if host is remote.
	* ld-elf/binutils.exp (binutils_test): Use remote_exec.
	* ld-elf/tls_common.exp: Use run_host_cmd.
	* lib/ld-lib.exp (ld_version): Only check "which $ld" if host is
	local.  Use remote_exec.
	(run_host_cmd): New.
	(run_host_cmd_yesno): New.
	(default_ld_relocate): Use run_host_cmd_yesno.
	(default_ld_link): Likewise.
	(default_ld_simple_link): Use run_host_cmd.
	(default_ld_compile): Only check "which $ccprog" if host is local.
	Use remote_file and remote_exec.
	(default_ld_assemble): Only check "which $as" if host is local.
	Use run_host_cmd.
	(default_ld_nm): Use remote_exec, remote_upload and remote_file.
	(run_dump_test): Use remote_exec, remote_upload and remote_file.
	Only check "which $binary" if host is local.
	(run_ld_link_tests): Use remote_exec, remote_upload and
	remote_file.
	* ld-selective/selective.exp: Only check "which $CXX" if host is
	local.  Use remote_exec.
	* ld-scripts/phdrs.exp: Only check "which $objdump" if host is
	local.  Use run_host_cmd.
	* ld-scripts/phdrs2.exp: Likewise.
	* ld-scripts/weak.exp: Likewise.
	* ld-undefined/weak-undef.exp: Likewise.
	* ld-scripts/crossref.exp: Only check "which $CC" if host is local.
	Use run_host_cmd.
	* ld-scripts/map-address.exp: Upload map_address.map if host is
	remote.
	* ld-srec/srec.exp (run_srec_tests): Use run_host_cmd.  Only check
	"which $CC" and "which $CXX" if host is local.
	* ld-undefined/undefined.exp: Only check "which $CC" if host is
	local.  Use remote_file and run_host_cmd.
	* config/default.exp: Use remote_exec to create tmpdir.
2007-08-28 13:21:58 +00:00
Alan Modra
1e1c6a43f8 * windres/windres.exp: Return unsupported rather than fail if
windows.h not found.
2007-08-09 11:43:03 +00:00
Alan Modra
151fab348e binutils/testsuite/
* binutils-all/copy-2.d (not-target): Match *-*-*aout.
	* binutils-all/copy-3.d (not-target): Likewise.
	* binutils-all/objcopy.exp (objcopy_test): Remove extraneous
	setup_xfail.
gas/testsuite/
	* gas/all/weakref1u.d (not-target): Match *-*-*aout.
2007-08-09 11:25:58 +00:00
Nick Clifton
32866df75e Change sources over to using GPLv3 2007-07-05 16:54:46 +00:00
H.J. Lu
4b3a42a7c8 2007-06-23 H.J. Lu <hongjiu.lu@intel.com>
* binutils-all/strip-3.d: Also strip .xtensa.info section.
2007-06-23 16:15:53 +00:00
Nick Clifton
fc108f8fea * rcparse.y: Join strings for elements having no side-effects in "rc"-grammar.
* testsuite/binutils-all/windres/version_cat.rc: New.
* testsuite/binutils-all/windres/version_cat.rsd: New.
2007-05-24 11:01:07 +00:00
Nick Clifton
4a594fce16 Updated windres tool 2007-05-23 08:48:29 +00:00
Joseph Myers
f891f2a91d * binutils-all/strip-3.d: Strip .pdr section. 2007-05-17 00:06:22 +00:00
Alan Modra
b8b6abe0f8 * binutils-all/objcopy.exp: Only run needed-by-reloc test for ELF. 2007-05-15 04:23:50 +00:00
Alan Modra
b4de647686 * binutils-all/needed-by-reloc.s: Use .long rather than .4byte. 2007-05-11 07:16:28 +00:00
Mark Shinwell
e46ab5135e binutils/testsuite/
* binutils-all/strip-3.d: Strip .ARM.attributes and .reginfo
	sections.
2007-05-08 06:48:06 +00:00
Alan Modra
0d063f63c5 * binutils-all/objcopy.exp (copy_setup): Don't perror, use send_log.
(copy_executable): Return early if test2 is blank.
	Return unsupported rather than unresolved if we can't run
	executables.  Do test1 if we can compile.
2007-05-02 10:38: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
Richard Earnshaw
d301303549 * binutils-all/readelf.exp (regexp_diff): Delete. 2007-04-21 19:01:20 +00:00
Richard Earnshaw
9401f88dfe * binutils-all/arm/thumb2-cond.s: Allow for tab expansion by the pty.
Rename the second test.
2007-04-19 23:27:03 +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
Nathan Sidwell
903b1f5b5b * binutils-all/objcopy.exp: Skip for uclinux targets. 2007-02-27 12:19:16 +00:00
Nick Clifton
b279a55c19 * binutils-all/readelf.exp (readelf_wi_test): Fix unexpected output failure message. 2007-02-14 10:05:59 +00:00
Nick Clifton
42037fe5bb Renamed target x86_64-*-mingw64 to x86_64-*-mingw*. 2007-01-08 17:21:50 +00:00
Nick Clifton
99ad839030 Add x86_64-mingw64 target 2006-09-20 11:35:11 +00:00
H.J. Lu
7d3d6bd5c1 Fix PR references. 2006-09-15 00:12:32 +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
Thiemo Seufer
4be041b2db [ ChangeLog ]
* config.sub: Add support for sde as alias of mipsisa32-sde-elf.

	[ bfd/ChangeLog ]
	* config.bfd: Add configurations for mips*el-sde-elf* and
	mips*-sde-elf*.

	[ binutils/testsuite/ChangeLog ]
	* binutils-all/readelf.exp (readelf_test): Handle mips*-sde-elf*.

	[ gas/ChangeLog ]
	* configure.tgt: Handle mips*-sde-elf*.

	[ gas/testsuite/ChangeLog ]
	* gas/mips/mips.exp: Handle mips*-sde-elf*.
2006-08-15 18:23:11 +00:00
Richard Sandiford
a87866e601 binutils/testsuite/
* binutils-all/localize-hidden-1.d: Use objdump --syms instead
	of readelf.
2006-06-24 09:10:04 +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
Paul Brook
c22aaad1c7 2006-06-06 Paul Brook <paul@codesourcery.com>
opcodes/
	* arm-dis.c (coprocessor_opcodes): Add %c to unconditional arm
	instructions.
	(neon_opcodes): Add conditional execution specifiers.
	(thumb_opcodes): Ditto.
	(thumb32_opcodes): Ditto.
	(arm_conditional): Change 0xe to "al" and add "" to end.
	(ifthen_state, ifthen_next_state, ifthen_address): New.
	(IFTHEN_COND): Define.
	(print_insn_coprocessor, print_insn_neon): Print thumb conditions.
	(print_insn_arm): Change %c to use new values of arm_conditional.
	(print_insn_thumb16): Print thumb conditions.  Add %I.
	(print_insn_thumb32): Print thumb conditions.
	(find_ifthen_state): New function.
	(print_insn): Track IT block state.
gas/testsuite/
	* gas/arm/thumb2_bcond.d: Update expected output.
	* gas/arm/thumb32.d: Ditto.
	* gas/arm/vfp1_t2.d: Ditto.
	* gas/arm/vfp1xD_t2.d: Ditto.
binutils/testsuite/
	* binutils-all/arm/objdump.exp: New file.
	* binutils-all/arm/thumb2-cond.s: New test.
2006-06-07 14:08:19 +00:00
H.J. Lu
5a135cf21f 2006-05-03 H.J. Lu <hongjiu.lu@intel.com>
* binutils-all/copy-3.d: Fix a typo.
2006-05-03 16:45:59 +00:00
H.J. Lu
81fc501adb 2006-05-03 H.J. Lu <hongjiu.lu@intel.com>
* binutils-all/copy-3.d: New.

	* objcopy.exp: Run copy-3.
2006-05-03 14:21:18 +00:00
Dave Korn
e44d194ff6 2006-05-02 Dave Korn <dave.korn@artimi.com>
* binutils-all/copy-1.d (name):  Correct spelling of 'setting'.
	* binutils-all/copy-2.d (name):  Likewise.
2006-05-02 17:46:41 +00:00
Nick Clifton
7cc27f03b9 * binutils-all/copy-2.d: Change the name of the section whose flags are
changed to "foo" so that the test will work with PE based targets.
  Skip this test for AOUT based targeted.
* binutils-all/copytest.s: New file.
2006-05-02 12:17:30 +00:00
H.J. Lu
85d7f0b9e3 2006-05-01 H.J. Lu <hongjiu.lu@intel.com>
* binutils-all/objcopy.exp: Run "copy-1" for ELF only.
2006-05-01 14:09:35 +00:00
Ben Elliston
004314cccd * binutils-all/objcopy.exp (objcopy_test_readelf): Remove stray ; 2006-05-01 04:01:25 +00:00
H.J. Lu
af3c5dea22 2006-04-26 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/2593
	* binutils-all/copy-1.d: New file.
	* binutils-all/copy-1.s: Likewise.
	* binutils-all/copy-2.d: Likewise.

	* binutils-all/objcopy.exp: Add run_dump_test "copy-1" and
	run_dump_test "copy-2".

	* lib/utils-lib.exp (run_dump_test): New.
	(slurp_options): Likewise.
	(regexp_diff): Likewise.
	(file_contents): Likewise.
	(verbose_eval): Likewise.
2006-04-26 13:37:05 +00:00
H.J. Lu
8648f88f4c 2006-04-25 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/2467
	* binutils-all/objcopy.exp (strip_test): Also test "strip -g"
	on archive.
2006-04-25 14:06:10 +00:00
H.J. Lu
da28e1e1b0 2006-04-10 H.J. Lu <hongjiu.lu@intel.com>
* lib/utils-lib.exp (default_binutils_run): Check exit status.
2006-04-10 19:05:31 +00:00
Ben Elliston
49236396bb * config/default.exp: Do not load the unneeded util-defs.exp. 2005-12-24 11:17:21 +00:00
Jan Beulich
9ab8018267 binutils/testsuite/
2005-11-15  Jan Beulich  <jbeulich@novell.com>

	* config/default.exp (link_or_copy): New. Use it for setting
	up assembler and linker for the compiler to use.

ld/testsuite/
2005-11-15  Jan Beulich  <jbeulich@novell.com>

	* ld-bootstrap/bootstrap.exp: Delete ld-partial.o and ld[123]*
	after test.
	* ld-elf/elf.exp: Delete preinit, init, and fini after test.
	* ld-elf/sec64k.exp: Use macro and repeat in generated source
	files. Delete object files after test.
2005-11-15 08:32:02 +00:00
H.J. Lu
6a0d0afdc7 binutils/testsuite/
2005-10-20  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/251
	* binutils-all/group.s: New file.

	* binutils-all/objcopy.exp (objcopy_test_readelf): New
	procedure.
	Use it to test ELF group.

ld/testsuite/

2005-10-20  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/251
	* ld-elf/group.2d: New file.
2005-10-20 17:06:41 +00:00
H.J. Lu
64bb95af3d binutils/testsuite/
2005-10-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/1487
	* binutils-all/objcopy.exp (objcopy_test): New procedure.
	Use it to test simple copy, ia64 link order and ELF unknown
	section type.

	* binutils-all/unknown.s: New file.

ld/testsuite/

2005-10-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/1487
	* ld-elf/unknown.d: New file.
2005-10-19 20:49:03 +00:00
H.J. Lu
ad2fb2cdb9 2005-10-19 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/1321
	* binutils-all/link-order.s: New.

	* binutils-all/objcopy.exp: Check ia64 link order.
2005-10-19 17:39:43 +00:00
Danny Smith
3d888abf5b 2005-10-11 Danny Smith <dannysmith@users.sourceforge.net>
* binutils-all/windres/escapex-2.rc: New file.
	* binutils-all/windres/escapex-2.rsd: Generate.
2005-10-12 00:19:26 +00:00
Nick Clifton
c0524131ea Re-enable GAS for z8k-coff 2005-08-26 09:47:49 +00:00
Alan Modra
c17ae8a24e Remove a29k support. 2005-08-18 03:51:51 +00:00