Make cross-compilation for the Hurd more friendly.
From Jeff Bailey <jbailey@gnu.org>:
* configure.in: Use AC_CHECK_TOOL to find MiG.
* Makefile.in (MIG): New variable.
* config/i386/i386gnu.mh (MIG): Remove.
* configure: Regenerated.
* configure.in: Remove the addition of sol-thread.c to the
CONFIG_INITS list. This caused problems with init.c, because
sol-thread.c would be grepped twice for _initialize_* functions.
* configure: Ditto.
* Makefile.in: Add FIXME for init.c.
* configure.host, configure.tgt: Comment out Gould configs.
* Makefile.in: Comment out Gould-related actions.
* gould-xdep.c, gould-tdep.c, config/gould/*: Comment out.
* NEWS: Mention obsolete status.
And the first one bites the dust...
* Makefile.in: Add GDBTK_CFLAGS - this is now used to hold
-fwritable-strings when compiling with Tk8.1.
* configure.in: Add GDBTK_CFLAGS, set it to -fwritable-strings for
Tcl/Tk8.1 & greater.
* acinclude.m4: Move the rest of the defines to find Itcl, Itk &
Tix from aclocal.m4 to here.
* aclocal.m4: regenerate.
* configure: regenerate.
* gdbtk-hooks.c (x_event): Tcl_ObjGetVar2 was removed from
Tcl8.1. Use Tcl_GetVar2 instead.
* gdbtk-hooks.c (gdbtk_trace_find): Fix up call to
Tcl_GlobalEvalObj for Tcl/Tk 8.1.
* gdbtk-hooks.c (gdbtk_trace_start_stop): Call to Tcl_EvalObj was
inefficient, replace with call to Tcl_GlobalEval.
* gdbtk.c: Don't swap out the Tcl_Alloc calls in gdbtk.c. We took
care of that in Tcl itself for 8.1.
* gdbtk.c: Remove const from the script string since Tcl8.1 has
taken to scribbling sentinals into strings passed to it again...
* gdbtk-cmds.c (wrapped_call): Change declaration of 1st arg from
char * to PTR to eliminate warning.
* gdbtk-cmds.c (perror_with_name_wrapper): Ditto
* Makefile.in (c-exp.tab.c): use BISON instead of YACC, to pick
the correct value from configure output.
(jv-exp.tab.c): ditto.
(f-exp.tab.c): ditto.
(m2-exp.tab.c): ditto.
* utils.c: <readline/readline.h> instead of "readline/readline.h".
* configure.in (TERM_LIB): Search for the appropriate term library
on the host system.
* configure: Regenerated.
* Makefile.in (TERMCAP): Set based on autoconf check.
* config/*/*.mh: Don't override TERMCAP setting.
than $(READLINE_SRC) so #include <readline/readline.h> will work.
* top.c: #include <readline/history.h> instead of "history.h".
* tracepoint.c: Likewise.
* mac-xdep.c: Likewise.
* config/m68k/tm-m68k.h (NUM_FREGS): m68k-linux patch.
Added NUM_FREGS macro.
* config/m68k/xm-linux.h: m68k-linux patch. New file.
* config/m68k/tm-linux.h: m68k-linux patch. New file.
* config/m68k/nm-linux.h: m68k-linux patch. New file.
* config/m68k/linux.mt: m68k-linux patch. New file.
* config/m68k/linux.mh: m68k-linux patch. New file.
* gdbserver/low-linux.c: m68k-linux patch. Added an ifdef
that checks the value of __GLIBC to decide whether or
not to include sys/reg.h.
* m68klinux-nat.c: m68k-linux patch. New file. Note
both m68k-tdep.c and m68klinux-nat.c contain definitions
for supply_gregset and supply_fpregset. The definitions
in m68k-tdep.c are valid is USE_PROC_FS is defined. Otherwise,
the definitions in m68klinux-nat.c will be used. This is a
bit of a hack. The supply_* routines do not belong in
*_tdep.c files. But, there are several lynx ports that currently
depend on these definitions.
* configure.tgt: m68k-linux patch. Added m68*-*-linux*
gdb_target.
* configure.host: m68k-linux patch. Added m68*-*-linux*
gdb_host.
* Makefile.in: m68k-linux patch. Added compile line for
m68klinux-nat.o
* Moved gdbtk_hooks.c & gdbtk_cmds.c to gdbtk-hooks.c &
gdbtk-cmds.c to comply with the gdb conventions. Changed the
configure & makefile to reflect the change...
* main.tcl (gdbtk_preloop): Call gdbtk_idle on spec. If there was an
error in loading an executible specified on the command line,
then the pre_add_symbol hook would have called gdbtk_busy but
the corresponding call to gdbtk_idle would not have occured.
Also changed some catch calls so they didn't use
"catch {set foo [real_command]}"
but rather the more efficient:
"catch {real_command} foo"
* register.tcl: more catch cleanups
* src.tcl: more catch cleanups
* stack.tcl: more catch cleanups
* target.tcl: more catch cleanups
* tdump.tcl: more catch cleanups
* variables.tcl: more catch cleanups
* watch.tcl: more catch cleanups
* gdbtk.c (gdbtk_init): Fixed a bug in the startup code on Windows
that caused gdbtk not to find the share directory unless
GDBTK_LIBRARY was set.
* gdbtk.c: removed all the commands and hooks from this file so
now it contains only the startup code.
* gdbtk_cmds.c: New file - this contains all the Tcl commands that
gdb defines. All the old commands were moved here, the
string-based commands were converted to object commands, and the
object-based commands were all converted to uniformly use the
call_wrapper. A new function, Gdbtk_Init was added to centralize
initializing the gdb package. Also added gdbtk as a package
into gdbtk_interp.
* gdbtk_hooks.c: New file - All the hooks were moved here, and a new
function, gdbtk_add_hooks was added to centralize adding all these
hook functions. gdbtk_fputs was also modified to handle the new
result_ptr structure. See the comments in gdbtk.h for more
details.
* gdbtk.h: New file - this contains all the defines and globals
shared by gdbtk.c, gdbtk_cmds.c & gdbtk_hooks.c
* Makefile.in, configure.in & configure: mutatis mutandi for the
new files.
* btowc.c: Removed.
* configure.in: Don't see if we need to replace btowc().
* Makefile.in: Don't include LIBOBJS.
* configure: Regenerated.
* gnu-regex.c (regex_compile): Only support i18n [:foo:] if
we have btowc().
* configure.in: Add some tests for gnu-regex.c's benefit.
See if btowc() function is provided in C library.
* configure, config.in: Regenerated.
* Makefile.in (CLIBS, CDEPS): Add @LIBOBJS@ to build btowc.c
if necessary.
* btowc.c: New file.
* gnu-regex.c: Reorder wchar.h and wctype.h includes for Solaris'
benefit.
Drop namespace preserving defines for now.
(INSTALLED_LIBS): Include GDBTKLIBS.
(CLIBS): Likewise.
* configure: Rebuilt.
* configure.in: Put Tcl/Tk libs into GDBTKLIBS, not LIBS.
(GDBTKLIBS): AC_SUBST.
* Makefile.in (BISON): Don't even pretend to use yacc.
(c-exp.tab.o): Use bison -o to use a unique intermediate file.
(jv-exp.tab.o, f-exp.tab.o, m2-exp.tab.o): Likewise.
(TARGET_READ_FP): Define to d10v_read_fp rather than d10v_read_sp.
(TARGET_WRITE_FP): Define to d10v_write_fp rather than d10v_write_sp.
(d10v_write_fp, d10v_read_fp): Add prototypes.
* symtab.c (decode_line_1): Remove assignment of sals[0].pc field.
* symfile.c (simple_overlay_update, simple_overlay_update_1):
Ignore the size of overlay sections. This check is redundant anyway.
* printcmd.c (print_frame_args): Ditto.
* valops.c (value_fetch_lazy): Ditto.
* values.c (unpack_long): Ditto.
* d10v-tdep.c (d10v_frame_chain, d10v_frame_find_saved_regs,
d10v_init_extra_frame_info): Fix some minor bugs so the finish command
works properly.
(show_regs): Change num1 and num2 types from "long long" to "LONGEST".
(d10v_read_fp, d10v_write_fp): New functions.
(d10v_push_arguments): Remove unneeded assigns to "val" and "contents".
(d10v_push_arguments): Fix for pointers and structs.
(d10v_extract_return_value): Fix for pointers and chars.
(uninstall): Add $(EXEEXT) to file name to remove.
(gdb$(EXEEXT)): Rename target from plain gdb.
(gdb1$(EXEEXT)): Rename target from plain gdb1.
(clean, mostlyclean): Add $(EXEEXT) to binary names to remove.
the directory name
* Merge (lots) with foundry-971118-build
* Makefile.in (install-only): install the new gdbtk, not the old
* top.h: add declaration of get_prompt
* top.c (get_prompt): new function
* gdbtk.c (gdbtk_call_command): also run idle hooks for class_trace
commands
(gdbtk_init): add new commands "gdb_get_locals", "gdb_get_args",
"gdb_get_function", "gdb_get_line", "gdb_get_file",
"gdb_tracepoint_exists", "gdb_get_tracepoint_info", "gdb_actions",
and "gdb_prompt"
(gdb_get_vars_command): new function
(gdb_get_line_command): new function
(gdb_get_file_command): new function
(gdb_get_function_command): new function
(gdb_get_tracepoint_info): new function
(gdbtk_create_tracepoint): new function
(gdbtk_delete_tracepoint): new function
(tracepoint_notify): new function
(tracepoint_exists): new function
(gdb_actions_command): new function
(gdb_tracepoint_exists_command): new function
(gdb_prompt_command): new function
* main.tcl: initialize gdbtk_state(readline)
* console.tcl (invoke): get realine working
(activate): add prompt argument for readline
(setprompt): add prompt argument for readline
* interface.tcl (gdbtk_tcl_readline): hack to get readline working
* lots: Merge with foundry-971118-build
* console.tcl (setprompt): get prompt from gdb
* prefs.tcl (pref_set_defaults): add tracepoint defaults
* interface.tcl (gdbtk_tcl_tracepoint): new function
* src.tcl (constructor): set default behavior of left click, make
a tracepoint dot, too
(fill_files): "new" function: ripped out of "location"
(location): use fill_files instead
(do_bp): add support for tracepoints
(bp_line): add support for tracepoints
(set_tracepoint): new function
(config_win): add "Set tracepoint here" to right-click menu
* actiondlg.tcl: new file to help with tracepoint data collection actions
* tracedlg.tcl: new file to help with tracepoints
* Makefile.in: pepper with EXEEXTs in appropriate places,
set SHELL = @SHELL@ for those lame hosts that don't have a /bin/sh
For some reason, EXEEXT isn't getting substututed in correctly
so for now, set EXEEXT to empty string
* aclocal.m4: add EXEEXT setting rule
* configure.in: call it
* configure: regenerate
* Makefile.in: pepper with EXEEXTs in appropriate places,
set SHELL = @SHELL@ for those lame hosts that don't have a /bin/sh
* Makefile.in: add DLLTOOL = @DLLTOOL@, pass on DLLTOOL to
sub makes, change clean rule to also remove *.a to remove
libwigglers.a, in dependencies: add ppc-bdm.o ocd.o ser-ocd.o and
remove remote-wiggler.o
* configure.in: add DLLTOOL support
* configure: regenerate
* wigglers.def: new file for imports for wigglers.dll
* ser-ocd.c: new file which is layer between ocd.c and either the
wigglers.dll or the target box, only stub so far
* config/powerpc/ppc-eabi.mt: add ppc-bdm.o to TDEPFILES
* config/powerpc/ppc-sim.mt: add ppc-bdm.o to TDEPFILES
* config/i386/cygwin32.mh: add ocd.o ser-ocd.o libwigglers.a
to XDEPFILES, add rules to build libwigglers.a
checking in changes of Stu Grossman <grossman@cygnus.com>:
* remote-wiggler.c: delete
* ocd.c: new, was remote-wiggler.c
always include sys/types.h, include ocd.h, move WIGGLER
commands and many wiggler prototypes to ocd.h, make wiggler_desc
static, stop making local wiggler functions static,
define write_mem_command for wiggler_write_bytes
(wiggler_start_remote): stop hardcoding the target type,
instead set and use a target_type variable.
(wiggler_open): add new target_type and ops args
(wiggler_wait): now no longer takes pid and target_status as args,
stop trying to set target_status struct, remove BGND insn
checks
(read_bdm_registers): renamed to wiggler_read_bdm_registers
(wiggler_read_bdm_registers): numregs arg changed to reglen arg,
remove pktlen check, set reglen instead of numregs
(dump_all_bdm_regs): delete
(wiggler_fetch_registers): delete
(wiggler_prepare_to_store): now just an empty function
(wiggler_store_registers): delete
(wiggler_read_bdm_register): new
(wiggler_write_bdm_registers): new
(wiggler_write_bdm_register): new
(wiggler_write_bytes): use write_mem_command variable instead of
WIGGLER_WRITE_MEM
(get_packet): renamed to wiggler_get_packet, change refs throughout
(put_packet): renamed to wiggler_put_packet, change refs throughout
(wiggler_get_packet): add break to default case of switch,
change length of WIGGLER_GET_VERSION len to 10 from 4 to match
specs
(wiggler_mourn): unpush_target with current_ops, not &wiggler_ops
(flash_xfer_memory): delete
(noop_store_registers): new placeholder replacement for
target_store_registers() which prevents generic_load from trying to
set up the PC.
(bdm_update_flash_command): add store_registers_tmp variable,
make handling of wiggler_ops more generic -- define wiggler_ops
in a target-specific file instead (such as ppc-bdm.c in the case
of the ppc), use current_target to deal with registers again
making this file less target-specific.
(bdm_read_register_command): new
(_initialize_remote_wiggler): stop doing add_target (&wiggler_ops),
comment out add_cmd ("read-register", ...)
* ocd.h: new, contains common wiggler prototypes, command definitions
* ppc-bdm.c: file for ppc-specific OCD code, including target_ops
structure for ppc bdm
(bdm_ppc_open): new
(bdm_ppc_wait): new
(bdm_ppc_fetch_registers): new
(bdm_ppc_store_registers_: new
(_initialize_bdm_ppc): new
* config/powerpc/tm-ppc-eabi.h: add necessary CPU32 BDM defines
* Makefile.in, configure.in, aclocal.m4: Add Itcl, Tix, and
IDE configuration information.
* gdbtk.c (breakpoint_notify): Send address, linenumber and
filename when a breakpoint is set. Avoids call to bp_info.
(gdbtk_init): Call Tcl_FindExecutable(). Add code to handle
Itcl, Tix and IDE initialization.
* defs.h (init_ui_hook): Change prototype to accept one arg.
* main.c (gdb_init): Change prototype to accept one arg.
* top.c (gdb_init): Accepts one argument which it uses to
call (*init_ui_hook), which will be gdbtk_init(). This is
used for calling Tcl_FindExecutable().
* gdbtcl/breakpoint.tcl (gdbtk_tcl_breakpoint): Change to
accept variable number of args for compatibility with
cchanges in gdbtk.c.
* configure: Regenerated.
* gdbtcl/tclIndex: Regenerated.
that directory.
* defs.h utils.c (error warning): Make message be const.
* main.c (fputs_unfiltered): Only send gdb_stdout and gdb_stderr
to hook. Otherwise send it to fputs.
* monitor.c monitor.h (monitor_get_dev_name): New function. Does
the obvious.
* remote-e7000.c: Remove debugify stuff. Change printf, fprintf
to _filtered forms to make output appear in GUIs. Replace all
uses of SERIAL_READCHAR with readchar, which has better error
checking.
* (e7000_parse_device): Add prototype.
* (readchar): Improve doc. Handle random serial errors.
* (expect): Disable notice_quit code. It's busted. Remove
serial error handling (it's now handled in readchar). Remove
remote_debug echoing. That's handled in readchar as well.
* (e7000_parse_device): Remove serial_flag arg. It's not
necessary.
* (e7000_open): Split into two pieces. Second part is
e7000_start_remote, and is error protected. Now, when we connect
to the target, we setup the initial frame and registers so that
the user gets an immediate indication of where the target is.
* (gch): Remove debug output. That's handled by readchar.
* (e7000_read_inferior_memory): Handle errors better.
* (_initialize_remote_e7000): Get rid of `<xxx>' things from
command names. They show up when doing completion and confuse
things horribly.
* ser-e7kpc.c: Remove the last seven months of brain damage. Get
rid of the DLL's since we can access the device directly from Win32s
and Win95. Get rid of debugify crud.
* serial.c: Remove debugify cruft.
* (serial_logchar serial_log_command serial_write serial_readchar
serial_send_break serial_close): Merge common functionality into
serial_logchar. Clean up rest of routines.
* sparclet-rom.c: Disembowel. Leave only download routine.
Download routine now switches to remote target automatically.
* top.c (disconnect): Only define if SIGHUP is defined. Cleans
up MSVC/Win32 problem.
* utils.c (gdb_flush): Don't call hook unless it's for gdb_stdout
or gdb_stderr.
* config/sh/tm-sh.h: Define TARGET_SH for WinGDB.
* config/sparc/tm-sparclet.h: Remove override for prompt.
o Provide poll_quit callback to simulators
so that they can poll for SIGINT on
clueless OS's.
o Add sim_stop to simulators so that clients
can request a halt (eg gdbtk's STOP button)
Works for PPC!
o Re-arange remote-sim.c so that the
hard work is moved from gdbsim_resume()
to gdbsim_wait() (where it should be).
files).
* (SUBDIRS): Remove mswin.
* Change procedure for creating init.c. Speeds things up quite a
bit.
* config.in configure configure.in: Check for select, poll.
* Check for OSF header files before including hpux-thread.o.
* Don't configure doc or testsuite when building under MSVC.
* findvar.c value.h (read_register_pid write_register_pid): Make
global. Needed for hppa-tdep.c.
* (supply_register): Don't set pid to inferior_pid when supplying
registers.
* hppa-tdep.c (saved_pc_after_call): frame_saved_pc ->
FRAME_SAVED_PC.
* (frame_saved_pc): Change name to hppa_frame_saved_pc.
* (hppa_pop_frame): Don't use a pid of 0 with target_write_pc.
Use write_pc instead, which uses the correct pid.
* (target_read_pc target_write_pc): Use read/write_register_pid
instead of read/write_register to preserve the pid passed in.
* inftarg.c (child_can_run): Add flag child_suppress_run to allow
hpux-threads.c to override this as a runnable target.
* config/pa/nm-hppah.h: Define target_new_objfile and
target_pid_to_str.
* config/pa/tm-hppa.h (FRAME_SAVED_PC): Use hppa_frame_saved_pc
instead of frame_saved_pc.
* config/m68k/tm-m68k.h: Define TARGET_M68K for Wingdb.
* config/m68k/tm-monitor.h: Use FRAME_CHAIN_VALID_ALTERNATE, since
we can't easily determine the start file bounds with ELF.
* config/mips/tm-mips.h: Define TARGET_MIPS for Wingdb.
* hpux-thread.c: New file for HPUX/OSF thread support.
* osf-share/{README AT386/cma_thread_io.h HP800/cma_thread_io.h
RIOS/cma_thread_io.h cma_attr.h cma_deb_core.h cma_debug_client.h
cma_errors.h cma_handle.h cma_init.h cma_list.h cma_mutex.h
cma_sched.h cma_semaphore_defs.h cma_sequence.h cma_stack.h
cma_stack_int.h cma_tcb_defs.h cma_util.h}: New files for OSF
thread support.
mswin/libwingdb.a and remote-wiggler.o.
* breakpoint.c (breakpoint_here_p): Clean up bp enabled test.
* (breakpoint_inserted_here_p): New func, just like
breakpoint_here_p, except it's honest. Honestly.
* breakpoint.h: Proto for above.
start-sanitize-gdbtk
* configure configure.in: Add host *windows* to list of hosts
that don't support GDBtk.
end-sanitize-gdbtk
* configure configure.in: Add mswin to configdirs if host is
i[3456]86-*-windows.
* core-aout.c (fetch_core_registers register_addr) gdbcore.h:
Change all vars that can contain addresses to type CORE_ADDR.
* findvar.c (supply_register): Allow val to be NULL. This means
that regno is unsupported.
* (read_pc read_pc_pid write_pc write_pc_pid): Make non-pid forms
just call pid forms with inferior_pid so that there's only once
place to hack PC's and such.
* infrun.c (proceed): Don't skip breakpoints if user changed PC.
* remote-wiggler.c: New file. Support for BDM interface from
Macraigor Systems.
* serial.c: Enhance serial logging capability. Add hex and octal
output modes (set remotelogbase {hex|octal|ascii}. Also log
breaks, timeouts, errors, and eofs.
* serial.h: Redefine SERIAL_SEND_BREAK to go through a wrapper
function so that we can log breaks. Don't export serial_logfile
or serial_logfp.
* top.c (execute_command): Don't test for serial_logfp here.
Just call serial_log_comand, and let serial.c sort it out.
* valops.c (value_of_variable): Don't attempt to establish frames
for static and global variables. This makes things work a bit
better if the stack or frame pointer is trashed.
* config/m68k/monitor.mt (TDEPFILES): Add remote-wiggler.o.
* config/m68k/tm-m68k.h: Define STACK_ALIGN. CPU32 can't hack
misaligned stacks during function calls.
* gdbtk.c (mainWindow): Deleted.
(cleanup_init): Don't destroy main window.
(gdbtk_init): Main window now created by Tk_Init.
* configure.in: Most X checks now handled automatically by Tk.
Use new macros to find Tcl/Tk.
* aclocal.m4: New version for new Tcl/Tk; from Don Libes.
* config.in, configure: Regenerated.
* Makefile.in (TCL, TCL_CFLAGS, TK, TK_CFLAGS, X11_CFLAGS,
X11_LDFLAGS, X11_LIBS): Changed for new Tcl and Tk.
* dbxread.c (read_dbx_symtab end_psymtab), partial-stab.h: Don't
use partial_symtab->textlow==0 as a flag, as 0 is a legitimate
text address. Use a seperate flag (textlow_not_set) instead.
This makes stabs in ELF .o files work a lot better.
* mdebugread.c xcoffread.c: Define textlow_not_set for
partial-stab.h.
* stabsread.h (end_psymtab): Add textlow_not_set arg to prototype.
and MMALLOC_CHECK macros, and add comment indicating how host dependent
makefile fragment should modify MMALLOC_CFLAGS to not use mmalloc, or
to use it but to not do heap corruption checking.
* gdbserver/Makefile.in: Ditto.
* utils.c (init_malloc): Replace warning() use with direct call of
fprintf_unfiltered, since current_target has not yet been set and thus
we cannot use warning(). If we try to use mmcheck and it fails,
suggest that this configuration needs NO_MMCHECK or MMCHECK_FORCE
defined. Other small mmalloc related cleanups.
* config/sparc/sun4os4.mh (MMALLOC_CFLAGS): Define MMCHECK_FORCE to 1.
* config/alpha/alpha-osf2.mh (MMALLOC_CFLAGS): Set to -DNO_MMCHECK.
* config/sparc/xm-sun4os4.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT):
* config/i386/xm-i386v4.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT):
* config/i386/xm-linux.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT):
* config/m68k/xm-hp300hpux.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT):
* config/m68k/xm-m68kv4.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT);
* config/m68k/xm-sun3os4.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT):
* config/pa/xm-hppah.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT):
* config/sparc/xm-sun4sol2.h (MMAP_BASE_ADDRESS, MMAP_INCREMENT):
Remove obsolete defines.
* config/alpha/alpha-linux.mh (MMALLOC_DISABLE):
* config/alpha/alpha-osf1.mh (MMALLOC_DISABLE):
* config/rs6000/rs6000.mh (MMALLOC_DISABLE):
* config/rs6000/aix4.mh (MMALLOC_DISABLE):
* config/powerpc/aix4.mh (MMALLOC_DISABLE):
* config/powerpc/aix.mh (MMALLOC_DISABLE):
* config/ns32k/ns32km3.mh (MMALLOC_DISABLE):
* config/mips/mipsm3.mh (MMALLOC_DISABLE):
* config/mips/decstation.mh (MMALLOC_DISABLE):
* config/m88k/cxux.mh (MMALLOC_DISABLE):
* config/i386/i386mk.mh (MMALLOC_DISABLE):
* config/i386/i386m3.mh (MMALLOC_DISABLE):
* config/i386/i386gnu.mh (MMALLOC_DISABLE):
Use MMALLOC_CFLAGS instead.
infrun.c, mac-nat.c, procfs.c, remote.c, sol-thread.c, thread.c,
win32-nat.c, config/nm-lynx.h: Rename thread.h to gdbthread.h to
avoid conflict with Solaris /usr/include/thread.h.
* config/rs6000/rs6000.mh (NATDEPFILES): Move xcoffread.o ...
* config/rs6000/rs6000.mt (TDEPFILES): ... to here
* xcoffsolib.c (xcoff_relocate_symtab_hook): Define and initialize.
(solib_info): Call xcoff_relocate_symtab via the hook.
(sharedlibrary_command): Ditto.
* xcoffread.c: Remove all FAKING_RS6000 comments and defines.
(xcoff_add_toc_to_loadinfo_hook): Define and initialize here.
(xcoff_init_loadinfo_hook): Define and initialize here.
(scan_xcoff_symtab): Call xcoff_add_toc_to_loadinfo via the hook.
(xcoff_initial_scan): Call xcoff_init_loadinfo via the hook.
* xcoffsolib.h (xcoff_relocate_symtab_hook): Declare extern func.
* rs6000-tdep.c (_initialize_rs6000_tdep): Add initializations
of xcoff_add_toc_to_loadinfo_hook and xcoff_init_loadinfo_hook.
* rs6000-nat.c (_initialize_core_rs6000): Add initialization
of xcoff_relocate_symtab_hook.
so that anything that wants an allocation function not yet pulled
in, will get it from mmalloc rather than a system library.
* Makefile.in (INSTALLED_LIBS): Reorder to match order of CLIBS,
to avoid surprising results when used.
* configure.in (AC_CHECK_HEADERS): check for endian.h.
Use AC_CHECK_TOOL to find AR & RANLIB. Add AC_PROG_AWK.
Add host & target cases for i[345]86-*-gnu*.
* config.in: Regenerate with autoheader.
* configure: Regenerate with autoconf.
* Makefile.in (AR, AWK): Set from corresponding autoconf substs.
(init.c): Don't scan mig-generated files.
* defs.h (endian.h): Include if HAVE_ENDIAN_H defined.
* config/nm-m3.h (ATTACH_NO_WAIT): Define.
* infcmd.c (attach_command): Use "#ifndef ATTACH_NO_WAIT"
rather than "#ifndef MACH".
dependencies.
* scm-lang.c (gdb_string.h): Include.
* objfiles.c (add_to_objfile_sections): Cast second arg of obstack_grow
call to correct type (char *).
* cp-valprint.c (cp_print_static_field): Ditto.
* somsolib.c (som_solib_create_inferior_hook): Add a declaration
for external find_unwind_entry function (from hppa-tdep.c).
* remote-pa.c (remote_write_bytes, remote_read_bytes): Change
type of second arg to "char *" to be type compatible with
dcache.
(remote_wait): Cast second arg to strtol to correct type.
* hppa-tdep.c (compare_unwind_entries): Change argument types to
"const void *" to be type compatible with qsort, and then
assign to local args prior to use.
before testing against reg_ptr.
* eval.c (evaluate_subexp_standard): Cast type of
TYPE_FN_FIELD_VOFFSET to int.
* findvar.c (extract_signed_integer, extract_unsigned_integer,
extract_long_unsigned_integer): Cast type of sizeof to int.
* values.c (unpack_field_as_long, modify_field): Ditto.
* valops.c (value_assign, call_function_by_hand): Ditto.
* infcmd.c (do_registers_info): Ditto.
* ser-tcp.c (tcp_open): Ditto
* remote.c (putpkt): Ditto.
* dcache.c (dcache_peek): Ditto.
* dcache.c (dcache_poke): Ditto.
* m2-exp.y (yylex): Ditto.
* gnu-regex.c (re_match_2): Ditto.
* f-lang.c (ADD_BF_SYMNUM, saved_bf_list_end, tmp_bf_ptr): Ifdef
out unused macro definition and variables.
* inftarg.c (proc_wait): Move from main.c to here, and make static.
* valprint.c (val_print_string): Change bufsize from int to unsigned.
* main.c (wait.h): Include
* top.c (command_line_input): Remove unused variable "c".
* f-typeprint.c (f_type_print_varspec_prefix): Add missing enum
value TYPE_CODE_TYPEDEF to switch statement.
(f_type_print_varspec_suffix): Add missing enum value
TYPE_CODE_TYPEDEF to switch statement.
* ch-exp.c (parse_primval): Add remaining enumeration values to
switch statement, with no specific action.
(ch_lex): Add LOC_UNRESOLVED in switch statement.
(pushback_token): Ifdef out, since code using it is ifdef'd out.
* stabsread.c (cleanup_undefined_types): Remove unused label
"badtype".
* objfiles.h (print_symbol_bcache_statistics): Add prototype.
* maint.c (objfiles.h): Include.
(maintenance_print_statistics): Remove unused variable "temp".
* minsyms.c (lookup_minimal_symbol_solib_trampoline): Remove
unused variable "found_file_symbol".
* m2-exp.y (yylex): Add LOC_UNRESOLVED case to switch.
* language.c (lang_bool_type): Use existing function local type
variable rather than create block local variables.
* solib.c (disable_break): Enclose in ifndef SVR4_SHARED_LIBS.
* infptrace.c (wait.h, command.h): Include.
* ser-tcp.c (gdb_string.h): Include
* i386-tdep.c (codestream_seek): Change "place" to CORE_ADDR.
(i386_get_frame_setup): Change "pc" from int to CORE_ADDR.
* command.c (complete_on_enum): Make assignment used as truth value
explictly check against NULL.
(wait.h): Include.
* infrun.c (wait_for_inferior): Ifdef out prologue_pc since code
that uses it is ifdef'd out.
* parser-defs.h: Add prototype for write_dollar_variable.
* infrun.c: Add prototype for write_pc_pid.
* breakpoint.h: Add prototype for re_enable_breakpoints_in_shlibs.
* symmisc.c (bcache.h): Include.
* bcache.h: Add prototype for print_bcache_statistics.
* symfile.c: Include <time.h>.
* printcmd.c (print_scalar_formatted): Change len to unsigned int.
* valarith.c (value_equal): Cast result of TYPE_LENGTH to int.
* valarith.c (value_binop): Change result_len, promoted_len1,
and promoted_len2 to unsigned int.
* valarith.c (value_subscripted_rvalue): Change elt_offs and
elt_size to unsigned int.
* valops.c (value_array): Change typelength to unsigned int.
(destructor_name_p): Change len to unsigned int.
* scm-lang.h (scm_parse): Add prototype for scm_unpack.
* symfile.c (decrement_reading_symtab): Change return type to void.
* valarith.c (value_subscript): Remove unused variable "word".
(value_subscript): Remove unused variable "tint".
* valops.c (auto_abandon): Ifdef out, since code using it is also
ifdef'd out.
* eval.c (init_array_element): Remove unused variable "val".
* Makefile.in (values.o): Depends on scm-lang.h.
(command.o): Depends upon wait_h.
(ser-tcp.o): Depends upon gdb_string.h.
(infptrace.o): Depends upon wait_h and command_h.
(maint.o): Depends on objfiles.h and symfile.h.
* values.c (allocate_repeat_value): Remove unused variable
"element_type".
(scm-lang.h): Include.
* breakpoint.c (create_longjmp_breakpoint): Enclose in
GET_LONGJMP_TARGET define, unused otherwise.
* config/i386/nm-linux.h: Add prototypes for i386_insert_watchpoint,
i386_remove_watchpoint and i386_stopped_by_watchpoint.
* configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
Change CONFIG_HEADERS test in AC_OUTPUT accordingly.
* configure: Rebuild.
* Makefile.in (stamp-h): Depend upon config.in, not config.h.in.
Set CONFIG_HEADERS to config.h:config.in.
The file name config.h.in can be used on DOS filesystems.
* config.h.in: New file.
* Makefile.in (distclean): Remove config.h and stamp-h during distclean.
(config.h, stamp-h): New targets to remake config.h when necessary.
* configure.in (AC_CONFIG_HEADER): Add, generate config.h.
* configure: Regenerate.
* Makefile.in (defs_h): Add config.h
* defs.h (config.h): Include before any other includes or defines.
* i386-tdep.c (gdb_string.h): Move include after include of defs.h.
* Makefile.in (SFILES): Add bcache.c.
(symtab_h): Add bcache.h.
(HFILES_NO_SRCDIR): add bcache.h
(COMMON_OBJS): Add bcache.o
(bcache.o): New target.
* dbxread.c (start_psymtab): Make global_syms & static_syms
type "partial_symbol **".
* hpread.c (hpread_start_symtab): Ditto.
* os9kread.c (os9k_start_psymtab): Ditto.
* stabsread.h (start_psymtab): Ditto.
* {symfile.c, symfile.h} (start_psymtab_common): Ditto.
* maint.c (maintenance_print_statistics): Call
print_symbol_bcache_statistics.
* objfiles.c (allocate_objfile): Initialize psymbol bcache malloc
and free pointers.
* solib.c (allocate_rt_common_objfile): Ditto.
* symfile.c (reread_symbols): Ditto.
(free_objfile): Free psymbol bcache when objfile is freed.
(objfile_relocate): Use new indirect psymbol pointers.
* objfiles.h (struct objfile): Add psymbol cache.
* symfile.c (compare_psymbols): Now passed pointers to pointers to
psymbols.
(reread_symbols): Free psymbol bcache when freeing other objfile
resources.
(add_psymbol_to_list, add_psymbol_addr_to_list): Initialize new
psymbol using the psymbol bcache.
(init_psymbol_list): Psymbol lists now contain pointers rather than
the actual psymbols.
* symfile.h (psymbol_allocation_list): Psymbol lists now dynamically
grown arrays of pointers.
(ADD_PSYMBOL_VT_TO_LIST): Initialize new symbol using the psymbol
bcache.
* symmisc.c (print_partial_symbols): Now takes pointer to pointer
to partial symbol.
(print_symbol_bcache_statistics): New function to print per objfile
bcache statistics.
(print_partial_symbol, print_partial_symbols,
maintenance_check_symtabs, extend_psymbol_list):
Account for change to pointer to pointer to partial symbol.
* symtab.c (find_pc_psymbol, lookup_partial_symbol, decode_line_2,
make_symbol_completion_list):
Account for change to pointer to pointer to partial symbol.
* symtab.h (bcache.h): Include.
* xcoffread.c (xcoff_start_psymtab): Make global_syms & static_syms
type "partial_symbol **".
collision in C++.
* infcmd.c (path_command): Use empty string if PATH name not set.
* i386-tdep.c (skip_trampoline_code): New function.
* srec.c: Renamed dsrec.c to avoid filename collision.
* Makefile.in: Cope with renaming.
Update copyrights to 1996.
* ch-exp.c: New file. Use recursive-descent.
Recognize labelled array tuples and powerset ranges.
* Makefile.in: Update for no longer using yacc for ch-exp.
* c-lang.c: Make various functions non-static.
* c-lang.h: Add bunches of prototypes.
* cp-valprint.c (cp_print_value_fields): Also take address.
(cp_print_value): Likewise. Use baselcass_offset.
* stabsread.c (current_symbol): New static variable.
(type_synonym_name): Remove.
(read_type): If copying, make copy be a TYPE_CODE_TYPEDEF.
(read_array_type): Don't need to handle undefined element type here.
(cleanup_undefined_types): Ditto.
(read_range_type): Look for Chill ranges.
* valops.c (value_assign): Fix case lval_internalvar - don't try
to assign into old value (which might be too small!).
(value_coerce_array): No longer need special VALUE_REPEATED handling.
(value_arg_coerce): Cleaner array->pointer decay mechanism.
(search_struct_field): Use baseclass_offset rather than
baseclass_addr.
(value_slice): Use get_discrete_bounds.
* value.h (COERCE_VARYING_ARRAY): Take type argumnt as well.
* values.c (baseclass_offset): Change parameter interface.
(baseclass_addr): Removed.
* c-typeprint.c, c-valprint.c, ch-valprint.c, values.c, valops.c:
Add check_typedef/CHECK_TYPEDEF as needed.
(CC_FOR_TARGET, CXX_FOR_TARGET): Use it to find target libraries.
* configure.in (X_CFLAGS): Fix typo.
(target_subdir): Set to "${target_alias}/" if cross.
* configure.in: Regenerated.
* fork-child.c (fork_inferior): Add call to
TARGET_CREATE_INFERIOR_HOOK to allow target specific code to get
control just before the new process executes it's first instruction.
* remote-mips.c (mips_initialize): Cleanup a bit. Don't try to
receive a packet at first. This speeds up initialization a lot.
Use TARGET_MONITOR_PROMPT instead of "<IDT>".
(common_breakpoint): Use rresponse instead of rerrflg to inspect
error code.
* symfile.c (syms_from_objfile reread_symbols): Call
TARGET_SYMFILE_POSTREAD to allow target specific code to get
control after reading new symbols.
* target.h: New macros TARGET_SYMFILE_POSTREAD, and
TARGET_CREATE_INFERIOR_HOOK. See above for descriptions.
* config/mips/{irix5.mh nm-irix5.h}: Delete nm-irix5.h. Make
NAT_FILE point directly at ../nm-sysv4.h.
* config/mips/{mipsm3.mh nm-m3.h}: Delete nm-m3.h. Make
NAT_FILE point directly at ../nm-m3.h.
* config/mips/{mipsv4.mh nm-sysv4.h}: Delete nm-sysv4.h. Make
NAT_FILE point directly at ../nm-sysv4.h.
* config/mips/nm-mips.h: Improve comment at top of file.
* config/mips/tm-mips.h (TARGET_MONITOR_PROMPT): Change
definition into a proper string.
start-sanitize-gm
* configure configure.in: Add support for --enable-gm.
(mips*-*-magic*): Change target from magic to idt.
* eval.c expprint.c expression.h parse.c remote-mips.c utils.c:
Change GENERAL_MAGIC_HACKS to GENERAL_MAGIC.
* magic.c magic.h: Update files from GM.
* config/mips/magic.mt: Delete. No longer necessary now that we
use --enable mechanism.
* config/mips/tm-idt.h: Add GM stuff needed for remote GM box.
* config/mips/tm-irix5.h: Add GM stuff needed for native Irix box.
* config/mips/tm-magic.h: Move up to config/tm-magic.h. Move all
platform specific stuff into tm-irix.h and tm-idt.h. Add defs for
TARGET_SYMFILE_POSTREAD and TARGET_CREATE_INFERIOR_HOOK.
end-sanitize-gm
* regex.c: Renamed to gnu-regex.c.
* Makefile.in (POSSLIBS): Refer to gnu-regex.h and gnu-regex.c.
(REGEX, REGEX1): Change to gnu-regex.o instead of regex.o.
(regex.o): Renamed to gnu-regex.o; refer to gnu-regex.c.
(irix5-nat.o, osfsolib.o, gnu-regex.o, solib.o, source.o, symtab.o):
Likewise.
* irix5-nat.c, osfsolib.c, gnu-regex.c, solib.c, source.c, symtab.c):
Include "gnu-regex.h" instead of "regex.h".
* alpha-tdep.c (in_prologue): Rename to alpha_in_prologue, to
avoid conflicts with symtab.h.
fixes building gdb under OSF/1 4.0
* config/pa/hppahpux.mh: Remove hardcoding of X locations.
* Makefile.in: Use X11_CFLAGS, X11_LDFLAGS and X11_LIBS.
* configure.in: Link X statically on Solaris, SunOS and HPUX.
sh3 monitor support.
* monitor.c: Cleanup regexp compilation stuff to make it easier
to use several regexps.
* monitor.h: Get rid of struct rom_cmd_data. It's no longer used.
* config/m68k/tm-monitor.h: Don't redefine NUM_REGS here. It just
causes GDB to crash.
* expprint.c (print_subexp): Add OP_NAME support.
* parse.c (length_of_subexp, prefixify_subexp): Likewise.
* scm-lang.c (scm_unpack, in_eval_c, scm_lookup_name): new function.
* scm-lang.h: Declare builtin_type_scm; other minor tweaks.
* values.c (unpack_long): If type is SCM, call scm_unpack.
* scm-valprint.c (scm_val_print): Use extract_signed_integer,
instead unpack_long
* scm-lang.c: More Scheme expression parsing from here ...
* scm-exp.c: ... to here. New file.
Also, provide for gdb to evaluate simple constants and names..
* Makefile.in: Note new scm-exp.{c,o}.
* scm-valprint.c: ... this new file.
Also major improvements in support for printing SCM values.
* scm-lang.h: New file.
* scm-tags.h: New file.
* Makefile.in: Note new scm-valprint.{c,o}.
* callback.[ch]: New files.
* remote-rdp.c: Support for the ARM RDP monitor.
* Makefile: Update.
* arm-tdep.c (arm_othernames): New.
(_initialize_arm_tdep): install 'othernames' command.
(arm_nullified_insn, shifted_reg_val, arm_get_next_pc): New.
* configure.in: Check for termios.h, termio.h and sgtty.h.
(i[345]86-*-win32*): New host.
* configure: Regenerated.
* inflow.c: Clean up inclusions.
* main.c (main): Check for WINGDB, not WIN32.
* printcmd.c (do_examine): Put QUIT test in loop.
* remote-hms.c (e7000_load): Delete.
(hms_ops): Point to generic_load instead.
* remote-hms.c (hms_ops): Point to generic_load.
* remote-sim.c (sim_callback_write_stdout): Becomes
gdbsim_write_stdout.
(gdbsim_load): Call generic_load.
* remote-utils.c (gr_load_image): Delete.
* ser-unix.c (terminal.h): Include instead of havig
own #if tree.
(hardwire_flush_input): Reset input buffer too.
* source.c (openp): If WIN32 then open file in binary mode.
* terminal.h: Configure IO mechanism using autoconf defines if available and
not overriden.
* utils.c (quit, pollquit, notice_quit): WIN32 check becomes WINGDB check.
* config/arm/arm.mt (TDEPFILES): Add remote-rdp.o
* config/arm/tm-arm.h (TARGET_BYTE_ORDER): becomes TARGET_BYTE_ORDER_SELECTABLE.
(ADDR_BITS_REMOVE): New.
(ORIGINAL_REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): New.
(INST_xx): New
(FRAME_FIND_SAVED_REGS): Pass the right argument.
(arm_get_next_pc): Declare.
* mswin/prebuilt/*/bfdtarget.h (SELECT_ARCHITECTURES): Need leading &.
config/m68k/m68kv4.mh, config/mips/{irix4.mh, irix5.mh,
mipsv4.mh}, config/sparc/sun4so2.mh (INSTALL): Removed, figured
out by autoconf.
* config/apollo68v.mh (RANLIB): Removed, figured out by autoconf.
* Makefile.in, configure.in: Converted to use autoconf
* aclocal.m4: New file, local autoconf macro definitions.
* configure: New file, generated with autoconf 2.3.
Sun make (with VPATH) work...
* monitor.c monitor.h rom68k-rom.c: Serious cleanup to make IDP
(rom68k) target work right.
* array-rom.c op50-rom.c w89k-rom.c: Partial updates to new
monitor.c interface. More work needs to be done here.
* config/m68k/tm-monitor.h: Change DECR_PC_AFTER_BREAK to 0 to
match the IDP monitor. Also, set NUM_REGS to 18 cuz there's no
floating-point for this card.
and config/a29k/vx29k.mt.
* configure.in: add new configuration a29k-*-vxworks.
* remote-vx29k.c: new file merged from WRS.
* remote-vx.c: merge changes from WRS.
Add procfs support for Alpha OSF/1-2.x.
* config/alpha/nm-osf.h: Renamed from nm-alpha.h, generic
OSF/1 native support.
* config/alpha/alpha-osf1.mh (NAT_FILE): Changed accordingly.
(MUNCH_DEFINE): Removed.
* config/alpha/alpha-osf2.mh, config/alpha/nm-osf2.h: New files
for procfs support.
* configure.in (alpha-dec-osf*): Use alpha-osf2.mh for OSF/1
release 2.x and higher, else alpha-osf1.mh, as the procfs support
in release 1.x is incomplete.
* Makefile.in (ALLCONFIG): Add config/alpha/alpha-osf2.mh.
* alpha-nat.c (supply_gregset, fill_gregset, supply_fpgregset,
fill_fpgregset): New routines for procfs support.
* inftarg.c (_initialize_inftarg): Don't add ptrace support
if we have an optional procfs and /proc is accessible.
* procfs.c: Include sys/fault.h and sys/syscall.h before
including sys/procfs.h.
(unconditionally_kill_inferior): If PROCFS_NEED_PIOCSSIG_FOR_KILL
is defined, additionally perform a PIOCSSIG to really terminate
the inferior.
(create_procinfo): Always return a result.
(create_procinfo, do_attach): Don't trace T_IFAULT faults if
PROCFS_DONT_TRACE_IFAULT is defined.
(procfs_init_inferior): Use START_INFERIOR_TRAPS_EXPECTED as
argument to startup_inferior if it is defined.
(proc_set_exec_trap): If PIOCSSPCACT is defined, use it instead
of tracing exits from exec system calls. Needed for the user level
loader under Alpha OSF/1.
(do_detach): Clear any pending signal if we want to detach from
a process without a signal.
(set_proc_siginfo): If PROCFS_DONT_PIOCSSIG_CURSIG is defined,
don't issue a PIOCSSIG if pr_cursig already contains the signal we
intend to set.
(info_proc_signals): If PROCFS_SIGPEND_OFFSET is defined, the
pending signals are numbered from 1 instead of 0.
(info_proc_mappings): Increase size of output format for addresses
if BFD_HOST_64_BIT is defined.
(procfs_stop): Renamed from child_stop.
(_initialize_procfs): Don't add procfs support if we have an
optional procfs and /proc is not accessible.
* core.c (dis_asm_read_memory): Add call to
dis_asm_read_memory_hook to provide alternate way for disassembler
to read memory.
* defs.h: Protect from multiple inclusion. Add decl for
dis_asm_read_memory_hook.
* gdbtk.c (finish_saving_output): Don't do anything if not saving
output.
* (breakpoint_notify): Don't send null filename to tcl.
* (gdb_eval): New tcl command to eval an expression.
* (gdb_disassemble): New tcl command to do disassembly. This
allows tcl code to choose between exec file and target memeory,
and can also do mixed source and assembly.
* (gdbtk_init): Move reading of gdbtk.tcl to the end to make sure
that more of the environment is set up. Also, create link between
gdb and tcl vars disassemble{-_}from{-_}exec.
* gdbtk.tcl: New expression window support.
* Make assembly window be 80 columns wide.
* Use new disassembly method. Add menu items to select
disassembly from exec file or target.
* Change View menubar item to Options.
* Get rid of Stack, Breakpoints, Signals, and Variables Windows,
since they don't exist yet.
* Pop up a copyright window on startup.
* top.c: Make window startup be the default.
* Add dis_asm_read_memory_hook.
i386aix-nat.o, i386m3-nat.o, irix5-nat.o, lynx-nat.o, m3-nat.o,
mipsm3-nat.o, ns32km3-nat.o, remote-e7000.o, remote-os9k.o):
Add dependencies.
(copying.o, os9kread.o, remote.o): Update dependencies.
* valarith.c (value_sub): When subtracting pointers, only
check for a match of the pointed to element lengths.
Cast element length to LONGEST to obtain a signed result for
pointer subtractions.
available.
* configure.in (ENABLE_CLIBS): Use $(TCL) and $(TK) instead of
-ltcl and -ltk.
* gdbtk.c: Get rid of lots of unnecessary #includes.
* (gdbtk_init): Use ConnectionNumber macro instead of referencing
Display structure directly.
* gdbtk.tcl: Change exit button to quit button (makes shebs
happy).
* Makefile.in: Remove xcoffexec.o rule.
* exec.c (exec_file_command): Add comment.
Fix data and bss relocation for VxWorks 5.1:
* remote-vx.c (vx_add_symbols): New function.
(vx_load_command, add_symbol_stub): Call it instead of
symbol_file_add.
(vx_wait): Remove comment which was wrong to useless.
* remote-vx.c: Reindent much of file.
* coffread.c (cs_to_section, find_targ_sec): New functions.
(process_coff_symbol): Set SYMBOL_SECTION to result
from cs_to_section.
(coff_symtab_read): Call cs_to_section and deal appropriate
rather than assuming sections are in a certain order. Deal with
BSS.
* coffread.c: Remove text_bfd_scnum variable.
(hpread.o): Add dependencies.
* somread.c: Do not include "aout/aout64.h". SOM has nothing to
do with a.out.
(BYTES_IN_WORD): Delete.
(som_symfile_read): Call hpread_build_psymtabs to build any
minimal symbols based on the HP C native debug symbols.
(som_symfile_finish): Call hpread_symfile_finish.
(som_symfile_init): Call hpread_symfile_init.
* config/pa/tm-hppa.h (HPREAD_ADJUST_STACK_ADDRESS): Define.
* hppa-tdep.c (hpread_adjust_stack_address): New function.
* config/pa/hppabsd.mh (NATDEPFILES): Add hpread.o
* config/pa/hppahpux.mh (NATDEPFILES): Likewise.
* hpread.c: New file.
NLMCONV_FOR_TARGET. (SUBDIRS): Add nlm target.
* configure.in (powerpc-*-netware*): Automatically configure nlm
subdir.
* nlm/Makefile.in: Add {CC NLMCONV LD}_FOR_TARGET. Remove alpha
specific stuff. Make things more configurable.
* nlm/configure.in: Add powerpc-*-netware* target. Use
gdbserve.mt/cpu.c/cpu.h for target stuff. Get rid of tm/xm/nm.h
files.
* nlm/gdbserve.c: Move Alpha specific stuff into other files.
Remove lots of architecture-specific stuff.
* nlm/gdbserve.def: Add new imports.
* nlm/ppc.c, nlm/ppc.h: New files that contain PowerPC specific code.
* nlm/prelude.c: Don't include libhooks.h, get rid of call to
register library.
* nlm/prelude.o: What was this doing here?
Remove; unused.
(TAGFILES_NO_SRCDIR): Remove ALLPARAM.
(HFILES_NO_SRCDIR): Remove all files in config sub-directory.
(TAGS): Also pass result of find on config sub-directory to etags.
(ALLPARAM): Remove; now unused.
--enable-xxx configure option by adding ENABLE_{CLIBS DEPFILES}
where appropriate.
* General hackery to support alternate user-interface.
* breakpoint.c (mention, delete_breakpoint, enable_breakpoint,
disable_breakpoint): Call hooks for alternate user-interface.
* defs.h: Add declarations for alternate user-interface hooks.
* main.c (main): Add --nw (and --nowindows) options to disable
the GUI.
* (near call to command_loop): Call command_loop_hook if set.
* (fputs_unfiltered): Call fputs_unfiltered_hook if set.
* stack.c: Call print_frame_info_listing_hook if set.
* top.c (gdb_init): Initialize targets.c and utils.c prior to
other files to make sure that calls to error and warning will
work. Call init_ui_hook after everything else.
* utils.c (query): Call query_hook if set.
* (gdb_flush): Call flush_hook if set.
* Change _initialize_utils to initialize_utils cuz we don't use
automatic initialization of utils.c anymore.
* Support for TK GUI.
* Makefile.in: Add rule for gdbtk.o.
* configure.in: Add support for --enable-gdbtk.
* gdbtk.c: New file. Contains support routines for TK interface.
* gdbtk.tcl: New file. Implements GUI policy.
* remote.c: Get rid of #ifdef DONT_USE_REMOTE. It's no longer
necessary.
(diststuff): Add for new distribution support.
(gdb.tar.Z, make-proto-gdb.dir, setup-to-dist,
gdb-$(VERSION).tar.Z, make-proto-gdb-1, make-proto-testsuite.dir):
Remove old distribution building rules, now uses standard
distribution support in parent directory Makefile.in.
* Add rule for annotate.o to keep Sun make happy.
* configure.in: Add config for powerpc/Netware.
* partial-stab.h (near N_SO): Don't call START_PSYMTAB with null
filename. This speeds up handling of trailing N_SO stabs (they
mark the end of a .o file).
* target.c, target.h: Change the way pushing and popping of
targets work to support target overlays and inheritance.
* corelow.c, hppa-tdep.c, inflow.c, remote-nindy.c, utils.c:
Fixup references to current_target, due to previous changes.
* config/i386/tm-i386nw.h: Enable longjmp support. More work is
needed to get the address of longjmp out of the target.
(i[34]86-*-mach3*, i[34]86-*-osf1mk*, mips-*-mach3*,
m88*-*-mach3*, ns32k-*-mach3*): Recognize.
* Makefile.in (gdb-stop): New target.
* gdb-stop.c: New file, utility to gets attention of waiting GDBs
in Mach 3.
to new file top.c. Make things extern instead of static and
similar rearrangements to deal with this.
* top.h: New file.
* utils.c: Move fputs_unfiltered to main.c. Remove
FPUTS_UNFILTERED_OVERRIDE ifndef.
* Makefile.in: Change so that gdb uses main.c, utils.c, and top.c,
and libgdb uses utils.c and top.c.
(child_mourn_inferior): Call proc_remove_foreign.
* main.c (gdb_init): Call init_proc.
* main.c: Provide dummy versions of init_proc, proc_wait, and
proc_remove_foreign for the gdb case (the libgdb case provides its
own versions of these functions).
* Makefile.in (libgdb-files): Add libproc.a.
cyscm links against ../../gdb/{...}.o
Added a new target: libgdb-files. It creates a file of that name
containing a list of files for libgdb. If the variable LIBGDBPREFIX
is set, each file name has that prepended.
BROKEN_LARGE_ALLOCA. Do the cleanup before returning, rather than
leaving it on the chain. Reindent much of this function.
* config/sparc/{xm-sun4sol2.h,xm-sun4os4.h},
config/i386/{xm-sun386.h,xm-i386m3.h,xm-i386mach.h},
config/m68k/{sun3os4.h,xm-news.h,xm-hp300hpux.h},
config/ns32k/xm-ns32km3.h: Remove all references to
BROKEN_LARGE_ALLOCA; with the above change it is no longer needed.
* main.c, fork-child.c, many config files: Remove all
SET_STACK_LIMIT_HUGE code; with the above changes it should no
longer be needed.
* symtab.c (lookup_partial_symbol): Use if and abort, not assert.
This avoids __eprintf troubles.
* main.c (main): Surround in #ifndef MAIN_OVERRIDE. Move
initialization code which needs to be called even if we bypass the
command line stuff into gdb_init.
* utils.c (fputs_unfiltered): Surround in #ifndef
FPUTS_UNFILTERED_OVERRIDE.
* Makefile.in (libgdb.a): New target.
* utils.c: Rearrange I/O stuff a bit so that all output goes
through fputs_unfiltered. Use vasprintf; removes arbitrary limit
which made %s not work with arbitrarily large strings.
* printcmd.c (printf_command): Use printf_filtered, not
printf_unfiltered and printf, now that arbitrary limit is gone.
find, to locate TM_FILE, XM_FILE, and NAT_FILE. This is faster
and means that these filenames no longer need be unique across all
the config/* directories.
* configure.in: Put the config/*/ into TM_FILE, etc.
* m68k-stub.c (computeSignal): Return SIGFPE, not SIGURG, for chk
and trapv exceptions.
* target.h (struct section_table), objfiles.h (struct obj_section):
Change name of field sec_ptr to the_bfd_section. More mnemonic
and avoids the (sort of, for the ptx compiler) name clash with
the name of the typedef.
* exec.c, xcoffexec.c, sparc-tdep.c, rs6000-nat.c, osfsolib.c,
solib.c, irix5-nat.c, objfiles.c, remote.c: Change users.
* utils.c: Include readline.h.
* Makefile.in (utils.o): Add dependency.
* remote.c (getpkt): Add support for run-length encoding.
GNUTARGET.
* putenv.c: Removed, conflicts with system declaration of
putenv on RS/6000 running AIX 3.2.5, and above change makes it
unnecessary.
* Makefile.in: Change accordingly.
* procfs.c (procfs_create_inferior): Change comment accordingly.
VARIABLES_INSIDE_BLOCK to OS9K_VARIABLES_INSIDE_BLOCK.
* symfile.c (symbol_file_command): Check for (CORE_ADDR)-1, not
(CORE_ADDR)0, from target_link, since that is what it uses.
Process name at end, not during parsing (like we did before Kung's
change), so that -readnow and -mapped can appear anywhere.
Make text_relocation a local variable.
* config/i386/i386os9k.mt: Fix comment.
* Makefile.in (ALLDEPFILES): Add remote-os9k.c.
* os9kread.c: Put "comments" after #endif inside /* */.
* stabsread.h: Add os9k_stabs variable.
* stabsread.c (start_stabs), os9kread.c (os9k_process_one_symbol):
Set it.
* stabsread.c (define_symbol): If os9k_stabs, put a 'V' symbol
descriptor in global_symbols not local_symbols.
(read_type): If os9k_stabs, accept 'c', 'i', and 'b' type
descriptors.
(read_type): If os9k_stabs, accept function parameters after 'f'
type descriptor.
(read_array_type): If os9k_stabs, don't expect index type and
expect lower and upper to be separated by ',' not ';'.
(read_enum_type): If os9k_stabs, read a number before the first
enumeration constant.
(os9k_init_type_vector): New function.
(dbx_lookup_type): Call it when starting new type vector.
* config/i386/tm-i386os9k.h: Define BELIEVE_PCC_PROMOTION.
* (os9k_process_one_symbol): Call define_symbol not os9k_define_symbol.
* os9kstab.c: Removed.
* Makefile.in: Update accordingly.
* objfiles.c (objfile_relocate_data): Removed.
* remote-os9k.c (rombug_wait): Call objfile_relocate
not objfile_relocate_data.
* objfiles.h, objfiles.c: Remove find_pc_objfile.
* remote-os9k.c (rombug_wait): Call find_pc_section not
find_pc_objfile.
* main.c (quit_command): Check inferior_pid; revert Kung change.
* remote-os9k.c (rombug_create_inferior): Set inferior_pid.
ChangeLog objfiles.c objfiles.h symfile.c target.c main.c
Makefile.in configure.in
Added Files:
os9kread.c os9kstab.c remote-os9k.c
* os9kread.c: New file to read os9000 style symbo table.
* os9kstab.c: new file to read os9000 style stabs.
* remote-os9k.c: remote protocol talking to os9000 rombug monitor.
* objfiles.c (find_pc_objfile): new function to search objfile
from pc.
* objfiles.c (objfile_relocate_data): new function to relocate
data symbols in symbol table.
* objfiles.h: Add two aux fields in struct objfile to handle
multiple symbol table files situation like in os9000.
* symfile.c: Change so 'symbol-file' command can handle multiple
files. Also call target_link() to get relocation infos.
* target.c (target_link): new function to get relocation info when
a symbol file is requested to load.
* main.c (quit_command): take out 'inferior_pid != 0' condition,
because in cross mode there's no inferior pid, bit they need to
be detached.
Makefile.in: add os9kread.c os9kstab.c and .o's.
configure.in: add i386os9k target.
config/i386/i386os9k.mt: new add.
config/i386/tm-i386os9k.h: new add.
ourselves instead of worrying about INSTALL_XFORM. This enables
users to override INSTALL_PROGRAM in the standard way.
* Makefile.in (c-exp.tab.o, ch-exp.tab.o, m2-exp.tab.o): Don't
depend on Makefile.in.
config/ns32k/ns32km3.mh: Define NAT_FILE.
* config/nm-m3.h: Change guard from _OS_MACH3_H_ and _OS_MACH3_H
(it was inconsistent and namespace-wrong) to NM_M3_H.
* m3-nat.c (mach_really_wait): Change parameter name to ourstatus.
(m3_open): New function.
(m3_ops): Use it.
* TODO: Update Mach section.
* Makefile.in: Remove "rapp" stuff; it is superseded by gdbserver.
* thread.c: Include "gdbcmd.h" and <ctype.h>.
* Makefile.in: Update dependency.
* thread.c (thread_command): Remove unused variable p.
* values.c (unpack_double): Use len instead of TYPE_LENGTH (type).
* valprint.c (print_floating): Correctly check sign bit now that
we are using unsigned arithmetic.
* symtab.c (find_pc_line_range): Remove unused variables exact_match,
ind, and l.
should not try to search for _initialize_* functions.
* remote-udi.c (udi_wait): Change UDIGdb_StdoutReady back to
UDIStdoutReady. It accidentally got changed on 24 Oct 93 when
stdout was changed to gdb_stdout. Likewise for UDIGetStdout,
UDIStderrReady, and UDIGetStderr.
* Makefile.in (udi2go32.o): add rule to build this file
* 29k-share/udi/udi2go32.c: new file
* config/a29k/a29k-udi.mt: add udi2go32.o
* 29k-share/udi/{udr.c, udip2soc.c}: #ifdef out the entire file
if __GO32__ is defined. What a hack.
* breakpoint.c: Include thread.h.
* coffread.c: Include stabsread.h.
* Makefile.in: Update dependencies.
* breakpoint.c (mention): Add bp_call_dummy to switch.
* symmisc.c (dump_symtab): Use %d not %ld for line number.
cleans up all kinds of hassles (which nm to use in munch, etc). The
new formatting conventions (mostly already followed) are that
the name of the _initialize_* routines must start in column zero,
and must not be inside #if.
* munch: Removed.
* Makefile.in: Remove references to munch.
* serial.c, remote.c, infptrace.c, maint.c, convex-tdep.c,
alpha-tdep.c, hp300ux-nat.c, hppab-nat.c, osfsolib.c, remote-es.c,
procfs.c, remote-udi.c, ser-go32.c, ultra3-xdep.c, sh-tdep.c,
i960-tdep.c, hppa-tdep.c, h8500-tdep.c, dpx2-nat.c, delta68-nat.c,
z8k-tdep.c: Make sure the above conventions are followed. Make
sure they are all declared as returning void. Clean up
miscellaneous comments and such.
remote-mon.c (monitor_create_inferior), remote-nindy.c
(nindy_create_inferior), remote-st.c (st2000_create_inferior),
remote-vx.c (vx_create_inferior): Remove CREATE_INFERIOR_HOOK; it
is replaced by init_trace_fun.
* config/convex/xm-convex.h, convex-xdep.c: Add comments explaining
how to do without CREATE_INFERIOR_HOOK for whoever fixes the Convex
port.
* Makefile.in: Add Mach files to ALLDEPFILES, etc.
* m3-nat.c: Clean up more hair--message(), cprocs.
* configure.in: Recognize Mach targets and hosts.
* config/ns32k/tm-umax.h: Add some #ifndef's so tm-ns32km3.h can
include this file.
* Mach headers in config/*/tm-*.h: Fix includes to match correct
locations of files.
regex.c to be consistent across hosts.
* source.c (_initialize_source): Initialize regex to use grep
style syntax as an approximation to POSIX basic regex syntax.
understand what it is trying to do, but I suspect it's not doing
it.
* config/ns32k/merlin.mh: Add comment about M_INSTALL.
* config/m88k/{delta88.mh,delta88v4.mh}: Remove M_INSTALL and
M_UNINSTALL; it tries to install a non-existent file gdb.z.
* Makefile.in: Remove M_INSTALL stuff; the above were the only uses.
* alpha-nat.c, alpha-tdep.c, config/alpha/alpha-osf1.mt,
config/alpha/nm-alpha.h, config/alpha/tm-alpha.h, osfsolib.c:
New files.
* Makefile.in: Add new files and dependencies.
* configure.in: Add alpha target.
* config/alpha/alpha-osf1.mh (NATDEPFILES): Add osfsolib.o
* config/alpha/alpha-osf1.mh (MH_CFLAGS): Remove, we can handle
shared libraries now.
* config/alpha/xm-alpha.h: Cleanup, get MAKEVA_* defines right.
* defs.h (CORE_ADDR): Make its type overridable via CORE_ADDR_TYPE,
provide `unsigned int' default.
* breakpoint.c (breakpoint_auto_delete): Delete only if we really
stopped for the breakpoint.
* stabsread.c, stabsread.h (define_symbol): Change valu parameter
to a CORE_ADDR.
* stabsread.c (read_range_type): Handle the case where the lower
bound overflows and the upper doesn't and the range is legal.
* infrun.c (resume): Do not step a breakpoint instruction if
CANNOT_STEP_BREAKPOINT is defined.
* inferior.h (CALL_DUMMY_LOCATION): New variant AT_ENTRY_POINT.
Now that we have the bp_call_dummy breakpoint the call dummy code
is no longer needed. PUSH_DUMMY_FRAME, PUSH_ARGUMENTS and
FIX_CALL_DUMMY can be used to set up everything for the dummy.
The breakpoint for the dummy is set at the entry point and thats it.
* blockframe.c (inside_entry_file, inside_entry_func): Do not stop
backtraces if pc is in the call dummy at the entry point.
* infcmd.c (run_stack_dummy): Handle AT_ENTRY_POINT case. Use
the expected breakpoint pc when setting up the frame for
set_momentary_breakpoint.
* symfile.c (entry_point_address): New function for AT_ENTRY_POINT
support.
* valops.c (call_function_by_hand): Handle AT_ENTRY_POINT case.