* configure.in: Look for --enable-shared. Change the value of
BFDLIB when linking against a shared library on SunOS.
* configure: Rebuild.
* configure.host: If using a shared BFD library, try to pass a
reasonable -rpath option when linking.
* Makefile.in (BFDLIB): Set to @BFDLIB@.
* Makefile.in (SONAME): New variable.
($(SHLINK)): Make a link to the transformed name, as well.
(stamp-tshlink): New target.
(install): Skip stamp-tshlink during install.
* configure.host: When making a shared library, set HLDFLAGS to
pass an appropriate -rpath option. Use the make variable SONAME
as the shared library soname, rather than computing it here. On
SunOS, build stamp-tshlink in place of $(SHLINK).
* Makefile.in (SONAME): New variable.
($(SHLINK)): Make a link to the transformed name, as well.
(stamp-tshlink): New target.
(install): Skip stamp-tshlink during install.
Tom Tromey [Wed, 7 Feb 1996 17:44:58 +0000 (17:44 +0000)]
* gdbtk.tcl (create_file_win): Eliminate text widget B1 binding so
double-clicking will work again.
(create_asm_win): Put "break" at end of all B1 bindings.
(create_file_win): Lower "sel" tag, don't raise it.
(ensure_line_visible): New proc.
(update_listing, update_assembly): Use it.
(create_copyright_window): Destroy window on Leave event.
(create_command_window): Put "break" at end of all B2 bindings.
Per Bothner [Wed, 7 Feb 1996 05:43:04 +0000 (05:43 +0000)]
* stabsread.c (read_range_type): If !self-subrange and language
is Chill, assume a true range. If a true_range is a sub_subrange,
use builtin_type_int for index_type.
This is for PR chill/8894.
J.T. Conklin [Tue, 6 Feb 1996 22:19:05 +0000 (22:19 +0000)]
* configure.in (*-*-netbsd*): Set COREFILE to netbsd-core.c.
don't define TRAD_HEADER.
* configure: Rebuild.
* netbsd-core.c: New file, support for NetBSD core files.
* hosts/*nbsd.h: Removed.
* i960-dis.c (mem): Add HX dcinva instruction.
(reg): Add HX instructions.
start-sanitize-i960xl
The HX instructions are the XL instructions, so this just involves
arranges for them to not be sanitized.
end-sanitize-i960xl
* config/tc-i960.c (ARCH_HX): Define.
(arch_tab): Add HX.
(targ_has_sfr): Handle ARCH_HX.
(targ_has_iclass): Handle ARCH_HX.
(tc_coff_fix2rtype): Add return 0 to avoid warning.
(tc_headers_hook): If the architecture was specified explicitly,
use it when setting the flags. Set the extern variable coff_flags
rather than headers->filehdr.f_flags, since the latter is set
unconditionally in obj-coff.c.
(i960_handle_align): Remove unused variable fixp.
Support for building bfd and opcodes as shared libraries, based on
patches from Alan Modra <[email protected]>:
* Makefile.in (LIBDEPS): New variable.
(LIBS): Use -L../bfd -lbfd.
(gprof): Depend upon $(LIBDEPS) rather than $(LIBS).
Support for building bfd and opcodes as shared libraries, based on
patches from Alan Modra <[email protected]>:
* configure.in: Set OPCODES and BFD to search directories.
Substitute OPCODES_DEP and BFDDEP. On SunOS, set HLDFLAGS.
* configure: Rebuild.
* Makefile.in (LDFLAGS, HLDFLAGS): New variables.
(LIBDEPS): New variable.
(as.new0: Depend upon $(LIBDEPS) rather than $(LIBS). Use
$(HLDFLAGS) in link.
(check): Set LD_LIBRARY_PATH in the environment.
Support for building bfd and opcodes as shared libraries, based on
patches from Alan Modra <[email protected]>:
* configure.in (HLDFLAGS): New substitution.
* configure: Rebuild.
* configure.host: Set HLDFLAGS on SunOS.
* Makefile.in (HLDFLAGS): New variable.
(BFDDEP): New variable.
(BFDLIB): Change to -L../bfd -lbfd.
($(LD_PROG)): Depend upon $(BFDDEP) rathern than $(BFDLIB). Use
$(HLDFLAGS) in link.
(check): Set LD_LIBRARY_PATH in the environment.
Support for building as a shared library, based on patches from
Alan Modra <[email protected]>:
* configure.in: Add AC_ARG_ENABLE for shared and commonbfdlib.
New substitutions: ALLLIBS, PICFLAG, SHLIB, SHLIB_CC,
SHLIB_CFLAGS, COMMON_SHLIB, SHLINK.
* configure: Rebuild.
* Makefile.in (ALLLIBS): New variable.
(PICFLAG, SHLIB, SHLIB_CC, SHLIB_CFLAGS): New variables.
(COMMON_SHLIB, SHLINK): New variables.
(.c.o): If PICFLAG is set, compile twice, once PIC, once normal.
(STAGESTUFF): Remove variable.
(all): Depend upon $(ALLLIBS) rather than $(TARGETLIB).
(stamp-piclist, piclist): New targets.
($(SHLIB), $(SHLINK)): New targets.
($(OFILES)): Depend upon stamp-picdir.
(disassemble.o): Build twice if PICFLAG is set.
(MOSTLYCLEAN): Add pic/*.o.
(clean): Remove $(SHLIB), $(SHLINK), piclist, and stamp-piclist.
(distclean): Remove pic and stamp-picdir.
(install): Install shared libraries.
(stamp-picdir): New target.
Support for building as a shared library, based on patches from
Alan Modra <[email protected]>:
* configure.in: Add AC_ARG_ENABLE for shared and commonbfdlib.
New substitutions: ALLLIBS, PICFLAG, SHLIB, SHLIB_CC,
SHLIB_CFLAGS, COMMON_SHLIB, PICLIST, SHLINK.
* configure: Rebuild.
* configure.host: If --enable-shared, adjust shared library stuff
based on the host. If the host is SunOS, and the linker supports
-rpath, set HLDFLAGS to use it.
* Makefile.in (ALLLIBS): New variable.
(PICFLAG, SHLIB, SHLIB_CC, SHLIB_CFLAGS): New variables.
(COMMON_SHLIB, SHLINK): New variables.
(.c.o): If PICFLAG is set, compile twice, once PIC, once normal.
(STAGESTUFF): Remove variable.
(all): Depend upon $(ALLLIBS) and @PICLIST@ rather than
$(TARGETLIB).
(stamp-ofiles): New target, like old ofiles target, but build
using a temporary file and move-if-change, and touch stamp-ofiles
when done.
(ofiles): Just depend upon stamp-ofiles.
(stamp-piclist, piclist): New targets.
($(SHLIB), $(SHLINK)): New targets.
(targets.o, archures.o): Build twice if PICFLAG is set.
(do_mostlyclean): Remove pic/*.o.
(do_clean): Remove stamp-ofiles, $(SHLIB), $(SHLINK), piclist, and
stamp-piclist.
(do_distclean): Remove pic and stamp-picdir.
(install): Install shared libraries.
($(OFILES)): Depend upon stamp-picdir.
(stamp-picdir): New target.
Fred Fish [Sat, 3 Feb 1996 23:47:12 +0000 (23:47 +0000)]
* libcoff.h (bfd_coff_link_add_one_symbol): Combine macro args back into
one line. Some compilers (sunos 4.1.3 for example) won't accept args
split across more than one line.
Fred Fish [Sat, 3 Feb 1996 19:39:34 +0000 (19:39 +0000)]
* command.c (add_cmd): Add missing initialization for enums member.
Reorder members to match structure declaration to make it easier to
tell when one is missing.
Fred Fish [Sat, 3 Feb 1996 18:06:12 +0000 (18:06 +0000)]
* exec.c (exec_file_command): Fix problem reported by Hans Verkuil
([email protected]) where filename in malloc'd memory is referenced
after being freed.
Jeff Law [Fri, 2 Feb 1996 19:14:40 +0000 (19:14 +0000)]
* elf32-hppa.c (elf32_hppa_backend_symbol_table_processing): Don't
try to do arithmetic on a void *, cast it to a unsigned char * first.
Some solaris compilers don't like void * arithmetic.
* write.c (write_relocs): Use S_IS_DEFINED and S_IS_COMMON rather
than comparing S_GET_SEGMENT to undefined_section.
(write_object_file): Skip symbols which were equated to an
undefined or common symbol.
* symbols.c (resolve_symbol_value): Use S_IS_DEFINED and
S_IS_COMMON rather than comparing S_GET_SEGMENT to
undefined_section.
(S_GET_VALUE): Likewise. Avoid recursion problems if S_IS_DEFINED
or S_IS_COMMON call S_GET_VALUE.
* config/obj-aout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
* config/obj-aout.c (obj_emit_relocations): If a reloc is equated
to an undefined or common symbol, convert the reloc to be against
the target symbol.
(obj_crawl_symbol_chain): Skip symbols which were equated to an
undefined or common symbol.
* config/obj-bout.h (S_IS_COMMON): Define if not BFD_ASSEMBLER.
* config/obj-bout.c (obj_emit_relocations): If a reloc is equated
to an undefined or common symbol, convert the reloc to be against
the target symbol.
(obj_crawl_symbol_chain): Skip symbols which were equated to an
undefined or common symbol.
* config/obj-coff.c (do_relocs_for): Use S_IS_DEFINED and
S_IS_COMMON rather than comparing S_GET_SEGMENT to
undefined_section.
(yank_symbols): Skip symbols which were equated to an undefined or
common symbol.
Stan Shebs [Thu, 1 Feb 1996 23:25:52 +0000 (23:25 +0000)]
* mpw-mh-mpw (CC_MWC68K): Add options similar to those used
in CC_MWCPPC, and -mc68020 -model far.
(AR_MWLINK68K): Add -xm library.
(AR_AR): Define.
(CC_LD_MWLINK68K): Remove -d.
(EXTRALIBS_MWC68K): Define.
* elf-bfd.h (ELF_LINK_NON_ELF): Define.
* elf.c (_bfd_elf_link_hash_newfunc): Set elf_link_hash_flags to
ELF_LINK_NON_ELF.
* elflink.h (elf_link_add_object_symbols): Reset ELF_LINK_NON_ELF
flag for a newly defined symbol.
(NAME(bfd_elf,record_link_assignment)): Likewise.
(elf_adjust_dynamic_symbol): If ELF_LINK_NON_ELF is set, try to
set the DEF or REF_REGULAR flags correctly.
* elf32-i386.c (elf_i386_check_relocs): Don't record a symbol with
a PLT32 reloc as dynamic.
(elf_i386_adjust_dynamic_symbol): If a symbol with a PLT32 reloc
is not referenced by a dynamic object, and we are not making a
shared object, then don't make a PLT entry. If we do make a PLT
entry, make sure the symbol has been recorded as dynamic.
Stan Shebs [Thu, 1 Feb 1996 02:59:15 +0000 (02:59 +0000)]
* config/i386/nm-i386mach.h (CHILD_PREPARE_TO_STORE): Move to
here from config/i386/xm-i386mach.h, fix name.
* config/i386/nm-sun386.h: Ditto, from config/i386/xm-sun386.h.
* config/i386/nm-ptx4.h (CHILD_PREPARE_TO_STORE): Move to
here from config/i386/xm-ptx4.h.
* config/i386/nm-ptx4.h: Ditto, from config/i386/xm-ptx.h.
* config/i386/nm-symmetry.h: Ditto, from config/i386/xm-symmetry.h.
* config/m68k/nm-sun3.h: Ditto, from config/m68k/xm-sun3.h.
more housekeeping
Stan Shebs [Thu, 1 Feb 1996 02:47:32 +0000 (02:47 +0000)]
* config/sparc/xm-sparc.h (HAVE_WAIT_STRUCT): Remove, never used.
* config/sparc/nm-nbsd.h (CHILD_PREPARE_TO_STORE): Move to here
from config/sparc/xm-nbsd.h.
* config/sparc/nm-sun4os4 (CHILD_PREPARE_TO_STORE): Ditto, from
config/sparc/xm-sparc.h.
* config/sparc/nm-sun4sol2.h: New file, renamed from nm-sysv4.h.
(PRSVADDR_BROKEN): Move here from xm-sun4sol2.h.
* config/sparc/sun4sol2.mh (NAT_FILE): Update.
* config/sparc/xm-sun4os4.h (HAVE_TERMIOS): Remove.
housekeeping
Jeff Law [Wed, 31 Jan 1996 21:44:24 +0000 (21:44 +0000)]
* gdb.base/break.exp: Don't test for program exit or exit status
if $noresults if nonzero.
* gdb.base/langs.exp: Likewise.
* gdb.base/watchpoint.exp: Likewise.
For proelf targets were we can't even tell if a process exits.
Jeff Law [Wed, 31 Jan 1996 21:24:38 +0000 (21:24 +0000)]
* gdb.base/default.exp: Remove extraneous call to load gdb.exp.
* gdb.chill/pr-8405.exp: Move skip_chill_tests check to just before
trying to compile the testcase.
Ian Lance Taylor [Wed, 31 Jan 1996 21:22:02 +0000 (21:22 +0000)]
* elflink.h (elf_bfd_final_link): Don't output initial dummy
symbol or section symbols if stripping all symbols and this is not
a relocateable link. Don't output the symbol string table if
there are no symbols.
(elf_link_flush_output_syms): Don't do anything if there are no
symbols to flush.
Fred Fish [Wed, 31 Jan 1996 20:35:51 +0000 (20:35 +0000)]
* config/i386/xm-linux.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT):
Define to what should be reasonable values. However, apparently
a bug in linux mmap prevents mapped symbol tables from working.
* configure.in (m68*-apple-aux*): New target.
* config/te-aux.h: New file.
* config/obj-coff.c (compare_external_relocs): New static function
if TE_AUX.
(do_relocs_for): Sort relocs if TE_AUX.
(fixup_segment): If TE_AUX, store common symbol value in segment.
* config/tc-m68k.h (TARGET_FORMAT): Define if TE_AUX.
Ian Lance Taylor [Wed, 31 Jan 1996 17:28:44 +0000 (17:28 +0000)]
* config/tc-mips.c (s_mips_globl): Set BSF_OBJECT if it is not
BSF_FUNCTION.
(s_cpload): Set BSF_OBJECT for _gp_disp symbol.
* read.c (s_lcomm): If S_SET_SIZE is defined, set the size of the
symbol.
* ecoff.c (add_procedure): Set the BSF_FUNCTION flag.
(ecoff_build_symbols): If S_SET_SIZE is defined, set the size of
an undefined symbol and the size of a function symbol.
* config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
for all common symbols.
Fred Fish [Wed, 31 Jan 1996 02:36:07 +0000 (02:36 +0000)]
* interp.c (LoadMemory): Enclose text following #endif in /* */.
* support.h: Remove superfluous "1" from #if.
* support.h (CHECKSIM): Remove stray 'a' at end of line.
Fred Fish [Wed, 31 Jan 1996 02:31:02 +0000 (02:31 +0000)]
* defs.h (errno.h>: Move #include closer to head of file to solve
obscure problem with systems that declare perror with const arg, in
both errno.h and stdio.h, and const is defined away by intervening
local include.
Fred Fish [Tue, 30 Jan 1996 22:47:23 +0000 (22:47 +0000)]
From Jon Reeves <[email protected]>:
* i386-stub.c (getpacket): Change fprintf stream from "gdb" to stderr.
(mem_fault_routine): Fix misplaced volatile type qualifier in decl.
Ian Lance Taylor [Tue, 30 Jan 1996 18:49:10 +0000 (18:49 +0000)]
* Makefile.in (do_maintainer_clean): Remove $(srcdir)/bfd-in2.h,
$(srcdir)/libbfd.h and $(srcdir)/libcoff.h.
(maintainer-clean): Warn about deleting special files.
(bfd-in2.h, libbfd.h, libcoff.h): New targets.
Ian Lance Taylor [Tue, 30 Jan 1996 00:01:44 +0000 (00:01 +0000)]
From Basim Kadhim <[email protected]>:
* ecoff.c (struct extsym_info): Define.
(_bfd_ecoff_bfd_final_link): Pass a pointer to struct extsym_info
to ecoff_link_write_external.
(ecoff_link_write_external): Accept a struct extsym_info pointer.
Strip symbols when appropriate.