3 * readelf.c (elf/i860.h): Include.
4 (dump_relocations): Add recognition of i860 architecture.
5 (guess_is_rela): Add recognition of i860 architecture.
9 * MAINTAINERS: Add information about CGEN maintainers.
13 * resrc.c: use "gcc -xc" instead of -xc-header
17 * nm.c (main): Ignore '-X32_64' as an option.
18 * ar.c (main): Likewise.
19 * binutils.texi (nm): Document new option.
24 * rdcoff.c (external_coff_symbol_p): K&R-ise.
28 * binutils/binutils.texi: Put back "@end table" deleted by
33 * binutils/nm.c: Add optional style to demangle switch.
34 * binutils/objdump.c: Add optional style to demangle switch.
35 * binutils/addr2line.c: Add optional style to demangle switch.
36 * binutils/binutils.texi: Document optional style to demangle
41 * MAINTAINERS: Add self as CRIS port maintainer.
42 * readelf.c: Include elf/cris.h.
43 (guess_is_rela): Handle EM_CRIS.
44 (dump_relocations): Ditto.
45 (get_machine_name): Ditto.
46 * Makefile.am: Rebuild dependencies.
47 * Makefile.in: Regenerate.
48 * po/binutils.pot: Regenerate.
52 * readelf.c (get_dynamic_type): Change "AUXILARY" to
54 (process_dynamic_segment): Print out strings for DT_CONFIG,
55 DT_DEPAUDIT, DT_AUDIT and DT_RUNPATH.
59 * nm.c (usage): Change output of `nm --help' to include a
60 description of the purpose of the program and a detailed
61 description of the accepted options.
65 * readelf.c (process_dynamic_segment): Change DF_1_NODEPLIB
70 * readelf.c (get_dynamic_type): Fix DT_CHECKSUM.
74 * readelf.c (get_dynamic_type): Change DT_FEATURE_1 to
76 (process_dynamic_segment): Likewise.
78 * readelf.c (get_dynamic_type): Handle DT_CONFIG, DT_DEPAUDIT,
79 DT_AUDIT, DT_PLTPAD, DT_MOVETAB and DT_CHECKSUM.
80 (process_dynamic_segment): Handle DTF_1_CONFEXP, DF_1_NODEPLIB,
81 DF_1_NODUMP and DF_1_CONLFAT.
85 * binutils.texi (readelf): Fix spelling typo.
89 * objdump.c (usage): Make output of `objdump --help' more
90 consistent with the rest of the GNU world. Add a line describing
91 the purpose of the program.
95 * stabs.c (parse_stab_range_type): Cast to proper type to fix
100 * readelf.c (get_dynamic_data): Add casts and use unsigned chars
102 (process_symbol_table): Ditto.
103 (procesS_extended_line_op): Ditto.
104 (display_debug_lines): Ditto.
105 (display_debug_pubnames): Ditto.
106 (read_and_display_attr): Ditto.
110 * MAINTAINERS: Add several more port specific maintainers.
114 * MAINTAINERS: Add blanket write privs for Michael Meissner.
122 * dllwrap.c: Changed mistaken dyn_string_append() calls
123 to dyn_string_append_cstr().
127 * stabs.c (parse_stab_type): Divide size in bits by 8 as binutils
128 struct debug_type stores size in bytes.
132 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
133 (CLEANFILES): Add DEPA.
134 * Makefile.in: Regenerate.
138 * ar.c: Revert incorrect 2000-06-25 patch.
139 * bucomm.c: Likewise.
143 * rdcoff (parse_coff_symbol): Treat GNU weak symbols as external.
144 (external_coff_symbol_p): New function.
145 (parse_coff): Use it.
149 * ar.c (normalize): Advance past both characters in a DOS based
150 <letter>: filepath prefix.
152 * bucomm.c (make_tempname): Likewise.
156 * objdump.c (usage): Fix description of --stabs switch.
160 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
162 * Makefile.in: Regenerate.
166 * ar.c (normalize): Correct pointer comparison when checking for
169 * bucomm.c (make_tempname): Likewise.
171 * ieee.c (ieee_start_compilation_unit): Correct pointer comparison
172 and search for backslashes in the original pathname.
173 (ieee_add_bb11): Likewise.
177 * ar.c (print_contents): Improve verbose message.
181 * dyn-string.c: Removed. Not needed with dyn-string.c in
183 * dyn-string.h: Likewise.
185 * Makefile.am: Remove references to dyn-string.c and
186 dyn-string.h. Rebuild dependency.
187 * Makefile.in: Rebuild.
191 * binutils.texi: Put a warning on copying relocatable object
192 files between two different formats.
196 * rcparse.y (control): ICON controls take an id as the first
197 parameter, not an optional string. Also, call new convenience
198 function that takes res_id's.
199 * resrc.c (define_control): missing text means zero-length string,
201 (define_icon_control): New.
202 * windres.h: declare define_icon_control.
206 * configure: Regenerate.
210 * configure.in (VERSION): Update to show this is the CVS mainline.
214 * strings.c (isgraphic): Interpret <TAB> as a printable character,
215 analogous to <SPACE>.
219 * objdump.c (display_target_list): Use bfd_close_all_done, not
220 bfd_close to fix crash caused by 2000-05-24 change.
224 * resrc.c (close_input_stream): zero out cpp_pipe after closing it.
228 * Makefile.am: Update dependencies with "make dep-am"
229 * Makefile.in: Regenerate.
233 * ar.c: Include filenames.h.
234 (normalize) [HAVE_DOS_BASED_FILE_SYSTEM]: Support backslashes
235 and drive letters in file names.
236 (main): Support backslashes and drive letters in argv[0]. Drop
237 the .exe suffix, if any, in argv[0] if is_ranlib is negative. Use
238 FILENAME_CMP instead of strcmp to compare file names.
239 (open_inarch) [__GO32__]: Don't ifdef errno != ENOENT test for
241 (do_quick_append) [__GO32__]: Ditto.
242 (get_pos_bfd, delete_members, move_members, replace_members):
243 Compare file names with FILENAME_CMP.
245 * bucomm.c: Include filenames.h.
246 (make_tempname) [HAVE_DOS_BASED_FILE_SYSTEM]: Support mixed
247 forward/backward slashes and drive letters in file names.
249 * ieee.c (ieee_start_compilation_unit, ieee_add_bb11): Support
250 mixed forward/backward slashes and drive letters in file names.
252 * strings.c (O_BINARY, setmode, SET_BINARY): Define.
253 (main) [SET_BINARY]: Use SET_BINARY to switch stdin into binary
256 * objcopy.c: Include filenames.h.
257 (main) [HAVE_DOS_BASED_FILE_SYSTEM]: Drop the .exe suffix
258 before comparing to "strip".
259 Use FILENAME_CMP to compare file names.
261 * arsup.c: Include filenames.h.
262 (map_over_list, ar_delete, ar_replace, ar_extract): Use
263 FILENAME_CMP to compare file names.
264 (ar_open): Prepend "tmp-" instead of appending "-tmp", to create
265 the temporary file name.
267 * configure.in: Check for setmode.
268 * configure: Regenerate.
272 * objdump.c (display_target_list): Close the bfd.
273 (display_info_table): Likewise.
277 * objcopy.c (filter_symbols): Don't strip global symbols in
278 relocatable object files.
282 * size.c (usage): Associate short options with corresponding long
283 option to give a clue as to their function.
287 * size.c (main): Accept and ignore `-f' option.
291 * bucomm.h (gettext, dgettext, dcgettext, textdomain,
292 bindtextdomain): Replace defines with those from intl/libgettext.h
293 to quieten gcc warnings.
297 * nlmconv.c (temp_filename): Removed.
299 * nlmconv.c (link_inputs): Use make_temp_file () instead of
301 * objdump.c (display_target_list): Likewise.
302 (display_info_table): Likewise.
306 * objcopy.c (setup_section): Add const and gettext calls for err.
310 * readelf.c (get_osabi_name): Handle ELFOSABI_NONE instead of
311 ELFOSABI_SYSV. Also handle ELFOSABI_NETBSD, ELFOSABI_HURD,
312 ELFOSABI_SOLARIS, ELFOSABI_MONTEREY, ELFOSABI_IRIX,
313 ELFOSABI_FREEBSD, ELFOSABI_TRU64, ELFOSABI_MODESTO
314 and ELFOSABI_OPENBSD.
318 * coffgrok.c: Add ATTRIBUTE_UNUSED as appropriate.
319 * srconv.c: Likewise.
320 * sysdump.c: Likewise.
324 * readelf.c (guess_is_rela): AVR uses RELA relocations.
325 (get_machine_name): machine name for EM_AVR added.
330 * Makefile.am (readelf.o): Add elf/ia64.h.
331 * Makefile.in: Rebuild.
332 * readelf.c: Include elf/ia64.h.
333 (guess_is_rela, dump_relocations): Handle EM_IA_64.
337 * objdump.c (disassemble_data): Set octets per byte *after*
338 resolving arch/mach for binary files.
342 * arlex.l: Add directives to increase lex buffer size.
344 * objdump.c, readelf.c: Don't include strarg.h or varargs.h. They are
345 already included by bucomm.h.
349 * readelf (dynamic_segment_mips_val): Call `sprintf', not
350 `strftime' since strftime is not available on all systems.
351 (process_mips_specific): Ditto.
355 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
356 --enable-build-warnings option.
357 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
358 * Makefile.in, configure: Re-generate.
362 * addr2line.c: Update copyright.
363 * objcopy.1: Likewise, and title.
364 * strings.1: Likewise.
366 * version.c (print_version): Add 2000.
368 * rddbg.c (read_section_stabs_debugging_info): Don't use
369 bfd_size_type for strx to avoid printf problems if BFD64.
371 * bucomm.c: (report): Remove `static'.
372 Move inclusion of stdarg.h/vararg.h from here.
374 (CONST): Change all occurences to const.
375 (report): Declare it.
376 (bfd_fatal): Add ATTRIBUTE_NORETURN.
377 (fatal): Add ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN.
378 (non_fatal): Add ATTRIBUTE_PRINTF_1.
380 * ar.c (main): Use fatal or non_fatal instead of fprintf.
381 Correct a typo in an error message.
382 (do_quick_append): Use non_fatal instead of fprintf.
383 (move_members): Use fatal instead of fprintf, exit.
384 * coffdump.c (main): Same here.
386 * dlltool.c (display): Delete.
388 (inform): Use `report' instead of `display'.
389 (rvaafter): Remove trailing \n from fatal error msg.
392 (yyerror): Replace `warn' with `non_fatal', and remove \n.
393 (def_name): Likewise.
395 (scan_all_symbols): Likewise.
396 (gen_lib_file): Likewise.
397 (def_library): Likewise. Remove extra program_name too.
398 (run): Remove \n from inform strings.
399 (scan_drectve_symbols): Likewise.
400 (add_excludes): Likewise.
401 (scan_open_obj_file): Likewise.
402 (gen_exp_file): Likewise.
403 (gen_lib_file): Likewise.
404 (process_duplicates): Likewise.
406 * Makefile.am (dllwrap_SOURCES): Add version.c.
407 * dllwrap.c (program_version): Delete.
408 (print_version): Delete.
409 (display): Always print trailing \n.
411 (delete_temp_files): Use warn instead of fprintf. Use gettext.
414 (usage): gettext'ify.
415 (long_options): Add missing initialisers.
417 * nlmconv.c (main): Use fatal/non_fatal instead of fprintf.
418 (select_output_format): Likewise.
419 (powerpc_mangle_relocs): Likewise.
420 (link_inputs): Likewise.
422 * nm.c (set_print_radix): Use fatal instead of fprintf, exit.
423 (set_output_format): Likewise.
424 (main): Use non_fatal instead of fprintf.
425 (display_rel_file): Likewise.
427 * objdump.c (slurp_symtab): Use non_fatal instead of fprintf.
428 (slurp_dynamic_symtab): Same here.
429 (disassemble_data): And here.
430 (read_section_stabs): And here.
431 (read_section_stabs): And here.
432 (dump_bfd): And here.
434 (objdump_sprintf): Use fatal instead of fprintf, exit.
435 (disassemble_data): Same here.
437 * rdcoff.c (parse_coff_type): Use non_fatal instead of fprintf.
438 (parse_coff_struct_type): Same here.
439 (parse_coff_enum_type): And here.
440 (parse_coff): And here.
441 * rddbg.c (read_debugging_info): And here.
442 * size.c (main): And here.
443 * windres.c (format_from_name): And here.
444 * wrstabs.c (stab_write_symbol): Here too.
445 (write_stabs_in_sections_debugging_info): And here.
446 (stab_int_type): And here.
447 (stab_struct_field): And here.
448 (stab_typdef): And here.
450 * rescoff.c (read_coff_rsrc): Use fatal instead of fprintf, exit.
451 * srconv.c (main): Same here.
452 * strings.c (main): And here.
453 (integer_arg): And here.
454 * sysdump.c (main): And here.
458 * objdump.c (dump_section_header): Print CLINK and BLOCK flags.
462 * readelf.c (decode_location_expression): Loop through multiple
464 (read_and_display_attr): Pass in length.
466 * readelf.c (read_and_display_attr): Add CU offset to references.
467 (display_debug_info): Pass it in.
471 * readelf.c (decode_ARM_machine_flags): New function.
472 (get_machine_flags): Call decode_ARM_machine_flags for ARM
475 (get_machine_name): Catch EM_AVR
479 * binutils.texi: Remove optional `=' from long options that have
480 an `=' in the argument.
481 * objcopy.1: Here too. Remove extra space on discard-all.
483 * binutils.texi (objcopy): Mention --redefine-sym.
484 * objcopy.1: Here too.
487 * objcopy.c (parse_flags): Split off flag names from error message
488 gettext as they are not translated.
489 (copy_main): Similarly split off option name for --add-section,
490 --set-section-flags, --change-section-vma, --change-section-lma
492 Some white space changes.
495 * objcopy.c (struct redefine_node): New.
496 (redefine_sym_list): New.
497 (redefine_list_append): New.
498 (lookup_sym_redefinition): New.
499 (OPTION_REDEFINE_SYM): New.
500 (copy_options): Add --redefine-sym option.
501 (copy_usage): Mention it.
502 (filter_symbols): Rename symbols on redefine_sym_list.
503 (copy_object): Call filter_symbols if redefine_sym_list != NULL.
504 (copy_main): Handle OPTION_REDEFINE_SYM.
508 * readelf.c (process_symbol_table): Correctly read in symbol
509 versioning information.
513 * po/binutils.pot: Regenerate.
515 * addr2line.c (usage): Restore translated part of bug string.
516 * ar.c (usage): Likewise.
517 * nlmconv.c (show_usage): Likewise.
518 * nm.c (usage): Likewise.
519 * objcopy.c (copy_usage): Likewise.
520 (strip_usage): Likewise.
521 * objdump.c (usage): Likewise.
522 * readelf.c (usage): Likewise.
523 * size.c (usage): Likewise.
524 * strings.c (usage): Likewise.
525 * windres.c (usage): Likewise.
527 * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
528 (DEP): Quote when passing vars to sub-make. Add warning
530 (DEP1): Rewrite for "gcc -MM".
531 (CLEANFILES): Add DEP2.
533 * Makefile.in: Regenerate.
537 * Makefile.am (GENERATED_HFILES): Add rcparse.h
538 (arparse.h): Depend on arparse.c
539 (defparse.h, nlmheader.h, rcparse.h, sysinfo.h): Similarly.
543 * size.c (usage): Use REPORT_BUGS_TO.
547 * bucomm.h: #include "bin-bugs.h"
548 * addr2line.c (usage): Use REPORT_BUGS_TO.
549 * ar.c (usage): Likewise.
550 * nlmconv.c (show_usage): Likewise.
551 * nm.c (usage): Likewise.
552 (OPTION_TARGET): Define.
553 (long_options): Use OPTION_TARGET rather than 200.
556 * objcopy.c (copy_usage): Use REPORT_BUGS_TO.
557 (strip_usage): Likewise.
558 * objdump.c (usage): Likewise.
559 * readelf.c (usage): Likewise.
560 * strings.c (usage): Likewise.
561 * windres.c (usage): Likewise.
565 * readelf.c: Include sys/types.h before sys/stat.h for ultrix.
569 * rddbg.c (read_section_stabs_debugging_info): Catch out of range
570 string offsets in corrupt stabs entries.
574 * readelf.c: Include elf/avr.h
575 (dump_relocations): Add EM_AVR case.
579 * strings.1: Correct '-bytes' to '--bytes'.
583 * Makefile.am (install-exec-local): Depend on
584 install-binPROGRAMS for parallel make.
585 * Makefile.in: Regenerated.
590 * readelf.c (process_dynamic_segment): Add cast to make sure
591 argument to %* is int.
595 * configure.in (AC_SEARCH_LIBS): Pass m, not -lm.
599 * configure.in: Add arm-wince, mips-pe and sh-pe targets.
600 * configure: Regenerate.
602 * dlltoolc.: Add support for sh-pe and mips-pe targets.
603 * rescoff.c: Add support for sh-pe and mips-pe targets.
607 * readelf.c (get_osabi_name): Handle ELFOSABI_LINUX.
611 * readelf.c (process_symbol_table): Remove use of ELF_ST_OTHER.
616 * readelf.c (process_version_sections): Add casts to make sure
617 argument to %* is an int.
618 (process_mips_specific): Add casts to make printf arguments match
623 * objdump.c (dump_section_header): Change `opb' to unsigned.
624 (find_symbol_for_address): Same here.
625 (disassemble_data): And here. Change `addr_offset',
626 `stop_offset', `nextstop_offset' to unsigned long.
627 (dump_data): Change opb to unsigned.
631 * resrc.c: Remove unmatched #if for cygwin.
635 * binutils.texi: Document the change of flavor name from atpcs-special
636 to special-atpcs to prevent name conflict in gdb.
640 * objdump.c (show_line): Fix bug preventing printing of the very
641 first line (line zero) of a file when interlisting source and
642 assembly. Added option to print entire context from start of file
643 when the first line from that file is encountered.
647 * binutils/objdump.c (dump_section_header, find_symbol_for_address,
648 show_line, disassemble_bytes, disassemble_data, dump_data):
649 distinguish between octets and bytes.
653 * nm.c (print_symbol_info_bsd): Use bfd_is_undefined_symclass to
654 check to unresolved symbols.
655 (print_symbol_info_sysv): Ditto.
656 (print_symbol_info_posix): Ditto.
658 * binutils.texi: Document new 'V' symclass flag for nm.
662 * binutils.texi (objdump): Document new ARM specific
663 disassembler options.
665 * objdump.c (usage): Call disassembler_usage().
669 * readelf.c (get_dynamic_flags): Return buff.
670 (process_dynamic_segment): Don't pass error strings to printf
672 (read_and_display_attr): Use lx and ld to print longs.
673 (process_corefile_note_segment): Cast bfd_vma to unsigned long
679 * readelf.c (get_osabi_name): Recognise ELFOSABI_ARM.
683 * debug.c (debug_name_type): Return DEBUG_TYPE_NULL rather than
685 (debug_tag_type): Here too.
686 * ieee.c (ieee_builtin_type): And here.
687 * stabs.c (parse_stab_type, parse_stab_array_type): And here.
691 * readelf.c (get_machine_name): Change EM_S370 to return "IBM
696 * readelf.c (get_dynamic_type): Remove DT_ENCODING.
700 * readelf.c (get_note_type): Display NT_WIN32PSTATUS notes.
704 * windres.c (long_options): Add --use-temp-file and
705 --no-use-temp-file options.
709 * windres.h: Update read_rc_file prototype.
711 * resrc.c (cpp_temp_file): New static variable.
712 (istream_type): New static variable.
713 (close_pipe): Delete function.
714 (run_cmd): New static function.
715 (open_input_stream): New static function.
716 (close_input_stream): New static function.
717 (look_for_default): Handle DOS directory separator. Use
718 open_input_stream instead of popen.
719 (read_rc_file): Likewise.
721 * binutils.texi: Document --use-temp-file, --no-use-temp-file
726 * dlltool.c (create_compat_implib): New variable.
728 (make_one_lib_file): Use.
729 (long_options): Add --compat-implib option.
733 * dllwrap.c (enum target_type): Rename MINGW32_TARGET to MINGW_TARGET.
734 (main): Use. Don't look for "32" in cygwin and mingw target names.
738 * binutils.texi: Document new, ARM specific disassembler
739 command line switch "-M force-thumb".
743 * readelf.c: Update with new constants added by Oct 4, 1999
745 (guess_is_rela): Add new machine codes, but leave
746 rel type undetermined.
747 (get_machine_name): Add new machine codes.
748 (get_section_type_name): Add new section types.
749 (get_elf_section_flags): New function: Decode section flags.
750 (process_section_headers): Call get_elf_section_flags() in
751 order to decode flags in section header.
752 (get_dynamic_flags): New function: Decode dynamic section
754 (process_dynamic_section): Display flags (if present).
755 (get_symbol_type): Add STT_COMMON.
756 (get_symbol_visibility): New function: Decode a symbol's
758 (process_symbol_table): Call get_symbol_visibility().
759 (get_note_type): Add NT_PRXFPREGS.
763 * strings.c (main): Correct handling of numeric argument.
767 * dlltool.c (mtable): mcore how_jtab_roff is 4 bytes into the
772 * dlltool.c (mtable): Stop compile time warnings about missing
774 (yyerror): Stop compile time warnings about unused paramater.
775 (INIT_SEC_DATA): New macro: initialise an entry in the secdata
777 (secdata): Stop ccompile time warnings about uninitialised
779 (dtab): Stop compile time warnings about unused parameter.
780 (long_options): Stop compile time warning about missing
785 * readelf.c (print_vma): Support native 64bit ELF systems.
789 * dlltool.c (mtable): Add epoc-arm specific entry.
790 Make default arm entry pass -mpacs-26 to assembler.
791 (flush_page): Do not mangle null entries.
795 * readelf.c: Fix compile time warnings. Support more than 999
800 * readelf.c (enum print_mode): New type.
801 (print_vma): New function.
802 (dump_relocations): Use print_vma to display bfd_vma values.
803 (process_file_header): Use print_vma to display bfd_vma values.
804 (process_program_headers): Use print_vma to display bfd_vma values.
805 (process_section_headers): Use print_vma to display bfd_vma values.
806 (dynamic_segment_parisc_val): Use print_vma to display bfd_vma values.
807 (process_dynamic_segment): Use print_vma to display bfd_vma values.
808 (process_symbol_table): Use print_vma to display bfd_vma values.
809 (process_mips_specific): Use print_vma to display bfd_vma values.
813 * readelf.c (process_note): Change arg from Elf_External_Note
814 to Elf32_Internal_Note, which also turns the function body
815 into little more than a call to printf.
816 (process_corefile_note_segment): Substantially rewritten
817 to properly handle case where target and host are different
818 endianness, handle note sections with padding, and add some
819 cruft to handle notes with unterminated name data.
823 * objcopy.c (copy_usage): Reformat.
824 (strip_usage): Reformat.
828 * objdump.c (usage): Overhaul output: One line per switch.
829 Textual description of each switch. Distinguish between
830 optional switches and required switches.
831 (long_options): Add 'g', 'G' and 'z' short options.
832 (main): Distinguish between optional switches and required
835 * binutils.texi: Add -g -G and -z short options for
836 --debugging, --stabs and --disassemble-zeroes.
840 * dlltool.c (flush_page): Clip short values to prevent warnings
842 Change default mcore machine name to 'mcore-le' and rename
843 big-endian version to 'mcore-be'.
847 * objdump.c (display_bfd): Break into two functions. The
848 actual dumping code moves to dump_bfd. If bfd is not
849 unambiguously recognized as a bfd_object, attempt to dump
851 (dump_bfd): New function.
855 * dlltool.c (assemble_file): Remove spurious test of exp_name.
859 * dlltool.c (struct mac): Add new field 'how_default_as_switches'.
860 (mtable): Initialise new field. Some machines have a non empty
861 string for this field.
862 (HOW_BFD_TARGET): Undefine and replace with...
863 (HOW_BFD_READ_TARGET): New macro: bfd target to use when opening a
864 file for reading. This is set to 0 so that any recognisable bfd
866 (HOW_BFD_WRITE_TARGET): New macro: bfd target to use when opening
867 a file for writing. This is set to the target machine type.
868 (ASM_SWITCHES): New macro: default switches to use when assembling
870 (assemble_file): New function: Assemble a source file into a
871 destination object file.
872 (gen_exp_file): Use assemble_file to create the exp file.
873 (make_one_lib_file): Use assemble_file to create the lib file.
874 Open output file use HOW_BFD_WRITE_TARGET and input files using
876 (make_head): Use assemble_file to create the head file.
877 (make_tail): Use assemble_file to create the tail file.
878 (gen_lib_file): Open output file use HOW_BFD_WRITE_TARGET.
882 * ar.c (normalize): Fix full_pathname code.
886 * binutils.texi: Some rewording and clarifications.
890 * readelf.c (dynamic_segment_parisc_val): Print 0 for DLD_FLAGS if
892 (process_symbol_table): Don't print histogram if hash table is empty.
896 * readelf.c (get_parisc_dynamic_type): Handle DT_HP_GST_* values.
900 * readelf.c (get_symbol_type): Add support for HPUX and PARISC
901 specific symbol types.
903 * readelf.c: Add HPUX and PARISC extensions to dynamic and program
904 header table printing.
906 * readelf.c (get_machine_flags): Add handling of PARISC.
910 * dlltool.c (scan_drectve_symbols): Handle type tags in exported
912 (scan_filtered_symbols): Likewise.
916 * resrc.c (write_rc_rcdata): Fix local variable shadowing
917 problem. If RCDATA_BUFFER data can be read as strings, modify
918 code to print the strings as comments.
919 * resres.c: Add casts to avoid warnings.
920 (write_res_data, read_res_data): Don't put the program name in the
921 error message; fatal already puts it there.
925 * configure.in (Canonicalization of target names): Remove adding
926 ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14
927 generates $ac_config_sub with a ${CONFIG_SHELL} already.
928 * configure: Regenerate.
932 * ar.c (main): Clear output_file if we don't change the archive.
933 (delete_members, replace_members): Likewise.
937 * objdump.c (dump_headers): If wide_output, print Flags header.
939 * objdump.c (dump_section_header): Print any comdat information.
941 * objcopy.c (parse_flags): Handle "noload", "debug", and "share".
942 * binutils.texi, objcopy.1: Document new flags.
944 * ar.c (counted_name_mode): New static variable.
945 (counted_name_counter): New static variable.
946 (map_over_members): Handle counted mode.
947 (usage): Mention N modifier.
948 (main): Handle N modifier.
949 (delete_members): Handle counted mode.
950 * binutils.texi, ar.1: Document N modifier.
952 * ar.c (print_contents): Change printing of member name for
955 * ar.c (output_filename): Make const.
956 (open_inarch): If creating a new empty archive, set
961 * ar.c (full_pathname): New static variable.
962 (map_over_members): Call normalize on command line parameter.
963 (usage): Mention P modifier.
964 (normalize): If full_pathname is true, don't do anything.
965 (main): Accept P modifier.
966 (delete_members): Call normalize on command line parameter.
967 * binutils.texi, ar.1: Document P modifier.
971 * binutils.texi: Add info dir entries for all programs described
972 here. Fix arguments of @var to not contain punctuation.
976 * nm.c (print_symbol_info_bsd): Check for 'w' as well as 'U'.
977 (print_symbol_info_sysv): Likewise.
978 (print_symbol_info_posix): Likewise.
982 * readelf.c: Include "elf/pj.h".
983 (dump_relocations): Handle EM_PJ.
984 (get_machine_name): Likewise.
985 (get_machine_flags): Likewise.
989 * readelf.c (get_note_type): New function: Decode the e_type
991 (process_note): New function: Display the contents of a core note.
992 (process_corefile_note_segment): New function.
993 (process_corefile_note_segments): New function.
994 (process_corefile_contents): New function.
995 (process_file): Add call to process_corefile_contents.
996 (parse_args): Add parsing of -n/--notes command line switch.
997 (usage): Document new command line switch.
999 * binutils.texi: Documemnt new command line switch to readelf.
1003 * binutils.texi (Bug Reporting): Clarify that large files should
1004 not be sent to bug-gnu-utils.
1008 * readelf.c (process_extended_line_op): New parameter pointer_size,
1009 read the address according to pointer_size.
1010 (debug_line_pointer_size): New global to indicate the
1011 size of address in .debug_line section.
1012 (debug_displays, prescan_debug_info): Prescan the .debug_info section
1013 to record the size of address in `debug_line_pointer_size'.
1014 (process_section_contents): Before dumping any section, execute
1015 the pre-scan operation defined for some debug sections.
1019 * readelf.c (display_debug_lines): Use i-1 not i in standard_opcodes
1021 (display_debug_aranges): New local excess. Use for calculating padding
1022 and add that into ranges. Break from loop only if length is also 0.
1026 * readelf.c (display_debug_lines, case DW_LNS_const_add_pc): Multiply
1027 adv by info.li_min_insn_length.
1031 * readelf.c (get_sparc64_dynamic_type): New function.
1032 (get_dynamic_type): Use it.
1036 * readelf.c (display_debug_lines, case default): Change second line
1037 setting adv to use = not +=.
1041 * dlltool.c: Added more examples to the comment at the start.
1045 * dlltool.c (make_head): Only emit interworking directive if
1050 * readelf.c (process_abbrev_section): Handle standard-conforming
1051 single zero at the end of the section.
1055 * objdump.c (exit_status): New static variable.
1056 (nonfatal): New static function.
1057 (disassemble_data): Set exit_status on error.
1058 (read_section_stabs): Likewise.
1059 (display_bfd): Likewise. Call nonfatal rather than bfd_nonfatal.
1060 (display_file): Call nonfatal rather than bfd_nonfatal.
1061 (display_target_list, display_info_table): Likewise.
1062 (main): Return exit_status rather than 0.
1066 * objdump.c (dump_section_header): Update for renaming of
1067 SEC_SHORT to SEC_SMALL_DATA. Print SEC_SHARED flag.
1070 * binutils.texi: Document cxxfilt as MS-DOS name for c++filt.
1072 * configure.in: Define and substitute DEMANGLER_NAME.
1073 * Makefile.am (DEMANGLER_PROG): Set to cxxfilt.
1074 (man_MANS): Use DEMANGLER_NAME rather than DEMANGLER_PROG.
1075 (bin_PROGRAMS): Remove $(DEMANGLER_PROG).
1076 (noinst_PROGRAMS): Add $(DEMANGLER_PROG).
1077 (cxxfilt_SOURCES): Rename from c__filt_SOURCES.
1078 (cxxfilt_LDADD): Rename from c__filt_LDADD.
1079 ($(DEMANGLER_NAME).1): Rename from $(DEMANGLER_PROG).1. Use
1080 DEMANGLER_NAME rather than DEMANGLER_PROG in substitution.
1081 (MOSTLYCLEANFILES): Use DEMANGLER_NAME rather than
1083 (install-exec-local): When installing noinst_PROGRAMS, change
1084 cxxfilt to $(DEMANGLER_NAME).
1085 * configure, Makefile.in: Rebuild.
1087 * Makefile.am: Rename .dep* files to DEP*. Change DEP variable to
1089 * Makefile.in: Rebuild.
1093 * Makefile.am (YACC): If bison is not in the source tree, use
1094 @YACC@ rather than bison -y.
1095 (LEX): If flex is not in the source tree, use @LEX@ rather than
1097 * configure.in: Build dlltool for i[3-6]86-*-interix.
1098 * Makefile.in, configure: Rebuild.
1103 * configure.bat: Remove; obsolete.
1107 * readelf.c (get_machine_flags): Print EF_SPARC_SUN_US3.
1111 * configure.in: Bump version number to 2.9.5.
1112 * configure: Rebuild.
1116 * objdump.c (dump_section_header): Print SEC_SHORT.
1120 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
1121 as appropriate. Add variable initializations. Add casts.
1122 * objdump.c (disassemble_bytes): Change j to bfd_vma.
1123 * readelf.c (process_syminfo): Change i to unsigned int.
1124 (display_debug_info): Change abbrev_number to unsigned long.
1125 (process_mips_specific): Change fcnt to size_t.
1129 * readelf.c: Only support decoding 64bit ELF files if the compiler
1130 supports a 64 bit data type.
1131 Add -I equivalent for --histogram.
1132 Add -A command-line option to display architecture specific information.
1136 * readelf.c (guess_is_rela): Sparcv9 and v8plus use rela.
1137 (dump_relocations): Use ELF64_R_TYPE_ID for Sparc, for R_SPARC_OLO10
1138 print the secondary addend.
1139 (get_machine_flags): Print Sparc machine flags.
1140 (get_symbol_type): Print STT_REGISTER.
1144 * stabs.c (parse_stab_type): Fix handling of template names with
1145 template parameters containing `::'.
1146 (stab_demangle_type): Handle a qualified name in a pointer to
1151 * Makefile.am (dlltool_SOURCES): Add dyn-string.c.
1152 * Makefile.in: Rebuild.
1156 * configure.in (HAVE_EXECUTABLE_SUFFIX): Define.
1157 * dlltool.c (look_for_prog): Use HAVE_EXECUTABLE_SUFFIX.
1158 * dllwrap.c (look_for_prog): Likewise.
1159 * resrc.c (look_for_default): Likewise.
1160 * configure, config.in: Rebuild.
1165 * configure.in: Define EXECUTABLE_SUFFIX.
1166 * dlltool.c: Include "dyn-string.h". Include <stdarg.h> based on
1167 ANSI_PROTOTYPES, not __STDC__.
1169 (gen_exp_file): Change uses of outfile to use alloca.
1170 (make_one_lib_file, make_head, make_tail): Likewise.
1171 (gen_lib_file): Likewise.
1172 (look_for_prog): New static function.
1173 (deduce_name): Rewrite to use look_for_prog.
1174 (mcore_elf_gen_out_file): Use dyn_string_t rather than outfile.
1175 * dllwrap.c: Don't include <stdio.h>, <errno.h>, <string.h>,
1176 <stdlib.h>, or <unistd.h>. Include <sys/stat.h> and either
1177 <stdarg.h> or <varargs.h>.
1178 (driver_name): Initialize to NULL, not "gcc".
1179 (dlltool_name): Initialize to NULL, not "dlltool".
1180 (display, inform, look_for_prog, deduce_name): New static
1182 (usage): Mention -mno-cygwin.
1183 (OPTION_MNO_CYGWIN): Define.
1184 (main): Handle -mno-cygwin. Deduce driver_name and dlltool_name.
1185 * resrc.c (look_for_default): Make static. Remove unused local
1186 path. Check using EXECUTABLE_SUFFIX.
1187 (read_rc_file): Allocate enough space to hold EXECUTABLE_SUFFIX.
1188 * Makefile.am: Rebuild dependencies.
1189 (dllwrap_LDADD): Add $(INTLLIBS).
1190 * configure, Makefile.in, config.in: Rebuild.
1194 * readelf.c (dump_relocations): Use elf_hppa_reloc_type instead of
1195 elf32_hppa_reloc_type.
1199 * dlltool.c (mcore_elf_gen_out_file): Link object files with the
1200 .exp file, not the .lib file.
1204 * deflex.l: Accept single-character symbol names.
1208 * readelf.c (get_symbol_type): Detect ARM symbols typed as Thumb
1213 * objdump.c (disassembler_options): New variable.
1214 (usage): Document new -M/--disassembler-options option.
1215 (long_options): Add --disassembler-options.
1216 (disassemble_data): Initialise disassembler_options field of
1217 disassembler_info structure.
1218 (main): Add parsing of -M option.
1220 * binutils.texi: Document new command line switch to objdump.
1222 * NEWS: Describe new command line switch to objdump.
1227 * binutils.texi: Fix typos.
1231 * objdump.c (disassemble_bytes): If the disassembler returns an
1232 error, print out anything it may have printed to the buffer. From
1235 * defparse.y (explist): Remove separate expline to eliminate
1236 shift/reduce conflict.
1239 * defparse.y: Add tokens NONSHARED, SINGLE, MULTIPLE,
1240 INITINSTANCE, INITGLOBAL, TERMINSTANCE, and TERMGLOBAL.
1241 (command): Add option_list after LIBRARY.
1242 (attr): Accept and ignore NONSHARED, SINGLE, and MULTIPLE.
1243 (option_list, option): New nonterminals.
1244 * deflex.l: Recognize NONSHARED, SINGLE, MULTIPLE, INITINSTANCE,
1245 INITGLOBAL, TERMINSTANCE, and TERMGLOBAL.
1249 * ar.c (O_BINARY): Define as 0 if not defined.
1250 (ranlib_touch): Open file with O_BINARY.
1252 * rename.c (O_BINARY): Define as 0 if not defined.
1253 (simple_copy): Open files with O_BINARY.
1256 * objcopy.c (struct section_list): Add copy field.
1257 (sections_copied): New static variable.
1258 (copy_options): Add "only-section".
1259 (copy_usage): Mention -j and --only-section.
1260 (find_section_list): Initialize copy field.
1261 (is_strip_section): Check for copying sections.
1262 (copy_object): Check sections_copied when calling filter_symbols.
1263 (setup_section): Check for copying sections.
1264 (copy_section): Likewise.
1265 (copy_main): Handle -j/--only-section.
1266 * binutils.texi, objcopy.1: Document -j/--only-section.
1268 * configure.in: If frexp is not available, check in -lm.
1269 * configure: Rebuild.
1271 * readelf.c (get_elf_class): Use correct printf format for type.
1272 (get_data_encoding): Likewise.
1273 (get_osabi_name): Likewise.
1274 (process_file_header): Don't pass an extra argument to printf.
1275 (process_dynamic_segment): Cast dynamic_size to long before
1277 (decode_location_expression): Cast byte_get to long before
1282 * readelf.c (dump_section): Cast values from byte_get to
1283 [unsigned] long for printing, in case it is wider than long.
1284 (display_block): Likewise.
1285 (read_and_display_attr): Likewise.
1286 (decode_location_expression): Likewise. Don't depend on
1291 * windres.c (usage): Fix typo.
1295 * readelf.c: Use 64bit wide fields in internal strcutures even if
1296 targetting a 32bit architecture.
1297 (dump_relocations): Take a new parameter - the number of symbols
1298 in the symbol table.
1302 * readelf.c: Add support for 64bit ELF files.
1306 * dlltool.c (mcore_elf_gen_out_file): Use constants for temporary
1311 * dlltool.c (gen_exp_file): Revert 19990411 change.
1315 * readelf.c (process_relocs): Determine type of reloc from
1316 DT_PLTREL and from section type.
1320 * readelf.c (get_elf_class): Display unknown class number.
1321 (get_data_encoding): Display unknown encoding number.
1322 (get_osabi_name): Display unknown ABI number.
1323 (process_file_header): Display unknown version number.
1327 * readelf.c (dump_relocations): Fix typo.
1331 * readelf.c (dump_relocations): Add extra parameter: is_rela to
1332 specify the kind of relocations to be dumped. Call guess_is_rela
1333 if this parameter has a value of UNKNOWN.
1334 (guess_is_rela): New function: Guess the kind of reloc being used
1335 baced on the machine number.
1336 (process_relocs): Determine type of reloc before calling
1341 * readelf.c: Include "elf/i960.h".
1342 (dump_relocations): Handle EM_960.
1346 * objcopy.c (copy_archive): Preserve dates of archive members if
1349 * readelf.c (dump_relocations): Always print the addend on RELA
1350 systems even if there is no symbol.
1351 (process_program_headers): Reset dynamic_size before looping
1352 through the program headers.
1353 (process_version_sections): Cast sh_offset to unsigned long for
1354 printing in case bfd_vma is wider.
1355 (process_symbol_table): Use get_symbol_index_type when printing
1360 * windres.c: add verbose option
1361 (main): process verbose option
1362 * resrc.c (look_for_default): new. Look for the default
1363 preprocessor in a given location.
1364 (read_rc_file): for foo/bar-windres, look for foo/bar-gcc,
1365 foo/gcc (in case of foo/windres), and then gcc (the old default).
1369 * dlltool.c (deduce_name): New function: Deduce name of program to
1371 (mcore_elf_out_file): New variable: Name of mcore-elf output file.
1372 (mcore_elf_linker): New variable: Name of linker to use.
1373 (mcore_elf_linker_flags): New variable: Linker flags to pass.
1374 (scan_obj_file): Cache filenames if necessary.
1375 (usage): Document new command line options.
1376 (main): Support new command line options: -M (generate an
1377 mcore-elf output file) -L (name of linker to use) -F (flags to
1379 (mcore_elf_cache_filename): Store a filename in a cache.
1380 (mcore_elf_gen_out_file): New function: Generate an output file
1381 per the mcore-elf spec.
1385 * configure.in (BUILD_MISC): Build dlltool for mcore
1386 * configure: Regenerate.
1387 * dlltool.c: Update example in comment.
1388 (DLLTOOL_MCORE): Define.
1389 (DLLTOOL_MCORE_ELF): Define.
1390 (DRECTVE_SECTION_NAME): Define.
1391 (mcore_be_jtab, mcore_le_jtab): Binary for performing an mcore
1393 (mtable): Add entries for mcore variants.
1394 (rvaafter, rvabefore, asm_prefix): Add mcore suppport.
1395 (scan_drectve_symbols): Use DRECTVE_SECTION_NAME.
1396 (make_head, make_tail): Cope if file cannot be created.
1397 (usage): Improve layout.
1401 * rclex.l: add code to suppress certain output from cpp, replace
1402 all returns with MAYBE_RETURN
1403 (MAYBE_RETURN): new, implement the suppression by returning
1404 IGNORED_TOKEN as needed.
1405 (cpp_line): remember which file we're in, mark data from included
1406 *.h files for suppression.
1407 * rcparse.y (input): allow IGNORED_TOKEN outside of known constructs
1411 * windres.c (quot): Quote shell metacharacters in a string
1412 (main): quote parameters to cpp that might have metacharacters in
1413 them. Allow -D as an alias for --define to allow for sharing make
1416 * objdump.c (dump_reloc_set): don't core if howto->name is NULL
1418 * Makefile.am: Give rescoff.c a cpu-specific -D so it can set
1420 * Makefile.in: ditto
1421 * rescoff.c (write_coff_file): Set the correct BFD
1425 * rename.c (smart_rename): Fix test of whether file exists.
1429 * objdump.c (disassemble_data): Set display_endian based on target
1434 * dlltool.c (interwork): Remove.
1435 (arm_interwork_jtab): Use bx insn.
1436 (thumb_jtab): Likewise.
1437 (MARM_INTERWORK): New machine type.
1438 (rvaafter): Handle it.
1439 (rvabefore) Likewise.
1440 (asm_prefix): Likewise.
1441 (gen_exp_type): Check machine type instead of
1443 (make_one_lib_file): Likewise.
1444 (make_head): Likewise.
1445 (make_tail): Likewise.
1446 (usage): Update machine types.
1447 (main): Remove -interwork support.
1451 * readelf.c (get_machine_flags): Check for EF_CPU32.
1452 (get_data_encoding): Fix typo.
1456 * aclocal.m4, configure: Updated for new version of libtool.
1460 * stabs.c (parse_stab_range_type): Correct parenthesization in
1463 * readelf.c (get_section_type_name): Use correct types in printf
1465 (process_relocs): Likewise.
1466 (process_dynamic_segment): Likewise.
1467 (process_symbol_table): Likewise.
1468 (process_mips_specific): Likewise.
1472 * dlltool.c (make_one_lib_file): Mark thumb functions as
1477 * bucomm.h (environ): Declare it, if needed.
1478 (alloca) [C_ALLOCA]: Don't use gcc's builtin or <alloca.h>.
1479 * configure.in (environ): Detect declaration.
1480 * nm.c (main): Don't declare environ.
1481 * configure, config.in: Rebuild.
1483 * dlltool.c (gen_exp_file): Pad out the .reloc section to a
1484 32-byte boundary with dummy relocations, to make the BeOS loader
1489 * binutils.texi (c++filt): Updated for -j/--java, and hp/edg
1494 * readelf.c: Add ability to decode new constants found in April 25
1495 1998 Draft of System V ABI spec.
1499 * bucomm.h (LC_MESSAGES): Never define.
1500 * addr2line.c (main): Don't pass LC_MESSAGES to setlocale if the
1501 system does not define it.
1502 * ar.c (main): Likewise.
1503 * coffdump.c (main): Likewise.
1504 * dlltool.c (main): Likewise.
1505 * nlmconv.c (main): Likewise.
1506 * nm.c (main): Likewise.
1507 * objcopy.c (main): Likewise.
1508 * objdump.c (main): Likewise.
1509 * size.c (main): Likewise.
1510 * srconv.c (main): Likewise.
1511 * strings.c (main): Likewise.
1512 * sysdump.c (main): Likewise.
1513 * windres.c (main): Likewise.
1514 * readelf.c (main): Call locale setting functions.
1518 * readelf.c (decode_location_expression): Fix DW_OP_const8{s|u}
1523 * rename.c: New file, copied out of objcopy.c with a few changes.
1524 * bucomm.h (set_times, smart_rename): Declare.
1525 * ar.c: Don't include <utime.h>.
1526 (extract_file): Call set_times rather than utime.
1527 (write_archive): Call smart_rename rather than unlink and rename.
1528 * objcopy.c: Don't include <utime.h>.
1529 (simple_copy, smart_rename, set_times): Move to rename.c.
1530 (strip_main): Update smart_rename call for new parameter.
1531 (copy_main): Likewise.
1532 * Makefile.am: Rebuild dependencies.
1533 (CFILES): Add rename.c.
1534 (objcopy_SOURCES, strip_new_SOURCES): Add rename.c.
1535 (ar_SOURCES, ranlib_SOURCES): Add rename.c.
1536 * Makefile.in: Rebuild.
1538 * Makefile.am: Rebuild dependencies.
1539 (EXTRA_PROGRAMS): Remove backslash which troubles current version
1541 * Makefile.in: Rebuild.
1543 * dllwrap.c (main): Expect correct type in format string.
1544 * resres.c: Include "bfd.h", "bucomm.h", "libiberty.h", and
1545 <time.h>. Don't include <stdio.h> and <errno.h>.
1546 (write_res_file): Remove unused locals e and i.
1547 (read_resource_entry): Remove unused locals rtype and n.
1548 (read_unistring): Remove unused local n.
1552 * arparse.y: Declare yylex.
1553 * objdump.c (disassemble_bytes): Initialize bytes. Add comment
1554 for incorrect use of bytes.
1555 * readelf.c: Change many formats to avoid warnings.
1559 * readelf.c (reset_state_machine): New function. Resets the
1560 registers of the source line number state machine.
1561 (process_extended_line_op): Use state machine.
1562 (display_debug_lines): Use state machine. Handle multiple line
1563 number blocks within the same section.
1567 * readelf.c (process_extended_line_op): end_sequence also resets
1569 (display_debug_lines): advance_line takes a signed operand.
1570 (read_and_display_attr): Print refs as <%x>, addresses as %#x,
1571 others as %d. Handle other location expression attributes.
1572 (display_debug_info): Handle nesting. Always print the offset.
1576 * objcopy.c (filter_symbols): When checking whether to keep a
1577 symbol, check the BFD section symbol for a symbol with
1578 BSF_SECTION_SYM set.
1582 * readelf.c (process_dynamic_segment): Print new Solaris dynamic
1583 section entries. Correct printing of DT_POSFLAG_1 and DT_FLAGS_1.
1587 * readelf.c (request_dump): New function.
1588 Removed arbitary limit on the number of sections that can be
1593 * dlltool.c (make_one_lib_file): Use %05d to output the stub name so
1594 order in the import library is preserved.
1598 * readelf.c: Fix compile time warings.
1602 * resbin.c (res_to_bin_versioninfo): Instead of entering a value
1603 length of zero in a version info string, enter the appropriate
1608 * configure.in: Require autoconf 2.13. Change AM_PROG_INSTALL to
1609 AC_PROG_INSTALL. Add comments for AC_DEFINE calls.
1610 * acconfig.h: Remove.
1611 * aclocal.m4: Rebuild.
1612 * configure: Rebuild.
1613 * Makefile.in: Rebuild.
1614 * config.in: Rebuild.
1618 * readelf.c (read_and_display_attr): Add display of basic type
1620 (display_debug_aranges): New function: Display the contents of a
1621 .debug_aranges section.
1622 (display_debug_info): Dump tags found after compunit entry.
1624 * binutils.texi: Fixed bug in readelf documentation.
1628 * readelf.c (dump_relocations): Handle EM_ARM as REL.
1632 * readelf.c (process_symbol_table): Do not produce a histogram of
1633 bucket chains if none were found.
1637 * version.c: Add 1999 copyright.
1639 * binutils.texi (readelf): Document new command line options
1640 --debug-dump and --histogram.
1642 * readelf.c: Add ability to display contents of some or all of the
1643 Dwarf2 debug sections. {Work only partially completed}.
1644 (display_debug_section): New function.
1645 (display_debug_info): New function.
1646 (display_debug_not_supported): New function.
1647 (display_debug_line): New function.
1648 (display_debug_abbrev): New function.
1649 (process_abbrev_section): New function.
1650 (read_leb128): New function.
1651 (process_extended_line_op): New function.
1652 (get_TAG_name): New function.
1653 (get_AT_name): New function.
1654 (get_FORM_name): New function.
1655 (free_abbrevs): New function.
1656 (add_abbrev): New function.
1657 (add_abbrev_attr): New function.
1658 (read_and_display_attr): New function.
1659 (display_block): New function.
1663 * coffdump.c (xcalloc): Remove, in libiberty now.
1664 * srconv.c (xcalloc): Likewise.
1665 * sysdump.c (xcalloc): Likewise.
1669 * readelf.c (process_section_headers): Omit trailing space at end
1670 of section header contents line.
1674 * aclocal.m4: Regenerate.
1678 * dllwrap.c: Include bfd.h and bucomm.h. Move getopt.h include
1679 after libiberty.h include.
1683 * objdump.1: Fix typo (-d to -D). From Nokubi Hirotaka
1688 * objdump.c (SFILE): Add size field.
1689 (objdump_sprintf): Merge both versions into one. Increase buffer
1690 size as needed to avoid overflow.
1691 (disassemble_bytes): Change buf from 1000 bytes to 50. Change
1692 initialization and use of sfile to match changes to
1695 * strip.1: Fix typo (-V to -v). From Issei Hirayama
1700 * readelf.c (process_dynamic_segment): Improve output format for
1701 various DT_* values.
1705 * readelf.c (process_mips_specific): Print .conflict section
1708 * readelf.c (process_mips_specific): Print l_flags in liblist in
1713 * ar.c (extract_file): Add some paranoia checks for negatively
1718 * stabs.c (DIR_SEPARATOR): Define as '\\' if WIN32 is defined.
1722 * Makefile.in: Regenerate.
1726 * po/binutils.pot: Regenerate.
1730 * Makefile.am: Regernated dependencies.
1731 * aclocal.m4: Regenerated.
1732 * configure: Regenerated.
1736 * debug.c (debug_name_type): Correct return type from false to
1741 * objdump.c (disassemble_data): Skip over relocs below start
1746 * Makefile.am: Add dependency of readelf.c on elf/fr30.h
1747 * Makefile.in: Regenerate.
1751 * readelf.c: Add support for the FR30.
1755 * configure.in: detect cygwin* instead of cygwin32*
1756 * configure: regenerate
1760 * dllwrap.c: change all references to cygwin32_ to cygwin_,
1761 change Cygwin target def to CYGWIN.
1765 * objdump.c (disassemble_data): Replace 'unsigned long' with
1770 * objdump.c (disassemble_bytes): Applied this patch from Philip
1772 avoid problems when disassembling code at high-bit-set addresses.
1776 * dllwrap.c (strhash): New function.
1777 (main): Use it to supply image base if not supplied by user.
1778 (program_version): Up to 0.2.4.
1782 * dlltool.c (add_stdcall_alias): New global.
1783 (long_options): Add --add-stdcall-alias option.
1785 (scan_drectve_symbols): Add alias if --add-stdcall-alias is
1787 (scan_filtered_symbols): Likewise.
1788 (gen_def_file): Output alias for stdcall syms if appropriate.
1790 * binutils.texi (dlltool): Document --add-stdcall-alias option.
1792 * dllwrap.c (long_options): Add --add-stdcall-alias option.
1795 * defparse.y (opt_name): Allow "." in name.
1796 * dlltool.c (def_name): Set dll_name from NAME entry in def file.
1797 (def_library): Set dll_name from LIBRARY entry in def file.
1801 * dllwrap.c (long_options): --implib synonym for --output-lib.
1802 (main): Pass --export-all to dlltool only if specified.
1803 (program_version): Up to 0.2.3.
1807 * dllwrap.c (mybasename): New function.
1808 (main): Run dlltool to create export definition file and import
1809 library file if necessary.
1810 Change exp_file_name so that it's based on the dll name.
1814 * dlltool.c (scan_all_symbols): Fix patch error.
1818 * nm.c (display_rel_file): fix "no symbols" messages.
1819 * objdump.c (slurp_symtab): ditto.
1820 * po/POTFILES.in, po/binutils.pot: rebuilt
1824 * readelf.c (dump_relocations): Rename field from Value to Info to
1825 match name of field in ELF structures.
1829 * configure.in: call AC_EXEEXT instead of AM_EXEEXT and
1831 * aclocal.m4: remove local AM_EXEEXT/AM_CYGWIN32 macros.
1832 * configure: regenerate
1837 * dlltool.c (scan_all_symbols): Don't re-export symbols exported
1842 * Makefile.am (BUILD_DLLWRAP): Add.
1843 (BUILD_DLLWRAP, DLLWRAP_PROG): Add.
1844 (bin_PROGRAMS): Add dllwrap.
1845 * Makefile.in: regenerate with automake
1848 * dllwrap.c: New file from dllhelpers v0.2.1.
1849 (print_version): New function.
1850 (long_options): Add --version.
1852 * dyn-string.h, dyn-string.c: New files from egcs-1.1/gcc.
1853 * configure.in (BUILD_DLLWRAP): Add.
1854 * configure: Regenerate.
1858 * Makefile.am (windres_SOURCES): Add resres.c.
1859 (windres_OBJECTS): Add resres.o.
1860 * Makefile.in: regenerate with automake
1863 * resres.c: New file. Implementation of read_res_file and
1864 write_res_file functions for windres.
1865 * rcparse.y: Handle CONTROL's with named classes.
1866 * resbin.c: Bug in res_to_bin_dialog and bin_to_res_dialog
1867 when dialog is extended: The version and signature fields should
1868 be reversed (despite what the docs say). Id is 32 bits long in
1870 * resrc.c (write_rc_dialog): properly print controls with named
1872 * windres.c (read_res_file, write_res_file): Remove stubs.
1873 * resres.c (write_res): Rename RT_ACCELERATORS to RT_ACCELERATOR.
1878 * objcopy.1: Fix typo in --remove-leading-char docs.
1879 * objdump.1: Fix formatting in --stabs docs.
1883 * rcparse.y (memflags_move): Correct recursion.
1887 * readelf.c (process_symbol_table): Print in histogram how many
1888 symbols are covered by the current chain length.
1892 * readelf.c (process_section_contents): Do not try to dump empty
1897 * dlltool.c (scan_all_symbols): Don't re-export symbols exported
1902 * readelf.c (process_dynamic_segment): Print DT_* value only if
1904 (do_histogram): New variable.
1905 (options): New long option histogram. Set do_histogram if this
1907 (usage): Document --histogram.
1908 (parse_args): Handle 0 return value from getopt_long. Enable
1909 do_histogram for -a.
1910 (process_symbol_table): Read hash table also if only do_histogram.
1911 Add code to print hash table histogram.
1915 * readelf.c (process_dynamic_segment): Read syminfo section if
1917 (process_syminfo): New function. Print syminfo information.
1918 (process_file): Call process_syminfo and free syminfo data at the end.
1922 * dlltool.c (usage): Add file parameter. Change all callers.
1923 (main): Don't treat '?' as a special case in getopt return.
1925 * binutils.texi (dlltool): Document new options. Add some uses of
1930 * dlltool.c (gen_def_file): Plug memory leak. Don't print
1931 demangled name if it is NULL.
1933 Support for exporting all symbols to an output export def file:
1934 * dlltool.c ({export_all_symbols, no_default_excludes,
1935 no_default_excludes, excludes}): New file static variables.
1936 (struct string_list): Type to hold list of symbols to exclude.
1937 (scan_drectve_symbols): Renamed from scan_open_obj_file.
1938 (scan_filtered_symbols): New static function.
1939 (add_excludes): New static function.
1940 (match_exclude): New static function.
1941 (set_default_excludes): New static function.
1942 (filter_symbols): New static function.
1943 (scan_all_symbols): New static function.
1944 (scan_open_obj_file): New static function.
1945 (usage): Document new options.
1946 (long_options): Add new options.
1947 (main): Handle new options.
1951 * readelf.c (process_program_headers): Print p_offset value with
1953 (dynamic_segment_mips_val): Add support for DT_MIPS_FLAGS,
1954 DT_MIPS_IVERSION, and DT_MIPS_TIME_STAMP.
1955 (process_mips_specific): Also print seconds of time stamp.
1959 * readelf.c (dump_relocations): EM_ARM uses rela relocs.
1963 * readelf.c (get_dynamic_type): Don't used gettext on the names.
1964 Add new DT_* values from Solaris. Don't print nuemric value in
1965 case of an unknown entry.
1966 (process_dynamic_segment): Handle new DT_* entries. Print numeric
1967 values in decimal, not hex.
1971 * readelf.c (get_dynamic_type): Remove empty default from switch
1976 * Makefile.am (install-exec-local): Don't remove the file before
1977 checking whether $(bindir) == $(tooldir)/bin. From Maciej
1979 * Makefile.in: Rebuild.
1983 * objcopy.c: Removed spurious inclusion of elf/internal.h and
1988 * readelf.c: Consistantly use elf_ prefix for *_reloc_type
1993 * readelf.c (dump_relocations): Add dumps of HPPA and ARC
1996 (process_relocs): Do not abort if no string table can be found.
2000 * readelf.c: Remove definition of functions to return relocation
2001 symbol strings. They now get implicitly defined when include the
2002 system specific ELF header.
2006 * readelf.c: Before include system specific ELF header define
2007 START_RELOC_NUMBERS, RELOC_NUMBER, and END_RELOC_NUMBERS. For now
2008 used for ppc, mips, and mn10300.
2012 * readelf.c (dump_relocations): Display number of unrecognised
2017 * readelf.c: Use symbolic names of relocation entries for the various
2018 architectures. Correct more layout details.
2019 Print names of MIPS specific section types. Print Alpha, ARM, and
2020 MIPS relocation type names.
2024 * objcopy.c (filter_symbols): Add code for strip all symbols case.
2025 (copy_objects): Strip all case is now processed also through
2026 filter_symbols. No marking symbols used in relocations when strip
2028 (copy_section): When strip all symbols case, remove relocations
2029 which are not in keep strip specific list.
2030 (strip_main): Remove guard `strip_specific_list == NULL' for
2031 setting up strip all symbols by default.
2035 * addr2line.c (find_address_in_section): Only consider a section
2036 if the pc value is completely contained within it.
2037 (translate_addresses): Don't crash if functionname or filename are
2042 * readelf.c (process_symbol_table): Fix little alignment problem
2043 in printed table header.
2047 * readelf.c: Correct reading of .dynamic section.
2048 (dynamic_section): Now a global variable.
2049 (process_mips_fpe_exception, process_mips_specific,
2050 process_arch_specific): New functions.
2051 (get_file_header): Call process_arch_specific.
2055 * readelf.c: Fix several versioning related bugs. Produce nicer
2057 Add support for processor specific information on MIPS.
2061 * readelf.c: Switch prototypes from unsigned short to unsigned
2067 * ieee.c (parse_ieee): Initialize info.global_vars and
2069 (parse_ieee_atn): Ignore register lifetime information reportedly
2070 emitted by MRI compiler.
2074 * Makefile.am (MAINTAINERCLEANFILES): Define.
2075 * Makefile.in: Rebuild.
2079 * readelf.c (byte_get): Use PARAMS in prototype.
2080 (error): Make it work with non-ANSI compilers.
2082 (get_ver_flags): Don't use an ANSI prototype in the definition.
2086 * objcopy.c (filter_bytes): Set size correctly if the size of the
2087 section is not an even multiple of the interleave. Based on patch
2092 * configure.com: Add vax/vms support.
2093 * makefile.vms-in: Renamed from makefile.vms. Add substitutions
2094 now done by configure.com.
2098 * stabs.c (parse_stab_range_type): Handle 4 and 8 byte signed
2099 integers with real upper bounds. Handle a lower bound one larger
2100 than the upper bound as a signed integer. Handle 8 byte signed
2102 (stab_demangle_template): Optionally return the demangled name of
2104 (stab_demangle_qualified): Treat a template name as a tagged
2106 (stab_demangle_fund_type): Likewise.
2110 * objcopy.c: Minor formatting improvements.
2111 * readelf.c: Minor output formatting improvement.
2115 * rclex.l: Add casts and change types to avoid warnings.
2116 * rcparse.y: Likewise.
2117 * resbin.c: Likewise.
2118 * rescoff.c: Likewise.
2119 * resrc.c: Likewise.
2121 * Makefile.am: Rebuild dependencies.
2122 (HFILES): Remove readelf.h.
2123 * Makefile.in: Rebuild.
2125 Based on patches from Andrew Kozin
2127 * winduni.h: New file, from windres.h.
2128 * winduni.c: New file, from windres.c.
2129 * windres.c: Move Unicode functions into winduni.c.
2130 * windres.h: Move Unicode declarations into winduni.h. Include
2132 (RT_ACCELERATOR): Rename from RT_ACCELERATORS to match Windows
2133 macro. Change all uses.
2134 (RT_PLUGPLAY, RT_VXD): Correct values.
2135 * Makefile.am (HFILES): Add windres.h.
2136 (CFILES): Add winduni.c.
2137 (windres_SOURCES): Add winduni.c.
2141 * readelf.c: Use BFD Internal and External Elf structures.
2142 * readelf.h: Removed - no longer needed.
2143 * Makefile.in: Remove readelf.c's dependency upon readelf.h.
2147 * objcopy.c (strip_main): keep_specific_list == NULL as additional
2148 condition to set up strip all symbols by default.
2149 (copy_archive): don't change archive when error in object files of
2154 * stabs.c (parse_number): Sign extend negative values correctly if
2155 bfd_vma is larger than unsigned long.
2159 * Makefile.am (install-exec-local): Don't let EXEEXT interfere
2160 with the program transform name.
2161 * Makefile.in: Rebuild.
2165 * readelf.c: Rewrite to use fopen/fread ratehr than mmap.
2167 Add --section-headers command line switch, which is an alias for
2170 Incorporate improvemnts made by Andreas Schwab
2172 formatting and version info display.
2174 * binutils.texi: Document --section-headers switch to readelf.
2178 * readelf.c: Include bfd.h and bucomm.h before system header
2180 (parse_args): Change type of c from char to int.
2184 * readelf.c (usage): Write to stdout, not stderr.
2188 * po/Make-in (all-yes): Depend on .pot file if maintainer mode
2190 ($(PACKAGE).pot): Unconditionally depend on POTFILES.
2194 * readelf.c (get_ppc_rel_type): New PowerPC support.
2195 (dump_relocations): PowerPC uses RELA relocations.
2196 (get_machine_name): Spell PowerPC correctly.
2197 (get_file_type): Change unsigned short parameter to unsigned.
2198 (get_machine_name): Ditto.
2199 (get_machine_data): Return whether big endian or little endian.
2200 (get_machine_flags): Interpret PowerPC, M32R, and MIPS flags.
2201 (process_elf_header): Print endian-ess. Convert all numeric
2202 formats to long or unsigned long. Print out machine specific flag
2204 (process_section_headers): Increase name by 3 columns and decrease
2205 type by the same so that .gcc_except_table fits in the space.
2207 * readelf.h: Include elf/ppc.h, elf/mips.h, and elf/m32r.h to get
2208 machine specific flag bits.
2212 * readelf.c: Remove extraneous #includes. Fix warnings produced
2213 by -Wall when compiling under Linux.
2215 * Makefile.am (readelf_LDADD): Add $(LIBIBERTY).
2219 * stabs.c (struct stab_handle): Add self_crossref field.
2220 (parse_stab_string): If a tag is a cross reference to itself,
2221 don't define it in the tags list.
2222 (parse_stab_type): Set info->self_crossref.
2224 * debug.c (struct debug_type_real_list): Define.
2225 (debug_get_real_type): Add list parameter. Change all callers.
2226 Check for circularity to avoid crashing when it occurs.
2230 * readelf.c: New file: Display contents of ELF format file.
2231 * readelf.h: New file: Header file for readelf.c
2232 * Makefile.am: Add rules to build readelf.
2233 * Makefile.in: Rebuilt.
2234 * binutils.texi: Document readelf.
2235 * NEWS: Mention inclusion of readelf into binutils.
2236 * po/POTFILES.in; Rebuilt.
2240 * objcopy.c (setup_section): Adjust the section size if copy_byte
2242 (copy_section): Do not call bfd_set_section_size.
2246 * objcopy.c (copy_usage): Add missing \n\ from help description.
2250 * Makefile.am (YACC): Correct bison -L option.
2251 * Makefile.in: Rebuild.
2253 * binutils.texi, objdump.1: Document -p/--private-headers.
2257 * objcopy.c: Add new command line options: --change-section-lma
2258 and --change-section-vma. Rename old command line option
2259 --adjust-section-vma to --change-section-address. Rename
2260 --adjust-vma to --change-addresses and --adjust-start to
2261 --change-start. Provide aliases to support the old versions of
2262 these command line options.
2264 Change the names of macros and enum elements to upper case to
2265 match the GNU coding standard.
2267 Replace calls to fprintf (stderr,...) with calls to fatal () or
2268 non_fatal () as appropriate.
2270 * objcopy.1: Document command line option changes.
2271 * binutils.texi: Document command line option changes.
2273 * bucomm.h: New exported funtion from bucomm.c: non_fatal().
2274 * bucomm.c (non_fatal): New exported function. Just like fatal()
2275 except that it returns rather than calling xexit().
2277 (bfd_check_format_matches): Call fatal() rather than bfd_fatal().
2279 (check_matching_formats): Fix C formating.
2281 (parse_vma): Call fatal().
2286 * debug.c (debug_type_samep): Avoid endless loops comparing
2287 function and method parameter types.
2291 * dlltool.c (dump_iat): Comment out; not used.
2292 (display): Rename from tell. Change all callers.
2296 * dlltool.c: Add support for Thumb DLLs. Add support for
2297 interworking between ARM and Thumb programs and DLLs. Tidy the
2300 * binutils.texi: Document dlltool.
2302 * configure: Build dlltool for thumb-pe targets.
2304 * version.c (print_version): Include 1998 in copyright strings.
2306 * stabs.c (parse_stab): Support Win32 style directory separators.
2310 * po/Make-in (install-info): New target.
2314 * ar.c (usage): Extend information provided about command line
2319 * makefile.vms: Run dec c with /nodebug. Pass CC value when
2324 * configure: Build dlltool for thumb-pe target.
2325 * configure.in: Build dlltool for thumb-pe target.
2329 * Makefile.am (EXTRA_PROGRAMS): Change $(SRCONV_PROG) to sysconf
2330 sysdump coffdump to avoid extra $(EXEEXT).
2331 * Makefile.in: Rebuild.
2335 * configure.in: Stop appending EXEEXT to the end of
2336 SRCONV_PROG (wrong because that variable may contain multiple
2338 * Makefile.am: instead, add EXEEXTs to each SRCONV_PROG
2340 * Makefile.in: regenerate
2341 * configure: regenerate
2345 * addr2line.c (main): Conditionally call setlocale.
2346 * windres.c (main): Likewise.
2347 * sysdump.c (main): Likewise.
2348 * strings.c (main): Likewise.
2349 * srconv.c (main): Likewise.
2350 * size.c (main): Likewise.
2351 * objdump.c (main): Likewise.
2352 * objcopy.c (main): Likewise.
2353 * nm.c (main): Likewise.
2354 * nlmconv.c (main): Likewise.
2355 * dlltool.c (main): Likewise.
2356 * coffdump.c (main): Likewise.
2357 * ar.c (main): Likewise.
2358 * bucomm.h: Include <locale.h> if HAVE_LOCALE_H.
2359 (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
2363 Add support for IMPORTS:
2364 * defparse.y (impline): Add IMPORTS syntaxes.
2365 * dlltool.c (ifunctype, iheadtype): New typedefs.
2366 (import_list): New static variable.
2367 (append_import): New static function.
2368 (def_import): Add an entry to import_list.
2369 (generate_idata_ofile): New static function.
2370 (gen_exp_file): Call generate_idata_ofile.
2371 * dlltool.h (def_import): Update declaration.
2375 * configure.in: Change version number to 2.9.4
2376 * configure: Rebuild.
2380 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
2384 * Makefile.am (INCLUDES): Search intl dirs for headers; define
2386 * addr2line.c (main): Call setlocale, bindtextdomain, textdomain.
2387 * ar.c (main): Likewise.
2388 * coffdump.c (main): Likewise.
2389 * dlltool.c (main): Likewise.
2390 * nlmconv.c (main): Likewise.
2391 * nm.c (main): Likewise.
2392 * objcopy.c (main): Likewise.
2393 * objdump.c (main): Likewise.
2394 * size.c (main): Likewise.
2395 * srconv.c (main): Likewise.
2396 * strings.c (main): Likewise.
2397 * sysdump.c (main): Likewise.
2398 * windres.c (main): Likewise.
2402 * Many files: Added gettext invocations around user-visible
2404 * bucomm.h: Added gettext-related includes and defines.
2405 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
2406 HAVE_LC_MESSAGES): Define.
2407 * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and
2408 po/Makefile. Use AM_PROG_LEX.
2409 * Makefile.am (SUBDIRS): New macro.
2410 (POTFILES): Likewise.
2411 (po/POTFILES.in): New target.
2412 (LDADD): Added INTLLIBS.
2413 (objdump_LDADD): Likewise.
2414 (c__filt_LDADD): Likewise.
2415 (ar_LDADD): Likewise.
2416 (ranlib_LDADD): Likewise.
2417 (dlltool_LDADD): Likewise.
2418 (windres_LDADD): Likewise.
2419 * po/Make-in, po/POTFILES.in, po/binutils.pot: New files.
2423 * objcopy.c (preserve_dates): New file static variable.
2424 (smart_rename): If preserve_dates, call set_times when copying.
2425 (strip_main): Remove preserve_dates local variable.
2426 (copy_main): Likewise.
2430 * Makefile.am (DISTSTUFF): Add defparse.h, defparse.c, rclex.c,
2431 rcparse.h, and rcparse.c
2432 * Makefile.in: Rebuild.
2436 * Makefile.am (PROGS): Move $(ADDR2LINE_PROG) to end, so that
2437 Makefile.in doesn't have an empty continuation line.
2438 (bin_PROGRAMS): Likewise.
2439 * Makefile.in: Rebuild.
2443 * Makefile.am (DISTCLEANFILES): Add site.exp and site.bak.
2444 (MOSTLYCLEANFILES): Add binutils.log, binutils.sum, and abcdefgh*.
2445 (mostlyclean-local): New target.
2446 * Makefile.in: Rebuild.
2452 * ar.c (usage): Mention S modifier.
2453 (main): Add S modifier.
2454 * ar.1, binutils.texi: Document S modifier.
2458 * binutils.texi: Use @itemx for a secondary item in a table.
2462 * dep-in.sed: Add rule to remove @OBJDIR@.
2463 * Makefile.am (dep.sed): Substitute for @OBJDIR@.
2464 * Makefile.in: Rebuild.
2468 * configure.in: Set version to 2.9.1.
2469 * configure: Rebuild.
2471 * Branched binutils 2.9.
2473 * Makefile.am (DISTCLEANFILES): Remove defparse.h, arparse.h,
2474 rcparse.h, and nlmheader.h.
2475 * Makefile.in: Rebuild.
2479 * Makefile.am (MOSTLYCLEANFILES): Define.
2480 * Makefile.in: Rebuild.
2482 Fix some gcc -Wall warnings:
2483 * nlmconv.c (main): Add casts to avoid warnings.
2484 (alpha_mangle_relocs): Likewise.
2485 * objdump.c (dump_section_stabs): Likewise.
2486 * size.c (print_sysv_format): Likewise.
2487 * srcconv.c (wr_ob): Likewise.
2488 * wrstabs.c (stab_modify_type): Likewise.
2489 (stab_variable): Likewise.
2490 * nlmconv.c (main): Initialize variables to avoid warnings.
2491 * nm.c (sort_symbols_by_size): Likewise.
2492 * objdump.c (disassemble_bytes): Likewise.
2493 * wrstabs.c (stab_end_class_type): Likewise.
2494 * coffgrok.c (do_sections_p2): Change j to unsigned int.
2495 (do_lines): Change l to unsigned int.
2496 * nlmheader.y (yylex): Change i to unsigned int.
2497 * nm.c (print_symbol): Change j to long.
2498 * size.c (lprint_number): Comment out.
2499 * srconv.c (wr_ob): Change i to bfd_size_type.
2500 * sysdump.c (unit_info_list): Comment out.
2501 (object_body_list, program_structure, debug_list): Likewise.
2502 * sysinfo.y (yyerror): Return value.
2506 * defparse.y (explist): Allow epsilon.
2511 * coffgrok.c (do_sections_p1): Use the section's lma instead of vma
2512 for the benefit of prom loaders.
2517 * Makefile.am (DISTSTUFF): New variable.
2518 (diststuff): New target.
2519 (DISTCLEANFILES): New variable.
2520 * Makefile.in: Rebuild.
2524 * rclex.l: Accept { and } as synonyms for BEGIN and END.
2528 * aclocal.m4, configure: Rebuild with libtool 1.2.
2532 * objdump.c (disassemble_data): Delete "++place" after call to
2533 find_symbol_for_address. Set disasm_info.symbols to array of
2534 symbols at the current address.
2538 * Makefile.am (install-exec-local): Install properly when ln
2539 fails or tooldir == prefix.
2543 * objcopy.c (compare_section_lma): Rename from _vma.
2544 (copy_object): Gap fill based on LMA not VMA.
2545 * binutils.texi: Update and clarify.
2546 * objcopy.1: Likewise.
2550 * dlltool.c (gen_exp_file): Generate _imp__%s as well as __imp_%s,
2551 for Microsoft compatibility.
2552 (make_one_lib_file): Likewise.
2554 * dlltool.c (make_one_lib_file): Don't add 1 to hint.
2558 * Makefile.am (AUTOMAKE_OPTIONS): Define.
2559 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e.
2563 * deflex.l: Accept '?' in symbol names, for VC++ mangled names.
2566 * addr2line.c (usage): Update bug-gnu-utils address.
2567 * ar.c (usage): Likewise.
2568 * nlmconv.c (show_usage): Likewise.
2569 * nm.c (usage): Likewise.
2570 * objcopy.c (copy_usage): Likewise.
2571 (strip_usage): Likewise.
2572 * objdump.c (usage): Likewise.
2573 * size.c (usage): Likewise.
2574 * strings.c (usage): Likewise.
2575 * windres.c (usage): Likewise.
2576 * binutils.texi (Bug Reporting): Likewise.
2580 * configure, aclocal.m4: Rebuild with new libtool.
2584 * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
2588 * Makefile.am (CC_FOR_TARGET,nlmcomv.o): Change program_transform_name
2590 * Makefile.in: Regenerate.
2594 * dlltool.c: Define exit status macros for _WIN32 but not
2596 (gen_lib_file): Check for exit status of unlink.
2597 * resrc.c: Define popen and pclose if _WIN32 but not
2602 * configure.in: Remove vfork check.
2603 * nlmconv.c: Never include vfork.h.
2604 * aclocal.m4, configure, Makefile.in, config.in: Rebuild.
2608 * objcopy.c (copy_archive): Only pass one argument to mkdir if
2609 _WIN32 but not __CYGWIN32__.
2610 (smart_rename): Add code for _WIN32 (not __CYGWIN32__), to cope
2611 with different rename behaviour and lack of chown.
2613 * configure.in: Check for mingw32 when deciding whether to build
2615 * dlltool.c: Never include vfork.h.
2616 (run): Use pexecute rather than vfork.
2617 (gen_lib_file): Check for errors from bfd_set_archive_head and
2618 bfd_close. Close all the BFDs in the archive before deleting the
2623 * objdump.c (disassemble_bytes): Add flag INSN_HAS_RELOC to tell
2624 disassembly function there is a reloc on this line.
2628 * srconv.c (sh, h8300): Delete variables.
2629 (addrsize, toolname, rnames): New variables.
2630 (writeINT): Use addrsize.
2631 (wr_un): Use toolname.
2632 (wr_hd): Set up addrsize et al properly for h8300[hs].
2633 (walk_tree_symbol): Zero dsy. Use rnames.
2634 (wr_un, wr_hd, wr_ob, wr_du): Use proper bfd access macros.
2635 * sysdump.c (sh, h8300): Delete variables.
2636 (addrsize): New variable.
2638 (getone): Initialize it.
2639 (getBITS): Range check on MAX.
2644 * ar.c (get_pos_bfd): Add default_posname parameter. Change all
2646 (replace_members): Default to replacing in the same position.
2650 * rclex.l: Don't permit a comma in a STRING.
2651 * rcparse.y (acc_entry): Warn if an inappropriate modifier is used
2653 (acc_event): For a control character, set VIRTKEY, and force the
2654 character to uppercase.
2655 (acc_options): Don't require a comma separator.
2659 * size.c (size_number): New function to provide size of field.
2660 ({l,r}print_number): For octal and hex fields, print field using
2661 '0' and '0x' suffixes. Do not include following tab.
2662 (sysv_internal_sizer): Size section name, section size, and vma
2664 (sysv_internal_printer): Use calculated sizes for the columns.
2665 (print_sysv_format): Size columns before printing.
2666 (print_berkeley_format): Print tabs between numbers now that
2667 {l,r}print_number doesn't. Print fields right justified.
2671 * objdump.c (objdump_print_addr_with_sym): Remove call to
2672 disasm_symaddr() as this function no longer exists.
2676 * objdump.c (objdump_print_addr_with_sym): Call disasm_symaddr()
2677 to allow backend to know which symbol has just been displayed.
2681 * windres.h (ESCAPE_*): Define standard escape sequences.
2682 * rclex.l (handle_quotes): Handle standard escape sequences. Warn
2683 about an unrecognized escape character.
2684 * windres.c (unicode_print): Print standard escape sequences.
2685 * rcparse.y (acc_event): Initialize $$.next.
2686 * resbin.c (bin_to_res_menuitems): Don't set MENUITEM_POPUP or
2687 MENUITEM_ENDMENU in the menu item flags.
2688 (bin_to_res_accelerators): Allocate a structure (the old code
2690 (res_to_bin_accelerator): Correct the test for setting ACC_LAST.
2691 (res_to_bin_dialog): Save the extended style rather than saving
2692 the style twice. Remove useless shadowing length variable. Set
2693 the length of control data correctly.
2694 * resrc.c (write_rc_dialog): Don't print the class or menu if the
2695 string length is zero.
2699 * stabs.c (parse_stab_argtypes): Don't try to parse the name of a
2700 destructor as mangled argument types.
2704 * addr2line.c (translate_addresses): Use bfd_scan_vma rather
2705 than strtol to scan addresses.
2709 * Makefile.am (bin_PROGRAMS): Don't use line continuations here.
2713 * objcopy.c (copy_section): Don't crash if there is no particular
2714 information for a section.
2718 * objcopy.c (parse_flags): Make flag check case insensitive.
2719 Check for `contents' flag. Give an error for unrecognized flags.
2720 (copy_section): If the contents flag was set for a section that
2721 had no contents, zero out the new contents.
2722 * binutils.texi (objcopy): Document contents section flag.
2726 * objcopy.c: Move new struct and variable definitions to top of
2727 file. Remove obsolete add_strip_symbol and is_strip_symbol
2728 declarations. Add prototype declarations for add_specific_symbol
2729 and is_specified_symbol.
2733 * configure.com (HAVE_SBRK): Undefine.
2737 * objdump.c (objdump_symbol_at_address): New function. Returns
2738 true if a symbol can be found at the address passed in.
2739 (disassemble_data): Set the symbol_at_address_func field to point
2740 to objdump_symbol_at_address.
2744 * objcopy.c, objcopy.1, binutils.texi: "localize" is a better name
2745 than "privatize". Update all references.
2749 * binutils.texi (strip): Remove duplicate --target. From Marty
2752 * nm.c (lineno_cache_bfd): New file static variable.
2753 (lineno_cache_rel_bfd): New file static variable.
2754 (display_archive): Clear lineno_cache_bfd and lineno_cache_rel_bfd
2756 (display_file): Likewise.
2757 (print_symbol): Use lineno_cache_bfd and lineno_cache_rel_bfd
2758 instead of cache_bfd and cache_rel_bfd. Make seccount static, and
2759 only set it when setting relocs.
2763 * objcopy.c (keep_specific_list, privatize_specific_list,
2764 weaken_specific_list): New variables.
2765 (keep_symbols): Removed.
2766 (add_specific_symbol): New function from the carcas of
2767 add_strip_symbol. Takes a list as an argument.
2768 (is_specified_symbol): Likewise from is_strip_symbol.
2769 (filter_symbols): Honor the new privatize and weaken lists.
2770 Optimize bfd_asymbol_name handling.
2771 (copy_object, copy_options, copy_usage): Add privatize-symbol &
2772 weaken-symbol options.
2774 * objcopy.1, binutils.texi: Update docs.
2778 * objdump.c (disassemble_data): Make "--prefix-addresses"
2779 disassembly adjust to mixed-length instructions.
2780 (objdump_print_addr_with_sym): Add "0x" prefix for hexadecimal
2781 symbol-offsets in disassembly.
2785 * objcopy.c (set_times): New static function, replacing
2787 (strip_main): If preserve_dates, stat the input file before
2788 copying it, and call set_times afterward.
2789 (copy_main): Likewise.
2791 * wrstabs.c (write_stabs_in_sections_debugging_info): Cast p to
2792 char * when calling strcpy and strlen.
2796 * binutils.texi (ar cmdline): Document that q now works like r.
2799 * binutils.texi (size): The object file argument is optional.
2802 * aclocal.m4: Rebuild with new libtool.
2803 * configure: Rebuild.
2807 * Makefile.am (EXEEXT_FOR_BUILD): New variable. Use it in all
2808 references to the sysinfo program.
2809 * configure.in: Rebuild with new bfd/acinclude.m4.
2810 * Makefile.in: Rebuild.
2814 * windres.c: Include <time.h>.
2815 (define_resource): Set a timestamp for the resource.
2819 * configure.in: Define TARGET in header file.
2820 * acconfig.h (TARGET): Add #undef.
2821 * Makefile.am (version.o, bucomm.o): Remove special targets.
2822 * bucomm.c (target): Remove.
2823 * nm.c (program_name): Don't declare.
2824 (target): Make static.
2825 * size.c (target): Make static.
2826 * configure, config.in, Makefile.in: Rebuild.
2830 * Makefile.am (check-DEJAGNU): Export r.
2831 (.dep1): Use $(INCLUDES) rather than $(ALL_CFLAGS).
2832 * Makefile.in: Rebuild.
2834 * nlmheader.y: Use VERSIONK rather than VERSION.
2836 * Makefile.am (STRIP_PROG): Change from strip.new to strip-new.
2837 (NM_PROG): Change from nm.new to nm-new.
2838 (TOOL_PROGS, install-exec-local): Adjust accordingly.
2839 * Makefile.in: Rebuild.
2843 * configure.in: Remove AC_ARG_PROGRAM; it's invoked by
2845 * configure: Rebuild.
2847 * Makefile.am (install-exec-local): Create $(tooldir)/bin before
2848 trying to install anything into it.
2849 * Makefile.in: Rebuild.
2851 * Makefile.am (TOOL_PROGS): Use an explicit $(EXEEXT).
2852 (install-exec-local): When handling $(noinst_PROGRAMS), only use
2853 $(EXEEXT) on the installed file. When handling $(TOOL_PROGS),
2854 handle $(EXEEXT) correctly.
2855 * configure.in: Add an explicit $(EXEEXT) when substituting for
2856 the name of a program to build.
2857 * Makefile.in, configure: Rebuild.
2859 * aclocal.m4, configure, Makefile.in: Rebuild with new automake
2862 * deflex.l, defparse.y: Use VERSIONK rather than VERSION.
2863 * rclex.l, rcparse.y: Likewise.
2864 * Makefile.am (windres_SOURCES): Add $(BULIBS).
2865 * Makefile.in: Rebuild.
2869 * acinclude.m4: Include bfd/acinclude.m4, not bfd/acmacros.m4.
2870 * aclocal.m4, configure: Rebuild with new libtool.
2874 * Makefile.am: New file, based on old Makefile.in.
2875 * acinclude.m4: New file, from old aclocal.m4.
2876 * configure.in: Call AM_INIT_AUTOMAKE and AM_PROG_LIBTOOL. Remove
2877 shared library handling; now handled by libtool. Replace
2878 AC_CONFIG_HEADER with AM_CONFIG_HEADER. Call AC_PROG_YACC,
2879 AC_PROG_LEX, AC_DECL_YYTEST, AM_MAINTAINER_MODE, AM_CYGWIN32, and
2880 AM_EXEEXT. Replace AC_PROG_INSTALL with AM_PROG_INSTALL. Remove
2881 stamp-h handling in AC_OUTPUT.
2882 * acconfig.h: Mention PACKAGE and VERSION.
2883 * stamp-h.in: New file.
2884 * Makefile.in: Now built with automake.
2885 * aclocal.m4: Now built with aclocal.
2886 * config.in, configure: Rebuild.
2889 * rcparse.y (dialog): Default menu and class to be named.
2890 (styles): If FONT is seen, set DS_SETFONT in dialog style.
2891 * resbin.c (res_to_bin_dialog): Correct computation of font
2897 * resbin.c (res_to_bin_menu): Correct computation of menu
2899 * resrc.c (define_stringtable): Add 1 to resource ID.
2903 * resbin.c (bin_to_res_string): Correct adjustment of data and
2908 * nlmconv.c (link_inputs): Call libiberty pexecute function.
2909 (pexecute) [multiple versions]: Remove.
2913 * bucomm.c (make_tempname): If we might be using a DOS filesystem,
2914 check for a backslash as well as a slash.
2918 * windres.c (main): Quit if we didn't get any resources.
2919 (usage): Fix --yydebug usage message.
2920 * rescoff.c (write_coff_file): Don't free the relocation array
2921 until after we've closed the BFD.
2922 (read_coff_rsrc): Quit rather than try to read standard input.
2923 (write_coff_file): Quit rather than try to write to standard
2925 * rcparse.y: Add a couple of missing semicolons (accepted by bison
2927 * binutils.texi: Document windres.
2931 * resbin.c: New file.
2932 * rclex.l, rcparse.y, rescoff.c, resrc.c, windres.c, windres.h:
2933 Numerous fixes and improvements.
2934 * Makefile.in: Rebuild dependencies.
2935 (CFILES): Add resbin.c.
2936 (WINDRES_OBJS): Add resbin.o.
2940 First stab at Windows resource compiler:
2941 * windres.h: New file.
2942 * windres.c: New file.
2943 * resrc.c: New file.
2944 * rcparse.y: New file.
2945 * rclex.l: New file.
2946 * rescoff.c: New file.
2947 * configure.in: Define and substitute BUILD_WINDRES.
2948 * configure: Rebuild.
2949 * Makefile.in: Rebuild dependencies.
2950 (WINDRES_PROG): New variable.
2951 (PROGS): Add @BUILD_WINDRES@.
2952 (HFILES): Add dlltool.h and windres.h.
2953 (CFILES): Add windres.c and resrc.c.
2954 (GENERATED_CFILES): Add rcparse.c and rclex.c.
2955 (WINDRES_OBJS): New variable.
2956 $(WINDRES_PROG): New target.
2957 (rcparse.c, rcparse.h, rclex.c): New targets.
2961 * dlltool.c (export_type): Add data field.
2962 (def_exports): Add data parameter. Change all callers.
2963 (dump_def_info): Print data field.
2964 (gen_def_file): Likewise.
2965 (make_one_lib_file): Handle data field by not emitting simple
2966 label and not emitting anything in SEC_TEXT.
2967 (dtab): Print data field.
2968 (process_duplicates): Merge data field.
2969 * dlltool.h (def_exports): Update declaration.
2970 * defparse.y (expline): Accept opt_DATA. Pass it to def_exports.
2971 (opt_DATA): New non-terminal.
2975 * dlltool.h: New file.
2976 * deflex.l: Include dlltool.h and libiberty.h. Don't declare
2977 strdup. Use xstrdup rather than strdup.
2978 * defparse.y: Include bfd.h, bucomm.h, and dlltool.h.
2979 * dlltool.c: Include dlltool.h and time.h. Make a lot of
2980 variables and functions static. Make a lot of char * variables
2981 and parameters const. Add declarations for static functions. Do
2982 some reindenting. Hide more PowerPC stuff inside DLLTOOL_PPC.
2986 * ar.c (bfd_special_undocumented_glue): Add const.
2990 * Makefile.in (check): Pass CC_FOR_TARGET and CFLAGS_FOR_TARGET
2995 * configure.in: Don't clear OPCODES when --enable-commonbfdlib is
2997 * configure: Rebuild.
3001 * Makefile.in (maintainer-clean realclean): Change *.info*
3002 to binutils.info* to save sysroff.info.
3006 * Makefile.in (INSTALL): Set to @INSTALL@.
3007 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
3008 (install): Depend upon installdirs. Use $(program_transform_name)
3009 directly, rather than using $(INSTALL_XFORM) and
3011 (installdirs): New target.
3012 (install-info): Run mkinstalldirs.
3016 * Makefile.in (INSTALL): Change install.sh to install-sh.
3019 * Makefile.in: Always use $(SHELL) when running move-if-change.
3020 * configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
3021 * configure: Rebuild.
3025 * configure.in: Add AC_FUNC_ALLOCA.
3026 * configure, config.in: Rebuild.
3027 * bucomm.h: Add alloca handling, copied from gas/as.h.
3028 * dlltool.c: Add #pragma alloca for AIX to start of file.
3029 * nlmconv.c: Likewise.
3031 * Makefile.in (distclean): Remove site.exp and site.bak. Remove
3032 everything that clean removes.
3036 * Makefile.in (VERSION): Set to 2.8.1.
3038 * Branched binutils 2.8.
3042 * configure.com: New file.
3043 * config.h-vms: Remove file.
3044 * makefile.vms: Update for new configure scheme.
3048 * objcopy.c (make_same_dates): Use statbuf, not buf, if not
3053 * Makefile.in ($(OBJDUMP_PROG)): Don't link against BFDLIB twice.
3054 * configure.in: Add AC_ARG_ENABLE for commonbfdlib. If it is set,
3055 set OPCODES to empty.
3056 * configure: Rebuild.
3061 * objcopy.c: Include <utime.h> or <sys/time.h>.
3062 (strip_options): Add "preserve-dates".
3063 (copy_options): Likewise.
3064 (copy_usage): Mention -p and --preserve-dates.
3065 (strip_usage): Likewise.
3066 (make_same_dates): New static function.
3067 (strip_main): Handle -p.
3068 (copy_main): Likewise.
3069 * binutils.texi, strip.1, objcopy.1: Document new option.
3071 addr2line.c contributed by Ulrich Lauther
3073 * addr2line.c: New file.
3074 * Makefile.in: Rebuild dependencies.
3075 (ADDR2LINE_PROG): New variable.
3076 (MANPAGES): Add addr2line.
3077 (PROGS): Add $(ADDR2LINE_PROG).
3078 (CFILES): Add addr2line.c.
3079 ($(ADDR2LINE_PROG)): New target.
3080 * binutils.texi: Document addr2line.
3081 * addr2line.1: New file.
3083 * version.c (print_version): Update copyright date.
3087 * objdump.c (disassemble_data): Don't exit if a file cannot be
3088 disassembled, instead just return.
3092 * size.c (usage): Make definition match its prototype.
3093 (display_bfd, lprint_number, rprint_number): Likewise.
3094 (print_berkeley_format, sysv_internal_printer): Likewise.
3095 (print_sysv_format): Likewise.
3096 * nm.c (set_print_radix, set_output_format): Likewise.
3097 * objcopy.c (filter_bytes): Likewise.
3101 * Many files: Add function prototypes.
3102 * ar.c (mri_emul, get_pos_bfd): Make static.
3103 * arlex.l: Include "libiberty.h". Don't declare strdup. Use
3104 xstrdup rather than strdup.
3105 * arparse.y (yyerror): Make argument const. Correct typo.
3106 * arsup.c (strdup): Don't declare.
3107 (ar_save): Use xstrdup rather than strdup.
3108 * filemode.c: Include "bucomm.h".
3109 * nm.c (usage): Make static.
3110 (print_symname): Make format and name const.
3111 * objcopy.c (cat): Remove.
3112 (copy_archive): Make output_target const. Use concat, not cat.
3113 (copy_file, simple_copy, smart_rename): Make arguments const.
3114 * objdump.c (read_section_stabs): Likewise.
3115 (print_section_stabs): Likewise.
3116 (display_target_tables): Don't declare getenv.
3117 * strings.c (strings_object_file): Change file to const.
3118 (print_strings): Change filename to const.
3119 * Makefile.in: Rebuild dependencies.
3123 * configure.in: Add BFD_NEED_DECLARATION(getenv).
3124 * acconfig.h: Add NEED_DECLARATION_GETENV.
3125 * bucomm.h (getenv): Declare if NEED_DECLARATION_GETENV.
3126 * configure, config.in: Rebuild.
3127 * nlmconv.c (getenv): Don't declare.
3129 * Makefile.in: Rebuild dependencies.
3134 * objdump.c: Include "demangle.h".
3135 (do_demangle): New static variable.
3136 (usage): Mention -C/--demangle.
3137 (long_options): Add "demangle".
3138 (objdump_print_symname): New static function.
3139 (objdump_print_addr_with_sym): Use objdump_print_symname.
3140 (disassemble_bytes): Likewise.
3141 (dump_reloc_set): Likewise.
3142 (dump_symbols): Demangle symbol name.
3144 * binutils.texi, objdump.1: Document -C/--demangle.
3146 * objdump.c (usage): Mention --no-show-raw-insn.
3147 (long_options): Add "no-show-raw-insn".
3148 (disassemble_bytes): Handle --no-show-raw-insn.
3149 * binutils.texi, objdump.1: Document --no-show-raw-insn.
3153 * rddbg.c (free_saved_stabs): Set the strings to NULL after being
3158 * bucomm.c (set_default_bfd_target): New function.
3159 * bucomm.h (set_default_bfd_target): Declare.
3160 * ar.c (main): Call set_default_bfd_target.
3161 * nlmconv.c (main): Likewise.
3162 * nm.c (main): Likewise.
3163 * objcopy.c (main): Likewise.
3164 * objdump.c (main): Likewise.
3165 * size.c (main): Likewise.
3166 * strings.c (main): Likewise.
3167 * Makefile.in (bucomm.o): New target, to define TARGET.
3171 * objdump.c (adjust_section_vma): New static variable.
3172 (usage): Mention --adjust-section-vma.
3173 (OPTION_ADJUST_VMA): Define.
3174 (long_options): Add "addjust-vma".
3175 (display_bfd): If adjust_section_vma is not 0, add it to all the
3177 (main): Handle OPTION_ADJUST_VMA.
3178 * binutils.texi, objdump.1: Document --adjust-vma.
3182 * nm.c (print_symbol): Cache the BFD as well as the symbols and
3183 relocs, and don't try to use the symbols or relocs with a
3188 * config.h-vms: sbrk() is provided on openVMS/Alpha.
3189 * makefile.vms: allow compiling with current gcc snapshot.
3193 * arsup.c, coffgrok.c, dlltool.c, nlmconv.c: Use xmalloc rather
3198 * objdump.c (disassemble_data): Correct VMA argument to
3199 find_symbol_for_address. Improve handling of code with no symbol
3200 followed by code with a symbol.
3204 * objdump.c (disassemble_bytes): Make output of raw instructions
3205 work better for non-standard values of bytes_per_chunk and
3210 * objdump.c (disassemble_bytes): Added code to allow some control
3211 over the way raw instructions are displayed.
3215 * stabs.c (struct bincl_file): Add next_stack field.
3216 (push_bincl): Put the new file on both bincl_list and
3217 bincl_stack. Clear the file_types field.
3218 (pop_bincl): Use the next_stack field when popping the stack.
3219 Don't put the file on bincl_list.
3220 (find_excl): Include the file name when warning about an unfound
3223 * debug.c (debug_type_samep): Don't crash if we are passed NULL.
3227 * objcopy.1: Add missing space after .B.
3231 * objdump.c (disassemble_data): Initialize `aux.require_sec'.
3235 * objdump.c (objdump_print_value): Add skip_zeroes parameter.
3237 (objdump_print_addr_with_sym): Likewise. Call objdump_print_value
3239 (objdump_print_addr): New static function.
3240 (objdump_print_address): Just call objdump_print_addr.
3241 (disassemble_bytes): Print real address, not function offset.
3242 Skip a certain number of leading zeroes.
3244 * objdump.c (disassemble_zeroes): New static variable.
3245 (usage): Mention --disassemble-zeroes.
3246 (long_options): Add "disassemble-zeroes".
3247 (disassemble_bytes): Check disassemble_zeroes.
3251 * objdump.c (disassemble_bytes): Don't skip zeroes if the
3252 disassembler has told us that we are in a branch delay slot.
3256 * size.c (berkeley_sum): Rewrite. Skip sections which are not
3257 SEC_ALLOC. Count SEC_READONLY sections as text.
3261 * Makefile.in (maintainer-clean realclean): Remove *.info*, not
3266 * Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
3270 * configure.in: Work around bug in AC_FUNC_VFORK in autoconf 2.12.
3271 * configure: Rebuild.
3276 * objcopy.c (OPTION_WEAKEN): Define.
3277 (copy_options): Add "weaken".
3278 (copy_usage): Mention --weaken.
3279 (weaken): New static variable.
3280 (filter_symbols): Handle weaken.
3281 (copy_object): Call filter_symbols if weaken.
3282 (copy_main): Handle OPTION_WEAKEN.
3283 * binutils.texi, objcopy.1: Document --weaken.
3287 * mpw-make.sed: Use NewFolderRecursive for installation.
3291 * Makefile.in (install): Add "else true" clause to cater to
3292 broken "make" on some systems.
3296 * ieee.c (parse_ieee_bb): Always initialize namcopy to avoid gcc
3297 warning about uninitialized variable.
3298 (ieee_read_cxx_class): Likewise, for pf.
3299 (ieee_enum_type): Likewise, for i.
3303 * wrstabs.c (stab_array_type): Add casts when printing
3304 bfd_signed_vma values.
3306 * configure: Rebuild with autoconf 2.12.
3310 * objdump.c (disassemble_data): Don't crash if there is no
3315 * ar.c (open_inarch): Don't call bfd_openr with a null name.
3319 * binutils.texi: Add section on reporting bugs.
3323 * stabs.c (struct stab_handle): Add bincl_list field.
3324 (parse_stab): Pass value to push_bincl. Call find_excl for
3326 (struct bincl_file): Add hash, file and file_types fields.
3327 (push_bincl): Add hash parameter. Save it in the new hash field.
3328 Save the file number in the new file field.
3329 (pop_bincl): Put the bincl_file on bincl_list, rather than freeing
3330 it. Save the file types in the new file_types field.
3331 (find_excl): New static function.
3333 * ieee.c (ieee_lineno): Don't compare line number addresses to
3334 info->highaddr (undo part of October 28 patch).
3338 * objdump.c (objdump_print_value): Don't print the empty string
3343 * stabs.c (struct stab_handle): Add function_end field.
3344 (start_stab): Initialize function_end.
3345 (finish_stab): Pass info->function_end to debug_end_function.
3346 (parse_stab): If info->function_end is set, use it as the address
3347 which ends a function.
3349 * ieee.c (ieee_array_type): Remember the correct size.
3351 * ieee.c (ieee_finish_compilation_unit): Permit coalescing ranges
3352 that are up to 0x1000 bytes apart, not just 64.
3353 (ieee_add_bb11_blocks): Don't bother to emit a BB11 that is less
3355 (ieee_lineno): Only emit line numbers that are less than
3360 * ieee.c (struct ieee_defined_enum): Add defined field.
3361 (ieee_enum_type): If the enum tag has been seen before but not
3362 defined, reuse the same type index, and define it.
3363 (ieee_tag_type): If this enum has not been defined, add an
3364 undefined entry to the list of enums.
3366 * objdump.c (disassemble_bytes): Let the disassembler override the
3367 number of bytes printed on a line.
3371 * objdump.c (prefix_addresses): New static variable.
3372 (long_options): Add "prefix-addresses".
3373 (compare_symbols): Sort BSF_FUNCTION symbols before other
3375 (find_symbol_for_address): New static function, broken out of
3376 objdump_print_address.
3377 (objdump_print_addr_with_sym): New static function, broken out of
3378 objdump_print_address.
3379 (objdump_print_address): Call new functions.
3380 (disassemble_bytes): New static function, broken out of
3381 disassemble_data. Change disassembly format, unless
3382 prefix_addresses is set.
3383 (disassemble_data): Call disassemble_bytes. Unless
3384 prefix_addresses is set, disassemble in chunks headed by a
3386 * binutils.texi, objdump.1: Document --prefix-addresses.
3388 * rddbg.c (read_section_stabs_debugging_info): Preserve the
3389 backslash when concatenating multiple stabs strings.
3393 * dlltool.c (scan_open_obj_file): Fix loop exit test.
3394 Add missing parameter to def_exports.
3398 * Makefile.in (LEX_OPTIONS): Set to empty string. -I -Cem is the
3399 default for flex, and is not recognized by lex.
3403 * binutils.texi (Target Selection): Document that you can now
3404 specify targets using configuration triplets.
3406 * ar.c (usage): Declare. Make sure all callers pass an argument.
3410 * Makefile.in (clean): Remove config.log.
3414 * makefile.vms: Bump version date.
3418 * version.c (print_version): New function.
3419 * bucomm.h (print_version): Declare.
3420 * ar.c (program_version): Don't declare.
3421 (do_show_version): Remove.
3422 (usage): Add help parameter. Print bug report address.
3423 (main): Set is_ranlib at start. Check for --help and --version.
3424 Call print_version, not do_show_version.
3425 * nlmconv.c (program_version): Don't declare.
3426 (main): Call print_version.
3427 (show_usage): Print bug report address.
3428 * nm.c (program_version, print_version): Don't declare.
3429 (usage): Print bug report address.
3430 (main): Call print_version.
3431 * objcopy.c (program_version): Don't declare.
3432 (copy_usage): Print bug report address.
3433 (strip_usage): Likewise.
3434 (strip_main): Call print_version.
3435 (copy_main): Likewise.
3436 * objdump.c (program_version): Don't declare.
3437 (usage): Print bug report address.
3438 (main): Call print_version.
3439 * size.c (program_version): Don't declare.
3440 (usage): Print bug report address.
3441 (main): Call print_version.
3442 * strings.c (program_version): Don't declare.
3443 (main): Call print_version.
3444 (usage): Print bug report address.
3445 * Makefile.in: Update dependencies.
3449 * ieee.c: Revert Monday's reflocalp patch, and apply this patch
3451 (write_ieee_debugging_info): Write a dummy type at the end of the
3456 * ieee.c (struct ieee_write_type): Add reflocalp field.
3457 (ieee_pointer_type): Set reflocalp after pushing type.
3458 (ieee_function_type): If reflocalp is set, make this type local.
3459 (ieee_range_type, ieee_array_type, ieee_set_type): Likewise.
3460 (ieee_const_type, ieee_volatile_type): Likewise.
3461 (ieee_struct_field, ieee_class_baseclass): Likewise.
3463 * ieee.c (struct ieee_info): Add global_types field.
3464 (parse_ieee_bb): When starting a BB1, initialize the types field
3465 to the global_types field.
3466 (parse_ieee_be): When ending a BB2, copy the types field to the
3471 * objcopy.c (change_leading_char): New static variable.
3472 (OPTION_CHANGE_LEADING_CHAR): Define.
3473 (copy_options): Add "change-leading-char".
3474 (copy_usage): Mention --change-leading-char.
3475 (filter_symbols): Add obfd parameter. Change all callers.
3476 Implement change_leading_char.
3477 (copy_object): Call filter_symbols if change_leading_char.
3478 (copy_main): Handle OPTION_CHANGE_LEADING_CHAR.
3479 * binutils.texi, objcopy.1: Document --change-leading-char.
3483 * ieee.c (ieee_enum_type): Don't check index into a NULL names
3485 * nm.c (sort_symbols_by_size): Always initialize next.
3486 * rdcoff.c (parse_coff_type): Warn about an incomprehensible
3487 type rather than crashing.
3488 * rddbg.c (read_symbol_stabs_debugging_info): Initialize f.
3489 * stabs.c (parse_stab_members): Set context in all cases.
3493 * configure.in (i[345]86-*-*): Recognize i686 for pentium pro.
3494 * configure: Regenerate.
3498 * objdump.c (L_tmpnam): Never define.
3499 (display_target_list): Use choose_temp_base instead of tmpnam.
3500 (display_info_table): Likewise.
3504 * stabs.c (parse_stab): An N_FUN symbol with an empty string
3505 indicates the end of a function.
3509 * wrstabs.c (struct string_hash_entry): Add next field.
3510 (struct stab_write_handle): Change strings to a pointer to
3511 string_hash_entry. Add last_strings field. Remove strings_alloc
3513 (string_hash_newfunc): Initialize next field.
3514 (stab_write_symbol): Copy string into hash table rather than into
3515 buffer. Keep a list of hash table entries.
3516 (write_stabs_in_sections_debugging_info): Initialize last_string.
3517 Copy strings from list of hash table entries in memory.
3518 (stab_modify_type): If the entry on the stack is a definition,
3519 make a new definition rather than failing an assert.
3520 (stab_array_type): The size is only zero if high is strictly less
3523 * ieee.c (struct ieee_info): Add saw_filename field.
3524 (parse_ieee): Initialize saw_filename.
3525 (parse_ieee_bb): Set saw_filename for a BB1 or BB2. In a BB1,
3526 discard the current variables and types. In a BB10, if no
3527 filename has been seen, call debug_set_filename.
3528 (parse_ieee_ty): In case 'g', the type is optional.
3530 * prdbg.c (pr_fix_visibility): Don't abort on
3531 DEBUG_VISIBILITY_IGNORE.
3533 * debug.c (debug_name_type): Correct error message.
3535 * configure.in: Substitute HLDENV.
3536 * configure: Rebuild.
3537 * Makefile.in (HLDENV): New variable. Use it whenever linking a
3542 * mpw-make.sed: Add symbolic doublequotes around the version
3547 * makefile.vms: Add better support for DEC C compilation.
3548 Add new macros as in Makefile.in.
3552 * configure.in: Call BFD_NEED_DECLARATION on strstr and sbrk.
3553 * acconfig.h (NEED_DECLARATION_STRSTR): New macro.
3554 (NEED_DECLARATION_SBRK): New macro.
3555 * configure, config.in: Rebuild.
3556 * bucomm.h (strstr): Declare if NEED_DECLARATION_STRSTR.
3557 (sbrk): Declare if HAVE_SBRK and NEED_DECLARATION_SBRK.
3559 * prdbg.c (pr_end_struct_type): Avoid using a string constant in
3560 assert, for the benefit of broken assert macros.
3564 * objdump.c (disassemble_data): Set disasm_info.flavour from
3569 * dlltool.c (secdata): In non DLLTOOL_PPC case, change alignment
3570 of .text section to 2.
3574 * objdump.c (dump_section_stabs): Fix test for stabs sections
3575 ending with numbers. This fixes a problem with .stab being
3576 confused with .stab.index.
3580 * stabs.c (stab_demangle_fund_type): Return a void * for a
3581 template, rather than simply aborting.
3585 * ar.c (open_inarch): Add file parameter. Change all callers. If
3586 this is a newly created archive, set the target based on the
3588 * arsup.h (open_inarch): Update declaration.
3592 * Makefile.in (VERSION): Set to cygnus-2.7.1.
3594 * Released binutils 2.7.
3596 * rdcoff.c (parse_coff): Get address to pass to debug_end_function
3597 from function size, not value of .ef symbol. From Ning
3602 * objcopy.c (strip_main): Add -o option, and handle it.
3603 (strip_usage): Mention -o.
3604 * binutils.texi, strip.1: Mention -o.
3608 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
3609 INSTALL_PROGRAM, INSTALL_DATA): Use autoconf set values.
3611 * configure.in (AC_PREREQ): Autoconf 2.5 or higher.
3615 * objdump.c (endian): New static variable.
3616 (usage): Mention -EB/-EL/--endian.
3617 (long_options): Add "endian".
3618 (disassemble_data): If endianness was specified, replace
3619 abfd->xvec with a copy of itself with the given endianness.
3620 (main): Handle -EB/-EL/--endian.
3621 * binutils.texi, objdump.1: Mention -EB/-EL/--endian.
3623 * objdump.c: Make most variables and functions static.
3625 * configure.in: On alpha*-*-osf*, link against libbfd.a if not
3626 using shared libraries.
3627 * configure: Rebuild with autoconf 2.10.
3631 * dlltool.c (secdata): Changed .rdata to .reldata so .reloc will work.
3632 (make_one_lib_file): Removed cruft. (#if 1)
3636 * objdump.c (stabs): Change from struct internal_nlist * to
3638 (print_section_stabs): Fetch stabs information directly, rather
3639 than assuming that struct internal_nlist is the right size.
3641 * binutils.texi: Document change to binary format: file position
3642 based on load address, not section VMA.
3644 * bucomm.h: Define SEEK_SET, SEEK_CUR, and SEEK_END if they are
3645 not already defined.
3649 * Makefile.in (DISTSTUFF): Add deflex.c.
3653 * config.h-vms, makefile.vms: New files.
3657 * dlltool.c (make_one_lib_file): Use BFD_RELOC_RVA rather than
3658 BFD_RELOC_32 in IDATA7.
3662 * nm.c (struct get_relocs_info): Define.
3663 (line_numbers): New static variable.
3664 (long_options): Add "line-numbers".
3665 (usage): Mention -l and --line-numbers.
3667 (print_symbol): Print line numbers if requested.
3668 (get_relocs): New static function.
3669 * binutils.texi, nm.1: Document -l/--line-numbers.
3673 * objdump.c (dump_reloc_set): Add sec parameter. Change all
3674 callers. If with_line_numbers is set, display line numbers of
3676 * binutils.texi, objdump.1: Document -l with -r.
3680 * ar.c (open_inarch): Report BFD error message if an archive can
3681 not be recognized. List matching formats if the file is
3682 ambiguously recognized.
3683 (ranlib_touch): Likewise.
3687 * README: Add notes on how to build if you don't have ar.
3689 * Makefile.in: Remove old incorrect setting of CC.
3693 * Makefile.in (install): Don't check to see if tooldir exists.
3694 Make $(tooldir) and $(tooldir)/bin.
3698 * strings.c (main): Make main an int function, not void.
3702 * nm.c (filter_symbols): Check for BSF_WEAK as well as
3704 * objcopy.c (filter_symbols): Likewise.
3708 * objcopy.c (copy_object): Make clear that it is only a warning
3709 when the output file can not represent the architecture.
3713 * objdump.c (disassemble_data): Don't refer to bytes past the end
3718 * rddbg.c (read_symbol_stabs_debugging_info): Move call to
3719 free_saved_stabs outside the loop over the symbols.
3723 * objdump.c (compare_symbols): Sort symbols whose names start with
3724 `.' after other symbols. If no other decision can be made, sort
3729 * dep-in.sed: Substitute $(BFDDIR) for @BFDDIR@.
3730 * Makefile.in: Rebuild dependencies.
3731 (dep.sed): Substitute $(BFDDIR) for @BFDDIR@.
3735 * rdcoff.c: New file.
3736 * rddbg.c (read_debugging_info): Read COFF symbols if COFF flavour
3737 and no stabs were found.
3738 * budbg.h (parse_coff): Declare.
3739 * Makefile.in: Rebuild dependencies.
3740 (CFILES): Add rdcoff.c.
3741 (DEBUG_OBJS): Add rdcoff.o.
3745 * nlmconv.c (choose_temp_base{,_try}): Delete, in libiberty now.
3746 (link_inputs): Update call to choose_temp_base.
3750 * configure.in: Permit --enable-shared to specify a list of
3752 * configure: Rebuild.
3756 * objdump.c (dump_section_header): Print the SEC_LINK_ONCE flag
3757 and the SEC_LINK_DUPLICATES field.
3761 * nlmconv.1: Changed to be recognized by catman -w on Solaris.
3765 * wrstabs.c (stab_enum_type): Set buf before using it.
3769 * stabs.c (struct stab_handle): Add field abfd.
3770 (start_stab): Add abfd parameter.
3771 (parse_stab_string): Skip the symbol leading char when searching
3772 for the value of a global symbol.
3773 * budbg.h (start_stab): Update declaration.
3774 * rddbg.c (read_section_stabs_debugging_info): Pass abfd to
3776 (read_symbol_stabs_debugging_info): Likewise.
3780 * wrstabs.c (stab_function_type): Output an empty typedef for an
3781 unused argument, rather than making up a meaningless name.
3782 (stab_variable): Use N_RSYM for a DEBUG_REGISTER variable.
3784 * ieee.c (struct ieee_info): Add global_vars field.
3785 (parse_ieee_be): When ending the global typedef block, copy the
3786 variables into info->global_vars.
3787 (parse_ieee_atn): Don't require an NN record for a pmisc ATN.
3788 (ieee_read_reference): Search the global variables after the local
3793 * objdump.c (disassemble_data): Make sure sym_name is always set.
3794 (dump_section_header): Always put a space after the section name.
3795 (dump_bfd_header): Terminate output with newline.
3799 * wrstabs.c: New file.
3800 * budbg.h (write_stabs_in_sections_debugging_info): Declare.
3801 * objcopy.c (write_debugging_info): For COFF or ELF, output stabs
3803 * Makefile.in: Rebuild dependencies.
3804 (CFILES): Add wrstabs.c.
3805 (WRITE_DEBUG_OBJS): New variable.
3806 ($(OBJCOPY_PROG)): Use $(WRITE_DEBUG_OBJS), not $(DEBUG_OBJS).
3807 ($(STRIP_PROG)): Likewise.
3809 * stabs.c (parse_stab_members): Make type stub detection more like
3812 * ieee.c (struct ieee_handle): Add fields complex_float_index and
3813 complex_double_index.
3814 (ieee_complex_type): Cache type index in complex_float_index and
3815 complex_double_index, depending upon size. Set size on type stack
3818 * ieee.c (ieee_empty_type): Use builtin_unknown, not 0.
3819 (ieee_void_type): Use builtin_void, not 1.
3821 * ieee.c (parse_ieee_ty): Handle 'V' type code.
3822 (parse_ieee_atn): Don't require two numbers for type 10.
3824 * ieee.c (parse_ieee_be): Add one to offset at end of function or
3827 * ieee.c (struct ieee_block): Add field skip.
3828 (parse_ieee_bb): Don't call debug_record_function for __XRYCPP
3829 function, and set skip field.
3830 (parse_ieee_be): Don't call debug_end_function if skip is set.
3832 * debug.c (struct debug_handle): Add fields current_write_lineno
3833 and current_write_lineno_index.
3834 (debug_write): Initialize current_write_lineno and
3835 current_write_lineno_index for each unit. Call
3836 debug_write_linenos rather than writing out the line numbers
3838 (debug_write_function): Call debug_write_linenos.
3839 (debug_write_block): Likewise.
3840 (debug_write_linenos): New static function.
3842 * debug.c (debug_write_type): For DEBUG_KIND_FUNCTION, push return
3843 type before arguments.
3847 * configure.in: Add AC_FUNC_VFORK.
3848 * configure, config.in: Rebuild.
3849 * dlltool.c, nlmconv.c: Include <vfork.h> if HAVE_VFORK_H is
3852 * stabs.c (parse_stab_range_type): A complex type is defined as a
3853 subrange of itself with the high bound zero.
3854 * ieee.c (ieee_complex_type): Don't crash on sizes of 12 or 16.
3858 * ieee.c (ieee_write_undefined_tag): Switch to global_types even
3860 (ieee_tag_type): For an enum, look through info->enums.
3862 * configure: Rebuild with autoconf 2.8.
3864 * debug.c (debug_type_samep): Don't loop endlessly in
3869 * rddbg.c (read_section_stabs_debugging_info): Call save_stab for
3870 each stab entry, call stab_context on an error, and call
3871 free_saved_stabs before rturning.
3872 (read_symbol_stabs_debugging_info): Likewise.
3873 (SAVE_STABS_COUNT): Define.
3874 (struct saved_stab): Define.
3875 (saved_stabs, saved_stabs_index): New static variables.
3876 (save_stab, stab_context, free_saved_stabs): New static functios.
3878 * objdump.c (stab_name): Remove.
3879 (struct stab_print): Remove.
3880 (stab_print): Remove.
3881 (dump_stabs): Don't initialize stab_name.
3882 (print_section_stabs): Call bfd_get_stab_name rather than using
3883 the stab_name array.
3887 * prdbg.c (pr_int_constant): Initialize info correctly.
3888 (pr_float_constant): Likewise.
3892 * mpw-make.sed: Update to handle shared library support.
3896 * Makefile.in ($(OBJDUMP_PROG)): Search $(BFDLIB) before
3901 * configure.in: Don't tamper with LDFLAGS. Call AC_PROG_CC before
3903 * configure: Rebuild.
3905 * configure.in: Substitute RPATH_ENVVAR.
3906 * configure: Rebuild.
3907 * Makefile.in (RPATH_ENVVAR): New variable.
3908 (check): Use $(RPATH_ENVVAR) rather than LD_LIBRARY_PATH.
3910 * objcopy.c (smart_rename): Rather than doing chmod then chown, do
3911 chmod without setuid, then chown, then chmod with setuid.
3915 * arsup.c (map_over_list): Reindent. Don't assume that the
3916 function does not delete the BFD.
3917 (ar_addlib_doer): Don't set prev->next if prev is NULL.
3921 * ieee.c (ieee_regno_to_genreg): Convert register numbers for m68k
3923 (ieee_genreg_to_regno): Likewise.
3927 * ieee.c: Extensive changes to write code to put types in the
3928 global type block when possible, to output ranges for all memory
3929 occupied by the module, and to improve efficiency.
3931 * debug.c (struct debug_handle): Remove class_mark field. Add
3932 id_list and compare_list fields.
3933 (struct debug_class_id): Define.
3934 (struct debug_type_compare_list): Define.
3935 (debug_write): Initialize info->id_list
3936 (debug_write_name): Remove reference to info->class_mark.
3937 (debug_write_type): Get id for all structs and classes. Simplify
3938 test for whether struct has already been written.
3939 (debug_write_class_type): Get id for all classes. Simplify test
3940 for whether class has already been written.
3941 (debug_write_block): Don't write out blocks other than the top
3942 level block if they have no local variables.
3943 (debug_set_class_id): New static function.
3944 (debug_type_samep): New static function.
3945 (debug_class_type_samep): New static function.
3946 * prdbg.c (pr_start_struct_type): Always print id.
3947 (pr_start_class_type): Likewise.
3948 (pr_tag_type): Likewise.
3950 * stabs.c (struct stab_handle): Add syms and symcount fields.
3951 (start_stab): Add syms and symcount parameters. Change all
3953 (parse_stab_string): Look up global variables in the symbol table
3954 to get the right value.
3955 * budbg.h (start_stab): Update declaration.
3956 * rddbg.c (read_section_stabs_debugging_info): Add syms and
3957 symcount parameters. Change all callers.
3959 * stabs.c (parse_stab_array_type): If the index type is 0, use
3964 * ieee.c (ieee_start_compilation_unit): Clear modified and
3965 modified_alloc fields of info.
3967 * configure.in: Check for --enable-shared. Substitute new
3968 variables BFDLIB and OPCODES.
3969 * configure: Rebuild.
3970 * Makefile.in (BFDLIB): Set to @BFDLIB@.
3971 (OPCODES): Set to @OPCODES@.
3975 Support for building bfd and opcodes as shared libraries, based on
3977 * configure.in (HLDFLAGS): New substitution.
3978 * configure: Rebuild.
3979 * Makefile.in (HLDFLAGS): New variable. Make all links use
3980 $(HLDFLAGS) before $(CFLAGS) and $(LDFLAGS).
3981 (BFDLIB_DEP): New variable. Replace all occurrences of $(BFD) as
3982 a dependency with $(BFDLIB_DEP). Remove $(BFD) as a dependency if
3983 there is also a dependency on $(ADDL_DEPS).
3984 (BFDLIB): Rename from BFD; change all uses; set to -L../bfd -lbfd.
3985 (OPCODES_DEP): New variable. Replace all occurrends of $(OPCODES)
3986 as a dependency with $(OPCODES_DEP).
3987 (OPCODES): Set to -L../opcodes -lopcodes.
3988 (ADDL_DEPS): New variable. Replace all occurrences of
3989 $(ADDL_LIBS) as a dependency with $(ADDL_DEPS).
3990 (check): Set LD_LIBRARY_PATH in the environment.
3991 (config.status): Depend upon BFD configure.host and config.bfd.
3995 * objdump.c: #include stdarg.h or varargs.h.
3996 (objdump_print_value): Change FILE* arg to struct disassemble_info*.
3997 All callers updated. Use fprintf_func.
3998 (objdump_print_address): Consistently use fprintf_func.
3999 (objdump_sprintf): New function.
4000 (disassemble_data): Print insn into a buffer, print raw insn ourselves,
4001 then print insn mnemonic.
4005 * configure: Regenerate.
4009 * configure.in (i[3-6]86-*-win32): Becomes i[3-6]86-*-cygwin32.
4010 (powerpc*-*-cygwin32): New.
4011 * configure: Regenerated.
4015 * Makefile.in (distclean): Remove $(DEMANGLER_PROG).1.
4020 * objcopy.c (remove_leading_char): New static variable.
4021 (OPTION_REMOVE_LEADING_CHAR): Define.
4022 (copy_usage): Mention --remove-leading-char.
4023 (filter_symbols): If remove_leading_char, and the first character
4024 of a global symbol matches the symbol leading char of the BFD,
4025 remove the first character.
4026 (copy_object): Filter the symbols if remove_leading_char is set.
4027 (copy_main): Handle --remove-leading-char.
4028 * binutils.texi, objcopy.1: Document --remove-leading-char.
4032 * objdump.c (fprintf): Add prototype to avoid compiler warning on
4037 * binutils.texi (nm): Improve documentation on symbol types.
4038 (objdump): Reference the stabs manual from the discussion of the
4043 * mpw-make.sed: Add a "stamps" target.
4047 * objdump.c (dump_headers, dump_section_header): Change objdump -h
4048 output to be simpler and to include section file offsets.
4052 * stabs.c (parse_stab_members): Don't adjust voffset.
4054 * ieee.c (ieee_read_cxx_class): Don't multiply voffset by 4.
4055 (struct ieee_write_type): Add name field.
4056 (struct ieee_type_class): Remove name field. Change all uses to
4057 use new name field in type instead.
4058 (struct ieee_name_type): Likewise.
4059 (ieee_start_struct_type): Initialize name field of type.
4060 (ieee_start_class_type): Don't initialize classdef entry of tag.
4061 (ieee_class_method_var): Don't adjust voffset.
4062 (ieee_end_class_type): Likewise.
4063 (ieee_tag_type): Initialize new name field of type.
4064 (ieee_typdef): Set name after copying in type information.
4066 * debug.c (VOFFSET_STATIC_METHOD): Define as -1, not 1.
4068 * ieee.c (struct ieee_modified_type): Define.
4069 (struct ieee_handle): Add modified and modified_alloc fields.
4070 (ieee_get_modified_info): New static function.
4071 (ieee_pointer_type): Cache type index.
4072 (ieee_const_type): Likewise.
4073 (ieee_volatile_type): Likewise.
4075 * ieee.c (ieee_define_named_type): When creating a tag for an
4076 anonymous struct, copy the name into memory.
4077 (ieee_tag_type): Likewise.
4078 * debug.c (debug_write_type): Only check and set id field for an
4080 (debug_write_class_type): Likewise.
4082 * ieee.c: Various changes to write out types for functions and
4083 references, and to not write out unnecessary function types.
4085 * ieee.c (struct ieee_var): Remove variable field. Add kind
4086 field, and define some enum constants for it.
4087 (parse_ieee_ty): Set kind field of variable for 'x' and 'X' types.
4088 (parse_ieee_atn): Make an indirect slot for an external variable,
4089 although we otherwise don't record it. Set kind field rather than
4090 variable field of pvar.
4091 (ieee_read_cxx_class): Try to get the type of a static member.
4092 (ieee_read_reference): Check kind field rather than variable
4097 * ieee.c: Various changes to handle reading C++ reference type
4100 * debug.h (enum debug_var_kind): Add DEBUG_VAR_ILLEGAL.
4101 (enum debug_parm_kind): Add DEBUG_PARM_ILLEGAL.
4102 * debug.c (debug_get_parameter_types): Handle DEBUG_KIND_FUNCTION.
4104 * ieee.c: Various changes to write out definitions of C++ classes.
4106 * debug.c (debug_append_filename): Remove.
4107 * debug.h (debug_append_filename): Don't declare.
4109 * stabs.c (struct stab_handle): Remove last_type field. Add
4110 so_string and so_value fields.
4111 (finish_stab): Call stab_emit_pending_vars before calling
4112 debug_end_function. Don't warn about pending variables.
4113 (parse_stab): Accumulate N_SO strings until a non N_SO symbol is
4114 seen, rather than calling debug_append_filename. Call
4115 stab_emit_pending_vars before calling debug_end_function. Don't
4116 set info->last_type.
4120 * objdump.c (disassemble_data): Handle unknown endianness.
4121 Pass fprintf to INIT_DISASSEMBLE_INFO.
4125 Add new option --show-raw-insn.
4126 * objdump.c (show_raw_insn): New global.
4128 (long_options): Update.
4129 (disassemble_data): Set disasm_info.flags if --show-raw-insn.
4131 * objdump.c (disassemble_data): Set new arch,mach,endian fields in
4136 * ieee.c: Extensive changes to pass a single info argument around
4137 in the reading routines, rather than several arguments. Add code
4138 to read C++ debugging records.
4140 * debug.h (debug_get_type_size): Declare.
4141 (debug_get_field_name): Declare.
4142 (debug_get_field_bitpos): Declare.
4143 (debug_get_field_bitsize): Declare.
4144 (debug_get_field_visibility): Declare.
4145 (debug_get_field_physname): Declare.
4146 * debug.c (debug_get_real_type): Handle DEBUG_KIND_TAGGED.
4147 (debug_get_type_size): New function.
4148 (debug_get_field_name): New function.
4149 (debug_get_field_bitpos): New function.
4150 (debug_get_field_bitsize): New function.
4151 (debug_get_field_visibility): New function.
4152 (debug_get_field_physname): New function.
4153 (debug_write_type): Make sure we pass the real kind, not INDIRECT,
4154 to tag_type. Pass the name recursively for INDIRECT.
4158 * debug.h (struct debug_write_fns): Remove ellipsis_type. Add int
4159 and boolean parameters to function_type. Add boolean parameter to
4161 (debug_make_ellipsis_type): Don't declare.
4162 (debug_make_function_type): Add debug_type * and boolean
4163 parameters. Change all callers.
4164 (debug_make_method_type): Add boolean parameter. Change all
4166 (debug_get_parameter_types): Add boolean * parameter. Change all
4168 (debug_get_target_type): Declare.
4169 * debug.c (struct debug_function_type): Add fields arg_types and
4171 (struct debug_method_type): Add field varargs.
4172 (debug_ellipsis_type, ELLIPSIS_P): Remove.
4173 (debug_make_ellipsis_type): Remove.
4174 (debug_make_function_type): Add arg_types and varargs parameters.
4175 (debug_make_method_type): Add varargs parameter.
4176 (debug_get_parameter_types): Add pvarargs parameter.
4177 (debug_get_target_type): New function.
4178 (debug_write_type): In case DEBUG_KIND_FUNCTION, push argument
4179 types and pass count to function_type. In DEBUG_KIND_METHOD, use
4180 a signed int for the count, don't call ellipsis_type, and pass
4181 varargs to method_type.
4182 * stabs.c (struct stab_demangle_info): Add varargs field.
4183 (stab_demangle_argtypes): Add pvarargs parameter. Change all
4185 (stab_demangle_args): Likewise.
4186 (stab_demangle_type): In case 'F', pick up argument types.
4187 * prdbg.c (pr_ellipsis_type): Remove.
4188 (pr_function_type): Add argcount and varargs parameters.
4189 (pr_method_type): Add varargs parameter.
4190 * ieee.c (ieee_ellipsis_type): Remove.
4191 (ieee_function_type): Add argcount and varargs parameters.
4192 (ieee_method_type): Add varargs parameter. Remove most of
4193 function body, and just call ieee_function_type.
4195 * stabs.c: Include "demangle.h". Added several new static
4196 functions not listed below to demangle argument types; they are
4197 all called via stab_demangle_argtypes.
4198 (finish_stab): If the kind of an undefined tag is
4199 DEBUG_KIND_ILLEGAL, use DEBUG_KIND_STRUCT instead. Warn if there
4200 are any pending variable.
4201 (parse_stab): Don't close the function when the block depth goes
4202 to zero. Pass value to debug_end_function.
4203 (parse_stab_string): In case 'T', pass the name to
4205 (parse_stab_type): In case 'x', use stab_find_tagged_type. In
4206 case '#', handle functions with variable numbers of arguments.
4207 (parse_stab_struct_type): Add tagname parameter. Change all
4209 (parse_stab_members): Add tagname and typenums parameters. Change
4210 all callers. If the type of a method is a stub, call
4211 parse_stab_argtypes to demangle the argument types and get the
4212 physical name of the function.
4213 (parse_stab_argtypes): New static function.
4214 (stab_record_variable): For a DEBUG_GLOBAL or DEBUG_STATIC
4215 variable, call debug_record_variable immediately.
4216 (stab_find_tagged_type): New static function.
4218 * debug.h (enum debug_type_kind): Add DEBUG_KIND_ILLEGAL.
4219 (struct debug_write_fns): Add field ellipsis_type. Add id
4220 parameter to start_struct_type, start_class_type, and tag_type.
4221 (debug_make_ellipsis_type): Declare.
4222 (debug_find_named_type): Declare.
4223 (debug_get_type_kind): Declare.
4224 (debug_get_return_type): Declare.
4225 (debug_get_parameter_types): Declare.
4226 (debug_get_fields): Declare.
4227 (debug_get_field_type): Declare.
4228 * debug.c (struct debug_handle): Add fields class_id and base_id.
4229 (struct debug_class_type): Add field id.
4230 (struct debug_method_variant): Rename argtypes to physname.
4232 (debug_ellipsis_type): New static variable.
4233 (ELLIPSIS_P): New macro.
4234 (debug_make_ellipsis_type): New function.
4235 (debug_make_method_variant): Rename argtypes to physname.
4236 (debug_make_static_method_variant): Likewise.
4237 (debug_name_type): Always put types in the global namespace.
4238 (debug_find_named_type): New function.
4239 (debug_find_tagged_type): Treat DEBUG_KIND_ILLEGAL specially,
4240 rather than DEBUG_KIND_VOID.
4241 (debug_get_real_type): New static function.
4242 (debug_get_type_kind): New function.
4243 (debug_get_return_type): New function.
4244 (debug_get_parameter_types): New function.
4245 (debug_get_fields): New function.
4246 (debug_get_field_type): New function.
4247 (debug_write): Initialize base_id.
4248 (debug_write_type): Pass new id argument to tag_type. Handle
4249 DEBUG_KIND_ILLEGAL. Use id for DEBUG_KIND_STRUCT and
4250 DEBUG_KIND_UNION. Handle ellipsis for method arguments.
4251 (debug_write_class_type): Don't dereference kclass if it is NULL.
4253 * prdbg.c (pr_fns): Add pr_ellipsis_type.
4254 (pr_ellipsis_type): New static function.
4255 (pr_pointer_type): If this is a pointer to an array, parenthesize
4257 (pr_start_struct_type): Add id parameter.
4258 (pr_start_class_type): Likewise.
4259 (pr_tag_type): Likewise.
4260 (pr_fix_visibility): Add the visibility to the top of the stack,
4261 not the second element on the stack.
4262 (pr_struct_field): Pop the stack before calling pr_fix_visibility.
4263 (pr_class_static_member): Likewise.
4264 (pr_class_start_method): Don't push a type, just set the method
4265 name in the type on the top of the stack.
4266 (pr_class_end_method): Don't pop the stack.
4267 (pr_class_method_variant): Rename argtypes parameter to physname.
4268 Append const and volatile rather than prepending them. Add a
4269 space after the physname.
4270 (pr_class_static_method_variant): Likewise.
4271 * ieee.c (ieee_fns): Add ieee_ellipsis_type.
4272 (ieee_define_named_type): Use DEBUG_KIND_ILLEGAL rather than
4274 (write_ieee_debugging_info): Likewise.
4275 (ieee_typdef): Likewise.
4276 (ieee_ellipsis_type): New static function.
4277 (ieee_start_struct_type): Add id parameter.
4278 (ieee_start_class_type): Likewise.
4279 (ieee_tag_type): Likewise.
4280 (ieee_class_method_variant): Rename name to physname.
4281 (ieee_class_static_method_variant): Likewise.
4283 * Makefile.in (DEBUG_OBJS): Remove prdbg.o.
4284 ($(OBJDUMP_PROG)): Depend upon, and link against, prdbg.o.
4288 * dlltool.c (make_tail): Changed the order of the sections to avoid
4289 an alignment problem.
4293 * srconv.c (wr_du): Set du.stackfrmt to 0.
4294 (wr_un, wr_sc): Emit all sections, even those with 0 size.
4298 * srconv.c (wr_hd): Space size within segment was being
4299 stored in segment identifier field.
4303 * mpw-config.in (BUILD_NLMCONV, BUILD_SRCONV, SYSINFO_PROG,
4304 BUILD_DLLTOOL): Put definitions for these into makefile when
4305 configuring, instead of always clearing in mpw-make.sed.
4306 * mpw-make.sed: Edit out any host_alias or target_alias settings,
4307 fix pathname to BFD internal include files, remove dependency
4312 * objdump.c (dump_section_header): Add new section flags
4313 SEC_{EXCLUDE,SORT_ENTRIES}.
4317 * objcopy.c (filter_symbols): NULL terminate the output symbols.
4318 (copy_object): Allocate space for a possible extra NULL pointer.
4320 * debug.c (debug_make_undefined_tagged_type): Make sure we are
4321 given a kind of type we can handle.
4322 (debug_write_type): Handle undefined enums and structs.
4323 (debug_write_class_type): Handle undefined classes.
4324 * prdbg.c (pr_enum_type): Handle an undefined enum.
4325 * ieee.c (ieee_enum_type): Likewise.
4329 * Makefile.in: Updated dependencies.
4330 (ALLOCA, MALLOC): Remove variables.
4331 (ADDL_LIBS): Remove $(MALLOC) from definition.
4332 * alloca.c, gmalloc.c: Remove.
4336 * ieee.c: Add global function write_ieee_debugging_info and a
4337 bunch of static functions and structs used to write out IEEE
4338 debugging information.
4339 * budbg.h (write_ieee_debugging_info): Declare.
4341 * ieee.c (struct ieee_type): Add pslot field.
4342 (enum builtin_types): Define.
4343 (ieee_builtin_type): For a pointer, return a pointer to the named
4344 type. Use enum values rather than numbers.
4345 (ieee_alloc_type): New static function.
4346 (ieee_read_type_index): Use ieee_alloc_type.
4347 (parse_ieee_bb): Likewise.
4348 (parse_ieee_ty): Likewise. Use ieee_builtin_type for array range,
4349 rather than making a new integer type. Store the new type in the
4350 slot, if there is one.
4351 (parse_ieee_atn): Treat ATN10 as defining a register variable.
4352 (ieee_regno_to_genreg): Rename from ieee_regno_to_gen. Change all
4354 (ieee_genreg_to_regno): New static function.
4356 * stabs.c (parse_stab_type): Add new typename parameter. Change
4358 (parse_stab_range_type): Add new typename parameter. Change all
4361 * debug.h (struct debug_write_fns): Add tag parameter to
4362 enum_type, start_struct_type, and start_class_type.
4363 * debug.c (debug_write_type): Pass any tag name to
4364 start_struct_type, debug_write_class_type, and enum_type. If
4365 DEBUG_KIND_TAGGED, pass the name in the recursive call.
4366 (debug_write_class_type): Accept a new tag parameter, and pass it
4367 to start_class_type.
4368 * prdbg.c (pop_type): Don't remove '+' character.
4369 (pr_enum_type): Accept and use tag parameter.
4370 (pr_start_struct_type): Likewise.
4371 (pr_start_class_type): Likewise.
4372 (pr_class_baseclass): Adjust algorithm used to find where to put
4374 (pr_tag): Don't bother to insert the tag name.
4376 * objcopy.c: Include budbg.h.
4377 (convert_debugging): New static variable.
4378 (OPTION_DEBUGGING): Define.
4379 (copy_options): Add "debugging".
4380 (copy_usage): Mention --debugging.
4381 (is_strip_section): Skip debugging sections if convert_debugging.
4382 (setup_section, copy_section): Likewise.
4383 (filter_symbols): Skip debugging symbols if convert_debugging.
4384 (copy_object): If convert_debugging, read and write debugging
4386 (write_debugging_info): New static function.
4387 (copy_main): Handle --debugging.
4388 * Makefile.in (DEBUG_OBJS): New variable.
4389 ($(OBJCOPY_PROG)): Depend upon and link against $(DEBUG_OBJS).
4390 ($(STRIP_PROG)): Likewise.
4391 (OBJDUMP_OBJS): Remove variable.
4392 ($(OBJDUMP_PROG)): Use objdump.o $(DEBUG_OBJS) rather than
4394 * binutils.texi, objcopy.1: Document --debugging.
4398 * ieee.c: New file with code to read IEEE debugging information.
4399 * budbg.h (parse_ieee): Declare.
4400 * rddbg.c (read_debugging_info): Handle IEEE flavour files.
4401 (read_ieee_debugging_info): New static function.
4402 * Makefile.in: Rebuild dependencies.
4403 (CFILES): Add ieee.c.
4404 (OBJDUMP_OBJS): Add ieee.o.
4406 * bucomm.h (xrealloc): Change type of first parameter from char *
4411 * Makefile.in: Add targets to automatically rebuild dependencies.
4412 Remove targets which just listed dependencies of .o files.
4413 (DEP): New variable.
4414 (HFILES, GENERATED_HFILES): New variables.
4415 (CFILES, GENERATED_CFILES): New variables.
4416 (underscore.c): Don't do anything, just depend upon stamp-under.
4417 (stamp-under): New target; do what underscore.c used to do.
4418 (nlmconv.o): Depend upon sym.h and ecoff.h.
4419 (.dep, .dep1, dep.sed, dep, dep-in): New targets.
4420 (stage1, stage2, stage3, against, comparison): Remove.
4421 (de-stage1, de-stage2, de-stage3): Remove.
4422 (clean, distclean): Remove stamp-under and dep.sed.
4423 * dep-in.sed: New file.
4425 Implement generic debugging support. Implement a stabs reader and
4427 * budbg.h, debug.c, debug.h, prdbg.c, rddbg.c, stabs.c: New files.
4428 * objdump.c: Include "debug.h" and "budbg.h".
4429 (dump_debugging): New global variable.
4430 (usage): Mention --debugging.
4431 (long_options): Add "debugging".
4432 (display_bfd): Handle --debugging.
4433 * Makefile.in (OBJDUMP_OBJS): New variable.
4434 ($(OBJDUMP_PROG)): Use $(OBJDUMP_OBJS).
4435 * binutils.texi, objdump.1: Document --debugging.
4439 * nm.c ( long_options): Add "--defined-only" option.
4440 (usage): Update for new "--defined-only" option.
4441 (filter_symbols): Handle "--defined-only".
4445 * arparse.y: Include "bucomm.h", not <sysdep.h>.
4446 * nlmheader.y: Don't include "sysdep.h".
4450 * nm.c (print_symdef_entry): Check return value of
4451 bfd_get_elt_at_index.
4455 * configure.in (DLLTOOL_DEFS): Build dlltool for PowerPC if target
4456 is powerpc*-*-win* in addition to powerpc*-*-*pe*.
4460 * objdump.c (endian_string): New static function.
4461 (display_target_list): Use it.
4462 * nlmconv.c (main): Use new bfd_big_endian macro.
4466 * dlltool.c (fill_ordinals): Start from 1 if no other instructions
4471 * Makefile.in (clean): Remove $(DEMANGLER_PROG).1. From Ronald
4476 * mac-binutils.r: Fix copyright and version strings.
4478 * Makefile.in (version): Remove, no longer used.
4482 * mpw-make.sed (install, install-only): Edit in Mac-specific
4487 * dlltool.c (ppc_jtab): The binary glue for PowerPC dll linkage,
4488 including the return instruction.
4489 sinfo: added a preferred alignment field.
4490 (secdata): section data for the PowerPC version.
4491 (make_one_lib_file): More symbols, More sections (pdata, rdata)
4492 (make_tail): Use idata$6 instead of idata$7 for ppc. Also added a
4493 NULL idata$3 descriptor (temporary).
4497 * dlltool.c (fill_ordinals): Don't reference d_export_vec if
4498 there are no exported functions.
4502 * configure: Regenerate with autoconf 2.7.
4506 * dlltool.c (fill_ordinals): Start assigning ordinals at 1.
4508 * Makefile.in (EXPECT): Use $$r, not $${rootme}.
4509 (check): Set r, not rootme.
4513 * configure.in: Use BFD_NEED_DECLARATION.
4514 * acconfig.h: Put NEED_DECLARATION_FPRINTF in @TOP@ section.
4515 * configure, config.in: Rebuild with autoconf 2.6.
4519 * Makefile.in (CC_FOR_TARGET): Use @host@ and @target@, not
4520 $(host_canonical) and $(target_canonical).
4524 Version 2.6 released.
4525 * Makefile.in (VERSION): Update to 2.6.
4529 * Makefile.in (CC_FOR_TARGET): Define.
4530 (check): Pass CC and CFLAGS to runtest.
4532 * nm.c (display_rel_file): Don't require a DYNAMIC object when
4533 dumping the dynamic symbol table.
4535 * objdump.c (compare_symbols): Sort global symbols before local
4536 symbols before debugging symbols.
4537 (objdump_print_address): Don't futz around looking for a global
4538 symbol with the same value.
4542 * dlltool.c: Use FOPEN_* macros rather than "r" or "w".
4544 * dlltool.c (fill_ordinals): Correct memset call.
4548 * mpw-make.sed (DEMANGLER_PROG): Edit out attempts to do anything
4553 * objcopy.c (setup_section): Copy the section lma independently of
4558 * arsup.c (ar_open): Cast malloc return value.
4562 * configure.in, configure (DLLTOOL_DEFS): Added ppc target.
4563 * dlltool.c (MPPC): Added basic PPC definitions.
4567 * configure.in: Don't treat rs6000-*-lynx* specially.
4568 * configure: Rebuild.
4569 * config/rslynx: Remove.
4570 * Makefile.in: Remove @target_makefile_fragment@.
4574 * bucomm.h: Include <sys/types.h>.
4575 * ar.c: Don't include <sys/types.h> or <stdio.h>.
4576 * bucomm.c, dlltool.c, nlmconv.c, objcopy.c, objdump.c: Likewise.
4580 * objdump.c: Include <sys/types.h>.
4582 Permit user to override DEMANGLER_PROG from command line. From
4584 * Makefile.in ($(DEMANGLER_PROG)): Depend upon
4585 $(DEMANGLER_PROG).1.
4586 (install): Don't depend upon $(DEMANGLER_PROG).1. Only install
4587 $(DEMANGLER_PROG).1 if $(DEMANGLER_PROG) is not empty.
4591 * Makefile.in (syslex.o): add -I$(srcdir) if compiling in a
4596 * objdump.c (objdump_print_value): New static function.
4597 (objdump_print_address): Use it. If we need the right section for
4598 the symbol, and we can't find it, print an offset from the section
4599 rather than using a symbol from some other section.
4603 * dlltool.c (no_idata4, no_idata5): New.
4604 (arm_jtab): Use correct encoding of jump instruction.
4605 (usage, main, make_head, make_tail): Act on no_idata4, no_idata5.
4609 * mpw-make.sed: Edit paths to generated y.tab.[ch] files.
4613 * binutils.texi: Change --with-targets to --enable-targets.
4617 * Makefile.in: Remove extraneous tab on otherwise empty line,
4618 which confuses many non-GNU versions of "make".
4622 * dlltool.c (i386_jtab, arm_jtab): New
4623 (gen_lib_file): Rewritten to use bfd.
4627 * Makefile.in (install): Don't give error message if dlltool
4632 * deflex.l: Allow quoting of IDs.
4633 * defparse.y (%union): string deleted.
4634 (command): DESCRIPTION takes ID.
4635 * dlltool.c (gen_def_file): Quote outgoing name if
4636 necessary. Preserve NONAME.
4637 (gen_lib_file): Run ranlib.
4638 (workout_prefix): Deleted.
4639 (main, usage, long_options): Add --as, --ranlib, --ar options.
4643 * dlltool.c (mtable): HOW_ALIGN_LONG, new.
4645 (d_low_ord, d_high_ord, d_named_funcs): New.
4646 (gen_exp_file): Create noname entries correctly.
4647 (gen_lib_file): Dump exports alphabetically.
4648 (process_duplicates): Count nonamed functions.
4649 (fill_ordinals): Keep track of highest ord too.
4650 (mangle_defs): Create alphabetically ordered list of names.
4654 * Makefile.in (TOOL_PROGS): Include DLLTOOL_PROG.
4658 * dlltool.c (add_underscore): New.
4659 (xlate): Use new name.
4660 (main, usage): Update.
4664 * sysinfo.y: Eliminate unused terminals "[" and "]" and unused
4665 nonterminal "name". One s/r conflict remains.
4669 * nm.c (print_symname): Don't try to demangle an empty
4671 * objdump.c (slurp_symtab): Reset symcount if there are
4673 (slurp_dynamic_symtab): Likewise, for dynsymcount.
4674 (disassemble_data): Fix memory leak: free sorted_syms when done.
4675 (display_bfd): Likewise, for syms and dynsyms.
4676 (dump_relocs): Don't print header before possibly generating an
4678 (dump_dynamic_relocs): Likewise.
4680 * ar.1, nm.1, objdump.1, size.1, strings.1, strip.1: Fix typos and
4685 * ar.c (do_quick_append): Comment out.
4686 (replace_members): Add quick argument.
4687 (main): Don't call do_quick_append.
4688 (open_inarch): Don't call quick_append to create an empty archive.
4689 Instead call bfd_openw/bfd_set_format/bfd_close.
4693 * bucomm.c: Always include time.h.
4697 * objdump.c (compare_symbols): Sort gnu_compiled and gcc2_compiled
4698 symbols after other symbols with the same value. Likewise for
4699 symbols which look like file names.
4700 (objdump_print_address): Always chose the first reasonable symbol
4705 * arsup.c (ar_save): Use rename, not unlink/link/unlink.
4709 * strings.c (main): Exit with zero status if no files are given
4710 and standard input is read.
4714 * mpw-config.in: Calculate underscore and put into makefile
4715 fragment, generate config.h.
4716 * mpw-make.sed: New file, sed commands to edit Unix makefile
4718 * mpw-make.in: Remove.
4719 * mac-binutils.r: New file, Mac resources.
4723 * dlltool.c: (gen_exp_file): Always emit a .reloc section if
4725 (imp_name_lab): New.
4726 (gen_def_file): New.
4727 (gen_lib_file): Use imp_name_lab.
4728 (main): Initialize imp_name_lab.
4732 * configure.in: Call AC_HEADER_SYS_WAIT.
4733 * configure: Rebuild.
4734 * config.in: Rebuild.
4735 * dlltool.c: Include "libiberty.h" and "bucomm.h". Don't include
4736 <stdio.h>, <stdlib.h>, or <string.h>. Don't include <wait.h>.
4737 Include <sys/types.h>. Use HAVE_SYS_WAIT_H to control whether to
4738 include <sys/wait.h> or define the wait macros by hand. Don't
4740 (gen_lib_file): Don't assume that sprintf returns the number of
4741 characters; use strlen instead.
4745 * objdump.c (disassemble_data): Don't use the old BFD based
4746 disassembler interface. Make info a const pointer.
4750 * objdump.c (start_address): New variable.
4751 (stop_address): New variable.
4752 (usage): Mention --start-address and --stop-address.
4753 (OPTION_START_ADDRESS, OPTION_STOP_ADDRESS): Define.
4754 (long_options): Add "start-address" and "stop-address".
4755 (disassemble_data): Handle start_address and stop_address.
4756 (dump_data, dump_reloc_set): Likewise.
4757 (main): Don't set seenflag for -l. Handle OPTION_START_ADDRESS
4758 and OPTION_STOP_ADDRESS.
4759 * objcopy.c (parse_vma): Move to bucomm.c.
4760 * bucomm.c (parse_vma): New function, moved in from objcopy.c.
4761 * bucomm.h (parse_vma): Declare.
4762 * binutils.texi, objdump.1: Document new objdump options.
4766 * Makefile.in (maintainer-clean): New target.
4768 * ar.c (replace_members): Don't call write_archive if nothing
4771 * objdump.c (disassemble_data): Add casts to avoid gcc warnings.
4775 * config.in: Rename from config.h.in.
4776 * configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
4777 Check for config.h:config.in when creating stamp-h.
4778 * configure: Rebuild.
4779 * Makefile.in (stamp-h): Depend upon config.in rather than
4780 config.h.in. Set CONFIG_HEADERS to config.h:config.in when
4781 calling config.status.
4783 * Makefile.in (distclean): Remove config.h, stamp-h, and
4786 * nm.c (value_format): Initialize based on BFD64 and
4787 BFD_HOST_64BIT_LONG.
4788 (print_radix): New static variable.
4789 (set_print_radix): Set print_radix. Adjust changes to
4791 (print_value): New static function, to print 64 bit octal and
4792 decimal values correctly.
4793 (print_symbol_info_bsd): Check BFD64, not BFD_HOST_64_BIT. Use
4795 (print_symbol_info_sysv): Use print_value.
4796 (print_symbol_info_posix): Likewise.
4800 * Makefile.in (*.o): Remove incorrect dependencies on
4801 $(BFDDIR)/hosts/std-host.h.
4803 * Makefile.in (INSTALL_DATA): Add -m 644.
4804 (INSTALL_XFORM1): Likewise.
4805 (CC_FOR_BUILD): Set to @CC_FOR_BUILD@ rather than $(CC).
4806 (mostlyclean): Remove config.log.
4807 (distclean): Remove config.cache.
4809 * configure.in: Call BFD_CC_FOR_BUILD and BFD_BINARY_FOPEN.
4810 * configure: Rebuild.
4814 * configure.in: Rewrite to use autoconf.
4815 * aclocal.m4: New file.
4816 * configure: New file, built by autoconf.
4817 * acconfig.h: New file.
4818 * config.h.in: New file, built by autoheader.
4819 * Makefile.in: Various changes for new configure script. Also:
4820 (PROGS): Remove $(SYSINFO_PROG).
4821 (ALL_CFLAGS): Remove $(TDEFINES).
4822 (version.o): Use $(ALL_CFLAGS).
4823 (cplus-dem.o, dlltool.o, nlmconv.o): Likewise.
4824 (sysdump.o): Depend upon bucomm.h and config.h.
4825 (srconv.o, arsup.o, strings.o): Depend upon config.h.
4826 (filemode.o): Don't depend upon ../bfd/sysdep.h.
4827 (bucomm.o): Depend upon config.h, not ../bfd/sysdep.h.
4828 (size.o, objdump.o, nm.o, ar.o, objcopy.o): Likewise.
4829 (nlmheader.o, nlmconv.o): Likewise.
4830 (distclean): Don't remove sysdep.h.
4831 * bucomm.h: Include "ansidecl.h", <stdio.h>, and "config.h".
4832 Include "fopen-same.h" or "fopen-bin.h", based on
4833 USE_BINARY_FOPEN. Include <errno.h>, and declare errno if it is
4834 not a macro. Include <unistd.h>, <string.h>, <strings.h>,
4835 <stdlib.h>, and <fcntl.h> if they are present. Declare strchr,
4836 strrchr, and strstr if no string header file exists. Include
4837 <sys/file.h> if it exists and <fcntl.h> does not. Define
4838 O_RDONLY and O_RDWR if necessary.
4839 * ar.c: Don't include "sysdep.h". Do include <sys/types.h> and
4840 <sys/stat.h>. Use HAVE_GOOD_UTIME_H rather than POSIX_UTIME. Use
4841 HAVE_UTIMES rather than !USE_UTIME. Don't include <errno.h>, and
4842 don't declare errno.
4843 * arsup.c: Don't include <sysdep.h>.
4844 * bucomm.c: Don't include "sysdep.h". Include <stdio.h>,
4845 <sys/types.h>, and <sys/stat.h>. Include <time.h> if it defines
4846 time_t. Define time_t if necessary.
4847 * coffdump.c: Don't include "sysdep.h".
4848 * coffgrok.c, filemode.c, nlmconv.c, size.c: Likewise.
4849 * srconv.c, strings.c: Likewise.
4850 * nm.c: Don't include "sysdep.h". Don't try to define HAVE_SBRK.
4851 * objcopy.c: Don't include "sysdep.h". Include <sys/types.h> and
4853 (simple_copy): Use creat rather than assuming that O_CREAT is
4855 * objdump.c: Don't include "sysdep.h". Use
4856 NEED_DECLARATION_PRINTF rather than !FPRINTF_ALREADY_DECLARED.
4857 * sysdump.c: Include "bfd.h" and "bucomm.h". Don't include
4858 "sysdep.h" or <stdlib.h>.
4859 (dump_symbol_info): Rename from symbol_info. Change all callers.
4863 * configure.in (host_makefile_frag): Don't set. Substitute for
4864 @CC@, @CFLAGS@, @HDEFINES@ and @LDFLAGS@ in Makefile.
4865 * Makefile.in (AR_FLAGS): Set to rc rather than qv.
4866 (CC): Define as @CC@.
4867 (CFLAGS): Set to @CFLAGS@.
4868 (LDFLAGS): Define as @LDFLAGS@.
4869 (ALL_CFLAGS): Use @HDEFINES@ rather than $(HDEFINES).
4871 * configure.in: Don't bother to call config.bfd for each target.
4872 Just call it for the default target, and use the shell variable to
4873 decide whether underscores are used.
4877 * configure.in: match i[3-6]86-*-win32, not just i386-*-win32.
4881 * dlltool.c (add_indirect): New.
4883 (gen_exp_file): Timestamp should be 0. Insert prefix when
4884 needed. New code for indirection.
4885 (gen_lib_file): Timestamp should be 0. Insert prefix
4887 (usage): Document --add-indirect.
4888 (main): Cope with new option.
4890 * objdump.c (dump_private_headers): New.
4891 (usage): Document new option.
4892 (long_option): Add private-headers.
4893 (dump_bfd_private_header): New.
4894 (main): Cope with new option.
4898 * dlltool.c (run): Add missing 3rd arg to waitpid.
4902 * Makefile.in (TOOL_PROGS): Include dlltool if needed.
4906 * dlltool.c (rva): Deleted.
4907 (rvaafter, rva_before): Use new assembler pseudo.
4908 (flush_page, gen_exp_file, gen_lib_file): Use new way of RVAing.
4909 (gen_exp_file): Don't generate .edata if no need.
4910 (gen_lib_file): Don't make timestamp.
4911 Put _iname in idata$7.
4912 (workout_prefix): Fix memory initialization bug.
4913 (usage): Tidy up, delete many single char options.
4914 (main): rva option is gone.
4918 * dlltool.c (options): image-base is a synonym for rva.
4919 (gen_lib_file): Put dll name into ibase$7.
4923 Modified to generate archives and objects rather than .s files.
4924 * dlltool.c (run) New function.
4925 (gen_exp_file, gen_lib_file): Use run.
4926 (workout_prefix): New.
4927 (usage): Document new options.
4928 (main): Parse new options.
4932 * dlltool.c (gen_exp_file): Fix RVA handling.
4933 (rva_s, rva_n): Delete.
4937 * nm.c (main): Ignore -e.
4941 * Makefile.in (config.texi): New target. Write out a setting for
4942 texinfo variable VERSION.
4943 (binutils.dvi, binutils.info): Depend on it.
4944 * binutils.texi: Include it, and reference @value{VERSION} instead
4945 of explicitly specifying 2.2(!).
4949 * coffgrok.c (do_type): Handle array dimensions the same way gdb
4954 * dlltool.c (mtable): New fields.
4955 (ASM_RVA_BEFORE, ASM_RVA_AFTER): New.
4956 (flush_page): Use new macros.
4960 * objcopy.c (mark_symbols_used_in_relocations): Handle sections
4961 with no relocations.
4962 * coffgrok.c (do_sections_p1): Likewise.
4966 * strings.c (print_strings): For compatibility with existing
4967 strings programs, print strings which are not terminated with a
4968 null byte or a newline.
4969 * binutils.texi, strings.1: Update documentation accordingly.
4971 * ar.c (replace_members): For compatibility with existing ar
4972 programs, permit users to add the same file multiple times.
4976 * strings.c (DATA_FLAGS): Remove SEC_DATA.
4977 (main): If no file names are given, scan standard input.
4978 * binutils.texi, strings.1: strings now scans non-data sections by
4983 * srconv.c (wr_hd): Set afl field to 4 for bfd_arch_sh.
4984 (writeINT): When size == -2, use 2 bytes for the h8300 and 4 bytes
4987 * sysdump.c (fillup): Return size - 1, the last byte is a checksum
4988 and shouldn't be counted.
4989 * sysroff.info (hd): Changed segment identifier from a byte to a 1
4990 bit field. The sysroff 2.0-01 specification seems to be in error
4991 here. Reduce width of following "spare" field from 4 to 3 bits.
4992 (rl): Changed order and width of first 4 bitfields to correspond
4993 to sysroff specification.
4994 (dln_head, dln_inside, dln_tail): Removed.
4998 * nm.c (sort_symbols_by_size): Enclose expression being casted
4999 in parens so result is casted, not just first operand. Can't
5000 do pointer arithmetic on void* pointers.
5004 * sysdump.c (dh): Changed format of output to be 16 hex digits
5005 followed by 16 ascii characters, similar to Emacs' hexl-mode,
5006 to make it easier to read.
5007 (xcalloc): fix typo.
5011 * srconv.c (wr_tr): Write out handcrafted tr block.
5012 (walk_tree_symbol): Use evallen and evalue instead of
5013 vallen & value because of corresponding changes in
5016 * sysdump.c (sysroff_swap_tr_in, sysroff_print_tr_out): New
5019 * sysroff.info (tr): the tr block is a special case --- a block
5020 without contents --- which can't be handled by generated code.
5021 (den, dpp): only first byte is present for DENend, DPPend.
5022 (dsy): describe a conditional portion of block, rename some fields.
5023 (dps): describe a conditional portion of block.
5026 * sysinfo.y (yyerror): write error message to standard error.
5030 * Makefile.in (DISTSTUFF): Add arparse.h and sysinfo.h.
5031 (mostlyclean): Remove y.output.
5032 (clean): Remove sysroff, sysroff.c, sysroff.h, and sysinfo.
5034 * nlmconv.c (powerpc_mangle_relocs): Cast memset arg to size_t.
5035 * objcopy.c (copy_object): Likewise.
5037 * nm.c (HAVE_SBRK): Define execpt on amigados and WINDOWS_NT.
5038 (struct size_sym): Define.
5039 (show_stats): New static variable.
5040 (long_options): Add undocumented option "stats".
5041 (main): Print memory stats if requested.
5042 (sort_bfd, sort_dynamic, sort_x, sort_y): New static variables.
5043 (numeric_forward): Use minisymbols rather than asymbols.
5044 (non_numeric_forward): Likewise.
5045 (size_forward1): Rename from size_forward. Use minisymbols.
5046 (size_forward2): New static function.
5047 (sort_symbols_by_size): Take new arguments dynamic, size, and
5048 symsizep. Use minisymbols. Don't store the size back in the
5049 symbol; store in a newly allocate struct size_sym array.
5050 (display_rel_file): Read minisymbols rather than asymbols. Set
5051 sort_* variables. Call print_size_symbols if sorting by size.
5052 (filter_symbols): Take new arguments dynamic and size. Use
5054 (print_symbols): Likewise. Call print_symbol for actual printing.
5055 (print_size_symbols): New static function.
5056 (print_symbol): New static function.
5060 * objdump.c (dump_section_stabs): Only print each stabs section
5062 (compare_relocs): Make it clear to gcc that this always returns a
5067 * objcopy.c (simple_copy): Preserve errno on failure.
5068 (smart_rename): Print error mesage if simple_copy fails.
5072 * sysdump.c: re-indented file.
5073 (module): read blocks sequentially instead of trying to parse
5074 them, as that would require changing the parser recognize the
5075 difference between a DPSstart and DPSend block.
5076 (getone): Add break's between switch blocks as appropriate.
5077 (object_body_list): parse blocks according to sysroff spec.
5081 * sysroff.info: re-indented file, prior formatting was confusing
5082 because it was indentation did not reflect nesting of conditional
5083 records. Change "space size within segment" record in hd record
5086 * sysinfo.y (cond_it_field): Use xcalloc instead of calloc.
5088 * srconv.c (wr_cs): Reformatted cs header array, tag each byte
5089 with a comment describing the field.
5090 (wr_unit_info): Use SEEK_SET macro instead of constant 0.
5091 (main): Use FOPEN_WB macro instead of literal "wb".
5092 * sysroff.info: Remove fdl (dfl) field from cs block. Compare
5093 ptr->type with ED_TYPE_CONST instead of constant 2 in ed block.
5097 * nm.c (size_forward): Check yf against yn, not xn.
5099 * objcopy.c (copy_archive): Record all output BFD's, and close
5100 them before unlinking them and removing the temporary directory,
5101 to avoid NFS problems.
5103 * ar.c (replace_members): In verbose messages, use 'r' when
5104 replacing a member, and 'a' when adding one.
5106 * ar.c (ar_truncate): New static variable.
5107 (normalize): Change return type to const char *. Add abfd
5108 argument. Change all callers. If ar_truncate, chop the filename
5109 to abfd->ar_max_namelen.
5110 (main): For the 'f' modifier, set ar_truncate to true. Don't
5111 change quick_append to replace if ar_truncate is true.
5112 (do_quick_append): If ar_truncate, set BFD_TRADITIONAL_FORMAT.
5113 (write_archive): Likewise.
5114 * binutils.texi, ar.1: Document 'f' modifier.
5116 * objcopy.c (enum strip_action): Define strip_unneeded.
5117 (OPTION_STRIP_UNNEEDED): Define.
5118 (strip_options): Add "strip-unneeded".
5119 (copy_options): Likewise.
5120 (copy_usage): Mention --strip-unneeded.
5121 (strip_usage): Likewise.
5122 (is_strip_section): Strip debugging sections if strip_unneeded.
5123 (filter_symbols): If strip_unneeded, only keep BSF_KEEP symbols.
5124 (copy_object): If strip_all, discard symbols without checking
5126 (copy_object): Call filter_symbols if strip_unneeded.
5127 (setup_section): Strip debugging sections if strip_unneeded.
5128 (copy_section): Likewise.
5129 (strip_main): Handle OPTION_STRIP_UNNEEDED.
5130 (copy_main): Likewise.
5131 * binutils.texi, objcopy.1, strip.1: Document --strip-unneeded.
5135 * configure.in (i386-*-win32): New configuration.
5136 * dlltool.c (killat, xlate, usage, long_options, main):
5137 Understand and cope with -k option.
5141 * ar.c: (extract_file): Change "#if POSIX_UTIME" to
5142 "#ifdef POSIX_UTIME" to match other tests of POSIX_UTIME
5143 and avoid lossage when POSIX_UTIME is not defined at all.
5147 * ar.c: (print_contents.c, extract_file, do_quick_append):
5148 Malloc buffers rather than allocate on stack (so it works
5150 * deflex.l: Names can have an @ in them.
5151 * dlltool.c: Loads of stuff. Can now generate .imp files which
5156 * mpw-make.in (demangle.c.o): Remove.
5157 (arparse.h): Depend on arparse.c instead of arparse.y.
5161 * Makefile.in (DISTSTUFF): Don't include info here.
5162 (diststuff): Include it here.
5163 (realclean): Remove *.info.
5165 * objdump.c (compare_relocs): If relocation entries have the same
5166 address, keep them in file order.
5170 * dlltool.c: Change names of generated files. .*.s-> -*.s
5172 * objdump.c (dump_section_stabs): Check for names
5173 which are supersets of selected names.
5177 * dlltool.c (mtable, ARM jump): Must redirect via pc offsetable ptr.
5181 * deflex.l, defparse.y, dlltool.c: New files.
5182 * Makefile.in, configure.in: Support for them.
5186 * sysdump.c: Include sysdep.h
5187 (main): Open input with FOPEN_RB.
5191 * objdump.c (wide_output): New flag variable.
5192 (usage): Print new -w, --wide options.
5193 (long_options): Add --wide support.
5194 (dump_section_header): If --wide, don't print a newline between
5195 the section's first line and the flags.
5196 (objdump_print_address): Use unsigned comparisons for the binary
5198 (disassemble_data): If --wide, don't put a \n between the
5199 disassembly output and relocation information.
5200 (main): Support -w option being the same as --wide.
5206 * objcopy.c (smart_rename): make it smarter, clean up
5211 * Makefile.in: Delete lines with lots of #### because four or more
5212 indicate a point for makefile fragment substitution.
5216 * configure.in: Don't build nlmconv on PowerPC eabi any more, it
5221 * Makefile.in (EXPECT): Define.
5222 (RUNTEST): Use one in source tree if present.
5223 (check): Set `rootme' for $(EXPECT).
5227 * srconv.c (main): Add support for -n option which disables
5228 prescan of common symbols.
5229 (wr_ob): If reading past the end of a section, fill with zeros.
5233 * objdump.c (dump_section_header): Display load address after
5234 virtual memory (run-time) address.
5238 * Makefile.in (cplus-dem.o): Pass -DVERSION='"$(VERSION)"' to the
5240 (DEMANGLER_PROG): No longer uses version.o.
5244 Merge in support for Mac MPW as a host.
5245 (Old change descriptions retained for informational value.)
5247 * mpw-config.in (TDEFINES): Define as empty in makefile frag.
5249 * mpw-config.in: Create mk.tmp, define ARCHDEFS in it.
5251 * mpw-config.in: New file, MPW configure fragment for binutils.
5252 * mpw-make.in (install-only): New target.
5253 (install): Also depend on install-only.
5255 * mpw-make.in (cplusfilt): Renamed from c++filt.
5256 (INCLUDES): Add more paths.
5258 * mpw-make.in: New file, MPW makefile fragment for binutils.
5259 (Normally automatically generated from Makefile.in.)
5263 * ar.c (write_archive): Call make_tempname to get output file
5264 name, rather than using a fixed name based on the input file.
5266 * objcopy.c (make_tempname): Copy from here...
5267 * bucomm.c (make_tempname): ...to here, and make global.
5268 * bucomm.h (make_tempname): Declare.
5272 * strings.c: Include "bfd.h" before other headers. Include
5274 * bucomm.c (print_arelt_descr): Cast st_uid and st_gid to long,
5275 and print them with %ld.
5279 * objcopy.c (strip_options): Add --keep-symbol.
5280 (copy_options): Likewise.
5281 (copy_usage): Mention --keep-symbol and -K.
5282 (strip_usage): Likewise.
5283 (keep_symbols): New static variable.
5284 (is_strip_symbol): Adjust the return value according to
5286 (strip_main): Handle -K. For -N, check that -K was not given.
5287 (copy_main): Likewise.
5288 * binutils.texi, objcopy.1, strip.1: Document -K.
5292 * objcopy.c (copy_archive): Check result of mkdir.
5293 (copy_main): Cast an xmalloc result.
5295 * objdump.c (usage): Break long format string into shorter ones.
5299 * bucomm.c (list_supported_targets): New function.
5300 * bucomm.h (list_supported_targets): Declare.
5301 * ar.c (usage): Call list_supported_targets.
5302 * nm.c (usage): Likewise.
5303 * objcopy.c (copy_usage, strip_usage): Likewise.
5304 * objdump.c (usage): Likewise.
5305 * size.c (usage): Likewise.
5306 * strings.c (usage): Likewise.
5310 * bucomm.c (print_arelt_descr): Cast st_size to long before
5311 passing it to fprintf.
5315 * objcopy.c (struct section_list): Add fields remove, set_flags,
5316 and flags. Change adjust from boolean to enum.
5317 (remove_sections): Remove static variable.
5318 (sections_removed): New static variable.
5319 (copy_options): Add --set-section-flags.
5320 (copy_usage): Mention --set-section-flags.
5321 (parse_flags): New static function.
5322 (find_section_list): New static function.
5323 (is_strip_symbol): Change return type from int to boolean.
5324 (is_strip_section): New static function.
5325 (filter_symbols): Call is_strip_section.
5326 (copy_object): When adding sections, check for specified flags or
5327 VMA. Call filter_symbols if any sections are being removed.
5328 (setup_section): Use find_section_list function rather than
5329 looking through remove_sections and adjust_sections. Handle
5330 --set-section-flags.
5331 (copy_section): Use find_section_list rather than looking through
5333 (strip_main): Use find_section_list instead of adding items to
5335 (copy_main): Use find_section_list instead of adding items to
5336 sections_removed and adjust_sections. Handle --set-section-flags.
5337 * binutils.texi, objcopy.1: Document --set-section-flags.
5341 * objdump.c (with_source_code): New global variable.
5342 (usage): Mention -S/--source.
5343 (long_options): Add --source.
5344 (prev_functionname, prev_line): New static variables.
5345 (struct print_file_list): Define.
5346 (print_files): New static variable.
5347 (skip_to_line, show_line): New static functions.
5348 (disassemble_data): Call show_line to handle -l and -S.
5350 * binutils.texi, objdump.1: Document -S/--source.
5354 * objcopy.c (copy_usage): Rename parameter to avoid shadowing.
5355 (strip_usage): Likewise.
5357 * objcopy.c (struct section_add): Define.
5358 (add_sections): New static variable.
5359 (copy_options): Accept --add-section.
5360 (copy_usage): Mention --add-section.
5361 (copy_object): Add sections from the add_sections list.
5362 (copy_main): Handle --add-section.
5363 * binutils.texi, objcopy.1: Document --add-section.
5367 * objdump.c (disassemble_data): Pass section offset, not absolute
5368 address, to bfd_find_nearest_line.
5370 * nlmconv.c (powerpc_mangle_relocs): Don't use const with
5375 * objdump.c (compare_symbols): Use bfd_asymbol_value (VAR) rather
5377 (objdump_print_address): Likewise.
5378 (disassemble_data): Don't change the symbol values. It can
5379 confuse bfd_canonicalize_reloc.
5383 * configure.in: Add support for powerpc-*-ebai.
5385 Wed Jan 18 10:02:12 1995 Steve Chamberlain <sac@splat>
5387 * coffdump.c: Include sysdep.h.
5388 (dump_coff_type): Handle coff_secdef_type.
5389 * coffgrok.c : Include sysdep.h.
5390 * srconv.c: Include libiberty.h
5391 (absolute_p, dty_start, dty_end, dump_tree_structure): Remove.
5395 * coffdump.c (dump_coff_scope): Cast pointer to unsigned long for
5397 * coffgrok.c: Include bucomm.h. Don't declare xmalloc.
5398 (push_scope): Declare type of parameter link.
5399 * size.c: Include libiberty.h.
5400 * srconv.c: Include bucomm.h.
5401 (find_base): Declare at top of file.
5402 (wr_hd): Add default case to architecture switch.
5403 (wr_dps_start): Declare type of parameter nest.
5404 (wr_du): Comment out variables used only in commented out blocks.
5405 (wr_dus): Remove unused variable i.
5406 (wr_sc): Remove unused variables myinfo, low, and high.
5407 * strings.c: Include libiberty.h.
5408 * sysdump.c: Include <ctype.h>.
5412 * ar.c (main): Ignore 'f' modifier used on HP/UX 9.
5416 * ar.c, nm.c, objcopy.c, objdump.c: Include progress.h.
5417 * ar.c, nm.c, objcopy.c, objdump.c (main): Add START_PROGRESS
5419 * ar.c (map_over_members, open_inarch): Call PROGRESS.
5420 * nm.c (main, display_archive, filter_symbols, print_symbols):
5423 * objcopy.c (copy_usage): Break up long usage string.
5427 * objcopy.c (copy_object): Don't bother setting status after
5428 nonfatal() "call", because it won't return.
5432 * nlmconv.c (powerpc_mangle_relocs): Don't switch a reloc to use
5433 the section symbol if the symbol is undefined.
5437 * objcopy.c (add_strip_symbol): Cast return value of xmalloc.
5441 * ar.c (replace_members): Pass current->filename to normalize when
5442 checking for duplicates, because the filename of a newly added
5443 file will not have been normalized yet.
5447 * ar.c (main): Don't call do_quick_append if any of the archive
5448 names are longer than 14 characters.
5450 * objcopy.c (main): Fix is_strip test. From
5455 * objcopy.c (add_strip_symbol): New function, adds a name to an
5456 explicit list of symbols to strip.
5457 (is_strip_symbol): New function, reports whether the name argument
5458 is in the explicit list.
5459 (filter_symbols): Check against is_strip_symbol above all.
5460 (strip_main): Recognize -N option. If used, don't default to
5462 (copy_main): Recognize -N option.
5463 (strip_usage): Document -N and --strip-symbol options.
5464 (copy_usage): Ditto.
5465 * objcopy.1, strip.1, binutils.texi: Document -N and
5466 --strip-symbol options.
5470 * objdump.c (display_target_list, display_info_table): Pass an
5471 array to tmparg, rather than NULL, since some systems can't handle
5474 * objcopy.c (copy_archive): Keep a list of the names of the
5475 temporary files we created. Close each input BFD after we open
5480 * Makefile.in (VERSION): Bump to 2.5.3.
5484 * Makefile.in (install-info): Install info files from whatever
5485 directory they were found in.
5487 Patch from DJ Delorie:
5488 * configure.bat: do c++filt -> cxxfilt right
5490 * sysinfo.y: Include system header files early, so any potential
5491 declaration of abort() occurs before its use.
5493 * strings.c (strings_file): Try opening the file in binary mode
5498 * ar.c (main): Treat ar qs like ar rs.
5502 * objcopy.c (gap_fill): Explicitly initialize, for clarity.
5503 (pad_to_set, pad_to): New static variables.
5504 (copy_options): Accept --pad-to.
5505 (copy_usage): Mention --pad-to.
5506 (copy_object): Support --pad-to.
5507 (compare_section_vma): Sort non loadable sections to the front.
5508 Sort sections with the same VMA by size.
5509 (copy_main): Handle --pad-to.
5510 * binutils.texi, objcopy.1: Document --pad-to.
5514 * objcopy.c (gap_fill_set, gap_fill): New static variables.
5515 (copy_options): Accept --gap-fill.
5516 (copy_usage): Mention --gap-fill.
5517 (copy_object): Support --gap-fill.
5518 (get_sections, compare_section_vma): New static functions.
5519 (copy_main): Handle --gap-fill.
5520 * binutils.texi, objcopy.1: Document --gap-fill.
5524 * Makefile.in (check): Add a dummy else clause to the if
5527 * objcopy.c (copy_object): Revert yesterday's change.
5528 * binutils.texi, objcopy.1: Remove special mention of --set-start
5529 and `binary' output format.
5533 * objcopy.c (copy_object): If the output file format is `binary',
5534 and the start address was not set using --set-start, default the
5535 start address to zero. This hack is because the `binary' output
5536 file format uses the start address to set the virtual address of
5537 the first byte in the file.
5538 * binutils.texi, objcopy.1: Add some notes on generating S-records
5541 * nm.c (print_symdef_entry): Call print_symname to print the
5542 symbol name, so that --demangle works.
5544 * Makefile.in (mostlyclean): Remove tmpdir.
5546 * objcopy.c (struct section_list): Add fields used, adjust, val.
5547 (adjust_start, set_start_set, set_start): New static variables.
5548 (adjust_section_vma, adjust_sections): New static variables.
5549 (copy_options): Add --adjust-start, --adjust-vma,
5550 --adjust-section-vma, --adjust-warnings, --no-adjust-warnings,
5552 (parse_vma): New static function.
5553 (copy_usage): Mention new options.
5554 (copy_object): Handle --set-start and --adjust-start.
5555 (setup_section): Correct type of last argument to PTR. Set used
5556 field if section is removed. Handle --adjust-vma and
5557 --adjust-section-vma.
5558 (copy_section): Correct type of last argument to PTR.
5559 (mark_symbols_used_in_relocations): Likewise.
5560 (strip_main): Clear used field when handling -R.
5561 (copy_main): Handle new options.
5562 * binutils.texi (objcopy): Document new options.
5563 * objcopy.1: Document new options.
5567 * configure.in (configdirs): Remove definition--testsuite is no
5569 * Makefile.in (testsuite): Remove target.
5570 (site.exp): New target.
5572 (clean, distclean): Don't recur into testsuite directory.
5576 * Makefile.in (VERSION): Updated to 2.5.
5577 * Version 2.5 released.
5581 * Makefile.in (sysdump.o): Depends upon sysroff.c.
5585 * nlmconv.c (link_inputs): Pass -Ur flag to ld so that the
5586 ctor/dtor tables needed by C++ programs are built.
5590 * Makefile.in (srconv.o): Add dependence on sysroff.c.
5594 * configure.in: Use ${config_shell} when running config.bfd.
5596 * Makefile.in (sysroff.h): Split target away from sysroff.c.
5597 (srconv.o, sysdump.o): New targets.
5598 (srconv, sysdump): Don't depend upon sysroff.c.
5602 * Makefile.in (arparse.c): Don't ignore errors from mv.
5603 (sysinfo.c): Likewise. Also, depend upon arparse.c, to prevent a
5604 parallel make from trying to build both arparse.c and sysinfo.c
5606 (nlmheader.c): Similar change.
5607 (arparse.h): Separate target from arparse.c, so that a parallel
5608 make does not try to build both at once. Depend upon arparse.c.
5609 (sysinfo.h): Similar change.
5611 * objdump.c (disassemble_data): Pass the reloc buffer to free, not
5612 the pointer used to loop over the relocs.
5616 * objdump.c (disassemble_data): Cast result of xmalloc.
5620 * objdump.c (sorted_syms, sorted_symcount): New global variables.
5621 (objdump_print_address): Use sorted_syms and sorted_symcount
5622 instead of syms and symcount.
5623 (disassemble_data): Don't bother to get the relocs before looping
5624 over the sections. Before filtering and sorting the symbol table,
5625 copy it into sorted_syms.
5629 * objdump.c (struct objdump_disasm_info): Add field require_sec.
5630 (objdump_print_address): If aux->require_sec, require that the
5631 symbol be in aux->sec even if HAS_RELOC is not set. If we can't
5632 find a smaller symbol in the right section, look for a larger one.
5633 (disassemble_data): Set aux.require_sec around the
5634 objdump_print_address call for the instruction address.
5638 * ar.c: Call xexit rather than exit.
5639 (output_filename, output_file, output_bfd): New static variables.
5640 (remove_output): New static function.
5641 (main): Call xatexit (remove_output). Call xexit rather than
5643 (extract_file): Set output_filename and output_file while output
5645 (write_archive): Likewise, but use output_bfd, not output_file.
5646 * arsup.c: Include libiberty.h. Call xexit rather than exit.
5647 * bucomm.c: Likewise.
5649 * objdump.c (disassemble_all): New global variable.
5650 (usage): Document --disassemble-all.
5651 (long_options): Add disassemble-all as a synonym for -D.
5652 (compare_symbols): Make pointers const.
5653 (compare_relocs): New static function.
5654 (disassemble_data): Rename disassemble to disassemble_fn to avoid
5655 shadowing. If dump_reloc_info, print relocs along with
5656 disassembly. Skip sections which are not SEC_CODE unless
5657 disassemble_all or only is set.
5658 (display_bfd): Don't call dump_relocs if disassemble is set.
5659 (main): Accept and handle -D.
5660 * binutils.texi: Document -D/--disassemble-all.
5661 * objdump.1: Likewise.
5665 * objdump.c (disassemble_data): Initialize prevline to 0. Make
5666 prev_function non const. Copy functionname into an malloc buffer
5667 when setting prev_function, instead of assuming that the string
5670 * nm.c: Include libiberty.h.
5671 (sort_by_size): New static variable.
5672 (long_options): Add --size-sort.
5673 (usage): Mention --size-sort.
5674 (numeric_forward): Make static. Change from void * to PTR.
5675 (numeric_reverse): Likewise.
5676 (non_numeric_forward, non_numeric_reverse): Likewise.
5677 (sorters): Change declaration from void * to PTR.
5678 (size_forward, sort_symbol_by_size): New static functions.
5679 (display_rel_file): Handle sort_by_size.
5680 (filter_symbols): If sort_by_size, discard absolute and undefined
5682 * binutils.texi (nm): Document --size-sort.
5683 * nm.1: Document --size-sort.
5687 * objcopy.c (copy_main): Initialize input_filename and
5688 output_filename to NULL.
5692 * Makefile.in (version.o): Depend upon Makefile, so that version.o
5693 gets rebuilt when make variable VERSION is changed.
5695 * objdump.c (dump_section_header): Print the SEC_NEVER_LOAD flag.
5699 * configure.in: Change i[34]86 to i[345]86.
5703 * ar.c (ranlib_touch): Don't update the archive map if there isn't
5708 * ar.c: Include libiberty.h.
5709 (inarch): Remove variable.
5710 (map_over_members): Make static. Add arch argument, and use it
5711 instead of inarch. Change all callers.
5712 (main): Treat --version as -v. Accept -t argument. Accept any
5713 number of archive arguments. Catch and use open_inarch return
5714 value, rather than using inarch.
5715 (open_inarch): Return newly opened BFD, rather than using inarch.
5716 (do_quick_append): Make archive_filename const.
5717 (write_archive): Add iarch argument, and use it instead of inarch.
5719 (delete_members, move_members, replace_members): Likewise.
5720 (ranlib_only): Don't exit on success. Catch and use open_inarch
5722 (ranlib_touch): New function.
5723 * arsup.h (map_over_members): Don't declare.
5724 (ar_end, ar_extract): Declare.
5725 (open_inarch): Change return value in declaration to bfd *.
5726 * arsup.c (map_over_list): Make static. Always pass two arguments
5727 to function. Add arch argument, and use it instead of inarch.
5729 (ar_directory_doer): Make static. Add ignored second argument.
5731 (ar_directory): Use open_inarch return value rather than inarch.
5732 (ar_addlib_doer): Make static.
5733 (ar_addlib): Use open_inarch return value rather than inarch.
5734 (ar_extract): Remove unused local variable abfd.
5738 Add support for removing named sections to objcopy and strip.
5739 * objcopy.c (struct section_list): Define.
5740 (remove_sections): New static variable.
5741 (strip_options, copy_options): Add remove-section.
5742 (copy_usage, strip_usage): Mention -R and --remove-section.
5743 (setup_section): If section is in remove_sections list, ignore it.
5744 (copy_section): Likewise.
5745 (strip_main, copy_main): Handle -R.
5746 * binutils.texi, objcopy.1, strip.1: Document new options.
5750 * nlmconv.c (powerpc_mangle_relocs): Rename symvalue to sym_value,
5751 so as not to conflict with the symvalue typedef in bfd.h.
5755 * nlmheader.y: Per current NetWare docs, accept a revision number
5756 of 0 and treat a revision number greater than 26 as 0.
5760 * objdump.c (objdump_print_address): Correct handling of end of
5761 symbols when looking for next symbol with a different value.
5765 * nm.c (numeric_forward): Treat undefined symbols as "less than"
5766 defined symbols with zero values. If numeric values are equal, or
5767 both symbols are undefined, sort alphabetically. Don't assume
5768 that the difference of two bfd_vma values will truncate to "int"
5769 and still have the same sign.
5770 (numeric_reverse): Call numeric_forward and negate the result.
5771 (print_symbol_info_bsd): For undefined symbols, print leading
5772 spaces equivalent to the width of a printed bfd_vma, rather than
5773 assuming that 8 will look right.
5777 * coffgrok.c (doit): Zero all fields of new structure.
5778 * srconv.c (sysroff_swap_*_out): Remove redundant trailing arg.
5779 * sysinfo.y: Generate sysroff_swap_*_out without requiring extra
5784 * nlmheader.y: Make "stack" and "stacksize" synonyms in the lexer
5785 rather than the parser.
5789 * config/mh-alphaosf, config/mh-apollo68v, config/mh-delta88:
5794 * objdump.c (slurp_dynamic_symtab): Try to get the dynamic symbols
5795 even if the bfd is not marked DYNAMIC. ELF executables are not
5796 marked DYNAMIC, but do have dynamic symbols.
5800 * coffgrok.c (do_where): Make data with no type 'int'.
5801 (do_define): Keep info on source file of a symbol.
5802 * coffgrok.h (coff_symbol): New field.
5803 * srconv.c (PROGRAM_VERSION): Now 1.3
5804 (wr_rl): Use external ref number for symbol.
5805 (wr_dus): Only keep one source file per debug unit.
5806 (wr_dln): Always emit line numbers for first source file,
5807 (wr_globals): Emit globals in the du of their owning source file.
5811 * nlmheader.y: Null terminate var_hdr->threadName.
5815 * Makefile.in (syslex.o, sysinfo.o): Permit C source files to be
5816 in $(srcdir), as they will be for FSF releases.
5820 * nlmconv.c (setup_sections): Preserve existing section flags when
5821 copying in flags from a new section.
5825 * objcopy.c: Include libiberty.h.
5826 (copy_file): If output_target is NULL, set it to the target of the
5831 * nlmconv.c (link_inputs): Fixed memory allocation bug.
5835 * configure.in: Change --with-targets to --enable-targets.
5839 * Makefile.in (sysinfo): Does not depend upon $(ADDL_LIBS).
5841 * nlmconv.c (powerpc_build_stubs): Don't generate the PowerPC
5842 NetWare custom header; no longer needed.
5843 (powerpc_mangle_relocs): Convert relocs against the uninitialized
5844 data section into relocs against the data section.
5846 * configure.in: Set nlmconv_defs to -DNLMCONV_cputype for all the
5847 netware targets. Write it into Makefile as NLMCONV_DEFS.
5848 * Makefile.in (nlmconv.o): Pass $(NLMCONV_DEFS) to $(CC).
5849 * nlmconv.c: Only compile code for specific CPU types if
5850 NLMCONV_cputype is defined.
5852 * nlmconv.c (main): Change uses of bfd_abs_section, etc., to use
5853 bfd_abs_section_ptr or bfd_is_abs_section, etc.
5854 (i386_mangle_relocs, alpha_mangle_relocs): Likewise.
5855 (powerpc_build_stubs): Likewise.
5856 * nm.c (filter_symbols, print_symbols): Likewise.
5857 * objcopy.c (filter_symbols): Likewise.
5858 (mark_symbols_used_in_relocations): Likewise.
5859 * objdump.c (remove_useless_symbols, dump_relocs): Likewise.
5860 * size.c (sysv_internal_printer): Likewise.
5864 * Makefile.in (MANPAGES): Remove $(DEMANGLER_PROG).
5865 (install): Install it explicitly, from build dir, not srcdir.
5869 * objdump.c: Don't include elf/internal.h.
5870 (bfd_elf_find_section): Don't declare.
5871 (read_section_stabs): No special handling for ELF. Always read
5876 * configure.in: Set UNDERSCORE in Makefile based on result of
5877 invoking config.bfd with a second argument of ``_''.
5878 * Makefile.in (underscore.c): Depend upon Makefile. Don't try to
5879 run $(CC) and $(NM), just use $(UNDERSCORE). Create via temporary
5881 (demangle.o): Remove target.
5882 ($(NM_PROG)): Don't depend upon demangle.o, and don't link against
5883 demangle.o. It's in libiberty anyhow.
5884 (cplus-dem.o): Don't depend upon demangle.o.
5885 * binutils.texi: Mention -n and --no-strip-underscores arguments
5890 * nm.c (long_options): Add --no-demangle to turn off --demangle,
5891 and --no-cplus for Linux compatibility.
5892 (usage): Mention --no-demangle.
5893 * binutils.texi: Document --no-demangle.
5897 * nm.c: HOST_64_BIT was renamed to BFD_HOST_64_BIT.
5899 * objcopy.c (copy_archive): Make the temporary directory in the
5900 same directory as the output BFD, since we may not have write
5901 permission on the current directory. Set the permissions of the
5902 new directory to 0700, not 0777.
5906 * configure.in: if this is an rs6000 (and we're not building for
5907 any other bfd targets) then build only nm (collect needs it on
5910 * Makefile.in: define TOOL_PROGS which the list of programes to
5911 install in $tooldir -- replaces a hard-coded list.
5915 * objdump.c (display_target_list): Remove unused local ok.
5919 * config/mh-alphaosf (CFLAGS): Don't specify both -g and -O;
5920 they're not compatible under native cc. Use -O1 instead.
5922 * Makefile.in (VERSION): Updated to cygnus-2.4.1.
5924 Changes from binutils-2.4 net release:
5926 * Makefile.in (MANPAGES): Use $(DEMANGLER_PROG).
5927 ($(DEMANGLER_PROG).1): Build from cxxfilt.man, using sed.
5928 * cxxfilt.man: Renamed from c++filt.1, replaced "c++filt" with
5929 magic token to be replaced by sed.
5933 * configure.bat: update for latest makefile.in
5937 * bucomm.c: Check ANSI_PROTOTYPES rather than __STDC__.
5941 * objcopy.c (copy_section): Set section size correctly if using
5946 * Makefile.in: Add rule for sysinfo.h
5950 * Makefile.in (SRCONV_PROG): Define.
5951 (PROGS): Use $(SRCONV_PROG) too.
5955 * Makefile.in (DISTSTUFF): Add sysinfo.c, syslex.c, in case
5956 someone configures with `targets=all'.
5957 (distclean): Remove y.*.
5958 (syslex.o): Depend on sysinfo.h.
5959 (sysinfo.c): Rename y.tab.h to sysinfo.h.
5960 (install-info): Don't try to install into $(infodir)/$(srcdir).
5961 * syslex.l: Include sysinfo.h, not y.tab.h.
5965 * syslex.l (yywrap): Define as function if not defined as a macro.
5967 * Makefile.in (objdump.o): Deleted special rule.
5968 * configure.in: Don't bother building ARCHDEFS variable for
5970 * objdump.c (ARCH_*): Deleted handling.
5971 (disassemble_data): Call `disassembler' from opcodes library.
5975 * Makefile.in (install): Correct handling of $(tooldir) and
5976 $(bindir) being on different devices.
5980 * sysdump.c (h8300, sh): Add declarations.
5984 * Makefile.in (syslex, sysinfo): Use CC_FOR_BUILD.
5985 * coffdump.c, coffgroc.c, coffgrog.h, srconv.c, sysdump.c,
5986 sysroff.info: Major changes.
5990 * objdump.c (print_section_stabs): Indicate the stab header symbol
5991 more clearly, print numbers of unrecognized stab n_type values.
5995 * nlmconv.c (copy_sections): Copy arelent pointers, not arelents.
5999 * Makefile.in (distclean): Remove $(PROGS) and underscore.c.
6003 * nlmconv.c (setup_sections): Remove special handling of .reginfo
6005 (copy_sections): Likewise.
6006 (alpha_mangle_relocs): Use bfd_ecoff_get_gp_value rather than the
6007 special ECOFF .reginfo section.
6009 * objcopy.c (copy_object): Call bfd_copy_private_bfd_data after
6010 copying everything else, to let it fiddle with the file in its
6013 * objdump.c: Include libiberty.h.
6014 (display_target_list): If a format fails, just go on to the next
6015 one. Check return value of bfd_set_format.
6016 (display_info_table): Likewise. Don't increment loop variable in
6017 for loop test, since that skips the first element.
6018 (display_target_tables): Rewrite loop for clarity. Ensure that it
6019 always prints at least one element.
6021 * nlmconv.c (main): Use CyGnUsEx rather than CyGnUsSeCs for
6022 sections header. Rename from cygnus_sections to cygnus_ext.
6026 * objdump.c (_DUMMY_NAME_): Don't define.
6027 (display_target_list): Use tmpnam to get a file name rather than
6028 using _DUMMY_NAME_. Unlink it when done.
6029 (display_info_table): Likewise.
6031 * nlmconv.c (secsec): New static variable.
6032 (main): Create .nlmsections section in output BFD. Store
6033 information about it in sections header.
6034 (setup_sections): Allocate space in sections header.
6035 (copy_sections): Copy zero sized sections. Put information about
6036 each section in the sections header.
6040 * nlmconv.c (powerpc_build_stubs): Take new outbfd argument.
6041 Change caller. Create custom header for new PowerPC NetWare
6044 * Makefile.in (nlmheader.o, nlmconv.o): Update dependencies.
6045 * nlmconv.c: Include bfd.h and libiberty.h with "", not <>.
6046 * nlmheader.y: Include bfd.h with "", not <>.
6050 * objdump.c: Do an ifdef on __GO32__, not unix.
6054 Added -D (--dynamic) option to nm and -T (--dynamic-syms) and -R
6055 (--dynamic-reloc) arguments to objdump.
6056 * nm.c (dynamic): New static variable.
6057 (long_options): Added "dynamic".
6058 (usage): Mention -D and --dynamic.
6059 (main): Add D to getopt string. Handle -D by setting dynamic.
6060 (display_rel_file): If dynamic is non-zero, read dynamic symbols
6061 rather than normal symbols.
6062 * nm.1: Updated for -D (--dynamic) option.
6063 * objdump.c (dump_dynamic_symtab): New global variable.
6064 (dump_dynamic_reloc_info): New global variable.
6065 (dynsyms, dynsymcount): New global variables.
6066 (usage): Mention -R, -T, --dynamic-syms and --dynamic-reloc.
6067 (long_options): Added "dynamic-reloc" and "dynamic-syms".
6068 (slurp_symtab): If no symbols, return rather than exit.
6069 (slurp_dynamic_symtab): New function.
6070 (display_bfd): Handle dump_dynamic_symtab and
6071 dump_dynamic_reloc_info.
6072 (dump_symbols): Take new dynamic argument, indicating whether to
6073 display dynamic symbols.
6074 (dump_relocs): Move most printing into dump_reloc_set.
6075 (dump_dynamic_relocs): New function.
6076 (dump_reloc_set): New function, extracted from dump_relocs.
6077 (main): Add R and T to getopt string. Handle -T by setting
6078 dump_dynamic_symtab and -R by setting dump_dynamic_reloc_info.
6079 * objdump.1: Updated for -R (--dynamic-reloc) and -T
6080 (--dynamic-syms) options.
6081 * binutils.texi: Updated for new nm and objdump options.
6085 Update for recent BFD changes to symbol and reloc reading. Rename
6086 all uses of get_symtab_upper_bound to bfd_get_symtab_upper_bound.
6088 * coffgrok.c (symcount): Change to long.
6089 (do_sections_p1): Check for error return from
6090 bfd_get_reloc_upper_bound. Change relcount to long, and check for
6091 error from bfd_canonicalize_reloc.
6092 (coff_grok): Change storage to long. Check for error from
6093 bfd_get_symtab_upper_bound and bfd_canonicalize_symtab.
6094 * nlmconv.c (main): Change symcount, newsymalloc, newsymcount, and
6095 i to long. Check for error from bfd_get_symtab_upper_bound and
6096 bfd_canonicalize_symtab.
6097 (copy_sections): Change reloc_size and reloc_count to long. Check
6098 for error from bfd_get_reloc_upper_bound and
6099 bfd_canonicalize_reloc.
6100 (mangle_relocs, i386_mangle_relocs, alpha_mangle_relocs): Change
6101 reloc_count_ptr argument to long *. Make corresponding changes to
6102 variables loaded from *reloc_count_ptr.
6103 * nm.c (display_rel_file): Change storage and symcount to long.
6104 Check for errors from bfd_get_symtab_upper_bound and
6105 bfd_canonicalize_symtab.
6106 * objcopy.c (filter_symbols): Change symcount, src_count and
6108 (copy_object): Change symcount to long. Pass another argument to
6109 fprintf. Check for errors from bfd_get_symtab_upper_bound and
6110 bfd_canonicalize_symtab.
6111 (copy_section): Change relcount to long. Check for errors from
6112 bfd_get_reloc_upper_bound and bfd_canonicalize_reloc.
6113 (mark_symbols_used_in_relocations): Change relcount and i to long.
6114 Check for errors form bfd_get_reloc_upper_bound and
6115 bfd_canonicalize_reloc.
6116 * objdump.c (storage): Remove global variable.
6117 (symcount): Changed to long.
6118 (slurp_symtab): New local variable storage. Check for errors from
6119 bfd_get_symtab_upper_bound and bfd_canonicalize_symtab.
6120 (remove_useless_symbols): Change return value and count to long.
6121 (objdump_print_address): Change min, max, thisplace and i to long.
6122 (disassemble_data): Change i to long.
6123 (dump_symbols): Change count to long.
6124 (dump_relocs): Change relcount to long. Check for errors from
6125 bfd_ret_reloc_upper_bound and bfd_canonicalize_reloc.
6126 (display_info_table): Add casts when passing LONGEST_ARCH for
6131 * nm.c (display_archive): Close each archive element after it has
6133 * objdump.c (display_file): Likewise.
6137 * configure.in: Change error message to refer to bfd/config.bfd
6138 rather than bfd/configure.in.
6142 * More fixes for object formats which allow multiple sections
6144 * objcopy.c (setup_section): Make a new output section even if
6145 one already exists with the given name.
6146 (copy_section): Use isection->output_section rather than trying
6147 to look the output section up by its (possibly non-unique) name.
6149 * Makefile.in (install-info): Look for binutils.info in the
6150 current directory, then in $(srcdir). Don't use $<.
6154 * objdump.c (objdump_print_address): Make static. Declare with
6155 prototype. Change vardiff from int to bfd_signed_vma. Correct
6156 binary search termination condition. When looking for same
6157 section symbol in relocatable file, handle final symbol correctly.
6161 * Makefile.in: Avoid bug in hpux sed.
6163 * objcopy.c: Changes to keep it from stripping symbols used
6164 in output relocations.
6165 (mark_symbols_used_in_relocations): New function. Mark symbols
6166 used in output relocations with BSF_KEEP.
6167 (filter_symbols): Do not strip symbols marked with BSF_KEEP.
6168 (copy_object): Reorder actions. First setup sections, then
6169 build the output symbol table, then copy the section contents.
6173 * ar.c (write_archive): Allocate space for the null byte. From
6178 * Makefile.in: Built nm.new and strip.new to avoid problems with
6179 collect when . is in PATH.
6180 (STRIP_PROG): Change from strip to strip.new.
6181 (NM_PROG): Change from nm to nm.new.
6182 (install): Remove the .new when installing.
6186 * nlmconv.c (powerpc_build_stubs): Set BSF_DYNAMIC flag for each
6187 symbol for which we build a stub.
6188 (powerpc_mangle_relocs): Only reset TOC pointer for a call to a
6189 symbol with BSF_DYNAMIC flag set.
6193 * objcopy.c (filter_symbols): Use bfd_is_local_label to determine
6194 if a symbol represents a compiler-generated local label.
6195 (copy_object): Give the BFD backends a chance to copy any private
6196 bfd data from the input BFD to the output BFD.
6197 (setup_section): Give the BFD backends a chance to copy any private
6198 section data from the input section to the output section.
6202 * objcopy.c (mangle_section): Delete unused function.
6203 (setup_section): Set osection here instead of calling
6204 mangle section to do it.
6208 * ar.c (write_archive): Close inarch before unlinking it.
6212 * nlmconv.c (main): For PowerPC, call powerpc_build_stubs and
6213 powerpc_resolve_stubs. Use __GOT0, not __toc_start. Handle it if
6214 the start and end symbols are not in the text section.
6215 (struct powerpc_stub): New struct definition.
6216 (powerpc_stubs, powerpc_stub_insns): New static variables.
6217 (powerpc_initial_got_size): New static variable.
6218 (powerpc_build_stubs): New function.
6219 (powerpc_resolve_stubs): New function.
6220 (powerpc_mangle_relocs): Clear extraneous data in .got section.
6221 Rearrange reloc handling to handle ELF relocs that are not
6222 partial_inplace. Resolve PC relative relocs.
6226 * ar.c (move_members): Fix it so that the abi positional modifiers
6227 don't delete all archive members following the insert point.
6231 * coffgrok.[ch]: New files, understand coff objects.
6232 * coffdump.c: Uses coffgrok to dump out the debug info of a coff
6234 * sysroff.info: Description of a SYSROFF object file.
6235 * sysinfo.y, syslex.l: Parse info file, generate a reader, writer,
6236 header files and a printer.
6237 * srconv.c: Uses coffgrok.c and sysroff.info to convert a coff
6238 file to a SYSROFF file.
6242 * ar.c (do_quick_append): Pad with a genuine character 10,
6243 rather than whatever '\n' might happen to be.
6247 * nlmconv.c (main): Ignore debugging symbols when looking for
6248 special symbols by name.
6252 * nlmconv.c: Include libiberty.h.
6254 Support for PowerPC NetWare.
6255 * nlmconv.c (main): For PowerPC NetWare, automatically define the
6256 special symbols __toc_start.
6257 (select_output_format): Handle bfd_arch_powerpc.
6258 (mangle_relocs): Likewise.
6259 (powerpc_mangle_relocs): New function.
6263 * ar.c, bucomm.c, nlmconv.c, nm.c, objcopy.c, objdump.c,
6264 size.c: Use bfd_get_error and bfd_set_error and new error names.
6268 * objcopy.c (strip_main, copy_main): Add missing 'break' in switch.
6272 * objdump.c (disassemble_data): Handle bfd_arch_powerpc.
6276 * strings.c objdump.c nlmconv.c objcopy.c nm.c ar.c size.c (main):
6277 Call xmalloc_set_program_name.
6281 * objcopy.c (filter_bytes): Make MEMHUNK a char *, not PTR, so we
6282 can do arithmetic on it.
6286 * objdump.c (dump_section_stabs, read_section_stabs,
6287 print_section_stabs): Functions broken out of dump_stabs_1.
6288 Free the stabs and strings when done with them.
6292 * nlmconv.c (main): Use bfd_get_flavour instead of struct member.
6293 * ar.c (print_contents, extract_file), size.c
6294 (print_berkeley_format, print_sysv_format): Use bfd_get_filename and
6295 bfd_my_archive instead of dereferencing the structs directly.
6297 * ar.c: Use bfd_fatal and bfd_nonfatal instead of bfd_perror and exit.
6298 Indent. Remove DEFUNs.
6300 * nlmconv.c (main), objcopy.c (copy_file): Print matching formats
6302 * nm.c (display_file, display_archive), size.c (display_bfd):
6304 Print matching formats if there is an ambiguous match. Use
6305 bfd_nonfatal instead of hardcoded error message if nothing matches.
6307 * arsup.c, ar.c, objdump.c: Use bfd_get_filename instead of
6310 * nm.c (display_archive): New function, from code in display_file.
6311 (display_rel_file): Renamed from do_one_rel_file.
6314 (display_archive): New function from code in display_file.
6315 (display_file): Check bfd_close error return.
6317 * strings.c (strings_object_file): Check bfd_check_format
6320 * strings.c, objdump.c, size.c: Use bfd_nonfatal instead of bfd_perror.
6322 * bucomm.c: Delete references to exit_handler. It wasn't set
6323 anywhere, and now that we're using the libiberty xmalloc, it
6324 wouldn't always get called before exiting.
6325 (list_matching_formats): Function moved from objdump.c.
6326 * bucomm.h: Declare it.
6328 * objdump.c (disassemble_data): Move some variable decls closer to
6329 their use. Add some comments. Replace a nested block with a
6334 * objdump.c (display_target_list, display_info_table): Check that
6335 the bfd of the dummy output file is not null.
6339 * objcopy.c (filter_bytes): New function.
6340 (copy_section): Call it.
6341 (copy_options, copy_usage, copy_main): Add --byte option to
6342 activate it. Appropriate the -b option (which was an undocumented
6343 synonym for -F) for it, also. Add --interleave, -i option for
6345 (setup_section, copy_section, mangle_section): Renamed with no `s'
6347 * objcopy.1, binutils.texi: Document the new options.
6349 * objdump.c (display_target_tables, display_target_list):
6350 New functions broken out of display_info.
6351 Eliminate some magic constants. Use more meaningful variable names.
6352 (dump_bfd_header): New function broken out of display_bfd.
6353 (dump_section_header): New function broken out of dump_headers.
6354 (remove_useless_symbols): Don't shadow global variable name with
6356 (objdump_print_address): Fix backward test.
6360 * bucomm.c (print_arelt_descr): Change decl of `when' to time_t.
6361 * objdump.h: Removed.
6365 * objdump.c (display_file): Remove call to list_matching_formats.
6366 It would never be called.
6367 (list_matching_formats): Take an arg giving the list of matching
6369 (display_bfd): Pass the arg, and get it filled in by calling
6370 bfd_check_format_matches instead of bfd_check_format.
6371 (display_info, display_info_table): target_vector was renamed to
6374 * binutils.texi (objdump): Note some limitations of -h section
6379 * Makefile.in (MALLOC): Set to emptiness by default.
6380 (ALL_CFLAGS): Add and use.
6381 (arparse.h): Make it depend on arparse.y.
6382 * ar.c (libbfd.h): Don't require to be in ../bfd.
6383 * objdump.c (comp): Rename to compare_symbols.
6387 * objdump.c (list_matching_formats): If the file format is ambiguous,
6388 print the matching names so the user can choose one.
6389 (display_bfd): Call it.
6390 (display_file): Call it.
6394 * objdump.c (disassemble_data): Support bfd_arch_rs6000.
6398 * objdump.c (stab_name): Allocate dynamically.
6399 (stab_print): Use pointers to strings instead of char arrays.
6400 (dump_stabs): Change alloc and init of arrays appropriately.
6401 (dump_stabs_1): Always decide whether to print stab_name or
6402 the stab's type number, if unnamed.
6406 * objcopy.c (strip_main, copy_main): Don't clobber the input file
6409 * nlmconv.c (main): Warn about an attempt to use a shared library
6410 with uninitialized data.
6412 * nlmconv.c (setup_sections): Make sure that we align the
6413 output_offset of each input section appropriately.
6417 * objdump.c (dump_relocs): Don't crash if section name is NULL.
6421 * filemode.c (filemodestring): Commented out; not used.
6422 (mode_string): Use POSIX definitions.
6423 (ftypelet): Likewise.
6424 (rwx): Removed; no longer used.
6425 * bucomm.c: Include bucomm.h.
6426 (bfd_nonfatal, bfd_fatal): Argument is const.
6427 (fatal): Make __STDC__ version.
6428 * bucomm.h (mode_string): Declare.
6429 * Makefile.in (bucomm.o): Depend upon bucomm.h
6433 * bucomm.c (xmalloc, xrealloc): Deleted.
6434 * bucomm.h (xmalloc, xrealloc): Fix prototypes, to correspond to
6435 libiberty version of functions.
6439 * binutils.texi: Add a chapter summarizing the ways to select
6440 aspects of the target for each program.
6442 * objdump.c (long_options, usage): Add long equivalents for all
6443 remaining short options that lacked them.
6444 * binutils.texi objdump.1: Document them.
6446 * size.c (usage): Tweak usage message.
6447 * size.1: Add missing `=' in examples.
6449 * binutils.texi strip.1 objcopy.1 nlmconv.1 objcopy.c nlmconv.c:
6450 Use "--target=bfdname" as the option to select the BFD target,
6451 like nm and size already do.
6452 Reserve "--format=format" for textual output selection options, but
6453 for now keep old option names as obsolete for backward compatibility.
6455 * strings.c (main, strings_object_file, usage): Add --target option.
6456 * binutils.texi strings.1: Document it.
6460 * ar.c (main): Add \n in error message.
6465 * ar.c (main): Put parens around assignment used as truth value.
6466 * objcopy.c (strip_main): Remove unused variables. Return 0.
6467 (copy_main): Remove unused variables. Return 0.
6468 * objdump.c (display_bfd): Declare return value as void.
6469 (stab_print): Use "" instead of 0 to initialize array.
6470 (dump_stabs_1): Print vma using printf_vma.
6471 (display_info): Put parens around assignment used as truth value.
6472 * strings.c (print_strings): Cast printf arguments.
6474 * objcopy.c (copy_main): Use copy_options, not strip_options.
6476 * nlmheader.y (command): Warn about illegal date values.
6480 * bucomm.c bucomm.h: Run through indent. De-ansidecl-ify.
6481 (bfd_nonfatal): New function.
6482 (bfd_fatal): Call it.
6484 * objcopy.c (smart_rename): Do a copy if the dest file has
6485 multiple hard links. Remove source file on successful copy.
6486 Try to preserve mode and owner on successful rename.
6488 * objcopy.c: Run through indent. Clean up a bit.
6489 Make global variables static.
6490 Make {input,output}_{target,filename}, show_version local
6491 to various functions.
6492 New global variable `status' for exit status.
6493 (strip_main, copy_main): New functions with code from main.
6494 (nonfatal): New macro. Use it globally instead of bfd_perror and
6497 (copy_object): Call mangle_sections with bfd_map_over_sections.
6498 (mangle_sections): Adjust for new calling convention.
6502 * nlmheader.y (command): Accept MAP and FULLMAP without arguments.
6503 * nlmconv.c (main): Change error message for MAP and FULLMAP.
6507 * nlmconv.c (main): Warn about imported symbols that are not in
6508 the IMPORT list even if the IMPORT keyword is not used.
6510 * nlmconv.c (debug, unlink_on_exit): New static variables.
6511 (long_options): Add "debug" and "linker".
6512 (main): Handle -d and -l arguments. Make command line input and
6513 output files optional. Parse the command file before opening the
6514 BFD's, which requires storing more information in local variables.
6515 If INPUT names multiple files, link them together. Use OUTPUT for
6516 the output file name if not named on command line.
6517 (show_usage): Changed for new options.
6518 (link_inputs): New function to automatically invoke linker to
6519 handle multiple INPUT files.
6520 (choose_temp_base_try, choose_temp_base, pexecute): New functions,
6521 mostly copied from gcc/gcc.c.
6522 * nlmconv.h (input_files, output_file): Declare.
6523 * nlmheader.y (input_files, output_file): Define.
6524 (command): Support INPUT with a string_list argument. Support
6526 (string_list): Renamed from module_list.
6527 * Makefile.in (nlmconv.o): Define LD_NAME based on
6528 program_transform_name.
6532 * nlmheader.y (nlmheader_identify): New function. Use it to print
6533 the program name just once, instead of with every error message.
6537 * nlmconv.c (long_options): Changed --header-info to --header-file
6538 to match documentation and usage message.
6542 * objdump.c (dump_relocs): Avoid dereferencing a NULL sym_ptr_ptr
6547 * nlmconv.c (main): Change various types from bfd_size_type to
6548 size_t, since they have to be arguments to fread and fwrite.
6549 Change set from char * to unsigned char *.
6550 (select_output_format): Make mach argument unsigned. Handle
6552 (setup_sections): Don't copy the .reginfo section of an ECOFF
6553 file. Call bfd_set_reloc to initialize the relocation fields.
6554 (copy_sections): Don't copy the .reginfo section of an ECOFF file.
6555 Combine all relocs for a section.
6556 (mangle_relocs): Change type of relocs to permit specific
6557 functions to change it. Call alpha_mangle_relocs for alpha,
6558 default_mangle_relocs for other architectures.
6559 (default_mangle_relocs): New function. Adjust the address of all
6560 relocs by the output_offset.
6561 (i386_mangle_relocs): Change type of relocs argument. Cast length
6562 argument to memmove to size_t.
6563 (alpha_mangle_relocs): New function.
6567 * nlmconv.c (select_output_format): Use nlm32-sparc for
6572 * nlmconv.1: added man page
6573 * objcopy.1: fixed format errors
6577 * Makefile.in: Use CFLAGS as well as LDFLAGS when linking.
6581 * strings.1: Fix typo.
6585 * Makefile.in (DISTSTUFF): Build "info".
6586 (VERSION): Updated to cygnus-2.3.1; 2.3 has gone out.
6590 * objdump.c (dump_stabs): Handle stabs-in-som as implemented
6591 by the new BFD SOM assembler.
6595 * ar.1 c++filt.1 nm.1 objcopy.1 objdump.1 ranlib.1 size.1
6596 strings.1 strip.1: Replace \(em in NAME section with \- so
6597 makewhatis can grok it.
6601 * nlmconv.c (i386_mangle_relocs): Adjust reloc address by
6602 section output_offset.
6606 * binutils.texi: added nlmconv chapter
6610 * Makefile.in: Change RUNTESTFLAGS to RUNTEST_FLAGS
6614 * Makefile.in (distclean): Don't get rid of dvi or info files.
6618 * objcopy.c (S_ISLNK): Define as 0 if there's no S_IFLNK.
6622 * binutils.texi: Move objcopy docs into alphabetical order.
6624 * objdump.c: Use xmalloc instead of malloc.
6628 * objdump.c (info): Rename to formats_info.
6629 (dump_stabs_1): Better comments and formatting.
6633 * ar.c (main): Always create the archive when quick appending,
6634 even if no input files have been given.
6638 * nlmconv.c (main): Set sharedDebugRecordOffset and
6639 sharedDebugRecordCount fields in extended header.
6641 * nlmconv.c (main): Force moduleName field to upper case.
6645 * objcopy.c (main): Give a usage message if there are too many
6650 * Makefile.in (install-info): Rewrite to take advantage of VPATH,
6651 so FSF distributions (with info files in $(srcdir)) install
6653 (DISTSTUFF): Build nlmheader.c too.
6657 * ar.c (program_name): Don't define here.
6658 * objdump.c: Include "bucomm.h".
6659 (xmalloc): Don't declare here.
6660 (program_name): Don't define here.
6661 (program_version): Fixed type in declaration.
6662 * size.c: Include "bucomm.h".
6663 (program_name): Don't declare here.
6667 * objdump.c (fprintf): hide declaration in FPRINTF_ALREADY_DECLARED
6671 * nlmconv.c (i386_mangle_relocs): Resolve and remove PC relative
6672 relocs against defined symbols in the same section.
6676 * Makefile.in (binutils.dvi): use TEXIDIR to find texinfo.tex
6680 * objcopy.c (simple_copy, smart_rename): New functions.
6685 * Makefile.in (clean, distclean): Recurse into testsuite.
6689 * objcopy.c (setup_sections, copy_sections): If stripping, don't
6690 copy SEC_DEBUGGING sections.
6691 * objdump.c (dump_headers): Print SEC_DEBUGGING flag.
6693 * objdump.c (usage): Mention --stabs.
6695 * objcopy.c (copy_object): Copy all applicable file flags.
6696 (copy_file): Don't copy EXEC_P specially here.
6700 * nlmconv.c (main): Adjust data section size to correspond to bss
6701 alignment adjustment. Clear BSF_SECTION_SYM if symbol is moved to
6702 a different section. Use time_t for time variable.
6703 (setup_sections): Only put sections with contents in output NLM.
6704 (i386_mangle_relocs): No symbols are common at this point. Add
6705 casts to avoid warnings.
6709 * objdump.c: Made the --stabs option work for stabs-in-coff.
6710 (ELF_STAB_DISPLAY): Removed.
6711 (dump_elf_stabs): Renamed to dump_stabs, changed to run for
6712 any object file format.
6713 (dump_elf_stabs_1): Renamed to dump_stabs_1, added calls to
6714 generic BFD routines for non-ELF case, changed format of message
6715 for no-section-found case.
6716 (display_bfd): Always call dump_stabs if requested.
6717 (dump_data): Call bfd_section_size to get section size.
6721 * Makefile.in (install): Don't put strings in tooldir/bin.
6725 * nlmconv.c (total_bss_size): Removed.
6726 (main): Set the bss vma to always follow the data section. Move
6727 symbols into new sections, and adjust values by output_offset.
6728 (setup_sections): Don't copy all sections, but instead point all
6729 text sections to .text, all data sections to .data, and all bss
6731 (copy_sections): Adjust accordingly.
6735 Only build nlmconv if configured for a NetWare target.
6736 * configure.in: If we have some *-*-netware* target, or are using
6737 all targets, set BUILD_NLMCONV to $(NLMCONV_PROG) in Makefile.
6738 * Makefile.in (PROGS): Use $(BUILD_NLMCONV) rather than
6743 * objdump.c (ARCH_all): Define ARCH_hppa too.
6744 (dump_headers): Don't test for SEC_BALIGN if it's not defined by
6749 * nlmconv.c (main): Force creation of .bss section. Set up the
6750 sections before looking at the symbols. Move all common symbols
6751 into .bss section. Automatically define _edata and _end. Only
6752 export symbols in the export list, with multiple prefixes if
6753 necessary. Warn if no version. Always create extended header.
6754 Set date automatically if not already set.
6755 (setup_sections): Count size of bss sections.
6756 (mangle_relocs, i386_mangle_relocs): Accept section argument, and
6757 take reloc_count as a changeable pointer; changed callers.
6758 (i386_mangle_relocs): Remove PC relative relocs within a section,
6759 as they require no adjustment.
6760 * nlmheader.y: Fixed memory allocation throughout: token STRING is
6761 now allocated on the heap, and freed if not needed. Null
6762 terminated copyright message. Accept version with only two
6764 (symbol_list_opt): New nonterminal, either symbol_list or empty.
6765 (symbol_list): Use left recursion to avoid overflowing parser
6767 (yylex): Rearranged beginning of line check. Accept quoted
6768 strings using single quotes. End generic argument at comment
6769 character or parentheses.
6770 (string_list_append): Fixed.
6771 (string_list_append1): New function.
6773 * bucomm.h: The first argument to xrealloc is PTR, not char *.
6774 * bucomm.c (xrealloc): Use PTR rather than char *.
6775 * Makefile.in (objdump.o): Depend upon config.status to notice
6776 --with-targets changes.
6777 (nlmconv.o): Depend upon bucomm.h.
6781 * configure.in: Don't pass cpu to config.bfd.
6785 * Makefile.in ($(NM_PROG)): Depend on demangle.o.
6786 (demangle.o): New target.
6787 (cplus-dem.o): Depend on it, to force compilation order when doing
6790 * nm.c (print_symbol_info_{bsd,sysv,posix}): Take a bfd arg.
6791 (struct output_fns print_symbol_info): Ditto.
6792 (long_options, usage, main): Add -C --demangle option.
6793 (print_symname): New function, demangling if requested.
6794 (print_symbols, print_symbol_info_{bsd,sysv,posix}): Use it.
6798 * Makefile.in: Put CFLAGS last in compilation rules and omit from
6799 linking rules. Use ARCHDEFS to compile objdump.c.
6800 Update dependencies.
6801 * configure.in: Construct ARCHDEFS based on the BFD target makefile
6803 * objdump.c: Conditionalize calls to the print_insn_ARCH functions
6804 according to ARCHDEFS.
6808 * ar.c: Removed obsolete and non-functional GNU960 code.
6812 * size.c (berkeley_sum): New function.
6813 (bsssize, datasize, textsize): New global variables.
6814 (bss_section_name, data_section_name, text_section_name): Removed.
6815 (print_berkeley_format): Map berkeley_sum over all the sections,
6816 rather than only reporting sizes of specifically named sections.
6817 * Makefile.in ($(OBJDUMP_PROG)): Removed dependency on size.o.
6821 * nlmconv.c, nlmconv.h, nlmheader.y: New files for program to
6822 convert object files into NetWare Loadable Modules.
6823 * Makefile.in (NLMCONV_PROG): New macro, define to be nlmconv.
6824 (PROGS): Add NLMCONV_PROG.
6825 (nlmheader.c, nlmheader.o, nlmconv.o, $(NLMCONV_PROG)): New
6830 * Makefile.in: define MAKEOVERRIDES to an empty string
6834 * objcopy.c (copy_file): Make failures to process a file nonfatal.
6838 * nm.c: Add -B option, like --format=bsd.
6842 * objcopy.c (copy_file): If the file is neither an object nor an
6843 archive, give an error rather than returning success.
6847 * objdump.c (objdump_print_address): Prefer non-local symbols over
6848 local ones, and especially discriminate against debugging symbols.
6849 Also, for relocateable files, try to find a symbol in the current
6850 section, instead of picking one from some random section with a
6851 convenient value (read, section offset).
6852 (disassemble_data): Cast argument to malloc to size_t first.
6853 (dump_data): Likewise.
6854 (dump_relocs): If a single section name is specified, show relocs
6855 only for that section. Otherwise, silently omit sections without
6856 relocs. Format table nicely even if values are printed using 16
6857 digits instead of 8.
6861 * nm.c: Changes for final version of POSIX.2.
6862 (print_symbol_filename_{bsd,sysv,posix}): New functions.
6863 (formats): Add an element for a pointer to them.
6864 (print_symbols): Call it.
6865 (print_object_filename_posix, print_archive_member_posix): Produce
6866 output according to new POSIX.2 spec.
6868 * strings.c (print_strings): Handle STREAM being NULL.
6869 (strings_a_section): Pass a NULL.
6870 (main): Don't open /dev/null.
6874 * objdump.c (disassemble_data): Handle the m88k.
6875 (display_bfd): Use bfd_errmsg, rather than just claiming that the
6876 bfd is not an object file.
6880 * Makefile.in (TAGS): make work again by naming directories
6881 explicitly rather than depending on undefined macros.
6882 (INSTALL_XFORM): correct bad install target.
6886 * strings.c: Doc fixes.
6890 * Makefile.in: Note dependencies on bucomm.h.
6891 (cplus-dem.o): Link c++filt with version.o.
6893 * strings.c: Include bucomm.h and add prototypes to other decls.
6896 * bucomm.h: Declare xrealloc.
6898 * nm.c, objcopy.c, objdump.c, size.c, strings.c (main, usage): Add
6899 --help option. Put "GNU" in the version message.
6900 (usage): Take stream and exit status as args.
6901 (main): Pass new args to usage.
6905 * strings.c, strings.1: New files.
6906 * binutils.texi: Document strings.
6907 * Makefile.in: Add rules for it.
6911 * objdump.c: Use size-independent bfd elf section names.
6915 * objdump.c (objdump_print_address): Handle wide offsets by
6916 calling sprintf_vma.
6920 * objdump.c (syms2): Removed unused variable.
6921 * objdump.c (remove_useless_symbols): New function.
6922 * objdump.c (comp): Simplify.
6923 * objdump.c (dis-assemble_data): Make simpler and more
6924 efficient how we filter out useless symbols: Just filter
6925 BEFORE the sort (using remove_useless_symbols).
6926 * objdump.c (objdump_print_address): Simplify.
6927 Change output syntax to match gdb.
6931 * Makefile.in: canonicalize install.sh; for use within
6932 this directory (and subdirs)
6934 Mon Jun 14 12:13:22 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
6936 * Makefile.in (install, install-info): remove parentdir support,
6937 use INSTALL_XFORM; define INSTALL_XFORM
6941 * objcopy.c (copy_object): Fix bad size passed to xmalloc().
6945 * Makefile.in (INCLUDES): Add -I../bfd for sysdep.h and bfd.h.
6946 * configure.in: No longer need to configure to get sysdep.h.
6947 * objcopy.c (copy_object): Fix symbol table handling.
6951 * objcopy.c (filter_symbols): Cannot filter the symbols
6952 in place, because that confuses the relocs, so take separate
6953 parameter for output array.
6954 * objcopy.c (sympp): Make two variables: isympp and osympp.
6955 * objcopy.c (copy_object): Allocate separate array (osympp)
6956 for filtered symbols.
6958 Fri Jun 4 10:51:44 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6960 * Makefile.in: change recursion test to presence of a configured
6965 * Makefile.in (underscore.c): Hack the backquoted command so it
6966 doesn't cause Solaris make to bomb.
6970 * Makefile.in: added c++filt and objcopy to MANPAGES variable
6972 Thu Jun 3 00:32:52 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
6974 * Makefile.in: rename LOADLIBES to EXTRALIBS
6978 * c++filt.1, objcopy.1: new man pages
6982 * Makefile.in (install): Also install ar and ranlib in
6983 $(tooldir)/bin; needed for building libgcc.a.
6984 * objdump.c (objdump_print_address): Fix the check
6985 "coincidental" label matches by dis-allowing undefined
6990 * biutils.texi: revised c++filt chapter
6994 * Makefile.in (FLAGS_TO_PASS): Pass down CC and CFLAGS.
6998 * objdump.c (slurp_symtab): Print warning for bad symbol table.
6999 (bfd_elf32_find_section, Elf32_Internal_Shdr): Updated
7000 declarations and uses.
7002 * Makefile.in (DISTSTUFF): Don't build binutils.mm.
7006 * nm.c: Add -f/--format, -P/--portability, -t/--radix options.
7007 Make global variables static.
7008 (main): Make -v like -n, not -V, and make -A like -o, for POSIX.2.
7009 (set_print_radix, set_output_format,
7010 print_{object_filename,archive_filename,archive_member,symbol_info}
7011 {bsd,sysv,posix}): New functions.
7012 (display_file, print_symbols): Call them.
7014 * ar.c: Improve error messages.
7016 * nm.c (main): Handle long options that just set a flag.
7018 * nm.c (main), ar.c (do_show_version), objcopy.c (main), size.c
7019 (main): Exit after printing the version number, per the GNU coding
7024 * README, Makefile.in: Minor updates for 2.2.
7028 * Makefile.in (underscore.c): Automatically generate
7029 (using nm) a file with the variable prepends_underscore.
7030 * Makefile.in (c++filt): Link underscore.o with cplus-dem.o
7031 so that initial underscores get removed iff appropriate.
7032 * binutils.texi: Preliminary documentation for c++filt.
7033 * Makefile.in, binutils.texi: Set to version 2.2.
7035 * NEWS: Mention copy->objcopy renaming and new c++filt program.
7039 * Makefile.in (cplus-dem.o, $(DEMANGLER_PROG)): Build the
7040 demangler via cplus-dem.o, rather than directly from the .c file.
7042 * objcopy.c: Renamed from copy.c, updated comments accordingly.
7043 * Makefile.in, binutils.texi: Renamed copy to objcopy.
7044 * is-strip.c, maybe-strip.c, not-strip.c: Updated comments for
7045 rename of copy to objcopy.
7049 * binutils.texi (strip, -v option): Fix typo.
7053 * Makefile.in (RUNTEST): Define.
7054 (FLAGS_TO_PASS): Pass down RUNTEST.
7058 * Makefile.in (DEMANGLER_PROG): Name it c++filt.
7059 (PROG): Also build and install COPY_PROG.
7063 * Makefile.in: Change definition of $(tooldir) to match FSF.
7067 * size.c (usage): Add missing options.
7068 (main): Clean up option parser.
7070 * objdump.c (usage): Add missing options.
7071 (display_file): Print program name before calling
7074 * nm.c (usage): Add missing options.
7075 (main): Clean up option parser.
7076 (display_file): Print program name before calling
7079 * copy.c (copy_usage, strip_usage): Add missing options.
7081 * ar.c (usage): New function.
7083 (open_inarch, do_quick_append): Print program name before calling
7088 * nm.c (main): Accept and ignore -A and -B for MIPS compatibility.
7092 * Makefile.in: Added FLAGS_TO_PASS so tests get run on freshly
7093 built binaries if they exist. (otherwise the path)
7097 * Makefile.in: Changed check target to use DejaGnu.
7101 * Makefile.in: Remove am29k-pinsn.c, i960-pinsn.c.
7102 objdump.c: a29k and i960 are `disassemble' not `print'.
7104 * objdump.c: Rename print_address to objdump_print_address
7105 and change parameters.
7106 (disassemble_data): Use objdump_print_address.
7110 * objdump.c (disassemble_data): print_insn_sparc is now a
7111 `disassemble' not a `print'.
7112 Makefile.in: Remove sparc-pinsn.c (now in libopcodes.a).
7114 * objdump.c (disassemble_data): Use new read_memory_func stuff.
7118 * objdump.c (fprintf): Declaration of variadic function had better
7119 be a prototype for ANSI C systems.
7121 Mon Mar 22 23:19:46 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7123 * Makefile.in: rename test-install to install-check
7127 * objdump.c (disassemble_data): Add H8500.
7131 * objdump.c (usage): Mention long options.
7135 * nm.c: Modify behavior of -o flag for archives to match
7136 BSD4.4 and Sunos 4: Prefix archive name before each line.
7138 * m68k-pinsn.c: Removed. Subsumed by ../opcodes/m68k-dis.c.
7139 * i386-pinsn.c: Removed. Subsumed by ../opcodes/i386-dis.c.
7140 * Makefile.in: Adjust accordingly.
7141 * objdump.c: Support new-style disassemblers (ones that use
7142 the interface of ../include/dis-asm.h).
7146 * Makefile.in: When making tar file, remove texinfo/*,
7147 except for texinfo/texinfo.tex.
7148 * ardup.c: Add extern declaration of strdup.
7149 * Makefile.in (testsuite): Add 'else true' since otherwise
7150 Ultrix /bin/sh complains.
7154 * Makefile.in: Set VERSION to 2.1.
7155 * README, NEWS: Updates.
7156 * nm.c: Add -v as a synonym for -V.
7160 * configure.in: added testsuite to configdirs.
7161 * Makefile.in: added support for building testsuite.
7165 * objdump.c (disassemble_data): Print function names when
7166 given by bfd_find_nearest_line. If not - still print
7171 * binutils/testsuite: made modifications to testcases, etc., to allow
7172 them to work properly given the reorganization of deja-gnu and the
7173 relocation of the testcases from deja-gnu to a "tool" subdirectory.
7177 * objdump.c (dump_data): Free up section contents each time
7182 * binutils/testsuite: Initial creation of binutils/testsuite.
7183 Migrated dejagnu testcases and support files for testing nm to
7184 binutils/testsuite from deja-gnu. These files were moved "as is"
7185 with no modifications. This migration is part of a major overhaul
7186 of dejagnu. The modifications to these testcases, etc., which
7187 will allow them to work with the new version of dejagnu will be
7188 made in a future update.
7192 * Makefile.in (LIBIBERTY_SRC_DIR, LIBIBERTY_BIN_DIR): New macros.
7193 * Makefile.in (LIBIBERTY): Use LIBIBERTY_BIN_DIR.
7194 * Makefile.in (DEMANGLER_PROG): New program to build. Add macro
7196 * Makefile.in (PROGS): Add DEMANGLER_PROG.
7200 * copy.c, nm.c, objdump.c, size.c: Use new bfd_is_com_section
7201 macro rather than checking for equality to bfd_com_section.
7205 * objdump.c (disassemble_data): Fix code to find first useless
7210 * objdump.c (disassemble_data): Use mips_print_insn for MIPS.
7211 Don't core dump if bfd_find_nearest_line returns false.
7215 * objdump.c (disassemble_data): know how to disassemble z8000s
7220 * arsup.h (interactive), bucomm.h (program_name): Prefix
7221 with 'extern', to avoid warnings from some compilers.
7225 * arparse.y: fix unnecessary shift/reduce
7229 * Makefile.in: Make check depend on all.
7230 * Makefile.in (distclean): Remove sysdep.h.
7231 * size.c: Use %u format where appropriate.
7232 * objdump.c: Standardize: L_SET -> SEEK_SET.
7233 * objdump.c: Use new macro bfd_asymbol_bfd.
7234 * configure.in: Allow std-host as the default ${mys_host}.
7236 Thu Dec 17 19:38:19 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7238 * Makefile.in: added dvi target, define and use TEXI2DVI
7242 * Makefile.in (dist): Fix permissions before release.
7243 * size.c: Use bfd_size_type (and long) where appropriate.
7244 * ar.c: Make writing a map the default, to be compatible
7245 with SYSV and Posix.2. Remove some bogus kludges that
7246 handled __.SYMDEF directly.
7249 Mon Nov 9 13:36:53 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7251 * Makefile.in: flex no longer needs the -S flag
7253 Sat Nov 7 15:06:13 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7255 * ar.c (extract_file): utime needs a pointer to a utimbuf
7257 * Makefile.in: handle -I includes better, adding $(BASEDIR)/bfd to
7258 the list (since some of the bfd/hosts/*.h files include other
7259 files from that directory)
7263 * i960-pinsn.c (MEM_MAX, MEM_SIZ): Set upper bound properly.
7267 Clean up some old BFD ansification macros.
7269 * arsup.h, bucomm.h, objdump.h: Remove EXFUN from binutils.
7270 It still remains as a local macro in gmalloc.c, which is derived
7271 from some other copy of GNU Malloc somewhere (FIXME).
7273 * ar.c, objdump.c, size.c: Replace EXFUN with PROTO. Make static
7275 * arsup.h: Declare extract_files.
7279 * ar.c (extract_file): instead of checking USG: if POSIX_UTIME,
7280 use utime and utimbuf structure, otherwise if USE_UTIME use utime
7281 and array of two longs, otherwise use utimes.
7285 * binutils.tex: Document yesterday's changes to strip and copy.
7289 * copy.c: Re-do command-line parsing to use getopt_long().
7290 Add long option names. Re-think option letters to be more
7292 * copy.c: New function filter_symbols() for stripping only
7293 debug-symbols and/or local symbols. Use these to support
7294 the previously-missing options of the old FSF strip.
7298 * configure.in (host): Use ${srcdir}/../bfd/configure.host rather
7299 than repeating a copy of it here.
7303 * copy.c (main): Even if is_strip, accept -d argument indicating
7304 alternate output format. Needed by gdb for Nindy.
7306 * m68k-pinsn.c (print_insn_arg): Handle new "`" operand type.
7310 * binutils.texi: added documentation for "copy"
7312 Tue Oct 6 14:22:56 1992 Per Bothner (bothner at PersSony)
7314 * Makefile.in (*clean rules): Some cleaning up.
7315 * Makefile.in (dist): Make diststuff in gprof for a dist.
7317 * ar.c (do_show_version): New function.
7318 * ar.c (main): Fix so "ar -V" works.
7320 Thu Oct 1 22:44:45 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7322 * configure.in: now uses the cpu-vendor-os triple instead of
7327 * i960-pinsn.c: Change bzero to memset.
7328 * sparc-pinsn.c: Change index to strchr.
7332 * m68k-pinsn (print_insn_arg, fetch_arg): added support for
7333 operands to memory management instructions, from WRS.
7337 * Makefile.in (install): if $(tooldir) exists, install nm and
7338 strip in $(tooldir)/bin.
7342 * Makefile.in: Let's call it version 2.0.
7346 * Makefile.in: Bump to version 0.98.
7347 * TODO, README: Minor updates.
7349 * Makefile.in: Added mostlyclean, distclean rules,
7350 and cleaned up clean, realclean.
7354 * Makefile.in: map program names through program_transform_name
7359 * Makefile.in: Bump to versions 1.97.90.
7360 * cplus-dem.c: Removed. Was nowhere used - and if some
7361 programs are changed to to demangling should now use the
7362 versions in libiberty.
7366 * configure.in: add we32k
7370 * ar.c (map_over_members): if the element of the archive has a
7371 null name, fill it in.
7373 * nm.c (do_one_rel_file): only warn if a bfd's flags say there
7374 will be symbols and there aren't any.
7378 * m68k-pinsn.c: handle new operand type 'r', introduced for cas2.
7382 * nm.c objdump.c: Added support for a +version (-V)
7383 to print the version number.
7385 * ar.c, copy.c: Added support for a -V option to print
7390 * config/mh-apollo68v: removed -g from CC definition.
7392 * Makefile.in: always create installation directories.
7396 * m68k-pinsn.c: Minor fix in style of output (don't use
7397 range to indicate floating point control registers).
7401 * ar.c (main): Don't *always* set the verbose flag!
7405 * copy.c: When is_strip (because it is invoked as the strip
7406 program), follow traditional argv processing:
7407 'strip file1 file2' now strips file1 and file2, rather
7408 than stripping file1 (as input), leaving output in file2.
7412 * objdump.c (display_info, display_info_table): Call
7413 bfd_set_format() on dummy bfd before using it (twice).
7414 * ar.c: Make sure archive is created on command 'r'
7415 even when no elements are inserted. (Clean up and
7416 simplify some non-working related code.)
7420 * configure.in: hppa support doesn't assume hp OS (from sef).
7422 Sat Jul 18 14:35:22 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
7424 * configure.in: recognize hppa hosts (bsd & hpux), error messages
7425 to stderr, not stdout
7429 * ar.1, binutils.texi, i960-pinsn.c, nm.1, objdump.1, ranlib.1,
7430 size.1, sparc-pinsn.c, strip.1: removed rcsid's.
7434 * Makefile.dos: removed rcsid.
7438 * objdump.c (display_bfd): print state of BFD_IS_RELAXABLE too
7442 * Makefile.in: Add program_suffix (parallel to program_prefix)
7444 Thu Jun 25 04:52:45 1992 John Gilmore (gnu at cygnus.com)
7446 * nm.c (sorters): Lint. Remove excess whitespace.
7450 * nm.c (valueof macro): Add missing parentheses.
7451 (Their lack screwed up numeric_forward().)
7453 Sun Jun 14 10:33:27 1992 John Gilmore (gnu at cygnus.com)
7455 * objdump.c (dump_elf_stabs): Also dump .stab.index and
7456 .stab.excl sections.
7457 (dump_elf_stabs_1): Split out main body of old dump_elf_stabs.
7458 * objdump.1, binutils.texi: Document new sections dumped.
7460 Fri Jun 12 22:23:35 1992 John Gilmore (gnu at cygnus.com)
7462 * size.c, objdump.c, bucomm.c: Lint.
7464 Thu Jun 11 01:19:06 1992 John Gilmore (gnu at cygnus.com)
7466 * objdump.c (dump_elf_stabs): New feature: --stabs prints out a
7467 .stab section from an ELF file. Installed under #ifdef
7468 ELF_STAB_DISPLAY so it can be easily disabled, since it requires
7469 bfd-internals header files and such.
7470 * objdump.1, binutils.texi: Update for --stabs. Also fix
7471 objdump's doc to use -- rather than + for long options.
7472 (FIXME: Not yet fixed everywhere in binutils.texinfo.)
7476 * objdump.c(display_info), patches from
7482 * objdump.c: Add another enum->int cast, for the sake of
7483 old compilers (such as PCC).
7487 * arlex.l: Don't include <sysdep.h> (unneeded conflicts).
7488 Add declaration of strdup().
7492 * Makefile.in: Use srcdir instead of VPATH in ldgram/ldlex
7493 rules, since these are used when building a distribution.
7494 * Makefile.in (arlex.c): Don't re-direct output, since that
7495 leaves a bogus output files if it fails.
7497 * arlex.l: Make work with lex, for what it's worth.
7498 * Makefile.in: Better lex support.
7499 * Makefile.in (dist): Generate flex and bison outputs
7504 * Makefile.in: get BISON definition right.
7508 * sanity.sh: default TMPDIR to ".".
7512 * binutils.texi: add doc for ar command language.
7516 * arparse.y: make END call ar_end
7517 * arsup.c (ar_end): added, deletes temp file if archive session
7523 * Makefile.in: use bison & flex from ../ if they exist. Also,
7526 * sanity.sh: remove temporary directory when finished.
7530 * Makefile.in: Bump to version 1.97.
7531 * ar.c: Declare errno for machines that need it.
7535 * objdump.c (display_info): Handle error cases without coredump.
7536 Close the dummy temporary file we open in the loop.
7537 * Makefile.in (arsup.o): Add kludge to build with Sun Make.
7541 * Makefile.in: added test-install target.
7543 * sanity.sh: new file.
7545 * Makefile.in: use sanity test on make check.
7549 * Makefile.in: rework CFLAGS so that they can be passed on the
7550 command line to make. Remove MINUS_G. Default CFLAGS to -g.
7554 * arsup.c, arsup.h, arparse.y, arlex.l: support for archive
7559 * Makefile.in: added check target.
7563 * Makefile.in: added clean-info target.
7567 * Makefile.in: remove $(COPY_PROG) from PROGS. It shouldn't be
7568 installed. added tooldir and program_prefix.
7572 * Makefile.in, configure.in: removed traces of namesubdir,
7573 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
7574 copyrights to '92, changed some from Cygnus to FSF.
7576 Sun Feb 16 12:53:02 1992 Per Bothner (bothner at cygnus.com)
7578 * Makefile.in: Bump version to 1.96, and remove -beta
7579 suffix from distribution name.
7580 * m68k-pinsn.c: New macro COERCE_SIGNED_CHAR to extract
7581 the signed value of a character (even if chars are unsigned).
7582 * sparc-pinsn.c: Add new operand types.
7584 Thu Feb 6 12:14:19 1992 Steve Chamberlain (sac at rtl.cygnus.com)
7586 * objdump.c (disassemble_data): don't print a section's contents
7587 if it's not loadable (eg bss)
7589 Tue Jan 28 11:11:06 1992 Steve Chamberlain (sac at rtl.cygnus.com)
7591 * m68k-pinsn.c (print_insn_arg): fixed so that -ve branch
7592 displacements don't get printed as large +ve ones.
7594 Fri Jan 24 14:47:53 1992 Steve Chamberlain (sac at rtl.cygnus.com)
7596 * copy.c, nm.c, objdump.c, size.c : changed to use the
7600 Mon Dec 30 18:34:41 1991 Per Bothner (bothner at cygnus.com)
7602 * bucomm.c (print_arelt_descr): Tweek the output format
7603 so that 'ar tv' output follows Posix 1003.2/D11.
7604 Output is now also identical to Sun's (except __.SYMDEF).
7606 Mon Dec 30 06:09:53 1991 John Gilmore (gnu at cygnus.com)
7608 * Makefile.in: Make `make' output more readable.
7610 Wed Dec 18 15:04:45 1991 Per Bothner (bothner at cygnus.com)
7612 * Makefile.in: Bump to version 1.94.
7614 Wed Dec 11 16:48:09 1991 Steve Chamberlain (sac at cygnus.com)
7616 * ar.c: added "b" to fopens for dos
7617 * configdj.bat, makefile.dos new files from DJ
7619 Tue Dec 10 04:07:26 1991 K. Richard Pixley (rich at rtl.cygnus.com)
7621 * Makefile.in: infodir belongs in datadir.
7623 Sat Dec 7 17:09:37 1991 Steve Chamberlain (sac at rtl.cygnus.com)
7625 * bucomm.h: created to hold prototypes of bucomm.c
7626 * objdump.h: created to hold prototyes of objdump.c
7627 * am29k-pinsn.c: include objdump.h
7628 * ar.c: include bucomm.h, get ar.h from the right place and
7630 * bucomm.c: defunize bfd_fatal
7631 * copy.c: include bucomm.h, lint.
7632 * i960-pinsn.h: include bucomm.h
7633 * m68k-pinsn.h: lint
7634 * nm.c: include bucomm.h, lint
7636 * sparc-pinsn.c: include objdump.h
7640 Fri Dec 6 23:02:14 1991 K. Richard Pixley (rich at rtl.cygnus.com)
7642 * Makefile.in: added standards.text support. install using
7643 INSTALL_PROGRAM and INSTALL_DATA.
7645 * configure.in: configure now does all of it's work from objdir so
7646 make file existence tests against ${srcdir}.
7648 Thu Dec 5 22:46:22 1991 K. Richard Pixley (rich at rtl.cygnus.com)
7650 * Makefile.in: idestdir and ddestdir go away. Added copyrights
7651 and shift gpl to v2. Added ChangeLog if it didn't exist. docdir
7652 and mandir now keyed off datadir by default.
7654 Wed Dec 4 22:42:03 1991 Per Bothner (bothner at cygnus.com)
7656 * Makefile.in: Bump to version 1.93.
7657 * Makefile.in: Add make-strip.o:maybe-strip.c dependency
7658 for make versions that provide half-baked VPATH-support (e.g. Sun's).
7659 * size.c: Improvements suggested by
7661 - Don't emit (Berkeley) headers if no files were found.
7662 - Return a non-zero return code on failure.
7664 Sat Nov 30 21:34:19 1991 Steve Chamberlain (sac at rtl.cygnus.com)
7666 Changes due to include file renaming:
7667 * am29k-pinsn.c: a29k-opcode.h -> opcode/a29k.h
7668 * sparc-pinsn.c: sparc-opcode.h -> opcode/sparc.h
7669 * m68k-pinsn.c: m68k-opcode.h -> opcode/m68k.h
7670 * nm.c: stab.gnu.h -> aout/stab_gnu.h
7672 Tue Nov 19 19:20:43 1991 Per Bothner (bothner at cygnus.com)
7674 * README: Mention MINIMIZE flag for bfd's make.
7676 Mon Nov 18 12:05:37 1991 Per Bothner (bothner at cygnus.com)
7678 * README: Various improvements.
7680 Sun Nov 17 23:40:59 1991 Per Bothner (bothner at cygnus.com)
7682 * Makefile.in: Bump to version 1.92.
7683 * version.c, Makefile.in: Get version string from Makefile.
7684 * copy.c, is-strip.c, not-strip.c, maybe-strip.c, Makefile.in:
7685 Make the same change that we earlier did for ar/ranlib:
7686 Generate two different binaries for strip and copy and use
7687 a global variable with different values to distinguish
7688 ostrip from copy. (-1 means to use argv[0] to decide,
7689 so you can get the old behavior, but it is no longer the default).
7690 * copy.c (copy_file): Set EXEC_P of output bfd if input is so.
7691 * copy.c (main): If is_strip==-1, compare last 5 chars
7692 of argv[0], not the whole path.
7693 * copy.c (main): Return 0, not 1.
7694 * copy.c (setup_sections): Fix due to change in bfd_make_section
7695 now failing if asked for a duplicate section.
7696 * strip.c, ostrip.c: Removed obsolete files.
7697 * ar.c, not-ranlib.c, maybe-ranlib.c:
7698 Change encoding of is_ranlib variable to be consistent
7699 with is_strip for strip.copy (i.e -1 to means use argv[0]).
7701 Thu Nov 14 20:11:02 1991 Per Bothner (bothner at cygnus.com)
7703 * version.c (program_version): Update to version 1.92.
7705 Tue Nov 12 16:17:53 1991 Per Bothner (bothner at cygnus.com)
7707 * ar.c (get_pos_bfd): Previous fix was missing a "break".
7709 Thu Nov 7 08:55:56 1991 Steve Chamberlain (sac at cygnus.com)
7711 * am29k-pinsn.c: Fixed bug in mtacc, dmac and fmac instruction
7712 encodings. (Thaks to David Wood)
7714 Sun Nov 3 14:50:23 1991 Per Bothner (bothner at cygnus.com)
7716 * Makefile.in ($(DIST_NAME).tar.Z), TODO: Various fixes.
7717 * ar.c (get_pos_bfd): Fix to handling of before/after
7718 positioning options.
7719 * bucomm.c (fatal): MISSING_VFPRINTF is no longer an issue,
7720 since libiberty contains vfprintf etc if otherwise missing.
7721 * m68k-pinsn.c (print_insn_arg): Support BB/BW/BL
7722 type operands, as used by branch instructions.
7723 * nm.c: Delegate printing of symbols to BFD,
7724 by using bfd_print_symbol to do the formatting.
7726 Mon Oct 28 11:20:47 1991 Steve Chamberlain (steve at cygnus.com)
7728 * ar.c (write_archive.c): added unlink before rename since some
7729 systems can't rename onto an existant file.
7731 Mon Oct 21 09:47:23 1991 Steve Chamberlain (steve at rtl.cygnus.com)
7733 * nm.c: now doesn't crash if a symbol with no section and no
7736 Thu Oct 17 15:25:50 1991 Per Bothner (bothner at cygnus.com)
7738 * Makefile.in, version.c: Bump to version 1.91.
7740 Wed Oct 16 11:45:36 1991 Per Bothner (bothner at cygnus.com)
7742 * Makefile.in, ar.c, bucomm.c, copy.c, cplus-dem.c, filemode.c,
7743 i960-pinsn.c, m68k-pinsn.c, nm.c, objdump.c, size.c, sparc-pinsn.c,
7744 * strip.c: Add or update Copyright notice.
7745 * TODO: Add note on 'nm -a'.
7746 * version.c: Update version number to 1.90.
7747 * Makefile.in: Fix making of documentation for dist.
7749 Tue Oct 15 00:17:17 1991 Per Bothner (bothner at cygnus.com)
7752 * Makefile.in: New kludgy rules for making a tarfile.
7753 * Makefile.in: Fix bindir path.
7755 Mon Oct 14 17:34:29 1991 Roland H. Pesch (pesch at cygnus.com)
7757 * Makefile.in: add targets binutils.mm, binutils.me
7759 Fri Oct 11 22:44:21 1991 John Gilmore (gnu at cygnus.com)
7761 * Makefile.in: Avoid Sun Make VPATH bugs by adding dependencies.
7763 Fri Oct 11 12:51:33 1991 Roland H. Pesch (pesch at cygnus.com)
7765 * Makefile.in: add target "binutils.ms"
7767 * binutils.texinfo: minor restructuring for texi2roff comfort.
7769 Fri Oct 11 04:12:28 1991 John Gilmore (gnu at cygnus.com)
7771 Restructure configuration scheme for bfd, binutils, ld.
7773 * include/sys/h-*.h: Move to bfd/hosts/h-*.h.
7774 * configure.in: Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
7775 Change some config names to match other dirs.
7776 * *.c: Include bfd.h before sysdep.h, so ansidecl and PROTO()
7778 * Makefile.in: Use -I. to get sysdep.h.
7780 Wed Oct 9 22:42:56 1991 Per Bothner (bothner at cygnus.com)
7782 * nm.c (print_symbols): Handle NULL name field of symbol.
7783 * Makefile.in: Removed spurious comment.
7785 Tue Oct 8 16:55:03 1991 Roland H. Pesch (pesch at cygnus.com)
7787 * binutils.texinfo: minor typos, phrasing, formatting fixes.
7789 Tue Oct 8 15:13:20 1991 Per Bothner (bothner at cygnus.com)
7791 * configure.in: Get host file from ../bfd/config, not config.
7792 * config/*: Remove config directory and its files.
7794 Tue Oct 8 13:58:59 1991 Roland H. Pesch (pesch at cygnus.com)
7796 * Makefile.in: new targets binutils.dvi, binutils.info
7798 * binutils.texinfo: remove most remaining FIXME's, delete
7799 references to __.SYMDEF by name
7802 Tue Oct 8 10:23:44 1991 Steve Chamberlain (steve at cygnus.com)
7804 * objdump.c (print_address) Print addresses nicely.
7806 Mon Oct 7 11:31:05 1991 Per Bothner (bothner at cygnus.com)
7808 * ar.c, Makefile.in, new files {is,not,maybe}-ranlib.c:
7809 Make two different binaries for ar and ranlib, instead of
7810 distinguishing them at run time using argv[0].
7811 (Old behavior is still available if you "make ar_with_ranlib",
7812 but it is not the default.)
7813 * ranlib.sh (new): An alternative one-line
7814 shell implementation of ranlib.
7816 Fri Oct 4 21:49:44 1991 John Gilmore (gnu at cygnus.com)
7818 * objdump.c: Cope with renames of a few BFD types & enums.
7820 Fri Oct 4 19:08:09 1991 Roland H. Pesch (pesch at cygnus.com)
7822 * binutils.texinfo: add new file (rudimentary docn)
7824 Mon Sep 30 12:30:39 1991 Per Bothner (bothner at cygnus.com)
7826 * config/hmake-news: Add new file (for Sony NEWSOS3).
7827 * bucomm.c (fatal): Conditionally compile fatal() depending on
7828 MISSING_VFPRINTF, and don't confuse the issue with NO_VARARGS.
7829 * objdump.c (dump_headers): Trivial output format change.
7830 * objdump.c (display_info): Loop over integers, not enums,
7831 to appease old compilers.
7833 Mon May 20 16:14:07 1991 Steve Chamberlain (steve at cygint.cygnus.com)
7835 *objdump.c *nm.c *copy.c: Changed some types to work with 64 bit
7838 Thu May 16 16:06:55 1991 Steve Chamberlain (steve at cygint.cygnus.com)
7840 * objdump.c (print_address): Make disasembled output more
7841 consistent with gdb and as: Add 0x when printing hex.
7842 Don't print extra leading zeros.
7843 Attempt to not print "filename.o".
7844 * objdump.c: Add some enum-to-int casts to accomodate old compilers.
7847 Fri May 3 22:21:44 1991 John Gilmore (gnu at cygint.cygnus.com)
7849 * copy.c: Change =& constructs to = &, since they confuse older
7857 version-control: never