1999-06-29  Nick Clifton  <nickc@cygnus.com>

	* binutils-all/objdump.exp: Add fr30 and MCore to expected cpus
	list. 

	* binutils-all/readelf.r: Do not assume a fixed number of spaces
	in the output.

1999-06-10  Nick Clifton  <nickc@cygnus.com>

	* binutils-all/readelf.wi: Update to match latest output.
	* binutils-all/readelf.h: Update to match latest output.

Wed Jun  9 11:59:22 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>

	* binutils-all/objdump.exp: Tighten regexp to match `objdump -i'
	output to avoid massive exponential behaviour.

1999-05-28  Ian Lance Taylor  <ian@zembu.com>

	* binutils-all/readelf.h: Update for changes of 1999-04-08.

1999-03-12  Nick Clifton  <nickc@cygnus.com>

	* binutils-all/readelf.wi: Remove FR30 specific componnts.
	* binutils-all/readelf.s: Remove RELA specific components.

1999-02-16  Nick Clifton  <nickc@cygnus.com>

	* binutils-all/readelf.s: Do not assume section alignment is 4.
	* binutils-all/readelf.r: Do not assume rela's are being used. 
	* binutils-all/readelf.exp: disable tests for non ELF based
	targets.

1999-02-02  Nick Clifton  <nickc@cygnus.com>

	* binutils-all/readelf.wi: Amend to match new readelf output.
	* binutils-all/readelf.r: Do not assume that RELAs will be used.

1999-01-29  Nick Clifton  <nickc@cygnus.com>

	* config/default.exp: Add definitions of READELF and READELFFLAGS.

	* binutils-all/readelf.exp: New file: Readelf tests
	* binutils-all/readelf.h: New file: Expected results for 'readelf -h'
	* binutils-all/readelf.s: New file: Expected results for 'readelf -S'
	* binutils-all/readelf.ss: New file: Expected results for 'readelf -s'
	* binutils-all/readelf.r: New file: Expected results for 'readelf -r'
	* binutils-all/readelf.wi: New file: Expected results for 'readelf -wi'

Wed Dec  9 19:11:39 1998  Jeffrey A Law  (law@cygnus.com)

	* binutils-all/objcopy.exp (copy_executable): Expect comparison
	failure for mips*-*-elf.

Fri Oct 16 22:57:12 1998  Felix Lee  <flee@cygnus.com>

	* binutils-all/objcopy.exp: fix "no symbols" message.

Tue Jul 28 15:14:04 1998  Jeffrey A Law  (law@cygnus.com)

	* binutils-all/objcopy.exp: Keep "main" and "_main" for strip with
	saving symbol tests.  Look for either "main" or "_main" in the output
	file.  Fix test for "no symbols" in the output file.

1998-07-22  Vladimir N. Makarov  <vmakarov@cygnus.com>

	* binutils-all/objcopy.exp: Polish output about fail for objcopy
	(simple copy), strip with/without saving a symbol for object file
	and executable.

Wed Jul  1 16:27:40 1998  Nick Clifton  <nickc@cygnus.com>

	* binutils-all/objcopy.exp: ARM simple objcopy now passes.

Wed Jun 24 09:20:21 1998  Nick Clifton  <nickc@cygnus.com>

	* binutils-all/objdump.exp: Look for '.data' rather than 'data'
	when parsing output of objdump -h.
	* binutils-all/size.exp: Look for '.data' rather than 'data' when
	parsing output of size -A.

1998-07-20  Vladimir N. Makarov  <vmakarov@cygnus.com>

	* objcopy.exp: Two new tests - strip object file with saving a
	symbol and strip executable file with saving a symbol.

Fri May 29 14:50:24 1998  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Don't xfail the simple objcopy test
	when cross compiling.

Thu Nov  6 14:32:37 1997  Bob Manson  <manson@charmed.cygnus.com>

	* lib/utils-lib.exp: Temporary definition of target_assemble and
 	default_target_assemble so that testing can work with older
 	dejagnu versions.

Wed Sep 24 12:09:15 1997  Bob Manson  <manson@charmed.cygnus.com>

	* binutils-all/objcopy.exp(strip_executable): Make a new copy of
 	the executable being tested.

Mon Sep 15 21:25:20 1997  Bob Manson  <manson@charmed.cygnus.com>

	* binutils-all/objcopy.exp: Compile the executables to be tested
 	on the target with a status wrapper (as necessary).

	* binutils-all/ar.exp: If testing on a remote host, don't bother
 	looking on the local host for the program being tested. Use the
 	correct filenames on the remote host.

	* binutils-all/nm.exp: Ditto.

	* binutils-all/size.exp: Ditto.

	* binutils-all/objdump.exp: Ditto.
 	(cpus_expected): Add the target CPU to the regexp of CPUs to be
 	expected, if it's not already there.

Thu Aug 28 09:57:27 1997  Doug Evans  <dje@canuck.cygnus.com>

	* binutils-all/objdump.exp (cpus_expected): Add arc.

Tue Aug  5 00:03:20 1997  Ian Lance Taylor  <ian@cygnus.com>

	* config/default.exp: Look for nm-new and strip-new.

Tue Jun  3 17:12:54 1997  Bob Manson  <manson@charmed.cygnus.com>

	* config/default.exp: Remove expect_before statement.

	* binutils-all/objcopy.exp: Don't use global exec_output variable;
 	the output is returned from remote_load instead.

Mon May 12 22:14:20 1997  Bob Manson  <manson@charmed.cygnus.com>

	* binutils-all/objcopy.exp(strip_test): Tests that
	fail to compile are untested, not unresolved.
	(copy_setup): Ditto.

	* lib/utils-lib.exp(default_binutils_assemble): Call
	target_assemble instead of target_compile.

Wed Apr 30 20:37:51 1997  Bob Manson  <manson@charmed.cygnus.com>

	Changes to support multilib and remote hosted testing, along with
 	general cleanups and simplifications.

	* lib/utils-lib.exp(binutil_version): Use remote_exec.
	(default_binutils_run): Ditto.
	(default_binutils_assemble): Remove first argument; call
 	target_compile to actually do the assembly.
	(default_binutils_compile,default_binutils_remove,prune_warnings):
 	Delete.

	* config/default.exp: Remove AS and ASFLAGS.
	(binutils_compile,binutils_remove): Delete.
	(binutils_assemble): Remove first argument.

	* binutils-all/ar.exp: See if we're running the tests on
	a remote host, and download/upload files as appropriate.
	Replace calls to binutils_remove with remote_file. Replace
	calls to binutils_compile with target_compile. Remove initial
	argument to binutils_assemble. Use remote_load to execute
	programs on the target.
	* binutils-all/nm.exp: Ditto.
	* binutils-all/objcopy.exp:  Ditto.
	* binutils-all/objdump.exp:  Ditto.
	* binutils-all/size.exp: Ditto.

Mon Apr 14 12:36:41 1997  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/ar.exp (long_filenames): Check for a file system
	with a 14 character file name length limit.

Tue Apr  1 09:52:15 1997  Jeffrey A Law  (law@cygnus.com)

	* binutils-all/objdump.exp: Handle d10v.

Fri Feb  7 16:45:34 1997  Bob Manson  <manson@charmed.cygnus.com>

	* binutils-all/ar.exp: Use prune_warnings instead of
	prune_system_crud.
	* binutils-all/objcopy.exp: Ditto.

Wed Jan 29 00:16:43 1997  Bob Manson  <manson@charmed.cygnus.com>

	* binutils-all/nm.exp: Use / between $srcdir and $subdir.
	* binutils-all/objcopy.exp: Ditto.
	* binutils-all/objdump.exp: Ditto.
	* binutils-all/size.exp: Ditto.
	* binutils-all/hppa/objdump.exp: Ditto.
	

Wed Oct 16 22:57:59 1996  Jeffrey A Law  (law@cygnus.com)

	* binutils-all/objdump.exp: Add mn10200 and mn10300 to expected
	cpus list.

Tue Oct  1 15:06:55 1996  Ian Lance Taylor  <ian@cygnus.com>

	* lib/utils-lib.exp (binutil_version): Fix for current version
	printing.

Sun Aug  4 22:25:40 1996  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Fix end of line matching in srec tests
	to work with TCL 7.5.

Sat Jun 29 12:51:30 1996  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Simple copy test works for i960 b.out
	targets.

Mon Jun 24 14:33:04 1996  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: On OSF/1, the simple copy test will
	succeed with gas, and fail with /bin/as, so mark it as an expected
	failure only if it fails.

Tue Mar 26 16:55:08 1996  Jeffrey A Law  (law@cygnus.com)

	* binutils-all/objcopy.exp: No longer expect adjust-section-vma
	test to fail for hppa*-*-proelf*.

Mon Mar 11 08:25:14 1996  Jeffrey A Law  (law@cygnus.com)

	* binutils-all/objdump.exp: Look for "$CODE$", not just "CODE".

Wed Jan 31 11:55:13 1996  Jeffrey A Law  (law@cygnus.com)

	* binutils-all/objcopy.exp: Expect adjust-section-vma tests to
	fail for hppa*-*-proelf* targets.

Thu Jan 25 13:53:04 1996  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objdump.exp: Update for objdump -h format change.
	* binutils-all/objcopy.exp: Likewise.

Mon Jan 15 18:14:14 1996  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Use the lma, not the vma, when testing
	address adjustments.

Fri Dec 15 16:31:55 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objdump.exp: Update objdump -i test for current
	objdump output.

Mon Nov 27 15:15:09 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Correct fail calls to always use the
	same string as the pass call.

Wed Nov 22 13:18:58 1995  Ian Lance Taylor  <ian@cygnus.com>

	* lib/utils-lib.exp (prune_system_crud): Discard -g -O warnings
	from native compilers on OSF/1 and SunOS.

Fri Nov 17 10:36:09 1995  Ian Lance Taylor  <ian@cygnus.com>

	* lib/utils-lib.exp (default_binutils_compiler: Change error
	message to say compilation rather than assembly.

Wed Nov 15 18:34:42 1995  Ken Raeburn  <raeburn@cygnus.com>

	* binutils-all/objcopy.exp: Simple copy test does appear to work
	on i*86-svr4.

Wed Nov 15 12:19:28 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: If assembly fails, call unresolved.
	Test running objcopy and strip on a final executable.
	* binutils-all/testprog.c: New file.
	* config/default.exp (STRIP, STRIPFLAGS): Define.
	(binutils_compile): New procedure.
	* lib/utils-lib.exp (default_binutils_compile): New procedure.

Fri Nov  3 13:22:33 1995  Ian Lance Taylor  <ian@cygnus.com>

	* lib/utils-lib.exp (default_binutils_run): Don't use verbose
	-log, reverting part of Oct 2 change.

Wed Nov  1 15:09:57 1995  Manfred Hollstein KS/EF4A 60/1F/110 #40283  <manfred@lts.sel.alcatel.de>

	* binutils-all/objcopy.exp: Add setup_xfails for
	m68*-motorola-sysv* and m88*-motorola-sysv*.

Wed Oct  4 14:38:31 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/nm.exp: Add setup_xfails for XCOFF.

Mon Oct  2 12:41:48 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/ar.exp: New file.
	* binutils-all/bintest.s: Make text_symbol and data_symbol global.
	Add new static symbols static_text_symbol and static_data_symbol.
	* binutils-all/nm.exp: Adjust accordingly.
	* config/default.exp (AR): Set if not set.
	(binutils_remove): New procedure.
	* lib/utils-lib.exp (default_binutils_run): Call
	prune_system_crud on program output.  Use verbose -log instead of
	both verbose and send_log.
	(default_binutils_remove): New procedure.

	* lib/utils-lib.exp (default_binutils_assemble): Call
	prune_system_crud on assembler output.

Tue Sep 26 14:07:05 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Add setup_xfails for simple copy test
	for i386 COFF targets.

Wed Sep 13 13:20:21 1995  Ian Lance Taylor  <ian@cygnus.com>

	* lib/utils-lib.exp (prune_system_crud): Define if not defined.
	* binutils-all/objcopy.exp: Call prune_system_crud on cmp output.

Sat Aug 19 17:38:06 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Add xfail for i*86-*-aout* for simple
	copy test.

Wed Aug 16 16:52:53 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/nm.exp: Add setup_xfail for mips*-sony-bsd* for
	tests which fail on ECOFF targets.

	* binutils-all/objcopy.exp: Change i*86-*-linux xfail for simple
	copy test to check for i*86-*-linuxaout* instead.

Tue Aug  8 17:48:37 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Add setup_xfail for a29k-*-vxworks*
	for simple copy test.

Tue Jul 25 11:57:12 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Change setup_xfail for simple copy
	test from i960-*-vxworks5.1 to i960-*-vxworks*.

Mon Jul 10 12:25:46 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Add setup_xfail for z8*-*-coff for
	simple copy test.
	* binutils-all/objdump.exp (cpus_expected): Add z8001 and z8002.

Sun May 21 20:32:53 1995  Jeff Law  (law@snake.cs.utah.edu)

	* binutils-all/hppa/objdump.exp (addendbug): Handle PA ELF targets
	too.
	* binutils-all/objcopy.exp (simple copy): Don't expect PA ELF
	targets to fail.

Tue Apr  4 14:52:08 1995  Jeff Law  (law@snake.cs.utah.edu)

	* binutils-all/hppa: Renamed from binutils-hppa.

Wed Mar 29 12:02:43 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Add setup_xfail for simple copy test
	for h8500-*-hms and h8500-*-coff.

Tue Mar 28 11:18:28 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Add setup_xfail for simple copy test
	for m68*-ericsson-ose and m88*-*-coff.

Mon Mar 27 11:27:31 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objcopy.exp: Add setup_xfail for simple copy test
	for m68*-*-vxworks*.

Fri Mar 24 11:44:25 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-hppa/objdump.exp: Correct hppa*-*-* check.

Tue Mar 21 10:48:45 1995  Jeff Law  (law@snake.cs.utah.edu)

	* binutils-hppa/addendbug.s: New testcase.
	* binutils-hppa/objdump.exp: Run it.

Mon Mar 20 11:31:05 1995  Ian Lance Taylor  <ian@cygnus.com>

	* lib/utils-lib.exp (default_binutils_run): Quote any dollar signs
	in progargs before passing it to exec.

Fri Mar 17 16:39:31 1995  Jeff Law  (law@snake.cs.utah.edu)

	* config/hppa.sed: Sed script to transform bintest.s into proper
	PA assembly code.
	* binutils-all/nm.exp: Enable these tests on the PA.
	* binutils-all/objcopy.exp: Enable these tests on the PA.  Expect
	simple copy to fail.
	* binutils-all/objdump.exp: Enable these tests on the PA.  Handle
	"CODE" as a section name.
	* binutils-all/size.exp: Enable these tests on the PA.
	* lib/utils-lib.exp (default_binutils_assemble): For "hppa*-*-*",
	run the assembly through a sed script before passing it to the
	assembler.

Wed Mar 15 16:47:13 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/objdump.exp: Force section sizes to be interpreted
	in hex.  Change objdump -h failure mode to always use the same
	string.

Thu Jan  5 13:01:43 1995  Ian Lance Taylor  <ian@cygnus.com>

	* binutils-all/nm.exp: Just check for irix4*, rather than
	irix\[0-4\]*, to avoid DejaGnu bug.

Thu Dec 15 19:35:31 1994  Ken Raeburn  <raeburn@cujo.cygnus.com>

	* binutils-all/objcopy.exp: Expect simple-objcopy test to fail
	for various other targets for which gas doesn't use bfd: sh-hms,
	m68k-hpux, m68k-sunos, m68k-coff, i386-linux, a29k-udi, a29k-coff,
	i960-vxworks5.1, i960-coff, h8300-hms, h8300-coff.

Wed Dec 14 15:54:46 1994  Ken Raeburn  <raeburn@cujo.cygnus.com>

	* binutils-all/size.exp: Skip tests requiring bintest.o on hppa,
	since it (correctly) generates syntax errors on that platform.
	* binutils-all/objdump.exp: Ditto.
	* binutils-all/nm.exp: Ditto.
	* binutils-all/objcopy.exp: Ditto.  Also, move setup_xfail for
	sh-coff to branch where objcopy execution produced no error
	messages.  Expect failure for hp300 also.

Thu Dec  8 14:36:15 1994  Ken Raeburn  <raeburn@cujo.cygnus.com>

	* binutils-all/objdump.exp (cpus_expected): New variable, taken
	from objdump -i test, added ns32k and powerpc, sorted.
	(objdump -i, -f tests): Use $cpus_expected.

	* binutils-all/objcopy.exp: For simple-copy test, expect failure
	for sh-coff.

Tue Oct 25 16:00:14 1994  Ian Lance Taylor  <ian@sanguine.cygnus.com>

	* binutils-all/objcopy.exp: Adjust --adjust-section-vma tests for
	new S-record section handling.

Tue Oct 18 11:18:21 1994  Ian Lance Taylor  <ian@sanguine.cygnus.com>

	* binutils-all/nm.exp: nm with no arguments and nm -P do not work
	as expected on ECOFF targets; add calls to setup_xfail.

	* binutils-all/objcopy.exp: New file.
	* config/default.exp: Initialize OBJCOPY and OBJCOPYFLAGS.

Fri Oct 14 14:46:22 1994  Ian Lance Taylor  <ian@sanguine.cygnus.com>

	Rewrite testsuite.
	* configure.in, Makefile.in: Remove.
	* binutils-all/configure.in, binutils-all/Makefile.in: Remove.
	* binutils-all/bintest.c: Remove.
	* binutils-all/bintest.s: New file.
	* binutils-all/nm.exp, binutils-all/objdump.exp: Rewrite.
	* binutils-all/size.exp: Rewrite.
	* config/default.exp: Load utils-lib.exp.  Set AS and ASFLAGS.
	Don't go up one directory from $base_dir.  Create tmpdir.
	(binutils_run, binutils-assemble): New procedures.
	* config/unix.exp: Remove.
	* config/mt-a29k-udi, config/mt-i386-aout: Remove.
	* config/mt-i960-nindy, config/mt-lynx, config/mt-m68k: Remove.
	* config/mt-mips-ecoff, config/mt-slite: Remove.
	* config/mt-sparc-aout, config/mt-vxworks: Remove.
	* lib/utils-lib.exp (binutil_version): Don't redirect standard
	input when getting version.  Don't unset errorInfo.
	(default_binutils_run): New procedure.
	(default_binutils_assemble): New procedure.

Thu Sep 29 12:45:39 1994  Ian Lance Taylor  (ian@sanguine.cygnus.com)

	* VMS does not permit `.' in directory names: renamed binutils.all
	to binutils-all.
	* configure.in (configdirs): Change binutils.all to binutils-all.

Fri Sep 23 16:01:14 1994  Ian Lance Taylor  (ian@sanguine.cygnus.com)

	* configure.in: Use mt-m68k for m68k*-*-aout* and m68k*-*-coff*,
	not for m68k-*-*.

Fri Sep 23 13:54:50 1994  Ken Raeburn  <raeburn@cujo.cygnus.com>

	* binutils.all/objdump.exp: Added ARM to list of CPU types.

Thu Sep 22 11:04:50 1994  Ian Lance Taylor  (ian@sanguine.cygnus.com)

	* binutils.all/objdump.exp: Update for new usage message.
	* binutils.all/size.exp: Use a double backslash in the string to
	get a single backslash to the regexp matcher.  Accept $TEXT$,
	$DATA$ and $BSS$ as well as .text, .data and .bss, for HP/UX.

Fri Sep  2 12:53:10 1994  Ian Lance Taylor  (ian@sanguine.cygnus.com)

	* config/unix.exp: If nm.new does not exist, use [transform nm].
	* config/default.exp: Likewise.

Wed Aug 24 12:41:37 1994  Ian Lance Taylor  (ian@sanguine.cygnus.com)

	* configure.in, binutils.all/configure.in: Change i386 to
	i[345]86.

Tue Jul 19 15:23:53 1994  Bill Cox  (bill@rtl.cygnus.com)

	* config/mt-mips-ecoff: Add -Tidp.ld option.

Thu Jun 30 12:41:55 1994  J.T. Conklin  (jtc@phishhead.cygnus.com)

	* config/default.exp: Use nm.new, not nm, from newly built tree.

Tue May 17 14:04:05 1994  Bill Cox  (bill@rtl.cygnus.com)

	* config/default.exp, config/unix.exp: Replace error
	  proc calls with perror.

Tue May 10 11:20:54 1994  Stan Shebs  (shebs@andros.cygnus.com)

	* configure.in (sparclite): Match on sparclite*-*-*.

Wed Apr 13 18:25:19 1994  Ken Raeburn  (raeburn@cujo.cygnus.com)

	* config/unix.exp: Use nm.new, not nm, from newly built tree.

	* binutils.all/objdump.exp: Add more wildcards to list of
	single-letter options in pattern for usage message.

	* binutils.all/nm.exp: Deleted debug-symbols test, since it only
	works for a.out/stabs systems.  Fixed regexps to make underscores
	optional, since some C compilers don't prepend them.  Deleted
	check for foo.o symbol, since again some systems don't generate
	it.

Mon Apr 11 10:31:00 1994  Bill Cox  (bill@rtl.cygnus.com)

	* Makefile.in (check): Set TCL_LIBRARY for runtest.

Mon Feb 14 19:34:03 1994  Rob Savoye  (rob@darkstar.cygnus.com)

	* Makefile.in: Use new config features of DejaGnu in site.exp
	file. "Make check" should now work for all crosses.

Fri Jan 28 18:00:29 1994  Ken Raeburn  (raeburn@cujo.cygnus.com)

	* binutils.all/objdump.exp: In usage message, accept
	"section-name" as well as "section_name".

Mon Jan 17 16:57:02 1994  Ken Raeburn  (raeburn@cujo.cygnus.com)

	* binutils.all/objdump.exp: Trim list of format names expected,
	and accept any known CPU type.

Thu Dec  2 20:50:24 1993  Rob Savoye  (rob@darkstar.cygnus.com)

	* Makefile.in: Remove some stuff from the site.exp file.
	* config/unix.exp: Add global before seeing if the variables for
	nm, objdump, and size exist.

Wed Nov  3 11:12:32 1993  Rob Savoye  (rob@darkstar.cygnus.com)

	* config/udi.exp,unix.exp: Transform tool name.
	* binutils.all/*.exp: Clear errorInfo after exec.

Fri Jul  2 12:41:20 1993  Ian Lance Taylor  (ian@cygnus.com)

	* binutils.all/*.exp: Use -- for long arguments rather than +.

Fri Jun  4 10:52:29 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)

	* configure.in: change srctrigger to Makefile.in 

Wed May 26 17:27:46 1993  Ian Lance Taylor  (ian@cygnus.com)

	* Makefile.in (FLAGS_TO_PASS): Pass down CC and CFLAGS.

Fri May  7 13:58:44 1993  Ian Lance Taylor  (ian@cygnus.com)

	* binutils.all/objdump.exp: Update for new usage message.

Mon Apr 19 14:08:52 1993  Rob Savoye  (rob@darkstar.cygnus.com)

	* binutils.all/*.exp: Use the new util_test proc.
	* Makefile.in: Create a local site.exp file with config info.

Thu Mar 25 05:38:47 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com)

	* nm.all/configure.in (srcname): Delete extra quote.

Mon Feb 22 07:54:03 1993  Mike Werner  (mtw@poseidon.cygnus.com)

        * binutils/testsuite: made modifications to testcases, etc., to allow
        them to work properly  given the reorganization of deja-gnu and the
        relocation of the testcases from deja-gnu to a "tool" subdirectory.

Sun Feb 21 10:55:55 1993  Mike Werner  (mtw@poseidon.cygnus.com)

	* binutils/testsuite: Initial creation of binutils/testsuite.
	Migrated dejagnu testcases and support files for testing nm to
	binutils/testsuite from deja-gnu.  These files were moved "as is"
	with no modifications.  This migration is part of a major overhaul
	of dejagnu.  The modifications to these testcases, etc., which
	will allow them to work with the new version of dejagnu will be
	made in a future update.

