(copy_file): Don't copy EXEC_P specially here.
This permits strip to generate an executable file on UnixWare;
it still does not actually strip the debugging information.
alignment adjustment. Clear BSF_SECTION_SYM if symbol is moved to
a different section. Use time_t for time variable.
(setup_sections): Only put sections with contents in output NLM.
(i386_mangle_relocs): No symbols are common at this point. Add
casts to avoid warnings.
(main): Set the bss vma to always follow the data section. Move
symbols into new sections, and adjust values by output_offset.
(setup_sections): Don't copy all sections, but instead point all
text sections to .text, all data sections to .data, and all bss
sections to .bss.
(copy_sections): Adjust accordingly.
* configure.in: If we have some *-*-netware* target, or are using
all targets, set BUILD_NLMCONV to $(NLMCONV_PROG) in Makefile.
* Makefile.in (PROGS): Use $(BUILD_NLMCONV) rather than
$(NLMCONV_PROG).
(dump_headers): Don't test for SEC_BALIGN if it's not defined by bfd.h.
(The latter is done with #ifdef in case it turns out SEC_BALIGN has to be
put back. I didn't *see* any uses of it besides this one, though.)
sections before looking at the symbols. Move all common symbols
into .bss section. Automatically define _edata and _end. Only
export symbols in the export list, with multiple prefixes if
necessary. Warn if no version. Always create extended header.
Set date automatically if not already set.
(setup_sections): Count size of bss sections.
(mangle_relocs, i386_mangle_relocs): Accept section argument, and
take reloc_count as a changeable pointer; changed callers.
(i386_mangle_relocs): Remove PC relative relocs within a section,
as they require no adjustment.
* nlmheader.y: Fixed memory allocation throughout: token STRING is
now allocated on the heap, and freed if not needed. Null
terminated copyright message. Accept version with only two
strings.
(symbol_list_opt): New nonterminal, either symbol_list or empty.
(symbol_list): Use left recursion to avoid overflowing parser
stack.
(yylex): Rearranged beginning of line check. Accept quoted
strings using single quotes. End generic argument at comment
character or parentheses.
(string_list_append): Fixed.
(string_list_append1): New function.
(bsssize, datasize, textsize): New global variables.
(bss_section_name, data_section_name, text_section_name): Removed.
(print_berkeley_format): Map berkeley_sum over all the sections,
rather than only reporting sizes of specifically named sections.
* Makefile.in ($(OBJDUMP_PROG)): Removed dependency on size.o.
* objdump.c (remove_useless_symbols): New function.
* objdump.c (comp): Simplify.
* objdump.c (dis-assemble_data): Make simpler and more
efficient how we filter out useless symbols: Just filter
BEFORE the sort (using remove_useless_symbols).
* objdump.c (objdump_print_address): Simplify.
Change output syntax to match gdb.
* i386-pinsn.c: Removed. Subsumed by ../opcodes/i386-dis.c.
* Makefile.in: Adjust accordingly.
* objdump.c: Support new-style disassemblers (ones that use
the interface of ../include/dis-asm.h).
Migrated dejagnu testcases and support files for testing nm to
binutils/testsuite from deja-gnu. These files were moved "as is"
with no modifications. This migration is part of a major overhaul
of dejagnu. The modifications to these testcases, etc., which
will allow them to work with the new version of dejagnu will be
made in a future update.
* Makefile.in (LIBIBERTY): Use LIBIBERTY_BIN_DIR.
* Makefile.in (DEMANGLER_PROG): New program to build. Add macro
and rule.
* Makefile.in (PROGS): Add DEMANGLER_PROG.
* Makefile.in (distclean): Remove sysdep.h.
* size.c: Use %u format where appropriate.
* objdump.c: Standardize: L_SET -> SEEK_SET.
* objdump.c: Use new macro bfd_asymbol_bfd.
* configure.in: Allow std-host as the default ${mys_host}.
* size.c: Use bfd_size_type (and long) where appropriate.
* ar.c: Make writing a map the default, to be compatible
with SYSV and Posix.2. Remove some bogus kludges that
handled __.SYMDEF directly.
* NEWS: New file.
* arsup.h, bucomm.h, objdump.h: Remove EXFUN from binutils.
It still remains as a local macro in gmalloc.c, which is derived
from some other copy of GNU Malloc somewhere (FIXME).
* ar.c, objdump.c, size.c: Replace EXFUN with PROTO. Make static
fns really static.
* arsup.h: Declare extract_files.
Add long option names. Re-think option letters to be more
consistent.
* copy.c: New function filter_symbols() for stripping only
debug-symbols and/or local symbols. Use these to support
the previously-missing options of the old FSF strip.
Tue Aug 18 13:28:44 1992 Ian Lance Taylor (ian@cygnus.com)
* config/mh-apollo68v: removed -g from CC definition.
* Makefile.in: always create installation directories.
program), follow traditional argv processing:
'strip file1 file2' now strips file1 and file2, rather
than stripping file1 (as input), leaving output in file2.
rules, since these are used when building a distribution.
* Makefile.in (arlex.c): Don't re-direct output, since that
leaves a bogus output files if it fails.
* Makefile.in: added standards.text support. install using
INSTALL_PROGRAM and INSTALL_DATA.
* configure.in: configure now does all of it's work from objdir so
make file existence tests against ${srcdir}.
Thu Dec 5 22:46:22 1991 K. Richard Pixley (rich at rtl.cygnus.com)
* Makefile.in: idestdir and ddestdir go away. Added copyrights
and shift gpl to v2. Added ChangeLog if it didn't exist. docdir
and mandir now keyed off datadir by default.
* version.c, Makefile.in: Get version string from Makefile.
* copy.c, is-strip.c, not-strip.c, maybe-strip.c, Makefile.in:
Make the same change that we earlier did for ar/ranlib:
Generate two different binaries for strip and copy and use
a global variable with different values to distinguish
ostrip from copy. (-1 means to use argv[0] to decide,
so you can get the old behavior, but it is no longer the default).
* copy.c (copy_file): Set EXEC_P of output bfd if input is so.
* copy.c (main): If is_strip==-1, compare last 5 chars
of argv[0], not the whole path.
* copy.c (main): Return 0, not 1.
* copy.c (setup_sections): Fix due to change in bfd_make_section
now failing if asked for a duplicate section.
* strip.c, ostrip.c: Removed obsolete files.
* ar.c, not-ranlib.c, maybe-ranlib.c:
Change encoding of is_ranlib variable to be consistent
with is_strip for strip.copy (i.e -1 to means use argv[0]).
i960-pinsn.c, m68k-pinsn.c, nm.c, objdump.c, size.c, sparc-pinsn.c,
* strip.c: Add or update Copyright notice.
* TODO: Add note on 'nm -a'.
* version.c: Update version number to 1.90.
* Makefile.in: Fix making of documentation for dist.
* include/sys/h-*.h: Move to bfd/hosts/h-*.h.
* configure.in: Revise to symlink sysdep.h to ../bfd/hosts/h-xxx.h.
Change some config names to match other dirs.
* *.c: Include bfd.h before sysdep.h, so ansidecl and PROTO()
get defined first.
* Makefile.in: Use -I. to get sysdep.h.
Make two different binaries for ar and ranlib, instead of
distinguishing them at run time using argv[0].
(Old behavior is still available if you "make ar_with_ranlib",
but it is not the default.)
* ranlib.sh (new): An alternative one-line
shell implementation of ranlib.
MISSING_VFPRINTF, and don't confuse the issue with NO_VARARGS.
* objdump.c (dump_headers): Trivial output format change.
* objdump.c (display_info): Loop over integers, not enums,
to appease old compilers.