ChangeLog-9197   [plain text]

Mon Dec 29 16:58:05 1997  Ian Lance Taylor  <>

	From Matthew Bellantoni <>:
	* ar.c (get_pos_bfd): Add default_posname parameter.  Change all
	(replace_members): Default to replacing in the same position.

Mon Dec 22 11:27:22 1997  Ian Lance Taylor  <>

	* rclex.l: Don't permit a comma in a STRING.
	* rcparse.y (acc_entry): Warn if an inappropriate modifier is used
	with a non VIRTKEY.
	(acc_event): For a control character, set VIRTKEY, and force the
	character to uppercase.
	(acc_options): Don't require a comma separator.

Tue Dec  9 13:25:42 1997  Michael Meissner  <>

	* size.c (size_number): New function to provide size of field.
	({l,r}print_number): For octal and hex fields, print field using
	'0' and '0x' suffixes.  Do not include following tab.
	(sysv_internal_sizer): Size section name, section size, and vma
	address fields.
	(sysv_internal_printer): Use calculated sizes for the columns.
	(print_sysv_format): Size columns before printing.
	(print_berkeley_format): Print tabs between numbers now that
	{l,r}print_number doesn't.  Print fields right justified.

Mon Dec  8 11:22:04 1997  Nick Clifton  <>

	* objdump.c (objdump_print_addr_with_sym): Remove call to
	disasm_symaddr() as this function no longer exists.

Tue Dec  2 10:23:50 1997  Nick Clifton  <>

	* objdump.c (objdump_print_addr_with_sym): Call disasm_symaddr()
	to allow backend to know which symbol has just been displayed.

Tue Dec  2 13:06:46 1997  Ian Lance Taylor  <>

	* windres.h (ESCAPE_*): Define standard escape sequences.
	* rclex.l (handle_quotes): Handle standard escape sequences.  Warn
	about an unrecognized escape character.
	* windres.c (unicode_print): Print standard escape sequences.
	* rcparse.y (acc_event): Initialize $$.next.
	* resbin.c (bin_to_res_menuitems): Don't set MENUITEM_POPUP or
	MENUITEM_ENDMENU in the menu item flags.
	(bin_to_res_accelerators): Allocate a structure (the old code
	never worked).
	(res_to_bin_accelerator): Correct the test for setting ACC_LAST.
	(res_to_bin_dialog): Save the extended style rather than saving
	the style twice.  Remove useless shadowing length variable.  Set
	the length of control data correctly.
	* resrc.c (write_rc_dialog): Don't print the class or menu if the
	string length is zero.

Mon Nov 24 18:52:43 1997  Andreas Schwab  <>

	* stabs.c (parse_stab_argtypes): Don't try to parse the name of a
	destructor as mangled argument types.

Mon Nov 10 17:51:41 1997  Gavin Koch  <>

	* addr2line.c (translate_addresses): Use bfd_scan_vma rather
	than strtol to scan addresses.

Sun Nov  9 11:01:31 1997  Jeffrey A Law  (

	* (bin_PROGRAMS): Don't use line continuations here.

Tue Nov  4 11:56:14 1997  Ian Lance Taylor  <>

	* objcopy.c (copy_section): Don't crash if there is no particular
	information for a section.

Mon Nov  3 12:36:19 1997  Ian Lance Taylor  <>

	* objcopy.c (parse_flags): Make flag check case insensitive.
	Check for `contents' flag.  Give an error for unrecognized flags.
	(copy_section): If the contents flag was set for a section that
	had no contents, zero out the new contents.
	* binutils.texi (objcopy): Document contents section flag.

Sun Nov  2 14:49:56 1997  Ian Lance Taylor  <>

	* objcopy.c: Move new struct and variable definitions to top of
	file.  Remove obsolete add_strip_symbol and is_strip_symbol
	declarations.  Add prototype declarations for add_specific_symbol
	and is_specified_symbol.

Mon Oct 20 15:31:43 1997  Klaus K"ampf  <>

	* (HAVE_SBRK): Undefine.

Tue Oct 14 16:14:35 1997  Nick Clifton  <>

	* objdump.c (objdump_symbol_at_address): New function.  Returns
	true if a symbol can be found at the address passed in.
	(disassemble_data): Set the symbol_at_address_func field to point
	to objdump_symbol_at_address.

Fri Oct 10 14:13:09 1997  Richard Henderson  <>

	* objcopy.c, objcopy.1, binutils.texi: "localize" is a better name
	than "privatize".  Update all references.

Thu Oct  9 15:57:29 1997  Ian Lance Taylor  <>

	* binutils.texi (strip): Remove duplicate --target.  From Marty
	Leisner <>.

	* nm.c (lineno_cache_bfd): New file static variable.
	(lineno_cache_rel_bfd): New file static variable.
	(display_archive): Clear lineno_cache_bfd and lineno_cache_rel_bfd
	when closing a BFD.
	(display_file): Likewise.
	(print_symbol): Use lineno_cache_bfd and lineno_cache_rel_bfd
	instead of cache_bfd and cache_rel_bfd.  Make seccount static, and
	only set it when setting relocs.

Wed Oct  8 21:19:11 1997  Richard Henderson  <>

	* objcopy.c (keep_specific_list, privatize_specific_list,
	weaken_specific_list): New variables.
	(keep_symbols): Removed.
	(add_specific_symbol): New function from the carcas of
	add_strip_symbol.  Takes a list as an argument.
	(is_specified_symbol): Likewise from is_strip_symbol.
	(filter_symbols): Honor the new privatize and weaken lists.
	Optimize bfd_asymbol_name handling.
	(copy_object, copy_options, copy_usage): Add privatize-symbol &
	weaken-symbol options.

	* objcopy.1, binutils.texi: Update docs.

Sun Oct  5 09:05:44 1997  Frank Ch. Eigler  <>

	* objdump.c (disassemble_data): Make "--prefix-addresses"
 	disassembly adjust to mixed-length instructions.
	(objdump_print_addr_with_sym): Add "0x" prefix for hexadecimal
 	symbol-offsets in disassembly.

Fri Oct  3 12:04:25 1997  Ian Lance Taylor  <>

	* objcopy.c (set_times): New static function, replacing
	(strip_main): If preserve_dates, stat the input file before
	copying it, and call set_times afterward.
	(copy_main): Likewise.

	* wrstabs.c (write_stabs_in_sections_debugging_info): Cast p to
	char * when calling strcpy and strlen.

Wed Sep 24 11:34:05 1997  Ian Lance Taylor  <>

	* binutils.texi	(ar cmdline): Document that q now works like r.
	From Marty Leisner <>.

	* binutils.texi (size): The object file argument is optional.
	From Marty Leisner <>.

	* aclocal.m4: Rebuild with new libtool.
	* configure: Rebuild.

Tue Aug 26 17:48:34 1997  Ian Lance Taylor  <>

	* (EXEEXT_FOR_BUILD): New variable.  Use it in all
	references to the sysinfo program.
	* Rebuild with new bfd/acinclude.m4.
	* Rebuild.

Fri Aug  8 15:32:49 1997  Ian Lance Taylor  <>

	* windres.c: Include <time.h>.
	(define_resource): Set a timestamp for the resource.

Wed Aug  6 13:37:58 1997  Ian Lance Taylor  <>

	* Define TARGET in header file.
	* acconfig.h (TARGET): Add #undef.
	* (version.o, bucomm.o): Remove special targets.
	* bucomm.c (target): Remove.
	* nm.c (program_name): Don't declare.
	(target): Make static.
	* size.c (target): Make static.
	* configure,, Rebuild.

Tue Aug  5 00:01:41 1997  Ian Lance Taylor  <>

	* (check-DEJAGNU): Export r.
	(.dep1): Use $(INCLUDES) rather than $(ALL_CFLAGS).
	* Rebuild.

	* nlmheader.y: Use VERSIONK rather than VERSION.

	* (STRIP_PROG): Change from to strip-new.
	(NM_PROG): Change from to nm-new.
	(TOOL_PROGS, install-exec-local): Adjust accordingly.
	* Rebuild.

Mon Aug  4 11:47:31 1997  Ian Lance Taylor  <>

	* Remove AC_ARG_PROGRAM; it's invoked by
	* configure: Rebuild.

	* (install-exec-local): Create $(tooldir)/bin before
	trying to install anything into it.
	* Rebuild.

	* (TOOL_PROGS): Use an explicit $(EXEEXT).
	(install-exec-local): When handling $(noinst_PROGRAMS), only use
	$(EXEEXT) on the installed file.  When handling $(TOOL_PROGS),
	handle $(EXEEXT) correctly.
	* Add an explicit $(EXEEXT) when substituting for
	the name of a program to build.
	*, configure: Rebuild.

	* aclocal.m4, configure, Rebuild with new automake

	* deflex.l, defparse.y: Use VERSIONK rather than VERSION.
	* rclex.l, rcparse.y: Likewise.
	* (windres_SOURCES): Add $(BULIBS).
	* Rebuild.

Fri Aug  1 13:08:39 1997  Ian Lance Taylor  <>

	* acinclude.m4: Include bfd/acinclude.m4, not bfd/acmacros.m4.
	* aclocal.m4, configure: Rebuild with new libtool.

Thu Jul 31 11:51:35 1997  Ian Lance Taylor  <>

	* New file, based on old
	* acinclude.m4: New file, from old aclocal.m4.
	shared library handling; now handled by libtool.  Replace
	stamp-h handling in AC_OUTPUT.
	* acconfig.h: Mention PACKAGE and VERSION.
	* New file.
	* Now built with automake.
	* aclocal.m4: Now built with aclocal.
	*, configure: Rebuild.

	From Ton van Overbeek <>:
	* rcparse.y (dialog): Default menu and class to be named.
	(styles): If FONT is seen, set DS_SETFONT in dialog style.
	* resbin.c (res_to_bin_dialog): Correct computation of font
	information length.

Wed Jul 30 11:21:06 1997  Ian Lance Taylor  <>

	From Ton van Overbeek <>:
	* resbin.c (res_to_bin_menu): Correct computation of menu
	vs. menuex length.
	* resrc.c (define_stringtable): Add 1 to resource ID.

Tue Jul 29 11:06:03 1997  Ian Lance Taylor  <>

	* resbin.c (bin_to_res_string): Correct adjustment of data and
	length.  From Ton van Overbeek <>.

Tue Jul 22 18:01:23 1997  Ian Lance Taylor  <>

	* nlmconv.c (link_inputs): Call libiberty pexecute function.
	(pexecute) [multiple versions]: Remove.

Tue Jul 22 16:19:34 1997  Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>

	* bucomm.c (make_tempname): If we might be using a DOS filesystem,
	check for a backslash as well as a slash.

Thu Jun 26 13:53:17 1997  Ian Lance Taylor  <>

	* windres.c (main): Quit if we didn't get any resources.
	(usage): Fix --yydebug usage message.
	* rescoff.c (write_coff_file): Don't free the relocation array
	until after we've closed the BFD.
	(read_coff_rsrc): Quit rather than try to read standard input.
	(write_coff_file): Quit rather than try to write to standard
	* rcparse.y: Add a couple of missing semicolons (accepted by bison
	but not byacc).
	* binutils.texi: Document windres.

Wed Jun 25 20:57:06 1997  Ian Lance Taylor  <>

	* resbin.c: New file.
	* rclex.l, rcparse.y, rescoff.c, resrc.c, windres.c, windres.h:
	Numerous fixes and improvements.
	* Rebuild dependencies.
 	(CFILES): Add resbin.c.
	(WINDRES_OBJS): Add resbin.o.

Sun Jun 22 17:29:41 1997  Ian Lance Taylor  <>

	First stab at Windows resource compiler:
	* windres.h: New file.
	* windres.c: New file.
	* resrc.c: New file.
	* rcparse.y: New file.
	* rclex.l: New file.
	* rescoff.c: New file.
	* Define and substitute BUILD_WINDRES.
	* configure: Rebuild.
	* Rebuild dependencies.
 	(WINDRES_PROG): New variable.
	(HFILES): Add dlltool.h and windres.h.
	(CFILES): Add windres.c and resrc.c.
	(GENERATED_CFILES): Add rcparse.c and rclex.c.
	(WINDRES_OBJS): New variable.
	$(WINDRES_PROG): New target.
	(rcparse.c, rcparse.h, rclex.c): New targets.

Thu Jun 12 12:27:51 1997  Ian Lance Taylor  <>

	* dlltool.c (export_type): Add data field.
	(def_exports): Add data parameter.  Change all callers.
	(dump_def_info): Print data field.
	(gen_def_file): Likewise.
	(make_one_lib_file): Handle data field by not emitting simple
	label and not emitting anything in SEC_TEXT.
	(dtab): Print data field.
	(process_duplicates): Merge data field.
	* dlltool.h (def_exports): Update declaration.
	* defparse.y (expline): Accept opt_DATA.  Pass it to def_exports.
	(opt_DATA): New non-terminal.

Wed Jun 11 17:15:47 1997  Ian Lance Taylor  <>

	* dlltool.h: New file.
	* deflex.l: Include dlltool.h and libiberty.h.  Don't declare
	strdup.  Use xstrdup rather than strdup.
	* defparse.y: Include bfd.h, bucomm.h, and dlltool.h.
	* dlltool.c: Include dlltool.h and time.h.  Make a lot of
	variables and functions static.  Make a lot of char * variables
	and parameters const.  Add declarations for static functions.  Do
	some reindenting.  Hide more PowerPC stuff inside DLLTOOL_PPC.

Wed Jun 11 12:05:52 1997  H.J. Lu  <>

	* ar.c (bfd_special_undocumented_glue): Add const.

Mon May 12 22:09:35 1997  Bob Manson  <>

	to runtest.

Mon May 12 13:14:22 1997  Ian Lance Taylor  <>

	* Don't clear OPCODES when --enable-commonbfdlib is
	used on HP/UX.
	* configure: Rebuild.

Fri Apr 25 14:22:08 1997  H.J. Lu  <>

	* (maintainer-clean realclean): Change *.info*
	to* to save

Tue Apr 15 13:42:22 1997  Ian Lance Taylor  <>

	* (INSTALL): Set to @INSTALL@.
	(install): Depend upon installdirs.  Use $(program_transform_name)
	directly, rather than using $(INSTALL_XFORM) and
	(installdirs): New target.
	(install-info): Run mkinstalldirs.

Mon Apr 14 11:52:39 1997  Ian Lance Taylor  <>

	* (INSTALL): Change to install-sh.

	From Thomas Graichen <>:
	* Always use $(SHELL) when running move-if-change.
	* Use ${CONFIG_SHELL} when running $ac_config_sub.
	* configure: Rebuild.

Fri Apr  4 13:28:02 1997  Ian Lance Taylor  <>

	* configure, Rebuild.
	* bucomm.h: Add alloca handling, copied from gas/as.h.
	* dlltool.c: Add #pragma alloca for AIX to start of file.
	* nlmconv.c: Likewise.

	* (distclean): Remove site.exp and site.bak.  Remove
	everything that clean removes.

Thu Apr  3 13:18:39 1997  Ian Lance Taylor  <>

	* (VERSION): Set to 2.8.1.

	* Branched binutils 2.8.

Tue Apr  1 16:21:44 1997  Klaus Kaempf  <>

	* New file.
	* config.h-vms: Remove file.
	* makefile.vms: Update for new configure scheme.

Mon Mar 31 15:30:43 1997  Philippe De Muyter  <>

	* objcopy.c (make_same_dates): Use statbuf, not buf, if not

Fri Mar 28 17:57:53 1997  Alan Modra  <>

	* ($(OBJDUMP_PROG)): Don't link against BFDLIB twice.
	* Add AC_ARG_ENABLE for commonbfdlib.  If it is set,
	set OPCODES to empty.
	* configure: Rebuild.

Thu Mar 27 16:03:02 1997  Ian Lance Taylor  <>

	Based on patch from Marty Leisner <>:
	* objcopy.c: Include <utime.h> or <sys/time.h>.
	(strip_options): Add "preserve-dates".
	(copy_options): Likewise.
	(copy_usage): Mention -p and --preserve-dates.
	(strip_usage): Likewise.
	(make_same_dates): New static function.
	(strip_main): Handle -p.
	(copy_main): Likewise.
	* binutils.texi, strip.1, objcopy.1: Document new option.

	addr2line.c contributed by Ulrich Lauther
	* addr2line.c: New file.
	* Rebuild dependencies.
 	(ADDR2LINE_PROG): New variable.
	(MANPAGES): Add addr2line.
	(CFILES): Add addr2line.c.
	($(ADDR2LINE_PROG)): New target.
	* binutils.texi: Document addr2line.
	* addr2line.1: New file.

	* version.c (print_version): Update copyright date.

Mon Mar 24 10:52:45 1997  Andreas Schwab  <>

	* objdump.c (disassemble_data): Don't exit if a file cannot be
	disassembled, instead just return.

Thu Mar 20 21:16:51 1997  Jeffrey A Law  (

	* size.c (usage): Make definition match its prototype.
	(display_bfd, lprint_number, rprint_number): Likewise.
	(print_berkeley_format, sysv_internal_printer): Likewise.
	(print_sysv_format): Likewise.
	* nm.c (set_print_radix, set_output_format): Likewise.
	* objcopy.c (filter_bytes): Likewise.

Tue Mar 18 16:39:55 1997  H.J. Lu  <>

	* Many files: Add function prototypes.
	* ar.c (mri_emul, get_pos_bfd): Make static.
	* arlex.l: Include "libiberty.h".  Don't declare strdup.  Use
	xstrdup rather than strdup.
	* arparse.y (yyerror): Make argument const.  Correct typo.
	* arsup.c (strdup): Don't declare.
	(ar_save): Use xstrdup rather than strdup.
	* filemode.c: Include "bucomm.h".
	* nm.c (usage): Make static.
	(print_symname): Make format and name const.
	* objcopy.c (cat): Remove.
	(copy_archive): Make output_target const.  Use concat, not cat.
	(copy_file, simple_copy, smart_rename): Make arguments const.
	* objdump.c (read_section_stabs): Likewise.
	(print_section_stabs): Likewise.
	(display_target_tables): Don't declare getenv.
	* strings.c (strings_object_file): Change file to const.
	(print_strings): Change filename to const.
	* Rebuild dependencies.

Tue Mar 18 11:37:24 1997  Ian Lance Taylor  <>

	* bucomm.h (getenv): Declare if NEED_DECLARATION_GETENV.
	* configure, Rebuild.
	* nlmconv.c (getenv): Don't declare.

	* Rebuild dependencies.

Sat Mar 15 15:35:56 1997  Ian Lance Taylor  <>

	Based on patches from Jamie Lokier <>:
	* objdump.c: Include "demangle.h".
	(do_demangle): New static variable.
	(usage): Mention -C/--demangle.
	(long_options): Add "demangle".
	(objdump_print_symname): New static function.
	(objdump_print_addr_with_sym): Use objdump_print_symname.
	(disassemble_bytes): Likewise.
	(dump_reloc_set): Likewise.
	(dump_symbols): Demangle symbol name.
	(main): Handle -C.
	* binutils.texi, objdump.1: Document -C/--demangle.

	* objdump.c (usage): Mention --no-show-raw-insn.
	(long_options): Add "no-show-raw-insn".
	(disassemble_bytes): Handle --no-show-raw-insn.
	* binutils.texi, objdump.1: Document --no-show-raw-insn.

Wed Mar 12 11:42:00 1997  Andreas Schwab  <>

	* rddbg.c (free_saved_stabs): Set the strings to NULL after being

Fri Feb 28 17:18:45 1997  Ian Lance Taylor  <>

	* bucomm.c (set_default_bfd_target): New function.
	* bucomm.h (set_default_bfd_target): Declare.
	* ar.c (main): Call set_default_bfd_target.
	* nlmconv.c (main): Likewise.
	* nm.c (main): Likewise.
	* objcopy.c (main): Likewise.
	* objdump.c (main): Likewise.
	* size.c (main): Likewise.
	* strings.c (main): Likewise.
	* (bucomm.o): New target, to define TARGET.

Tue Feb 25 21:28:38 1997  Ian Lance Taylor  <>

	* objdump.c (adjust_section_vma): New static variable.
	(usage): Mention --adjust-section-vma.
	(long_options): Add "addjust-vma".
	(display_bfd): If adjust_section_vma is not 0, add it to all the
	section addresses.
	(main): Handle OPTION_ADJUST_VMA.
	* binutils.texi, objdump.1: Document --adjust-vma.

Fri Feb 14 18:46:47 1997  Ian Lance Taylor  <>

	* nm.c (print_symbol): Cache the BFD as well as the symbols and
 	relocs, and don't try to use the symbols or relocs with a
 	different BFD.

Thu Feb 13 21:34:43 1997  Klaus Kaempf  (

	* config.h-vms: sbrk() is provided on openVMS/Alpha.
	* makefile.vms: allow compiling with current gcc snapshot.

Thu Feb 13 20:14:40 1997  Ian Lance Taylor  <>

	* arsup.c, coffgrok.c, dlltool.c, nlmconv.c: Use xmalloc rather
	than malloc.

Wed Feb 12 16:12:02 1997  Ian Lance Taylor  <>

	* objdump.c (disassemble_data): Correct VMA argument to
	find_symbol_for_address.  Improve handling of code with no symbol
	followed by code with a symbol.

Wed Feb 12 12:16:47 1997  Andreas Schwab  <>

	* objdump.c (disassemble_bytes): Make output of raw instructions
	work better for non-standard values of bytes_per_chunk and

Thu Feb  6 14:14:59 1997  Martin M. Hunt  <>

	* objdump.c (disassemble_bytes): Added code to allow some control
 	over the way raw instructions are displayed.

Thu Feb  6 12:36:03 1997  Ian Lance Taylor  <>

	* stabs.c (struct bincl_file): Add next_stack field.
	(push_bincl): Put the new file on both bincl_list and
	bincl_stack.  Clear the file_types field.
	(pop_bincl): Use the next_stack field when popping the stack.
	Don't put the file on bincl_list.
	(find_excl): Include the file name when warning about an unfound

	* debug.c (debug_type_samep): Don't crash if we are passed NULL.

Thu Feb  6 11:54:24 1997  Alan Modra  <>

	* objcopy.1: Add missing space after .B.

Fri Jan 31 10:33:07 1997  Andreas Schwab  <>

	* objdump.c (disassemble_data): Initialize `aux.require_sec'.

Wed Jan 29 13:21:21 1997  Ian Lance Taylor  <>

	* objdump.c (objdump_print_value): Add skip_zeroes parameter.
	Change all callers.
	(objdump_print_addr_with_sym): Likewise.  Call objdump_print_value
	to print address.
	(objdump_print_addr): New static function.
	(objdump_print_address): Just call objdump_print_addr.
	(disassemble_bytes): Print real address, not function offset.
	Skip a certain number of leading zeroes.

	* objdump.c (disassemble_zeroes): New static variable.
	(usage): Mention --disassemble-zeroes.
	(long_options): Add "disassemble-zeroes".
	(disassemble_bytes): Check disassemble_zeroes.

Tue Jan 28 16:47:26 1997  Ian Lance Taylor  <>

	* objdump.c (disassemble_bytes): Don't skip zeroes if the
	disassembler has told us that we are in a branch delay slot.

Mon Jan 20 14:24:04 1997  Ian Lance Taylor  <>

	* size.c (berkeley_sum): Rewrite.  Skip sections which are not
	SEC_ALLOC.  Count SEC_READONLY sections as text.

Tue Jan 14 15:14:14 1997  Ian Lance Taylor  <>

	* (maintainer-clean realclean): Remove *.info*, not
	just *.info.  From H.J. Lu <>.

Tue Dec 31 15:42:54 1996  Ian Lance Taylor  <>


Fri Dec 27 11:19:26 1996  Ian Lance Taylor  <>

	* Work around bug in AC_FUNC_VFORK in autoconf 2.12.
	* configure: Rebuild.

Thu Dec 19 13:11:20 1996  Ian Lance Taylor  <>

	Based on patch from Andrew J Klossner <>:
	* objcopy.c (OPTION_WEAKEN): Define.
	(copy_options): Add "weaken".
	(copy_usage): Mention --weaken.
	(weaken): New static variable.
	(filter_symbols): Handle weaken.
	(copy_object): Call filter_symbols if weaken.
	(copy_main): Handle OPTION_WEAKEN.
	* binutils.texi, objcopy.1: Document --weaken.

Wed Dec 18 22:49:13 1996  Stan Shebs  <>

	* mpw-make.sed: Use NewFolderRecursive for installation.

Sat Dec  7 10:17:25 1996  Jeffrey A Law  (

	* (install): Add "else true" clause to cater to
	broken "make" on some systems.

Fri Dec  6 17:21:41 1996  Ian Lance Taylor  <>

	* ieee.c (parse_ieee_bb): Always initialize namcopy to avoid gcc
	warning about uninitialized variable.
	(ieee_read_cxx_class): Likewise, for pf.
	(ieee_enum_type): Likewise, for i.

Tue Nov 26 17:01:25 1996  Ian Lance Taylor  <>

	* wrstabs.c (stab_array_type): Add casts when printing
	bfd_signed_vma values.

	* configure: Rebuild with autoconf 2.12.

Mon Nov 25 16:53:18 1996  Ian Lance Taylor  <>

	* objdump.c (disassemble_data): Don't crash if there is no

Fri Nov 22 17:29:14 1996  Andreas Schwab  <>

	* ar.c (open_inarch): Don't call bfd_openr with a null name.

Fri Nov  1 12:08:13 1996  Ian Lance Taylor  <>

	* binutils.texi: Add section on reporting bugs.

Thu Oct 31 18:20:53 1996  Ian Lance Taylor  <>

	* stabs.c (struct stab_handle): Add bincl_list field.
	(parse_stab): Pass value to push_bincl.  Call find_excl for
	(struct bincl_file): Add hash, file and file_types fields.
	(push_bincl): Add hash parameter.  Save it in the new hash field.
	Save the file number in the new file field.
	(pop_bincl): Put the bincl_file on bincl_list, rather than freeing
	it.  Save the file types in the new file_types field.
	(find_excl): New static function.

	* ieee.c (ieee_lineno): Don't compare line number addresses to
	info->highaddr (undo part of October 28 patch).

Tue Oct 29 16:40:22 1996  Ian Lance Taylor  <>

	* objdump.c (objdump_print_value): Don't print the empty string
	for zero.

Mon Oct 28 16:58:14 1996  Ian Lance Taylor  <>

	* stabs.c (struct stab_handle): Add function_end field.
	(start_stab): Initialize function_end.
	(finish_stab): Pass info->function_end to debug_end_function.
	(parse_stab): If info->function_end is set, use it as the address
	which ends a function.

	* ieee.c (ieee_array_type): Remember the correct size.

	* ieee.c (ieee_finish_compilation_unit): Permit coalescing ranges
	that are up to 0x1000 bytes apart, not just 64.
	(ieee_add_bb11_blocks): Don't bother to emit a BB11 that is less
	than 0x100 bytes.
	(ieee_lineno): Only emit line numbers that are less than

Fri Oct 25 12:12:17 1996  Ian Lance Taylor  <>

	* ieee.c (struct ieee_defined_enum): Add defined field.
	(ieee_enum_type): If the enum tag has been seen before but not
	defined, reuse the same type index, and define it.
	(ieee_tag_type): If this enum has not been defined, add an
	undefined entry to the list of enums.

	* objdump.c (disassemble_bytes): Let the disassembler override the
	number of bytes printed on a line.

Thu Oct 24 16:42:10 1996  Ian Lance Taylor  <>

	* objdump.c (prefix_addresses): New static variable.
	(long_options): Add "prefix-addresses".
	(compare_symbols): Sort BSF_FUNCTION symbols before other
	(find_symbol_for_address): New static function, broken out of
	(objdump_print_addr_with_sym): New static function, broken out of
	(objdump_print_address): Call new functions.
	(disassemble_bytes): New static function, broken out of
	disassemble_data.  Change disassembly format, unless
	prefix_addresses is set.
	(disassemble_data): Call disassemble_bytes.  Unless
	prefix_addresses is set, disassemble in chunks headed by a
	* binutils.texi, objdump.1: Document --prefix-addresses.

	* rddbg.c (read_section_stabs_debugging_info): Preserve the
	backslash when concatenating multiple stabs strings.

Thu Oct 10 11:36:31 1996  Doug Evans  <>

	* dlltool.c (scan_open_obj_file): Fix loop exit test.
	Add missing parameter to def_exports.

Tue Oct  8 12:06:17 1996  Ian Lance Taylor  <>

	* (LEX_OPTIONS): Set to empty string.  -I -Cem is the
	default for flex, and is not recognized by lex.

Thu Oct  3 17:41:23 1996  Ian Lance Taylor  <>

	* binutils.texi (Target Selection): Document that you can now
	specify targets using configuration triplets.

	* ar.c (usage): Declare.  Make sure all callers pass an argument.

Thu Oct  3 15:39:42 1996  Jason Molenda  (

	* (clean): Remove config.log.

Wed Oct  2 15:49:16 1996  Klaus Kaempf  <>

	* makefile.vms: Bump version date.

Tue Oct  1 15:00:59 1996  Ian Lance Taylor  <>

	* version.c (print_version): New function.
	* bucomm.h (print_version): Declare.
	* ar.c (program_version): Don't declare.
	(do_show_version): Remove.
	(usage): Add help parameter.  Print bug report address.
	(main): Set is_ranlib at start.  Check for --help and --version.
	Call print_version, not do_show_version.
	* nlmconv.c (program_version): Don't declare.
	(main): Call print_version.
	(show_usage): Print bug report address.
	* nm.c (program_version, print_version): Don't declare.
	(usage): Print bug report address.
	(main): Call print_version.
	* objcopy.c (program_version): Don't declare.
	(copy_usage): Print bug report address.
	(strip_usage): Likewise.
	(strip_main): Call print_version.
	(copy_main): Likewise.
	* objdump.c (program_version): Don't declare.
	(usage): Print bug report address.
	(main): Call print_version.
	* size.c (program_version): Don't declare.
	(usage): Print bug report address.
	(main): Call print_version.
	* strings.c (program_version): Don't declare.
	(main): Call print_version.
	(usage): Print bug report address.
	* Update dependencies.

Thu Sep 19 14:53:15 1996  Ian Lance Taylor  <>

	* ieee.c: Revert Monday's reflocalp patch, and apply this patch
 	(write_ieee_debugging_info): Write a dummy type at the end of the
	global type block.

Mon Sep 16 15:30:54 1996  Ian Lance Taylor  <>

	* ieee.c (struct ieee_write_type): Add reflocalp field.
	(ieee_pointer_type): Set reflocalp after pushing type.
	(ieee_function_type): If reflocalp is set, make this type local.
	(ieee_range_type, ieee_array_type, ieee_set_type): Likewise.
	(ieee_const_type, ieee_volatile_type): Likewise.
	(ieee_struct_field, ieee_class_baseclass): Likewise.

	* ieee.c (struct ieee_info): Add global_types field.
	(parse_ieee_bb): When starting a BB1, initialize the types field
	to the global_types field.
	(parse_ieee_be): When ending a BB2, copy the types field to the
	global_types field.

Fri Sep 13 17:32:21 1996  Ian Lance Taylor  <>

	* objcopy.c (change_leading_char): New static variable.
	(copy_options): Add "change-leading-char".
	(copy_usage): Mention --change-leading-char.
	(filter_symbols): Add obfd parameter.  Change all callers.
	Implement change_leading_char.
	(copy_object): Call filter_symbols if change_leading_char.
	(copy_main): Handle OPTION_CHANGE_LEADING_CHAR.
	* binutils.texi, objcopy.1: Document --change-leading-char.

Tue Sep  3 14:05:29 1996  Ian Lance Taylor  <>

	* ieee.c (ieee_enum_type): Don't check index into a NULL names
	* nm.c (sort_symbols_by_size): Always initialize next.
	* rdcoff.c (parse_coff_type): Warn about an incomprehensible
	type rather than crashing.
	* rddbg.c (read_symbol_stabs_debugging_info): Initialize f.
	* stabs.c (parse_stab_members): Set context in all cases.

Thu Aug 29 16:56:52 1996  Michael Meissner  <>

	* (i[345]86-*-*): Recognize i686 for pentium pro.
	* configure: Regenerate.

Thu Aug 29 11:29:20 1996  Ian Lance Taylor  <>

	* objdump.c (L_tmpnam): Never define.
	(display_target_list): Use choose_temp_base instead of tmpnam.
	(display_info_table): Likewise.

Tue Aug 27 18:15:01 1996  Ian Lance Taylor  <>

	* stabs.c (parse_stab): An N_FUN symbol with an empty string
	indicates the end of a function.

Thu Aug 22 17:08:00 1996  Ian Lance Taylor  <>

	* wrstabs.c (struct string_hash_entry): Add next field.
	(struct stab_write_handle): Change strings to a pointer to
	string_hash_entry.  Add last_strings field.  Remove strings_alloc
	(string_hash_newfunc): Initialize next field.
	(stab_write_symbol): Copy string into hash table rather than into
	buffer.  Keep a list of hash table entries.
	(write_stabs_in_sections_debugging_info): Initialize last_string.
	Copy strings from list of hash table entries in memory.
	(stab_modify_type): If the entry on the stack is a definition,
	make a new definition rather than failing an assert.
	(stab_array_type): The size is only zero if high is strictly less
	than low.

	* ieee.c (struct ieee_info): Add saw_filename field.
	(parse_ieee): Initialize saw_filename.
	(parse_ieee_bb): Set saw_filename for a BB1 or BB2.  In a BB1,
	discard the current variables and types.  In a BB10, if no
	filename has been seen, call debug_set_filename.
	(parse_ieee_ty): In case 'g', the type is optional.

	* prdbg.c (pr_fix_visibility): Don't abort on

	* debug.c (debug_name_type): Correct error message.

	* Substitute HLDENV.
	* configure: Rebuild.
	* (HLDENV): New variable.  Use it whenever linking a

Thu Aug 15 19:30:41 1996  Stan Shebs  <>

	* mpw-make.sed: Add symbolic doublequotes around the version

Thu Aug  8 12:27:52 1996  Klaus Kaempf  <>

	* makefile.vms: Add better support for DEC C compilation.
	Add new macros as in

Wed Aug  7 14:27:33 1996  Philippe De Muyter  <>

	* Call BFD_NEED_DECLARATION on strstr and sbrk.
	* acconfig.h (NEED_DECLARATION_STRSTR): New macro.
	* configure, Rebuild.
	* bucomm.h (strstr): Declare if NEED_DECLARATION_STRSTR.
	(sbrk): Declare if HAVE_SBRK and NEED_DECLARATION_SBRK.

	* prdbg.c (pr_end_struct_type): Avoid using a string constant in
	assert, for the benefit of broken assert macros.

Fri Jul 26 14:06:50 1996  Ian Lance Taylor  <>

	* objdump.c (disassemble_data): Set disasm_info.flavour from

Tue Jul 23 13:59:54 1996  Ian Lance Taylor  <>

	* dlltool.c (secdata): In non DLLTOOL_PPC case, change alignment
	of .text section to 2.

Mon Jul 22 08:46:15 1996  Stu Grossman  (

	* objdump.c (dump_section_stabs):  Fix test for stabs sections
	ending with numbers.  This fixes a problem with .stab being
	confused with .stab.index.

Wed Jul 10 13:32:28 1996  Ian Lance Taylor  <>

	* stabs.c (stab_demangle_fund_type): Return a void * for a
	template, rather than simply aborting.

Mon Jul  8 15:28:05 1996  Ian Lance Taylor  <>

	* ar.c (open_inarch): Add file parameter.  Change all callers.  If
	this is a newly created archive, set the target based on the
	* arsup.h (open_inarch): Update declaration.

Thu Jul  4 12:00:55 1996  Ian Lance Taylor  <>

	* (VERSION): Set to cygnus-2.7.1.

	* Released binutils 2.7.

	* rdcoff.c (parse_coff): Get address to pass to debug_end_function
	from function size, not value of .ef symbol.  From Ning
	Mosberger-Tang <>.

Sat Jun 29 21:18:09 1996  Ian Lance Taylor  <>

	* objcopy.c (strip_main): Add -o option, and handle it.
	(strip_usage): Mention -o.
	* binutils.texi, strip.1: Mention -o.

Mon Jun 24 17:19:02 1996  Jason Molenda  (

	* (bindir, libdir, datadir, mandir, infodir, includedir,
	INSTALL_PROGRAM, INSTALL_DATA): Use autoconf set values.
	(docdir): Removed.
	* (AC_PREREQ): Autoconf 2.5 or higher.

Mon Jun 24 11:59:13 1996  Ian Lance Taylor  <>

	* objdump.c (endian): New static variable.
	(usage): Mention -EB/-EL/--endian.
	(long_options): Add "endian".
	(disassemble_data): If endianness was specified, replace
	abfd->xvec with a copy of itself with the given endianness.
	(main): Handle -EB/-EL/--endian.
	* binutils.texi, objdump.1: Mention -EB/-EL/--endian.

	* objdump.c: Make most variables and functions static.

	* On alpha*-*-osf*, link against libbfd.a if not
	using shared libraries.
	* configure: Rebuild with autoconf 2.10.

Sun Jun 23 14:47:36 1996  Kim Knuttila  <>

	* dlltool.c (secdata): Changed .rdata to .reldata so .reloc will work.
	(make_one_lib_file): Removed cruft. (#if 1)

Wed Jun 19 14:46:38 1996  Ian Lance Taylor  <>

	* objdump.c (stabs): Change from struct internal_nlist * to
	bfd_byte *.
	(print_section_stabs): Fetch stabs information directly, rather
	than assuming that struct internal_nlist is the right size.

	* binutils.texi: Document change to binary format: file position
	based on load address, not section VMA.

	* bucomm.h: Define SEEK_SET, SEEK_CUR, and SEEK_END if they are
	not already defined.

Tue Jun 18 18:25:00 1996  Ian Lance Taylor  <>

	* (DISTSTUFF): Add deflex.c.

Tue Jun 18 15:03:44 1996  Klaus Kaempf  <>

	* config.h-vms, makefile.vms: New files.

Mon Jun 17 09:47:31 1996  Ian Lance Taylor  <>

	* dlltool.c (make_one_lib_file): Use BFD_RELOC_RVA rather than

Wed Jun 12 11:52:06 1996  Ian Lance Taylor  <>

	* nm.c (struct get_relocs_info): Define.
	(line_numbers): New static variable.
	(long_options): Add "line-numbers".
	(usage): Mention -l and --line-numbers.
	(main): Handle -l.
	(print_symbol): Print line numbers if requested.
	(get_relocs): New static function.
	* binutils.texi, nm.1: Document -l/--line-numbers.

Tue Jun 11 20:12:15 1996  Ian Lance Taylor  <>

	* objdump.c (dump_reloc_set): Add sec parameter.  Change all
	callers.  If with_line_numbers is set, display line numbers of
	relocation entries.
	* binutils.texi, objdump.1: Document -l with -r.

Mon Jun 10 23:42:59 1996  Ian Lance Taylor  <>

	* ar.c (open_inarch): Report BFD error message if an archive can
	not be recognized.  List matching formats if the file is
	ambiguously recognized.
	(ranlib_touch): Likewise.

Thu Jun  6 13:56:14 1996  Ian Lance Taylor  <>

	* README: Add notes on how to build if you don't have ar.

	* Remove old incorrect setting of CC.

Tue Jun  4 10:52:49 1996  Tom Tromey  <>

	* (install): Don't check to see if tooldir exists.
	Make $(tooldir) and $(tooldir)/bin.

Mon Jun  3 17:40:23 1996  Michael Meissner  <>

	* strings.c (main): Make main an int function, not void.

Fri May 31 13:59:24 1996  Ian Lance Taylor  <>

	* nm.c (filter_symbols): Check for BSF_WEAK as well as
	* objcopy.c (filter_symbols): Likewise.

Wed May  8 16:57:20 1996  Ian Lance Taylor  <>

	* objcopy.c (copy_object): Make clear that it is only a warning
	when the output file can not represent the architecture.

Fri May  3 11:30:17 1996  Ian Lance Taylor  <>

	* objdump.c (disassemble_data): Don't refer to bytes past the end
	of data.

Wed Apr 24 14:10:21 1996  Ian Lance Taylor  <>

	* rddbg.c (read_symbol_stabs_debugging_info): Move call to
	free_saved_stabs outside the loop over the symbols.

Tue Apr 23 12:56:11 1996  Ian Lance Taylor  <>

	* objdump.c (compare_symbols): Sort symbols whose names start with
 	`.' after other symbols.  If no other decision can be made, sort
	symbols by name.

Thu Apr 18 16:02:11 1996  Ian Lance Taylor  <>

	* dep-in.sed: Substitute $(BFDDIR) for @BFDDIR@.
	* Rebuild dependencies.
	(dep.sed): Substitute $(BFDDIR) for @BFDDIR@.

Tue Apr 16 13:50:22 1996  Ian Lance Taylor  <>

	* rdcoff.c: New file.
	* rddbg.c (read_debugging_info): Read COFF symbols if COFF flavour
	and no stabs were found.
	* budbg.h (parse_coff): Declare.
	* Rebuild dependencies.
	(CFILES): Add rdcoff.c.
	(DEBUG_OBJS): Add rdcoff.o.

Mon Apr 15 15:55:01 1996  Doug Evans  <>

	* nlmconv.c (choose_temp_base{,_try}): Delete, in libiberty now.
	(link_inputs): Update call to choose_temp_base.

Mon Apr  8 14:40:05 1996  Ian Lance Taylor  <>

	* Permit --enable-shared to specify a list of
	* configure: Rebuild.

Fri Mar 29 16:11:33 1996  Ian Lance Taylor  <>

	* objdump.c (dump_section_header): Print the SEC_LINK_ONCE flag
	and the SEC_LINK_DUPLICATES field.

Fri Mar 29 11:35:55 1996  J.T. Conklin  (

	* nlmconv.1: Changed to be recognized by catman -w on Solaris.

Thu Mar 28 14:17:02 1996  Ian Lance Taylor  <>

	* wrstabs.c (stab_enum_type): Set buf before using it.

Fri Mar 22 15:49:08 1996  Ian Lance Taylor  <>

	* stabs.c (struct stab_handle): Add field abfd.
	(start_stab): Add abfd parameter.
	(parse_stab_string): Skip the symbol leading char when searching
	for the value of a global symbol.
	* budbg.h (start_stab): Update declaration.
	* rddbg.c (read_section_stabs_debugging_info): Pass abfd to
	(read_symbol_stabs_debugging_info): Likewise.

Thu Mar 21 12:40:48 1996  Ian Lance Taylor  <>

	* wrstabs.c (stab_function_type): Output an empty typedef for an
	unused argument, rather than making up a meaningless name.
	(stab_variable): Use N_RSYM for a DEBUG_REGISTER variable.

	* ieee.c (struct ieee_info): Add global_vars field.
	(parse_ieee_be): When ending the global typedef block, copy the
	variables into info->global_vars.
	(parse_ieee_atn): Don't require an NN record for a pmisc ATN.
	(ieee_read_reference): Search the global variables after the local

Wed Mar 20 18:08:19 1996  Andreas Schwab  <>

	* objdump.c (disassemble_data): Make sure sym_name is always set.
	(dump_section_header): Always put a space after the section name.
	(dump_bfd_header): Terminate output with newline.

Wed Mar 20 16:35:20 1996  Ian Lance Taylor  <>

	* wrstabs.c: New file.
	* budbg.h (write_stabs_in_sections_debugging_info): Declare.
	* objcopy.c (write_debugging_info): For COFF or ELF, output stabs
	in sections.
	* Rebuild dependencies.
	(CFILES): Add wrstabs.c.
	(WRITE_DEBUG_OBJS): New variable.
	($(STRIP_PROG)): Likewise.

	* stabs.c (parse_stab_members): Make type stub detection more like

	* ieee.c (struct ieee_handle): Add fields complex_float_index and
	(ieee_complex_type): Cache type index in complex_float_index and
	complex_double_index, depending upon size.  Set size on type stack
	to size * 2.

	* ieee.c (ieee_empty_type): Use builtin_unknown, not 0.
	(ieee_void_type): Use builtin_void, not 1.

	* ieee.c (parse_ieee_ty): Handle 'V' type code.
	(parse_ieee_atn): Don't require two numbers for type 10.

	* ieee.c (parse_ieee_be): Add one to offset at end of function or

	* ieee.c (struct ieee_block): Add field skip.
	(parse_ieee_bb): Don't call debug_record_function for __XRYCPP
	function, and set skip field.
	(parse_ieee_be): Don't call debug_end_function if skip is set.

	* debug.c (struct debug_handle): Add fields current_write_lineno
	and current_write_lineno_index.
	(debug_write): Initialize current_write_lineno and
	current_write_lineno_index for each unit.  Call
	debug_write_linenos rather than writing out the line numbers
	(debug_write_function): Call debug_write_linenos.
	(debug_write_block): Likewise.
	(debug_write_linenos): New static function.

	* debug.c (debug_write_type): For DEBUG_KIND_FUNCTION, push return
	type before arguments.

Mon Mar 18 18:05:33 1996  Ian Lance Taylor  <>

	* configure, Rebuild.
	* dlltool.c, nlmconv.c: Include <vfork.h> if HAVE_VFORK_H is

	* stabs.c (parse_stab_range_type): A complex type is defined as a
	subrange of itself with the high bound zero.
	* ieee.c (ieee_complex_type): Don't crash on sizes of 12 or 16.

Tue Mar 12 12:09:43 1996  Ian Lance Taylor  <>

	* ieee.c (ieee_write_undefined_tag): Switch to global_types even
	if it is not empty.
	(ieee_tag_type): For an enum, look through info->enums.

	* configure: Rebuild with autoconf 2.8.

	* debug.c (debug_type_samep): Don't loop endlessly in
	DEBUG_KIND_ENUM case.  From Eric Baur <>.

Mon Mar 11 12:35:03 1996  Ian Lance Taylor  <>

	* rddbg.c (read_section_stabs_debugging_info): Call save_stab for
	each stab entry, call stab_context on an error, and call
	free_saved_stabs before rturning.
	(read_symbol_stabs_debugging_info): Likewise.
	(struct saved_stab): Define.
	(saved_stabs, saved_stabs_index): New static variables.
	(save_stab, stab_context, free_saved_stabs): New static functios.

	* objdump.c (stab_name): Remove.
	(struct stab_print): Remove.
	(stab_print): Remove.
	(dump_stabs): Don't initialize stab_name.
	(print_section_stabs): Call bfd_get_stab_name rather than using
	the stab_name array.

Tue Feb 27 19:52:01 1996  Ian Lance Taylor  <>

	* prdbg.c (pr_int_constant): Initialize info correctly.
	(pr_float_constant): Likewise.

Mon Feb 26 18:11:37 1996  Stan Shebs  <>

	* mpw-make.sed: Update to handle shared library support.

Sat Feb 24 11:21:49 1996  Alan Modra  <>:

	* ($(OBJDUMP_PROG)): Search $(BFDLIB) before

Thu Feb 15 12:44:45 1996  Ian Lance Taylor  <>

	* Don't tamper with LDFLAGS.  Call AC_PROG_CC before
	* configure: Rebuild.

	* Substitute RPATH_ENVVAR.
	* configure: Rebuild.
	* (RPATH_ENVVAR): New variable.
	(check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.

	* objcopy.c (smart_rename): Rather than doing chmod then chown, do
	chmod without setuid, then chown, then chmod with setuid.

Wed Feb 14 16:46:42 1996  Martin Anantharaman  <>

	* arsup.c (map_over_list): Reindent.  Don't assume that the
	function does not delete the BFD.
	(ar_addlib_doer): Don't set prev->next if prev is NULL.

Wed Feb 14 15:12:17 1996  Ian Lance Taylor  <>

	* ieee.c (ieee_regno_to_genreg): Convert register numbers for m68k
	and i960.
	(ieee_genreg_to_regno): Likewise.

Mon Feb 12 14:19:59 1996  Ian Lance Taylor  <>

	* ieee.c: Extensive changes to write code to put types in the
	global type block when possible, to output ranges for all memory
	occupied by the module, and to improve efficiency.

	* debug.c (struct debug_handle): Remove class_mark field.  Add
	id_list and compare_list fields.
	(struct debug_class_id): Define.
	(struct debug_type_compare_list): Define.
	(debug_write): Initialize info->id_list
	(debug_write_name): Remove reference to info->class_mark.
	(debug_write_type): Get id for all structs and classes.  Simplify
	test for whether struct has already been written.
	(debug_write_class_type): Get id for all classes.  Simplify test
	for whether class has already been written.
	(debug_write_block): Don't write out blocks other than the top
	level block if they have no local variables.
	(debug_set_class_id): New static function.
	(debug_type_samep): New static function.
	(debug_class_type_samep): New static function.
	* prdbg.c (pr_start_struct_type): Always print id.
	(pr_start_class_type): Likewise.
	(pr_tag_type): Likewise.

	* stabs.c (struct stab_handle): Add syms and symcount fields.
	(start_stab): Add syms and symcount parameters.  Change all
	(parse_stab_string): Look up global variables in the symbol table
	to get the right value.
	* budbg.h (start_stab): Update declaration.
	* rddbg.c (read_section_stabs_debugging_info): Add syms and
	symcount parameters.  Change all callers.

	* stabs.c (parse_stab_array_type): If the index type is 0, use

Wed Feb  7 14:17:45 1996  Ian Lance Taylor  <>

	* ieee.c (ieee_start_compilation_unit): Clear modified and
	modified_alloc fields of info.

	* Check for --enable-shared.  Substitute new
	variables BFDLIB and OPCODES.
	* configure: Rebuild.
	* (BFDLIB): Set to @BFDLIB@.

Mon Feb  5 16:18:42 1996  Ian Lance Taylor  <>

	Support for building bfd and opcodes as shared libraries, based on
	patches from Alan Modra <>:
	* (HLDFLAGS): New substitution.
	* configure: Rebuild.
	* (HLDFLAGS): New variable.  Make all links use
	$(HLDFLAGS) before $(CFLAGS) and $(LDFLAGS).
	(BFDLIB_DEP): New variable.  Replace all occurrences of $(BFD) as
	a dependency with $(BFDLIB_DEP).  Remove $(BFD) as a dependency if
	there is also a dependency on $(ADDL_DEPS).
	(BFDLIB): Rename from BFD; change all uses; set to -L../bfd -lbfd.
	(OPCODES_DEP): New variable.  Replace all occurrends of $(OPCODES)
	as a dependency with $(OPCODES_DEP).
	(OPCODES): Set to -L../opcodes -lopcodes.
	(ADDL_DEPS): New variable.  Replace all occurrences of
	$(ADDL_LIBS) as a dependency with $(ADDL_DEPS).
	(check): Set LD_LIBRARY_PATH in the environment.
	(config.status): Depend upon BFD and config.bfd.

Fri Feb  2 17:02:59 1996  Doug Evans  <>

	* objdump.c: #include stdarg.h or varargs.h.
	(objdump_print_value): Change FILE* arg to struct disassemble_info*.
	All callers updated.  Use fprintf_func.
	(objdump_print_address): Consistently use fprintf_func.
	(objdump_sprintf): New function.
	(disassemble_data): Print insn into a buffer, print raw insn ourselves,
	then print insn mnemonic.

Fri Feb  2 16:48:55 1996  Ian Lance Taylor  <>

	* configure: Regenerate.

Thu Feb  1 09:38:18 1996  Steve Chamberlain  <>

	* (i[3-6]86-*-win32): Becomes i[3-6]86-*-cygwin32.
	(powerpc*-*-cygwin32): New.
	* configure: Regenerated.

Wed Jan 31 13:22:03 1996  Richard Henderson  <>

	* (distclean): Remove $(DEMANGLER_PROG).1.

Mon Jan 29 17:36:29 1996  Ian Lance Taylor  <>

	Based on patches from H J Lu <>:
	* objcopy.c (remove_leading_char): New static variable.
	(copy_usage): Mention --remove-leading-char.
	(filter_symbols): If remove_leading_char, and the first character
	of a global symbol matches the symbol leading char of the BFD,
	remove the first character.
	(copy_object): Filter the symbols if remove_leading_char is set.
	(copy_main): Handle --remove-leading-char.
	* binutils.texi, objcopy.1: Document --remove-leading-char.

Sat Jan 27 15:40:13 1996  Michael Meissner  <>

	* objdump.c (fprintf): Add prototype to avoid compiler warning on

Fri Jan 26 11:53:42 1996  Ian Lance Taylor  <>

	* binutils.texi (nm): Improve documentation on symbol types.
	(objdump): Reference the stabs manual from the discussion of the
	--stabs option.

Thu Jan 25 11:21:46 1996  Raymond Jou  <>

	* mpw-make.sed: Add a "stamps" target.

Thu Jan 25 13:51:44 1996  Ian Lance Taylor  <>

	* objdump.c (dump_headers, dump_section_header): Change objdump -h
	output to be simpler and to include section file offsets.

Wed Jan 24 12:06:05 1996  Ian Lance Taylor  <>

	* stabs.c (parse_stab_members): Don't adjust voffset.

	* ieee.c (ieee_read_cxx_class): Don't multiply voffset by 4.
	(struct ieee_write_type): Add name field.
	(struct ieee_type_class): Remove name field.  Change all uses to
	use new name field in type instead.
	(struct ieee_name_type): Likewise.
	(ieee_start_struct_type): Initialize name field of type.
	(ieee_start_class_type): Don't initialize classdef entry of tag.
	(ieee_class_method_var): Don't adjust voffset.
	(ieee_end_class_type): Likewise.
	(ieee_tag_type): Initialize new name field of type.
	(ieee_typdef): Set name after copying in type information.

	* debug.c (VOFFSET_STATIC_METHOD): Define as -1, not 1.

	* ieee.c (struct ieee_modified_type): Define.
	(struct ieee_handle): Add modified and modified_alloc fields.
	(ieee_get_modified_info): New static function.
	(ieee_pointer_type): Cache type index.
	(ieee_const_type): Likewise.
	(ieee_volatile_type): Likewise.

	* ieee.c (ieee_define_named_type): When creating a tag for an
	anonymous struct, copy the name into memory.
	(ieee_tag_type): Likewise.
	* debug.c (debug_write_type): Only check and set id field for an
	unnamed object.
	(debug_write_class_type): Likewise.

	* ieee.c: Various changes to write out types for functions and
	references, and to not write out unnecessary function types.

	* ieee.c (struct ieee_var): Remove variable field.  Add kind
	field, and define some enum constants for it.
	(parse_ieee_ty): Set kind field of variable for 'x' and 'X' types.
	(parse_ieee_atn): Make an indirect slot for an external variable,
	although we otherwise don't record it.  Set kind field rather than
	variable field of pvar.
	(ieee_read_cxx_class): Try to get the type of a static member.
	(ieee_read_reference): Check kind field rather than variable

Tue Jan 23 15:54:18 1996  Ian Lance Taylor  <>

	* ieee.c: Various changes to handle reading C++ reference type

	* debug.h (enum debug_var_kind): Add DEBUG_VAR_ILLEGAL.
	(enum debug_parm_kind): Add DEBUG_PARM_ILLEGAL.
	* debug.c (debug_get_parameter_types): Handle DEBUG_KIND_FUNCTION.

	* ieee.c: Various changes to write out definitions of C++ classes.

	* debug.c (debug_append_filename): Remove.
	* debug.h (debug_append_filename): Don't declare.

	* stabs.c (struct stab_handle): Remove last_type field.  Add
	so_string and so_value fields.
	(finish_stab): Call stab_emit_pending_vars before calling
	debug_end_function.  Don't warn about pending variables.
	(parse_stab): Accumulate N_SO strings until a non N_SO symbol is
	seen, rather than calling debug_append_filename.  Call
	stab_emit_pending_vars before calling debug_end_function.  Don't
	set info->last_type.

Tue Jan 23 09:53:54 1996  Doug Evans  <>

	* objdump.c (disassemble_data): Handle unknown endianness.

Mon Jan 22 16:46:43 1996  Doug Evans  <>

	Add new option --show-raw-insn.
	* objdump.c (show_raw_insn): New global.
	(usage): Update.
	(long_options): Update.
	(disassemble_data): Set disasm_info.flags if --show-raw-insn.

	* objdump.c (disassemble_data): Set new arch,mach,endian fields in

Mon Jan 22 19:29:36 1996  Ian Lance Taylor  <>

	* ieee.c: Extensive changes to pass a single info argument around
	in the reading routines, rather than several arguments.  Add code
	to read C++ debugging records.

	* debug.h (debug_get_type_size): Declare.
	(debug_get_field_name): Declare.
	(debug_get_field_bitpos): Declare.
	(debug_get_field_bitsize): Declare.
	(debug_get_field_visibility): Declare.
	(debug_get_field_physname): Declare.
	* debug.c (debug_get_real_type): Handle DEBUG_KIND_TAGGED.
	(debug_get_type_size): New function.
	(debug_get_field_name): New function.
	(debug_get_field_bitpos): New function.
	(debug_get_field_bitsize): New function.
	(debug_get_field_visibility): New function.
	(debug_get_field_physname): New function.
	(debug_write_type): Make sure we pass the real kind, not INDIRECT,
	to tag_type.  Pass the name recursively for INDIRECT.

Fri Jan 19 12:31:57 1996  Ian Lance Taylor  <>

	* debug.h (struct debug_write_fns): Remove ellipsis_type.  Add int
	and boolean parameters to function_type.  Add boolean parameter to
	(debug_make_ellipsis_type): Don't declare.
	(debug_make_function_type): Add debug_type * and boolean
	parameters.  Change all callers.
	(debug_make_method_type): Add boolean parameter.  Change all
	(debug_get_parameter_types): Add boolean * parameter.  Change all
	(debug_get_target_type): Declare.
	* debug.c (struct debug_function_type): Add fields arg_types and
	(struct debug_method_type): Add field varargs.
	(debug_ellipsis_type, ELLIPSIS_P): Remove.
	(debug_make_ellipsis_type): Remove.
	(debug_make_function_type): Add arg_types and varargs parameters.
	(debug_make_method_type): Add varargs parameter.
	(debug_get_parameter_types): Add pvarargs parameter.
	(debug_get_target_type): New function.
	(debug_write_type): In case DEBUG_KIND_FUNCTION, push argument
	types and pass count to function_type.  In DEBUG_KIND_METHOD, use
	a signed int for the count, don't call ellipsis_type, and pass
	varargs to method_type.
	* stabs.c (struct stab_demangle_info): Add varargs field.
	(stab_demangle_argtypes): Add pvarargs parameter.  Change all
	(stab_demangle_args): Likewise.
	(stab_demangle_type): In case 'F', pick up argument types.
	* prdbg.c (pr_ellipsis_type): Remove.
	(pr_function_type): Add argcount and varargs parameters.
	(pr_method_type): Add varargs parameter.
	* ieee.c (ieee_ellipsis_type): Remove.
	(ieee_function_type): Add argcount and varargs parameters.
	(ieee_method_type): Add varargs parameter.  Remove most of
	function body, and just call ieee_function_type.

	* stabs.c: Include "demangle.h".  Added several new static
	functions not listed below to demangle argument types; they are
	all called via stab_demangle_argtypes.
	(finish_stab): If the kind of an undefined tag is
	DEBUG_KIND_ILLEGAL, use DEBUG_KIND_STRUCT instead.  Warn if there
	are any pending variable.
	(parse_stab): Don't close the function when the block depth goes
	to zero.  Pass value to debug_end_function.
	(parse_stab_string): In case 'T', pass the name to
	(parse_stab_type): In case 'x', use stab_find_tagged_type.  In
	case '#', handle functions with variable numbers of arguments.
	(parse_stab_struct_type): Add tagname parameter.  Change all
	(parse_stab_members): Add tagname and typenums parameters.  Change
	all callers.  If the type of a method is a stub, call
	parse_stab_argtypes to demangle the argument types and get the
	physical name of the function.
	(parse_stab_argtypes): New static function.
	(stab_record_variable): For a DEBUG_GLOBAL or DEBUG_STATIC
	variable, call debug_record_variable immediately.
	(stab_find_tagged_type): New static function.

	* debug.h (enum debug_type_kind): Add DEBUG_KIND_ILLEGAL.
	(struct debug_write_fns): Add field ellipsis_type.  Add id
	parameter to start_struct_type, start_class_type, and tag_type.
	(debug_make_ellipsis_type): Declare.
	(debug_find_named_type): Declare.
	(debug_get_type_kind): Declare.
	(debug_get_return_type): Declare.
	(debug_get_parameter_types): Declare.
	(debug_get_fields): Declare.
	(debug_get_field_type): Declare.
	* debug.c (struct debug_handle): Add fields class_id and base_id.
	(struct debug_class_type): Add field id.
	(struct debug_method_variant): Rename argtypes to physname.
	Change all uses.
	(debug_ellipsis_type): New static variable.
	(ELLIPSIS_P): New macro.
	(debug_make_ellipsis_type): New function.
	(debug_make_method_variant): Rename argtypes to physname.
	(debug_make_static_method_variant): Likewise.
	(debug_name_type): Always put types in the global namespace.
	(debug_find_named_type): New function.
	(debug_find_tagged_type): Treat DEBUG_KIND_ILLEGAL specially,
	rather than DEBUG_KIND_VOID.
	(debug_get_real_type): New static function.
	(debug_get_type_kind): New function.
	(debug_get_return_type): New function.
	(debug_get_parameter_types): New function.
	(debug_get_fields): New function.
	(debug_get_field_type): New function.
	(debug_write): Initialize base_id.
	(debug_write_type): Pass new id argument to tag_type.  Handle
	DEBUG_KIND_UNION.  Handle ellipsis for method arguments.
	(debug_write_class_type): Don't dereference kclass if it is NULL.
	Use id.
	* prdbg.c (pr_fns): Add pr_ellipsis_type.
	(pr_ellipsis_type): New static function.
	(pr_pointer_type): If this is a pointer to an array, parenthesize
	it correctly.
	(pr_start_struct_type): Add id parameter.
	(pr_start_class_type): Likewise.
	(pr_tag_type): Likewise.
	(pr_fix_visibility): Add the visibility to the top of the stack,
	not the second element on the stack.
	(pr_struct_field): Pop the stack before calling pr_fix_visibility.
	(pr_class_static_member): Likewise.
	(pr_class_start_method): Don't push a type, just set the method
	name in the type on the top of the stack.
	(pr_class_end_method): Don't pop the stack.
	(pr_class_method_variant): Rename argtypes parameter to physname.
	Append const and volatile rather than prepending them.  Add a
	space after the physname.
	(pr_class_static_method_variant): Likewise.
	* ieee.c (ieee_fns): Add ieee_ellipsis_type.
	(ieee_define_named_type): Use DEBUG_KIND_ILLEGAL rather than
	(write_ieee_debugging_info): Likewise.
	(ieee_typdef): Likewise.
	(ieee_ellipsis_type): New static function.
	(ieee_start_struct_type): Add id parameter.
	(ieee_start_class_type): Likewise.
	(ieee_tag_type): Likewise.
	(ieee_class_method_variant): Rename name to physname.
	(ieee_class_static_method_variant): Likewise.

	* (DEBUG_OBJS): Remove prdbg.o.
	($(OBJDUMP_PROG)): Depend upon, and link against, prdbg.o.

Thu Jan 18 17:35:06 1996  Kim Knuttila  <>

	* dlltool.c (make_tail): Changed the order of the sections to avoid
	an alignment problem.

Wed Jan 17 14:23:00 1996  J.T. Conklin  <>

	* srconv.c (wr_du): Set du.stackfrmt to 0.
	(wr_un, wr_sc): Emit all sections, even those with 0 size.

Tue Jan 16 16:15:49 1996  J.T. Conklin  <>

	* srconv.c (wr_hd): Space size within segment was being
	stored in segment identifier field.

Tue Jan 16 12:07:25 1996  Stan Shebs  <>

	BUILD_DLLTOOL): Put definitions for these into makefile when
	configuring, instead of always clearing in mpw-make.sed.
	* mpw-make.sed: Edit out any host_alias or target_alias settings,
	fix pathname to BFD internal include files, remove dependency
	calculation rules.

Thu Jan 11 17:31:38 1996  Michael Meissner  <>

	* objdump.c (dump_section_header): Add new section flags

Thu Jan 11 11:45:34 1996  Ian Lance Taylor  <>

	* objcopy.c (filter_symbols): NULL terminate the output symbols.
	(copy_object): Allocate space for a possible extra NULL pointer.

	* debug.c (debug_make_undefined_tagged_type): Make sure we are
	given a kind of type we can handle.
	(debug_write_type): Handle undefined enums and structs.
	(debug_write_class_type): Handle undefined classes.
	* prdbg.c (pr_enum_type): Handle an undefined enum.
	* ieee.c (ieee_enum_type): Likewise.

Wed Jan 10 15:33:18 1996  Ian Lance Taylor  <>

	* Updated dependencies.
	(ALLOCA, MALLOC): Remove variables.
	(ADDL_LIBS): Remove $(MALLOC) from definition.
	* alloca.c, gmalloc.c: Remove.

Mon Jan  8 18:02:29 1996  Ian Lance Taylor  <>

	* ieee.c: Add global function write_ieee_debugging_info and a
	bunch of static functions and structs used to write out IEEE
	debugging information.
	* budbg.h (write_ieee_debugging_info): Declare.

	* ieee.c (struct ieee_type): Add pslot field.
	(enum builtin_types): Define.
	(ieee_builtin_type): For a pointer, return a pointer to the named
	type.  Use enum values rather than numbers.
	(ieee_alloc_type): New static function.
	(ieee_read_type_index): Use ieee_alloc_type.
	(parse_ieee_bb): Likewise.
	(parse_ieee_ty): Likewise.  Use ieee_builtin_type for array range,
	rather than making a new integer type.  Store the new type in the
	slot, if there is one.
	(parse_ieee_atn): Treat ATN10 as defining a register variable.
	(ieee_regno_to_genreg): Rename from ieee_regno_to_gen.  Change all
	(ieee_genreg_to_regno): New static function.

	* stabs.c (parse_stab_type): Add new typename parameter.  Change
	all callers.
	(parse_stab_range_type): Add new typename parameter.  Change all

	* debug.h (struct debug_write_fns): Add tag parameter to
	enum_type, start_struct_type, and start_class_type.
	* debug.c (debug_write_type): Pass any tag name to
	start_struct_type, debug_write_class_type, and enum_type.  If
	DEBUG_KIND_TAGGED, pass the name in the recursive call.
	(debug_write_class_type): Accept a new tag parameter, and pass it
	to start_class_type.
	* prdbg.c (pop_type): Don't remove '+' character.
	(pr_enum_type): Accept and use tag parameter.
	(pr_start_struct_type): Likewise.
	(pr_start_class_type): Likewise.
	(pr_class_baseclass): Adjust algorithm used to find where to put
	the baseclass name.
	(pr_tag): Don't bother to insert the tag name.

	* objcopy.c: Include budbg.h.
	(convert_debugging): New static variable.
	(copy_options): Add "debugging".
	(copy_usage): Mention --debugging.
	(is_strip_section): Skip debugging sections if convert_debugging.
	(setup_section, copy_section): Likewise.
	(filter_symbols): Skip debugging symbols if convert_debugging.
	(copy_object): If convert_debugging, read and write debugging
	(write_debugging_info): New static function.
	(copy_main): Handle --debugging.
	* (DEBUG_OBJS): New variable.
	($(OBJCOPY_PROG)): Depend upon and link against $(DEBUG_OBJS).
	($(STRIP_PROG)): Likewise.
	(OBJDUMP_OBJS): Remove variable.
	($(OBJDUMP_PROG)): Use objdump.o $(DEBUG_OBJS) rather than
	* binutils.texi, objcopy.1: Document --debugging.

Thu Jan  4 16:31:21 1996  Ian Lance Taylor  <>

	* ieee.c: New file with code to read IEEE debugging information.
	* budbg.h (parse_ieee): Declare.
	* rddbg.c (read_debugging_info): Handle IEEE flavour files.
	(read_ieee_debugging_info): New static function.
	* Rebuild dependencies.
	(CFILES): Add ieee.c.
	(OBJDUMP_OBJS): Add ieee.o.

	* bucomm.h (xrealloc): Change type of first parameter from char *
	to PTR.

Tue Jan  2 17:44:07 1996  Ian Lance Taylor  <>

	* Add targets to automatically rebuild dependencies.
	Remove targets which just listed dependencies of .o files.
	(DEP): New variable.
	(underscore.c): Don't do anything, just depend upon stamp-under.
	(stamp-under): New target; do what underscore.c used to do.
	(nlmconv.o): Depend upon sym.h and ecoff.h.
	(.dep, .dep1, dep.sed, dep, dep-in): New targets.
	(stage1, stage2, stage3, against, comparison): Remove.
	(de-stage1, de-stage2, de-stage3): Remove.
	(clean, distclean): Remove stamp-under and dep.sed.
	* dep-in.sed: New file.

	Implement generic debugging support.  Implement a stabs reader and
	a generic printer.
	* budbg.h, debug.c, debug.h, prdbg.c, rddbg.c, stabs.c: New files.
	* objdump.c: Include "debug.h" and "budbg.h".
	(dump_debugging): New global variable.
	(usage): Mention --debugging.
	(long_options): Add "debugging".
	(display_bfd): Handle --debugging.
	* (OBJDUMP_OBJS): New variable.
	* binutils.texi, objdump.1: Document --debugging.

Sat Dec 30 09:59:51 1995  Jeffrey A Law  (

	* nm.c ( long_options): Add "--defined-only" option.
	(usage): Update for new "--defined-only" option.
	(filter_symbols): Handle "--defined-only".

Fri Dec 29 16:04:56 1995  Ian Lance Taylor  <>

	* arparse.y: Include "bucomm.h", not <sysdep.h>.
	* nlmheader.y: Don't include "sysdep.h".

Tue Dec 26 18:23:18 1995  Ian Lance Taylor  <>

	* nm.c (print_symdef_entry): Check return value of

Sat Dec 23 11:03:16 1995  Michael Meissner  <>

	* (DLLTOOL_DEFS): Build dlltool for PowerPC if target
	is powerpc*-*-win* in addition to powerpc*-*-*pe*.

Fri Dec 15 16:30:57 1995  Ian Lance Taylor  <>

	* objdump.c (endian_string): New static function.
	(display_target_list): Use it.
	* nlmconv.c (main): Use new bfd_big_endian macro.

Fri Dec 15 07:51:34 1995  steve chamberlain  <>

	* dlltool.c (fill_ordinals): Start from 1 if no other instructions

Tue Dec 12 12:05:21 1995  Ian Lance Taylor  <>

	* (clean): Remove $(DEMANGLER_PROG).1.  From Ronald
	F. Guilmette <>.

Mon Dec 11 14:33:05 1995  Stan Shebs  <>

	* mac-binutils.r: Fix copyright and version strings.

	* (version): Remove, no longer used.

Fri Dec  1 14:41:56 1995  Stan Shebs  <>

	* mpw-make.sed (install, install-only): Edit in Mac-specific
	install procedure.

Thu Nov 30 20:26:02 1995  Kim Knuttila  <>

	* dlltool.c (ppc_jtab): The binary glue for PowerPC dll linkage,
	including the return instruction.
	sinfo: added a preferred alignment field.
	(secdata): section data for the PowerPC version.
	(make_one_lib_file): More symbols, More sections (pdata, rdata)
	(make_tail): Use idata$6 instead of idata$7 for ppc. Also added a
	NULL idata$3 descriptor (temporary).

Tue Nov 28 17:23:44 1995  Doug Evans  <>

	* dlltool.c (fill_ordinals): Don't reference d_export_vec if
	there are no exported functions.

Mon Nov 27 13:05:59 1995  Ian Lance Taylor  <>

	* configure: Regenerate with autoconf 2.7.

Wed Nov 22 13:17:15 1995  Ian Lance Taylor  <>

	* dlltool.c (fill_ordinals): Start assigning ordinals at 1.

	* (EXPECT): Use $$r, not $${rootme}.
	(check): Set r, not rootme.

Tue Nov 21 18:04:09 1995  Ian Lance Taylor  <>

	* acconfig.h: Put NEED_DECLARATION_FPRINTF in @TOP@ section.
	* configure, Rebuild with autoconf 2.6.

Fri Nov 17 10:34:37 1995  Ian Lance Taylor  <>

	* (CC_FOR_TARGET): Use @host@ and @target@, not
	$(host_canonical) and $(target_canonical).

Thu Nov 16 03:39:20 1995  Ken Raeburn  <>

	Version 2.6 released.
	* (VERSION): Update to 2.6.

Wed Nov 15 12:14:17 1995  Ian Lance Taylor  <>

	* (CC_FOR_TARGET): Define.
	(check): Pass CC and CFLAGS to runtest.

	* nm.c (display_rel_file): Don't require a DYNAMIC object when
	dumping the dynamic symbol table.

	* objdump.c (compare_symbols): Sort global symbols before local
	symbols before debugging symbols.
	(objdump_print_address): Don't futz around looking for a global
	symbol with the same value.

Tue Nov 14 17:19:11 1995  Ian Lance Taylor  <>

	* dlltool.c: Use FOPEN_* macros rather than "r" or "w".

	* dlltool.c (fill_ordinals): Correct memset call.

Sun Nov 12 12:56:05 1995  Stan Shebs  <>

	* mpw-make.sed (DEMANGLER_PROG): Edit out attempts to do anything
 	with the man page.

Fri Nov 10 11:41:22 1995  Ian Lance Taylor  <>

	* objcopy.c (setup_section): Copy the section lma independently of
	the vma.

Wed Nov  8 11:33:00 1995  Ian Lance Taylor  <>

	* arsup.c (ar_open): Cast malloc return value.

Tue Nov  7 09:01:26 1995  Kim Knuttila  <>

	*, configure (DLLTOOL_DEFS): Added ppc target.
	* dlltool.c (MPPC): Added basic PPC definitions.

Tue Nov  7 14:02:57 1995  Ian Lance Taylor  <>

	* Don't treat rs6000-*-lynx* specially.
	* configure: Rebuild.
	* config/rslynx: Remove.
	* Remove @target_makefile_fragment@.

Mon Nov  6 15:00:50 1995  Ian Lance Taylor  <>

	* bucomm.h: Include <sys/types.h>.
	* ar.c: Don't include <sys/types.h> or <stdio.h>.
	* bucomm.c, dlltool.c, nlmconv.c, objcopy.c, objdump.c: Likewise.

Fri Nov  3 12:38:09 1995  Ian Lance Taylor  <>

	* objdump.c: Include <sys/types.h>.

	Permit user to override DEMANGLER_PROG from command line.  From
	Manfred Hollstein <>.
	* ($(DEMANGLER_PROG)): Depend upon
	(install): Don't depend upon $(DEMANGLER_PROG).1.  Only install
	$(DEMANGLER_PROG).1 if $(DEMANGLER_PROG) is not empty.

Wed Nov  1 15:04:57 1995  Manfred Hollstein KS/EF4A 60/1F/110 #40283  <>

	* (syslex.o): add -I$(srcdir) if compiling in a
	separate directory.

Mon Oct 30 14:24:18 1995  Ian Lance Taylor  <>

	* objdump.c (objdump_print_value): New static function.
	(objdump_print_address): Use it.  If we need the right section for
	the symbol, and we can't find it, print an offset from the section
	rather than using a symbol from some other section.

Thu Oct 26 10:23:14 1995  steve chamberlain  <>

	* dlltool.c (no_idata4, no_idata5): New.
	(arm_jtab): Use correct encoding of jump instruction.
	(usage, main, make_head, make_tail): Act on no_idata4, no_idata5.

Wed Oct 25 12:10:07 1995  Stan Shebs  <>

	* mpw-make.sed: Edit paths to generated[ch] files.

Fri Oct 20 18:40:34 1995  Ian Lance Taylor  <>

	* binutils.texi: Change --with-targets to --enable-targets.

Thu Oct 19 17:47:41 1995  Fred Fish  <>

	*  Remove extraneous tab on otherwise empty line,
	which confuses many non-GNU versions of "make".

Wed Oct 18 16:31:58 1995  steve chamberlain  <>

	* dlltool.c (i386_jtab, arm_jtab): New
	(gen_lib_file): Rewritten to use bfd.

Fri Oct 13 16:10:07 1995  Michael Meissner  <>

	* (install): Don't give error message if dlltool
	wasn't built.

Fri Oct 13 11:04:37 1995  steve chamberlain  <>

	* deflex.l: Allow quoting of IDs.
	* defparse.y (%union): string deleted.
	(command): DESCRIPTION takes ID.
	* dlltool.c (gen_def_file): Quote outgoing name if
	necessary.  Preserve NONAME.
	(gen_lib_file): Run ranlib.
	(workout_prefix): Deleted.
	(main, usage, long_options): Add --as, --ranlib, --ar options.

Wed Oct 11 13:36:13 1995  steve chamberlain  <>

	* dlltool.c (mtable): HOW_ALIGN_LONG, new.
	(d_ord): Deleted.
	(d_low_ord, d_high_ord, d_named_funcs): New.
	(gen_exp_file): Create noname entries correctly.
	(gen_lib_file): Dump exports alphabetically.
	(process_duplicates):  Count nonamed functions.
	(fill_ordinals): Keep track of highest ord too.
	(mangle_defs): Create alphabetically ordered list of names.

Tue Oct 10 09:39:09 1995  steve chamberlain  <>


Mon Oct  9 13:06:31 1995  steve chamberlain  <>

	* dlltool.c (add_underscore): New.
	(xlate): Use new name.
	(main, usage): Update.

Fri Oct  6 14:08:51 1995  Ken Raeburn  <>

	* sysinfo.y: Eliminate unused terminals "[" and "]" and unused
	nonterminal "name".  One s/r conflict remains.

	Mon Sep 25 22:49:32 1995  Andreas Schwab  <>

	* nm.c (print_symname): Don't try to demangle an empty
	* objdump.c (slurp_symtab): Reset symcount if there are
	no symbols.
	(slurp_dynamic_symtab): Likewise, for dynsymcount.
	(disassemble_data): Fix memory leak: free sorted_syms when done.
	(display_bfd): Likewise, for syms and dynsyms.
	(dump_relocs): Don't print header before possibly generating an
	error message.
	(dump_dynamic_relocs): Likewise.

	* ar.1, nm.1, objdump.1, size.1, strings.1, strip.1: Fix typos and
	formatting bugs.

Fri Oct  6 12:00:25 1995  Ian Lance Taylor  <>

	* ar.c (do_quick_append): Comment out.
	(replace_members): Add quick argument.
	(main): Don't call do_quick_append.
	(open_inarch): Don't call quick_append to create an empty archive.
	Instead call bfd_openw/bfd_set_format/bfd_close.

Thu Oct  5 20:53:08 1995  Ken Raeburn  <>

	* bucomm.c: Always include time.h.

Thu Oct  5 17:25:21 1995  Ian Lance Taylor  <>

	* objdump.c (compare_symbols): Sort gnu_compiled and gcc2_compiled
	symbols after other symbols with the same value.  Likewise for
	symbols which look like file names.
	(objdump_print_address): Always chose the first reasonable symbol
	with a given value.

Tue Oct  3 22:38:55 1995  Ian Lance Taylor  <>

	* arsup.c (ar_save): Use rename, not unlink/link/unlink.

Mon Oct  2 12:10:25 1995  Ian Lance Taylor  <>

	* strings.c (main): Exit with zero status if no files are given
	and standard input is read.

Thu Sep 28 20:03:07 1995  Stan Shebs  <>

	* Calculate underscore and put into makefile
	fragment, generate config.h.
	* mpw-make.sed: New file, sed commands to edit Unix makefile
	into MPW syntax.
	* Remove.
	* mac-binutils.r: New file, Mac resources.

Thu Sep 28 15:49:00 1995  steve chamberlain  <>

	* dlltool.c: (gen_exp_file): Always emit a .reloc section if
	(imp_name_lab): New.
	(gen_def_file): New.
	(gen_lib_file): Use imp_name_lab.
	(main): Initialize imp_name_lab.

Mon Sep 25 12:05:34 1995  Ian Lance Taylor  <>

	* configure: Rebuild.
	* Rebuild.
	* dlltool.c: Include "libiberty.h" and "bucomm.h".  Don't include
	<stdio.h>, <stdlib.h>, or <string.h>.  Don't include <wait.h>.
	Include <sys/types.h>.  Use HAVE_SYS_WAIT_H to control whether to
	include <sys/wait.h> or define the wait macros by hand.  Don't
	declare xmalloc.
	(gen_lib_file): Don't assume that sprintf returns the number of
	characters; use strlen instead.

Fri Sep 22 17:16:41 1995  Ian Lance Taylor  <>

	* objdump.c (disassemble_data): Don't use the old BFD based
	disassembler interface.  Make info a const pointer.

Wed Sep 13 18:33:44 1995  Ian Lance Taylor  <>

	* objdump.c (start_address): New variable.
	(stop_address): New variable.
	(usage): Mention --start-address and --stop-address.
	(long_options): Add "start-address" and "stop-address".
	(disassemble_data): Handle start_address and stop_address.
	(dump_data, dump_reloc_set): Likewise.
	(main): Don't set seenflag for -l.  Handle OPTION_START_ADDRESS
	* objcopy.c (parse_vma): Move to bucomm.c.
	* bucomm.c (parse_vma): New function, moved in from objcopy.c.
	* bucomm.h (parse_vma): Declare.
	* binutils.texi, objdump.1: Document new objdump options.

Tue Sep 12 12:37:39 1995  Ian Lance Taylor  <>

	* (maintainer-clean): New target.

	* ar.c (replace_members): Don't call write_archive if nothing

	* objdump.c (disassemble_data): Add casts to avoid gcc warnings.

Thu Sep  7 12:12:17 1995  Ian Lance Taylor  <>

	* Rename from
	Check for when creating stamp-h.
	* configure: Rebuild.
	* (stamp-h): Depend upon rather than  Set CONFIG_HEADERS to when
	calling config.status.

	* (distclean): Remove config.h, stamp-h, and

	* nm.c (value_format): Initialize based on BFD64 and
	(print_radix): New static variable.
	(set_print_radix): Set print_radix.  Adjust changes to
	(print_value): New static function, to print 64 bit octal and
	decimal values correctly.
	(print_symbol_info_bsd): Check BFD64, not BFD_HOST_64_BIT.  Use
	(print_symbol_info_sysv): Use print_value.
	(print_symbol_info_posix): Likewise.

Wed Sep  6 15:02:55 1995  Ian Lance Taylor  <>

	* (*.o): Remove incorrect dependencies on

	* (INSTALL_DATA): Add -m 644.
	(INSTALL_XFORM1): Likewise.
	(CC_FOR_BUILD): Set to @CC_FOR_BUILD@ rather than $(CC).
	(mostlyclean): Remove config.log.
	(distclean): Remove config.cache.

	* configure: Rebuild.

Tue Sep  5 20:22:42 1995  Ian Lance Taylor  <>

	* Rewrite to use autoconf.
	* aclocal.m4: New file.
	* configure: New file, built by autoconf.
	* acconfig.h: New file.
	* New file, built by autoheader.
	* Various changes for new configure script.  Also:
	(version.o): Use $(ALL_CFLAGS).
	(cplus-dem.o, dlltool.o, nlmconv.o): Likewise.
	(sysdump.o): Depend upon bucomm.h and config.h.
	(srconv.o, arsup.o, strings.o): Depend upon config.h.
	(filemode.o): Don't depend upon ../bfd/sysdep.h.
	(bucomm.o): Depend upon config.h, not ../bfd/sysdep.h.
	(size.o, objdump.o, nm.o, ar.o, objcopy.o): Likewise.
	(nlmheader.o, nlmconv.o): Likewise.
	(distclean): Don't remove sysdep.h.
	* bucomm.h: Include "ansidecl.h", <stdio.h>, and "config.h".
  	Include "fopen-same.h" or "fopen-bin.h", based on
 	USE_BINARY_FOPEN.  Include <errno.h>, and declare errno if it is
 	not a macro.  Include <unistd.h>, <string.h>, <strings.h>,
 	<stdlib.h>, and <fcntl.h> if they are present.  Declare strchr,
 	strrchr, and strstr if no string header file exists.  Include
	<sys/file.h> if it exists and <fcntl.h> does not.  Define
	O_RDONLY and O_RDWR if necessary.
	* ar.c:  Don't include "sysdep.h".  Do include <sys/types.h> and
	<sys/stat.h>.  Use HAVE_GOOD_UTIME_H rather than POSIX_UTIME.  Use
	HAVE_UTIMES rather than !USE_UTIME.  Don't include <errno.h>, and
	don't declare errno.
	* arsup.c: Don't include <sysdep.h>.
	* bucomm.c: Don't include "sysdep.h".  Include <stdio.h>,
	<sys/types.h>, and <sys/stat.h>.  Include <time.h> if it defines
	time_t.  Define time_t if necessary.
	* coffdump.c: Don't include "sysdep.h".
	* coffgrok.c, filemode.c, nlmconv.c, size.c: Likewise.
	* srconv.c, strings.c: Likewise.
	* nm.c: Don't include "sysdep.h".  Don't try to define HAVE_SBRK.
	* objcopy.c: Don't include "sysdep.h".  Include <sys/types.h> and
	(simple_copy): Use creat rather than assuming that O_CREAT is
	* objdump.c: Don't include "sysdep.h".  Use
	* sysdump.c: Include "bfd.h" and "bucomm.h".  Don't include
	"sysdep.h" or <stdlib.h>.
	(dump_symbol_info): Rename from symbol_info.  Change all callers.

Mon Sep  4 14:30:00 1995  Ian Lance Taylor  <>

	* (host_makefile_frag): Don't set.  Substitute for
	@CC@, @CFLAGS@, @HDEFINES@ and @LDFLAGS@ in Makefile.
	* (AR_FLAGS): Set to rc rather than qv.
	(CC): Define as @CC@.
	(CFLAGS): Set to @CFLAGS@.
	(LDFLAGS): Define as @LDFLAGS@.
	(ALL_CFLAGS): Use @HDEFINES@ rather than $(HDEFINES).

	* Don't bother to call config.bfd for each target.
	Just call it for the default target, and use the shell variable to
	decide whether underscores are used.

Thu Aug 31 19:21:48 1995  Jason Molenda    (

	* match i[3-6]86-*-win32, not just i386-*-win32.

Thu Aug 31 16:30:22 1995  steve chamberlain  <>

	* dlltool.c (add_indirect): New.
	(asm_prefix): New
	(gen_exp_file): Timestamp should be 0. Insert prefix when
	needed. New code for indirection.
	(gen_lib_file): Timestamp should be 0. Insert prefix
	when needed.
	(usage): Document --add-indirect.
	(main): Cope with new option.

	* objdump.c (dump_private_headers): New.
	(usage): Document new option.
	(long_option): Add private-headers.
	(dump_bfd_private_header): New.
	(main): Cope with new option.

Thu Aug 31 04:09:16 1995  Doug Evans  <>

	* dlltool.c (run): Add missing 3rd arg to waitpid.

Wed Aug 30 11:02:11 1995  steve chamberlain  <>

	* (TOOL_PROGS): Include dlltool if needed.

Tue Aug 29 13:25:21 1995  steve chamberlain  <>

	* dlltool.c (rva): Deleted.
	(rvaafter, rva_before): Use new assembler pseudo.
	(flush_page, gen_exp_file, gen_lib_file): Use new way of RVAing.
	(gen_exp_file): Don't generate .edata if no need.
	(gen_lib_file): Don't make timestamp.
	Put _iname in idata$7.
	(workout_prefix): Fix memory initialization bug.
	(usage): Tidy up, delete many single char options.
	(main): rva option is gone.

Mon Aug 21 18:41:28 1995  steve chamberlain  <>

	* dlltool.c (options): image-base is a synonym for rva.
	(gen_lib_file): Put dll name into ibase$7.

Sun Aug 20 09:59:00 1995  steve chamberlain  <>

	Modified to generate archives and objects rather than .s files.
	* dlltool.c (run) New function.
 	(gen_exp_file, gen_lib_file): Use run.
	(workout_prefix): New.
	(usage): Document new options.
	(main): Parse new options.

Wed Aug 16 16:26:52 1995  steve chamberlain  <>

	* dlltool.c (gen_exp_file): Fix RVA handling.
	(rva_s, rva_n): Delete.

Fri Aug 11 18:27:18 1995  Ian Lance Taylor  <>

	* nm.c (main): Ignore -e.

Thu Aug 10 17:35:00 1995  Ken Raeburn  <>

	* (config.texi): New target.  Write out a setting for
	texinfo variable VERSION.
	(binutils.dvi, Depend on it.
	* binutils.texi: Include it, and reference @value{VERSION} instead
	of explicitly specifying 2.2(!).

Thu Aug 10 16:07:53 1995  Ian Lance Taylor  <>

	* coffgrok.c (do_type): Handle array dimensions the same way gdb

Tue Aug  8 17:10:42 1995  steve chamberlain  <>

	* dlltool.c (mtable): New fields.
	(flush_page): Use new macros.

Sat Aug  5 00:16:37 1995  Jeff Law  (

	* objcopy.c (mark_symbols_used_in_relocations): Handle sections
	with no relocations.
	* coffgrok.c (do_sections_p1): Likewise.

Mon Jul 31 12:51:06 1995  Ian Lance Taylor  <>

	* strings.c (print_strings): For compatibility with existing
	strings programs, print strings which are not terminated with a
	null byte or a newline.
	* binutils.texi, strings.1: Update documentation accordingly.

	* ar.c (replace_members): For compatibility with existing ar
	programs, permit users to add the same file multiple times.

Tue Jul 25 11:21:53 1995  Ian Lance Taylor  <>

	* strings.c (DATA_FLAGS): Remove SEC_DATA.
	(main): If no file names are given, scan standard input.
	* binutils.texi, strings.1: strings now scans non-data sections by

Mon Jul 24 13:52:28 1995  J.T. Conklin  <>

	* srconv.c (wr_hd): Set afl field to 4 for bfd_arch_sh.
	(writeINT): When size == -2, use 2 bytes for the h8300 and 4 bytes
	for the	sh.

	* sysdump.c (fillup): Return size - 1, the last byte is a checksum
	and shouldn't be counted.
	* (hd): Changed segment identifier from a byte to a 1
	bit field.  The sysroff 2.0-01 specification seems to be in error
	here.  Reduce width of following "spare" field from 4 to 3 bits.
	(rl): Changed order and width of first 4 bitfields to correspond
	to sysroff specification.
	(dln_head, dln_inside, dln_tail): Removed.

Tue Jul 18 23:00:03 1995  Fred Fish  <>

	* nm.c (sort_symbols_by_size):  Enclose expression being casted
	in parens so result is casted, not just first operand.  Can't
	do pointer arithmetic on void* pointers.

Fri Jul 14 13:42:42 1995  J.T. Conklin  <>

	* sysdump.c (dh): Changed format of output to be 16 hex digits
	followed by 16 ascii characters, similar to Emacs' hexl-mode,
	to make it easier to read.
	(xcalloc): fix typo.

Thu Jul 13 15:27:44 1995  J.T. Conklin  <>

	* srconv.c (wr_tr): Write out handcrafted tr block.
	(walk_tree_symbol): Use evallen and evalue instead of
	vallen & value because of corresponding changes in

	* sysdump.c (sysroff_swap_tr_in, sysroff_print_tr_out): New

	* (tr): the tr block is a special case --- a block
	without contents --- which can't be handled by generated code.
	(den, dpp): only first byte is present for DENend, DPPend.
	(dsy): describe a conditional portion of block, rename some fields.
	(dps): describe a conditional portion of block.
	(dfl): removed.

	* sysinfo.y (yyerror): write error message to standard error.

Thu Jul 13 10:43:59 1995  Ian Lance Taylor  <>

	* (DISTSTUFF): Add arparse.h and sysinfo.h.
	(mostlyclean): Remove y.output.
	(clean): Remove sysroff, sysroff.c, sysroff.h, and sysinfo.

	* nlmconv.c (powerpc_mangle_relocs): Cast memset arg to size_t.
	* objcopy.c (copy_object): Likewise.

	* nm.c (HAVE_SBRK): Define except on amigados and WINDOWS_NT.
	(struct size_sym): Define.
	(show_stats): New static variable.
	(long_options): Add undocumented option "stats".
	(main): Print memory stats if requested.
	(sort_bfd, sort_dynamic, sort_x, sort_y): New static variables.
	(numeric_forward): Use minisymbols rather than asymbols.
	(non_numeric_forward): Likewise.
	(size_forward1): Rename from size_forward.  Use minisymbols.
	(size_forward2): New static function.
	(sort_symbols_by_size): Take new arguments dynamic, size, and
	symsizep.  Use minisymbols.  Don't store the size back in the
	symbol; store in a newly allocate struct size_sym array.
	(display_rel_file): Read minisymbols rather than asymbols.  Set
	sort_* variables.  Call print_size_symbols if sorting by size.
	(filter_symbols): Take new arguments dynamic and size.  Use
	(print_symbols): Likewise.  Call print_symbol for actual printing.
	(print_size_symbols): New static function.
	(print_symbol): New static function.

Wed Jul 12 10:43:05 1995  Ian Lance Taylor  <>

	* objdump.c (dump_section_stabs): Only print each stabs section
	(compare_relocs): Make it clear to gcc that this always returns a

Wed Jul 12 10:40:23 1995  H.J. Lu  <>

	* objcopy.c (simple_copy): Preserve errno on failure.
	(smart_rename): Print error mesage if simple_copy fails.

Tue Jul 11 13:10:52 1995  J.T. Conklin  <>

	* sysdump.c: re-indented file.
	(module): read blocks sequentially instead of trying to parse
	them, as that would require changing the parser recognize the
	difference between a DPSstart and DPSend block.
	(getone): Add break's between switch blocks as appropriate.
	(object_body_list): parse blocks according to sysroff spec.

Mon Jul 10 12:37:25 1995  J.T. Conklin  <>

	* re-indented file, prior formatting was confusing
	because it was indentation did not reflect nesting of conditional
	records.  Change "space size within segment" record in hd record
	from bit to byte.

	* sysinfo.y (cond_it_field): Use xcalloc instead of calloc.

	* srconv.c (wr_cs): Reformatted cs header array, tag each byte
	with a comment describing the field.
	(wr_unit_info): Use SEEK_SET macro instead of constant 0.
	(main): Use FOPEN_WB macro instead of literal "wb".
	* Remove fdl (dfl) field from cs block.  Compare
	ptr->type with ED_TYPE_CONST instead of constant 2 in ed block.

Tue Jul  4 14:48:42 1995  Ian Lance Taylor  <>

	* nm.c (size_forward): Check yf against yn, not xn.

	* objcopy.c (copy_archive): Record all output BFD's, and close
	them before unlinking them and removing the temporary directory,
	to avoid NFS problems.

	* ar.c (replace_members): In verbose messages, use 'r' when
        replacing a member, and 'a' when adding one.

	* ar.c (ar_truncate): New static variable.
	(normalize): Change return type to const char *.  Add abfd
	argument.  Change all callers.  If ar_truncate, chop the filename
	to abfd->ar_max_namelen.
	(main): For the 'f' modifier, set ar_truncate to true.  Don't
	change quick_append to replace if ar_truncate is true.
	(do_quick_append): If ar_truncate, set BFD_TRADITIONAL_FORMAT.
	(write_archive): Likewise.
	* binutils.texi, ar.1: Document 'f' modifier.

	* objcopy.c (enum strip_action): Define strip_unneeded.
	(strip_options): Add "strip-unneeded".
	(copy_options): Likewise.
	(copy_usage): Mention --strip-unneeded.
	(strip_usage): Likewise.
	(is_strip_section): Strip debugging sections if strip_unneeded.
	(filter_symbols): If strip_unneeded, only keep BSF_KEEP symbols.
	(copy_object): If strip_all, discard symbols without checking
	(copy_object): Call filter_symbols if strip_unneeded.
	(setup_section): Strip debugging sections if strip_unneeded.
	(copy_section): Likewise.
	(strip_main): Handle OPTION_STRIP_UNNEEDED.
	(copy_main): Likewise.
	* binutils.texi, objcopy.1, strip.1: Document --strip-unneeded.

Mon Jul  3 14:16:47 1995  Steve Chamberlain  <>

	* (i386-*-win32): New configuration.
	* dlltool.c (killat, xlate, usage, long_options, main):
	Understand and cope with -k option.

Sat Jul  1 12:25:15 1995  Fred Fish  <>

	* ar.c: (extract_file):  Change "#if POSIX_UTIME" to
	"#ifdef POSIX_UTIME" to match other tests of POSIX_UTIME
	and avoid lossage when POSIX_UTIME is not defined at all.

Wed Jun 28 17:51:24 1995  Steve Chamberlain  <>

	* ar.c: (print_contents.c, extract_file, do_quick_append):
	Malloc buffers rather than allocate on stack (so it works
	on NT).
	* deflex.l: Names can have an @ in them.
	* dlltool.c: Loads of stuff. Can now generate .imp files which
	work with NT .dlls.

Thu Jun 22 19:10:50 1995  Stan Shebs  <>

	* (demangle.c.o): Remove.
	(arparse.h): Depend on arparse.c instead of arparse.y.

Wed Jun 21 17:32:45 1995  Ken Raeburn  <>

	* (DISTSTUFF): Don't include info here.
	(diststuff): Include it here.
	(realclean): Remove *.info.

	* objdump.c (compare_relocs): If relocation entries have the same
	address, keep them in file order.

Mon Jun 19 09:06:49 1995  Steve Chamberlain  <>

	* dlltool.c: Change names of generated files. .*.s-> -*.s

	* objdump.c (dump_section_stabs):  Check for names
	which are supersets of selected names.

Wed Jun 14 19:43:52 1995  Doug Evans  <>

	* dlltool.c (mtable, ARM jump): Must redirect via pc offsetable ptr.

Wed Jun 14 13:27:22 1995  Steve Chamberlain  <>

	* deflex.l, defparse.y, dlltool.c: New files.
	*, Support for them.

Mon Jun 12 11:27:54 1995  Steve Chamberlain  <>

	* sysdump.c: Include sysdep.h
	(main): Open input with FOPEN_RB.

Fri Jun  9 17:26:11 1995  Michael Meissner  <>

	* objdump.c (wide_output): New flag variable.
	(usage): Print new -w, --wide options.
	(long_options): Add --wide support.
	(dump_section_header): If --wide, don't print a newline between
	the section's first line and the flags.
	(objdump_print_address): Use unsigned comparisons for the binary
	search, not signed.
	(disassemble_data): If --wide, don't put a \n between the
	disassembly output and relocation information.
	(main): Support -w option being the same as --wide.

Thu Jun  1 17:09:27 1995  Ken Raeburn  <>

	Sat May  6 08:52:24 1995  H.J. Lu (

	* objcopy.c (smart_rename): make it smarter, clean up
	  if rename () fails.

Tue May 30 14:24:15 1995  Ken Raeburn  <>

	* Delete lines with lots of #### because four or more
	indicate a point for makefile fragment substitution.

Tue May  9 17:17:05 1995  Michael Meissner  <>

	* Don't build nlmconv on PowerPC eabi any more, it
	is not needed.

Thu Apr 27 20:21:24 1995  Doug Evans  <>

	* (EXPECT): Define.
	(RUNTEST): Use one in source tree if present.
	(check): Set `rootme' for $(EXPECT).

Wed Apr 26 18:26:21 1995  Steve Chamberlain  <>

	* srconv.c (main): Add support for -n option which disables
	prescan of common symbols.
	(wr_ob): If reading past the end of a section, fill with zeros.

Tue Apr 25 19:14:37 1995  Ken Raeburn  <>

	* objdump.c (dump_section_header): Display load address after
	virtual memory (run-time) address.

Wed Apr 19 09:44:06 1995  Jason Merrill  <>

	* (cplus-dem.o): Pass -DVERSION='"$(VERSION)"' to the
	(DEMANGLER_PROG): No longer uses version.o.

Mon Apr 10 13:29:49 1995  Stan Shebs  <>

	Merge in support for Mac MPW as a host.
	(Old change descriptions retained for informational value.)

	* (TDEFINES): Define as empty in makefile frag.

	* Create mk.tmp, define ARCHDEFS in it.

	* New file, MPW configure fragment for binutils.
	* (install-only): New target.
	(install): Also depend on install-only.

	* (cplusfilt): Renamed from c++filt.
	(INCLUDES): Add more paths.

	* New file, MPW makefile fragment for binutils.
	(Normally automatically generated from

Mon Mar 27 11:52:57 1995  Ian Lance Taylor  <>

	* ar.c (write_archive): Call make_tempname to get output file
	name, rather than using a fixed name based on the input file.

	* objcopy.c (make_tempname): Copy from here...
	* bucomm.c (make_tempname): here, and make global.
	* bucomm.h (make_tempname): Declare.

Fri Mar 24 11:47:42 1995  Ian Lance Taylor  <>

	* strings.c: Include "bfd.h" before other headers.  Include
	* bucomm.c (print_arelt_descr): Cast st_uid and st_gid to long,
	and print them with %ld.

Fri Mar 10 13:09:42 1995  Ian Lance Taylor  <>

	* objcopy.c (strip_options): Add --keep-symbol.
	(copy_options): Likewise.
	(copy_usage): Mention --keep-symbol and -K.
	(strip_usage): Likewise.
	(keep_symbols): New static variable.
	(is_strip_symbol): Adjust the return value according to
	(strip_main): Handle -K.  For -N, check that -K was not given.
	(copy_main): Likewise.
	* binutils.texi, objcopy.1, strip.1: Document -K.

Mon Mar  6 13:33:47 1995  Stan Shebs  <>

	* objcopy.c (copy_archive): Check result of mkdir.
	(copy_main): Cast an xmalloc result.

	* objdump.c (usage): Break long format string into shorter ones.

Mon Mar  6 13:46:12 1995  Ian Lance Taylor  <>

	* bucomm.c (list_supported_targets): New function.
	* bucomm.h (list_supported_targets): Declare.
	* ar.c (usage): Call list_supported_targets.
	* nm.c (usage): Likewise.
	* objcopy.c (copy_usage, strip_usage): Likewise.
	* objdump.c (usage): Likewise.
	* size.c (usage): Likewise.
	* strings.c (usage): Likewise.

Tue Feb 28 15:13:58 1995  Ian Lance Taylor  <>

	* bucomm.c (print_arelt_descr): Cast st_size to long before
	passing it to fprintf.

Fri Feb 17 13:36:45 1995  Ian Lance Taylor  <>

	* objcopy.c (struct section_list): Add fields remove, set_flags,
	and flags.  Change adjust from boolean to enum.
	(remove_sections): Remove static variable.
	(sections_removed): New static variable.
	(copy_options): Add --set-section-flags.
	(copy_usage): Mention --set-section-flags.
	(parse_flags): New static function.
	(find_section_list): New static function.
	(is_strip_symbol): Change return type from int to boolean.
	(is_strip_section): New static function.
	(filter_symbols): Call is_strip_section.
	(copy_object): When adding sections, check for specified flags or
	VMA.  Call filter_symbols if any sections are being removed.
	(setup_section): Use find_section_list function rather than
	looking through remove_sections and adjust_sections.  Handle
	(copy_section): Use find_section_list rather than looking through
	(strip_main): Use find_section_list instead of adding items to
	(copy_main): Use find_section_list instead of adding items to
	sections_removed and adjust_sections.  Handle --set-section-flags.
	* binutils.texi, objcopy.1: Document --set-section-flags.

Tue Feb 14 18:03:03 1995  Ian Lance Taylor  <>

	* objdump.c (with_source_code): New global variable.
	(usage): Mention -S/--source.
	(long_options): Add --source.
	(prev_functionname, prev_line): New static variables.
	(struct print_file_list): Define.
	(print_files): New static variable.
	(skip_to_line, show_line): New static functions.
	(disassemble_data): Call show_line to handle -l and -S.
	(main): Handle -S.
	* binutils.texi, objdump.1: Document -S/--source.

Thu Feb  9 16:11:53 1995  Ian Lance Taylor  <>

	* objcopy.c (copy_usage): Rename parameter to avoid shadowing.
	(strip_usage): Likewise.

	* objcopy.c (struct section_add): Define.
	(add_sections): New static variable.
	(copy_options): Accept --add-section.
	(copy_usage): Mention --add-section.
	(copy_object): Add sections from the add_sections list.
	(copy_main): Handle --add-section.
	* binutils.texi, objcopy.1: Document --add-section.

Wed Feb  1 15:04:57 1995  Ken Raeburn  <>

	* objdump.c (disassemble_data): Pass section offset, not absolute
	address, to bfd_find_nearest_line.

	* nlmconv.c (powerpc_mangle_relocs): Don't use const with

Thu Jan 26 18:50:06 1995  Ian Lance Taylor  <>

	* objdump.c (compare_symbols): Use bfd_asymbol_value (VAR) rather
	than VAR->value.
	(objdump_print_address): Likewise.
	(disassemble_data): Don't change the symbol values.  It can
	confuse bfd_canonicalize_reloc.

Thu Jan 26 12:03:56 1995  Michael Meissner  <>

	* Add support for powerpc-*-ebai.

Wed Jan 18 10:02:12 1995  Steve Chamberlain  <sac@splat>

	* coffdump.c: Include sysdep.h.
	(dump_coff_type): Handle coff_secdef_type.
	* coffgrok.c : Include sysdep.h.
	* srconv.c: Include libiberty.h
	(absolute_p, dty_start, dty_end, dump_tree_structure): Remove.

Wed Jan 18 12:24:14 1995  Ian Lance Taylor  <>

	* coffdump.c (dump_coff_scope): Cast pointer to unsigned long for
	* coffgrok.c: Include bucomm.h.  Don't declare xmalloc.
	(push_scope): Declare type of parameter link.
	* size.c: Include libiberty.h.
	* srconv.c: Include bucomm.h.
	(find_base): Declare at top of file.
	(wr_hd): Add default case to architecture switch.
	(wr_dps_start): Declare type of parameter nest.
	(wr_du): Comment out variables used only in commented out blocks.
	(wr_dus): Remove unused variable i.
	(wr_sc): Remove unused variables myinfo, low, and high.
	* strings.c: Include libiberty.h.
	* sysdump.c: Include <ctype.h>.

Tue Dec 20 19:13:44 1994  Ian Lance Taylor  <>

	* ar.c (main): Ignore 'f' modifier used on HP/UX 9.

Thu Dec 15 17:34:12 1994  Stan Shebs  <>

	* ar.c, nm.c, objcopy.c, objdump.c: Include progress.h.
	* ar.c, nm.c, objcopy.c, objdump.c (main): Add START_PROGRESS
	* ar.c (map_over_members, open_inarch): Call PROGRESS.
	* nm.c (main, display_archive, filter_symbols, print_symbols):

	* objcopy.c (copy_usage): Break up long usage string.

Wed Dec 14 15:51:56 1994  Ken Raeburn  <>

	* objcopy.c (copy_object): Don't bother setting status after
	nonfatal() "call", because it won't return.

Fri Dec  9 00:22:54 1994  Ian Lance Taylor  (

	* nlmconv.c (powerpc_mangle_relocs): Don't switch a reloc to use
	the section symbol if the symbol is undefined.

Thu Dec  8 14:45:50 1994  Ken Raeburn  <>

	* objcopy.c (add_strip_symbol): Cast return value of xmalloc.

Wed Nov 30 11:05:43 1994  Ian Lance Taylor  <>

	* ar.c (replace_members): Pass current->filename to normalize when
	checking for duplicates, because the filename of a newly added
	file will not have been normalized yet.

Thu Nov 17 15:00:13 1994  Ian Lance Taylor  <>

	* ar.c (main): Don't call do_quick_append if any of the archive
	names are longer than 14 characters.

	* objcopy.c (main): Fix is_strip test.  From (Martin Pirker).

Thu Nov 17 15:37:19 1994  Mark W. Eichin  <>

	* objcopy.c (add_strip_symbol): New function, adds a name to an
	explicit list of symbols to strip.
	(is_strip_symbol): New function, reports whether the name argument
	is in the explicit list.
	(filter_symbols): Check against is_strip_symbol above all.
	(strip_main): Recognize -N option. If used, don't default to
	(copy_main): Recognize -N option.
	(strip_usage): Document -N and --strip-symbol options.
	(copy_usage): Ditto.
	* objcopy.1, strip.1, binutils.texi: Document -N and
	--strip-symbol options.

Tue Nov  8 13:12:54 1994  Ian Lance Taylor  <>

	* objdump.c (display_target_list, display_info_table): Pass an
	array to tmparg, rather than NULL, since some systems can't handle

	* objcopy.c (copy_archive): Keep a list of the names of the
        temporary files we created.  Close each input BFD after we open
        its successor.

Mon Nov  7 15:48:39 1994  Ken Raeburn  <>

	* (VERSION): Bump to 2.5.3.

Thu Nov  3 19:04:34 1994  Ken Raeburn  <>

	* (install-info): Install info files from whatever
	directory they were found in.

	Patch from DJ Delorie:
	* configure.bat: do c++filt -> cxxfilt right

	* sysinfo.y: Include system header files early, so any potential
	declaration of abort() occurs before its use.

	* strings.c (strings_file): Try opening the file in binary mode

Wed Nov  2 15:44:13 1994  Ian Lance Taylor  <>

	* ar.c (main): Treat ar qs like ar rs.

Tue Oct 25 16:19:25 1994  Ian Lance Taylor  <>

	* objcopy.c (gap_fill): Explicitly initialize, for clarity.
	(pad_to_set, pad_to): New static variables.
	(copy_options): Accept --pad-to.
	(copy_usage): Mention --pad-to.
	(copy_object): Support --pad-to.
	(compare_section_vma): Sort non loadable sections to the front.
	Sort sections with the same VMA by size.
	(copy_main): Handle --pad-to.
	* binutils.texi, objcopy.1: Document --pad-to.

Thu Oct 20 13:51:31 1994  Ian Lance Taylor  (

	* objcopy.c (gap_fill_set, gap_fill): New static variables.
	(copy_options): Accept --gap-fill.
	(copy_usage): Mention --gap-fill.
	(copy_object): Support --gap-fill.
	(get_sections, compare_section_vma): New static functions.
	(copy_main): Handle --gap-fill.
	* binutils.texi, objcopy.1: Document --gap-fill.

Wed Oct 19 14:09:16 1994  Ian Lance Taylor  <>

	* (check): Add a dummy else clause to the if

	* objcopy.c (copy_object): Revert yesterday's change.
	* binutils.texi, objcopy.1: Remove special mention of --set-start
	and `binary' output format.

Tue Oct 18 11:12:01 1994  Ian Lance Taylor  <>

	* objcopy.c (copy_object): If the output file format is `binary',
	and the start address was not set using --set-start, default the
	start address to zero.  This hack is because the `binary' output
	file format uses the start address to set the virtual address of
	the first byte in the file.
	* binutils.texi, objcopy.1: Add some notes on generating S-records
	and binary files.

	* nm.c (print_symdef_entry): Call print_symname to print the
	symbol name, so that --demangle works.

	* (mostlyclean): Remove tmpdir.

	* objcopy.c (struct section_list): Add fields used, adjust, val.
	(adjust_start, set_start_set, set_start): New static variables.
	(adjust_section_vma, adjust_sections): New static variables.
	(copy_options): Add --adjust-start, --adjust-vma,
	--adjust-section-vma, --adjust-warnings, --no-adjust-warnings,
	(parse_vma): New static function.
	(copy_usage): Mention new options.
	(copy_object): Handle --set-start and --adjust-start.
	(setup_section): Correct type of last argument to PTR.  Set used
	field if section is removed.  Handle --adjust-vma and
	(copy_section): Correct type of last argument to PTR.
	(mark_symbols_used_in_relocations): Likewise.
	(strip_main): Clear used field when handling -R.
	(copy_main): Handle new options.
	* binutils.texi (objcopy): Document new options.
	* objcopy.1: Document new options.

Fri Oct 14 14:38:13 1994  Ian Lance Taylor  <>

	* (configdirs): Remove definition--testsuite is no
	longer configured.
	* (testsuite): Remove target.
	(site.exp): New target.
	(check): Rewrite.
	(clean, distclean): Don't recur into testsuite directory.

Thu Oct 13 19:24:09 1994  Ken Raeburn  <>

	* (VERSION): Updated to 2.5.
	* Version 2.5 released.

Tue Oct 11 15:26:42 1994  Ian Lance Taylor  <>

	* (sysdump.o): Depends upon sysroff.c.

Mon Oct 10 13:50:30 1994  J.T. Conklin  (

	* nlmconv.c (link_inputs): Pass -Ur flag to ld so that the
	  ctor/dtor tables needed by C++ programs are built.

Sun Oct  9 18:04:00 1994  Jim Wilson  (

	* (srconv.o): Add dependence on sysroff.c.

Tue Oct  4 12:19:51 1994  Ian Lance Taylor  <>

	* Use ${config_shell} when running config.bfd.

	* (sysroff.h): Split target away from sysroff.c.
	(srconv.o, sysdump.o): New targets.
	(srconv, sysdump): Don't depend upon sysroff.c.

Wed Sep 28 13:04:34 1994  Ian Lance Taylor  (

	* (arparse.c): Don't ignore errors from mv.
	(sysinfo.c): Likewise.  Also, depend upon arparse.c, to prevent a
	parallel make from trying to build both arparse.c and sysinfo.c
	(nlmheader.c): Similar change.
	(arparse.h): Separate target from arparse.c, so that a parallel
	make does not try to build both at once.  Depend upon arparse.c.
	(sysinfo.h): Similar change.

	* objdump.c (disassemble_data): Pass the reloc buffer to free, not
	the pointer used to loop over the relocs.

Sat Sep 24 16:16:57 1994  Stan Shebs  (

	* objdump.c (disassemble_data): Cast result of xmalloc.

Wed Sep 21 19:30:35 1994  Ian Lance Taylor  (

	* objdump.c (sorted_syms, sorted_symcount): New global variables.
	(objdump_print_address): Use sorted_syms and sorted_symcount
	instead of syms and symcount.
	(disassemble_data): Don't bother to get the relocs before looping
	over the sections.  Before filtering and sorting the symbol table,
	copy it into sorted_syms.

Fri Sep 16 11:27:39 1994  Ian Lance Taylor  (

	* objdump.c (struct objdump_disasm_info): Add field require_sec.
	(objdump_print_address): If aux->require_sec, require that the
	symbol be in aux->sec even if HAS_RELOC is not set.  If we can't
	find a smaller symbol in the right section, look for a larger one.
	(disassemble_data): Set aux.require_sec around the
	objdump_print_address call for the instruction address.

Thu Sep 15 21:43:17 1994  Ian Lance Taylor  (

	* ar.c: Call xexit rather than exit.
	(output_filename, output_file, output_bfd): New static variables.
	(remove_output): New static function.
	(main): Call xatexit (remove_output).  Call xexit rather than
	(extract_file): Set output_filename and output_file while output
	file is open.
	(write_archive): Likewise, but use output_bfd, not output_file.
	* arsup.c: Include libiberty.h.  Call xexit rather than exit.
	* bucomm.c: Likewise.

	* objdump.c (disassemble_all): New global variable.
	(usage): Document --disassemble-all.
	(long_options): Add disassemble-all as a synonym for -D.
	(compare_symbols): Make pointers const.
	(compare_relocs): New static function.
	(disassemble_data): Rename disassemble to disassemble_fn to avoid
	shadowing.  If dump_reloc_info, print relocs along with
	disassembly.  Skip sections which are not SEC_CODE unless
	disassemble_all or only is set.
	(display_bfd): Don't call dump_relocs if disassemble is set.
	(main): Accept and handle -D.
	* binutils.texi: Document -D/--disassemble-all.
	* objdump.1: Likewise.

Wed Sep 14 12:19:07 1994  Ian Lance Taylor  (

	* objdump.c (disassemble_data): Initialize prevline to 0.  Make
	prev_function non const.  Copy functionname into an malloc buffer
	when setting prev_function, instead of assuming that the string
	will last forever.

	* nm.c: Include libiberty.h.
	(sort_by_size): New static variable.
	(long_options): Add --size-sort.
	(usage): Mention --size-sort.
	(numeric_forward): Make static.  Change from void * to PTR.
	(numeric_reverse): Likewise.
	(non_numeric_forward, non_numeric_reverse): Likewise.
	(sorters): Change declaration from void * to PTR.
	(size_forward, sort_symbol_by_size): New static functions.
	(display_rel_file): Handle sort_by_size.
	(filter_symbols): If sort_by_size, discard absolute and undefined
	* binutils.texi (nm): Document --size-sort.
	* nm.1: Document --size-sort.

Tue Sep 13 21:06:06 1994  Jeff Law  (

	* objcopy.c (copy_main): Initialize input_filename and
	output_filename to NULL.

Tue Sep 13 14:17:24 1994  Ian Lance Taylor  (

	* (version.o): Depend upon Makefile, so that version.o
	gets rebuilt when make variable VERSION is changed.

	* objdump.c (dump_section_header): Print the SEC_NEVER_LOAD flag.

Wed Aug 24 12:40:09 1994  Ian Lance Taylor  (

	* Change i[34]86 to i[345]86.

Tue Aug 23 11:00:40 1994  Ian Lance Taylor  (

	* ar.c (ranlib_touch): Don't update the archive map if there isn't

Mon Aug 22 16:02:18 1994  Ian Lance Taylor  (

	* ar.c: Include libiberty.h.
	(inarch): Remove variable.
	(map_over_members): Make static.  Add arch argument, and use it
	instead of inarch.  Change all callers.
	(main): Treat --version as -v.  Accept -t argument.  Accept any
	number of archive arguments.  Catch and use open_inarch return
	value, rather than using inarch.
	(open_inarch): Return newly opened BFD, rather than using inarch.
	(do_quick_append): Make archive_filename const.
	(write_archive): Add iarch argument, and use it instead of inarch.
	Change all callers.
	(delete_members, move_members, replace_members): Likewise.
	(ranlib_only): Don't exit on success.  Catch and use open_inarch
	return value.
	(ranlib_touch): New function.
	* arsup.h (map_over_members): Don't declare.
	(ar_end, ar_extract): Declare.
	(open_inarch): Change return value in declaration to bfd *.
	* arsup.c (map_over_list): Make static. Always pass two arguments
	to function.  Add arch argument, and use it instead of inarch.
	Change all callers.
	(ar_directory_doer): Make static.  Add ignored second argument.
	Change all callers.
	(ar_directory): Use open_inarch return value rather than inarch.
	(ar_addlib_doer): Make static.
	(ar_addlib): Use open_inarch return value rather than inarch.
	(ar_extract): Remove unused local variable abfd.

Thu Aug 11 14:55:57 1994  Ian Lance Taylor  (

	Add support for removing named sections to objcopy and strip.
	* objcopy.c (struct section_list): Define.
	(remove_sections): New static variable.
	(strip_options, copy_options): Add remove-section.
	(copy_usage, strip_usage): Mention -R and --remove-section.
	(setup_section): If section is in remove_sections list, ignore it.
	(copy_section): Likewise.
	(strip_main, copy_main): Handle -R.
	* binutils.texi, objcopy.1, strip.1: Document new options.

Wed Aug 10 10:19:55 1994  Stan Shebs  (

	* nlmconv.c (powerpc_mangle_relocs): Rename symvalue to sym_value,
	so as not to conflict with the symvalue typedef in bfd.h.

Mon Aug  1 13:19:09 1994  Ian Lance Taylor  (

	* nlmheader.y: Per current NetWare docs, accept a revision number
	of 0 and treat a revision number greater than 26 as 0.

Mon Jul 25 12:58:36 1994  Ian Lance Taylor  (

	* objdump.c (objdump_print_address): Correct handling of end of
	symbols when looking for next symbol with a different value.

Fri Jul 22 16:48:34 1994  Ken Raeburn  (

	* nm.c (numeric_forward): Treat undefined symbols as "less than"
	defined symbols with zero values.  If numeric values are equal, or
	both symbols are undefined, sort alphabetically.  Don't assume
	that the difference of two bfd_vma values will truncate to "int"
	and still have the same sign.
	(numeric_reverse): Call numeric_forward and negate the result.
	(print_symbol_info_bsd): For undefined symbols, print leading
	spaces equivalent to the width of a printed bfd_vma, rather than
	assuming that 8 will look right.

Fri Jul 22 10:36:50 1994  Steve Chamberlain  (

	* coffgrok.c (doit):  Zero all fields of new structure.
	* srconv.c (sysroff_swap_*_out): Remove redundant trailing arg.
	* sysinfo.y: Generate sysroff_swap_*_out without requiring extra

Fri Jul 22 10:09:53 1994  J.T. Conklin  (

	* nlmheader.y: Make "stack" and "stacksize" synonyms in the lexer
	  rather than the parser.

Thu Jul 21 10:25:09 1994  Ian Lance Taylor  (

	* config/mh-alphaosf, config/mh-apollo68v, config/mh-delta88:
	Remove; obsolete.

Sat Jul 16 22:34:39 1994  Ian Lance Taylor  (

	* objdump.c (slurp_dynamic_symtab): Try to get the dynamic symbols
	even if the bfd is not marked DYNAMIC.  ELF executables are not
	marked DYNAMIC, but do have dynamic symbols.

Fri Jul 15 01:41:35 1994  Steve Chamberlain  (

	* coffgrok.c (do_where): Make data with no type 'int'.
	(do_define):  Keep info on source file of a symbol.
	* coffgrok.h (coff_symbol): New field.
	* srconv.c (PROGRAM_VERSION): Now 1.3
	(wr_rl): Use external ref number for symbol.
	(wr_dus): Only keep one source file per debug unit.
	(wr_dln): Always emit line numbers for first source file,
	(wr_globals):  Emit globals in the du of their owning source file.

Mon Jul 11 15:59:03 1994  J.T. Conklin  (

	* nlmheader.y: Null terminate var_hdr->threadName.

Fri Jul  8 17:33:22 1994  Ken Raeburn  (

	* (syslex.o, sysinfo.o): Permit C source files to be
	in $(srcdir), as they will be for FSF releases.

Wed Jul  6 01:13:14 1994  Ian Lance Taylor  (

	* nlmconv.c (setup_sections): Preserve existing section flags when
	copying in flags from a new section.

Tue Jul  5 15:56:01 1994  Ian Lance Taylor  (

	* objcopy.c: Include libiberty.h.
	(copy_file): If output_target is NULL, set it to the target of the
	input file.

Wed Jun 29 17:17:14 1994  J.T. Conklin  (

	* nlmconv.c (link_inputs): Fixed memory allocation bug.

Thu Jun 23 12:52:46 1994  David J. Mackenzie  (

	* Change --with-targets to --enable-targets.

Tue Jun 21 12:53:21 1994  Ian Lance Taylor  (

	* (sysinfo): Does not depend upon $(ADDL_LIBS).

	* nlmconv.c (powerpc_build_stubs): Don't generate the PowerPC
	NetWare custom header; no longer needed.
	(powerpc_mangle_relocs): Convert relocs against the uninitialized
	data section into relocs against the data section.

	* Set nlmconv_defs to -DNLMCONV_cputype for all the
	netware targets.  Write it into Makefile as NLMCONV_DEFS.
	* (nlmconv.o): Pass $(NLMCONV_DEFS) to $(CC).
	* nlmconv.c: Only compile code for specific CPU types if
	NLMCONV_cputype is defined.

	* nlmconv.c (main): Change uses of bfd_abs_section, etc., to use
	bfd_abs_section_ptr or bfd_is_abs_section, etc.
	(i386_mangle_relocs, alpha_mangle_relocs): Likewise.
	(powerpc_build_stubs): Likewise.
	* nm.c (filter_symbols, print_symbols): Likewise.
	* objcopy.c (filter_symbols): Likewise.
	(mark_symbols_used_in_relocations): Likewise.
	* objdump.c (remove_useless_symbols, dump_relocs): Likewise.
	* size.c (sysv_internal_printer): Likewise.

Mon Jun 20 16:43:03 1994  Ken Raeburn  (

	(install): Install it explicitly, from build dir, not srcdir.

Mon Jun 20 16:29:54 1994  Ian Lance Taylor  (

	* objdump.c: Don't include elf/internal.h.
	(bfd_elf_find_section): Don't declare.
	(read_section_stabs): No special handling for ELF.  Always read
	using BFD sections.

Thu Jun 16 17:25:20 1994  Ian Lance Taylor  (

	* Set UNDERSCORE in Makefile based on result of
	invoking config.bfd with a second argument of ``_''.
	* (underscore.c): Depend upon Makefile.  Don't try to
	run $(CC) and $(NM), just use $(UNDERSCORE).  Create via temporary
	(demangle.o): Remove target.
	($(NM_PROG)): Don't depend upon demangle.o, and	don't link against
	demangle.o.  It's in libiberty anyhow.
	(cplus-dem.o): Don't depend upon demangle.o.
	* binutils.texi: Mention -n and --no-strip-underscores arguments
	to c++filt.

Wed Jun 15 12:10:31 1994  Ian Lance Taylor  (

	* nm.c (long_options): Add --no-demangle to turn off --demangle,
	and --no-cplus for Linux compatibility.
	(usage): Mention --no-demangle.
	* binutils.texi: Document --no-demangle.

Fri Jun 10 15:41:25 1994  Ian Lance Taylor  (

	* nm.c: HOST_64_BIT was renamed to BFD_HOST_64_BIT.

	* objcopy.c (copy_archive): Make the temporary directory in the
	same directory as the output BFD, since we may not have write
	permission on the current directory.  Set the permissions of the
	new directory to 0700, not 0777.

Mon Jun  6 21:36:43 1994  D. V. Henkel-Wallace  (

	* if this is an rs6000 (and we're not building for
	any other bfd targets) then build only nm (collect needs it on

	* define TOOL_PROGS which the list of programes to
	install in $tooldir -- replaces a hard-coded list.

Fri Jun  3 10:59:18 1994  Ian Lance Taylor  (

	* objdump.c (display_target_list): Remove unused local ok.

Thu May 26 18:05:52 1994  Ken Raeburn  (

	* config/mh-alphaosf (CFLAGS): Don't specify both -g and -O;
	they're not compatible under native cc.  Use -O1 instead.

	* (VERSION): Updated to cygnus-2.4.1.

	Changes from binutils-2.4 net release:

	($(DEMANGLER_PROG).1): Build from, using sed.
	* Renamed from c++filt.1, replaced "c++filt" with
	magic token to be replaced by sed.

	Wed May 11 22:32:00 1994  DJ Delorie (

	* configure.bat: update for latest

Fri May 13 23:25:13 1994  Ian Lance Taylor  (

	* bucomm.c: Check ANSI_PROTOTYPES rather than __STDC__.

Tue May 10 18:22:06 1994  Jason Molenda    (

	* objcopy.c (copy_section): Set section size correctly if using

Sat May  7 16:49:36 1994  Steve Chamberlain  (

	* Add rule for sysinfo.h

Fri May  6 12:18:33 1994  Steve Chamberlain  (

	* (SRCONV_PROG): Define.
	(PROGS): Use $(SRCONV_PROG) too.

Thu May  5 19:41:43 1994  Ken Raeburn  (

	* (DISTSTUFF): Add sysinfo.c, syslex.c, in case
	someone configures with `targets=all'.
	(distclean): Remove y.*.
	(syslex.o): Depend on sysinfo.h.
	(sysinfo.c): Rename to sysinfo.h.
	(install-info): Don't try to install into $(infodir)/$(srcdir).
	* syslex.l: Include sysinfo.h, not

Thu May  5 11:50:55 1994  Ken Raeburn  (

	* syslex.l (yywrap): Define as function if not defined as a macro.

	* (objdump.o): Deleted special rule.
	* Don't bother building ARCHDEFS variable for
	* objdump.c (ARCH_*): Deleted handling.
	(disassemble_data): Call `disassembler' from opcodes library.

Thu May  5 13:28:42 1994  Ian Lance Taylor  (

	* (install): Correct handling of $(tooldir) and
	$(bindir) being on different devices.

Fri Apr 29 09:50:38 1994  Steve Chamberlain  (

	* sysdump.c (h8300, sh): Add declarations.

Wed Apr 27 11:25:18 1994  Steve Chamberlain  (

	* (syslex, sysinfo): Use CC_FOR_BUILD.
	* coffdump.c, coffgrok.c, coffgrok.h, srconv.c, sysdump.c, Major changes.

Tue Apr 26 18:18:24 1994  Stan Shebs  (

	* objdump.c (print_section_stabs): Indicate the stab header symbol
	more clearly, print numbers of unrecognized stab n_type values.

Tue Apr 26 16:22:55 1994  Ian Lance Taylor  (

	* nlmconv.c (copy_sections): Copy arelent pointers, not arelents.

Mon Apr 25 16:14:32 1994  Ian Lance Taylor  (

	* (distclean): Remove $(PROGS) and underscore.c.

Fri Apr 22 11:14:19 1994  Ian Lance Taylor  (

	* nlmconv.c (setup_sections): Remove special handling of .reginfo
	(copy_sections): Likewise.
	(alpha_mangle_relocs): Use bfd_ecoff_get_gp_value rather than the
	special ECOFF .reginfo section.

	* objcopy.c (copy_object): Call bfd_copy_private_bfd_data after
	copying everything else, to let it fiddle with the file in its
	final state.

	* objdump.c: Include libiberty.h.
	(display_target_list): If a format fails, just go on to the next
	one.  Check return value of bfd_set_format.
	(display_info_table): Likewise.  Don't increment loop variable in
	for loop test, since that skips the first element.
	(display_target_tables): Rewrite loop for clarity.  Ensure that it
	always prints at least one element.

	* nlmconv.c (main): Use CyGnUsEx rather than CyGnUsSeCs for
	sections header.  Rename from cygnus_sections to cygnus_ext.

Thu Apr 21 12:12:26 1994  Ian Lance Taylor  (

	* objdump.c (_DUMMY_NAME_): Don't define.
	(display_target_list): Use tmpnam to get a file name rather than
	using _DUMMY_NAME_.  Unlink it when done.
	(display_info_table): Likewise.

	* nlmconv.c (secsec): New static variable.
	(main): Create .nlmsections section in output BFD.  Store
	information about it in sections header.
	(setup_sections): Allocate space in sections header.
	(copy_sections): Copy zero sized sections.  Put information about
	each section in the sections header.

Wed Apr 20 14:34:51 1994  Ian Lance Taylor  (

	* nlmconv.c (powerpc_build_stubs): Take new outbfd argument.
	Change caller.  Create custom header for new PowerPC NetWare

	* (nlmheader.o, nlmconv.o): Update dependencies.
	* nlmconv.c: Include bfd.h and libiberty.h with "", not <>.
	* nlmheader.y: Include bfd.h with "", not <>.

Wed Apr 13 10:52:50 1994  Ian Lance Taylor  (

	* objdump.c: Do an ifdef on __GO32__, not unix.

Wed Apr  6 21:54:49 1994  Ian Lance Taylor  (

	Added -D (--dynamic) option to nm and -T (--dynamic-syms) and -R
	(--dynamic-reloc) arguments to objdump.
	* nm.c (dynamic): New static variable.
	(long_options): Added "dynamic".
	(usage): Mention -D and --dynamic.
	(main): Add D to getopt string.  Handle -D by setting dynamic.
	(display_rel_file): If dynamic is non-zero, read dynamic symbols
	rather than normal symbols.
	* nm.1: Updated for -D (--dynamic) option.
	* objdump.c (dump_dynamic_symtab): New global variable.
	(dump_dynamic_reloc_info): New global variable.
	(dynsyms, dynsymcount): New global variables.
	(usage): Mention -R, -T, --dynamic-syms and --dynamic-reloc.
	(long_options): Added "dynamic-reloc" and "dynamic-syms".
	(slurp_symtab): If no symbols, return rather than exit.
	(slurp_dynamic_symtab): New function.
	(display_bfd): Handle dump_dynamic_symtab and
	(dump_symbols): Take new dynamic argument, indicating whether to
	display dynamic symbols.
	(dump_relocs): Move most printing into dump_reloc_set.
	(dump_dynamic_relocs): New function.
	(dump_reloc_set): New function, extracted from dump_relocs.
	(main): Add R and T to getopt string.  Handle -T by setting
	dump_dynamic_symtab and -R by setting dump_dynamic_reloc_info.
	* objdump.1: Updated for -R (--dynamic-reloc) and -T
	(--dynamic-syms) options.
	* binutils.texi: Updated for new nm and objdump options.

Wed Mar 30 15:52:40 1994  Ian Lance Taylor  (

	Update for recent BFD changes to symbol and reloc reading.  Rename
	all uses of get_symtab_upper_bound to bfd_get_symtab_upper_bound.
	* coffgrok.c (symcount): Change to long.
	(do_sections_p1): Check for error return from
	bfd_get_reloc_upper_bound.  Change relcount to long, and check for
	error from bfd_canonicalize_reloc.
	(coff_grok): Change storage to long.  Check for error from
	bfd_get_symtab_upper_bound and bfd_canonicalize_symtab.
	* nlmconv.c (main): Change symcount, newsymalloc, newsymcount, and
	i to long.  Check for error from bfd_get_symtab_upper_bound and
	(copy_sections): Change reloc_size and reloc_count to long.  Check
	for error from bfd_get_reloc_upper_bound and
	(mangle_relocs, i386_mangle_relocs, alpha_mangle_relocs): Change
	reloc_count_ptr argument to long *.  Make corresponding changes to
	variables loaded from *reloc_count_ptr.
	* nm.c (display_rel_file): Change storage and symcount to long.
	Check for errors from bfd_get_symtab_upper_bound and
	* objcopy.c (filter_symbols): Change symcount, src_count and
	dst_count to long.
	(copy_object): Change symcount to long.  Pass another argument to
	fprintf.  Check for errors from bfd_get_symtab_upper_bound and
	(copy_section): Change relcount to long.  Check for errors from
	bfd_get_reloc_upper_bound and bfd_canonicalize_reloc.
	(mark_symbols_used_in_relocations): Change relcount and i to long.
	Check for errors form bfd_get_reloc_upper_bound and
	* objdump.c (storage): Remove global variable.
	(symcount): Changed to long.
	(slurp_symtab): New local variable storage.  Check for errors from
	bfd_get_symtab_upper_bound and bfd_canonicalize_symtab.
	(remove_useless_symbols): Change return value and count to long.
	(objdump_print_address): Change min, max, thisplace and i to long.
	(disassemble_data): Change i to long.
	(dump_symbols): Change count to long.
	(dump_relocs): Change relcount to long.  Check for errors from
	bfd_ret_reloc_upper_bound and bfd_canonicalize_reloc.
	(display_info_table): Add casts when passing LONGEST_ARCH for
	printf %* argument.

Tue Mar 29 14:59:04 1994  Ian Lance Taylor  (

	* nm.c (display_archive): Close each archive element after it has
	been displayed.
	* objdump.c (display_file): Likewise.

Mon Mar 28 13:04:08 1994  Ian Lance Taylor  (

	* Change error message to refer to bfd/config.bfd
	rather than bfd/

Sun Mar 27 16:23:39 1994  Jeffrey A. Law  (

	* More fixes for object formats which allow multiple sections
	with the same name:
	* objcopy.c (setup_section): Make a new output section even if
	one already exists with the given name.
	(copy_section): Use isection->output_section rather than trying
	to look the output section up by its (possibly non-unique) name.

	* (install-info): Look for in the
	current directory, then in $(srcdir).  Don't use $<.

Mon Mar 21 12:55:45 1994  Ian Lance Taylor  (

	* objdump.c (objdump_print_address): Make static.  Declare with
	prototype.  Change vardiff from int to bfd_signed_vma.  Correct
	binary search termination condition.  When looking for same
	section symbol in relocatable file, handle final symbol correctly.

Sun Mar 20 11:26:36 1994  Jeffrey A. Law  (

	* Avoid bug in hpux sed.

	* objcopy.c: Changes to keep it from stripping symbols used
	in output relocations.
	(mark_symbols_used_in_relocations): New function.  Mark symbols
	used in output relocations with BSF_KEEP.
	(filter_symbols): Do not strip symbols marked with BSF_KEEP.
	(copy_object): Reorder actions.  First setup sections, then
	build the output symbol table, then copy the section contents.

Fri Mar 18 10:53:55 1994  Ian Lance Taylor  (

	* ar.c (write_archive): Allocate space for the null byte.  From
	Robert Lipe <>.

Thu Mar 17 16:20:28 1994  Ian Lance Taylor  (

	* Built and to avoid problems with
	collect when . is in PATH.
	(STRIP_PROG): Change from strip to
	(NM_PROG): Change from nm to
	(install): Remove the .new when installing.

Wed Mar 16 16:27:05 1994  Ian Lance Taylor  (

	* nlmconv.c (powerpc_build_stubs): Set BSF_DYNAMIC flag for each
	symbol for which we build a stub.
	(powerpc_mangle_relocs): Only reset TOC pointer for a call to a
	symbol with BSF_DYNAMIC flag set.

Tue Mar 15 23:04:13 1994  Jeffrey A. Law  (

	* objcopy.c (filter_symbols): Use bfd_is_local_label to determine
	if a symbol represents a compiler-generated local label.
	(copy_object): Give the BFD backends a chance to copy any private
	bfd data from the input BFD to the output BFD.
	(setup_section): Give the BFD backends a chance to copy any private
	section data from the input section to the output section.

Mon Mar 14 11:15:58 1994  Jeffrey A. Law  (

	* objcopy.c (mangle_section): Delete unused function.
	(setup_section): Set osection here instead of calling
	mangle section to do it.

Mon Mar 14 12:11:01 1994  Ian Lance Taylor  (

	* ar.c (write_archive): Close inarch before unlinking it.

Fri Mar 11 22:20:48 1994  Ian Lance Taylor  (

	* nlmconv.c (main): For PowerPC, call powerpc_build_stubs and
	powerpc_resolve_stubs.  Use __GOT0, not __toc_start.  Handle it if
	the start and end symbols are not in the text section.
	(struct powerpc_stub): New struct definition.
	(powerpc_stubs, powerpc_stub_insns): New static variables.
	(powerpc_initial_got_size): New static variable.
	(powerpc_build_stubs): New function.
	(powerpc_resolve_stubs): New function.
	(powerpc_mangle_relocs): Clear extraneous data in .got section.
	Rearrange reloc handling to handle ELF relocs that are not
	partial_inplace.  Resolve PC relative relocs.

Wed Mar  9 13:48:11 1994  Steve Chamberlain  (

	* ar.c (move_members): Fix it so that the abi positional modifiers
	don't delete all archive members following the insert point.

Tue Mar  8 13:14:43 1994  Steve Chamberlain  (

	* coffgrok.[ch]: New files, understand coff objects.
	* coffdump.c: Uses coffgrok to dump out the debug info of a coff
	* Description of a SYSROFF object file.
	* sysinfo.y, syslex.l: Parse info file, generate a reader, writer,
	header files and a printer.
	* srconv.c: Uses coffgrok.c and to convert a coff
	file to a SYSROFF file.

Sat Feb 26 13:35:26 1994  Stan Shebs  (

	* ar.c (do_quick_append): Pad with a genuine character 10,
	rather than whatever '\n' might happen to be.

Tue Feb 22 18:25:52 1994  Ian Lance Taylor  (

	* nlmconv.c (main): Ignore debugging symbols when looking for
	special symbols by name.

Sun Feb 20 18:47:42 1994  Ian Lance Taylor  (

	* nlmconv.c: Include libiberty.h.

	Support for PowerPC NetWare.
	* nlmconv.c (main): For PowerPC NetWare, automatically define the
	special symbols __toc_start.
	(select_output_format): Handle bfd_arch_powerpc.
	(mangle_relocs): Likewise.
	(powerpc_mangle_relocs): New function.

Thu Feb 17 09:28:23 1994  David J. Mackenzie  (

	* ar.c, bucomm.c, nlmconv.c, nm.c, objcopy.c, objdump.c,
	size.c: Use bfd_get_error and bfd_set_error and new error names.

Fri Feb 11 15:54:51 1994  David J. Mackenzie  (

	* objcopy.c (strip_main, copy_main): Add missing 'break' in switch.

Mon Feb  7 19:45:52 1994  Ian Lance Taylor  (

	* objdump.c (disassemble_data): Handle bfd_arch_powerpc.

Sun Feb  6 22:08:20 1994  David J. Mackenzie  (

	* strings.c objdump.c nlmconv.c objcopy.c nm.c ar.c size.c (main):
	Call xmalloc_set_program_name.

Fri Feb  4 10:46:01 1994  David J. Mackenzie  (

	* objcopy.c (filter_bytes): Make MEMHUNK a char *, not PTR, so we
	can do arithmetic on it.

Thu Feb  3 14:06:41 1994  David J. Mackenzie  (

	* objdump.c (dump_section_stabs, read_section_stabs,
	print_section_stabs): Functions broken out of dump_stabs_1.
	Free the stabs and strings when done with them.

Wed Feb  2 13:42:23 1994  David J. Mackenzie  (

	* nlmconv.c (main): Use bfd_get_flavour instead of struct member.
	* ar.c (print_contents, extract_file), size.c
	(print_berkeley_format, print_sysv_format): Use bfd_get_filename and
	bfd_my_archive instead of dereferencing the structs directly.

	* ar.c: Use bfd_fatal and bfd_nonfatal instead of bfd_perror and exit.
	Indent.  Remove DEFUNs.

	* nlmconv.c (main), objcopy.c (copy_file): Print matching formats
	if ambiguous match.
	* nm.c (display_file, display_archive), size.c (display_bfd):
	Eliminate gotos.
	Print matching formats if there is an ambiguous match.  Use
	bfd_nonfatal instead of hardcoded error message if nothing matches.

	* arsup.c, ar.c, objdump.c: Use bfd_get_filename instead of

	* nm.c (display_archive): New function, from code in display_file.
	(display_rel_file): Renamed from do_one_rel_file.

	* size.c: Indent.
	(display_archive): New function from code in display_file.
	(display_file): Check bfd_close error return.

	* strings.c (strings_object_file): Check bfd_check_format
	error return.

	* strings.c, objdump.c, size.c: Use bfd_nonfatal instead of bfd_perror.

	* bucomm.c: Delete references to exit_handler.  It wasn't set
	anywhere, and now that we're using the libiberty xmalloc, it
	wouldn't always get called before exiting.
	(list_matching_formats): Function moved from objdump.c.
	* bucomm.h: Declare it.

	* objdump.c (disassemble_data): Move some variable decls closer to
	their use.  Add some comments.  Replace a nested block with a

Mon Jan 31 18:50:41 1994  Stan Shebs  (

	* objdump.c (display_target_list, display_info_table): Check that
	the bfd of the dummy output file is not null.

Wed Jan 26 13:13:18 1994  David J. Mackenzie  (

	* objcopy.c (filter_bytes): New function.
	(copy_section): Call it.
	(copy_options, copy_usage, copy_main): Add --byte option to
	activate it.  Appropriate the -b option (which was an undocumented
	synonym for -F) for it, also.  Add --interleave, -i option for
	additional control.
	(setup_section, copy_section, mangle_section): Renamed with no `s'
	on the end.
	* objcopy.1, binutils.texi: Document the new options.

	* objdump.c (display_target_tables, display_target_list):
	New functions broken out of display_info.
	Eliminate some magic constants.  Use more meaningful variable names.
	(dump_bfd_header): New function broken out of display_bfd.
	(dump_section_header): New function broken out of dump_headers.
	(remove_useless_symbols): Don't shadow global variable name with
	(objdump_print_address): Fix backward test.

Tue Jan 25 19:40:54 1994  Stan Shebs  (

	* bucomm.c (print_arelt_descr): Change decl of `when' to time_t.
	* objdump.h: Removed.

Mon Jan 24 13:29:02 1994  David J. Mackenzie  (

	* objdump.c (display_file): Remove call to list_matching_formats.
	It would never be called.
	(list_matching_formats): Take an arg giving the list of matching
	(display_bfd): Pass the arg, and get it filled in by calling
	bfd_check_format_matches instead of bfd_check_format.
	(display_info, display_info_table): target_vector was renamed to

	* binutils.texi (objdump): Note some limitations of -h section
	address printing.

Sat Jan 22 16:20:46 1994  Stan Shebs  (

	* (MALLOC): Set to emptiness by default.
	(ALL_CFLAGS): Add and use.
	(arparse.h): Make it depend on arparse.y.
	* ar.c (libbfd.h): Don't require to be in ../bfd.
	* objdump.c (comp): Rename to compare_symbols.

Fri Jan 21 20:22:30 1994  David J. Mackenzie  (

	* objdump.c (list_matching_formats): If the file format is ambiguous,
	print the matching names so the user can choose one.
	(display_bfd): Call it.
	(display_file): Call it.

Fri Jan 21 19:17:25 1994  Ian Lance Taylor  (

	* objdump.c (disassemble_data): Support bfd_arch_rs6000.

Mon Jan 17 13:57:25 1994  Stan Shebs  (

	* objdump.c (stab_name): Allocate dynamically.
	(stab_print): Use pointers to strings instead of char arrays.
	(dump_stabs): Change alloc and init of arrays appropriately.
	(dump_stabs_1): Always decide whether to print stab_name or
	the stab's type number, if unnamed.

Fri Jan 14 14:42:48 1994  Ian Lance Taylor  (

	* objcopy.c (strip_main, copy_main): Don't clobber the input file
	if copy_file fails.

	* nlmconv.c (main): Warn about an attempt to use a shared library
	with uninitialized data.

	* nlmconv.c (setup_sections): Make sure that we align the
	output_offset of each input section appropriately.

Thu Jan 13 17:32:44 1994  Ian Lance Taylor  (

	* objdump.c (dump_relocs): Don't crash if section name is NULL.

Tue Jan 11 19:46:33 1994  Ian Lance Taylor  (

	* filemode.c (filemodestring): Commented out; not used.
	(mode_string): Use POSIX definitions.
	(ftypelet): Likewise.
	(rwx): Removed; no longer used.
	* bucomm.c: Include bucomm.h.
	(bfd_nonfatal, bfd_fatal): Argument is const.
	(fatal): Make __STDC__ version.
	* bucomm.h (mode_string): Declare.
	* (bucomm.o): Depend upon bucomm.h

Sun Jan  9 12:03:20 1994  Ken Raeburn  (

	* bucomm.c (xmalloc, xrealloc): Deleted.
	* bucomm.h (xmalloc, xrealloc): Fix prototypes, to correspond to
	libiberty version of functions.

Thu Jan  6 06:18:15 1994  David J. Mackenzie  (

	* binutils.texi: Add a chapter summarizing the ways to select
	aspects of the target for each program.

	* objdump.c (long_options, usage): Add long equivalents for all
	remaining short options that lacked them.
	* binutils.texi objdump.1: Document them.

	* size.c (usage): Tweak usage message.
	* size.1: Add missing `=' in examples.

	* binutils.texi strip.1 objcopy.1 nlmconv.1 objcopy.c nlmconv.c:
	Use "--target=bfdname" as the option to select the BFD target,
	like nm and size already do.
	Reserve "--format=format" for textual output selection options, but
	for now keep old option names as obsolete for backward compatibility.

	* strings.c (main, strings_object_file, usage): Add --target option.
	* binutils.texi strings.1: Document it.

Sat Jan  1 13:58:24 1994  David J. Mackenzie  (

	* ar.c (main): Add \n in error message.

Thu Dec 23 12:23:11 1993  Ian Lance Taylor  (

	gcc -Wall lint:
	* ar.c (main): Put parens around assignment used as truth value.
	* objcopy.c (strip_main): Remove unused variables.  Return 0.
	(copy_main): Remove unused variables.  Return 0.
	* objdump.c (display_bfd): Declare return value as void.
	(stab_print): Use "" instead of 0 to initialize array.
	(dump_stabs_1): Print vma using printf_vma.
	(display_info): Put parens around assignment used as truth value.
	* strings.c (print_strings): Cast printf arguments.

	* objcopy.c (copy_main): Use copy_options, not strip_options.

	* nlmheader.y (command): Warn about illegal date values.

Wed Dec 15 11:18:03 1993  David J. MacKenzie  (

	* bucomm.c bucomm.h: Run through indent.  De-ansidecl-ify.
	(bfd_nonfatal): New function.
	(bfd_fatal): Call it.

	* objcopy.c (smart_rename): Do a copy if the dest file has
	multiple hard links.  Remove source file on successful copy.
	Try to preserve mode and owner on successful rename.

	* objcopy.c: Run through indent.  Clean up a bit.
	Make global variables static.
	Make {input,output}_{target,filename}, show_version local
	to various functions.
	New global variable `status' for exit status.
	(strip_main, copy_main): New functions with code from main.
	(nonfatal): New macro.  Use it globally instead of bfd_perror and

	(copy_object): Call mangle_sections with bfd_map_over_sections.
	(mangle_sections): Adjust for new calling convention.

Fri Dec 10 11:28:11 1993  Ian Lance Taylor  (

	* nlmheader.y (command): Accept MAP and FULLMAP without arguments.
	* nlmconv.c (main): Change error message for MAP and FULLMAP.

Thu Dec  9 17:47:19 1993  Ian Lance Taylor  (

	* nlmconv.c (main): Warn about imported symbols that are not in
	the IMPORT list even if the IMPORT keyword is not used.

	* nlmconv.c (debug, unlink_on_exit): New static variables.
	(long_options): Add "debug" and "linker".
	(main): Handle -d and -l arguments.  Make command line input and
	output files optional.  Parse the command file before opening the
	BFD's, which requires storing more information in local variables.
	If INPUT names multiple files, link them together.  Use OUTPUT for
	the output file name if not named on command line.
	(show_usage): Changed for new options.
	(link_inputs): New function to automatically invoke linker to
	handle multiple INPUT files.
	(choose_temp_base_try, choose_temp_base, pexecute): New functions,
	mostly copied from gcc/gcc.c.
	* nlmconv.h (input_files, output_file): Declare.
	* nlmheader.y (input_files, output_file): Define.
	(command): Support INPUT with a string_list argument.  Support
	(string_list): Renamed from module_list.
	* (nlmconv.o): Define LD_NAME based on

Wed Dec  8 10:09:04 1993  Ian Lance Taylor  (

	* nlmheader.y (nlmheader_identify): New function.  Use it to print
	the program name just once, instead of with every error message.

Mon Dec  6 16:11:32 1993  Ian Lance Taylor  (

	* nlmconv.c (long_options): Changed --header-info to --header-file
	to match documentation and usage message.

Sun Dec  5 01:31:01 1993  Jeffrey A. Law  (

	* objdump.c (dump_relocs): Avoid dereferencing a NULL sym_ptr_ptr
	in a relocation.

Thu Dec  2 16:00:06 1993  Ian Lance Taylor  (

	* nlmconv.c (main): Change various types from bfd_size_type to
	size_t, since they have to be arguments to fread and fwrite.
	Change set from char * to unsigned char *.
	(select_output_format): Make mach argument unsigned.  Handle
	(setup_sections): Don't copy the .reginfo section of an ECOFF
	file.  Call bfd_set_reloc to initialize the relocation fields.
	(copy_sections): Don't copy the .reginfo section of an ECOFF file.
	Combine all relocs for a section.
	(mangle_relocs): Change type of relocs to permit specific
	functions to change it.  Call alpha_mangle_relocs for alpha,
	default_mangle_relocs for other architectures.
	(default_mangle_relocs): New function.  Adjust the address of all
	relocs by the output_offset.
	(i386_mangle_relocs): Change type of relocs argument.  Cast length
	argument to memmove to size_t.
	(alpha_mangle_relocs): New function.

Wed Nov 17 17:38:58 1993  Sean Eric Fagan  (

	* nlmconv.c (select_output_format): Use nlm32-sparc for

Wed Nov 17 14:41:35 1993  Jeffrey Osier  (

        * nlmconv.1:   added man page
	* objcopy.1:   fixed format errors

Wed Nov 17 12:03:41 1993  Ian Lance Taylor  (

	* Use CFLAGS as well as LDFLAGS when linking.

Wed Nov 17 04:50:55 1993  David J. Mackenzie  (

	* strings.1: Fix typo.

Mon Nov 15 12:03:20 1993  Ken Raeburn  (

	* (DISTSTUFF): Build "info".
	(VERSION): Updated to cygnus-2.3.1; 2.3 has gone out.

Sun Nov 14 00:27:24 1993  Jeffrey A. Law  (

	* objdump.c (dump_stabs): Handle stabs-in-som as implemented
	by the new BFD SOM assembler.

Sat Nov 13 07:14:05 1993  David J. Mackenzie  (

	* ar.1 c++filt.1 nm.1 objcopy.1 objdump.1 ranlib.1 size.1
	strings.1 strip.1: Replace \(em in NAME section with \- so
	makewhatis can grok it.

Tue Nov  9 15:22:12 1993  Ian Lance Taylor  (

	* nlmconv.c (i386_mangle_relocs): Adjust reloc address by
	section output_offset.

Fri Nov  5 12:11:52 1993  Jeffrey Osier  (

	* binutils.texi:  added nlmconv chapter

Wed Nov  3 16:10:50 1993  Jeffrey Wheat  (


Wed Nov  3 15:09:23 1993  Ken Raeburn  (

	* (distclean): Don't get rid of dvi or info files.

Tue Nov  2 13:29:59 1993  David J. Mackenzie  (

	* objcopy.c (S_ISLNK): Define as 0 if there's no S_IFLNK.

Fri Oct 29 16:02:34 1993  David J. Mackenzie  (

	* binutils.texi: Move objcopy docs into alphabetical order.

	* objdump.c: Use xmalloc instead of malloc.

Fri Oct 29 11:11:14 1993  Stan Shebs  (

	* objdump.c (info): Rename to formats_info.
	(dump_stabs_1): Better comments and formatting.

Thu Oct 28 19:43:16 1993  Stan Shebs  (

	* ar.c (main): Always create the archive when quick appending,
	even if no input files have been given.

Wed Oct 27 12:03:06 1993  Ian Lance Taylor  (

	* nlmconv.c (main): Set sharedDebugRecordOffset and
	sharedDebugRecordCount fields in extended header.

	* nlmconv.c (main): Force moduleName field to upper case.

Mon Oct 25 16:45:42 1993  Ian Lance Taylor  (

	* objcopy.c (main): Give a usage message if there are too many

Mon Oct 25 10:37:08 1993  Ken Raeburn  (

	* (install-info): Rewrite to take advantage of VPATH,
	so FSF distributions (with info files in $(srcdir)) install
	(DISTSTUFF): Build nlmheader.c too.

Fri Oct 22 11:43:23 1993  Ken Raeburn  (

	* ar.c (program_name): Don't define here.
	* objdump.c: Include "bucomm.h".
	(xmalloc): Don't declare here.
	(program_name): Don't define here.
	(program_version): Fixed type in declaration.
	* size.c: Include "bucomm.h".
	(program_name): Don't declare here.

Fri Oct 22 14:10:41 1993  Mark Eichin  (

	* objdump.c (fprintf): hide declaration in FPRINTF_ALREADY_DECLARED

Fri Oct  1 12:43:00 1993  Ian Lance Taylor  (

	* nlmconv.c (i386_mangle_relocs): Resolve and remove PC relative
	relocs against defined symbols in the same section.

Thu Sep 30 16:46:26 1993  Roland H. Pesch  (

	* (binutils.dvi): use TEXIDIR to find texinfo.tex

Sat Sep 25 18:09:29 1993  David J. Mackenzie  (

	* objcopy.c (simple_copy, smart_rename): New functions.
	(main): Use them.

Fri Sep 24 15:38:29 1993  Ian Lance Taylor  (

	* (clean, distclean): Recurse into testsuite.

Thu Sep 23 01:05:06 1993  Ian Lance Taylor  (

	* objcopy.c (setup_sections, copy_sections): If stripping, don't
	copy SEC_DEBUGGING sections.
	* objdump.c (dump_headers): Print SEC_DEBUGGING flag.

	* objdump.c (usage): Mention --stabs.

	* objcopy.c (copy_object): Copy all applicable file flags.
	(copy_file): Don't copy EXEC_P specially here.

Mon Sep 20 19:28:57 1993  Ian Lance Taylor  (

	* nlmconv.c (main): Adjust data section size to correspond to bss
	alignment adjustment.  Clear BSF_SECTION_SYM if symbol is moved to
	a different section.  Use time_t for time variable.
	(setup_sections): Only put sections with contents in output NLM.
	(i386_mangle_relocs): No symbols are common at this point.  Add
	casts to avoid warnings.

Fri Sep 10 11:00:40 1993  Stan Shebs  (

	* objdump.c: Made the --stabs option work for stabs-in-coff.
	(dump_elf_stabs): Renamed to dump_stabs, changed to run for
	any object file format.
	(dump_elf_stabs_1): Renamed to dump_stabs_1, added calls to
	generic BFD routines for non-ELF case, changed format of message
	for no-section-found case.
	(display_bfd): Always call dump_stabs if requested.
	(dump_data): Call bfd_section_size to get section size.

Fri Sep 10 08:12:23 1993  David J. Mackenzie  (

	* (install): Don't put strings in tooldir/bin.

Mon Sep  6 15:39:04 1993  Ian Lance Taylor  (

	* nlmconv.c (total_bss_size): Removed.
	(main): Set the bss vma to always follow the data section.  Move
	symbols into new sections, and adjust values by output_offset.
	(setup_sections): Don't copy all sections, but instead point all
	text sections to .text, all data sections to .data, and all bss
	sections to .bss.
	(copy_sections): Adjust accordingly.

Thu Sep  2 12:34:03 1993  Ian Lance Taylor  (

	Only build nlmconv if configured for a NetWare target.
	* If we have some *-*-netware* target, or are using
	all targets, set BUILD_NLMCONV to $(NLMCONV_PROG) in Makefile.
	* (PROGS): Use $(BUILD_NLMCONV) rather than

Tue Aug 31 14:13:35 1993  Ken Raeburn  (

	* objdump.c (ARCH_all): Define ARCH_hppa too.
	(dump_headers): Don't test for SEC_BALIGN if it's not defined by

Tue Aug 31 13:29:12 1993  Ian Lance Taylor  (

	* nlmconv.c (main): Force creation of .bss section.  Set up the
	sections before looking at the symbols.  Move all common symbols
	into .bss section.  Automatically define _edata and _end.  Only
	export symbols in the export list, with multiple prefixes if
	necessary.  Warn if no version.  Always create extended header.
	Set date automatically if not already set.
	(setup_sections): Count size of bss sections.
	(mangle_relocs, i386_mangle_relocs): Accept section argument, and
	take reloc_count as a changeable pointer; changed callers.
	(i386_mangle_relocs): Remove PC relative relocs within a section,
	as they require no adjustment.
	* nlmheader.y: Fixed memory allocation throughout: token STRING is
	now allocated on the heap, and freed if not needed.  Null
	terminated copyright message.  Accept version with only two
	(symbol_list_opt): New nonterminal, either symbol_list or empty.
	(symbol_list): Use left recursion to avoid overflowing parser
	(yylex): Rearranged beginning of line check.  Accept quoted
	strings using single quotes.  End generic argument at comment
	character or parentheses.
	(string_list_append): Fixed.
	(string_list_append1): New function.

	* bucomm.h: The first argument to xrealloc is PTR, not char *.
	* bucomm.c (xrealloc): Use PTR rather than char *.
	* (objdump.o): Depend upon config.status to notice
	--with-targets changes.
	(nlmconv.o): Depend upon bucomm.h.

Tue Aug 17 09:46:01 1993  David J. Mackenzie  (

	* Don't pass cpu to config.bfd.

Thu Aug 12 16:43:04 1993  David J. Mackenzie  (

	* ($(NM_PROG)): Depend on demangle.o.
	(demangle.o): New target.
	(cplus-dem.o): Depend on it, to force compilation order when doing
	parallel compiles.

	* nm.c (print_symbol_info_{bsd,sysv,posix}): Take a bfd arg.
	(struct output_fns print_symbol_info): Ditto.
	(long_options, usage, main): Add -C --demangle option.
	(print_symname): New function, demangling if requested.
	(print_symbols, print_symbol_info_{bsd,sysv,posix}): Use it.

Wed Aug 11 22:57:23 1993  David J. Mackenzie  (

	* Put CFLAGS last in compilation rules and omit from
	linking rules.  Use ARCHDEFS to compile objdump.c.
	Update dependencies.
	* Construct ARCHDEFS based on the BFD target makefile
	* objdump.c: Conditionalize calls to the print_insn_ARCH functions
	according to ARCHDEFS.

Thu Aug 12 08:06:15 1993  Ian Lance Taylor  (

	* ar.c: Removed obsolete and non-functional GNU960 code.

Wed Aug 11 13:08:26 1993  Ian Lance Taylor  (

	* size.c (berkeley_sum): New function.
	(bsssize, datasize, textsize): New global variables.
	(bss_section_name, data_section_name, text_section_name): Removed.
	(print_berkeley_format): Map berkeley_sum over all the sections,
	rather than only reporting sizes of specifically named sections.
	* ($(OBJDUMP_PROG)): Removed dependency on size.o.

Tue Aug 10 10:46:01 1993  Ian Lance Taylor  (

	* nlmconv.c, nlmconv.h, nlmheader.y: New files for program to
	convert object files into NetWare Loadable Modules.
	* (NLMCONV_PROG): New macro, define to be nlmconv.
	(nlmheader.c, nlmheader.o, nlmconv.o, $(NLMCONV_PROG)): New

Thu Aug  5 15:48:32 1993  david d `zoo' zuhn  (

	* define MAKEOVERRIDES to an empty string

Wed Aug  4 17:08:08 1993  David J. Mackenzie  (

	* objcopy.c (copy_file): Make failures to process a file nonfatal.

Mon Aug  2 11:28:23 1993  David J. Mackenzie  (

	* nm.c: Add -B option, like --format=bsd.

Tue Jul 27 16:29:54 1993  Ian Lance Taylor  (

	* objcopy.c (copy_file): If the file is neither an object nor an
	archive, give an error rather than returning success.

Mon Jul 19 16:13:40 1993  Ken Raeburn  (

	* objdump.c (objdump_print_address): Prefer non-local symbols over
	local ones, and especially discriminate against debugging symbols.
	Also, for relocateable files, try to find a symbol in the current
	section, instead of picking one from some random section with a
	convenient value (read, section offset).
	(disassemble_data): Cast argument to malloc to size_t first.
	(dump_data): Likewise.
	(dump_relocs): If a single section name is specified, show relocs
	only for that section.  Otherwise, silently omit sections without
	relocs.  Format table nicely even if values are printed using 16
	digits instead of 8.

Fri Jul 16 15:19:59 1993  David J. Mackenzie  (

	* nm.c: Changes for final version of POSIX.2.
	(print_symbol_filename_{bsd,sysv,posix}): New functions.
	(formats): Add an element for a pointer to them.
	(print_symbols): Call it.
	(print_object_filename_posix, print_archive_member_posix): Produce
	output according to new POSIX.2 spec.

	* strings.c (print_strings): Handle STREAM being NULL.
	(strings_a_section): Pass a NULL.
	(main): Don't open /dev/null.

Thu Jul 15 12:44:09 1993  Ian Lance Taylor  (

	* objdump.c (disassemble_data): Handle the m88k.
	(display_bfd): Use bfd_errmsg, rather than just claiming that the
	bfd is not an object file.

Mon Jul 12 17:55:34 1993  K. Richard Pixley  (

	* (TAGS): make work again by naming directories
	  explicitly rather than depending on undefined macros.
	  (INSTALL_XFORM): correct bad install target.

Fri Jul  2 16:58:34 1993  David J. Mackenzie  (

	* strings.c: Doc fixes.

Sun Jun 27 13:35:24 1993  David J. Mackenzie  (

	* Note dependencies on bucomm.h.
	(cplus-dem.o): Link c++filt with version.o.

	* strings.c: Include bucomm.h and add prototypes to other decls.
	Remove -h option.

	* bucomm.h: Declare xrealloc.

	* nm.c, objcopy.c, objdump.c, size.c, strings.c (main, usage): Add
	--help option.  Put "GNU" in the version message.
	(usage): Take stream and exit status as args.
	(main): Pass new args to usage.

Fri Jun 25 23:12:12 1993  David J. Mackenzie  (

	* strings.c, strings.1: New files.
	* binutils.texi: Document strings.
	* Add rules for it.

Fri Jun 25 20:44:43 1993  Ken Raeburn  (

	* objdump.c: Use size-independent bfd elf section names.

Sun Jun 20 23:09:06 1993  Ken Raeburn  (

	* objdump.c (objdump_print_address): Handle wide offsets by
	calling sprintf_vma.

Fri Jun 18 14:29:12 1993  Per Bothner  (

	* objdump.c (syms2):  Removed unused variable.
	* objdump.c (remove_useless_symbols):  New function.
	* objdump.c (comp):  Simplify.
	* objdump.c (dis-assemble_data):  Make simpler and more
	efficient how we filter out useless symbols:  Just filter
	BEFORE the sort (using remove_useless_symbols).
	* objdump.c (objdump_print_address):  Simplify.
	Change output syntax to match gdb.

Thu Jun 17 16:53:56 1993  david d `zoo' zuhn (

	* canonicalize; for use within
	this directory (and subdirs)

Mon Jun 14 12:13:22 1993  david d `zoo' zuhn  (zoo at

	* (install, install-info): remove parentdir support,

Thu Jun 10 17:29:21 1993  Per Bothner  (

	* objcopy.c (copy_object):  Fix bad size passed to xmalloc().

Mon Jun  7 12:41:12 1993  Per Bothner  (

	* (INCLUDES):  Add -I../bfd for sysdep.h and bfd.h.
	*  No longer need to configure to get sysdep.h.
	* objcopy.c (copy_object):  Fix symbol table handling.

Fri Jun  4 17:20:03 1993  Per Bothner  (

	* objcopy.c (filter_symbols):  Cannot filter the symbols
	in place, because that confuses the relocs, so take separate
	parameter for output array.
	* objcopy.c (sympp):  Make two variables: isympp and osympp.
	* objcopy.c (copy_object):  Allocate separate array (osympp)
	for filtered symbols.

Fri Jun  4 10:51:44 1993  david d `zoo' zuhn  (zoo at

	* change recursion test to presence of a configured
	testsuite directory

Thu Jun  3 14:05:57 1993  Ken Raeburn  (

	* (underscore.c): Hack the backquoted command so it
	doesn't cause Solaris make to bomb.

Thu Jun  3 10:40:19 1993  Jeffrey Osier  (

	*  added c++filt and objcopy to MANPAGES variable

Thu Jun  3 00:32:52 1993  david d `zoo' zuhn  (zoo at


Wed Jun  2 18:30:24 1993  Jeffrey Osier  (

	* c++filt.1, objcopy.1:  new man pages

Fri May 28 15:01:24 1993  Per Bothner  (

	* (install):  Also install ar and ranlib in
	$(tooldir)/bin;  needed for building libgcc.a.
	* objdump.c (objdump_print_address):  Fix the check
	"coincidental" label matches by dis-allowing undefined
	or com symbols.

Thu May 27 16:58:31 1993  Jeffrey Osier  (

        * binutils.texi:  revised c++filt chapter

Wed May 26 17:24:17 1993  Ian Lance Taylor  (

	* (FLAGS_TO_PASS): Pass down CC and CFLAGS.

Tue May 25 00:26:47 1993  Ken Raeburn  (

	* objdump.c (slurp_symtab): Print warning for bad symbol table.
	(bfd_elf32_find_section, Elf32_Internal_Shdr): Updated
	declarations and uses.

	* (DISTSTUFF): Don't build

Fri May 21 10:51:19 1993  David J. Mackenzie  (

	* nm.c: Add -f/--format, -P/--portability, -t/--radix options.
	Make global variables static.
	(main): Make -v like -n, not -V, and make -A like -o, for POSIX.2.
	(set_print_radix, set_output_format,
	{bsd,sysv,posix}): New functions.
	(display_file, print_symbols): Call them.

	* ar.c: Improve error messages.

	* nm.c (main): Handle long options that just set a flag.

	* nm.c (main), ar.c (do_show_version), objcopy.c (main), size.c
	(main): Exit after printing the version number, per the GNU coding

Mon May 17 13:20:25 1993  Per Bothner  (

	* README,  Minor updates for 2.2.

Fri May 14 11:12:26 1993  Per Bothner  (

	* (underscore.c):  Automatically generate
	(using nm) a file with the variable prepends_underscore.
	* (c++filt):  Link underscore.o with cplus-dem.o
	so that initial underscores get removed iff appropriate.
	* binutils.texi:  Preliminary documentation for c++filt.
	*, binutils.texi:  Set to version 2.2.

	* NEWS:  Mention copy->objcopy renaming and new c++filt program.

Wed May 12 12:05:36 1993  Ian Lance Taylor  (

	* (cplus-dem.o, $(DEMANGLER_PROG)): Build the
	demangler via cplus-dem.o, rather than directly from the .c file.

	* objcopy.c: Renamed from copy.c, updated comments accordingly.
	*, binutils.texi: Renamed copy to objcopy.
	* is-strip.c, maybe-strip.c, not-strip.c: Updated comments for
	rename of copy to objcopy.

Mon May 10 17:20:18 1993  Per Bothner  (

	* binutils.texi (strip, -v option):  Fix typo.

Fri May  7 13:57:50 1993  Ian Lance Taylor  (

	* (RUNTEST): Define.

Tue May  4 10:06:50 1993  Ian Lance Taylor  (

	* (DEMANGLER_PROG): Name it c++filt.
	(PROG): Also build and install COPY_PROG.

Mon May  3 19:11:48 1993  Per Bothner  (

	*  Change definition of $(tooldir) to match FSF.

Wed Apr 28 23:41:32 1993  David J. Mackenzie  (

	* size.c (usage): Add missing options.
	(main): Clean up option parser.

	* objdump.c (usage): Add missing options.
	(display_file): Print program name before calling

	* nm.c (usage): Add missing options.
	(main): Clean up option parser.
	(display_file): Print program name before calling

	* copy.c (copy_usage, strip_usage): Add missing options.

	* ar.c (usage): New function.
	(main): Call it.
	(open_inarch, do_quick_append): Print program name before calling

Thu Apr 22 15:01:35 1993  Ian Lance Taylor  (

	* nm.c (main): Accept and ignore -A and -B for MIPS compatibility.

Mon Apr 19 14:06:59 1993  Rob Savoye  (

	* Added FLAGS_TO_PASS so tests get run on freshly
	built binaries if they exist. (otherwise the path)

Wed Apr  7 22:22:50 1993  Rob Savoye  (

	* Changed check target to use DejaGnu.

Thu Apr  1 12:37:13 1993  Jim Kingdon  (

	* Remove am29k-pinsn.c, i960-pinsn.c.
	objdump.c: a29k and i960 are `disassemble' not `print'.

	* objdump.c: Rename print_address to objdump_print_address
	and change parameters.
	(disassemble_data): Use objdump_print_address.

Wed Mar 31 10:25:29 1993  Jim Kingdon  (

	* objdump.c (disassemble_data): print_insn_sparc is now a
	`disassemble' not a `print'. Remove sparc-pinsn.c (now in libopcodes.a).

	* objdump.c (disassemble_data): Use new read_memory_func stuff.

Thu Mar 25 10:38:11 1993  Ken Raeburn  (

	* objdump.c (fprintf): Declaration of variadic function had better
	be a prototype for ANSI C systems.

Mon Mar 22 23:19:46 1993  david d `zoo' zuhn  (zoo at

	* rename test-install to install-check

Fri Mar 19 14:40:08 1993  Steve Chamberlain  (

	* objdump.c (disassemble_data): Add H8500.

Fri Mar 19 10:56:51 1993  Jim Kingdon  (

	* objdump.c (usage): Mention long options.

Thu Mar 18 14:22:17 1993  Per Bothner  (

	* nm.c:  Modify behavior of -o flag for archives to match
	BSD4.4 and Sunos 4:  Prefix archive name before each line.

	* m68k-pinsn.c:  Removed.  Subsumed by ../opcodes/m68k-dis.c.
	* i386-pinsn.c:  Removed.  Subsumed by ../opcodes/i386-dis.c.
	*  Adjust accordingly.
	* objdump.c:  Support new-style disassemblers (ones that use
	the interface of ../include/dis-asm.h).

Thu Feb 25 15:57:00 1993  Per Bothner  (

	*  When making tar file, remove texinfo/*,
	except for texinfo/texinfo.tex.
	* ardup.c:  Add extern declaration of strdup.
	* (testsuite):  Add 'else true' since otherwise
	Ultrix /bin/sh complains.

Wed Feb 24 19:44:18 1993  Per Bothner  (

	*  Set VERSION to 2.1.
	* README, NEWS: Updates.
	* nm.c:  Add -v as a synonym for -V.

Tue Feb 23 19:00:50 1993  Mike Werner  (

	* added testsuite to configdirs.
	* added support for building testsuite.

Mon Feb 22 22:52:10 1993  Per Bothner  (

	* objdump.c (disassemble_data):  Print function names when
	given by bfd_find_nearest_line.  If not - still print
	line numbers.

Mon Feb 22 07:54:03 1993  Mike Werner  (

	* 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.

Mon Feb 22 10:27:24 1993  Ken Raeburn  (

	* objdump.c (dump_data): Free up section contents each time
	through the loop.  Reported by

Sun Feb 21 10:55:55 1993  Mike Werner  (

	* 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.

Fri Feb 12 10:05:20 1993  Fred Fish  (

	* (DEMANGLER_PROG):  New program to build.  Add macro
	and rule.

Tue Jan 26 11:56:33 1993  Ian Lance Taylor  (

	* copy.c, nm.c, objdump.c, size.c: Use new bfd_is_com_section
	macro rather than checking for equality to bfd_com_section.

Fri Jan  8 15:50:05 1993  Ian Lance Taylor  (

	* objdump.c (disassemble_data): Fix code to find first useless

Thu Jan  7 13:13:31 1993  Ian Lance Taylor  (

	* objdump.c (disassemble_data): Use mips_print_insn for MIPS.
	Don't core dump if bfd_find_nearest_line returns false.

Wed Jan  6 17:14:01 1993  Steve Chamberlain  (

	* objdump.c (disassemble_data): know how to disassemble z8000s

Wed Jan  6 15:16:27 1993  Per Bothner  (

	* arsup.h (interactive), bucomm.h (program_name):  Prefix
	with 'extern', to avoid warnings from some compilers.

Wed Jan  6 15:14:11 1993  Per Bothner  (

	* arparse.y: fix unnecessary shift/reduce

Tue Dec 22 15:46:56 1992  Per Bothner  (

	*  Make check depend on all.
	* (distclean): Remove sysdep.h.
	* size.c:  Use %u format where appropriate.
	* objdump.c:  Standardize:  L_SET -> SEEK_SET.
	* objdump.c:  Use new macro bfd_asymbol_bfd.
	*  Allow std-host as the default ${mys_host}.

Thu Dec 17 19:38:19 1992  david d `zoo' zuhn  (zoo at

	* added dvi target, define and use TEXI2DVI

Tue Dec 15 18:05:07 1992  Per Bothner  (

	* (dist):  Fix permissions before release.
	* size.c:  Use bfd_size_type (and long) where appropriate.
	* ar.c:  Make writing a map the default, to be compatible
	with SYSV and Posix.2.  Remove some bogus kludges that
	handled __.SYMDEF directly.
	* NEWS:  New file.

Mon Nov  9 13:36:53 1992  david d `zoo' zuhn  (zoo at

	* flex no longer needs the -S flag

Sat Nov  7 15:06:13 1992  david d `zoo' zuhn  (zoo at

        * ar.c (extract_file): utime needs a pointer to a utimbuf

	* handle -I includes better, adding $(BASEDIR)/bfd to
	the list (since some of the bfd/hosts/*.h files include other
	files from that directory)

Fri Nov  6 00:12:51 1992  John Gilmore  (

	* i960-pinsn.c (MEM_MAX, MEM_SIZ):  Set upper bound properly.

Thu Nov  5 03:37:15 1992  John Gilmore  (

	Clean up some old BFD ansification macros.

	* arsup.h, bucomm.h, objdump.h:  Remove EXFUN from binutils.
	It still remains as a local macro in gmalloc.c, which is derived
	from some other copy of GNU Malloc somewhere (FIXME).

	* ar.c, objdump.c, size.c:  Replace EXFUN with PROTO.  Make static
	fns really static.
	* arsup.h:  Declare extract_files.

Mon Nov  2 12:42:11 1992  Ian Lance Taylor  (

	* ar.c (extract_file): instead of checking USG: if POSIX_UTIME,
	use utime and utimbuf structure, otherwise if USE_UTIME use utime
	and array of two longs, otherwise use utimes.

Thu Oct 15 13:57:35 1992  Per Bothner  (

	* binutils.texi:  Document yesterday's changes to strip and copy.

Wed Oct 14 13:22:14 1992  Per Bothner  (

	* copy.c:  Re-do command-line parsing to use getopt_long().
	Add long option names.  Re-think option letters to be more
	* copy.c:  New function filter_symbols() for stripping only
	debug-symbols and/or local symbols.  Use these to support
	the previously-missing options of the old FSF strip.

Tue Oct 13 01:24:20 1992  John Gilmore  (

	* (host):  Use ${srcdir}/../bfd/ rather
	than repeating a copy of it here.

Wed Oct  7 12:53:52 1992  Ken Raeburn  (

	* copy.c (main): Even if is_strip, accept -d argument indicating
	alternate output format.  Needed by gdb for Nindy.

	* m68k-pinsn.c (print_insn_arg): Handle new "`" operand type.

Tue Oct  6 16:33:56 1992  Jeffrey Osier  (

	* binutils.texi:  added documentation for "copy"

Tue Oct  6 14:22:56 1992  Per Bothner  (bothner at PersSony)

	* (*clean rules): Some cleaning up.
	* (dist): Make diststuff in gprof for a dist.

	* ar.c (do_show_version):  New function.
	* ar.c (main):  Fix so "ar -V" works.

Thu Oct  1 22:44:45 1992  david d `zoo' zuhn  (zoo at

	* now uses the cpu-vendor-os triple instead of
	nested cases.

Fri Sep 25 22:41:08 1992  John Gilmore  (

	* i960-pinsn.c:  Change bzero to memset.
	* sparc-pinsn.c:  Change index to strchr.

Mon Sep 21 14:39:56 1992  Ian Lance Taylor  (

	* m68k-pinsn (print_insn_arg, fetch_arg): added support for
	operands to memory management instructions, from WRS.

Tue Sep 15 15:26:38 1992  Ian Lance Taylor  (

	* (install): if $(tooldir) exists, install nm and
	strip in $(tooldir)/bin.

Thu Sep  3 11:57:40 1992  Per Bothner  (

	*  Let's call it version 2.0.

Wed Sep  2 00:25:13 1992  Per Bothner  (

	*  Bump to version 0.98.
	* TODO, README:  Minor updates.

	*  Added mostlyclean, distclean rules,
	and cleaned up clean, realclean.

Sun Aug 30 21:18:59 1992  Ian Lance Taylor  (

	* map program names through program_transform_name
	when installing.

Sun Aug 30 18:09:03 1992  Per Bothner  (

	*  Bump to versions 1.97.90.
	* cplus-dem.c:  Removed.  Was nowhere used - and if some
	programs are changed to to demangling should now use the
	versions in libiberty.

Thu Aug 27 12:58:09 1992  Brendan Kehoe  (

	* add we32k

Mon Aug 24 14:53:42 1992  Steve Chamberlain  (

	* ar.c (map_over_members): if the element of the archive has a
	null name, fill it in.

	* nm.c (do_one_rel_file): only warn if a bfd's flags say there
	will be symbols and there aren't any.

Wed Aug 19 11:20:25 1992  Ian Lance Taylor  (

	* m68k-pinsn.c: handle new operand type 'r', introduced for cas2.

Tue Aug 18 20:45:48 1992  Rob Savoye  (

	* nm.c objdump.c: Added support for a +version (-V)
	to print the version number.

	* ar.c, copy.c: Added support for a -V option to print
	the version number.

Tue Aug 18 13:28:44 1992  Ian Lance Taylor  (

	* config/mh-apollo68v: removed -g from CC definition.

	* always create installation directories.

Mon Aug 17 18:33:41 1992  Per Bothner  (

	* m68k-pinsn.c:  Minor fix in style of output (don't use
	range to indicate floating point control registers).

Tue Aug 11 23:42:21 1992  Per Bothner  (

	* ar.c (main):  Don't *always* set the verbose flag!

Wed Aug  5 11:25:27 1992  Per Bothner  (

	* copy.c:  When is_strip (because it is invoked as the strip
	program), follow traditional argv processing:
	'strip file1 file2' now strips file1 and file2, rather
	than stripping file1 (as input), leaving output in file2.

Mon Jul 27 16:28:08 1992  Per Bothner  (

	* objdump.c (display_info, display_info_table):  Call
	bfd_set_format() on dummy bfd before using it (twice).
	* ar.c:  Make sure archive is created on command 'r'
	even when no elements are inserted.  (Clean up and
	simplify some non-working related code.)

Mon Jul 20 02:48:38 1992  D. V. Henkel-Wallace  (

	* hppa support doesn't assume hp OS (from sef).

Sat Jul 18 14:35:22 1992  david d `zoo' zuhn  (zoo at

	* recognize hppa hosts (bsd & hpux), error messages
	to stderr, not stdout

Fri Jul 17 18:39:44 1992  K. Richard Pixley  (

	* ar.1, binutils.texi, i960-pinsn.c, nm.1, objdump.1, ranlib.1,
	  size.1, sparc-pinsn.c, strip.1: removed rcsid's.

Thu Jul 16 16:55:24 1992  K. Richard Pixley  (

	* Makefile.dos: removed rcsid.

Thu Jul 16 08:23:07 1992  Steve Chamberlain  (

	* objdump.c (display_bfd): print state of BFD_IS_RELAXABLE too

Tue Jun 30 20:26:15 1992  D. V. Henkel-Wallace  (

	* Add program_suffix (parallel to program_prefix)

Thu Jun 25 04:52:45 1992  John Gilmore  (gnu at

	* nm.c (sorters):  Lint.  Remove excess whitespace.

Wed Jun 24 13:48:07 1992  Per Bothner  (

	* nm.c (valueof macro):  Add missing parentheses.
	(Their lack screwed up numeric_forward().)

Sun Jun 14 10:33:27 1992  John Gilmore  (gnu at

	* objdump.c (dump_elf_stabs):  Also dump .stab.index and
	.stab.excl sections.
	(dump_elf_stabs_1):  Split out main body of old dump_elf_stabs.
	* objdump.1, binutils.texi:  Document new sections dumped.

Fri Jun 12 22:23:35 1992  John Gilmore  (gnu at

	* size.c, objdump.c, bucomm.c:  Lint.

Thu Jun 11 01:19:06 1992  John Gilmore  (gnu at

	* objdump.c (dump_elf_stabs): New feature: --stabs prints out a
	.stab section from an ELF file.  Installed under #ifdef
	ELF_STAB_DISPLAY so it can be easily disabled, since it requires
	bfd-internals header files and such.
	* objdump.1, binutils.texi:  Update for --stabs.  Also fix
	objdump's doc to use -- rather than + for long options.
	(FIXME:  Not yet fixed everywhere in binutils.texinfo.)

Wed Jun 10 07:53:24 1992  Steve Chamberlain  (

	* objdump.c(display_info), patches from to print the table much more

Thu May 28 13:36:16 1992  Per Bothner  (

	* objdump.c:  Add another enum->int cast, for the sake of
	old compilers (such as PCC).

Wed May 27 13:01:44 1992  Per Bothner  (

	* arlex.l:  Don't include <sysdep.h> (unneeded conflicts).
	Add declaration of strdup().

Fri May 22 13:40:37 1992  Per Bothner  (

	*  Use srcdir instead of VPATH in ldgram/ldlex
	rules, since these are used when building a distribution.
	* (arlex.c):  Don't re-direct output, since that
	leaves a bogus output files if it fails.

	* arlex.l:  Make work with lex, for what it's worth.
	*  Better lex support.
	* (dist):  Generate flex and bison outputs
	for distribution.

Thu May 14 17:17:59 1992  K. Richard Pixley  (

	* get BISON definition right.

Fri May  8 07:47:08 1992  K. Richard Pixley  (

	* default TMPDIR to ".".

Thu May  7 12:34:50 1992  Roland H. Pesch  (

	* binutils.texi: add doc for ar command language.

Wed May  6 18:05:36 1992  Steve Chamberlain  (

	* arparse.y: make END call ar_end
	* arsup.c (ar_end): added, deletes temp file if archive session

Wed May  6 11:08:53 1992  K. Richard Pixley  (

	* use bison & flex from ../ if they exist.  Also,

	* remove temporary directory when finished.

Tue May  5 12:00:58 1992  Per Bothner  (

	*  Bump to version 1.97.
	* ar.c:  Declare errno for machines that need it.

Mon May  4 23:29:51 1992  John Gilmore  (

	* objdump.c (display_info):  Handle error cases without coredump.
	Close the dummy temporary file we open in the loop.
	* (arsup.o):  Add kludge to build with Sun Make.

Fri May  1 16:20:23 1992  K. Richard Pixley  (

	* added test-install target.

	* new file.

	* use sanity test on make check.

Tue Apr 21 13:38:37 1992  K. Richard Pixley  (

	* rework CFLAGS so that they can be passed on the
	  command line to make.  Remove MINUS_G.  Default CFLAGS to -g.

Wed Apr 15 14:33:07 1992  Steve Chamberlain  (

	* arsup.c, arsup.h, arparse.y, arlex.l: support for archive
	scripting language.

Fri Mar  6 21:54:53 1992  K. Richard Pixley  (

	* added check target.

Thu Mar  5 21:35:49 1992  K. Richard Pixley  (

	* added clean-info target.

Tue Mar  3 15:36:37 1992  K. Richard Pixley  (

	* remove $(COPY_PROG) from PROGS.  It shouldn't be
	  installed. added tooldir and program_prefix.

Wed Feb 26 18:04:40 1992  K. Richard Pixley  (

	*, removed traces of namesubdir,
	  -subdirs, $(subdir), $(unsubdir), some rcs triggers.  Forced
	  copyrights to '92, changed some from Cygnus to FSF.

Sun Feb 16 12:53:02 1992  Per Bothner  (bothner at

	*  Bump version to 1.96, and remove -beta
	suffix from distribution name.
	* m68k-pinsn.c:  New macro COERCE_SIGNED_CHAR to extract
	the signed value of a character (even if chars are unsigned).
	* sparc-pinsn.c:  Add new operand types.

Thu Feb  6 12:14:19 1992  Steve Chamberlain  (sac at

	* objdump.c (disassemble_data): don't print a section's contents
	if it's not loadable (eg bss)

Tue Jan 28 11:11:06 1992  Steve Chamberlain  (sac at

	* m68k-pinsn.c (print_insn_arg): fixed so that -ve branch
	displacements don't get printed as large +ve ones.

Fri Jan 24 14:47:53 1992  Steve Chamberlain  (sac at

	* copy.c, nm.c, objdump.c, size.c : changed to use the
	new reloc scheme.

Mon Dec 30 18:34:41 1991  Per Bothner  (bothner at

	* bucomm.c (print_arelt_descr):  Tweek the output format
	so that 'ar tv' output follows Posix 1003.2/D11.
	Output is now also identical to Sun's (except __.SYMDEF).

Mon Dec 30 06:09:53 1991  John Gilmore  (gnu at

	*  Make `make' output more readable.

Wed Dec 18 15:04:45 1991  Per Bothner  (bothner at

	*  Bump to version 1.94.

Wed Dec 11 16:48:09 1991  Steve Chamberlain  (sac at

	* ar.c: added "b" to fopens for dos
	* configdj.bat, makefile.dos new files from DJ

Tue Dec 10 04:07:26 1991  K. Richard Pixley  (rich at

	* infodir belongs in datadir.

Sat Dec  7 17:09:37 1991  Steve Chamberlain  (sac at

	* bucomm.h: created to hold prototypes of bucomm.c
	* objdump.h: created to hold prototyes of objdump.c
	* am29k-pinsn.c: include objdump.h
	* ar.c: include bucomm.h, get ar.h from the right place and
	include libbfd.h
	* bucomm.c: defunize bfd_fatal
	* copy.c: include bucomm.h, lint.
	* i960-pinsn.h: include bucomm.h
	* m68k-pinsn.h: lint
	* nm.c: include bucomm.h, lint
	* objdump.c: lint
	* sparc-pinsn.c: include objdump.h

Fri Dec  6 23:02:14 1991  K. Richard Pixley  (rich at

	* added standards.text support.  install using

	* configure now does all of it's work from objdir so
	  make file existence tests against ${srcdir}.

Thu Dec  5 22:46:22 1991  K. Richard Pixley  (rich at

	* idestdir and ddestdir go away.  Added copyrights
	  and shift gpl to v2.  Added ChangeLog if it didn't exist. docdir
	  and mandir now keyed off datadir by default.

Wed Dec  4 22:42:03 1991  Per Bothner  (bothner at

	*  Bump to version 1.93.
	*  Add make-strip.o:maybe-strip.c dependency
	for make versions that provide half-baked VPATH-support (e.g. Sun's).
	* size.c:  Improvements suggested by
	"david d [zoo] zuhn" <>:
	- Don't emit (Berkeley) headers if no files were found.
	- Return a non-zero return code on failure.

Sat Nov 30 21:34:19 1991  Steve Chamberlain  (sac at

	Changes due to include file renaming:
	* am29k-pinsn.c: a29k-opcode.h	-> opcode/a29k.h
	* sparc-pinsn.c: sparc-opcode.h	-> opcode/sparc.h
	* m68k-pinsn.c:	 m68k-opcode.h	-> opcode/m68k.h
	* nm.c:		 stab.gnu.h	-> aout/stab_gnu.h

Tue Nov 19 19:20:43 1991  Per Bothner  (bothner at

	* README:  Mention MINIMIZE flag for bfd's make.

Mon Nov 18 12:05:37 1991  Per Bothner  (bothner at

	* README:  Various improvements.

Sun Nov 17 23:40:59 1991  Per Bothner  (bothner at

	*  Bump to version 1.92.
	* version.c,  Get version string from Makefile.
	* copy.c, is-strip.c, not-strip.c, maybe-strip.c,
	Make the same change that we earlier did for ar/ranlib:
	Generate two different binaries for strip and copy and use
	a global variable with different values to distinguish
	ostrip from copy.  (-1 means to use argv[0] to decide,
	so you can get the old behavior, but it is no longer the default).
	* copy.c (copy_file):  Set EXEC_P of output bfd if input is so.
	* copy.c (main):  If is_strip==-1, compare last 5 chars
	of argv[0], not the whole path.
	* copy.c (main): Return 0, not 1.
	* copy.c (setup_sections):  Fix due to change in bfd_make_section
	now failing if asked for a duplicate section.
	* strip.c, ostrip.c:  Removed obsolete files.
	* ar.c, not-ranlib.c, maybe-ranlib.c:
	Change encoding of is_ranlib variable to be consistent
	with is_strip for strip.copy (i.e -1 to means use argv[0]).

Thu Nov 14 20:11:02 1991  Per Bothner  (bothner at

	* version.c (program_version): Update to version 1.92.

Tue Nov 12 16:17:53 1991  Per Bothner  (bothner at

	* ar.c (get_pos_bfd):  Previous fix was missing a "break".

Thu Nov  7 08:55:56 1991  Steve Chamberlain  (sac at

	* am29k-pinsn.c: Fixed bug in mtacc, dmac and fmac instruction
	encodings. (Thaks to David Wood)

Sun Nov  3 14:50:23 1991  Per Bothner  (bothner at

	* ($(DIST_NAME).tar.Z), TODO:  Various fixes.
	* ar.c (get_pos_bfd): Fix to handling of before/after
	positioning options.
	* bucomm.c (fatal):  MISSING_VFPRINTF is no longer an issue,
	since libiberty contains vfprintf etc if otherwise missing.
	* m68k-pinsn.c (print_insn_arg):  Support BB/BW/BL
	type operands, as used by branch instructions.
	* nm.c:  Delegate printing of symbols to BFD,
	by using bfd_print_symbol to do the formatting.

Mon Oct 28 11:20:47 1991  Steve Chamberlain  (steve at

	* ar.c (write_archive.c): added unlink before rename since some
	systems can't rename onto an existant file.

Mon Oct 21 09:47:23 1991  Steve Chamberlain  (steve at

	* nm.c: now doesn't crash if a symbol with no section and no
	SEC_ABS appears.

Thu Oct 17 15:25:50 1991  Per Bothner  (bothner at

	*, version.c:  Bump to version 1.91.

Wed Oct 16 11:45:36 1991  Per Bothner  (bothner at

	*, ar.c, bucomm.c, copy.c, cplus-dem.c, filemode.c,
	i960-pinsn.c, m68k-pinsn.c, nm.c, objdump.c, size.c, sparc-pinsn.c,
	* strip.c: Add or update Copyright notice.
	* TODO:  Add note on 'nm -a'.
	* version.c: Update version number to 1.90.
	* Fix making of documentation for dist.

Tue Oct 15 00:17:17 1991  Per Bothner  (bothner at

	* README: New file.
	* New kludgy rules for making a tarfile.
	* Fix bindir path.

Mon Oct 14 17:34:29 1991  Roland H. Pesch  (pesch at

	* add targets,

Fri Oct 11 22:44:21 1991  John Gilmore  (gnu at

	*  Avoid Sun Make VPATH bugs by adding dependencies.

Fri Oct 11 12:51:33 1991  Roland H. Pesch  (pesch at

	* add target ""

	* binutils.texinfo: minor restructuring for texi2roff comfort.

Fri Oct 11 04:12:28 1991  John Gilmore  (gnu at

	Restructure configuration scheme for bfd, binutils, ld.

	*  Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
	Change some config names to match other dirs.
	* *.c:  Include bfd.h before sysdep.h, so ansidecl and PROTO()
	get defined first.
	*  Use -I. to get sysdep.h.

Wed Oct  9 22:42:56 1991  Per Bothner  (bothner at

	* nm.c (print_symbols):  Handle NULL name field of symbol.
	* Removed spurious comment.

Tue Oct  8 16:55:03 1991  Roland H. Pesch  (pesch at

	* binutils.texinfo: minor typos, phrasing, formatting fixes.

Tue Oct  8 15:13:20 1991  Per Bothner  (bothner at

	* Get host file from ../bfd/config, not config.
	* config/*: Remove config directory and its files.

Tue Oct  8 13:58:59 1991  Roland H. Pesch  (pesch at

	* new targets binutils.dvi,

	* binutils.texinfo: remove most remaining FIXME's, delete
	references to __.SYMDEF by name

Tue Oct  8 10:23:44 1991  Steve Chamberlain  (steve at

	* objdump.c (print_address) Print addresses nicely.

Mon Oct  7 11:31:05 1991  Per Bothner  (bothner at

	* ar.c,, new files {is,not,maybe}-ranlib.c:
	Make two different binaries for ar and ranlib, instead of
	distinguishing them at run time using argv[0].
	(Old behavior is still available if you "make ar_with_ranlib",
	but it is not the default.)
	* (new):  An alternative one-line
	shell implementation of ranlib.

Fri Oct  4 21:49:44 1991  John Gilmore  (gnu at

	* objdump.c:  Cope with renames of a few BFD types & enums.

Fri Oct  4 19:08:09 1991  Roland H. Pesch  (pesch at

	* binutils.texinfo: add new file (rudimentary docn)

Mon Sep 30 12:30:39 1991  Per Bothner  (bothner at

	* config/hmake-news: Add new file (for Sony NEWSOS3).
	* bucomm.c (fatal):  Conditionally compile fatal() depending on
	MISSING_VFPRINTF, and don't confuse the issue with NO_VARARGS.
	* objdump.c (dump_headers):  Trivial output format change.
	* objdump.c (display_info): Loop over integers, not enums,
	to appease old compilers.

Mon May 20 16:14:07 1991  Steve Chamberlain  (steve at

        *objdump.c *nm.c *copy.c: Changed some types to work with 64 bit
	object files.

Thu May 16 16:06:55 1991  Steve Chamberlain  (steve at
     from bother
	* objdump.c (print_address): Make disasembled output more
	consistent with gdb and as: Add 0x when printing hex.
	Don't print extra leading zeros.
	Attempt to not print "filename.o".
	* objdump.c: Add some enum-to-int casts to accommodate old compilers.

Fri May  3 22:21:44 1991  John Gilmore  (gnu at

	* copy.c:  Change =& constructs to = &, since they confuse older
	C compilers.

Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never