3 * objcopy.c (filter_symbols): Don't strip global symbols in
4 relocatable object files.
8 * size.c (usage): Associate short options with corresponding long
9 option to give a clue as to their function.
13 * size.c (main): Accept and ignore `-f' option.
17 * bucomm.h (gettext, dgettext, dcgettext, textdomain,
18 bindtextdomain): Replace defines with those from intl/libgettext.h
19 to quieten gcc warnings.
23 * nlmconv.c (temp_filename): Removed.
25 * nlmconv.c (link_inputs): Use make_temp_file () instead of
27 * objdump.c (display_target_list): Likewise.
28 (display_info_table): Likewise.
32 * objcopy.c (setup_section): Add const and gettext calls for err.
36 * readelf.c (get_osabi_name): Handle ELFOSABI_NONE instead of
37 ELFOSABI_SYSV. Also handle ELFOSABI_NETBSD, ELFOSABI_HURD,
38 ELFOSABI_SOLARIS, ELFOSABI_MONTEREY, ELFOSABI_IRIX,
39 ELFOSABI_FREEBSD, ELFOSABI_TRU64, ELFOSABI_MODESTO
44 * coffgrok.c: Add ATTRIBUTE_UNUSED as appropriate.
46 * sysdump.c: Likewise.
50 * readelf.c (guess_is_rela): AVR uses RELA relocations.
51 (get_machine_name): machine name for EM_AVR added.
56 * Makefile.am (readelf.o): Add elf/ia64.h.
57 * Makefile.in: Rebuild.
58 * readelf.c: Include elf/ia64.h.
59 (guess_is_rela, dump_relocations): Handle EM_IA_64.
63 * objdump.c (disassemble_data): Set octets per byte *after*
64 resolving arch/mach for binary files.
68 * arlex.l: Add directives to increase lex buffer size.
70 * objdump.c, readelf.c: Don't include strarg.h or varargs.h. They are
71 already included by bucomm.h.
75 * readelf (dynamic_segment_mips_val): Call `sprintf', not
76 `strftime' since strftime is not available on all systems.
77 (process_mips_specific): Ditto.
81 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
82 --enable-build-warnings option.
83 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
84 * Makefile.in, configure: Re-generate.
88 * addr2line.c: Update copyright.
89 * objcopy.1: Likewise, and title.
90 * strings.1: Likewise.
92 * version.c (print_version): Add 2000.
94 * rddbg.c (read_section_stabs_debugging_info): Don't use
95 bfd_size_type for strx to avoid printf problems if BFD64.
97 * bucomm.c: (report): Remove `static'.
98 Move inclusion of stdarg.h/vararg.h from here.
100 (CONST): Change all occurences to const.
101 (report): Declare it.
102 (bfd_fatal): Add ATTRIBUTE_NORETURN.
103 (fatal): Add ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN.
104 (non_fatal): Add ATTRIBUTE_PRINTF_1.
106 * ar.c (main): Use fatal or non_fatal instead of fprintf.
107 Correct a typo in an error message.
108 (do_quick_append): Use non_fatal instead of fprintf.
109 (move_members): Use fatal instead of fprintf, exit.
110 * coffdump.c (main): Same here.
112 * dlltool.c (display): Delete.
114 (inform): Use `report' instead of `display'.
115 (rvaafter): Remove trailing \n from fatal error msg.
118 (yyerror): Replace `warn' with `non_fatal', and remove \n.
119 (def_name): Likewise.
121 (scan_all_symbols): Likewise.
122 (gen_lib_file): Likewise.
123 (def_library): Likewise. Remove extra program_name too.
124 (run): Remove \n from inform strings.
125 (scan_drectve_symbols): Likewise.
126 (add_excludes): Likewise.
127 (scan_open_obj_file): Likewise.
128 (gen_exp_file): Likewise.
129 (gen_lib_file): Likewise.
130 (process_duplicates): Likewise.
132 * Makefile.am (dllwrap_SOURCES): Add version.c.
133 * dllwrap.c (program_version): Delete.
134 (print_version): Delete.
135 (display): Always print trailing \n.
137 (delete_temp_files): Use warn instead of fprintf. Use gettext.
140 (usage): gettext'ify.
141 (long_options): Add missing initialisers.
143 * nlmconv.c (main): Use fatal/non_fatal instead of fprintf.
144 (select_output_format): Likewise.
145 (powerpc_mangle_relocs): Likewise.
146 (link_inputs): Likewise.
148 * nm.c (set_print_radix): Use fatal instead of fprintf, exit.
149 (set_output_format): Likewise.
150 (main): Use non_fatal instead of fprintf.
151 (display_rel_file): Likewise.
153 * objdump.c (slurp_symtab): Use non_fatal instead of fprintf.
154 (slurp_dynamic_symtab): Same here.
155 (disassemble_data): And here.
156 (read_section_stabs): And here.
157 (read_section_stabs): And here.
158 (dump_bfd): And here.
160 (objdump_sprintf): Use fatal instead of fprintf, exit.
161 (disassemble_data): Same here.
163 * rdcoff.c (parse_coff_type): Use non_fatal instead of fprintf.
164 (parse_coff_struct_type): Same here.
165 (parse_coff_enum_type): And here.
166 (parse_coff): And here.
167 * rddbg.c (read_debugging_info): And here.
168 * size.c (main): And here.
169 * windres.c (format_from_name): And here.
170 * wrstabs.c (stab_write_symbol): Here too.
171 (write_stabs_in_sections_debugging_info): And here.
172 (stab_int_type): And here.
173 (stab_struct_field): And here.
174 (stab_typdef): And here.
176 * rescoff.c (read_coff_rsrc): Use fatal instead of fprintf, exit.
177 * srconv.c (main): Same here.
178 * strings.c (main): And here.
179 (integer_arg): And here.
180 * sysdump.c (main): And here.
184 * objdump.c (dump_section_header): Print CLINK and BLOCK flags.
188 * readelf.c (decode_location_expression): Loop through multiple
190 (read_and_display_attr): Pass in length.
192 * readelf.c (read_and_display_attr): Add CU offset to references.
193 (display_debug_info): Pass it in.
197 * readelf.c (decode_ARM_machine_flags): New function.
198 (get_machine_flags): Call decode_ARM_machine_flags for ARM
201 (get_machine_name): Catch EM_AVR
205 * binutils.texi: Remove optional `=' from long options that have
206 an `=' in the argument.
207 * objcopy.1: Here too. Remove extra space on discard-all.
209 * binutils.texi (objcopy): Mention --redefine-sym.
210 * objcopy.1: Here too.
213 * objcopy.c (parse_flags): Split off flag names from error message
214 gettext as they are not translated.
215 (copy_main): Similarly split off option name for --add-section,
216 --set-section-flags, --change-section-vma, --change-section-lma
218 Some white space changes.
221 * objcopy.c (struct redefine_node): New.
222 (redefine_sym_list): New.
223 (redefine_list_append): New.
224 (lookup_sym_redefinition): New.
225 (OPTION_REDEFINE_SYM): New.
226 (copy_options): Add --redefine-sym option.
227 (copy_usage): Mention it.
228 (filter_symbols): Rename symbols on redefine_sym_list.
229 (copy_object): Call filter_symbols if redefine_sym_list != NULL.
230 (copy_main): Handle OPTION_REDEFINE_SYM.
234 * readelf.c (process_symbol_table): Correctly read in symbol
235 versioning information.
239 * po/binutils.pot: Regenerate.
241 * addr2line.c (usage): Restore translated part of bug string.
242 * ar.c (usage): Likewise.
243 * nlmconv.c (show_usage): Likewise.
244 * nm.c (usage): Likewise.
245 * objcopy.c (copy_usage): Likewise.
246 (strip_usage): Likewise.
247 * objdump.c (usage): Likewise.
248 * readelf.c (usage): Likewise.
249 * size.c (usage): Likewise.
250 * strings.c (usage): Likewise.
251 * windres.c (usage): Likewise.
253 * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
254 (DEP): Quote when passing vars to sub-make. Add warning
256 (DEP1): Rewrite for "gcc -MM".
257 (CLEANFILES): Add DEP2.
259 * Makefile.in: Regenerate.
263 * Makefile.am (GENERATED_HFILES): Add rcparse.h
264 (arparse.h): Depend on arparse.c
265 (defparse.h, nlmheader.h, rcparse.h, sysinfo.h): Similarly.
269 * size.c (usage): Use REPORT_BUGS_TO.
273 * bucomm.h: #include "bin-bugs.h"
274 * addr2line.c (usage): Use REPORT_BUGS_TO.
275 * ar.c (usage): Likewise.
276 * nlmconv.c (show_usage): Likewise.
277 * nm.c (usage): Likewise.
278 (OPTION_TARGET): Define.
279 (long_options): Use OPTION_TARGET rather than 200.
282 * objcopy.c (copy_usage): Use REPORT_BUGS_TO.
283 (strip_usage): Likewise.
284 * objdump.c (usage): Likewise.
285 * readelf.c (usage): Likewise.
286 * strings.c (usage): Likewise.
287 * windres.c (usage): Likewise.
291 * readelf.c: Include sys/types.h before sys/stat.h for ultrix.
295 * rddbg.c (read_section_stabs_debugging_info): Catch out of range
296 string offsets in corrupt stabs entries.
300 * readelf.c: Include elf/avr.h
301 (dump_relocations): Add EM_AVR case.
305 * strings.1: Correct '-bytes' to '--bytes'.
309 * Makefile.am (install-exec-local): Depend on
310 install-binPROGRAMS for parallel make.
311 * Makefile.in: Regenerated.
316 * readelf.c (process_dynamic_segment): Add cast to make sure
317 argument to %* is int.
321 * configure.in (AC_SEARCH_LIBS): Pass m, not -lm.
325 * configure.in: Add arm-wince, mips-pe and sh-pe targets.
326 * configure: Regenerate.
328 * dlltoolc.: Add support for sh-pe and mips-pe targets.
329 * rescoff.c: Add support for sh-pe and mips-pe targets.
333 * readelf.c (get_osabi_name): Handle ELFOSABI_LINUX.
337 * readelf.c (process_symbol_table): Remove use of ELF_ST_OTHER.
342 * readelf.c (process_version_sections): Add casts to make sure
343 argument to %* is an int.
344 (process_mips_specific): Add casts to make printf arguments match
349 * objdump.c (dump_section_header): Change `opb' to unsigned.
350 (find_symbol_for_address): Same here.
351 (disassemble_data): And here. Change `addr_offset',
352 `stop_offset', `nextstop_offset' to unsigned long.
353 (dump_data): Change opb to unsigned.
357 * resrc.c: Remove unmatched #if for cygwin.
361 * binutils.texi: Document the change of flavor name from atpcs-special
362 to special-atpcs to prevent name conflict in gdb.
366 * objdump.c (show_line): Fix bug preventing printing of the very
367 first line (line zero) of a file when interlisting source and
368 assembly. Added option to print entire context from start of file
369 when the first line from that file is encountered.
373 * binutils/objdump.c (dump_section_header, find_symbol_for_address,
374 show_line, disassemble_bytes, disassemble_data, dump_data):
375 distinguish between octets and bytes.
379 * nm.c (print_symbol_info_bsd): Use bfd_is_undefined_symclass to
380 check to unresolved symbols.
381 (print_symbol_info_sysv): Ditto.
382 (print_symbol_info_posix): Ditto.
384 * binutils.texi: Document new 'V' symclass flag for nm.
388 * binutils.texi (objdump): Document new ARM specific
389 disassembler options.
391 * objdump.c (usage): Call disassembler_usage().
395 * readelf.c (get_dynamic_flags): Return buff.
396 (process_dynamic_segment): Don't pass error strings to printf
398 (read_and_display_attr): Use lx and ld to print longs.
399 (process_corefile_note_segment): Cast bfd_vma to unsigned long
405 * readelf.c (get_osabi_name): Recognise ELFOSABI_ARM.
409 * debug.c (debug_name_type): Return DEBUG_TYPE_NULL rather than
411 (debug_tag_type): Here too.
412 * ieee.c (ieee_builtin_type): And here.
413 * stabs.c (parse_stab_type, parse_stab_array_type): And here.
417 * readelf.c (get_machine_name): Change EM_S370 to return "IBM
422 * readelf.c (get_dynamic_type): Remove DT_ENCODING.
426 * readelf.c (get_note_type): Display NT_WIN32PSTATUS notes.
430 * windres.c (long_options): Add --use-temp-file and
431 --no-use-temp-file options.
435 * windres.h: Update read_rc_file prototype.
437 * resrc.c (cpp_temp_file): New static variable.
438 (istream_type): New static variable.
439 (close_pipe): Delete function.
440 (run_cmd): New static function.
441 (open_input_stream): New static function.
442 (close_input_stream): New static function.
443 (look_for_default): Handle DOS directory separator. Use
444 open_input_stream instead of popen.
445 (read_rc_file): Likewise.
447 * binutils.texi: Document --use-temp-file, --no-use-temp-file
452 * dlltool.c (create_compat_implib): New variable.
454 (make_one_lib_file): Use.
455 (long_options): Add --compat-implib option.
459 * dllwrap.c (enum target_type): Rename MINGW32_TARGET to MINGW_TARGET.
460 (main): Use. Don't look for "32" in cygwin and mingw target names.
464 * binutils.texi: Document new, ARM specific disassembler
465 command line switch "-M force-thumb".
469 * readelf.c: Update with new constants added by Oct 4, 1999
471 (guess_is_rela): Add new machine codes, but leave
472 rel type undetermined.
473 (get_machine_name): Add new machine codes.
474 (get_section_type_name): Add new section types.
475 (get_elf_section_flags): New funciton: Decode section flags.
476 (process_section_headers): Call get_elf_section_flags() in
477 order to decode flags in section header.
478 (get_dynamic_flags): New function: Decode dynamic section
480 (process_dynamic_section): Display flags (if present).
481 (get_symbol_type): Add STT_COMMON.
482 (get_symbol_visibility): New function: Decode a symbol's
484 (process_symbol_table): Call get_symbol_visibility().
485 (get_note_type): Add NT_PRXFPREGS.
489 * strings.c (main): Correct handling of numeric argument.
493 * dlltool.c (mtable): mcore how_jtab_roff is 4 bytes into the
498 * dlltool.c (mtable): Stop compile time warnings about missing
500 (yyerror): Stop compile time warnings about unused paramater.
501 (INIT_SEC_DATA): New macro: initialise an entry in the secdata
503 (secdata): Stop ccompile time warnings about uninitialised
505 (dtab): Stop compile time warnings about unused parameter.
506 (long_options): Stop compile time warning about missing
511 * readelf.c (print_vma): Support native 64bit ELF systems.
515 * dlltool.c (mtable): Add epoc-arm specific entry.
516 Make default arm entry pass -mpacs-26 to assembler.
517 (flush_page): Do not mangle null entries.
521 * readelf.c: Fix compile time warnings. Support more than 999
526 * readelf.c (enum print_mode): New type.
527 (print_vma): New function.
528 (dump_relocations): Use print_vma to display bfd_vma values.
529 (process_file_header): Use print_vma to display bfd_vma values.
530 (process_program_headers): Use print_vma to display bfd_vma values.
531 (process_section_headers): Use print_vma to display bfd_vma values.
532 (dynamic_segment_parisc_val): Use print_vma to display bfd_vma values.
533 (process_dynamic_segment): Use print_vma to display bfd_vma values.
534 (process_symbol_table): Use print_vma to display bfd_vma values.
535 (process_mips_specific): Use print_vma to display bfd_vma values.
539 * readelf.c (process_note): Change arg from Elf_External_Note
540 to Elf32_Internal_Note, which also turns the function body
541 into little more than a call to printf.
542 (process_corefile_note_segment): Substantially rewritten
543 to properly handle case where target and host are different
544 endianness, handle note sections with padding, and add some
545 cruft to handle notes with unterminated name data.
549 * objcopy.c (copy_usage): Reformat.
550 (strip_usage): Reformat.
554 * objdump.c (usage): Overhaul output: One line per switch.
555 Textual description of each switch. Distinguish between
556 optional switches and required switches.
557 (long_options): Add 'g', 'G' and 'z' short options.
558 (main): Distinguish between optional switches and required
561 * binutils.texi: Add -g -G and -z short options for
562 --debugging, --stabs and --disassemble-zeroes.
566 * dlltool.c (flush_page): Clip short values to prevent warnings
568 Change default mcore machine name to 'mcore-le' and rename
569 big-endian version to 'mcore-be'.
573 * objdump.c (display_bfd): Break into two functions. The
574 actual dumping code moves to dump_bfd. If bfd is not
575 unambiguously recognized as a bfd_object, attempt to dump
577 (dump_bfd): New function.
581 * dlltool.c (assemble_file): Remove spurious test of exp_name.
585 * dlltool.c (struct mac): Add new field 'how_default_as_switches'.
586 (mtable): Initialise new field. Some machines have a non empty
587 string for this field.
588 (HOW_BFD_TARGET): Undefine and replace with...
589 (HOW_BFD_READ_TARGET): New macro: bfd target to use when opening a
590 file for reading. This is set to 0 so that any recognisable bfd
592 (HOW_BFD_WRITE_TARGET): New macro: bfd target to use when opening
593 a file for writing. This is set to the target machine type.
594 (ASM_SWITCHES): New macro: default switches to use when assembling
596 (assemble_file): New function: Assemble a source file into a
597 destination object file.
598 (gen_exp_file): Use assemble_file to create the exp file.
599 (make_one_lib_file): Use assemble_file to create the lib file.
600 Open output file use HOW_BFD_WRITE_TARGET and input files using
602 (make_head): Use assemble_file to create the head file.
603 (make_tail): Use assemble_file to create the tail file.
604 (gen_lib_file): Open output file use HOW_BFD_WRITE_TARGET.
608 * ar.c (normalize): Fix full_pathname code.
612 * binutils.texi: Some rewording and clarifications.
616 * readelf.c (dynamic_segment_parisc_val): Print 0 for DLD_FLAGS if
618 (process_symbol_table): Don't print histogram if hash table is empty.
622 * readelf.c (get_parisc_dynamic_type): Handle DT_HP_GST_* values.
626 * readelf.c (get_symbol_type): Add support for HPUX and PARISC
627 specific symbol types.
629 * readelf.c: Add HPUX and PARISC extensions to dynamic and program
630 header table printing.
632 * readelf.c (get_machine_flags): Add handling of PARISC.
636 * dlltool.c (scan_drectve_symbols): Handle type tags in exported
638 (scan_filtered_symbols): Likewise.
642 * resrc.c (write_rc_rcdata): Fix local variable shadowing
643 problem. If RCDATA_BUFFER data can be read as strings, modify
644 code to print the strings as comments.
645 * resres.c: Add casts to avoid warnings.
646 (write_res_data, read_res_data): Don't put the program name in the
647 error message; fatal already puts it there.
651 * configure.in (Canonicalization of target names): Remove adding
652 ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14
653 generates $ac_config_sub with a ${CONFIG_SHELL} already.
654 * configure: Regenerate.
658 * ar.c (main): Clear output_file if we don't change the archive.
659 (delete_members, replace_members): Likewise.
663 * objdump.c (dump_headers): If wide_output, print Flags header.
665 * objdump.c (dump_section_header): Print any comdat information.
667 * objcopy.c (parse_flags): Handle "noload", "debug", and "share".
668 * binutils.texi, objcopy.1: Document new flags.
670 * ar.c (counted_name_mode): New static variable.
671 (counted_name_counter): New static variable.
672 (map_over_members): Handle counted mode.
673 (usage): Mention N modifier.
674 (main): Handle N modifier.
675 (delete_members): Handle counted mode.
676 * binutils.texi, ar.1: Document N modifier.
678 * ar.c (print_contents): Change printing of member name for
681 * ar.c (output_filename): Make const.
682 (open_inarch): If creating a new empty archive, set
687 * ar.c (full_pathname): New static variable.
688 (map_over_members): Call normalize on command line parameter.
689 (usage): Mention P modifier.
690 (normalize): If full_pathname is true, don't do anything.
691 (main): Accept P modifier.
692 (delete_members): Call normalize on command line parameter.
693 * binutils.texi, ar.1: Document P modifier.
697 * binutils.texi: Add info dir entries for all programs described
698 here. Fix arguments of @var to not contain punctuation.
702 * nm.c (print_symbol_info_bsd): Check for 'w' as well as 'U'.
703 (print_symbol_info_sysv): Likewise.
704 (print_symbol_info_posix): Likewise.
708 * readelf.c: Include "elf/pj.h".
709 (dump_relocations): Handle EM_PJ.
710 (get_machine_name): Likewise.
711 (get_machine_flags): Likewise.
715 * readelf.c (get_note_type): New function: Decode the e_type
717 (process_note): New function: Display the contents of a core note.
718 (process_corefile_note_segment): New function.
719 (process_corefile_note_segments): New function.
720 (process_corefile_contents): New function.
721 (process_file): Add call to process_corefile_contents.
722 (parse_args): Add parsing of -n/--notes command line switch.
723 (usage): Document new command line switch.
725 * binutils.texi: Documemnt new command line switch to readelf.
729 * binutils.texi (Bug Reporting): Clarify that large files should
730 not be sent to bug-gnu-utils.
734 * readelf.c (process_extended_line_op): New parameter pointer_size,
735 read the address according to pointer_size.
736 (debug_line_pointer_size): New global to indicate the
737 size of address in .debug_line section.
738 (debug_displays, prescan_debug_info): Prescan the .debug_info section
739 to record the size of address in `debug_line_pointer_size'.
740 (process_section_contents): Before dumping any section, execute
741 the pre-scan operation defined for some debug sections.
745 * readelf.c (display_debug_lines): Use i-1 not i in standard_opcodes
747 (display_debug_aranges): New local excess. Use for calculating padding
748 and add that into ranges. Break from loop only if length is also 0.
752 * readelf.c (display_debug_lines, case DW_LNS_const_add_pc): Multiply
753 adv by info.li_min_insn_length.
757 * readelf.c (get_sparc64_dynamic_type): New function.
758 (get_dynamic_type): Use it.
762 * readelf.c (display_debug_lines, case default): Change second line
763 setting adv to use = not +=.
767 * dlltool.c: Added more examples to the comment at the start.
771 * dlltool.c (make_head): Only emit interworking directive if
776 * readelf.c (process_abbrev_section): Handle standard-conforming
777 single zero at the end of the section.
781 * objdump.c (exit_status): New static variable.
782 (nonfatal): New static function.
783 (disassemble_data): Set exit_status on error.
784 (read_section_stabs): Likewise.
785 (display_bfd): Likewise. Call nonfatal rather than bfd_nonfatal.
786 (display_file): Call nonfatal rather than bfd_nonfatal.
787 (display_target_list, display_info_table): Likewise.
788 (main): Return exit_status rather than 0.
792 * objdump.c (dump_section_header): Update for renaming of
793 SEC_SHORT to SEC_SMALL_DATA. Print SEC_SHARED flag.
796 * binutils.texi: Document cxxfilt as MS-DOS name for c++filt.
798 * configure.in: Define and substitute DEMANGLER_NAME.
799 * Makefile.am (DEMANGLER_PROG): Set to cxxfilt.
800 (man_MANS): Use DEMANGLER_NAME rather than DEMANGLER_PROG.
801 (bin_PROGRAMS): Remove $(DEMANGLER_PROG).
802 (noinst_PROGRAMS): Add $(DEMANGLER_PROG).
803 (cxxfilt_SOURCES): Rename from c__filt_SOURCES.
804 (cxxfilt_LDADD): Rename from c__filt_LDADD.
805 ($(DEMANGLER_NAME).1): Rename from $(DEMANGLER_PROG).1. Use
806 DEMANGLER_NAME rather than DEMANGLER_PROG in substitution.
807 (MOSTLYCLEANFILES): Use DEMANGLER_NAME rather than
809 (install-exec-local): When installing noinst_PROGRAMS, change
810 cxxfilt to $(DEMANGLER_NAME).
811 * configure, Makefile.in: Rebuild.
813 * Makefile.am: Rename .dep* files to DEP*. Change DEP variable to
815 * Makefile.in: Rebuild.
819 * Makefile.am (YACC): If bison is not in the source tree, use
820 @YACC@ rather than bison -y.
821 (LEX): If flex is not in the source tree, use @LEX@ rather than
823 * configure.in: Build dlltool for i[3-6]86-*-interix.
824 * Makefile.in, configure: Rebuild.
829 * configure.bat: Remove; obsolete.
833 * readelf.c (get_machine_flags): Print EF_SPARC_SUN_US3.
837 * configure.in: Bump version number to 2.9.5.
838 * configure: Rebuild.
842 * objdump.c (dump_section_header): Print SEC_SHORT.
846 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
847 as appropriate. Add variable initializations. Add casts.
848 * objdump.c (disassemble_bytes): Change j to bfd_vma.
849 * readelf.c (process_syminfo): Change i to unsigned int.
850 (display_debug_info): Change abbrev_number to unsigned long.
851 (process_mips_specific): Change fcnt to size_t.
855 * readelf.c: Only support decoding 64bit ELF files if the compiler
856 supports a 64 bit data type.
857 Add -I equivalent for --histogram.
858 Add -A command-line option to display architecture specific information.
862 * readelf.c (guess_is_rela): Sparcv9 and v8plus use rela.
863 (dump_relocations): Use ELF64_R_TYPE_ID for Sparc, for R_SPARC_OLO10
864 print the secondary addend.
865 (get_machine_flags): Print Sparc machine flags.
866 (get_symbol_type): Print STT_REGISTER.
870 * stabs.c (parse_stab_type): Fix handling of template names with
871 template parameters containing `::'.
872 (stab_demangle_type): Handle a qualified name in a pointer to
877 * Makefile.am (dlltool_SOURCES): Add dyn-string.c.
878 * Makefile.in: Rebuild.
882 * configure.in (HAVE_EXECUTABLE_SUFFIX): Define.
883 * dlltool.c (look_for_prog): Use HAVE_EXECUTABLE_SUFFIX.
884 * dllwrap.c (look_for_prog): Likewise.
885 * resrc.c (look_for_default): Likewise.
886 * configure, config.in: Rebuild.
891 * configure.in: Define EXECUTABLE_SUFFIX.
892 * dlltool.c: Include "dyn-string.h". Include <stdarg.h> based on
893 ANSI_PROTOTYPES, not __STDC__.
895 (gen_exp_file): Change uses of outfile to use alloca.
896 (make_one_lib_file, make_head, make_tail): Likewise.
897 (gen_lib_file): Likewise.
898 (look_for_prog): New static function.
899 (deduce_name): Rewrite to use look_for_prog.
900 (mcore_elf_gen_out_file): Use dyn_string_t rather than outfile.
901 * dllwrap.c: Don't include <stdio.h>, <errno.h>, <string.h>,
902 <stdlib.h>, or <unistd.h>. Include <sys/stat.h> and either
903 <stdarg.h> or <varargs.h>.
904 (driver_name): Initialize to NULL, not "gcc".
905 (dlltool_name): Initialize to NULL, not "dlltool".
906 (display, inform, look_for_prog, deduce_name): New static
908 (usage): Mention -mno-cygwin.
909 (OPTION_MNO_CYGWIN): Define.
910 (main): Handle -mno-cygwin. Deduce driver_name and dlltool_name.
911 * resrc.c (look_for_default): Make static. Remove unused local
912 path. Check using EXECUTABLE_SUFFIX.
913 (read_rc_file): Allocate enough space to hold EXECUTABLE_SUFFIX.
914 * Makefile.am: Rebuild dependencies.
915 (dllwrap_LDADD): Add $(INTLLIBS).
916 * configure, Makefile.in, config.in: Rebuild.
920 * readelf.c (dump_relocations): Use elf_hppa_reloc_type instead of
921 elf32_hppa_reloc_type.
925 * dlltool.c (mcore_elf_gen_out_file): Link object files with the
926 .exp file, not the .lib file.
930 * deflex.l: Accept single-character symbol names.
934 * readelf.c (get_symbol_type): Detect ARM symbols typed as Thumb
939 * objdump.c (disassembler_options): New variable.
940 (usage): Document new -M/--disassembler-options option.
941 (long_options): Add --disassembler-options.
942 (disassemble_data): Initialise disassembler_options field of
943 disassembler_info structure.
944 (main): Add parsing of -M option.
946 * binutils.texi: Document new command line switch to objdump.
948 * NEWS: Describe new command line switch to objdump.
953 * binutils.texi: Fix typos.
957 * objdump.c (disassemble_bytes): If the disassembler returns an
958 error, print out anything it may have printed to the buffer. From
961 * defparse.y (explist): Remove separate expline to eliminate
962 shift/reduce conflict.
965 * defparse.y: Add tokens NONSHARED, SINGLE, MULTIPLE,
966 INITINSTANCE, INITGLOBAL, TERMINSTANCE, and TERMGLOBAL.
967 (command): Add option_list after LIBRARY.
968 (attr): Accept and ignore NONSHARED, SINGLE, and MULTIPLE.
969 (option_list, option): New nonterminals.
970 * deflex.l: Recognize NONSHARED, SINGLE, MULTIPLE, INITINSTANCE,
971 INITGLOBAL, TERMINSTANCE, and TERMGLOBAL.
975 * ar.c (O_BINARY): Define as 0 if not defined.
976 (ranlib_touch): Open file with O_BINARY.
978 * rename.c (O_BINARY): Define as 0 if not defined.
979 (simple_copy): Open files with O_BINARY.
982 * objcopy.c (struct section_list): Add copy field.
983 (sections_copied): New static variable.
984 (copy_options): Add "only-section".
985 (copy_usage): Mention -j and --only-section.
986 (find_section_list): Initialize copy field.
987 (is_strip_section): Check for copying sections.
988 (copy_object): Check sections_copied when calling filter_symbols.
989 (setup_section): Check for copying sections.
990 (copy_section): Likewise.
991 (copy_main): Handle -j/--only-section.
992 * binutils.texi, objcopy.1: Document -j/--only-section.
994 * configure.in: If frexp is not available, check in -lm.
995 * configure: Rebuild.
997 * readelf.c (get_elf_class): Use correct printf format for type.
998 (get_data_encoding): Likewise.
999 (get_osabi_name): Likewise.
1000 (process_file_header): Don't pass an extra argument to printf.
1001 (process_dynamic_segment): Cast dynamic_size to long before
1003 (decode_location_expression): Cast byte_get to long before
1008 * readelf.c (dump_section): Cast values from byte_get to
1009 [unsigned] long for printing, in case it is wider than long.
1010 (display_block): Likewise.
1011 (read_and_display_attr): Likewise.
1012 (decode_location_expression): Likewise. Don't depend on
1017 * windres.c (usage): Fix typo.
1021 * readelf.c: Use 64bit wide fields in internal strcutures even if
1022 targetting a 32bit architecture.
1023 (dump_relocations): Take a new parameter - the number of symbols
1024 in the symbol table.
1028 * readelf.c: Add support for 64bit ELF files.
1032 * dlltool.c (mcore_elf_gen_out_file): Use constants for temporary
1037 * dlltool.c (gen_exp_file): Revert 19990411 change.
1041 * readelf.c (process_relocs): Determine type of reloc from
1042 DT_PLTREL and from section type.
1046 * readelf.c (get_elf_class): Display unknown class number.
1047 (get_data_encoding): Display unknown encoding number.
1048 (get_osabi_name): Display unknown ABI number.
1049 (process_file_header): Display unknown version number.
1053 * readelf.c (dump_relocations): Fix typo.
1057 * readelf.c (dump_relocations): Add extra parameter: is_rela to
1058 specify the kind of relocations to be dumped. Call guess_is_rela
1059 if this parameter has a value of UNKNOWN.
1060 (guess_is_rela): New function: Guess the kind of reloc being used
1061 baced on the machine number.
1062 (process_relocs): Determine type of reloc before calling
1067 * readelf.c: Include "elf/i960.h".
1068 (dump_relocations): Handle EM_960.
1072 * objcopy.c (copy_archive): Preserve dates of archive members if
1075 * readelf.c (dump_relocations): Always print the addend on RELA
1076 systems even if there is no symbol.
1077 (process_program_headers): Reset dynamic_size before looping
1078 through the program headers.
1079 (process_version_sections): Cast sh_offset to unsigned long for
1080 printing in case bfd_vma is wider.
1081 (process_symbol_table): Use get_symbol_index_type when printing
1086 * windres.c: add verbose option
1087 (main): process verbose option
1088 * resrc.c (look_for_default): new. Look for the default
1089 preprocessor in a given location.
1090 (read_rc_file): for foo/bar-windres, look for foo/bar-gcc,
1091 foo/gcc (in case of foo/windres), and then gcc (the old default).
1095 * dlltool.c (deduce_name): New function: Deduce name of program to
1097 (mcore_elf_out_file): New variable: Name of mcore-elf output file.
1098 (mcore_elf_linker): New variable: Name of linker to use.
1099 (mcore_elf_linker_flags): New variable: Linker flags to pass.
1100 (scan_obj_file): Cache filenames if necessary.
1101 (usage): Document new command line options.
1102 (main): Support new command line options: -M (generate an
1103 mcore-elf output file) -L (name of linker to use) -F (flags to
1105 (mcore_elf_cache_filename): Store a filename in a cache.
1106 (mcore_elf_gen_out_file): New function: Generate an output file
1107 per the mcore-elf spec.
1111 * configure.in (BUILD_MISC): Build dlltool for mcore
1112 * configure: Regenerate.
1113 * dlltool.c: Update example in comment.
1114 (DLLTOOL_MCORE): Define.
1115 (DLLTOOL_MCORE_ELF): Define.
1116 (DRECTVE_SECTION_NAME): Define.
1117 (mcore_be_jtab, mcore_le_jtab): Binary for performing an mcore
1119 (mtable): Add entries for mcore variants.
1120 (rvaafter, rvabefore, asm_prefix): Add mcore suppport.
1121 (scan_drectve_symbols): Use DRECTVE_SECTION_NAME.
1122 (make_head, make_tail): Cope if file cannot be created.
1123 (usage): Improve layout.
1127 * rclex.l: add code to suppress certain output from cpp, replace
1128 all returns with MAYBE_RETURN
1129 (MAYBE_RETURN): new, implement the suppression by returning
1130 IGNORED_TOKEN as needed.
1131 (cpp_line): remember which file we're in, mark data from included
1132 *.h files for suppression.
1133 * rcparse.y (input): allow IGNORED_TOKEN outside of known constructs
1137 * windres.c (quot): Quote shell metacharacters in a string
1138 (main): quote parameters to cpp that might have metacharacters in
1139 them. Allow -D as an alias for --define to allow for sharing make
1142 * objdump.c (dump_reloc_set): don't core if howto->name is NULL
1144 * Makefile.am: Give rescoff.c a cpu-specific -D so it can set
1146 * Makefile.in: ditto
1147 * rescoff.c (write_coff_file): Set the correct BFD
1151 * rename.c (smart_rename): Fix test of whether file exists.
1155 * objdump.c (disassemble_data): Set display_endian based on target
1160 * dlltool.c (interwork): Remove.
1161 (arm_interwork_jtab): Use bx insn.
1162 (thumb_jtab): Likewise.
1163 (MARM_INTERWORK): New machine type.
1164 (rvaafter): Handle it.
1165 (rvabefore) Likewise.
1166 (asm_prefix): Likewise.
1167 (gen_exp_type): Check machine type instead of
1169 (make_one_lib_file): Likewise.
1170 (make_head): Likewise.
1171 (make_tail): Likewise.
1172 (usage): Update machine types.
1173 (main): Remove -interwork support.
1177 * readelf.c (get_machine_flags): Check for EF_CPU32.
1178 (get_data_encoding): Fix typo.
1182 * aclocal.m4, configure: Updated for new version of libtool.
1186 * stabs.c (parse_stab_range_type): Correct parenthesization in
1189 * readelf.c (get_section_type_name): Use correct types in printf
1191 (process_relocs): Likewise.
1192 (process_dynamic_segment): Likewise.
1193 (process_symbol_table): Likewise.
1194 (process_mips_specific): Likewise.
1198 * dlltool.c (make_one_lib_file): Mark thumb functions as
1203 * bucomm.h (environ): Declare it, if needed.
1204 (alloca) [C_ALLOCA]: Don't use gcc's builtin or <alloca.h>.
1205 * configure.in (environ): Detect declaration.
1206 * nm.c (main): Don't declare environ.
1207 * configure, config.in: Rebuild.
1209 * dlltool.c (gen_exp_file): Pad out the .reloc section to a
1210 32-byte boundary with dummy relocations, to make the BeOS loader
1215 * binutils.texi (c++filt): Updated for -j/--java, and hp/edg
1220 * readelf.c: Add ability to decode new constants found in April 25
1221 1998 Draft of System V ABI spec.
1225 * bucomm.h (LC_MESSAGES): Never define.
1226 * addr2line.c (main): Don't pass LC_MESSAGES to setlocale if the
1227 system does not define it.
1228 * ar.c (main): Likewise.
1229 * coffdump.c (main): Likewise.
1230 * dlltool.c (main): Likewise.
1231 * nlmconv.c (main): Likewise.
1232 * nm.c (main): Likewise.
1233 * objcopy.c (main): Likewise.
1234 * objdump.c (main): Likewise.
1235 * size.c (main): Likewise.
1236 * srconv.c (main): Likewise.
1237 * strings.c (main): Likewise.
1238 * sysdump.c (main): Likewise.
1239 * windres.c (main): Likewise.
1240 * readelf.c (main): Call locale setting functions.
1244 * readelf.c (decode_location_expression): Fix DW_OP_const8{s|u}
1249 * rename.c: New file, copied out of objcopy.c with a few changes.
1250 * bucomm.h (set_times, smart_rename): Declare.
1251 * ar.c: Don't include <utime.h>.
1252 (extract_file): Call set_times rather than utime.
1253 (write_archive): Call smart_rename rather than unlink and rename.
1254 * objcopy.c: Don't include <utime.h>.
1255 (simple_copy, smart_rename, set_times): Move to rename.c.
1256 (strip_main): Update smart_rename call for new parameter.
1257 (copy_main): Likewise.
1258 * Makefile.am: Rebuild dependencies.
1259 (CFILES): Add rename.c.
1260 (objcopy_SOURCES, strip_new_SOURCES): Add rename.c.
1261 (ar_SOURCES, ranlib_SOURCES): Add rename.c.
1262 * Makefile.in: Rebuild.
1264 * Makefile.am: Rebuild dependencies.
1265 (EXTRA_PROGRAMS): Remove backslash which troubles current version
1267 * Makefile.in: Rebuild.
1269 * dllwrap.c (main): Expect correct type in format string.
1270 * resres.c: Include "bfd.h", "bucomm.h", "libiberty.h", and
1271 <time.h>. Don't include <stdio.h> and <errno.h>.
1272 (write_res_file): Remove unused locals e and i.
1273 (read_resource_entry): Remove unused locals rtype and n.
1274 (read_unistring): Remove unused local n.
1278 * arparse.y: Declare yylex.
1279 * objdump.c (disassemble_bytes): Initialize bytes. Add comment
1280 for incorrect use of bytes.
1281 * readelf.c: Change many formats to avoid warnings.
1285 * readelf.c (reset_state_machine): New function. Resets the
1286 registers of the source line number state machine.
1287 (process_extended_line_op): Use state machine.
1288 (display_debug_lines): Use state machine. Handle multiple line
1289 number blocks within the same section.
1293 * readelf.c (process_extended_line_op): end_sequence also resets
1295 (display_debug_lines): advance_line takes a signed operand.
1296 (read_and_display_attr): Print refs as <%x>, addresses as %#x,
1297 others as %d. Handle other location expression attributes.
1298 (display_debug_info): Handle nesting. Always print the offset.
1302 * objcopy.c (filter_symbols): When checking whether to keep a
1303 symbol, check the BFD section symbol for a symbol with
1304 BSF_SECTION_SYM set.
1308 * readelf.c (process_dynamic_segment): Print new Solaris dynamic
1309 section entries. Correct printing of DT_POSFLAG_1 and DT_FLAGS_1.
1313 * readelf.c (request_dump): New function.
1314 Removed arbitary limit on the number of sections that can be
1319 * dlltool.c (make_one_lib_file): Use %05d to output the stub name so
1320 order in the import library is preserved.
1324 * readelf.c: Fix compile time warings.
1328 * resbin.c (res_to_bin_versioninfo): Instead of entering a value
1329 length of zero in a version info string, enter the appropriate
1334 * configure.in: Require autoconf 2.13. Change AM_PROG_INSTALL to
1335 AC_PROG_INSTALL. Add comments for AC_DEFINE calls.
1336 * acconfig.h: Remove.
1337 * aclocal.m4: Rebuild.
1338 * configure: Rebuild.
1339 * Makefile.in: Rebuild.
1340 * config.in: Rebuild.
1344 * readelf.c (read_and_display_attr): Add display of basic type
1346 (display_debug_aranges): New function: Display the contents of a
1347 .debug_aranges section.
1348 (display_debug_info): Dump tags found after compunit entry.
1350 * binutils.texi: Fixed bug in readelf documentation.
1354 * readelf.c (dump_relocations): Handle EM_ARM as REL.
1358 * readelf.c (process_symbol_table): Do not produce a histogram of
1359 bucket chains if none were found.
1363 * version.c: Add 1999 copyright.
1365 * binutils.texi (readelf): Document new command line options
1366 --debug-dump and --histogram.
1368 * readelf.c: Add ability to display contents of some or all of the
1369 Dwarf2 debug sections. {Work only partially completed}.
1370 (display_debug_section): New function.
1371 (display_debug_info): New function.
1372 (display_debug_not_supported): New function.
1373 (display_debug_line): New function.
1374 (display_debug_abbrev): New function.
1375 (process_abbrev_section): New function.
1376 (read_leb128): New function.
1377 (process_extended_line_op): New function.
1378 (get_TAG_name): New function.
1379 (get_AT_name): New function.
1380 (get_FORM_name): New function.
1381 (free_abbrevs): New function.
1382 (add_abbrev): New function.
1383 (add_abbrev_attr): New function.
1384 (read_and_display_attr): New function.
1385 (display_block): New function.
1389 * coffdump.c (xcalloc): Remove, in libiberty now.
1390 * srconv.c (xcalloc): Likewise.
1391 * sysdump.c (xcalloc): Likewise.
1395 * readelf.c (process_section_headers): Omit trailing space at end
1396 of section header contents line.
1400 * aclocal.m4: Regenerate.
1404 * dllwrap.c: Include bfd.h and bucomm.h. Move getopt.h include
1405 after libiberty.h include.
1409 * objdump.1: Fix typo (-d to -D). From Nokubi Hirotaka
1414 * objdump.c (SFILE): Add size field.
1415 (objdump_sprintf): Merge both versions into one. Increase buffer
1416 size as needed to avoid overflow.
1417 (disassemble_bytes): Change buf from 1000 bytes to 50. Change
1418 initialization and use of sfile to match changes to
1421 * strip.1: Fix typo (-V to -v). From Issei Hirayama
1426 * readelf.c (process_dynamic_segment): Improve output format for
1427 various DT_* values.
1431 * readelf.c (process_mips_specific): Print .conflict section
1434 * readelf.c (process_mips_specific): Print l_flags in liblist in
1439 * ar.c (extract_file): Add some paranoia checks for negatively
1444 * stabs.c (DIR_SEPARATOR): Define as '\\' if WIN32 is defined.
1448 * Makefile.in: Regenerate.
1452 * po/binutils.pot: Regenerate.
1456 * Makefile.am: Regernated dependencies.
1457 * aclocal.m4: Regenerated.
1458 * configure: Regenerated.
1462 * debug.c (debug_name_type): Correct return type from false to
1467 * objdump.c (disassemble_data): Skip over relocs below start
1472 * Makefile.am: Add dependency of readelf.c on elf/fr30.h
1473 * Makefile.in: Regenerate.
1477 * readelf.c: Add support for the FR30.
1481 * configure.in: detect cygwin* instead of cygwin32*
1482 * configure: regenerate
1486 * dllwrap.c: change all references to cygwin32_ to cygwin_,
1487 change Cygwin target def to CYGWIN.
1491 * objdump.c (disassemble_data): Replace 'unsigned long' with
1496 * objdump.c (disassemble_bytes): Applied this patch from Philip
1498 avoid problems when disassembling code at high-bit-set addresses.
1502 * dllwrap.c (strhash): New function.
1503 (main): Use it to supply image base if not supplied by user.
1504 (program_version): Up to 0.2.4.
1508 * dlltool.c (add_stdcall_alias): New global.
1509 (long_options): Add --add-stdcall-alias option.
1511 (scan_drectve_symbols): Add alias if --add-stdcall-alias is
1513 (scan_filtered_symbols): Likewise.
1514 (gen_def_file): Output alias for stdcall syms if appropriate.
1516 * binutils.texi (dlltool): Document --add-stdcall-alias option.
1518 * dllwrap.c (long_options): Add --add-stdcall-alias option.
1521 * defparse.y (opt_name): Allow "." in name.
1522 * dlltool.c (def_name): Set dll_name from NAME entry in def file.
1523 (def_library): Set dll_name from LIBRARY entry in def file.
1527 * dllwrap.c (long_options): --implib synonym for --output-lib.
1528 (main): Pass --export-all to dlltool only if specified.
1529 (program_version): Up to 0.2.3.
1533 * dllwrap.c (mybasename): New function.
1534 (main): Run dlltool to create export definition file and import
1535 library file if necessary.
1536 Change exp_file_name so that it's based on the dll name.
1540 * dlltool.c (scan_all_symbols): Fix patch error.
1544 * nm.c (display_rel_file): fix "no symbols" messages.
1545 * objdump.c (slurp_symtab): ditto.
1546 * po/POTFILES.in, po/binutils.pot: rebuilt
1550 * readelf.c (dump_relocations): Rename field from Value to Info to
1551 match name of field in ELF structures.
1555 * configure.in: call AC_EXEEXT instead of AM_EXEEXT and
1557 * aclocal.m4: remove local AM_EXEEXT/AM_CYGWIN32 macros.
1558 * configure: regenerate
1563 * dlltool.c (scan_all_symbols): Don't re-export symbols exported
1568 * Makefile.am (BUILD_DLLWRAP): Add.
1569 (BUILD_DLLWRAP, DLLWRAP_PROG): Add.
1570 (bin_PROGRAMS): Add dllwrap.
1571 * Makefile.in: regenerate with automake
1574 * dllwrap.c: New file from dllhelpers v0.2.1.
1575 (print_version): New function.
1576 (long_options): Add --version.
1578 * dyn-string.h, dyn-string.c: New files from egcs-1.1/gcc.
1579 * configure.in (BUILD_DLLWRAP): Add.
1580 * configure: Regenerate.
1584 * Makefile.am (windres_SOURCES): Add resres.c.
1585 (windres_OBJECTS): Add resres.o.
1586 * Makefile.in: regenerate with automake
1589 * resres.c: New file. Implementation of read_res_file and
1590 write_res_file functions for windres.
1591 * rcparse.y: Handle CONTROL's with named classes.
1592 * resbin.c: Bug in res_to_bin_dialog and bin_to_res_dialog
1593 when dialog is extended: The version and signature fields should
1594 be reversed (despite what the docs say). Id is 32 bits long in
1596 * resrc.c (write_rc_dialog): properly print controls with named
1598 * windres.c (read_res_file, write_res_file): Remove stubs.
1599 * resres.c (write_res): Rename RT_ACCELERATORS to RT_ACCELERATOR.
1604 * objcopy.1: Fix typo in --remove-leading-char docs.
1605 * objdump.1: Fix formatting in --stabs docs.
1609 * rcparse.y (memflags_move): Correct recursion.
1613 * readelf.c (process_symbol_table): Print in histogram how many
1614 symbols are covered by the current chain length.
1618 * readelf.c (process_section_contents): Do not try to dump empty
1623 * dlltool.c (scan_all_symbols): Don't re-export symbols exported
1628 * readelf.c (process_dynamic_segment): Print DT_* value only if
1630 (do_histogram): New variable.
1631 (options): New long option histogram. Set do_histogram if this
1633 (usage): Document --histogram.
1634 (parse_args): Handle 0 return value from getopt_long. Enable
1635 do_histogram for -a.
1636 (process_symbol_table): Read hash table also if only do_histogram.
1637 Add code to print hash table histogram.
1641 * readelf.c (process_dynamic_segment): Read syminfo section if
1643 (process_syminfo): New function. Print syminfo information.
1644 (process_file): Call process_syminfo and free syminfo data at the end.
1648 * dlltool.c (usage): Add file parameter. Change all callers.
1649 (main): Don't treat '?' as a special case in getopt return.
1651 * binutils.texi (dlltool): Document new options. Add some uses of
1656 * dlltool.c (gen_def_file): Plug memory leak. Don't print
1657 demangled name if it is NULL.
1659 Support for exporting all symbols to an output export def file:
1660 * dlltool.c ({export_all_symbols, no_default_excludes,
1661 no_default_excludes, excludes}): New file static variables.
1662 (struct string_list): Type to hold list of symbols to exclude.
1663 (scan_drectve_symbols): Renamed from scan_open_obj_file.
1664 (scan_filtered_symbols): New static function.
1665 (add_excludes): New static function.
1666 (match_exclude): New static function.
1667 (set_default_excludes): New static function.
1668 (filter_symbols): New static function.
1669 (scan_all_symbols): New static function.
1670 (scan_open_obj_file): New static function.
1671 (usage): Document new options.
1672 (long_options): Add new options.
1673 (main): Handle new options.
1677 * readelf.c (process_program_headers): Print p_offset value with
1679 (dynamic_segment_mips_val): Add support for DT_MIPS_FLAGS,
1680 DT_MIPS_IVERSION, and DT_MIPS_TIME_STAMP.
1681 (process_mips_specific): Also print seconds of time stamp.
1685 * readelf.c (dump_relocations): EM_ARM uses rela relocs.
1689 * readelf.c (get_dynamic_type): Don't used gettext on the names.
1690 Add new DT_* values from Solaris. Don't print nuemric value in
1691 case of an unknown entry.
1692 (process_dynamic_segment): Handle new DT_* entries. Print numeric
1693 values in decimal, not hex.
1697 * readelf.c (get_dynamic_type): Remove empty default from switch
1702 * Makefile.am (install-exec-local): Don't remove the file before
1703 checking whether $(bindir) == $(tooldir)/bin. From Maciej
1705 * Makefile.in: Rebuild.
1709 * objcopy.c: Removed spurious inclusion of elf/internal.h and
1714 * readelf.c: Consistantly use elf_ prefix for *_reloc_type
1719 * readelf.c (dump_relocations): Add dumps of HPPA and ARC
1722 (process_relocs): Do not abort if no string table can be found.
1726 * readelf.c: Remove definition of functions to return relocation
1727 symbol strings. They now get implicitly defined when include the
1728 system specific ELF header.
1732 * readelf.c: Before include system specific ELF header define
1733 START_RELOC_NUMBERS, RELOC_NUMBER, and END_RELOC_NUMBERS. For now
1734 used for ppc, mips, and mn10300.
1738 * readelf.c (dump_relocations): Display number of unrecognised
1743 * readelf.c: Use symbolic names of relocation entries for the various
1744 architectures. Correct more layout details.
1745 Print names of MIPS specific section types. Print Alpha, ARM, and
1746 MIPS relocation type names.
1750 * objcopy.c (filter_symbols): Add code for strip all symbols case.
1751 (copy_objects): Strip all case is now processed also through
1752 filter_symbols. No marking symbols used in relocations when strip
1754 (copy_section): When strip all symbols case, remove relocations
1755 which are not in keep strip specific list.
1756 (strip_main): Remove guard `strip_specific_list == NULL' for
1757 setting up strip all symbols by default.
1761 * addr2line.c (find_address_in_section): Only consider a section
1762 if the pc value is completely contained within it.
1763 (translate_addresses): Don't crash if functionname or filename are
1768 * readelf.c (process_symbol_table): Fix little alignment problem
1769 in printed table header.
1773 * readelf.c: Correct reading of .dynamic section.
1774 (dynamic_section): Now a global variable.
1775 (process_mips_fpe_exception, process_mips_specific,
1776 process_arch_specific): New functions.
1777 (get_file_header): Call process_arch_specific.
1781 * readelf.c: Fix several versioning related bugs. Produce nicer
1783 Add support for processor specific information on MIPS.
1787 * readelf.c: Switch prototypes from unsigned short to unsigned
1793 * ieee.c (parse_ieee): Initialize info.global_vars and
1795 (parse_ieee_atn): Ignore register lifetime information reportedly
1796 emitted by MRI compiler.
1800 * Makefile.am (MAINTAINERCLEANFILES): Define.
1801 * Makefile.in: Rebuild.
1805 * readelf.c (byte_get): Use PARAMS in prototype.
1806 (error): Make it work with non-ANSI compilers.
1808 (get_ver_flags): Don't use an ANSI prototype in the definition.
1812 * objcopy.c (filter_bytes): Set size correctly if the size of the
1813 section is not an even multiple of the interleave. Based on patch
1818 * configure.com: Add vax/vms support.
1819 * makefile.vms-in: Renamed from makefile.vms. Add substitutions
1820 now done by configure.com.
1824 * stabs.c (parse_stab_range_type): Handle 4 and 8 byte signed
1825 integers with real upper bounds. Handle a lower bound one larger
1826 than the upper bound as a signed integer. Handle 8 byte signed
1828 (stab_demangle_template): Optionally return the demangled name of
1830 (stab_demangle_qualified): Treat a template name as a tagged
1832 (stab_demangle_fund_type): Likewise.
1836 * objcopy.c: Minor formatting improvements.
1837 * readelf.c: Minor output formatting improvement.
1841 * rclex.l: Add casts and change types to avoid warnings.
1842 * rcparse.y: Likewise.
1843 * resbin.c: Likewise.
1844 * rescoff.c: Likewise.
1845 * resrc.c: Likewise.
1847 * Makefile.am: Rebuild dependencies.
1848 (HFILES): Remove readelf.h.
1849 * Makefile.in: Rebuild.
1851 Based on patches from Andrew Kozin
1853 * winduni.h: New file, from windres.h.
1854 * winduni.c: New file, from windres.c.
1855 * windres.c: Move Unicode functions into winduni.c.
1856 * windres.h: Move Unicode declarations into winduni.h. Include
1858 (RT_ACCELERATOR): Rename from RT_ACCELERATORS to match Windows
1859 macro. Change all uses.
1860 (RT_PLUGPLAY, RT_VXD): Correct values.
1861 * Makefile.am (HFILES): Add windres.h.
1862 (CFILES): Add winduni.c.
1863 (windres_SOURCES): Add winduni.c.
1867 * readelf.c: Use BFD Internal and External Elf structures.
1868 * readelf.h: Removed - no longer needed.
1869 * Makefile.in: Remove readelf.c's dependency upon readelf.h.
1873 * objcopy.c (strip_main): keep_specific_list == NULL as additional
1874 condition to set up strip all symbols by default.
1875 (copy_archive): don't change archive when error in object files of
1880 * stabs.c (parse_number): Sign extend negative values correctly if
1881 bfd_vma is larger than unsigned long.
1885 * Makefile.am (install-exec-local): Don't let EXEEXT interfere
1886 with the program transform name.
1887 * Makefile.in: Rebuild.
1891 * readelf.c: Rewrite to use fopen/fread ratehr than mmap.
1893 Add --section-headers command line switch, which is an alias for
1896 Incorporate improvemnts made by Andreas Schwab
1898 formatting and version info display.
1900 * binutils.texi: Document --section-headers switch to readelf.
1904 * readelf.c: Include bfd.h and bucomm.h before system header
1906 (parse_args): Change type of c from char to int.
1910 * readelf.c (usage): Write to stdout, not stderr.
1914 * po/Make-in (all-yes): Depend on .pot file if maintainer mode
1916 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
1920 * readelf.c (get_ppc_rel_type): New PowerPC support.
1921 (dump_relocations): PowerPC uses RELA relocations.
1922 (get_machine_name): Spell PowerPC correctly.
1923 (get_file_type): Change unsigned short parameter to unsigned.
1924 (get_machine_name): Ditto.
1925 (get_machine_data): Return whether big endian or little endian.
1926 (get_machine_flags): Interpret PowerPC, M32R, and MIPS flags.
1927 (process_elf_header): Print endian-ess. Convert all numeric
1928 formats to long or unsigned long. Print out machine specific flag
1930 (process_section_headers): Increase name by 3 columns and decrease
1931 type by the same so that .gcc_except_table fits in the space.
1933 * readelf.h: Include elf/ppc.h, elf/mips.h, and elf/m32r.h to get
1934 machine specific flag bits.
1938 * readelf.c: Remove extraneous #includes. Fix warnings produced
1939 by -Wall when compiling under Linux.
1941 * Makefile.am (readelf_LDADD): Add $(LIBIBERTY).
1945 * stabs.c (struct stab_handle): Add self_crossref field.
1946 (parse_stab_string): If a tag is a cross reference to itself,
1947 don't define it in the tags list.
1948 (parse_stab_type): Set info->self_crossref.
1950 * debug.c (struct debug_type_real_list): Define.
1951 (debug_get_real_type): Add list parameter. Change all callers.
1952 Check for circularity to avoid crashing when it occurs.
1956 * readelf.c: New file: Display contents of ELF format file.
1957 * readelf.h: New file: Header file for readelf.c
1958 * Makefile.am: Add rules to build readelf.
1959 * Makefile.in: Rebuilt.
1960 * binutils.texi: Document readelf.
1961 * NEWS: Mention inclusion of readelf into binutils.
1962 * po/POTFILES.in; Rebuilt.
1966 * objcopy.c (setup_section): Adjust the section size if copy_byte
1968 (copy_section): Do not call bfd_set_section_size.
1972 * objcopy.c (copy_usage): Add missing \n\ from help description.
1976 * Makefile.am (YACC): Correct bison -L option.
1977 * Makefile.in: Rebuild.
1979 * binutils.texi, objdump.1: Document -p/--private-headers.
1983 * objcopy.c: Add new command line options: --change-section-lma
1984 and --change-section-vma. Rename old command line option
1985 --adjust-section-vma to --change-section-address. Rename
1986 --adjust-vma to --change-addresses and --adjust-start to
1987 --change-start. Provide aliases to support the old versions of
1988 these command line options.
1990 Change the names of macros and enum elements to upper case to
1991 match the GNU coding standard.
1993 Replace calls to fprintf (stderr,...) with calls to fatal () or
1994 non_fatal () as appropriate.
1996 * objcopy.1: Document command line option changes.
1997 * binutils.texi: Document command line option changes.
1999 * bucomm.h: New exported funtion from bucomm.c: non_fatal().
2000 * bucomm.c (non_fatal): New exported function. Just like fatal()
2001 except that it returns rather than calling xexit().
2003 (bfd_check_format_matches): Call fatal() rather than bfd_fatal().
2005 (check_matching_formats): Fix C formating.
2007 (parse_vma): Call fatal().
2012 * debug.c (debug_type_samep): Avoid endless loops comparing
2013 function and method parameter types.
2017 * dlltool.c (dump_iat): Comment out; not used.
2018 (display): Rename from tell. Change all callers.
2022 * dlltool.c: Add support for Thumb DLLs. Add support for
2023 interworking between ARM and Thumb programs and DLLs. Tidy the
2026 * binutils.texi: Document dlltool.
2028 * configure: Build dlltool for thumb-pe targets.
2030 * version.c (print_version): Include 1998 in copyright strings.
2032 * stabs.c (parse_stab): Support Win32 style directory separators.
2036 * po/Make-in (install-info): New target.
2040 * ar.c (usage): Extend information provided about command line
2045 * makefile.vms: Run dec c with /nodebug. Pass CC value when
2050 * configure: Build dlltool for thumb-pe target.
2051 * configure.in: Build dlltool for thumb-pe target.
2055 * Makefile.am (EXTRA_PROGRAMS): Change $(SRCONV_PROG) to sysconf
2056 sysdump coffdump to avoid extra $(EXEEXT).
2057 * Makefile.in: Rebuild.
2061 * configure.in: Stop appending EXEEXT to the end of
2062 SRCONV_PROG (wrong because that variable may contain multiple
2064 * Makefile.am: instead, add EXEEXTs to each SRCONV_PROG
2066 * Makefile.in: regenerate
2067 * configure: regenerate
2071 * addr2line.c (main): Conditionally call setlocale.
2072 * windres.c (main): Likewise.
2073 * sysdump.c (main): Likewise.
2074 * strings.c (main): Likewise.
2075 * srconv.c (main): Likewise.
2076 * size.c (main): Likewise.
2077 * objdump.c (main): Likewise.
2078 * objcopy.c (main): Likewise.
2079 * nm.c (main): Likewise.
2080 * nlmconv.c (main): Likewise.
2081 * dlltool.c (main): Likewise.
2082 * coffdump.c (main): Likewise.
2083 * ar.c (main): Likewise.
2084 * bucomm.h: Include <locale.h> if HAVE_LOCALE_H.
2085 (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
2089 Add support for IMPORTS:
2090 * defparse.y (impline): Add IMPORTS syntaxes.
2091 * dlltool.c (ifunctype, iheadtype): New typedefs.
2092 (import_list): New static variable.
2093 (append_import): New static function.
2094 (def_import): Add an entry to import_list.
2095 (generate_idata_ofile): New static function.
2096 (gen_exp_file): Call generate_idata_ofile.
2097 * dlltool.h (def_import): Update declaration.
2101 * configure.in: Change version number to 2.9.4
2102 * configure: Rebuild.
2106 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
2110 * Makefile.am (INCLUDES): Search intl dirs for headers; define
2112 * addr2line.c (main): Call setlocale, bindtextdomain, textdomain.
2113 * ar.c (main): Likewise.
2114 * coffdump.c (main): Likewise.
2115 * dlltool.c (main): Likewise.
2116 * nlmconv.c (main): Likewise.
2117 * nm.c (main): Likewise.
2118 * objcopy.c (main): Likewise.
2119 * objdump.c (main): Likewise.
2120 * size.c (main): Likewise.
2121 * srconv.c (main): Likewise.
2122 * strings.c (main): Likewise.
2123 * sysdump.c (main): Likewise.
2124 * windres.c (main): Likewise.
2128 * Many files: Added gettext invocations around user-visible
2130 * bucomm.h: Added gettext-related includes and defines.
2131 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
2132 HAVE_LC_MESSAGES): Define.
2133 * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and
2134 po/Makefile. Use AM_PROG_LEX.
2135 * Makefile.am (SUBDIRS): New macro.
2136 (POTFILES): Likewise.
2137 (po/POTFILES.in): New target.
2138 (LDADD): Added INTLLIBS.
2139 (objdump_LDADD): Likewise.
2140 (c__filt_LDADD): Likewise.
2141 (ar_LDADD): Likewise.
2142 (ranlib_LDADD): Likewise.
2143 (dlltool_LDADD): Likewise.
2144 (windres_LDADD): Likewise.
2145 * po/Make-in, po/POTFILES.in, po/binutils.pot: New files.
2149 * objcopy.c (preserve_dates): New file static variable.
2150 (smart_rename): If preserve_dates, call set_times when copying.
2151 (strip_main): Remove preserve_dates local variable.
2152 (copy_main): Likewise.
2156 * Makefile.am (DISTSTUFF): Add defparse.h, defparse.c, rclex.c,
2157 rcparse.h, and rcparse.c
2158 * Makefile.in: Rebuild.
2162 * Makefile.am (PROGS): Move $(ADDR2LINE_PROG) to end, so that
2163 Makefile.in doesn't have an empty continuation line.
2164 (bin_PROGRAMS): Likewise.
2165 * Makefile.in: Rebuild.
2169 * Makefile.am (DISTCLEANFILES): Add site.exp and site.bak.
2170 (MOSTLYCLEANFILES): Add binutils.log, binutils.sum, and abcdefgh*.
2171 (mostlyclean-local): New target.
2172 * Makefile.in: Rebuild.
2178 * ar.c (usage): Mention S modifier.
2179 (main): Add S modifier.
2180 * ar.1, binutils.texi: Document S modifier.
2184 * binutils.texi: Use @itemx for a secondary item in a table.
2188 * dep-in.sed: Add rule to remove @OBJDIR@.
2189 * Makefile.am (dep.sed): Substitute for @OBJDIR@.
2190 * Makefile.in: Rebuild.
2194 * configure.in: Set version to 2.9.1.
2195 * configure: Rebuild.
2197 * Branched binutils 2.9.
2199 * Makefile.am (DISTCLEANFILES): Remove defparse.h, arparse.h,
2200 rcparse.h, and nlmheader.h.
2201 * Makefile.in: Rebuild.
2205 * Makefile.am (MOSTLYCLEANFILES): Define.
2206 * Makefile.in: Rebuild.
2208 Fix some gcc -Wall warnings:
2209 * nlmconv.c (main): Add casts to avoid warnings.
2210 (alpha_mangle_relocs): Likewise.
2211 * objdump.c (dump_section_stabs): Likewise.
2212 * size.c (print_sysv_format): Likewise.
2213 * srcconv.c (wr_ob): Likewise.
2214 * wrstabs.c (stab_modify_type): Likewise.
2215 (stab_variable): Likewise.
2216 * nlmconv.c (main): Initialize variables to avoid warnings.
2217 * nm.c (sort_symbols_by_size): Likewise.
2218 * objdump.c (disassemble_bytes): Likewise.
2219 * wrstabs.c (stab_end_class_type): Likewise.
2220 * coffgrok.c (do_sections_p2): Change j to unsigned int.
2221 (do_lines): Change l to unsigned int.
2222 * nlmheader.y (yylex): Change i to unsigned int.
2223 * nm.c (print_symbol): Change j to long.
2224 * size.c (lprint_number): Comment out.
2225 * srconv.c (wr_ob): Change i to bfd_size_type.
2226 * sysdump.c (unit_info_list): Comment out.
2227 (object_body_list, program_structure, debug_list): Likewise.
2228 * sysinfo.y (yyerror): Return value.
2232 * defparse.y (explist): Allow epsilon.
2237 * coffgrok.c (do_sections_p1): Use the section's lma instead of vma
2238 for the benefit of prom loaders.
2243 * Makefile.am (DISTSTUFF): New variable.
2244 (diststuff): New target.
2245 (DISTCLEANFILES): New variable.
2246 * Makefile.in: Rebuild.
2250 * rclex.l: Accept { and } as synonyms for BEGIN and END.
2254 * aclocal.m4, configure: Rebuild with libtool 1.2.
2258 * objdump.c (disassemble_data): Delete "++place" after call to
2259 find_symbol_for_address. Set disasm_info.symbols to array of
2260 symbols at the current address.
2264 * Makefile.am (install-exec-local): Install properly when ln
2265 fails or tooldir == prefix.
2269 * objcopy.c (compare_section_lma): Rename from _vma.
2270 (copy_object): Gap fill based on LMA not VMA.
2271 * binutils.texi: Update and clarify.
2272 * objcopy.1: Likewise.
2276 * dlltool.c (gen_exp_file): Generate _imp__%s as well as __imp_%s,
2277 for Microsoft compatibility.
2278 (make_one_lib_file): Likewise.
2280 * dlltool.c (make_one_lib_file): Don't add 1 to hint.
2284 * Makefile.am (AUTOMAKE_OPTIONS): Define.
2285 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
2289 * deflex.l: Accept '?' in symbol names, for VC++ mangled names.
2292 * addr2line.c (usage): Update bug-gnu-utils address.
2293 * ar.c (usage): Likewise.
2294 * nlmconv.c (show_usage): Likewise.
2295 * nm.c (usage): Likewise.
2296 * objcopy.c (copy_usage): Likewise.
2297 (strip_usage): Likewise.
2298 * objdump.c (usage): Likewise.
2299 * size.c (usage): Likewise.
2300 * strings.c (usage): Likewise.
2301 * windres.c (usage): Likewise.
2302 * binutils.texi (Bug Reporting): Likewise.
2306 * configure, aclocal.m4: Rebuild with new libtool.
2310 * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
2314 * Makefile.am (CC_FOR_TARGET,nlmcomv.o): Change program_transform_name
2316 * Makefile.in: Regenerate.
2320 * dlltool.c: Define exit status macros for _WIN32 but not
2322 (gen_lib_file): Check for exit status of unlink.
2323 * resrc.c: Define popen and pclose if _WIN32 but not
2328 * configure.in: Remove vfork check.
2329 * nlmconv.c: Never include vfork.h.
2330 * aclocal.m4, configure, Makefile.in, config.in: Rebuild.
2334 * objcopy.c (copy_archive): Only pass one argument to mkdir if
2335 _WIN32 but not __CYGWIN32__.
2336 (smart_rename): Add code for _WIN32 (not __CYGWIN32__), to cope
2337 with different rename behaviour and lack of chown.
2339 * configure.in: Check for mingw32 when deciding whether to build
2341 * dlltool.c: Never include vfork.h.
2342 (run): Use pexecute rather than vfork.
2343 (gen_lib_file): Check for errors from bfd_set_archive_head and
2344 bfd_close. Close all the BFDs in the archive before deleting the
2349 * objdump.c (disassemble_bytes): Add flag INSN_HAS_RELOC to tell
2350 disassembly function there is a reloc on this line.
2354 * srconv.c (sh, h8300): Delete variables.
2355 (addrsize, toolname, rnames): New variables.
2356 (writeINT): Use addrsize.
2357 (wr_un): Use toolname.
2358 (wr_hd): Set up addrsize et al properly for h8300[hs].
2359 (walk_tree_symbol): Zero dsy. Use rnames.
2360 (wr_un, wr_hd, wr_ob, wr_du): Use proper bfd access macros.
2361 * sysdump.c (sh, h8300): Delete variables.
2362 (addrsize): New variable.
2364 (getone): Initialize it.
2365 (getBITS): Range check on MAX.
2370 * ar.c (get_pos_bfd): Add default_posname parameter. Change all
2372 (replace_members): Default to replacing in the same position.
2376 * rclex.l: Don't permit a comma in a STRING.
2377 * rcparse.y (acc_entry): Warn if an inappropriate modifier is used
2379 (acc_event): For a control character, set VIRTKEY, and force the
2380 character to uppercase.
2381 (acc_options): Don't require a comma separator.
2385 * size.c (size_number): New function to provide size of field.
2386 ({l,r}print_number): For octal and hex fields, print field using
2387 '0' and '0x' suffixes. Do not include following tab.
2388 (sysv_internal_sizer): Size section name, section size, and vma
2390 (sysv_internal_printer): Use calculated sizes for the columns.
2391 (print_sysv_format): Size columns before printing.
2392 (print_berkeley_format): Print tabs between numbers now that
2393 {l,r}print_number doesn't. Print fields right justified.
2397 * objdump.c (objdump_print_addr_with_sym): Remove call to
2398 disasm_symaddr() as this function no longer exists.
2402 * objdump.c (objdump_print_addr_with_sym): Call disasm_symaddr()
2403 to allow backend to know which symbol has just been displayed.
2407 * windres.h (ESCAPE_*): Define standard escape sequences.
2408 * rclex.l (handle_quotes): Handle standard escape sequences. Warn
2409 about an unrecognized escape character.
2410 * windres.c (unicode_print): Print standard escape sequences.
2411 * rcparse.y (acc_event): Initialize $$.next.
2412 * resbin.c (bin_to_res_menuitems): Don't set MENUITEM_POPUP or
2413 MENUITEM_ENDMENU in the menu item flags.
2414 (bin_to_res_accelerators): Allocate a structure (the old code
2416 (res_to_bin_accelerator): Correct the test for setting ACC_LAST.
2417 (res_to_bin_dialog): Save the extended style rather than saving
2418 the style twice. Remove useless shadowing length variable. Set
2419 the length of control data correctly.
2420 * resrc.c (write_rc_dialog): Don't print the class or menu if the
2421 string length is zero.
2425 * stabs.c (parse_stab_argtypes): Don't try to parse the name of a
2426 destructor as mangled argument types.
2430 * addr2line.c (translate_addresses): Use bfd_scan_vma rather
2431 than strtol to scan addresses.
2435 * Makefile.am (bin_PROGRAMS): Don't use line continuations here.
2439 * objcopy.c (copy_section): Don't crash if there is no particular
2440 information for a section.
2444 * objcopy.c (parse_flags): Make flag check case insensitive.
2445 Check for `contents' flag. Give an error for unrecognized flags.
2446 (copy_section): If the contents flag was set for a section that
2447 had no contents, zero out the new contents.
2448 * binutils.texi (objcopy): Document contents section flag.
2452 * objcopy.c: Move new struct and variable definitions to top of
2453 file. Remove obsolete add_strip_symbol and is_strip_symbol
2454 declarations. Add prototype declarations for add_specific_symbol
2455 and is_specified_symbol.
2459 * configure.com (HAVE_SBRK): Undefine.
2463 * objdump.c (objdump_symbol_at_address): New function. Returns
2464 true if a symbol can be found at the address passed in.
2465 (disassemble_data): Set the symbol_at_address_func field to point
2466 to objdump_symbol_at_address.
2470 * objcopy.c, objcopy.1, binutils.texi: "localize" is a better name
2471 than "privatize". Update all references.
2475 * binutils.texi (strip): Remove duplicate --target. From Marty
2478 * nm.c (lineno_cache_bfd): New file static variable.
2479 (lineno_cache_rel_bfd): New file static variable.
2480 (display_archive): Clear lineno_cache_bfd and lineno_cache_rel_bfd
2482 (display_file): Likewise.
2483 (print_symbol): Use lineno_cache_bfd and lineno_cache_rel_bfd
2484 instead of cache_bfd and cache_rel_bfd. Make seccount static, and
2485 only set it when setting relocs.
2489 * objcopy.c (keep_specific_list, privatize_specific_list,
2490 weaken_specific_list): New variables.
2491 (keep_symbols): Removed.
2492 (add_specific_symbol): New function from the carcas of
2493 add_strip_symbol. Takes a list as an argument.
2494 (is_specified_symbol): Likewise from is_strip_symbol.
2495 (filter_symbols): Honor the new privatize and weaken lists.
2496 Optimize bfd_asymbol_name handling.
2497 (copy_object, copy_options, copy_usage): Add privatize-symbol &
2498 weaken-symbol options.
2500 * objcopy.1, binutils.texi: Update docs.
2504 * objdump.c (disassemble_data): Make "--prefix-addresses"
2505 disassembly adjust to mixed-length instructions.
2506 (objdump_print_addr_with_sym): Add "0x" prefix for hexadecimal
2507 symbol-offsets in disassembly.
2511 * objcopy.c (set_times): New static function, replacing
2513 (strip_main): If preserve_dates, stat the input file before
2514 copying it, and call set_times afterward.
2515 (copy_main): Likewise.
2517 * wrstabs.c (write_stabs_in_sections_debugging_info): Cast p to
2518 char * when calling strcpy and strlen.
2522 * binutils.texi (ar cmdline): Document that q now works like r.
2525 * binutils.texi (size): The object file argument is optional.
2528 * aclocal.m4: Rebuild with new libtool.
2529 * configure: Rebuild.
2533 * Makefile.am (EXEEXT_FOR_BUILD): New variable. Use it in all
2534 references to the sysinfo program.
2535 * configure.in: Rebuild with new bfd/acinclude.m4.
2536 * Makefile.in: Rebuild.
2540 * windres.c: Include <time.h>.
2541 (define_resource): Set a timestamp for the resource.
2545 * configure.in: Define TARGET in header file.
2546 * acconfig.h (TARGET): Add #undef.
2547 * Makefile.am (version.o, bucomm.o): Remove special targets.
2548 * bucomm.c (target): Remove.
2549 * nm.c (program_name): Don't declare.
2550 (target): Make static.
2551 * size.c (target): Make static.
2552 * configure, config.in, Makefile.in: Rebuild.
2556 * Makefile.am (check-DEJAGNU): Export r.
2557 (.dep1): Use $(INCLUDES) rather than $(ALL_CFLAGS).
2558 * Makefile.in: Rebuild.
2560 * nlmheader.y: Use VERSIONK rather than VERSION.
2562 * Makefile.am (STRIP_PROG): Change from strip.new to strip-new.
2563 (NM_PROG): Change from nm.new to nm-new.
2564 (TOOL_PROGS, install-exec-local): Adjust accordingly.
2565 * Makefile.in: Rebuild.
2569 * configure.in: Remove AC_ARG_PROGRAM; it's invoked by
2571 * configure: Rebuild.
2573 * Makefile.am (install-exec-local): Create $(tooldir)/bin before
2574 trying to install anything into it.
2575 * Makefile.in: Rebuild.
2577 * Makefile.am (TOOL_PROGS): Use an explicit $(EXEEXT).
2578 (install-exec-local): When handling $(noinst_PROGRAMS), only use
2579 $(EXEEXT) on the installed file. When handling $(TOOL_PROGS),
2580 handle $(EXEEXT) correctly.
2581 * configure.in: Add an explicit $(EXEEXT) when substituting for
2582 the name of a program to build.
2583 * Makefile.in, configure: Rebuild.
2585 * aclocal.m4, configure, Makefile.in: Rebuild with new automake
2588 * deflex.l, defparse.y: Use VERSIONK rather than VERSION.
2589 * rclex.l, rcparse.y: Likewise.
2590 * Makefile.am (windres_SOURCES): Add $(BULIBS).
2591 * Makefile.in: Rebuild.
2595 * acinclude.m4: Include bfd/acinclude.m4, not bfd/acmacros.m4.
2596 * aclocal.m4, configure: Rebuild with new libtool.
2600 * Makefile.am: New file, based on old Makefile.in.
2601 * acinclude.m4: New file, from old aclocal.m4.
2602 * configure.in: Call AM_INIT_AUTOMAKE and AM_PROG_LIBTOOL. Remove
2603 shared library handling; now handled by libtool. Replace
2604 AC_CONFIG_HEADER with AM_CONFIG_HEADER. Call AC_PROG_YACC,
2605 AC_PROG_LEX, AC_DECL_YYTEST, AM_MAINTAINER_MODE, AM_CYGWIN32, and
2606 AM_EXEEXT. Replace AC_PROG_INSTALL with AM_PROG_INSTALL. Remove
2607 stamp-h handling in AC_OUTPUT.
2608 * acconfig.h: Mention PACKAGE and VERSION.
2609 * stamp-h.in: New file.
2610 * Makefile.in: Now built with automake.
2611 * aclocal.m4: Now built with aclocal.
2612 * config.in, configure: Rebuild.
2615 * rcparse.y (dialog): Default menu and class to be named.
2616 (styles): If FONT is seen, set DS_SETFONT in dialog style.
2617 * resbin.c (res_to_bin_dialog): Correct computation of font
2623 * resbin.c (res_to_bin_menu): Correct computation of menu
2625 * resrc.c (define_stringtable): Add 1 to resource ID.
2629 * resbin.c (bin_to_res_string): Correct adjustment of data and
2634 * nlmconv.c (link_inputs): Call libiberty pexecute function.
2635 (pexecute) [multiple versions]: Remove.
2639 * bucomm.c (make_tempname): If we might be using a DOS filesystem,
2640 check for a backslash as well as a slash.
2644 * windres.c (main): Quit if we didn't get any resources.
2645 (usage): Fix --yydebug usage message.
2646 * rescoff.c (write_coff_file): Don't free the relocation array
2647 until after we've closed the BFD.
2648 (read_coff_rsrc): Quit rather than try to read standard input.
2649 (write_coff_file): Quit rather than try to write to standard
2651 * rcparse.y: Add a couple of missing semicolons (accepted by bison
2653 * binutils.texi: Document windres.
2657 * resbin.c: New file.
2658 * rclex.l, rcparse.y, rescoff.c, resrc.c, windres.c, windres.h:
2659 Numerous fixes and improvements.
2660 * Makefile.in: Rebuild dependencies.
2661 (CFILES): Add resbin.c.
2662 (WINDRES_OBJS): Add resbin.o.
2666 First stab at Windows resource compiler:
2667 * windres.h: New file.
2668 * windres.c: New file.
2669 * resrc.c: New file.
2670 * rcparse.y: New file.
2671 * rclex.l: New file.
2672 * rescoff.c: New file.
2673 * configure.in: Define and substitute BUILD_WINDRES.
2674 * configure: Rebuild.
2675 * Makefile.in: Rebuild dependencies.
2676 (WINDRES_PROG): New variable.
2677 (PROGS): Add @BUILD_WINDRES@.
2678 (HFILES): Add dlltool.h and windres.h.
2679 (CFILES): Add windres.c and resrc.c.
2680 (GENERATED_CFILES): Add rcparse.c and rclex.c.
2681 (WINDRES_OBJS): New variable.
2682 $(WINDRES_PROG): New target.
2683 (rcparse.c, rcparse.h, rclex.c): New targets.
2687 * dlltool.c (export_type): Add data field.
2688 (def_exports): Add data parameter. Change all callers.
2689 (dump_def_info): Print data field.
2690 (gen_def_file): Likewise.
2691 (make_one_lib_file): Handle data field by not emitting simple
2692 label and not emitting anything in SEC_TEXT.
2693 (dtab): Print data field.
2694 (process_duplicates): Merge data field.
2695 * dlltool.h (def_exports): Update declaration.
2696 * defparse.y (expline): Accept opt_DATA. Pass it to def_exports.
2697 (opt_DATA): New non-terminal.
2701 * dlltool.h: New file.
2702 * deflex.l: Include dlltool.h and libiberty.h. Don't declare
2703 strdup. Use xstrdup rather than strdup.
2704 * defparse.y: Include bfd.h, bucomm.h, and dlltool.h.
2705 * dlltool.c: Include dlltool.h and time.h. Make a lot of
2706 variables and functions static. Make a lot of char * variables
2707 and parameters const. Add declarations for static functions. Do
2708 some reindenting. Hide more PowerPC stuff inside DLLTOOL_PPC.
2712 * ar.c (bfd_special_undocumented_glue): Add const.
2716 * Makefile.in (check): Pass CC_FOR_TARGET and CFLAGS_FOR_TARGET
2721 * configure.in: Don't clear OPCODES when --enable-commonbfdlib is
2723 * configure: Rebuild.
2727 * Makefile.in (maintainer-clean realclean): Change *.info*
2728 to binutils.info* to save sysroff.info.
2732 * Makefile.in (INSTALL): Set to @INSTALL@.
2733 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
2734 (install): Depend upon installdirs. Use $(program_transform_name)
2735 directly, rather than using $(INSTALL_XFORM) and
2737 (installdirs): New target.
2738 (install-info): Run mkinstalldirs.
2742 * Makefile.in (INSTALL): Change install.sh to install-sh.
2745 * Makefile.in: Always use $(SHELL) when running move-if-change.
2746 * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
2747 * configure: Rebuild.
2751 * configure.in: Add AC_FUNC_ALLOCA.
2752 * configure, config.in: Rebuild.
2753 * bucomm.h: Add alloca handling, copied from gas/as.h.
2754 * dlltool.c: Add #pragma alloca for AIX to start of file.
2755 * nlmconv.c: Likewise.
2757 * Makefile.in (distclean): Remove site.exp and site.bak. Remove
2758 everything that clean removes.
2762 * Makefile.in (VERSION): Set to 2.8.1.
2764 * Branched binutils 2.8.
2768 * configure.com: New file.
2769 * config.h-vms: Remove file.
2770 * makefile.vms: Update for new configure scheme.
2774 * objcopy.c (make_same_dates): Use statbuf, not buf, if not
2779 * Makefile.in ($(OBJDUMP_PROG)): Don't link against BFDLIB twice.
2780 * configure.in: Add AC_ARG_ENABLE for commonbfdlib. If it is set,
2781 set OPCODES to empty.
2782 * configure: Rebuild.
2787 * objcopy.c: Include <utime.h> or <sys/time.h>.
2788 (strip_options): Add "preserve-dates".
2789 (copy_options): Likewise.
2790 (copy_usage): Mention -p and --preserve-dates.
2791 (strip_usage): Likewise.
2792 (make_same_dates): New static function.
2793 (strip_main): Handle -p.
2794 (copy_main): Likewise.
2795 * binutils.texi, strip.1, objcopy.1: Document new option.
2797 addr2line.c contributed by Ulrich Lauther
2799 * addr2line.c: New file.
2800 * Makefile.in: Rebuild dependencies.
2801 (ADDR2LINE_PROG): New variable.
2802 (MANPAGES): Add addr2line.
2803 (PROGS): Add $(ADDR2LINE_PROG).
2804 (CFILES): Add addr2line.c.
2805 ($(ADDR2LINE_PROG)): New target.
2806 * binutils.texi: Document addr2line.
2807 * addr2line.1: New file.
2809 * version.c (print_version): Update copyright date.
2813 * objdump.c (disassemble_data): Don't exit if a file cannot be
2814 disassembled, instead just return.
2818 * size.c (usage): Make definition match its prototype.
2819 (display_bfd, lprint_number, rprint_number): Likewise.
2820 (print_berkeley_format, sysv_internal_printer): Likewise.
2821 (print_sysv_format): Likewise.
2822 * nm.c (set_print_radix, set_output_format): Likewise.
2823 * objcopy.c (filter_bytes): Likewise.
2827 * Many files: Add function prototypes.
2828 * ar.c (mri_emul, get_pos_bfd): Make static.
2829 * arlex.l: Include "libiberty.h". Don't declare strdup. Use
2830 xstrdup rather than strdup.
2831 * arparse.y (yyerror): Make argument const. Correct typo.
2832 * arsup.c (strdup): Don't declare.
2833 (ar_save): Use xstrdup rather than strdup.
2834 * filemode.c: Include "bucomm.h".
2835 * nm.c (usage): Make static.
2836 (print_symname): Make format and name const.
2837 * objcopy.c (cat): Remove.
2838 (copy_archive): Make output_target const. Use concat, not cat.
2839 (copy_file, simple_copy, smart_rename): Make arguments const.
2840 * objdump.c (read_section_stabs): Likewise.
2841 (print_section_stabs): Likewise.
2842 (display_target_tables): Don't declare getenv.
2843 * strings.c (strings_object_file): Change file to const.
2844 (print_strings): Change filename to const.
2845 * Makefile.in: Rebuild dependencies.
2849 * configure.in: Add BFD_NEED_DECLARATION(getenv).
2850 * acconfig.h: Add NEED_DECLARATION_GETENV.
2851 * bucomm.h (getenv): Declare if NEED_DECLARATION_GETENV.
2852 * configure, config.in: Rebuild.
2853 * nlmconv.c (getenv): Don't declare.
2855 * Makefile.in: Rebuild dependencies.
2860 * objdump.c: Include "demangle.h".
2861 (do_demangle): New static variable.
2862 (usage): Mention -C/--demangle.
2863 (long_options): Add "demangle".
2864 (objdump_print_symname): New static function.
2865 (objdump_print_addr_with_sym): Use objdump_print_symname.
2866 (disassemble_bytes): Likewise.
2867 (dump_reloc_set): Likewise.
2868 (dump_symbols): Demangle symbol name.
2870 * binutils.texi, objdump.1: Document -C/--demangle.
2872 * objdump.c (usage): Mention --no-show-raw-insn.
2873 (long_options): Add "no-show-raw-insn".
2874 (disassemble_bytes): Handle --no-show-raw-insn.
2875 * binutils.texi, objdump.1: Document --no-show-raw-insn.
2879 * rddbg.c (free_saved_stabs): Set the strings to NULL after being
2884 * bucomm.c (set_default_bfd_target): New function.
2885 * bucomm.h (set_default_bfd_target): Declare.
2886 * ar.c (main): Call set_default_bfd_target.
2887 * nlmconv.c (main): Likewise.
2888 * nm.c (main): Likewise.
2889 * objcopy.c (main): Likewise.
2890 * objdump.c (main): Likewise.
2891 * size.c (main): Likewise.
2892 * strings.c (main): Likewise.
2893 * Makefile.in (bucomm.o): New target, to define TARGET.
2897 * objdump.c (adjust_section_vma): New static variable.
2898 (usage): Mention --adjust-section-vma.
2899 (OPTION_ADJUST_VMA): Define.
2900 (long_options): Add "addjust-vma".
2901 (display_bfd): If adjust_section_vma is not 0, add it to all the
2903 (main): Handle OPTION_ADJUST_VMA.
2904 * binutils.texi, objdump.1: Document --adjust-vma.
2908 * nm.c (print_symbol): Cache the BFD as well as the symbols and
2909 relocs, and don't try to use the symbols or relocs with a
2914 * config.h-vms: sbrk() is provided on openVMS/Alpha.
2915 * makefile.vms: allow compiling with current gcc snapshot.
2919 * arsup.c, coffgrok.c, dlltool.c, nlmconv.c: Use xmalloc rather
2924 * objdump.c (disassemble_data): Correct VMA argument to
2925 find_symbol_for_address. Improve handling of code with no symbol
2926 followed by code with a symbol.
2930 * objdump.c (disassemble_bytes): Make output of raw instructions
2931 work better for non-standard values of bytes_per_chunk and
2936 * objdump.c (disassemble_bytes): Added code to allow some control
2937 over the way raw instructions are displayed.
2941 * stabs.c (struct bincl_file): Add next_stack field.
2942 (push_bincl): Put the new file on both bincl_list and
2943 bincl_stack. Clear the file_types field.
2944 (pop_bincl): Use the next_stack field when popping the stack.
2945 Don't put the file on bincl_list.
2946 (find_excl): Include the file name when warning about an unfound
2949 * debug.c (debug_type_samep): Don't crash if we are passed NULL.
2953 * objcopy.1: Add missing space after .B.
2957 * objdump.c (disassemble_data): Initialize `aux.require_sec'.
2961 * objdump.c (objdump_print_value): Add skip_zeroes parameter.
2963 (objdump_print_addr_with_sym): Likewise. Call objdump_print_value
2965 (objdump_print_addr): New static function.
2966 (objdump_print_address): Just call objdump_print_addr.
2967 (disassemble_bytes): Print real address, not function offset.
2968 Skip a certain number of leading zeroes.
2970 * objdump.c (disassemble_zeroes): New static variable.
2971 (usage): Mention --disassemble-zeroes.
2972 (long_options): Add "disassemble-zeroes".
2973 (disassemble_bytes): Check disassemble_zeroes.
2977 * objdump.c (disassemble_bytes): Don't skip zeroes if the
2978 disassembler has told us that we are in a branch delay slot.
2982 * size.c (berkeley_sum): Rewrite. Skip sections which are not
2983 SEC_ALLOC. Count SEC_READONLY sections as text.
2987 * Makefile.in (maintainer-clean realclean): Remove *.info*, not
2992 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
2996 * configure.in: Work around bug in AC_FUNC_VFORK in autoconf 2.12.
2997 * configure: Rebuild.
3002 * objcopy.c (OPTION_WEAKEN): Define.
3003 (copy_options): Add "weaken".
3004 (copy_usage): Mention --weaken.
3005 (weaken): New static variable.
3006 (filter_symbols): Handle weaken.
3007 (copy_object): Call filter_symbols if weaken.
3008 (copy_main): Handle OPTION_WEAKEN.
3009 * binutils.texi, objcopy.1: Document --weaken.
3013 * mpw-make.sed: Use NewFolderRecursive for installation.
3017 * Makefile.in (install): Add "else true" clause to cater to
3018 broken "make" on some systems.
3022 * ieee.c (parse_ieee_bb): Always initialize namcopy to avoid gcc
3023 warning about uninitialized variable.
3024 (ieee_read_cxx_class): Likewise, for pf.
3025 (ieee_enum_type): Likewise, for i.
3029 * wrstabs.c (stab_array_type): Add casts when printing
3030 bfd_signed_vma values.
3032 * configure: Rebuild with autoconf 2.12.
3036 * objdump.c (disassemble_data): Don't crash if there is no
3041 * ar.c (open_inarch): Don't call bfd_openr with a null name.
3045 * binutils.texi: Add section on reporting bugs.
3049 * stabs.c (struct stab_handle): Add bincl_list field.
3050 (parse_stab): Pass value to push_bincl. Call find_excl for
3052 (struct bincl_file): Add hash, file and file_types fields.
3053 (push_bincl): Add hash parameter. Save it in the new hash field.
3054 Save the file number in the new file field.
3055 (pop_bincl): Put the bincl_file on bincl_list, rather than freeing
3056 it. Save the file types in the new file_types field.
3057 (find_excl): New static function.
3059 * ieee.c (ieee_lineno): Don't compare line number addresses to
3060 info->highaddr (undo part of October 28 patch).
3064 * objdump.c (objdump_print_value): Don't print the empty string
3069 * stabs.c (struct stab_handle): Add function_end field.
3070 (start_stab): Initialize function_end.
3071 (finish_stab): Pass info->function_end to debug_end_function.
3072 (parse_stab): If info->function_end is set, use it as the address
3073 which ends a function.
3075 * ieee.c (ieee_array_type): Remember the correct size.
3077 * ieee.c (ieee_finish_compilation_unit): Permit coalescing ranges
3078 that are up to 0x1000 bytes apart, not just 64.
3079 (ieee_add_bb11_blocks): Don't bother to emit a BB11 that is less
3081 (ieee_lineno): Only emit line numbers that are less than
3086 * ieee.c (struct ieee_defined_enum): Add defined field.
3087 (ieee_enum_type): If the enum tag has been seen before but not
3088 defined, reuse the same type index, and define it.
3089 (ieee_tag_type): If this enum has not been defined, add an
3090 undefined entry to the list of enums.
3092 * objdump.c (disassemble_bytes): Let the disassembler override the
3093 number of bytes printed on a line.
3097 * objdump.c (prefix_addresses): New static variable.
3098 (long_options): Add "prefix-addresses".
3099 (compare_symbols): Sort BSF_FUNCTION symbols before other
3101 (find_symbol_for_address): New static function, broken out of
3102 objdump_print_address.
3103 (objdump_print_addr_with_sym): New static function, broken out of
3104 objdump_print_address.
3105 (objdump_print_address): Call new functions.
3106 (disassemble_bytes): New static function, broken out of
3107 disassemble_data. Change disassembly format, unless
3108 prefix_addresses is set.
3109 (disassemble_data): Call disassemble_bytes. Unless
3110 prefix_addresses is set, disassemble in chunks headed by a
3112 * binutils.texi, objdump.1: Document --prefix-addresses.
3114 * rddbg.c (read_section_stabs_debugging_info): Preserve the
3115 backslash when concatenating multiple stabs strings.
3119 * dlltool.c (scan_open_obj_file): Fix loop exit test.
3120 Add missing parameter to def_exports.
3124 * Makefile.in (LEX_OPTIONS): Set to empty string. -I -Cem is the
3125 default for flex, and is not recognized by lex.
3129 * binutils.texi (Target Selection): Document that you can now
3130 specify targets using configuration triplets.
3132 * ar.c (usage): Declare. Make sure all callers pass an argument.
3136 * Makefile.in (clean): Remove config.log.
3140 * makefile.vms: Bump version date.
3144 * version.c (print_version): New function.
3145 * bucomm.h (print_version): Declare.
3146 * ar.c (program_version): Don't declare.
3147 (do_show_version): Remove.
3148 (usage): Add help parameter. Print bug report address.
3149 (main): Set is_ranlib at start. Check for --help and --version.
3150 Call print_version, not do_show_version.
3151 * nlmconv.c (program_version): Don't declare.
3152 (main): Call print_version.
3153 (show_usage): Print bug report address.
3154 * nm.c (program_version, print_version): Don't declare.
3155 (usage): Print bug report address.
3156 (main): Call print_version.
3157 * objcopy.c (program_version): Don't declare.
3158 (copy_usage): Print bug report address.
3159 (strip_usage): Likewise.
3160 (strip_main): Call print_version.
3161 (copy_main): Likewise.
3162 * objdump.c (program_version): Don't declare.
3163 (usage): Print bug report address.
3164 (main): Call print_version.
3165 * size.c (program_version): Don't declare.
3166 (usage): Print bug report address.
3167 (main): Call print_version.
3168 * strings.c (program_version): Don't declare.
3169 (main): Call print_version.
3170 (usage): Print bug report address.
3171 * Makefile.in: Update dependencies.
3175 * ieee.c: Revert Monday's reflocalp patch, and apply this patch
3177 (write_ieee_debugging_info): Write a dummy type at the end of the
3182 * ieee.c (struct ieee_write_type): Add reflocalp field.
3183 (ieee_pointer_type): Set reflocalp after pushing type.
3184 (ieee_function_type): If reflocalp is set, make this type local.
3185 (ieee_range_type, ieee_array_type, ieee_set_type): Likewise.
3186 (ieee_const_type, ieee_volatile_type): Likewise.
3187 (ieee_struct_field, ieee_class_baseclass): Likewise.
3189 * ieee.c (struct ieee_info): Add global_types field.
3190 (parse_ieee_bb): When starting a BB1, initialize the types field
3191 to the global_types field.
3192 (parse_ieee_be): When ending a BB2, copy the types field to the
3197 * objcopy.c (change_leading_char): New static variable.
3198 (OPTION_CHANGE_LEADING_CHAR): Define.
3199 (copy_options): Add "change-leading-char".
3200 (copy_usage): Mention --change-leading-char.
3201 (filter_symbols): Add obfd parameter. Change all callers.
3202 Implement change_leading_char.
3203 (copy_object): Call filter_symbols if change_leading_char.
3204 (copy_main): Handle OPTION_CHANGE_LEADING_CHAR.
3205 * binutils.texi, objcopy.1: Document --change-leading-char.
3209 * ieee.c (ieee_enum_type): Don't check index into a NULL names
3211 * nm.c (sort_symbols_by_size): Always initialize next.
3212 * rdcoff.c (parse_coff_type): Warn about an incomprehensible
3213 type rather than crashing.
3214 * rddbg.c (read_symbol_stabs_debugging_info): Initialize f.
3215 * stabs.c (parse_stab_members): Set context in all cases.
3219 * configure.in (i[345]86-*-*): Recognize i686 for pentium pro.
3220 * configure: Regenerate.
3224 * objdump.c (L_tmpnam): Never define.
3225 (display_target_list): Use choose_temp_base instead of tmpnam.
3226 (display_info_table): Likewise.
3230 * stabs.c (parse_stab): An N_FUN symbol with an empty string
3231 indicates the end of a function.
3235 * wrstabs.c (struct string_hash_entry): Add next field.
3236 (struct stab_write_handle): Change strings to a pointer to
3237 string_hash_entry. Add last_strings field. Remove strings_alloc
3239 (string_hash_newfunc): Initialize next field.
3240 (stab_write_symbol): Copy string into hash table rather than into
3241 buffer. Keep a list of hash table entries.
3242 (write_stabs_in_sections_debugging_info): Initialize last_string.
3243 Copy strings from list of hash table entries in memory.
3244 (stab_modify_type): If the entry on the stack is a definition,
3245 make a new definition rather than failing an assert.
3246 (stab_array_type): The size is only zero if high is strictly less
3249 * ieee.c (struct ieee_info): Add saw_filename field.
3250 (parse_ieee): Initialize saw_filename.
3251 (parse_ieee_bb): Set saw_filename for a BB1 or BB2. In a BB1,
3252 discard the current variables and types. In a BB10, if no
3253 filename has been seen, call debug_set_filename.
3254 (parse_ieee_ty): In case 'g', the type is optional.
3256 * prdbg.c (pr_fix_visibility): Don't abort on
3257 DEBUG_VISIBILITY_IGNORE.
3259 * debug.c (debug_name_type): Correct error message.
3261 * configure.in: Substitute HLDENV.
3262 * configure: Rebuild.
3263 * Makefile.in (HLDENV): New variable. Use it whenever linking a
3268 * mpw-make.sed: Add symbolic doublequotes around the version
3273 * makefile.vms: Add better support for DEC C compilation.
3274 Add new macros as in Makefile.in.
3278 * configure.in: Call BFD_NEED_DECLARATION on strstr and sbrk.
3279 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
3280 (NEED_DECLARATION_SBRK): New macro.
3281 * configure, config.in: Rebuild.
3282 * bucomm.h (strstr): Declare if NEED_DECLARATION_STRSTR.
3283 (sbrk): Declare if HAVE_SBRK and NEED_DECLARATION_SBRK.
3285 * prdbg.c (pr_end_struct_type): Avoid using a string constant in
3286 assert, for the benefit of broken assert macros.
3290 * objdump.c (disassemble_data): Set disasm_info.flavour from
3295 * dlltool.c (secdata): In non DLLTOOL_PPC case, change alignment
3296 of .text section to 2.
3300 * objdump.c (dump_section_stabs): Fix test for stabs sections
3301 ending with numbers. This fixes a problem with .stab being
3302 confused with .stab.index.
3306 * stabs.c (stab_demangle_fund_type): Return a void * for a
3307 template, rather than simply aborting.
3311 * ar.c (open_inarch): Add file parameter. Change all callers. If
3312 this is a newly created archive, set the target based on the
3314 * arsup.h (open_inarch): Update declaration.
3318 * Makefile.in (VERSION): Set to cygnus-2.7.1.
3320 * Released binutils 2.7.
3322 * rdcoff.c (parse_coff): Get address to pass to debug_end_function
3323 from function size, not value of .ef symbol. From Ning
3328 * objcopy.c (strip_main): Add -o option, and handle it.
3329 (strip_usage): Mention -o.
3330 * binutils.texi, strip.1: Mention -o.
3334 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
3335 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf set values.
3337 * configure.in (AC_PREREQ): Autoconf 2.5 or higher.
3341 * objdump.c (endian): New static variable.
3342 (usage): Mention -EB/-EL/--endian.
3343 (long_options): Add "endian".
3344 (disassemble_data): If endianness was specified, replace
3345 abfd->xvec with a copy of itself with the given endianness.
3346 (main): Handle -EB/-EL/--endian.
3347 * binutils.texi, objdump.1: Mention -EB/-EL/--endian.
3349 * objdump.c: Make most variables and functions static.
3351 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
3352 using shared libraries.
3353 * configure: Rebuild with autoconf 2.10.
3357 * dlltool.c (secdata): Changed .rdata to .reldata so .reloc will work.
3358 (make_one_lib_file): Removed cruft. (#if 1)
3362 * objdump.c (stabs): Change from struct internal_nlist * to
3364 (print_section_stabs): Fetch stabs information directly, rather
3365 than assuming that struct internal_nlist is the right size.
3367 * binutils.texi: Document change to binary format: file position
3368 based on load address, not section VMA.
3370 * bucomm.h: Define SEEK_SET, SEEK_CUR, and SEEK_END if they are
3371 not already defined.
3375 * Makefile.in (DISTSTUFF): Add deflex.c.
3379 * config.h-vms, makefile.vms: New files.
3383 * dlltool.c (make_one_lib_file): Use BFD_RELOC_RVA rather than
3384 BFD_RELOC_32 in IDATA7.
3388 * nm.c (struct get_relocs_info): Define.
3389 (line_numbers): New static variable.
3390 (long_options): Add "line-numbers".
3391 (usage): Mention -l and --line-numbers.
3393 (print_symbol): Print line numbers if requested.
3394 (get_relocs): New static function.
3395 * binutils.texi, nm.1: Document -l/--line-numbers.
3399 * objdump.c (dump_reloc_set): Add sec parameter. Change all
3400 callers. If with_line_numbers is set, display line numbers of
3402 * binutils.texi, objdump.1: Document -l with -r.
3406 * ar.c (open_inarch): Report BFD error message if an archive can
3407 not be recognized. List matching formats if the file is
3408 ambiguously recognized.
3409 (ranlib_touch): Likewise.
3413 * README: Add notes on how to build if you don't have ar.
3415 * Makefile.in: Remove old incorrect setting of CC.
3419 * Makefile.in (install): Don't check to see if tooldir exists.
3420 Make $(tooldir) and $(tooldir)/bin.
3424 * strings.c (main): Make main an int function, not void.
3428 * nm.c (filter_symbols): Check for BSF_WEAK as well as
3430 * objcopy.c (filter_symbols): Likewise.
3434 * objcopy.c (copy_object): Make clear that it is only a warning
3435 when the output file can not represent the architecture.
3439 * objdump.c (disassemble_data): Don't refer to bytes past the end
3444 * rddbg.c (read_symbol_stabs_debugging_info): Move call to
3445 free_saved_stabs outside the loop over the symbols.
3449 * objdump.c (compare_symbols): Sort symbols whose names start with
3450 `.' after other symbols. If no other decision can be made, sort
3455 * dep-in.sed: Substitute $(BFDDIR) for @BFDDIR@.
3456 * Makefile.in: Rebuild dependencies.
3457 (dep.sed): Substitute $(BFDDIR) for @BFDDIR@.
3461 * rdcoff.c: New file.
3462 * rddbg.c (read_debugging_info): Read COFF symbols if COFF flavour
3463 and no stabs were found.
3464 * budbg.h (parse_coff): Declare.
3465 * Makefile.in: Rebuild dependencies.
3466 (CFILES): Add rdcoff.c.
3467 (DEBUG_OBJS): Add rdcoff.o.
3471 * nlmconv.c (choose_temp_base{,_try}): Delete, in libiberty now.
3472 (link_inputs): Update call to choose_temp_base.
3476 * configure.in: Permit --enable-shared to specify a list of
3478 * configure: Rebuild.
3482 * objdump.c (dump_section_header): Print the SEC_LINK_ONCE flag
3483 and the SEC_LINK_DUPLICATES field.
3487 * nlmconv.1: Changed to be recognized by catman -w on Solaris.
3491 * wrstabs.c (stab_enum_type): Set buf before using it.
3495 * stabs.c (struct stab_handle): Add field abfd.
3496 (start_stab): Add abfd parameter.
3497 (parse_stab_string): Skip the symbol leading char when searching
3498 for the value of a global symbol.
3499 * budbg.h (start_stab): Update declaration.
3500 * rddbg.c (read_section_stabs_debugging_info): Pass abfd to
3502 (read_symbol_stabs_debugging_info): Likewise.
3506 * wrstabs.c (stab_function_type): Output an empty typedef for an
3507 unused argument, rather than making up a meaningless name.
3508 (stab_variable): Use N_RSYM for a DEBUG_REGISTER variable.
3510 * ieee.c (struct ieee_info): Add global_vars field.
3511 (parse_ieee_be): When ending the global typedef block, copy the
3512 variables into info->global_vars.
3513 (parse_ieee_atn): Don't require an NN record for a pmisc ATN.
3514 (ieee_read_reference): Search the global variables after the local
3519 * objdump.c (disassemble_data): Make sure sym_name is always set.
3520 (dump_section_header): Always put a space after the section name.
3521 (dump_bfd_header): Terminate output with newline.
3525 * wrstabs.c: New file.
3526 * budbg.h (write_stabs_in_sections_debugging_info): Declare.
3527 * objcopy.c (write_debugging_info): For COFF or ELF, output stabs
3529 * Makefile.in: Rebuild dependencies.
3530 (CFILES): Add wrstabs.c.
3531 (WRITE_DEBUG_OBJS): New variable.
3532 ($(OBJCOPY_PROG)): Use $(WRITE_DEBUG_OBJS), not $(DEBUG_OBJS).
3533 ($(STRIP_PROG)): Likewise.
3535 * stabs.c (parse_stab_members): Make type stub detection more like
3538 * ieee.c (struct ieee_handle): Add fields complex_float_index and
3539 complex_double_index.
3540 (ieee_complex_type): Cache type index in complex_float_index and
3541 complex_double_index, depending upon size. Set size on type stack
3544 * ieee.c (ieee_empty_type): Use builtin_unknown, not 0.
3545 (ieee_void_type): Use builtin_void, not 1.
3547 * ieee.c (parse_ieee_ty): Handle 'V' type code.
3548 (parse_ieee_atn): Don't require two numbers for type 10.
3550 * ieee.c (parse_ieee_be): Add one to offset at end of function or
3553 * ieee.c (struct ieee_block): Add field skip.
3554 (parse_ieee_bb): Don't call debug_record_function for __XRYCPP
3555 function, and set skip field.
3556 (parse_ieee_be): Don't call debug_end_function if skip is set.
3558 * debug.c (struct debug_handle): Add fields current_write_lineno
3559 and current_write_lineno_index.
3560 (debug_write): Initialize current_write_lineno and
3561 current_write_lineno_index for each unit. Call
3562 debug_write_linenos rather than writing out the line numbers
3564 (debug_write_function): Call debug_write_linenos.
3565 (debug_write_block): Likewise.
3566 (debug_write_linenos): New static function.
3568 * debug.c (debug_write_type): For DEBUG_KIND_FUNCTION, push return
3569 type before arguments.
3573 * configure.in: Add AC_FUNC_VFORK.
3574 * configure, config.in: Rebuild.
3575 * dlltool.c, nlmconv.c: Include <vfork.h> if HAVE_VFORK_H is
3578 * stabs.c (parse_stab_range_type): A complex type is defined as a
3579 subrange of itself with the high bound zero.
3580 * ieee.c (ieee_complex_type): Don't crash on sizes of 12 or 16.
3584 * ieee.c (ieee_write_undefined_tag): Switch to global_types even
3586 (ieee_tag_type): For an enum, look through info->enums.
3588 * configure: Rebuild with autoconf 2.8.
3590 * debug.c (debug_type_samep): Don't loop endlessly in
3595 * rddbg.c (read_section_stabs_debugging_info): Call save_stab for
3596 each stab entry, call stab_context on an error, and call
3597 free_saved_stabs before rturning.
3598 (read_symbol_stabs_debugging_info): Likewise.
3599 (SAVE_STABS_COUNT): Define.
3600 (struct saved_stab): Define.
3601 (saved_stabs, saved_stabs_index): New static variables.
3602 (save_stab, stab_context, free_saved_stabs): New static functios.
3604 * objdump.c (stab_name): Remove.
3605 (struct stab_print): Remove.
3606 (stab_print): Remove.
3607 (dump_stabs): Don't initialize stab_name.
3608 (print_section_stabs): Call bfd_get_stab_name rather than using
3609 the stab_name array.
3613 * prdbg.c (pr_int_constant): Initialize info correctly.
3614 (pr_float_constant): Likewise.
3618 * mpw-make.sed: Update to handle shared library support.
3622 * Makefile.in ($(OBJDUMP_PROG)): Search $(BFDLIB) before
3627 * configure.in: Don't tamper with LDFLAGS. Call AC_PROG_CC before
3629 * configure: Rebuild.
3631 * configure.in: Substitute RPATH_ENVVAR.
3632 * configure: Rebuild.
3633 * Makefile.in (RPATH_ENVVAR): New variable.
3634 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
3636 * objcopy.c (smart_rename): Rather than doing chmod then chown, do
3637 chmod without setuid, then chown, then chmod with setuid.
3641 * arsup.c (map_over_list): Reindent. Don't assume that the
3642 function does not delete the BFD.
3643 (ar_addlib_doer): Don't set prev->next if prev is NULL.
3647 * ieee.c (ieee_regno_to_genreg): Convert register numbers for m68k
3649 (ieee_genreg_to_regno): Likewise.
3653 * ieee.c: Extensive changes to write code to put types in the
3654 global type block when possible, to output ranges for all memory
3655 occupied by the module, and to improve efficiency.
3657 * debug.c (struct debug_handle): Remove class_mark field. Add
3658 id_list and compare_list fields.
3659 (struct debug_class_id): Define.
3660 (struct debug_type_compare_list): Define.
3661 (debug_write): Initialize info->id_list
3662 (debug_write_name): Remove reference to info->class_mark.
3663 (debug_write_type): Get id for all structs and classes. Simplify
3664 test for whether struct has already been written.
3665 (debug_write_class_type): Get id for all classes. Simplify test
3666 for whether class has already been written.
3667 (debug_write_block): Don't write out blocks other than the top
3668 level block if they have no local variables.
3669 (debug_set_class_id): New static function.
3670 (debug_type_samep): New static function.
3671 (debug_class_type_samep): New static function.
3672 * prdbg.c (pr_start_struct_type): Always print id.
3673 (pr_start_class_type): Likewise.
3674 (pr_tag_type): Likewise.
3676 * stabs.c (struct stab_handle): Add syms and symcount fields.
3677 (start_stab): Add syms and symcount parameters. Change all
3679 (parse_stab_string): Look up global variables in the symbol table
3680 to get the right value.
3681 * budbg.h (start_stab): Update declaration.
3682 * rddbg.c (read_section_stabs_debugging_info): Add syms and
3683 symcount parameters. Change all callers.
3685 * stabs.c (parse_stab_array_type): If the index type is 0, use
3690 * ieee.c (ieee_start_compilation_unit): Clear modified and
3691 modified_alloc fields of info.
3693 * configure.in: Check for --enable-shared. Substitute new
3694 variables BFDLIB and OPCODES.
3695 * configure: Rebuild.
3696 * Makefile.in (BFDLIB): Set to @BFDLIB@.
3697 (OPCODES): Set to @OPCODES@.
3701 Support for building bfd and opcodes as shared libraries, based on
3703 * configure.in (HLDFLAGS): New substitution.
3704 * configure: Rebuild.
3705 * Makefile.in (HLDFLAGS): New variable. Make all links use
3706 $(HLDFLAGS) before $(CFLAGS) and $(LDFLAGS).
3707 (BFDLIB_DEP): New variable. Replace all occurrences of $(BFD) as
3708 a dependency with $(BFDLIB_DEP). Remove $(BFD) as a dependency if
3709 there is also a dependency on $(ADDL_DEPS).
3710 (BFDLIB): Rename from BFD; change all uses; set to -L../bfd -lbfd.
3711 (OPCODES_DEP): New variable. Replace all occurrends of $(OPCODES)
3712 as a dependency with $(OPCODES_DEP).
3713 (OPCODES): Set to -L../opcodes -lopcodes.
3714 (ADDL_DEPS): New variable. Replace all occurrences of
3715 $(ADDL_LIBS) as a dependency with $(ADDL_DEPS).
3716 (check): Set LD_LIBRARY_PATH in the environment.
3717 (config.status): Depend upon BFD configure.host and config.bfd.
3721 * objdump.c: #include stdarg.h or varargs.h.
3722 (objdump_print_value): Change FILE* arg to struct disassemble_info*.
3723 All callers updated. Use fprintf_func.
3724 (objdump_print_address): Consistently use fprintf_func.
3725 (objdump_sprintf): New function.
3726 (disassemble_data): Print insn into a buffer, print raw insn ourselves,
3727 then print insn mnemonic.
3731 * configure: Regenerate.
3735 * configure.in (i[3-6]86-*-win32): Becomes i[3-6]86-*-cygwin32.
3736 (powerpc*-*-cygwin32): New.
3737 * configure: Regenerated.
3741 * Makefile.in (distclean): Remove $(DEMANGLER_PROG).1.
3746 * objcopy.c (remove_leading_char): New static variable.
3747 (OPTION_REMOVE_LEADING_CHAR): Define.
3748 (copy_usage): Mention --remove-leading-char.
3749 (filter_symbols): If remove_leading_char, and the first character
3750 of a global symbol matches the symbol leading char of the BFD,
3751 remove the first character.
3752 (copy_object): Filter the symbols if remove_leading_char is set.
3753 (copy_main): Handle --remove-leading-char.
3754 * binutils.texi, objcopy.1: Document --remove-leading-char.
3758 * objdump.c (fprintf): Add prototype to avoid compiler warning on
3763 * binutils.texi (nm): Improve documentation on symbol types.
3764 (objdump): Reference the stabs manual from the discussion of the
3769 * mpw-make.sed: Add a "stamps" target.
3773 * objdump.c (dump_headers, dump_section_header): Change objdump -h
3774 output to be simpler and to include section file offsets.
3778 * stabs.c (parse_stab_members): Don't adjust voffset.
3780 * ieee.c (ieee_read_cxx_class): Don't multiply voffset by 4.
3781 (struct ieee_write_type): Add name field.
3782 (struct ieee_type_class): Remove name field. Change all uses to
3783 use new name field in type instead.
3784 (struct ieee_name_type): Likewise.
3785 (ieee_start_struct_type): Initialize name field of type.
3786 (ieee_start_class_type): Don't initialize classdef entry of tag.
3787 (ieee_class_method_var): Don't adjust voffset.
3788 (ieee_end_class_type): Likewise.
3789 (ieee_tag_type): Initialize new name field of type.
3790 (ieee_typdef): Set name after copying in type information.
3792 * debug.c (VOFFSET_STATIC_METHOD): Define as -1, not 1.
3794 * ieee.c (struct ieee_modified_type): Define.
3795 (struct ieee_handle): Add modified and modified_alloc fields.
3796 (ieee_get_modified_info): New static function.
3797 (ieee_pointer_type): Cache type index.
3798 (ieee_const_type): Likewise.
3799 (ieee_volatile_type): Likewise.
3801 * ieee.c (ieee_define_named_type): When creating a tag for an
3802 anonymous struct, copy the name into memory.
3803 (ieee_tag_type): Likewise.
3804 * debug.c (debug_write_type): Only check and set id field for an
3806 (debug_write_class_type): Likewise.
3808 * ieee.c: Various changes to write out types for functions and
3809 references, and to not write out unnecessary function types.
3811 * ieee.c (struct ieee_var): Remove variable field. Add kind
3812 field, and define some enum constants for it.
3813 (parse_ieee_ty): Set kind field of variable for 'x' and 'X' types.
3814 (parse_ieee_atn): Make an indirect slot for an external variable,
3815 although we otherwise don't record it. Set kind field rather than
3816 variable field of pvar.
3817 (ieee_read_cxx_class): Try to get the type of a static member.
3818 (ieee_read_reference): Check kind field rather than variable
3823 * ieee.c: Various changes to handle reading C++ reference type
3826 * debug.h (enum debug_var_kind): Add DEBUG_VAR_ILLEGAL.
3827 (enum debug_parm_kind): Add DEBUG_PARM_ILLEGAL.
3828 * debug.c (debug_get_parameter_types): Handle DEBUG_KIND_FUNCTION.
3830 * ieee.c: Various changes to write out definitions of C++ classes.
3832 * debug.c (debug_append_filename): Remove.
3833 * debug.h (debug_append_filename): Don't declare.
3835 * stabs.c (struct stab_handle): Remove last_type field. Add
3836 so_string and so_value fields.
3837 (finish_stab): Call stab_emit_pending_vars before calling
3838 debug_end_function. Don't warn about pending variables.
3839 (parse_stab): Accumulate N_SO strings until a non N_SO symbol is
3840 seen, rather than calling debug_append_filename. Call
3841 stab_emit_pending_vars before calling debug_end_function. Don't
3842 set info->last_type.
3846 * objdump.c (disassemble_data): Handle unknown endianness.
3847 Pass fprintf to INIT_DISASSEMBLE_INFO.
3851 Add new option --show-raw-insn.
3852 * objdump.c (show_raw_insn): New global.
3854 (long_options): Update.
3855 (disassemble_data): Set disasm_info.flags if --show-raw-insn.
3857 * objdump.c (disassemble_data): Set new arch,mach,endian fields in
3862 * ieee.c: Extensive changes to pass a single info argument around
3863 in the reading routines, rather than several arguments. Add code
3864 to read C++ debugging records.
3866 * debug.h (debug_get_type_size): Declare.
3867 (debug_get_field_name): Declare.
3868 (debug_get_field_bitpos): Declare.
3869 (debug_get_field_bitsize): Declare.
3870 (debug_get_field_visibility): Declare.
3871 (debug_get_field_physname): Declare.
3872 * debug.c (debug_get_real_type): Handle DEBUG_KIND_TAGGED.
3873 (debug_get_type_size): New function.
3874 (debug_get_field_name): New function.
3875 (debug_get_field_bitpos): New function.
3876 (debug_get_field_bitsize): New function.
3877 (debug_get_field_visibility): New function.
3878 (debug_get_field_physname): New function.
3879 (debug_write_type): Make sure we pass the real kind, not INDIRECT,
3880 to tag_type. Pass the name recursively for INDIRECT.
3884 * debug.h (struct debug_write_fns): Remove ellipsis_type. Add int
3885 and boolean parameters to function_type. Add boolean parameter to
3887 (debug_make_ellipsis_type): Don't declare.
3888 (debug_make_function_type): Add debug_type * and boolean
3889 parameters. Change all callers.
3890 (debug_make_method_type): Add boolean parameter. Change all
3892 (debug_get_parameter_types): Add boolean * parameter. Change all
3894 (debug_get_target_type): Declare.
3895 * debug.c (struct debug_function_type): Add fields arg_types and
3897 (struct debug_method_type): Add field varargs.
3898 (debug_ellipsis_type, ELLIPSIS_P): Remove.
3899 (debug_make_ellipsis_type): Remove.
3900 (debug_make_function_type): Add arg_types and varargs parameters.
3901 (debug_make_method_type): Add varargs parameter.
3902 (debug_get_parameter_types): Add pvarargs parameter.
3903 (debug_get_target_type): New function.
3904 (debug_write_type): In case DEBUG_KIND_FUNCTION, push argument
3905 types and pass count to function_type. In DEBUG_KIND_METHOD, use
3906 a signed int for the count, don't call ellipsis_type, and pass
3907 varargs to method_type.
3908 * stabs.c (struct stab_demangle_info): Add varargs field.
3909 (stab_demangle_argtypes): Add pvarargs parameter. Change all
3911 (stab_demangle_args): Likewise.
3912 (stab_demangle_type): In case 'F', pick up argument types.
3913 * prdbg.c (pr_ellipsis_type): Remove.
3914 (pr_function_type): Add argcount and varargs parameters.
3915 (pr_method_type): Add varargs parameter.
3916 * ieee.c (ieee_ellipsis_type): Remove.
3917 (ieee_function_type): Add argcount and varargs parameters.
3918 (ieee_method_type): Add varargs parameter. Remove most of
3919 function body, and just call ieee_function_type.
3921 * stabs.c: Include "demangle.h". Added several new static
3922 functions not listed below to demangle argument types; they are
3923 all called via stab_demangle_argtypes.
3924 (finish_stab): If the kind of an undefined tag is
3925 DEBUG_KIND_ILLEGAL, use DEBUG_KIND_STRUCT instead. Warn if there
3926 are any pending variable.
3927 (parse_stab): Don't close the function when the block depth goes
3928 to zero. Pass value to debug_end_function.
3929 (parse_stab_string): In case 'T', pass the name to
3931 (parse_stab_type): In case 'x', use stab_find_tagged_type. In
3932 case '#', handle functions with variable numbers of arguments.
3933 (parse_stab_struct_type): Add tagname parameter. Change all
3935 (parse_stab_members): Add tagname and typenums parameters. Change
3936 all callers. If the type of a method is a stub, call
3937 parse_stab_argtypes to demangle the argument types and get the
3938 physical name of the function.
3939 (parse_stab_argtypes): New static function.
3940 (stab_record_variable): For a DEBUG_GLOBAL or DEBUG_STATIC
3941 variable, call debug_record_variable immediately.
3942 (stab_find_tagged_type): New static function.
3944 * debug.h (enum debug_type_kind): Add DEBUG_KIND_ILLEGAL.
3945 (struct debug_write_fns): Add field ellipsis_type. Add id
3946 parameter to start_struct_type, start_class_type, and tag_type.
3947 (debug_make_ellipsis_type): Declare.
3948 (debug_find_named_type): Declare.
3949 (debug_get_type_kind): Declare.
3950 (debug_get_return_type): Declare.
3951 (debug_get_parameter_types): Declare.
3952 (debug_get_fields): Declare.
3953 (debug_get_field_type): Declare.
3954 * debug.c (struct debug_handle): Add fields class_id and base_id.
3955 (struct debug_class_type): Add field id.
3956 (struct debug_method_variant): Rename argtypes to physname.
3958 (debug_ellipsis_type): New static variable.
3959 (ELLIPSIS_P): New macro.
3960 (debug_make_ellipsis_type): New function.
3961 (debug_make_method_variant): Rename argtypes to physname.
3962 (debug_make_static_method_variant): Likewise.
3963 (debug_name_type): Always put types in the global namespace.
3964 (debug_find_named_type): New function.
3965 (debug_find_tagged_type): Treat DEBUG_KIND_ILLEGAL specially,
3966 rather than DEBUG_KIND_VOID.
3967 (debug_get_real_type): New static function.
3968 (debug_get_type_kind): New function.
3969 (debug_get_return_type): New function.
3970 (debug_get_parameter_types): New function.
3971 (debug_get_fields): New function.
3972 (debug_get_field_type): New function.
3973 (debug_write): Initialize base_id.
3974 (debug_write_type): Pass new id argument to tag_type. Handle
3975 DEBUG_KIND_ILLEGAL. Use id for DEBUG_KIND_STRUCT and
3976 DEBUG_KIND_UNION. Handle ellipsis for method arguments.
3977 (debug_write_class_type): Don't dereference kclass if it is NULL.
3979 * prdbg.c (pr_fns): Add pr_ellipsis_type.
3980 (pr_ellipsis_type): New static function.
3981 (pr_pointer_type): If this is a pointer to an array, parenthesize
3983 (pr_start_struct_type): Add id parameter.
3984 (pr_start_class_type): Likewise.
3985 (pr_tag_type): Likewise.
3986 (pr_fix_visibility): Add the visibility to the top of the stack,
3987 not the second element on the stack.
3988 (pr_struct_field): Pop the stack before calling pr_fix_visibility.
3989 (pr_class_static_member): Likewise.
3990 (pr_class_start_method): Don't push a type, just set the method
3991 name in the type on the top of the stack.
3992 (pr_class_end_method): Don't pop the stack.
3993 (pr_class_method_variant): Rename argtypes parameter to physname.
3994 Append const and volatile rather than prepending them. Add a
3995 space after the physname.
3996 (pr_class_static_method_variant): Likewise.
3997 * ieee.c (ieee_fns): Add ieee_ellipsis_type.
3998 (ieee_define_named_type): Use DEBUG_KIND_ILLEGAL rather than
4000 (write_ieee_debugging_info): Likewise.
4001 (ieee_typdef): Likewise.
4002 (ieee_ellipsis_type): New static function.
4003 (ieee_start_struct_type): Add id parameter.
4004 (ieee_start_class_type): Likewise.
4005 (ieee_tag_type): Likewise.
4006 (ieee_class_method_variant): Rename name to physname.
4007 (ieee_class_static_method_variant): Likewise.
4009 * Makefile.in (DEBUG_OBJS): Remove prdbg.o.
4010 ($(OBJDUMP_PROG)): Depend upon, and link against, prdbg.o.
4014 * dlltool.c (make_tail): Changed the order of the sections to avoid
4015 an alignment problem.
4019 * srconv.c (wr_du): Set du.stackfrmt to 0.
4020 (wr_un, wr_sc): Emit all sections, even those with 0 size.
4024 * srconv.c (wr_hd): Space size within segment was being
4025 stored in segment identifier field.
4029 * mpw-config.in (BUILD_NLMCONV, BUILD_SRCONV, SYSINFO_PROG,
4030 BUILD_DLLTOOL): Put definitions for these into makefile when
4031 configuring, instead of always clearing in mpw-make.sed.
4032 * mpw-make.sed: Edit out any host_alias or target_alias settings,
4033 fix pathname to BFD internal include files, remove dependency
4038 * objdump.c (dump_section_header): Add new section flags
4039 SEC_{EXCLUDE,SORT_ENTRIES}.
4043 * objcopy.c (filter_symbols): NULL terminate the output symbols.
4044 (copy_object): Allocate space for a possible extra NULL pointer.
4046 * debug.c (debug_make_undefined_tagged_type): Make sure we are
4047 given a kind of type we can handle.
4048 (debug_write_type): Handle undefined enums and structs.
4049 (debug_write_class_type): Handle undefined classes.
4050 * prdbg.c (pr_enum_type): Handle an undefined enum.
4051 * ieee.c (ieee_enum_type): Likewise.
4055 * Makefile.in: Updated dependencies.
4056 (ALLOCA, MALLOC): Remove variables.
4057 (ADDL_LIBS): Remove $(MALLOC) from definition.
4058 * alloca.c, gmalloc.c: Remove.
4062 * ieee.c: Add global function write_ieee_debugging_info and a
4063 bunch of static functions and structs used to write out IEEE
4064 debugging information.
4065 * budbg.h (write_ieee_debugging_info): Declare.
4067 * ieee.c (struct ieee_type): Add pslot field.
4068 (enum builtin_types): Define.
4069 (ieee_builtin_type): For a pointer, return a pointer to the named
4070 type. Use enum values rather than numbers.
4071 (ieee_alloc_type): New static function.
4072 (ieee_read_type_index): Use ieee_alloc_type.
4073 (parse_ieee_bb): Likewise.
4074 (parse_ieee_ty): Likewise. Use ieee_builtin_type for array range,
4075 rather than making a new integer type. Store the new type in the
4076 slot, if there is one.
4077 (parse_ieee_atn): Treat ATN10 as defining a register variable.
4078 (ieee_regno_to_genreg): Rename from ieee_regno_to_gen. Change all
4080 (ieee_genreg_to_regno): New static function.
4082 * stabs.c (parse_stab_type): Add new typename parameter. Change
4084 (parse_stab_range_type): Add new typename parameter. Change all
4087 * debug.h (struct debug_write_fns): Add tag parameter to
4088 enum_type, start_struct_type, and start_class_type.
4089 * debug.c (debug_write_type): Pass any tag name to
4090 start_struct_type, debug_write_class_type, and enum_type. If
4091 DEBUG_KIND_TAGGED, pass the name in the recursive call.
4092 (debug_write_class_type): Accept a new tag parameter, and pass it
4093 to start_class_type.
4094 * prdbg.c (pop_type): Don't remove '+' character.
4095 (pr_enum_type): Accept and use tag parameter.
4096 (pr_start_struct_type): Likewise.
4097 (pr_start_class_type): Likewise.
4098 (pr_class_baseclass): Adjust algorithm used to find where to put
4100 (pr_tag): Don't bother to insert the tag name.
4102 * objcopy.c: Include budbg.h.
4103 (convert_debugging): New static variable.
4104 (OPTION_DEBUGGING): Define.
4105 (copy_options): Add "debugging".
4106 (copy_usage): Mention --debugging.
4107 (is_strip_section): Skip debugging sections if convert_debugging.
4108 (setup_section, copy_section): Likewise.
4109 (filter_symbols): Skip debugging symbols if convert_debugging.
4110 (copy_object): If convert_debugging, read and write debugging
4112 (write_debugging_info): New static function.
4113 (copy_main): Handle --debugging.
4114 * Makefile.in (DEBUG_OBJS): New variable.
4115 ($(OBJCOPY_PROG)): Depend upon and link against $(DEBUG_OBJS).
4116 ($(STRIP_PROG)): Likewise.
4117 (OBJDUMP_OBJS): Remove variable.
4118 ($(OBJDUMP_PROG)): Use objdump.o $(DEBUG_OBJS) rather than
4120 * binutils.texi, objcopy.1: Document --debugging.
4124 * ieee.c: New file with code to read IEEE debugging information.
4125 * budbg.h (parse_ieee): Declare.
4126 * rddbg.c (read_debugging_info): Handle IEEE flavour files.
4127 (read_ieee_debugging_info): New static function.
4128 * Makefile.in: Rebuild dependencies.
4129 (CFILES): Add ieee.c.
4130 (OBJDUMP_OBJS): Add ieee.o.
4132 * bucomm.h (xrealloc): Change type of first parameter from char *
4137 * Makefile.in: Add targets to automatically rebuild dependencies.
4138 Remove targets which just listed dependencies of .o files.
4139 (DEP): New variable.
4140 (HFILES, GENERATED_HFILES): New variables.
4141 (CFILES, GENERATED_CFILES): New variables.
4142 (underscore.c): Don't do anything, just depend upon stamp-under.
4143 (stamp-under): New target; do what underscore.c used to do.
4144 (nlmconv.o): Depend upon sym.h and ecoff.h.
4145 (.dep, .dep1, dep.sed, dep, dep-in): New targets.
4146 (stage1, stage2, stage3, against, comparison): Remove.
4147 (de-stage1, de-stage2, de-stage3): Remove.
4148 (clean, distclean): Remove stamp-under and dep.sed.
4149 * dep-in.sed: New file.
4151 Implement generic debugging support. Implement a stabs reader and
4153 * budbg.h, debug.c, debug.h, prdbg.c, rddbg.c, stabs.c: New files.
4154 * objdump.c: Include "debug.h" and "budbg.h".
4155 (dump_debugging): New global variable.
4156 (usage): Mention --debugging.
4157 (long_options): Add "debugging".
4158 (display_bfd): Handle --debugging.
4159 * Makefile.in (OBJDUMP_OBJS): New variable.
4160 ($(OBJDUMP_PROG)): Use $(OBJDUMP_OBJS).
4161 * binutils.texi, objdump.1: Document --debugging.
4165 * nm.c ( long_options): Add "--defined-only" option.
4166 (usage): Update for new "--defined-only" option.
4167 (filter_symbols): Handle "--defined-only".
4171 * arparse.y: Include "bucomm.h", not <sysdep.h>.
4172 * nlmheader.y: Don't include "sysdep.h".
4176 * nm.c (print_symdef_entry): Check return value of
4177 bfd_get_elt_at_index.
4181 * configure.in (DLLTOOL_DEFS): Build dlltool for PowerPC if target
4182 is powerpc*-*-win* in addition to powerpc*-*-*pe*.
4186 * objdump.c (endian_string): New static function.
4187 (display_target_list): Use it.
4188 * nlmconv.c (main): Use new bfd_big_endian macro.
4192 * dlltool.c (fill_ordinals): Start from 1 if no other instructions
4197 * Makefile.in (clean): Remove $(DEMANGLER_PROG).1. From Ronald
4202 * mac-binutils.r: Fix copyright and version strings.
4204 * Makefile.in (version): Remove, no longer used.
4208 * mpw-make.sed (install, install-only): Edit in Mac-specific
4213 * dlltool.c (ppc_jtab): The binary glue for PowerPC dll linkage,
4214 including the return instruction.
4215 sinfo: added a preferred alignment field.
4216 (secdata): section data for the PowerPC version.
4217 (make_one_lib_file): More symbols, More sections (pdata, rdata)
4218 (make_tail): Use idata$6 instead of idata$7 for ppc. Also added a
4219 NULL idata$3 descriptor (temporary).
4223 * dlltool.c (fill_ordinals): Don't reference d_export_vec if
4224 there are no exported functions.
4228 * configure: Regenerate with autoconf 2.7.
4232 * dlltool.c (fill_ordinals): Start assigning ordinals at 1.
4234 * Makefile.in (EXPECT): Use $$r, not $${rootme}.
4235 (check): Set r, not rootme.
4239 * configure.in: Use BFD_NEED_DECLARATION.
4240 * acconfig.h: Put NEED_DECLARATION_FPRINTF in @TOP@ section.
4241 * configure, config.in: Rebuild with autoconf 2.6.
4245 * Makefile.in (CC_FOR_TARGET): Use @host@ and @target@, not
4246 $(host_canonical) and $(target_canonical).
4250 Version 2.6 released.
4251 * Makefile.in (VERSION): Update to 2.6.
4255 * Makefile.in (CC_FOR_TARGET): Define.
4256 (check): Pass CC and CFLAGS to runtest.
4258 * nm.c (display_rel_file): Don't require a DYNAMIC object when
4259 dumping the dynamic symbol table.
4261 * objdump.c (compare_symbols): Sort global symbols before local
4262 symbols before debugging symbols.
4263 (objdump_print_address): Don't futz around looking for a global
4264 symbol with the same value.
4268 * dlltool.c: Use FOPEN_* macros rather than "r" or "w".
4270 * dlltool.c (fill_ordinals): Correct memset call.
4274 * mpw-make.sed (DEMANGLER_PROG): Edit out attempts to do anything
4279 * objcopy.c (setup_section): Copy the section lma independently of
4284 * arsup.c (ar_open): Cast malloc return value.
4288 * configure.in, configure (DLLTOOL_DEFS): Added ppc target.
4289 * dlltool.c (MPPC): Added basic PPC definitions.
4293 * configure.in: Don't treat rs6000-*-lynx* specially.
4294 * configure: Rebuild.
4295 * config/rslynx: Remove.
4296 * Makefile.in: Remove @target_makefile_fragment@.
4300 * bucomm.h: Include <sys/types.h>.
4301 * ar.c: Don't include <sys/types.h> or <stdio.h>.
4302 * bucomm.c, dlltool.c, nlmconv.c, objcopy.c, objdump.c: Likewise.
4306 * objdump.c: Include <sys/types.h>.
4308 Permit user to override DEMANGLER_PROG from command line. From
4310 * Makefile.in ($(DEMANGLER_PROG)): Depend upon
4311 $(DEMANGLER_PROG).1.
4312 (install): Don't depend upon $(DEMANGLER_PROG).1. Only install
4313 $(DEMANGLER_PROG).1 if $(DEMANGLER_PROG) is not empty.
4317 * Makefile.in (syslex.o): add -I$(srcdir) if compiling in a
4322 * objdump.c (objdump_print_value): New static function.
4323 (objdump_print_address): Use it. If we need the right section for
4324 the symbol, and we can't find it, print an offset from the section
4325 rather than using a symbol from some other section.
4329 * dlltool.c (no_idata4, no_idata5): New.
4330 (arm_jtab): Use correct encoding of jump instruction.
4331 (usage, main, make_head, make_tail): Act on no_idata4, no_idata5.
4335 * mpw-make.sed: Edit paths to generated y.tab.[ch] files.
4339 * binutils.texi: Change --with-targets to --enable-targets.
4343 * Makefile.in: Remove extraneous tab on otherwise empty line,
4344 which confuses many non-GNU versions of "make".
4348 * dlltool.c (i386_jtab, arm_jtab): New
4349 (gen_lib_file): Rewritten to use bfd.
4353 * Makefile.in (install): Don't give error message if dlltool
4358 * deflex.l: Allow quoting of IDs.
4359 * defparse.y (%union): string deleted.
4360 (command): DESCRIPTION takes ID.
4361 * dlltool.c (gen_def_file): Quote outgoing name if
4362 necessary. Preserve NONAME.
4363 (gen_lib_file): Run ranlib.
4364 (workout_prefix): Deleted.
4365 (main, usage, long_options): Add --as, --ranlib, --ar options.
4369 * dlltool.c (mtable): HOW_ALIGN_LONG, new.
4371 (d_low_ord, d_high_ord, d_named_funcs): New.
4372 (gen_exp_file): Create noname entries correctly.
4373 (gen_lib_file): Dump exports alphabetically.
4374 (process_duplicates): Count nonamed functions.
4375 (fill_ordinals): Keep track of highest ord too.
4376 (mangle_defs): Create alphabetically ordered list of names.
4380 * Makefile.in (TOOL_PROGS): Include DLLTOOL_PROG.
4384 * dlltool.c (add_underscore): New.
4385 (xlate): Use new name.
4386 (main, usage): Update.
4390 * sysinfo.y: Eliminate unused terminals "[" and "]" and unused
4391 nonterminal "name". One s/r conflict remains.
4395 * nm.c (print_symname): Don't try to demangle an empty
4397 * objdump.c (slurp_symtab): Reset symcount if there are
4399 (slurp_dynamic_symtab): Likewise, for dynsymcount.
4400 (disassemble_data): Fix memory leak: free sorted_syms when done.
4401 (display_bfd): Likewise, for syms and dynsyms.
4402 (dump_relocs): Don't print header before possibly generating an
4404 (dump_dynamic_relocs): Likewise.
4406 * ar.1, nm.1, objdump.1, size.1, strings.1, strip.1: Fix typos and
4411 * ar.c (do_quick_append): Comment out.
4412 (replace_members): Add quick argument.
4413 (main): Don't call do_quick_append.
4414 (open_inarch): Don't call quick_append to create an empty archive.
4415 Instead call bfd_openw/bfd_set_format/bfd_close.
4419 * bucomm.c: Always include time.h.
4423 * objdump.c (compare_symbols): Sort gnu_compiled and gcc2_compiled
4424 symbols after other symbols with the same value. Likewise for
4425 symbols which look like file names.
4426 (objdump_print_address): Always chose the first reasonable symbol
4431 * arsup.c (ar_save): Use rename, not unlink/link/unlink.
4435 * strings.c (main): Exit with zero status if no files are given
4436 and standard input is read.
4440 * mpw-config.in: Calculate underscore and put into makefile
4441 fragment, generate config.h.
4442 * mpw-make.sed: New file, sed commands to edit Unix makefile
4444 * mpw-make.in: Remove.
4445 * mac-binutils.r: New file, Mac resources.
4449 * dlltool.c: (gen_exp_file): Always emit a .reloc section if
4451 (imp_name_lab): New.
4452 (gen_def_file): New.
4453 (gen_lib_file): Use imp_name_lab.
4454 (main): Initialize imp_name_lab.
4458 * configure.in: Call AC_HEADER_SYS_WAIT.
4459 * configure: Rebuild.
4460 * config.in: Rebuild.
4461 * dlltool.c: Include "libiberty.h" and "bucomm.h". Don't include
4462 <stdio.h>, <stdlib.h>, or <string.h>. Don't include <wait.h>.
4463 Include <sys/types.h>. Use HAVE_SYS_WAIT_H to control whether to
4464 include <sys/wait.h> or define the wait macros by hand. Don't
4466 (gen_lib_file): Don't assume that sprintf returns the number of
4467 characters; use strlen instead.
4471 * objdump.c (disassemble_data): Don't use the old BFD based
4472 disassembler interface. Make info a const pointer.
4476 * objdump.c (start_address): New variable.
4477 (stop_address): New variable.
4478 (usage): Mention --start-address and --stop-address.
4479 (OPTION_START_ADDRESS, OPTION_STOP_ADDRESS): Define.
4480 (long_options): Add "start-address" and "stop-address".
4481 (disassemble_data): Handle start_address and stop_address.
4482 (dump_data, dump_reloc_set): Likewise.
4483 (main): Don't set seenflag for -l. Handle OPTION_START_ADDRESS
4484 and OPTION_STOP_ADDRESS.
4485 * objcopy.c (parse_vma): Move to bucomm.c.
4486 * bucomm.c (parse_vma): New function, moved in from objcopy.c.
4487 * bucomm.h (parse_vma): Declare.
4488 * binutils.texi, objdump.1: Document new objdump options.
4492 * Makefile.in (maintainer-clean): New target.
4494 * ar.c (replace_members): Don't call write_archive if nothing
4497 * objdump.c (disassemble_data): Add casts to avoid gcc warnings.
4501 * config.in: Rename from config.h.in.
4502 * configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
4503 Check for config.h:config.in when creating stamp-h.
4504 * configure: Rebuild.
4505 * Makefile.in (stamp-h): Depend upon config.in rather than
4506 config.h.in. Set CONFIG_HEADERS to config.h:config.in when
4507 calling config.status.
4509 * Makefile.in (distclean): Remove config.h, stamp-h, and
4512 * nm.c (value_format): Initialize based on BFD64 and
4513 BFD_HOST_64BIT_LONG.
4514 (print_radix): New static variable.
4515 (set_print_radix): Set print_radix. Adjust changes to
4517 (print_value): New static function, to print 64 bit octal and
4518 decimal values correctly.
4519 (print_symbol_info_bsd): Check BFD64, not BFD_HOST_64_BIT. Use
4521 (print_symbol_info_sysv): Use print_value.
4522 (print_symbol_info_posix): Likewise.
4526 * Makefile.in (*.o): Remove incorrect dependencies on
4527 $(BFDDIR)/hosts/std-host.h.
4529 * Makefile.in (INSTALL_DATA): Add -m 644.
4530 (INSTALL_XFORM1): Likewise.
4531 (CC_FOR_BUILD): Set to @CC_FOR_BUILD@ rather than $(CC).
4532 (mostlyclean): Remove config.log.
4533 (distclean): Remove config.cache.
4535 * configure.in: Call BFD_CC_FOR_BUILD and BFD_BINARY_FOPEN.
4536 * configure: Rebuild.
4540 * configure.in: Rewrite to use autoconf.
4541 * aclocal.m4: New file.
4542 * configure: New file, built by autoconf.
4543 * acconfig.h: New file.
4544 * config.h.in: New file, built by autoheader.
4545 * Makefile.in: Various changes for new configure script. Also:
4546 (PROGS): Remove $(SYSINFO_PROG).
4547 (ALL_CFLAGS): Remove $(TDEFINES).
4548 (version.o): Use $(ALL_CFLAGS).
4549 (cplus-dem.o, dlltool.o, nlmconv.o): Likewise.
4550 (sysdump.o): Depend upon bucomm.h and config.h.
4551 (srconv.o, arsup.o, strings.o): Depend upon config.h.
4552 (filemode.o): Don't depend upon ../bfd/sysdep.h.
4553 (bucomm.o): Depend upon config.h, not ../bfd/sysdep.h.
4554 (size.o, objdump.o, nm.o, ar.o, objcopy.o): Likewise.
4555 (nlmheader.o, nlmconv.o): Likewise.
4556 (distclean): Don't remove sysdep.h.
4557 * bucomm.h: Include "ansidecl.h", <stdio.h>, and "config.h".
4558 Include "fopen-same.h" or "fopen-bin.h", based on
4559 USE_BINARY_FOPEN. Include <errno.h>, and declare errno if it is
4560 not a macro. Include <unistd.h>, <string.h>, <strings.h>,
4561 <stdlib.h>, and <fcntl.h> if they are present. Declare strchr,
4562 strrchr, and strstr if no string header file exists. Include
4563 <sys/file.h> if it exists and <fcntl.h> does not. Define
4564 O_RDONLY and O_RDWR if necessary.
4565 * ar.c: Don't include "sysdep.h". Do include <sys/types.h> and
4566 <sys/stat.h>. Use HAVE_GOOD_UTIME_H rather than POSIX_UTIME. Use
4567 HAVE_UTIMES rather than !USE_UTIME. Don't include <errno.h>, and
4568 don't declare errno.
4569 * arsup.c: Don't include <sysdep.h>.
4570 * bucomm.c: Don't include "sysdep.h". Include <stdio.h>,
4571 <sys/types.h>, and <sys/stat.h>. Include <time.h> if it defines
4572 time_t. Define time_t if necessary.
4573 * coffdump.c: Don't include "sysdep.h".
4574 * coffgrok.c, filemode.c, nlmconv.c, size.c: Likewise.
4575 * srconv.c, strings.c: Likewise.
4576 * nm.c: Don't include "sysdep.h". Don't try to define HAVE_SBRK.
4577 * objcopy.c: Don't include "sysdep.h". Include <sys/types.h> and
4579 (simple_copy): Use creat rather than assuming that O_CREAT is
4581 * objdump.c: Don't include "sysdep.h". Use
4582 NEED_DECLARATION_PRINTF rather than !FPRINTF_ALREADY_DECLARED.
4583 * sysdump.c: Include "bfd.h" and "bucomm.h". Don't include
4584 "sysdep.h" or <stdlib.h>.
4585 (dump_symbol_info): Rename from symbol_info. Change all callers.
4589 * configure.in (host_makefile_frag): Don't set. Substitute for
4590 @CC@, @CFLAGS@, @HDEFINES@ and @LDFLAGS@ in Makefile.
4591 * Makefile.in (AR_FLAGS): Set to rc rather than qv.
4592 (CC): Define as @CC@.
4593 (CFLAGS): Set to @CFLAGS@.
4594 (LDFLAGS): Define as @LDFLAGS@.
4595 (ALL_CFLAGS): Use @HDEFINES@ rather than $(HDEFINES).
4597 * configure.in: Don't bother to call config.bfd for each target.
4598 Just call it for the default target, and use the shell variable to
4599 decide whether underscores are used.
4603 * configure.in: match i[3-6]86-*-win32, not just i386-*-win32.
4607 * dlltool.c (add_indirect): New.
4609 (gen_exp_file): Timestamp should be 0. Insert prefix when
4610 needed. New code for indirection.
4611 (gen_lib_file): Timestamp should be 0. Insert prefix
4613 (usage): Document --add-indirect.
4614 (main): Cope with new option.
4616 * objdump.c (dump_private_headers): New.
4617 (usage): Document new option.
4618 (long_option): Add private-headers.
4619 (dump_bfd_private_header): New.
4620 (main): Cope with new option.
4624 * dlltool.c (run): Add missing 3rd arg to waitpid.
4628 * Makefile.in (TOOL_PROGS): Include dlltool if needed.
4632 * dlltool.c (rva): Deleted.
4633 (rvaafter, rva_before): Use new assembler pseudo.
4634 (flush_page, gen_exp_file, gen_lib_file): Use new way of RVAing.
4635 (gen_exp_file): Don't generate .edata if no need.
4636 (gen_lib_file): Don't make timestamp.
4637 Put _iname in idata$7.
4638 (workout_prefix): Fix memory initialization bug.
4639 (usage): Tidy up, delete many single char options.
4640 (main): rva option is gone.
4644 * dlltool.c (options): image-base is a synonym for rva.
4645 (gen_lib_file): Put dll name into ibase$7.
4649 Modified to generate archives and objects rather than .s files.
4650 * dlltool.c (run) New function.
4651 (gen_exp_file, gen_lib_file): Use run.
4652 (workout_prefix): New.
4653 (usage): Document new options.
4654 (main): Parse new options.
4658 * dlltool.c (gen_exp_file): Fix RVA handling.
4659 (rva_s, rva_n): Delete.
4663 * nm.c (main): Ignore -e.
4667 * Makefile.in (config.texi): New target. Write out a setting for
4668 texinfo variable VERSION.
4669 (binutils.dvi, binutils.info): Depend on it.
4670 * binutils.texi: Include it, and reference @value{VERSION} instead
4671 of explicitly specifying 2.2(!).
4675 * coffgrok.c (do_type): Handle array dimensions the same way gdb
4680 * dlltool.c (mtable): New fields.
4681 (ASM_RVA_BEFORE, ASM_RVA_AFTER): New.
4682 (flush_page): Use new macros.
4686 * objcopy.c (mark_symbols_used_in_relocations): Handle sections
4687 with no relocations.
4688 * coffgrok.c (do_sections_p1): Likewise.
4692 * strings.c (print_strings): For compatibility with existing
4693 strings programs, print strings which are not terminated with a
4694 null byte or a newline.
4695 * binutils.texi, strings.1: Update documentation accordingly.
4697 * ar.c (replace_members): For compatibility with existing ar
4698 programs, permit users to add the same file multiple times.
4702 * strings.c (DATA_FLAGS): Remove SEC_DATA.
4703 (main): If no file names are given, scan standard input.
4704 * binutils.texi, strings.1: strings now scans non-data sections by
4709 * srconv.c (wr_hd): Set afl field to 4 for bfd_arch_sh.
4710 (writeINT): When size == -2, use 2 bytes for the h8300 and 4 bytes
4713 * sysdump.c (fillup): Return size - 1, the last byte is a checksum
4714 and shouldn't be counted.
4715 * sysroff.info (hd): Changed segment identifier from a byte to a 1
4716 bit field. The sysroff 2.0-01 specification seems to be in error
4717 here. Reduce width of following "spare" field from 4 to 3 bits.
4718 (rl): Changed order and width of first 4 bitfields to correspond
4719 to sysroff specification.
4720 (dln_head, dln_inside, dln_tail): Removed.
4724 * nm.c (sort_symbols_by_size): Enclose expression being casted
4725 in parens so result is casted, not just first operand. Can't
4726 do pointer arithmetic on void* pointers.
4730 * sysdump.c (dh): Changed format of output to be 16 hex digits
4731 followed by 16 ascii characters, similar to Emacs' hexl-mode,
4732 to make it easier to read.
4733 (xcalloc): fix typo.
4737 * srconv.c (wr_tr): Write out handcrafted tr block.
4738 (walk_tree_symbol): Use evallen and evalue instead of
4739 vallen & value because of corresponding changes in
4742 * sysdump.c (sysroff_swap_tr_in, sysroff_print_tr_out): New
4745 * sysroff.info (tr): the tr block is a special case --- a block
4746 without contents --- which can't be handled by generated code.
4747 (den, dpp): only first byte is present for DENend, DPPend.
4748 (dsy): describe a conditional portion of block, rename some fields.
4749 (dps): describe a conditional portion of block.
4752 * sysinfo.y (yyerror): write error message to standard error.
4756 * Makefile.in (DISTSTUFF): Add arparse.h and sysinfo.h.
4757 (mostlyclean): Remove y.output.
4758 (clean): Remove sysroff, sysroff.c, sysroff.h, and sysinfo.
4760 * nlmconv.c (powerpc_mangle_relocs): Cast memset arg to size_t.
4761 * objcopy.c (copy_object): Likewise.
4763 * nm.c (HAVE_SBRK): Define execpt on amigados and WINDOWS_NT.
4764 (struct size_sym): Define.
4765 (show_stats): New static variable.
4766 (long_options): Add undocumented option "stats".
4767 (main): Print memory stats if requested.
4768 (sort_bfd, sort_dynamic, sort_x, sort_y): New static variables.
4769 (numeric_forward): Use minisymbols rather than asymbols.
4770 (non_numeric_forward): Likewise.
4771 (size_forward1): Rename from size_forward. Use minisymbols.
4772 (size_forward2): New static function.
4773 (sort_symbols_by_size): Take new arguments dynamic, size, and
4774 symsizep. Use minisymbols. Don't store the size back in the
4775 symbol; store in a newly allocate struct size_sym array.
4776 (display_rel_file): Read minisymbols rather than asymbols. Set
4777 sort_* variables. Call print_size_symbols if sorting by size.
4778 (filter_symbols): Take new arguments dynamic and size. Use
4780 (print_symbols): Likewise. Call print_symbol for actual printing.
4781 (print_size_symbols): New static function.
4782 (print_symbol): New static function.
4786 * objdump.c (dump_section_stabs): Only print each stabs section
4788 (compare_relocs): Make it clear to gcc that this always returns a
4793 * objcopy.c (simple_copy): Preserve errno on failure.
4794 (smart_rename): Print error mesage if simple_copy fails.
4798 * sysdump.c: re-indented file.
4799 (module): read blocks sequentially instead of trying to parse
4800 them, as that would require changing the parser recognize the
4801 difference between a DPSstart and DPSend block.
4802 (getone): Add break's between switch blocks as appropriate.
4803 (object_body_list): parse blocks according to sysroff spec.
4807 * sysroff.info: re-indented file, prior formatting was confusing
4808 because it was indentation did not reflect nesting of conditional
4809 records. Change "space size within segment" record in hd record
4812 * sysinfo.y (cond_it_field): Use xcalloc instead of calloc.
4814 * srconv.c (wr_cs): Reformatted cs header array, tag each byte
4815 with a comment describing the field.
4816 (wr_unit_info): Use SEEK_SET macro instead of constant 0.
4817 (main): Use FOPEN_WB macro instead of literal "wb".
4818 * sysroff.info: Remove fdl (dfl) field from cs block. Compare
4819 ptr->type with ED_TYPE_CONST instead of constant 2 in ed block.
4823 * nm.c (size_forward): Check yf against yn, not xn.
4825 * objcopy.c (copy_archive): Record all output BFD's, and close
4826 them before unlinking them and removing the temporary directory,
4827 to avoid NFS problems.
4829 * ar.c (replace_members): In verbose messages, use 'r' when
4830 replacing a member, and 'a' when adding one.
4832 * ar.c (ar_truncate): New static variable.
4833 (normalize): Change return type to const char *. Add abfd
4834 argument. Change all callers. If ar_truncate, chop the filename
4835 to abfd->ar_max_namelen.
4836 (main): For the 'f' modifier, set ar_truncate to true. Don't
4837 change quick_append to replace if ar_truncate is true.
4838 (do_quick_append): If ar_truncate, set BFD_TRADITIONAL_FORMAT.
4839 (write_archive): Likewise.
4840 * binutils.texi, ar.1: Document 'f' modifier.
4842 * objcopy.c (enum strip_action): Define strip_unneeded.
4843 (OPTION_STRIP_UNNEEDED): Define.
4844 (strip_options): Add "strip-unneeded".
4845 (copy_options): Likewise.
4846 (copy_usage): Mention --strip-unneeded.
4847 (strip_usage): Likewise.
4848 (is_strip_section): Strip debugging sections if strip_unneeded.
4849 (filter_symbols): If strip_unneeded, only keep BSF_KEEP symbols.
4850 (copy_object): If strip_all, discard symbols without checking
4852 (copy_object): Call filter_symbols if strip_unneeded.
4853 (setup_section): Strip debugging sections if strip_unneeded.
4854 (copy_section): Likewise.
4855 (strip_main): Handle OPTION_STRIP_UNNEEDED.
4856 (copy_main): Likewise.
4857 * binutils.texi, objcopy.1, strip.1: Document --strip-unneeded.
4861 * configure.in (i386-*-win32): New configuration.
4862 * dlltool.c (killat, xlate, usage, long_options, main):
4863 Understand and cope with -k option.
4867 * ar.c: (extract_file): Change "#if POSIX_UTIME" to
4868 "#ifdef POSIX_UTIME" to match other tests of POSIX_UTIME
4869 and avoid lossage when POSIX_UTIME is not defined at all.
4873 * ar.c: (print_contents.c, extract_file, do_quick_append):
4874 Malloc buffers rather than allocate on stack (so it works
4876 * deflex.l: Names can have an @ in them.
4877 * dlltool.c: Loads of stuff. Can now generate .imp files which
4882 * mpw-make.in (demangle.c.o): Remove.
4883 (arparse.h): Depend on arparse.c instead of arparse.y.
4887 * Makefile.in (DISTSTUFF): Don't include info here.
4888 (diststuff): Include it here.
4889 (realclean): Remove *.info.
4891 * objdump.c (compare_relocs): If relocation entries have the same
4892 address, keep them in file order.
4896 * dlltool.c: Change names of generated files. .*.s-> -*.s
4898 * objdump.c (dump_section_stabs): Check for names
4899 which are supersets of selected names.
4903 * dlltool.c (mtable, ARM jump): Must redirect via pc offsetable ptr.
4907 * deflex.l, defparse.y, dlltool.c: New files.
4908 * Makefile.in, configure.in: Support for them.
4912 * sysdump.c: Include sysdep.h
4913 (main): Open input with FOPEN_RB.
4917 * objdump.c (wide_output): New flag variable.
4918 (usage): Print new -w, --wide options.
4919 (long_options): Add --wide support.
4920 (dump_section_header): If --wide, don't print a newline between
4921 the section's first line and the flags.
4922 (objdump_print_address): Use unsigned comparisons for the binary
4924 (disassemble_data): If --wide, don't put a \n between the
4925 disassembly output and relocation information.
4926 (main): Support -w option being the same as --wide.
4932 * objcopy.c (smart_rename): make it smarter, clean up
4937 * Makefile.in: Delete lines with lots of #### because four or more
4938 indicate a point for makefile fragment substitution.
4942 * configure.in: Don't build nlmconv on PowerPC eabi any more, it
4947 * Makefile.in (EXPECT): Define.
4948 (RUNTEST): Use one in source tree if present.
4949 (check): Set `rootme' for $(EXPECT).
4953 * srconv.c (main): Add support for -n option which disables
4954 prescan of common symbols.
4955 (wr_ob): If reading past the end of a section, fill with zeros.
4959 * objdump.c (dump_section_header): Display load address after
4960 virtual memory (run-time) address.
4964 * Makefile.in (cplus-dem.o): Pass -DVERSION='"$(VERSION)"' to the
4966 (DEMANGLER_PROG): No longer uses version.o.
4970 Merge in support for Mac MPW as a host.
4971 (Old change descriptions retained for informational value.)
4973 * mpw-config.in (TDEFINES): Define as empty in makefile frag.
4975 * mpw-config.in: Create mk.tmp, define ARCHDEFS in it.
4977 * mpw-config.in: New file, MPW configure fragment for binutils.
4978 * mpw-make.in (install-only): New target.
4979 (install): Also depend on install-only.
4981 * mpw-make.in (cplusfilt): Renamed from c++filt.
4982 (INCLUDES): Add more paths.
4984 * mpw-make.in: New file, MPW makefile fragment for binutils.
4985 (Normally automatically generated from Makefile.in.)
4989 * ar.c (write_archive): Call make_tempname to get output file
4990 name, rather than using a fixed name based on the input file.
4992 * objcopy.c (make_tempname): Copy from here...
4993 * bucomm.c (make_tempname): ...to here, and make global.
4994 * bucomm.h (make_tempname): Declare.
4998 * strings.c: Include "bfd.h" before other headers. Include
5000 * bucomm.c (print_arelt_descr): Cast st_uid and st_gid to long,
5001 and print them with %ld.
5005 * objcopy.c (strip_options): Add --keep-symbol.
5006 (copy_options): Likewise.
5007 (copy_usage): Mention --keep-symbol and -K.
5008 (strip_usage): Likewise.
5009 (keep_symbols): New static variable.
5010 (is_strip_symbol): Adjust the return value according to
5012 (strip_main): Handle -K. For -N, check that -K was not given.
5013 (copy_main): Likewise.
5014 * binutils.texi, objcopy.1, strip.1: Document -K.
5018 * objcopy.c (copy_archive): Check result of mkdir.
5019 (copy_main): Cast an xmalloc result.
5021 * objdump.c (usage): Break long format string into shorter ones.
5025 * bucomm.c (list_supported_targets): New function.
5026 * bucomm.h (list_supported_targets): Declare.
5027 * ar.c (usage): Call list_supported_targets.
5028 * nm.c (usage): Likewise.
5029 * objcopy.c (copy_usage, strip_usage): Likewise.
5030 * objdump.c (usage): Likewise.
5031 * size.c (usage): Likewise.
5032 * strings.c (usage): Likewise.
5036 * bucomm.c (print_arelt_descr): Cast st_size to long before
5037 passing it to fprintf.
5041 * objcopy.c (struct section_list): Add fields remove, set_flags,
5042 and flags. Change adjust from boolean to enum.
5043 (remove_sections): Remove static variable.
5044 (sections_removed): New static variable.
5045 (copy_options): Add --set-section-flags.
5046 (copy_usage): Mention --set-section-flags.
5047 (parse_flags): New static function.
5048 (find_section_list): New static function.
5049 (is_strip_symbol): Change return type from int to boolean.
5050 (is_strip_section): New static function.
5051 (filter_symbols): Call is_strip_section.
5052 (copy_object): When adding sections, check for specified flags or
5053 VMA. Call filter_symbols if any sections are being removed.
5054 (setup_section): Use find_section_list function rather than
5055 looking through remove_sections and adjust_sections. Handle
5056 --set-section-flags.
5057 (copy_section): Use find_section_list rather than looking through
5059 (strip_main): Use find_section_list instead of adding items to
5061 (copy_main): Use find_section_list instead of adding items to
5062 sections_removed and adjust_sections. Handle --set-section-flags.
5063 * binutils.texi, objcopy.1: Document --set-section-flags.
5067 * objdump.c (with_source_code): New global variable.
5068 (usage): Mention -S/--source.
5069 (long_options): Add --source.
5070 (prev_functionname, prev_line): New static variables.
5071 (struct print_file_list): Define.
5072 (print_files): New static variable.
5073 (skip_to_line, show_line): New static functions.
5074 (disassemble_data): Call show_line to handle -l and -S.
5076 * binutils.texi, objdump.1: Document -S/--source.
5080 * objcopy.c (copy_usage): Rename parameter to avoid shadowing.
5081 (strip_usage): Likewise.
5083 * objcopy.c (struct section_add): Define.
5084 (add_sections): New static variable.
5085 (copy_options): Accept --add-section.
5086 (copy_usage): Mention --add-section.
5087 (copy_object): Add sections from the add_sections list.
5088 (copy_main): Handle --add-section.
5089 * binutils.texi, objcopy.1: Document --add-section.
5093 * objdump.c (disassemble_data): Pass section offset, not absolute
5094 address, to bfd_find_nearest_line.
5096 * nlmconv.c (powerpc_mangle_relocs): Don't use const with
5101 * objdump.c (compare_symbols): Use bfd_asymbol_value (VAR) rather
5103 (objdump_print_address): Likewise.
5104 (disassemble_data): Don't change the symbol values. It can
5105 confuse bfd_canonicalize_reloc.
5109 * configure.in: Add support for powerpc-*-ebai.
5111 Wed Jan 18 10:02:12 1995 Steve Chamberlain <sac@splat>
5113 * coffdump.c: Include sysdep.h.
5114 (dump_coff_type): Handle coff_secdef_type.
5115 * coffgrok.c : Include sysdep.h.
5116 * srconv.c: Include libiberty.h
5117 (absolute_p, dty_start, dty_end, dump_tree_structure): Remove.
5121 * coffdump.c (dump_coff_scope): Cast pointer to unsigned long for
5123 * coffgrok.c: Include bucomm.h. Don't declare xmalloc.
5124 (push_scope): Declare type of parameter link.
5125 * size.c: Include libiberty.h.
5126 * srconv.c: Include bucomm.h.
5127 (find_base): Declare at top of file.
5128 (wr_hd): Add default case to architecture switch.
5129 (wr_dps_start): Declare type of parameter nest.
5130 (wr_du): Comment out variables used only in commented out blocks.
5131 (wr_dus): Remove unused variable i.
5132 (wr_sc): Remove unused variables myinfo, low, and high.
5133 * strings.c: Include libiberty.h.
5134 * sysdump.c: Include <ctype.h>.
5138 * ar.c (main): Ignore 'f' modifier used on HP/UX 9.
5142 * ar.c, nm.c, objcopy.c, objdump.c: Include progress.h.
5143 * ar.c, nm.c, objcopy.c, objdump.c (main): Add START_PROGRESS
5145 * ar.c (map_over_members, open_inarch): Call PROGRESS.
5146 * nm.c (main, display_archive, filter_symbols, print_symbols):
5149 * objcopy.c (copy_usage): Break up long usage string.
5153 * objcopy.c (copy_object): Don't bother setting status after
5154 nonfatal() "call", because it won't return.
5158 * nlmconv.c (powerpc_mangle_relocs): Don't switch a reloc to use
5159 the section symbol if the symbol is undefined.
5163 * objcopy.c (add_strip_symbol): Cast return value of xmalloc.
5167 * ar.c (replace_members): Pass current->filename to normalize when
5168 checking for duplicates, because the filename of a newly added
5169 file will not have been normalized yet.
5173 * ar.c (main): Don't call do_quick_append if any of the archive
5174 names are longer than 14 characters.
5176 * objcopy.c (main): Fix is_strip test. From
5181 * objcopy.c (add_strip_symbol): New function, adds a name to an
5182 explicit list of symbols to strip.
5183 (is_strip_symbol): New function, reports whether the name argument
5184 is in the explicit list.
5185 (filter_symbols): Check against is_strip_symbol above all.
5186 (strip_main): Recognize -N option. If used, don't default to
5188 (copy_main): Recognize -N option.
5189 (strip_usage): Document -N and --strip-symbol options.
5190 (copy_usage): Ditto.
5191 * objcopy.1, strip.1, binutils.texi: Document -N and
5192 --strip-symbol options.
5196 * objdump.c (display_target_list, display_info_table): Pass an
5197 array to tmparg, rather than NULL, since some systems can't handle
5200 * objcopy.c (copy_archive): Keep a list of the names of the
5201 temporary files we created. Close each input BFD after we open
5206 * Makefile.in (VERSION): Bump to 2.5.3.
5210 * Makefile.in (install-info): Install info files from whatever
5211 directory they were found in.
5213 Patch from DJ Delorie:
5214 * configure.bat: do c++filt -> cxxfilt right
5216 * sysinfo.y: Include system header files early, so any potential
5217 declaration of abort() occurs before its use.
5219 * strings.c (strings_file): Try opening the file in binary mode
5224 * ar.c (main): Treat ar qs like ar rs.
5228 * objcopy.c (gap_fill): Explicitly initialize, for clarity.
5229 (pad_to_set, pad_to): New static variables.
5230 (copy_options): Accept --pad-to.
5231 (copy_usage): Mention --pad-to.
5232 (copy_object): Support --pad-to.
5233 (compare_section_vma): Sort non loadable sections to the front.
5234 Sort sections with the same VMA by size.
5235 (copy_main): Handle --pad-to.
5236 * binutils.texi, objcopy.1: Document --pad-to.
5240 * objcopy.c (gap_fill_set, gap_fill): New static variables.
5241 (copy_options): Accept --gap-fill.
5242 (copy_usage): Mention --gap-fill.
5243 (copy_object): Support --gap-fill.
5244 (get_sections, compare_section_vma): New static functions.
5245 (copy_main): Handle --gap-fill.
5246 * binutils.texi, objcopy.1: Document --gap-fill.
5250 * Makefile.in (check): Add a dummy else clause to the if
5253 * objcopy.c (copy_object): Revert yesterday's change.
5254 * binutils.texi, objcopy.1: Remove special mention of --set-start
5255 and `binary' output format.
5259 * objcopy.c (copy_object): If the output file format is `binary',
5260 and the start address was not set using --set-start, default the
5261 start address to zero. This hack is because the `binary' output
5262 file format uses the start address to set the virtual address of
5263 the first byte in the file.
5264 * binutils.texi, objcopy.1: Add some notes on generating S-records
5267 * nm.c (print_symdef_entry): Call print_symname to print the
5268 symbol name, so that --demangle works.
5270 * Makefile.in (mostlyclean): Remove tmpdir.
5272 * objcopy.c (struct section_list): Add fields used, adjust, val.
5273 (adjust_start, set_start_set, set_start): New static variables.
5274 (adjust_section_vma, adjust_sections): New static variables.
5275 (copy_options): Add --adjust-start, --adjust-vma,
5276 --adjust-section-vma, --adjust-warnings, --no-adjust-warnings,
5278 (parse_vma): New static function.
5279 (copy_usage): Mention new options.
5280 (copy_object): Handle --set-start and --adjust-start.
5281 (setup_section): Correct type of last argument to PTR. Set used
5282 field if section is removed. Handle --adjust-vma and
5283 --adjust-section-vma.
5284 (copy_section): Correct type of last argument to PTR.
5285 (mark_symbols_used_in_relocations): Likewise.
5286 (strip_main): Clear used field when handling -R.
5287 (copy_main): Handle new options.
5288 * binutils.texi (objcopy): Document new options.
5289 * objcopy.1: Document new options.
5293 * configure.in (configdirs): Remove definition--testsuite is no
5295 * Makefile.in (testsuite): Remove target.
5296 (site.exp): New target.
5298 (clean, distclean): Don't recur into testsuite directory.
5302 * Makefile.in (VERSION): Updated to 2.5.
5303 * Version 2.5 released.
5307 * Makefile.in (sysdump.o): Depends upon sysroff.c.
5311 * nlmconv.c (link_inputs): Pass -Ur flag to ld so that the
5312 ctor/dtor tables needed by C++ programs are built.
5316 * Makefile.in (srconv.o): Add dependence on sysroff.c.
5320 * configure.in: Use ${config_shell} when running config.bfd.
5322 * Makefile.in (sysroff.h): Split target away from sysroff.c.
5323 (srconv.o, sysdump.o): New targets.
5324 (srconv, sysdump): Don't depend upon sysroff.c.
5328 * Makefile.in (arparse.c): Don't ignore errors from mv.
5329 (sysinfo.c): Likewise. Also, depend upon arparse.c, to prevent a
5330 parallel make from trying to build both arparse.c and sysinfo.c
5332 (nlmheader.c): Similar change.
5333 (arparse.h): Separate target from arparse.c, so that a parallel
5334 make does not try to build both at once. Depend upon arparse.c.
5335 (sysinfo.h): Similar change.
5337 * objdump.c (disassemble_data): Pass the reloc buffer to free, not
5338 the pointer used to loop over the relocs.
5342 * objdump.c (disassemble_data): Cast result of xmalloc.
5346 * objdump.c (sorted_syms, sorted_symcount): New global variables.
5347 (objdump_print_address): Use sorted_syms and sorted_symcount
5348 instead of syms and symcount.
5349 (disassemble_data): Don't bother to get the relocs before looping
5350 over the sections. Before filtering and sorting the symbol table,
5351 copy it into sorted_syms.
5355 * objdump.c (struct objdump_disasm_info): Add field require_sec.
5356 (objdump_print_address): If aux->require_sec, require that the
5357 symbol be in aux->sec even if HAS_RELOC is not set. If we can't
5358 find a smaller symbol in the right section, look for a larger one.
5359 (disassemble_data): Set aux.require_sec around the
5360 objdump_print_address call for the instruction address.
5364 * ar.c: Call xexit rather than exit.
5365 (output_filename, output_file, output_bfd): New static variables.
5366 (remove_output): New static function.
5367 (main): Call xatexit (remove_output). Call xexit rather than
5369 (extract_file): Set output_filename and output_file while output
5371 (write_archive): Likewise, but use output_bfd, not output_file.
5372 * arsup.c: Include libiberty.h. Call xexit rather than exit.
5373 * bucomm.c: Likewise.
5375 * objdump.c (disassemble_all): New global variable.
5376 (usage): Document --disassemble-all.
5377 (long_options): Add disassemble-all as a synonym for -D.
5378 (compare_symbols): Make pointers const.
5379 (compare_relocs): New static function.
5380 (disassemble_data): Rename disassemble to disassemble_fn to avoid
5381 shadowing. If dump_reloc_info, print relocs along with
5382 disassembly. Skip sections which are not SEC_CODE unless
5383 disassemble_all or only is set.
5384 (display_bfd): Don't call dump_relocs if disassemble is set.
5385 (main): Accept and handle -D.
5386 * binutils.texi: Document -D/--disassemble-all.
5387 * objdump.1: Likewise.
5391 * objdump.c (disassemble_data): Initialize prevline to 0. Make
5392 prev_function non const. Copy functionname into an malloc buffer
5393 when setting prev_function, instead of assuming that the string
5396 * nm.c: Include libiberty.h.
5397 (sort_by_size): New static variable.
5398 (long_options): Add --size-sort.
5399 (usage): Mention --size-sort.
5400 (numeric_forward): Make static. Change from void * to PTR.
5401 (numeric_reverse): Likewise.
5402 (non_numeric_forward, non_numeric_reverse): Likewise.
5403 (sorters): Change declaration from void * to PTR.
5404 (size_forward, sort_symbol_by_size): New static functions.
5405 (display_rel_file): Handle sort_by_size.
5406 (filter_symbols): If sort_by_size, discard absolute and undefined
5408 * binutils.texi (nm): Document --size-sort.
5409 * nm.1: Document --size-sort.
5413 * objcopy.c (copy_main): Initialize input_filename and
5414 output_filename to NULL.
5418 * Makefile.in (version.o): Depend upon Makefile, so that version.o
5419 gets rebuilt when make variable VERSION is changed.
5421 * objdump.c (dump_section_header): Print the SEC_NEVER_LOAD flag.
5425 * configure.in: Change i[34]86 to i[345]86.
5429 * ar.c (ranlib_touch): Don't update the archive map if there isn't
5434 * ar.c: Include libiberty.h.
5435 (inarch): Remove variable.
5436 (map_over_members): Make static. Add arch argument, and use it
5437 instead of inarch. Change all callers.
5438 (main): Treat --version as -v. Accept -t argument. Accept any
5439 number of archive arguments. Catch and use open_inarch return
5440 value, rather than using inarch.
5441 (open_inarch): Return newly opened BFD, rather than using inarch.
5442 (do_quick_append): Make archive_filename const.
5443 (write_archive): Add iarch argument, and use it instead of inarch.
5445 (delete_members, move_members, replace_members): Likewise.
5446 (ranlib_only): Don't exit on success. Catch and use open_inarch
5448 (ranlib_touch): New function.
5449 * arsup.h (map_over_members): Don't declare.
5450 (ar_end, ar_extract): Declare.
5451 (open_inarch): Change return value in declaration to bfd *.
5452 * arsup.c (map_over_list): Make static. Always pass two arguments
5453 to function. Add arch argument, and use it instead of inarch.
5455 (ar_directory_doer): Make static. Add ignored second argument.
5457 (ar_directory): Use open_inarch return value rather than inarch.
5458 (ar_addlib_doer): Make static.
5459 (ar_addlib): Use open_inarch return value rather than inarch.
5460 (ar_extract): Remove unused local variable abfd.
5464 Add support for removing named sections to objcopy and strip.
5465 * objcopy.c (struct section_list): Define.
5466 (remove_sections): New static variable.
5467 (strip_options, copy_options): Add remove-section.
5468 (copy_usage, strip_usage): Mention -R and --remove-section.
5469 (setup_section): If section is in remove_sections list, ignore it.
5470 (copy_section): Likewise.
5471 (strip_main, copy_main): Handle -R.
5472 * binutils.texi, objcopy.1, strip.1: Document new options.
5476 * nlmconv.c (powerpc_mangle_relocs): Rename symvalue to sym_value,
5477 so as not to conflict with the symvalue typedef in bfd.h.
5481 * nlmheader.y: Per current NetWare docs, accept a revision number
5482 of 0 and treat a revision number greater than 26 as 0.
5486 * objdump.c (objdump_print_address): Correct handling of end of
5487 symbols when looking for next symbol with a different value.
5491 * nm.c (numeric_forward): Treat undefined symbols as "less than"
5492 defined symbols with zero values. If numeric values are equal, or
5493 both symbols are undefined, sort alphabetically. Don't assume
5494 that the difference of two bfd_vma values will truncate to "int"
5495 and still have the same sign.
5496 (numeric_reverse): Call numeric_forward and negate the result.
5497 (print_symbol_info_bsd): For undefined symbols, print leading
5498 spaces equivalent to the width of a printed bfd_vma, rather than
5499 assuming that 8 will look right.
5503 * coffgrok.c (doit): Zero all fields of new structure.
5504 * srconv.c (sysroff_swap_*_out): Remove redundant trailing arg.
5505 * sysinfo.y: Generate sysroff_swap_*_out without requiring extra
5510 * nlmheader.y: Make "stack" and "stacksize" synonyms in the lexer
5511 rather than the parser.
5515 * config/mh-alphaosf, config/mh-apollo68v, config/mh-delta88:
5520 * objdump.c (slurp_dynamic_symtab): Try to get the dynamic symbols
5521 even if the bfd is not marked DYNAMIC. ELF executables are not
5522 marked DYNAMIC, but do have dynamic symbols.
5526 * coffgrok.c (do_where): Make data with no type 'int'.
5527 (do_define): Keep info on source file of a symbol.
5528 * coffgrok.h (coff_symbol): New field.
5529 * srconv.c (PROGRAM_VERSION): Now 1.3
5530 (wr_rl): Use external ref number for symbol.
5531 (wr_dus): Only keep one source file per debug unit.
5532 (wr_dln): Always emit line numbers for first source file,
5533 (wr_globals): Emit globals in the du of their owning source file.
5537 * nlmheader.y: Null terminate var_hdr->threadName.
5541 * Makefile.in (syslex.o, sysinfo.o): Permit C source files to be
5542 in $(srcdir), as they will be for FSF releases.
5546 * nlmconv.c (setup_sections): Preserve existing section flags when
5547 copying in flags from a new section.
5551 * objcopy.c: Include libiberty.h.
5552 (copy_file): If output_target is NULL, set it to the target of the
5557 * nlmconv.c (link_inputs): Fixed memory allocation bug.
5561 * configure.in: Change --with-targets to --enable-targets.
5565 * Makefile.in (sysinfo): Does not depend upon $(ADDL_LIBS).
5567 * nlmconv.c (powerpc_build_stubs): Don't generate the PowerPC
5568 NetWare custom header; no longer needed.
5569 (powerpc_mangle_relocs): Convert relocs against the uninitialized
5570 data section into relocs against the data section.
5572 * configure.in: Set nlmconv_defs to -DNLMCONV_cputype for all the
5573 netware targets. Write it into Makefile as NLMCONV_DEFS.
5574 * Makefile.in (nlmconv.o): Pass $(NLMCONV_DEFS) to $(CC).
5575 * nlmconv.c: Only compile code for specific CPU types if
5576 NLMCONV_cputype is defined.
5578 * nlmconv.c (main): Change uses of bfd_abs_section, etc., to use
5579 bfd_abs_section_ptr or bfd_is_abs_section, etc.
5580 (i386_mangle_relocs, alpha_mangle_relocs): Likewise.
5581 (powerpc_build_stubs): Likewise.
5582 * nm.c (filter_symbols, print_symbols): Likewise.
5583 * objcopy.c (filter_symbols): Likewise.
5584 (mark_symbols_used_in_relocations): Likewise.
5585 * objdump.c (remove_useless_symbols, dump_relocs): Likewise.
5586 * size.c (sysv_internal_printer): Likewise.
5590 * Makefile.in (MANPAGES): Remove $(DEMANGLER_PROG).
5591 (install): Install it explicitly, from build dir, not srcdir.
5595 * objdump.c: Don't include elf/internal.h.
5596 (bfd_elf_find_section): Don't declare.
5597 (read_section_stabs): No special handling for ELF. Always read
5602 * configure.in: Set UNDERSCORE in Makefile based on result of
5603 invoking config.bfd with a second argument of ``_''.
5604 * Makefile.in (underscore.c): Depend upon Makefile. Don't try to
5605 run $(CC) and $(NM), just use $(UNDERSCORE). Create via temporary
5607 (demangle.o): Remove target.
5608 ($(NM_PROG)): Don't depend upon demangle.o, and don't link against
5609 demangle.o. It's in libiberty anyhow.
5610 (cplus-dem.o): Don't depend upon demangle.o.
5611 * binutils.texi: Mention -n and --no-strip-underscores arguments
5616 * nm.c (long_options): Add --no-demangle to turn off --demangle,
5617 and --no-cplus for Linux compatibility.
5618 (usage): Mention --no-demangle.
5619 * binutils.texi: Document --no-demangle.
5623 * nm.c: HOST_64_BIT was renamed to BFD_HOST_64_BIT.
5625 * objcopy.c (copy_archive): Make the temporary directory in the
5626 same directory as the output BFD, since we may not have write
5627 permission on the current directory. Set the permissions of the
5628 new directory to 0700, not 0777.
5632 * configure.in: if this is an rs6000 (and we're not building for
5633 any other bfd targets) then build only nm (collect needs it on
5636 * Makefile.in: define TOOL_PROGS which the list of programes to
5637 install in $tooldir -- replaces a hard-coded list.
5641 * objdump.c (display_target_list): Remove unused local ok.
5645 * config/mh-alphaosf (CFLAGS): Don't specify both -g and -O;
5646 they're not compatible under native cc. Use -O1 instead.
5648 * Makefile.in (VERSION): Updated to cygnus-2.4.1.
5650 Changes from binutils-2.4 net release:
5652 * Makefile.in (MANPAGES): Use $(DEMANGLER_PROG).
5653 ($(DEMANGLER_PROG).1): Build from cxxfilt.man, using sed.
5654 * cxxfilt.man: Renamed from c++filt.1, replaced "c++filt" with
5655 magic token to be replaced by sed.
5659 * configure.bat: update for latest makefile.in
5663 * bucomm.c: Check ANSI_PROTOTYPES rather than __STDC__.
5667 * objcopy.c (copy_section): Set section size correctly if using
5672 * Makefile.in: Add rule for sysinfo.h
5676 * Makefile.in (SRCONV_PROG): Define.
5677 (PROGS): Use $(SRCONV_PROG) too.
5681 * Makefile.in (DISTSTUFF): Add sysinfo.c, syslex.c, in case
5682 someone configures with `targets=all'.
5683 (distclean): Remove y.*.
5684 (syslex.o): Depend on sysinfo.h.
5685 (sysinfo.c): Rename y.tab.h to sysinfo.h.
5686 (install-info): Don't try to install into $(infodir)/$(srcdir).
5687 * syslex.l: Include sysinfo.h, not y.tab.h.
5691 * syslex.l (yywrap): Define as function if not defined as a macro.
5693 * Makefile.in (objdump.o): Deleted special rule.
5694 * configure.in: Don't bother building ARCHDEFS variable for
5696 * objdump.c (ARCH_*): Deleted handling.
5697 (disassemble_data): Call `disassembler' from opcodes library.
5701 * Makefile.in (install): Correct handling of $(tooldir) and
5702 $(bindir) being on different devices.
5706 * sysdump.c (h8300, sh): Add declarations.
5710 * Makefile.in (syslex, sysinfo): Use CC_FOR_BUILD.
5711 * coffdump.c, coffgroc.c, coffgrog.h, srconv.c, sysdump.c,
5712 sysroff.info: Major changes.
5716 * objdump.c (print_section_stabs): Indicate the stab header symbol
5717 more clearly, print numbers of unrecognized stab n_type values.
5721 * nlmconv.c (copy_sections): Copy arelent pointers, not arelents.
5725 * Makefile.in (distclean): Remove $(PROGS) and underscore.c.
5729 * nlmconv.c (setup_sections): Remove special handling of .reginfo
5731 (copy_sections): Likewise.
5732 (alpha_mangle_relocs): Use bfd_ecoff_get_gp_value rather than the
5733 special ECOFF .reginfo section.
5735 * objcopy.c (copy_object): Call bfd_copy_private_bfd_data after
5736 copying everything else, to let it fiddle with the file in its
5739 * objdump.c: Include libiberty.h.
5740 (display_target_list): If a format fails, just go on to the next
5741 one. Check return value of bfd_set_format.
5742 (display_info_table): Likewise. Don't increment loop variable in
5743 for loop test, since that skips the first element.
5744 (display_target_tables): Rewrite loop for clarity. Ensure that it
5745 always prints at least one element.
5747 * nlmconv.c (main): Use CyGnUsEx rather than CyGnUsSeCs for
5748 sections header. Rename from cygnus_sections to cygnus_ext.
5752 * objdump.c (_DUMMY_NAME_): Don't define.
5753 (display_target_list): Use tmpnam to get a file name rather than
5754 using _DUMMY_NAME_. Unlink it when done.
5755 (display_info_table): Likewise.
5757 * nlmconv.c (secsec): New static variable.
5758 (main): Create .nlmsections section in output BFD. Store
5759 information about it in sections header.
5760 (setup_sections): Allocate space in sections header.
5761 (copy_sections): Copy zero sized sections. Put information about
5762 each section in the sections header.
5766 * nlmconv.c (powerpc_build_stubs): Take new outbfd argument.
5767 Change caller. Create custom header for new PowerPC NetWare
5770 * Makefile.in (nlmheader.o, nlmconv.o): Update dependencies.
5771 * nlmconv.c: Include bfd.h and libiberty.h with "", not <>.
5772 * nlmheader.y: Include bfd.h with "", not <>.
5776 * objdump.c: Do an ifdef on __GO32__, not unix.
5780 Added -D (--dynamic) option to nm and -T (--dynamic-syms) and -R
5781 (--dynamic-reloc) arguments to objdump.
5782 * nm.c (dynamic): New static variable.
5783 (long_options): Added "dynamic".
5784 (usage): Mention -D and --dynamic.
5785 (main): Add D to getopt string. Handle -D by setting dynamic.
5786 (display_rel_file): If dynamic is non-zero, read dynamic symbols
5787 rather than normal symbols.
5788 * nm.1: Updated for -D (--dynamic) option.
5789 * objdump.c (dump_dynamic_symtab): New global variable.
5790 (dump_dynamic_reloc_info): New global variable.
5791 (dynsyms, dynsymcount): New global variables.
5792 (usage): Mention -R, -T, --dynamic-syms and --dynamic-reloc.
5793 (long_options): Added "dynamic-reloc" and "dynamic-syms".
5794 (slurp_symtab): If no symbols, return rather than exit.
5795 (slurp_dynamic_symtab): New function.
5796 (display_bfd): Handle dump_dynamic_symtab and
5797 dump_dynamic_reloc_info.
5798 (dump_symbols): Take new dynamic argument, indicating whether to
5799 display dynamic symbols.
5800 (dump_relocs): Move most printing into dump_reloc_set.
5801 (dump_dynamic_relocs): New function.
5802 (dump_reloc_set): New function, extracted from dump_relocs.
5803 (main): Add R and T to getopt string. Handle -T by setting
5804 dump_dynamic_symtab and -R by setting dump_dynamic_reloc_info.
5805 * objdump.1: Updated for -R (--dynamic-reloc) and -T
5806 (--dynamic-syms) options.
5807 * binutils.texi: Updated for new nm and objdump options.
5811 Update for recent BFD changes to symbol and reloc reading. Rename
5812 all uses of get_symtab_upper_bound to bfd_get_symtab_upper_bound.
5814 * coffgrok.c (symcount): Change to long.
5815 (do_sections_p1): Check for error return from
5816 bfd_get_reloc_upper_bound. Change relcount to long, and check for
5817 error from bfd_canonicalize_reloc.
5818 (coff_grok): Change storage to long. Check for error from
5819 bfd_get_symtab_upper_bound and bfd_canonicalize_symtab.
5820 * nlmconv.c (main): Change symcount, newsymalloc, newsymcount, and
5821 i to long. Check for error from bfd_get_symtab_upper_bound and
5822 bfd_canonicalize_symtab.
5823 (copy_sections): Change reloc_size and reloc_count to long. Check
5824 for error from bfd_get_reloc_upper_bound and
5825 bfd_canonicalize_reloc.
5826 (mangle_relocs, i386_mangle_relocs, alpha_mangle_relocs): Change
5827 reloc_count_ptr argument to long *. Make corresponding changes to
5828 variables loaded from *reloc_count_ptr.
5829 * nm.c (display_rel_file): Change storage and symcount to long.
5830 Check for errors from bfd_get_symtab_upper_bound and
5831 bfd_canonicalize_symtab.
5832 * objcopy.c (filter_symbols): Change symcount, src_count and
5834 (copy_object): Change symcount to long. Pass another argument to
5835 fprintf. Check for errors from bfd_get_symtab_upper_bound and
5836 bfd_canonicalize_symtab.
5837 (copy_section): Change relcount to long. Check for errors from
5838 bfd_get_reloc_upper_bound and bfd_canonicalize_reloc.
5839 (mark_symbols_used_in_relocations): Change relcount and i to long.
5840 Check for errors form bfd_get_reloc_upper_bound and
5841 bfd_canonicalize_reloc.
5842 * objdump.c (storage): Remove global variable.
5843 (symcount): Changed to long.
5844 (slurp_symtab): New local variable storage. Check for errors from
5845 bfd_get_symtab_upper_bound and bfd_canonicalize_symtab.
5846 (remove_useless_symbols): Change return value and count to long.
5847 (objdump_print_address): Change min, max, thisplace and i to long.
5848 (disassemble_data): Change i to long.
5849 (dump_symbols): Change count to long.
5850 (dump_relocs): Change relcount to long. Check for errors from
5851 bfd_ret_reloc_upper_bound and bfd_canonicalize_reloc.
5852 (display_info_table): Add casts when passing LONGEST_ARCH for
5857 * nm.c (display_archive): Close each archive element after it has
5859 * objdump.c (display_file): Likewise.
5863 * configure.in: Change error message to refer to bfd/config.bfd
5864 rather than bfd/configure.in.
5868 * More fixes for object formats which allow multiple sections
5870 * objcopy.c (setup_section): Make a new output section even if
5871 one already exists with the given name.
5872 (copy_section): Use isection->output_section rather than trying
5873 to look the output section up by its (possibly non-unique) name.
5875 * Makefile.in (install-info): Look for binutils.info in the
5876 current directory, then in $(srcdir). Don't use $<.
5880 * objdump.c (objdump_print_address): Make static. Declare with
5881 prototype. Change vardiff from int to bfd_signed_vma. Correct
5882 binary search termination condition. When looking for same
5883 section symbol in relocatable file, handle final symbol correctly.
5887 * Makefile.in: Avoid bug in hpux sed.
5889 * objcopy.c: Changes to keep it from stripping symbols used
5890 in output relocations.
5891 (mark_symbols_used_in_relocations): New function. Mark symbols
5892 used in output relocations with BSF_KEEP.
5893 (filter_symbols): Do not strip symbols marked with BSF_KEEP.
5894 (copy_object): Reorder actions. First setup sections, then
5895 build the output symbol table, then copy the section contents.
5899 * ar.c (write_archive): Allocate space for the null byte. From
5904 * Makefile.in: Built nm.new and strip.new to avoid problems with
5905 collect when . is in PATH.
5906 (STRIP_PROG): Change from strip to strip.new.
5907 (NM_PROG): Change from nm to nm.new.
5908 (install): Remove the .new when installing.
5912 * nlmconv.c (powerpc_build_stubs): Set BSF_DYNAMIC flag for each
5913 symbol for which we build a stub.
5914 (powerpc_mangle_relocs): Only reset TOC pointer for a call to a
5915 symbol with BSF_DYNAMIC flag set.
5919 * objcopy.c (filter_symbols): Use bfd_is_local_label to determine
5920 if a symbol represents a compiler-generated local label.
5921 (copy_object): Give the BFD backends a chance to copy any private
5922 bfd data from the input BFD to the output BFD.
5923 (setup_section): Give the BFD backends a chance to copy any private
5924 section data from the input section to the output section.
5928 * objcopy.c (mangle_section): Delete unused function.
5929 (setup_section): Set osection here instead of calling
5930 mangle section to do it.
5934 * ar.c (write_archive): Close inarch before unlinking it.
5938 * nlmconv.c (main): For PowerPC, call powerpc_build_stubs and
5939 powerpc_resolve_stubs. Use __GOT0, not __toc_start. Handle it if
5940 the start and end symbols are not in the text section.
5941 (struct powerpc_stub): New struct definition.
5942 (powerpc_stubs, powerpc_stub_insns): New static variables.
5943 (powerpc_initial_got_size): New static variable.
5944 (powerpc_build_stubs): New function.
5945 (powerpc_resolve_stubs): New function.
5946 (powerpc_mangle_relocs): Clear extraneous data in .got section.
5947 Rearrange reloc handling to handle ELF relocs that are not
5948 partial_inplace. Resolve PC relative relocs.
5952 * ar.c (move_members): Fix it so that the abi positional modifiers
5953 don't delete all archive members following the insert point.
5957 * coffgrok.[ch]: New files, understand coff objects.
5958 * coffdump.c: Uses coffgrok to dump out the debug info of a coff
5960 * sysroff.info: Description of a SYSROFF object file.
5961 * sysinfo.y, syslex.l: Parse info file, generate a reader, writer,
5962 header files and a printer.
5963 * srconv.c: Uses coffgrok.c and sysroff.info to convert a coff
5964 file to a SYSROFF file.
5968 * ar.c (do_quick_append): Pad with a genuine character 10,
5969 rather than whatever '\n' might happen to be.
5973 * nlmconv.c (main): Ignore debugging symbols when looking for
5974 special symbols by name.
5978 * nlmconv.c: Include libiberty.h.
5980 Support for PowerPC NetWare.
5981 * nlmconv.c (main): For PowerPC NetWare, automatically define the
5982 special symbols __toc_start.
5983 (select_output_format): Handle bfd_arch_powerpc.
5984 (mangle_relocs): Likewise.
5985 (powerpc_mangle_relocs): New function.
5989 * ar.c, bucomm.c, nlmconv.c, nm.c, objcopy.c, objdump.c,
5990 size.c: Use bfd_get_error and bfd_set_error and new error names.
5994 * objcopy.c (strip_main, copy_main): Add missing 'break' in switch.
5998 * objdump.c (disassemble_data): Handle bfd_arch_powerpc.
6002 * strings.c objdump.c nlmconv.c objcopy.c nm.c ar.c size.c (main):
6003 Call xmalloc_set_program_name.
6007 * objcopy.c (filter_bytes): Make MEMHUNK a char *, not PTR, so we
6008 can do arithmetic on it.
6012 * objdump.c (dump_section_stabs, read_section_stabs,
6013 print_section_stabs): Functions broken out of dump_stabs_1.
6014 Free the stabs and strings when done with them.
6018 * nlmconv.c (main): Use bfd_get_flavour instead of struct member.
6019 * ar.c (print_contents, extract_file), size.c
6020 (print_berkeley_format, print_sysv_format): Use bfd_get_filename and
6021 bfd_my_archive instead of dereferencing the structs directly.
6023 * ar.c: Use bfd_fatal and bfd_nonfatal instead of bfd_perror and exit.
6024 Indent. Remove DEFUNs.
6026 * nlmconv.c (main), objcopy.c (copy_file): Print matching formats
6028 * nm.c (display_file, display_archive), size.c (display_bfd):
6030 Print matching formats if there is an ambiguous match. Use
6031 bfd_nonfatal instead of hardcoded error message if nothing matches.
6033 * arsup.c, ar.c, objdump.c: Use bfd_get_filename instead of
6036 * nm.c (display_archive): New function, from code in display_file.
6037 (display_rel_file): Renamed from do_one_rel_file.
6040 (display_archive): New function from code in display_file.
6041 (display_file): Check bfd_close error return.
6043 * strings.c (strings_object_file): Check bfd_check_format
6046 * strings.c, objdump.c, size.c: Use bfd_nonfatal instead of bfd_perror.
6048 * bucomm.c: Delete references to exit_handler. It wasn't set
6049 anywhere, and now that we're using the libiberty xmalloc, it
6050 wouldn't always get called before exiting.
6051 (list_matching_formats): Function moved from objdump.c.
6052 * bucomm.h: Declare it.
6054 * objdump.c (disassemble_data): Move some variable decls closer to
6055 their use. Add some comments. Replace a nested block with a
6060 * objdump.c (display_target_list, display_info_table): Check that
6061 the bfd of the dummy output file is not null.
6065 * objcopy.c (filter_bytes): New function.
6066 (copy_section): Call it.
6067 (copy_options, copy_usage, copy_main): Add --byte option to
6068 activate it. Appropriate the -b option (which was an undocumented
6069 synonym for -F) for it, also. Add --interleave, -i option for
6071 (setup_section, copy_section, mangle_section): Renamed with no `s'
6073 * objcopy.1, binutils.texi: Document the new options.
6075 * objdump.c (display_target_tables, display_target_list):
6076 New functions broken out of display_info.
6077 Eliminate some magic constants. Use more meaningful variable names.
6078 (dump_bfd_header): New function broken out of display_bfd.
6079 (dump_section_header): New function broken out of dump_headers.
6080 (remove_useless_symbols): Don't shadow global variable name with
6082 (objdump_print_address): Fix backward test.
6086 * bucomm.c (print_arelt_descr): Change decl of `when' to time_t.
6087 * objdump.h: Removed.
6091 * objdump.c (display_file): Remove call to list_matching_formats.
6092 It would never be called.
6093 (list_matching_formats): Take an arg giving the list of matching
6095 (display_bfd): Pass the arg, and get it filled in by calling
6096 bfd_check_format_matches instead of bfd_check_format.
6097 (display_info, display_info_table): target_vector was renamed to
6100 * binutils.texi (objdump): Note some limitations of -h section
6105 * Makefile.in (MALLOC): Set to emptiness by default.
6106 (ALL_CFLAGS): Add and use.
6107 (arparse.h): Make it depend on arparse.y.
6108 * ar.c (libbfd.h): Don't require to be in ../bfd.
6109 * objdump.c (comp): Rename to compare_symbols.
6113 * objdump.c (list_matching_formats): If the file format is ambiguous,
6114 print the matching names so the user can choose one.
6115 (display_bfd): Call it.
6116 (display_file): Call it.
6120 * objdump.c (disassemble_data): Support bfd_arch_rs6000.
6124 * objdump.c (stab_name): Allocate dynamically.
6125 (stab_print): Use pointers to strings instead of char arrays.
6126 (dump_stabs): Change alloc and init of arrays appropriately.
6127 (dump_stabs_1): Always decide whether to print stab_name or
6128 the stab's type number, if unnamed.
6132 * objcopy.c (strip_main, copy_main): Don't clobber the input file
6135 * nlmconv.c (main): Warn about an attempt to use a shared library
6136 with uninitialized data.
6138 * nlmconv.c (setup_sections): Make sure that we align the
6139 output_offset of each input section appropriately.
6143 * objdump.c (dump_relocs): Don't crash if section name is NULL.
6147 * filemode.c (filemodestring): Commented out; not used.
6148 (mode_string): Use POSIX definitions.
6149 (ftypelet): Likewise.
6150 (rwx): Removed; no longer used.
6151 * bucomm.c: Include bucomm.h.
6152 (bfd_nonfatal, bfd_fatal): Argument is const.
6153 (fatal): Make __STDC__ version.
6154 * bucomm.h (mode_string): Declare.
6155 * Makefile.in (bucomm.o): Depend upon bucomm.h
6159 * bucomm.c (xmalloc, xrealloc): Deleted.
6160 * bucomm.h (xmalloc, xrealloc): Fix prototypes, to correspond to
6161 libiberty version of functions.
6165 * binutils.texi: Add a chapter summarizing the ways to select
6166 aspects of the target for each program.
6168 * objdump.c (long_options, usage): Add long equivalents for all
6169 remaining short options that lacked them.
6170 * binutils.texi objdump.1: Document them.
6172 * size.c (usage): Tweak usage message.
6173 * size.1: Add missing `=' in examples.
6175 * binutils.texi strip.1 objcopy.1 nlmconv.1 objcopy.c nlmconv.c:
6176 Use "--target=bfdname" as the option to select the BFD target,
6177 like nm and size already do.
6178 Reserve "--format=format" for textual output selection options, but
6179 for now keep old option names as obsolete for backward compatibility.
6181 * strings.c (main, strings_object_file, usage): Add --target option.
6182 * binutils.texi strings.1: Document it.
6186 * ar.c (main): Add \n in error message.
6191 * ar.c (main): Put parens around assignment used as truth value.
6192 * objcopy.c (strip_main): Remove unused variables. Return 0.
6193 (copy_main): Remove unused variables. Return 0.
6194 * objdump.c (display_bfd): Declare return value as void.
6195 (stab_print): Use "" instead of 0 to initialize array.
6196 (dump_stabs_1): Print vma using printf_vma.
6197 (display_info): Put parens around assignment used as truth value.
6198 * strings.c (print_strings): Cast printf arguments.
6200 * objcopy.c (copy_main): Use copy_options, not strip_options.
6202 * nlmheader.y (command): Warn about illegal date values.
6206 * bucomm.c bucomm.h: Run through indent. De-ansidecl-ify.
6207 (bfd_nonfatal): New function.
6208 (bfd_fatal): Call it.
6210 * objcopy.c (smart_rename): Do a copy if the dest file has
6211 multiple hard links. Remove source file on successful copy.
6212 Try to preserve mode and owner on successful rename.
6214 * objcopy.c: Run through indent. Clean up a bit.
6215 Make global variables static.
6216 Make {input,output}_{target,filename}, show_version local
6217 to various functions.
6218 New global variable `status' for exit status.
6219 (strip_main, copy_main): New functions with code from main.
6220 (nonfatal): New macro. Use it globally instead of bfd_perror and
6223 (copy_object): Call mangle_sections with bfd_map_over_sections.
6224 (mangle_sections): Adjust for new calling convention.
6228 * nlmheader.y (command): Accept MAP and FULLMAP without arguments.
6229 * nlmconv.c (main): Change error message for MAP and FULLMAP.
6233 * nlmconv.c (main): Warn about imported symbols that are not in
6234 the IMPORT list even if the IMPORT keyword is not used.
6236 * nlmconv.c (debug, unlink_on_exit): New static variables.
6237 (long_options): Add "debug" and "linker".
6238 (main): Handle -d and -l arguments. Make command line input and
6239 output files optional. Parse the command file before opening the
6240 BFD's, which requires storing more information in local variables.
6241 If INPUT names multiple files, link them together. Use OUTPUT for
6242 the output file name if not named on command line.
6243 (show_usage): Changed for new options.
6244 (link_inputs): New function to automatically invoke linker to
6245 handle multiple INPUT files.
6246 (choose_temp_base_try, choose_temp_base, pexecute): New functions,
6247 mostly copied from gcc/gcc.c.
6248 * nlmconv.h (input_files, output_file): Declare.
6249 * nlmheader.y (input_files, output_file): Define.
6250 (command): Support INPUT with a string_list argument. Support
6252 (string_list): Renamed from module_list.
6253 * Makefile.in (nlmconv.o): Define LD_NAME based on
6254 program_transform_name.
6258 * nlmheader.y (nlmheader_identify): New function. Use it to print
6259 the program name just once, instead of with every error message.
6263 * nlmconv.c (long_options): Changed --header-info to --header-file
6264 to match documentation and usage message.
6268 * objdump.c (dump_relocs): Avoid dereferencing a NULL sym_ptr_ptr
6273 * nlmconv.c (main): Change various types from bfd_size_type to
6274 size_t, since they have to be arguments to fread and fwrite.
6275 Change set from char * to unsigned char *.
6276 (select_output_format): Make mach argument unsigned. Handle
6278 (setup_sections): Don't copy the .reginfo section of an ECOFF
6279 file. Call bfd_set_reloc to initialize the relocation fields.
6280 (copy_sections): Don't copy the .reginfo section of an ECOFF file.
6281 Combine all relocs for a section.
6282 (mangle_relocs): Change type of relocs to permit specific
6283 functions to change it. Call alpha_mangle_relocs for alpha,
6284 default_mangle_relocs for other architectures.
6285 (default_mangle_relocs): New function. Adjust the address of all
6286 relocs by the output_offset.
6287 (i386_mangle_relocs): Change type of relocs argument. Cast length
6288 argument to memmove to size_t.
6289 (alpha_mangle_relocs): New function.
6293 * nlmconv.c (select_output_format): Use nlm32-sparc for
6298 * nlmconv.1: added man page
6299 * objcopy.1: fixed format errors
6303 * Makefile.in: Use CFLAGS as well as LDFLAGS when linking.
6307 * strings.1: Fix typo.
6311 * Makefile.in (DISTSTUFF): Build "info".
6312 (VERSION): Updated to cygnus-2.3.1; 2.3 has gone out.
6316 * objdump.c (dump_stabs): Handle stabs-in-som as implemented
6317 by the new BFD SOM assembler.
6321 * ar.1 c++filt.1 nm.1 objcopy.1 objdump.1 ranlib.1 size.1
6322 strings.1 strip.1: Replace \(em in NAME section with \- so
6323 makewhatis can grok it.
6327 * nlmconv.c (i386_mangle_relocs): Adjust reloc address by
6328 section output_offset.
6332 * binutils.texi: added nlmconv chapter
6336 * Makefile.in: Change RUNTESTFLAGS to RUNTEST_FLAGS
6340 * Makefile.in (distclean): Don't get rid of dvi or info files.
6344 * objcopy.c (S_ISLNK): Define as 0 if there's no S_IFLNK.
6348 * binutils.texi: Move objcopy docs into alphabetical order.
6350 * objdump.c: Use xmalloc instead of malloc.
6354 * objdump.c (info): Rename to formats_info.
6355 (dump_stabs_1): Better comments and formatting.
6359 * ar.c (main): Always create the archive when quick appending,
6360 even if no input files have been given.
6364 * nlmconv.c (main): Set sharedDebugRecordOffset and
6365 sharedDebugRecordCount fields in extended header.
6367 * nlmconv.c (main): Force moduleName field to upper case.
6371 * objcopy.c (main): Give a usage message if there are too many
6376 * Makefile.in (install-info): Rewrite to take advantage of VPATH,
6377 so FSF distributions (with info files in $(srcdir)) install
6379 (DISTSTUFF): Build nlmheader.c too.
6383 * ar.c (program_name): Don't define here.
6384 * objdump.c: Include "bucomm.h".
6385 (xmalloc): Don't declare here.
6386 (program_name): Don't define here.
6387 (program_version): Fixed type in declaration.
6388 * size.c: Include "bucomm.h".
6389 (program_name): Don't declare here.
6393 * objdump.c (fprintf): hide declaration in FPRINTF_ALREADY_DECLARED
6397 * nlmconv.c (i386_mangle_relocs): Resolve and remove PC relative
6398 relocs against defined symbols in the same section.
6402 * Makefile.in (binutils.dvi): use TEXIDIR to find texinfo.tex
6406 * objcopy.c (simple_copy, smart_rename): New functions.
6411 * Makefile.in (clean, distclean): Recurse into testsuite.
6415 * objcopy.c (setup_sections, copy_sections): If stripping, don't
6416 copy SEC_DEBUGGING sections.
6417 * objdump.c (dump_headers): Print SEC_DEBUGGING flag.
6419 * objdump.c (usage): Mention --stabs.
6421 * objcopy.c (copy_object): Copy all applicable file flags.
6422 (copy_file): Don't copy EXEC_P specially here.
6426 * nlmconv.c (main): Adjust data section size to correspond to bss
6427 alignment adjustment. Clear BSF_SECTION_SYM if symbol is moved to
6428 a different section. Use time_t for time variable.
6429 (setup_sections): Only put sections with contents in output NLM.
6430 (i386_mangle_relocs): No symbols are common at this point. Add
6431 casts to avoid warnings.
6435 * objdump.c: Made the --stabs option work for stabs-in-coff.
6436 (ELF_STAB_DISPLAY): Removed.
6437 (dump_elf_stabs): Renamed to dump_stabs, changed to run for
6438 any object file format.
6439 (dump_elf_stabs_1): Renamed to dump_stabs_1, added calls to
6440 generic BFD routines for non-ELF case, changed format of message
6441 for no-section-found case.
6442 (display_bfd): Always call dump_stabs if requested.
6443 (dump_data): Call bfd_section_size to get section size.
6447 * Makefile.in (install): Don't put strings in tooldir/bin.
6451 * nlmconv.c (total_bss_size): Removed.
6452 (main): Set the bss vma to always follow the data section. Move
6453 symbols into new sections, and adjust values by output_offset.
6454 (setup_sections): Don't copy all sections, but instead point all
6455 text sections to .text, all data sections to .data, and all bss
6457 (copy_sections): Adjust accordingly.
6461 Only build nlmconv if configured for a NetWare target.
6462 * configure.in: If we have some *-*-netware* target, or are using
6463 all targets, set BUILD_NLMCONV to $(NLMCONV_PROG) in Makefile.
6464 * Makefile.in (PROGS): Use $(BUILD_NLMCONV) rather than
6469 * objdump.c (ARCH_all): Define ARCH_hppa too.
6470 (dump_headers): Don't test for SEC_BALIGN if it's not defined by
6475 * nlmconv.c (main): Force creation of .bss section. Set up the
6476 sections before looking at the symbols. Move all common symbols
6477 into .bss section. Automatically define _edata and _end. Only
6478 export symbols in the export list, with multiple prefixes if
6479 necessary. Warn if no version. Always create extended header.
6480 Set date automatically if not already set.
6481 (setup_sections): Count size of bss sections.
6482 (mangle_relocs, i386_mangle_relocs): Accept section argument, and
6483 take reloc_count as a changeable pointer; changed callers.
6484 (i386_mangle_relocs): Remove PC relative relocs within a section,
6485 as they require no adjustment.
6486 * nlmheader.y: Fixed memory allocation throughout: token STRING is
6487 now allocated on the heap, and freed if not needed. Null
6488 terminated copyright message. Accept version with only two
6490 (symbol_list_opt): New nonterminal, either symbol_list or empty.
6491 (symbol_list): Use left recursion to avoid overflowing parser
6493 (yylex): Rearranged beginning of line check. Accept quoted
6494 strings using single quotes. End generic argument at comment
6495 character or parentheses.
6496 (string_list_append): Fixed.
6497 (string_list_append1): New function.
6499 * bucomm.h: The first argument to xrealloc is PTR, not char *.
6500 * bucomm.c (xrealloc): Use PTR rather than char *.
6501 * Makefile.in (objdump.o): Depend upon config.status to notice
6502 --with-targets changes.
6503 (nlmconv.o): Depend upon bucomm.h.
6507 * configure.in: Don't pass cpu to config.bfd.
6511 * Makefile.in ($(NM_PROG)): Depend on demangle.o.
6512 (demangle.o): New target.
6513 (cplus-dem.o): Depend on it, to force compilation order when doing
6516 * nm.c (print_symbol_info_{bsd,sysv,posix}): Take a bfd arg.
6517 (struct output_fns print_symbol_info): Ditto.
6518 (long_options, usage, main): Add -C --demangle option.
6519 (print_symname): New function, demangling if requested.
6520 (print_symbols, print_symbol_info_{bsd,sysv,posix}): Use it.
6524 * Makefile.in: Put CFLAGS last in compilation rules and omit from
6525 linking rules. Use ARCHDEFS to compile objdump.c.
6526 Update dependencies.
6527 * configure.in: Construct ARCHDEFS based on the BFD target makefile
6529 * objdump.c: Conditionalize calls to the print_insn_ARCH functions
6530 according to ARCHDEFS.
6534 * ar.c: Removed obsolete and non-functional GNU960 code.
6538 * size.c (berkeley_sum): New function.
6539 (bsssize, datasize, textsize): New global variables.
6540 (bss_section_name, data_section_name, text_section_name): Removed.
6541 (print_berkeley_format): Map berkeley_sum over all the sections,
6542 rather than only reporting sizes of specifically named sections.
6543 * Makefile.in ($(OBJDUMP_PROG)): Removed dependency on size.o.
6547 * nlmconv.c, nlmconv.h, nlmheader.y: New files for program to
6548 convert object files into NetWare Loadable Modules.
6549 * Makefile.in (NLMCONV_PROG): New macro, define to be nlmconv.
6550 (PROGS): Add NLMCONV_PROG.
6551 (nlmheader.c, nlmheader.o, nlmconv.o, $(NLMCONV_PROG)): New
6556 * Makefile.in: define MAKEOVERRIDES to an empty string
6560 * objcopy.c (copy_file): Make failures to process a file nonfatal.
6564 * nm.c: Add -B option, like --format=bsd.
6568 * objcopy.c (copy_file): If the file is neither an object nor an
6569 archive, give an error rather than returning success.
6573 * objdump.c (objdump_print_address): Prefer non-local symbols over
6574 local ones, and especially discriminate against debugging symbols.
6575 Also, for relocateable files, try to find a symbol in the current
6576 section, instead of picking one from some random section with a
6577 convenient value (read, section offset).
6578 (disassemble_data): Cast argument to malloc to size_t first.
6579 (dump_data): Likewise.
6580 (dump_relocs): If a single section name is specified, show relocs
6581 only for that section. Otherwise, silently omit sections without
6582 relocs. Format table nicely even if values are printed using 16
6583 digits instead of 8.
6587 * nm.c: Changes for final version of POSIX.2.
6588 (print_symbol_filename_{bsd,sysv,posix}): New functions.
6589 (formats): Add an element for a pointer to them.
6590 (print_symbols): Call it.
6591 (print_object_filename_posix, print_archive_member_posix): Produce
6592 output according to new POSIX.2 spec.
6594 * strings.c (print_strings): Handle STREAM being NULL.
6595 (strings_a_section): Pass a NULL.
6596 (main): Don't open /dev/null.
6600 * objdump.c (disassemble_data): Handle the m88k.
6601 (display_bfd): Use bfd_errmsg, rather than just claiming that the
6602 bfd is not an object file.
6606 * Makefile.in (TAGS): make work again by naming directories
6607 explicitly rather than depending on undefined macros.
6608 (INSTALL_XFORM): correct bad install target.
6612 * strings.c: Doc fixes.
6616 * Makefile.in: Note dependencies on bucomm.h.
6617 (cplus-dem.o): Link c++filt with version.o.
6619 * strings.c: Include bucomm.h and add prototypes to other decls.
6622 * bucomm.h: Declare xrealloc.
6624 * nm.c, objcopy.c, objdump.c, size.c, strings.c (main, usage): Add
6625 --help option. Put "GNU" in the version message.
6626 (usage): Take stream and exit status as args.
6627 (main): Pass new args to usage.
6631 * strings.c, strings.1: New files.
6632 * binutils.texi: Document strings.
6633 * Makefile.in: Add rules for it.
6637 * objdump.c: Use size-independent bfd elf section names.
6641 * objdump.c (objdump_print_address): Handle wide offsets by
6642 calling sprintf_vma.
6646 * objdump.c (syms2): Removed unused variable.
6647 * objdump.c (remove_useless_symbols): New function.
6648 * objdump.c (comp): Simplify.
6649 * objdump.c (dis-assemble_data): Make simpler and more
6650 efficient how we filter out useless symbols: Just filter
6651 BEFORE the sort (using remove_useless_symbols).
6652 * objdump.c (objdump_print_address): Simplify.
6653 Change output syntax to match gdb.
6657 * Makefile.in: canonicalize install.sh; for use within
6658 this directory (and subdirs)
6660 Mon Jun 14 12:13:22 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
6662 * Makefile.in (install, install-info): remove parentdir support,
6663 use INSTALL_XFORM; define INSTALL_XFORM
6667 * objcopy.c (copy_object): Fix bad size passed to xmalloc().
6671 * Makefile.in (INCLUDES): Add -I../bfd for sysdep.h and bfd.h.
6672 * configure.in: No longer need to configure to get sysdep.h.
6673 * objcopy.c (copy_object): Fix symbol table handling.
6677 * objcopy.c (filter_symbols): Cannot filter the symbols
6678 in place, because that confuses the relocs, so take separate
6679 parameter for output array.
6680 * objcopy.c (sympp): Make two variables: isympp and osympp.
6681 * objcopy.c (copy_object): Allocate separate array (osympp)
6682 for filtered symbols.
6684 Fri Jun 4 10:51:44 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6686 * Makefile.in: change recursion test to presence of a configured
6691 * Makefile.in (underscore.c): Hack the backquoted command so it
6692 doesn't cause Solaris make to bomb.
6696 * Makefile.in: added c++filt and objcopy to MANPAGES variable
6698 Thu Jun 3 00:32:52 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6700 * Makefile.in: rename LOADLIBES to EXTRALIBS
6704 * c++filt.1, objcopy.1: new man pages
6708 * Makefile.in (install): Also install ar and ranlib in
6709 $(tooldir)/bin; needed for building libgcc.a.
6710 * objdump.c (objdump_print_address): Fix the check
6711 "coincidental" label matches by dis-allowing undefined
6716 * biutils.texi: revised c++filt chapter
6720 * Makefile.in (FLAGS_TO_PASS): Pass down CC and CFLAGS.
6724 * objdump.c (slurp_symtab): Print warning for bad symbol table.
6725 (bfd_elf32_find_section, Elf32_Internal_Shdr): Updated
6726 declarations and uses.
6728 * Makefile.in (DISTSTUFF): Don't build binutils.mm.
6732 * nm.c: Add -f/--format, -P/--portability, -t/--radix options.
6733 Make global variables static.
6734 (main): Make -v like -n, not -V, and make -A like -o, for POSIX.2.
6735 (set_print_radix, set_output_format,
6736 print_{object_filename,archive_filename,archive_member,symbol_info}
6737 {bsd,sysv,posix}): New functions.
6738 (display_file, print_symbols): Call them.
6740 * ar.c: Improve error messages.
6742 * nm.c (main): Handle long options that just set a flag.
6744 * nm.c (main), ar.c (do_show_version), objcopy.c (main), size.c
6745 (main): Exit after printing the version number, per the GNU coding
6750 * README, Makefile.in: Minor updates for 2.2.
6754 * Makefile.in (underscore.c): Automatically generate
6755 (using nm) a file with the variable prepends_underscore.
6756 * Makefile.in (c++filt): Link underscore.o with cplus-dem.o
6757 so that initial underscores get removed iff appropriate.
6758 * binutils.texi: Preliminary documentation for c++filt.
6759 * Makefile.in, binutils.texi: Set to version 2.2.
6761 * NEWS: Mention copy->objcopy renaming and new c++filt program.
6765 * Makefile.in (cplus-dem.o, $(DEMANGLER_PROG)): Build the
6766 demangler via cplus-dem.o, rather than directly from the .c file.
6768 * objcopy.c: Renamed from copy.c, updated comments accordingly.
6769 * Makefile.in, binutils.texi: Renamed copy to objcopy.
6770 * is-strip.c, maybe-strip.c, not-strip.c: Updated comments for
6771 rename of copy to objcopy.
6775 * binutils.texi (strip, -v option): Fix typo.
6779 * Makefile.in (RUNTEST): Define.
6780 (FLAGS_TO_PASS): Pass down RUNTEST.
6784 * Makefile.in (DEMANGLER_PROG): Name it c++filt.
6785 (PROG): Also build and install COPY_PROG.
6789 * Makefile.in: Change definition of $(tooldir) to match FSF.
6793 * size.c (usage): Add missing options.
6794 (main): Clean up option parser.
6796 * objdump.c (usage): Add missing options.
6797 (display_file): Print program name before calling
6800 * nm.c (usage): Add missing options.
6801 (main): Clean up option parser.
6802 (display_file): Print program name before calling
6805 * copy.c (copy_usage, strip_usage): Add missing options.
6807 * ar.c (usage): New function.
6809 (open_inarch, do_quick_append): Print program name before calling
6814 * nm.c (main): Accept and ignore -A and -B for MIPS compatibility.
6818 * Makefile.in: Added FLAGS_TO_PASS so tests get run on freshly
6819 built binaries if they exist. (otherwise the path)
6823 * Makefile.in: Changed check target to use DejaGnu.
6827 * Makefile.in: Remove am29k-pinsn.c, i960-pinsn.c.
6828 objdump.c: a29k and i960 are `disassemble' not `print'.
6830 * objdump.c: Rename print_address to objdump_print_address
6831 and change parameters.
6832 (disassemble_data): Use objdump_print_address.
6836 * objdump.c (disassemble_data): print_insn_sparc is now a
6837 `disassemble' not a `print'.
6838 Makefile.in: Remove sparc-pinsn.c (now in libopcodes.a).
6840 * objdump.c (disassemble_data): Use new read_memory_func stuff.
6844 * objdump.c (fprintf): Declaration of variadic function had better
6845 be a prototype for ANSI C systems.
6847 Mon Mar 22 23:19:46 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6849 * Makefile.in: rename test-install to install-check
6853 * objdump.c (disassemble_data): Add H8500.
6857 * objdump.c (usage): Mention long options.
6861 * nm.c: Modify behavior of -o flag for archives to match
6862 BSD4.4 and Sunos 4: Prefix archive name before each line.
6864 * m68k-pinsn.c: Removed. Subsumed by ../opcodes/m68k-dis.c.
6865 * i386-pinsn.c: Removed. Subsumed by ../opcodes/i386-dis.c.
6866 * Makefile.in: Adjust accordingly.
6867 * objdump.c: Support new-style disassemblers (ones that use
6868 the interface of ../include/dis-asm.h).
6872 * Makefile.in: When making tar file, remove texinfo/*,
6873 except for texinfo/texinfo.tex.
6874 * ardup.c: Add extern declaration of strdup.
6875 * Makefile.in (testsuite): Add 'else true' since otherwise
6876 Ultrix /bin/sh complains.
6880 * Makefile.in: Set VERSION to 2.1.
6881 * README, NEWS: Updates.
6882 * nm.c: Add -v as a synonym for -V.
6886 * configure.in: added testsuite to configdirs.
6887 * Makefile.in: added support for building testsuite.
6891 * objdump.c (disassemble_data): Print function names when
6892 given by bfd_find_nearest_line. If not - still print
6897 * binutils/testsuite: made modifications to testcases, etc., to allow
6898 them to work properly given the reorganization of deja-gnu and the
6899 relocation of the testcases from deja-gnu to a "tool" subdirectory.
6903 * objdump.c (dump_data): Free up section contents each time
6908 * binutils/testsuite: Initial creation of binutils/testsuite.
6909 Migrated dejagnu testcases and support files for testing nm to
6910 binutils/testsuite from deja-gnu. These files were moved "as is"
6911 with no modifications. This migration is part of a major overhaul
6912 of dejagnu. The modifications to these testcases, etc., which
6913 will allow them to work with the new version of dejagnu will be
6914 made in a future update.
6918 * Makefile.in (LIBIBERTY_SRC_DIR, LIBIBERTY_BIN_DIR): New macros.
6919 * Makefile.in (LIBIBERTY): Use LIBIBERTY_BIN_DIR.
6920 * Makefile.in (DEMANGLER_PROG): New program to build. Add macro
6922 * Makefile.in (PROGS): Add DEMANGLER_PROG.
6926 * copy.c, nm.c, objdump.c, size.c: Use new bfd_is_com_section
6927 macro rather than checking for equality to bfd_com_section.
6931 * objdump.c (disassemble_data): Fix code to find first useless
6936 * objdump.c (disassemble_data): Use mips_print_insn for MIPS.
6937 Don't core dump if bfd_find_nearest_line returns false.
6941 * objdump.c (disassemble_data): know how to disassemble z8000s
6946 * arsup.h (interactive), bucomm.h (program_name): Prefix
6947 with 'extern', to avoid warnings from some compilers.
6951 * arparse.y: fix unnecessary shift/reduce
6955 * Makefile.in: Make check depend on all.
6956 * Makefile.in (distclean): Remove sysdep.h.
6957 * size.c: Use %u format where appropriate.
6958 * objdump.c: Standardize: L_SET -> SEEK_SET.
6959 * objdump.c: Use new macro bfd_asymbol_bfd.
6960 * configure.in: Allow std-host as the default ${mys_host}.
6962 Thu Dec 17 19:38:19 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6964 * Makefile.in: added dvi target, define and use TEXI2DVI
6968 * Makefile.in (dist): Fix permissions before release.
6969 * size.c: Use bfd_size_type (and long) where appropriate.
6970 * ar.c: Make writing a map the default, to be compatible
6971 with SYSV and Posix.2. Remove some bogus kludges that
6972 handled __.SYMDEF directly.
6975 Mon Nov 9 13:36:53 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6977 * Makefile.in: flex no longer needs the -S flag
6979 Sat Nov 7 15:06:13 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6981 * ar.c (extract_file): utime needs a pointer to a utimbuf
6983 * Makefile.in: handle -I includes better, adding $(BASEDIR)/bfd to
6984 the list (since some of the bfd/hosts/*.h files include other
6985 files from that directory)
6989 * i960-pinsn.c (MEM_MAX, MEM_SIZ): Set upper bound properly.
6993 Clean up some old BFD ansification macros.
6995 * arsup.h, bucomm.h, objdump.h: Remove EXFUN from binutils.
6996 It still remains as a local macro in gmalloc.c, which is derived
6997 from some other copy of GNU Malloc somewhere (FIXME).
6999 * ar.c, objdump.c, size.c: Replace EXFUN with PROTO. Make static
7001 * arsup.h: Declare extract_files.
7005 * ar.c (extract_file): instead of checking USG: if POSIX_UTIME,
7006 use utime and utimbuf structure, otherwise if USE_UTIME use utime
7007 and array of two longs, otherwise use utimes.
7011 * binutils.tex: Document yesterday's changes to strip and copy.
7015 * copy.c: Re-do command-line parsing to use getopt_long().
7016 Add long option names. Re-think option letters to be more
7018 * copy.c: New function filter_symbols() for stripping only
7019 debug-symbols and/or local symbols. Use these to support
7020 the previously-missing options of the old FSF strip.
7024 * configure.in (host): Use ${srcdir}/../bfd/configure.host rather
7025 than repeating a copy of it here.
7029 * copy.c (main): Even if is_strip, accept -d argument indicating
7030 alternate output format. Needed by gdb for Nindy.
7032 * m68k-pinsn.c (print_insn_arg): Handle new "`" operand type.
7036 * binutils.texi: added documentation for "copy"
7038 Tue Oct 6 14:22:56 1992 Per Bothner (bothner at PersSony)
7040 * Makefile.in (*clean rules): Some cleaning up.
7041 * Makefile.in (dist): Make diststuff in gprof for a dist.
7043 * ar.c (do_show_version): New function.
7044 * ar.c (main): Fix so "ar -V" works.
7046 Thu Oct 1 22:44:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7048 * configure.in: now uses the cpu-vendor-os triple instead of
7053 * i960-pinsn.c: Change bzero to memset.
7054 * sparc-pinsn.c: Change index to strchr.
7058 * m68k-pinsn (print_insn_arg, fetch_arg): added support for
7059 operands to memory management instructions, from WRS.
7063 * Makefile.in (install): if $(tooldir) exists, install nm and
7064 strip in $(tooldir)/bin.
7068 * Makefile.in: Let's call it version 2.0.
7072 * Makefile.in: Bump to version 0.98.
7073 * TODO, README: Minor updates.
7075 * Makefile.in: Added mostlyclean, distclean rules,
7076 and cleaned up clean, realclean.
7080 * Makefile.in: map program names through program_transform_name
7085 * Makefile.in: Bump to versions 1.97.90.
7086 * cplus-dem.c: Removed. Was nowhere used - and if some
7087 programs are changed to to demangling should now use the
7088 versions in libiberty.
7092 * configure.in: add we32k
7096 * ar.c (map_over_members): if the element of the archive has a
7097 null name, fill it in.
7099 * nm.c (do_one_rel_file): only warn if a bfd's flags say there
7100 will be symbols and there aren't any.
7104 * m68k-pinsn.c: handle new operand type 'r', introduced for cas2.
7108 * nm.c objdump.c: Added support for a +version (-V)
7109 to print the version number.
7111 * ar.c, copy.c: Added support for a -V option to print
7116 * config/mh-apollo68v: removed -g from CC definition.
7118 * Makefile.in: always create installation directories.
7122 * m68k-pinsn.c: Minor fix in style of output (don't use
7123 range to indicate floating point control registers).
7127 * ar.c (main): Don't *always* set the verbose flag!
7131 * copy.c: When is_strip (because it is invoked as the strip
7132 program), follow traditional argv processing:
7133 'strip file1 file2' now strips file1 and file2, rather
7134 than stripping file1 (as input), leaving output in file2.
7138 * objdump.c (display_info, display_info_table): Call
7139 bfd_set_format() on dummy bfd before using it (twice).
7140 * ar.c: Make sure archive is created on command 'r'
7141 even when no elements are inserted. (Clean up and
7142 simplify some non-working related code.)
7146 * configure.in: hppa support doesn't assume hp OS (from sef).
7148 Sat Jul 18 14:35:22 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7150 * configure.in: recognize hppa hosts (bsd & hpux), error messages
7151 to stderr, not stdout
7155 * ar.1, binutils.texi, i960-pinsn.c, nm.1, objdump.1, ranlib.1,
7156 size.1, sparc-pinsn.c, strip.1: removed rcsid's.
7160 * Makefile.dos: removed rcsid.
7164 * objdump.c (display_bfd): print state of BFD_IS_RELAXABLE too
7168 * Makefile.in: Add program_suffix (parallel to program_prefix)
7170 Thu Jun 25 04:52:45 1992 John Gilmore (gnu at cygnus.com)
7172 * nm.c (sorters): Lint. Remove excess whitespace.
7176 * nm.c (valueof macro): Add missing parentheses.
7177 (Their lack screwed up numeric_forward().)
7179 Sun Jun 14 10:33:27 1992 John Gilmore (gnu at cygnus.com)
7181 * objdump.c (dump_elf_stabs): Also dump .stab.index and
7182 .stab.excl sections.
7183 (dump_elf_stabs_1): Split out main body of old dump_elf_stabs.
7184 * objdump.1, binutils.texi: Document new sections dumped.
7186 Fri Jun 12 22:23:35 1992 John Gilmore (gnu at cygnus.com)
7188 * size.c, objdump.c, bucomm.c: Lint.
7190 Thu Jun 11 01:19:06 1992 John Gilmore (gnu at cygnus.com)
7192 * objdump.c (dump_elf_stabs): New feature: --stabs prints out a
7193 .stab section from an ELF file. Installed under #ifdef
7194 ELF_STAB_DISPLAY so it can be easily disabled, since it requires
7195 bfd-internals header files and such.
7196 * objdump.1, binutils.texi: Update for --stabs. Also fix
7197 objdump's doc to use -- rather than + for long options.
7198 (FIXME: Not yet fixed everywhere in binutils.texinfo.)
7202 * objdump.c(display_info), patches from
7208 * objdump.c: Add another enum->int cast, for the sake of
7209 old compilers (such as PCC).
7213 * arlex.l: Don't include <sysdep.h> (unneeded conflicts).
7214 Add declaration of strdup().
7218 * Makefile.in: Use srcdir instead of VPATH in ldgram/ldlex
7219 rules, since these are used when building a distribution.
7220 * Makefile.in (arlex.c): Don't re-direct output, since that
7221 leaves a bogus output files if it fails.
7223 * arlex.l: Make work with lex, for what it's worth.
7224 * Makefile.in: Better lex support.
7225 * Makefile.in (dist): Generate flex and bison outputs
7230 * Makefile.in: get BISON definition right.
7234 * sanity.sh: default TMPDIR to ".".
7238 * binutils.texi: add doc for ar command language.
7242 * arparse.y: make END call ar_end
7243 * arsup.c (ar_end): added, deletes temp file if archive session
7249 * Makefile.in: use bison & flex from ../ if they exist. Also,
7252 * sanity.sh: remove temporary directory when finished.
7256 * Makefile.in: Bump to version 1.97.
7257 * ar.c: Declare errno for machines that need it.
7261 * objdump.c (display_info): Handle error cases without coredump.
7262 Close the dummy temporary file we open in the loop.
7263 * Makefile.in (arsup.o): Add kludge to build with Sun Make.
7267 * Makefile.in: added test-install target.
7269 * sanity.sh: new file.
7271 * Makefile.in: use sanity test on make check.
7275 * Makefile.in: rework CFLAGS so that they can be passed on the
7276 command line to make. Remove MINUS_G. Default CFLAGS to -g.
7280 * arsup.c, arsup.h, arparse.y, arlex.l: support for archive
7285 * Makefile.in: added check target.
7289 * Makefile.in: added clean-info target.
7293 * Makefile.in: remove $(COPY_PROG) from PROGS. It shouldn't be
7294 installed. added tooldir and program_prefix.
7298 * Makefile.in, configure.in: removed traces of namesubdir,
7299 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
7300 copyrights to '92, changed some from Cygnus to FSF.
7302 Sun Feb 16 12:53:02 1992 Per Bothner (bothner at cygnus.com)
7304 * Makefile.in: Bump version to 1.96, and remove -beta
7305 suffix from distribution name.
7306 * m68k-pinsn.c: New macro COERCE_SIGNED_CHAR to extract
7307 the signed value of a character (even if chars are unsigned).
7308 * sparc-pinsn.c: Add new operand types.
7310 Thu Feb 6 12:14:19 1992 Steve Chamberlain (sac at rtl.cygnus.com)
7312 * objdump.c (disassemble_data): don't print a section's contents
7313 if it's not loadable (eg bss)
7315 Tue Jan 28 11:11:06 1992 Steve Chamberlain (sac at rtl.cygnus.com)
7317 * m68k-pinsn.c (print_insn_arg): fixed so that -ve branch
7318 displacements don't get printed as large +ve ones.
7320 Fri Jan 24 14:47:53 1992 Steve Chamberlain (sac at rtl.cygnus.com)
7322 * copy.c, nm.c, objdump.c, size.c : changed to use the
7326 Mon Dec 30 18:34:41 1991 Per Bothner (bothner at cygnus.com)
7328 * bucomm.c (print_arelt_descr): Tweek the output format
7329 so that 'ar tv' output follows Posix 1003.2/D11.
7330 Output is now also identical to Sun's (except __.SYMDEF).
7332 Mon Dec 30 06:09:53 1991 John Gilmore (gnu at cygnus.com)
7334 * Makefile.in: Make `make' output more readable.
7336 Wed Dec 18 15:04:45 1991 Per Bothner (bothner at cygnus.com)
7338 * Makefile.in: Bump to version 1.94.
7340 Wed Dec 11 16:48:09 1991 Steve Chamberlain (sac at cygnus.com)
7342 * ar.c: added "b" to fopens for dos
7343 * configdj.bat, makefile.dos new files from DJ
7345 Tue Dec 10 04:07:26 1991 K. Richard Pixley (rich at rtl.cygnus.com)
7347 * Makefile.in: infodir belongs in datadir.
7349 Sat Dec 7 17:09:37 1991 Steve Chamberlain (sac at rtl.cygnus.com)
7351 * bucomm.h: created to hold prototypes of bucomm.c
7352 * objdump.h: created to hold prototyes of objdump.c
7353 * am29k-pinsn.c: include objdump.h
7354 * ar.c: include bucomm.h, get ar.h from the right place and
7356 * bucomm.c: defunize bfd_fatal
7357 * copy.c: include bucomm.h, lint.
7358 * i960-pinsn.h: include bucomm.h
7359 * m68k-pinsn.h: lint
7360 * nm.c: include bucomm.h, lint
7362 * sparc-pinsn.c: include objdump.h
7366 Fri Dec 6 23:02:14 1991 K. Richard Pixley (rich at rtl.cygnus.com)
7368 * Makefile.in: added standards.text support. install using
7369 INSTALL_PROGRAM and INSTALL_DATA.
7371 * configure.in: configure now does all of it's work from objdir so
7372 make file existence tests against ${srcdir}.
7374 Thu Dec 5 22:46:22 1991 K. Richard Pixley (rich at rtl.cygnus.com)
7376 * Makefile.in: idestdir and ddestdir go away. Added copyrights
7377 and shift gpl to v2. Added ChangeLog if it didn't exist. docdir
7378 and mandir now keyed off datadir by default.
7380 Wed Dec 4 22:42:03 1991 Per Bothner (bothner at cygnus.com)
7382 * Makefile.in: Bump to version 1.93.
7383 * Makefile.in: Add make-strip.o:maybe-strip.c dependency
7384 for make versions that provide half-baked VPATH-support (e.g. Sun's).
7385 * size.c: Improvements suggested by
7387 - Don't emit (Berkeley) headers if no files were found.
7388 - Return a non-zero return code on failure.
7390 Sat Nov 30 21:34:19 1991 Steve Chamberlain (sac at rtl.cygnus.com)
7392 Changes due to include file renaming:
7393 * am29k-pinsn.c: a29k-opcode.h -> opcode/a29k.h
7394 * sparc-pinsn.c: sparc-opcode.h -> opcode/sparc.h
7395 * m68k-pinsn.c: m68k-opcode.h -> opcode/m68k.h
7396 * nm.c: stab.gnu.h -> aout/stab_gnu.h
7398 Tue Nov 19 19:20:43 1991 Per Bothner (bothner at cygnus.com)
7400 * README: Mention MINIMIZE flag for bfd's make.
7402 Mon Nov 18 12:05:37 1991 Per Bothner (bothner at cygnus.com)
7404 * README: Various improvements.
7406 Sun Nov 17 23:40:59 1991 Per Bothner (bothner at cygnus.com)
7408 * Makefile.in: Bump to version 1.92.
7409 * version.c, Makefile.in: Get version string from Makefile.
7410 * copy.c, is-strip.c, not-strip.c, maybe-strip.c, Makefile.in:
7411 Make the same change that we earlier did for ar/ranlib:
7412 Generate two different binaries for strip and copy and use
7413 a global variable with different values to distinguish
7414 ostrip from copy. (-1 means to use argv[0] to decide,
7415 so you can get the old behavior, but it is no longer the default).
7416 * copy.c (copy_file): Set EXEC_P of output bfd if input is so.
7417 * copy.c (main): If is_strip==-1, compare last 5 chars
7418 of argv[0], not the whole path.
7419 * copy.c (main): Return 0, not 1.
7420 * copy.c (setup_sections): Fix due to change in bfd_make_section
7421 now failing if asked for a duplicate section.
7422 * strip.c, ostrip.c: Removed obsolete files.
7423 * ar.c, not-ranlib.c, maybe-ranlib.c:
7424 Change encoding of is_ranlib variable to be consistent
7425 with is_strip for strip.copy (i.e -1 to means use argv[0]).
7427 Thu Nov 14 20:11:02 1991 Per Bothner (bothner at cygnus.com)
7429 * version.c (program_version): Update to version 1.92.
7431 Tue Nov 12 16:17:53 1991 Per Bothner (bothner at cygnus.com)
7433 * ar.c (get_pos_bfd): Previous fix was missing a "break".
7435 Thu Nov 7 08:55:56 1991 Steve Chamberlain (sac at cygnus.com)
7437 * am29k-pinsn.c: Fixed bug in mtacc, dmac and fmac instruction
7438 encodings. (Thaks to David Wood)
7440 Sun Nov 3 14:50:23 1991 Per Bothner (bothner at cygnus.com)
7442 * Makefile.in ($(DIST_NAME).tar.Z), TODO: Various fixes.
7443 * ar.c (get_pos_bfd): Fix to handling of before/after
7444 positioning options.
7445 * bucomm.c (fatal): MISSING_VFPRINTF is no longer an issue,
7446 since libiberty contains vfprintf etc if otherwise missing.
7447 * m68k-pinsn.c (print_insn_arg): Support BB/BW/BL
7448 type operands, as used by branch instructions.
7449 * nm.c: Delegate printing of symbols to BFD,
7450 by using bfd_print_symbol to do the formatting.
7452 Mon Oct 28 11:20:47 1991 Steve Chamberlain (steve at cygnus.com)
7454 * ar.c (write_archive.c): added unlink before rename since some
7455 systems can't rename onto an existant file.
7457 Mon Oct 21 09:47:23 1991 Steve Chamberlain (steve at rtl.cygnus.com)
7459 * nm.c: now doesn't crash if a symbol with no section and no
7462 Thu Oct 17 15:25:50 1991 Per Bothner (bothner at cygnus.com)
7464 * Makefile.in, version.c: Bump to version 1.91.
7466 Wed Oct 16 11:45:36 1991 Per Bothner (bothner at cygnus.com)
7468 * Makefile.in, ar.c, bucomm.c, copy.c, cplus-dem.c, filemode.c,
7469 i960-pinsn.c, m68k-pinsn.c, nm.c, objdump.c, size.c, sparc-pinsn.c,
7470 * strip.c: Add or update Copyright notice.
7471 * TODO: Add note on 'nm -a'.
7472 * version.c: Update version number to 1.90.
7473 * Makefile.in: Fix making of documentation for dist.
7475 Tue Oct 15 00:17:17 1991 Per Bothner (bothner at cygnus.com)
7478 * Makefile.in: New kludgy rules for making a tarfile.
7479 * Makefile.in: Fix bindir path.
7481 Mon Oct 14 17:34:29 1991 Roland H. Pesch (pesch at cygnus.com)
7483 * Makefile.in: add targets binutils.mm, binutils.me
7485 Fri Oct 11 22:44:21 1991 John Gilmore (gnu at cygnus.com)
7487 * Makefile.in: Avoid Sun Make VPATH bugs by adding dependencies.
7489 Fri Oct 11 12:51:33 1991 Roland H. Pesch (pesch at cygnus.com)
7491 * Makefile.in: add target "binutils.ms"
7493 * binutils.texinfo: minor restructuring for texi2roff comfort.
7495 Fri Oct 11 04:12:28 1991 John Gilmore (gnu at cygnus.com)
7497 Restructure configuration scheme for bfd, binutils, ld.
7499 * include/sys/h-*.h: Move to bfd/hosts/h-*.h.
7500 * configure.in: Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
7501 Change some config names to match other dirs.
7502 * *.c: Include bfd.h before sysdep.h, so ansidecl and PROTO()
7504 * Makefile.in: Use -I. to get sysdep.h.
7506 Wed Oct 9 22:42:56 1991 Per Bothner (bothner at cygnus.com)
7508 * nm.c (print_symbols): Handle NULL name field of symbol.
7509 * Makefile.in: Removed spurious comment.
7511 Tue Oct 8 16:55:03 1991 Roland H. Pesch (pesch at cygnus.com)
7513 * binutils.texinfo: minor typos, phrasing, formatting fixes.
7515 Tue Oct 8 15:13:20 1991 Per Bothner (bothner at cygnus.com)
7517 * configure.in: Get host file from ../bfd/config, not config.
7518 * config/*: Remove config directory and its files.
7520 Tue Oct 8 13:58:59 1991 Roland H. Pesch (pesch at cygnus.com)
7522 * Makefile.in: new targets binutils.dvi, binutils.info
7524 * binutils.texinfo: remove most remaining FIXME's, delete
7525 references to __.SYMDEF by name
7528 Tue Oct 8 10:23:44 1991 Steve Chamberlain (steve at cygnus.com)
7530 * objdump.c (print_address) Print addresses nicely.
7532 Mon Oct 7 11:31:05 1991 Per Bothner (bothner at cygnus.com)
7534 * ar.c, Makefile.in, new files {is,not,maybe}-ranlib.c:
7535 Make two different binaries for ar and ranlib, instead of
7536 distinguishing them at run time using argv[0].
7537 (Old behavior is still available if you "make ar_with_ranlib",
7538 but it is not the default.)
7539 * ranlib.sh (new): An alternative one-line
7540 shell implementation of ranlib.
7542 Fri Oct 4 21:49:44 1991 John Gilmore (gnu at cygnus.com)
7544 * objdump.c: Cope with renames of a few BFD types & enums.
7546 Fri Oct 4 19:08:09 1991 Roland H. Pesch (pesch at cygnus.com)
7548 * binutils.texinfo: add new file (rudimentary docn)
7550 Mon Sep 30 12:30:39 1991 Per Bothner (bothner at cygnus.com)
7552 * config/hmake-news: Add new file (for Sony NEWSOS3).
7553 * bucomm.c (fatal): Conditionally compile fatal() depending on
7554 MISSING_VFPRINTF, and don't confuse the issue with NO_VARARGS.
7555 * objdump.c (dump_headers): Trivial output format change.
7556 * objdump.c (display_info): Loop over integers, not enums,
7557 to appease old compilers.
7559 Mon May 20 16:14:07 1991 Steve Chamberlain (steve at cygint.cygnus.com)
7561 *objdump.c *nm.c *copy.c: Changed some types to work with 64 bit
7564 Thu May 16 16:06:55 1991 Steve Chamberlain (steve at cygint.cygnus.com)
7566 * objdump.c (print_address): Make disasembled output more
7567 consistent with gdb and as: Add 0x when printing hex.
7568 Don't print extra leading zeros.
7569 Attempt to not print "filename.o".
7570 * objdump.c: Add some enum-to-int casts to accomodate old compilers.
7573 Fri May 3 22:21:44 1991 John Gilmore (gnu at cygint.cygnus.com)
7575 * copy.c: Change =& constructs to = &, since they confuse older
7583 version-control: never