* emultempl/linux.em: New file providing support for linking
against Linux shared libraries.
* config/i386-linux.mt (ei386linux.c): Depend upon linux.em.
* emulparams/i386linux.sh (TEMPLATE_NAME): Define as linux.
* i386linux.c: Many new functions and definitions for linker
support for Linux shared libraries.
* bfd-in.h (bfd_linux_size_dynamic_sections): Declare.
* bfd-in2.h: Rebuild.
* mpw-make.in (.c.o, .gc.o): Prefix segment names with gdb_.
(top.c.o, annotate.c.o): Add build rules.
* macgdb.r (SysTypes.r): Include.
('vers'): New resource, version info.
(mFile, mEdit, mDebug): Enable all menu items.
(mDebug): Add key equivalents for continue, step, next.
(wConsole): Add zoom and close boxes to window.
* mac-xdep.c (new_console_window): New function, code taken from
mac_init.
(mac_command_loop): Use GetCaretTime for wait interval, call
do_idle on null events.
(do_idle): New function.
(zoom_window): Implement zooming.
(v_scroll_proc): New function, handles vertical scrolling.
(activate_window): Do activation of console window.
(do_menu_command): Implement items of file, edit, and debug menus.
(do_keyboard_command): Fix command extraction.
(adjust_console_sizes, adjust_console_text): New functions.
(hacked_fprintf, hacked_vfprintf, hacked_fputs, hacked_fputc,
hacked_putc): Don't call draw_console.
* ser-mac.c (mac_open): Add an error message for invalid ports.
(first_mac_write): New global.
(mac_write): Use first_mac_write to sleep on first several writes.
* config/obj-vms.h (DBG_S_C_COMPLX4, DBG_S_C_COMPLX8): define
these new VMS symbol-type macros for `complex float' and
`complex double' support. Their values come from the existing
DSC$K_DTYPE_FC and DSC$K_DTYPE_DC macros in <descrip.h>.
(DBG_S_C_REAL8_G, DBG_S_C_COMPLX8_G): G_float versions of
REAL8 and COMPLX8; not used yet, because gcc outputs the same
.stabs for `double' regardless of whether `-mg' is used.
config/obj-vms.c (VMS_typedef_parse) [case 'r']: add entries
for gcc2's predefined types "complex float", "complex double",
and "complex long double" (identical to complex double).
(elf_dt_needed_name): New accessor macro.
* elfcode.h (elf_link_add_object_symbols): If elf_dt_needed_name
is set, use that instead of the filename for the DT_NEEDED dynamic
entry.
* elf.c (bfd_elf_set_dt_needed_name): New function.
* bfd-in.h (bfd_elf_set_dt_needed_name): Declare.
* bfd-in2.h: Rebuilt.
(ld_emulation_xfer_type): Add new field open_dynamic_archive.
* ldemul.c: Include ldexp.h and ldlang.h.
(ldemul_open_dynamic_archive): New function.
* ldfile.h (ldfile_open_file_search): Declare.
* ldfile.c: Include ldemul.h.
(try_open_bfd): Rename from cache_bfd_openr. Return boolean
argument, not bfd *. Change all callers.
(ldfile_open_file_search): Rename from open_a. Return boolean
argument, not bfd *. Clean up. Change all callers.
(ldfile_open_file): If doing a dynamic link, call
ldemul_open_dynamic_archive rather than assuming the extension of
a dynamic object is ".so".
* emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
New function.
(ld_${EMULATION_NAME}_emulation): Initialize open_dynamic_archive
field.
* emultempl/sunos.em (ld_${EMULATION_NAME}_emulation): Likewise.
* ld.h (args_type): Add new field interpreter.
* lexsup.c (parse_args): Add dynamic-linker to longopts, and
handle it.
* ldmain.c (main): Initialize command_line.interpreter to NULL.
* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Get
the ELF backend to return the .interp section. If
command_line.interpreter is not NULL, set the contents of .interp
to it.
* ld.texinfo: Mention -dynamic-linker.
argument, and set it to the .interp section.
* bfd-in.h (bfd_elf32_size_dynamic_sections): Update prototype.
(bfd_elf64_size_dynamic_sections): Likewise.
* bfd-in2.h: Rebuilt.
* Makefile.in (site.exp): Don't insert host_os, etc.
(just-check): Just use RUNTEST with RUNTESTFLAGS only.
(distclean): Check existence of subdir.
* gdb.base/configure.in (hppa*-*-hpux*): Recognize.
* gdb.base/Makefile.in: General cleanup and simplification.
Use CC, CFLAGS, and LDFLAGS instead of ..._FOR_TARGET versions
to build executables. Use default rule to build .o files.
(EXPECT, RUNTEST, CC): Fix relative pathname.
(site.exp): Don't insert host_os, etc.
* gdb.base/signals.c (main): Don't call signal unless SIGALRM
and/or SIGUSR1 defined.
* gdb.base/watchpoint.c: Don't include stdio.h a second time.
* gdb.c++/Makefile.in: General cleanup and simplification.
Use CC, CFLAGS, and LDFLAGS instead of ..._FOR_TARGET versions
(CFLAGS): Remove.
(EXPECT, RUNTEST_FOR_TARGET, CXX): Fix relative pathname.
* lexsup.c (parse_args): Add traditional_format to longopts, and
handle it.
* ldmain.c (main): Initialize config.traditional_format to false.
* ldlang.c (ldlang_open_output): Set BFD_TRADITIONAL_FORMAT in BFD
flags of output_bfd according to config.traditional_format.
* ld.texinfo: Document -traditional-format.