* 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).