1 1999-01-27 James Ingham <jingham@cygnus.com>
3 * gdbtk-wrapper.c: Missed a couple of places where FILE->GDB_FILE
4 in the fputs_unfiltered_hook needed to propagate.
6 1999-01-27 James Ingham <jingham@cygnus.com>
8 Merging in changes from gdbtk-980810 - the Itcl3
11 1999-01-12 Martin Hunt <hunt@cygnus.com>
13 * gdbtk-cmds.c (gdb_loadfile): Increase maximum line size so
14 files with very long lines get numbered correctly.
16 Thu Jan 7 06:50:32 1999 Keith Seitz <keiths@cygnus.com>
18 * gdbtk-hooks.c (gdbtk_add_hooks): Add the error_begin_hook;
19 (gdbtk_error_begin): New function.
20 (gdbtk_fputs): If GDBTK_ERROR_ONLY is set, treat output to
21 any stream as if it had come from gdb_stderr.
23 * gdbtk.h: Define GDBTK_SYMBOL_SOURCE_NAME: does the same thing
24 as SYMBOL_SOURCE_NAME, except that it NEVER returns a mangled name.
25 Define GDBTK_ERROR_ONLY flag for result_ptr.
27 * gdbtk-cmds.c (gdb_listfuncs): Use SYMBOL_DEMANGLED_NAME to
28 get the symbol's fully demangled name (including class and
29 args for overloaded funcs), not cplus_demangle.
30 (get_frame_name): Use GDBTK_SYMBOL_SOURCE_NAME to get the name
33 * gdbtk-wrapper.c, gdbtk-wrapper.h:
34 (GDB_val_print): Allow caller to specify all function args to val_print.
35 (wrap_val_print): Ditto.
37 * gdbtk-variable.c (variable_value): Clear addressprint when getting
38 value of C++ reference-type variables
39 If we errored because a parent (struct pointer) was junk, output
40 an error message indicating so.
41 (call_gdb_val_print): Tell val_print to dereference C++ reference
43 (number_of_children): void * also has no children.
44 (get_call_output): Clear any error flags that may have been set
45 as a result of error_begin.
47 * utils.c (error_begin_hook): New hook.
48 (error_begin): Call error_begin_hook so that the GUI
51 * defs.h (error_begin_hook): Declare.
53 Wed Jan 6 08:43:31 1999 Keith Seitz <keiths@cygnus.com>
55 * gdbtk-wrapper.c, gdbtk-wrapper.h: Add wrappers for parse_exp_1,
56 evaluate_type, block_for_pc, block_innermost_frame, reinit_frame_cache,
57 and find_frame_addr_in_frame_chain.
59 * gdbtk-variable.c (variable_create): Check for failure when
61 (create_variable): Use wrapped calls for block_for_pc, parse_exp_1,
62 and block_innermost_frame.
63 Return NULL if parse_exp_1 fails.
64 Attempt to prohibit creating a gdb_variable for type names.
65 (variable_value_changed): Use wrapped calls for reinit_frame_cache and
66 find_frame_addr_in_frame_chain.
67 (variable_type): Use wrapped call for evaluate_type.
68 (variable_value): Use wrapped call for parse_exp_1.
69 (variable_editable): Use wrapped call for evaluate_type.
71 Tue Jan 5 11:37:17 1999 Keith Seitz <keiths@cygnus.com>
73 * gdbtk-variable.c: New variable object interface.
74 * gdbtk-wrapper.c, gdbtk-wrapper.h: New wrappers for safely calling
75 gdb functions without the fear of longjmp'ing.
76 * configure.in (CONFIG_OBS): Add gdbtk-wrapper.o and gdbtk-variable.o
77 when gdbtk is enabled.
78 * configure: Regenerate.
79 * Makefile.in: Add gdbtk-wrapper.o and gdbtk-variable.o
80 * gdbtk-cmds.c (call_wrapper): Export so that other files can use.
81 (Gdbtk_Init): Initialize new variable interface.
82 * gdbtk.h: Add declaration for call_wrapper.
84 Tue Jan 5 11:19:14 1999 Keith Seitz <keiths@cygnus.com>
86 * gdbtk-cmds.c (gdb_loc): Call resolve_sal_pc to before using
89 * gdbtk.c (gdbtk_init): Add global array GDBStartup to interpreter
90 which contains any startup info. Add "inhibit_prefs" (follows -nx)
91 so that "-nx" turns preference reading/writing off.
93 Mon Dec 21 11:11:02 1998 Keith Seitz <keiths@cygnus.com>
95 * gdbtk-cmds.c (get_register): Call get_saved_register instead of
96 read_relative_register_raw_bytes to fetch registers.
98 Thu Dec 17 09:00:56 1998 Keith Seitz <keiths@cygnus.com>
100 * gdbtk-cmds.c (gdb_search): Don't mention C++ RTTI and
101 global constructor/destructor symbols.
103 Thu Nov 12 15:20:15 1998 Jim Ingham <jingham@cygnus.com>
104 * More bug fixes merged in from devo.
106 * gdbtk-cmds.c (gdb_cmd): Added an optional second argument to the
107 gdb_cmd, which is from_tty. This is passed to the gdb command
108 parser. It is 0 by default, and the console window passes 1.
110 * gdbtk-cmds.c: moved disassemble_from_exec from gdbtk.c to gdbtk-cmds.c
111 with all the other link-var'ed variables
113 * gdbtk-hooks.c (gdbtk_trace_find): Only run the hook functions if
114 we are called from_tty.
116 * gdbtk-hooks.c (gdbtk_trace_start_stop): Set the trace buttons
117 from a trace_start_command callback rather than doing it as a
118 special case in gdb_cmd.
120 * tracepoint.c (tstart_command, tstop_command): Add call to
121 trace_start_stop_hook here.
123 1998-11-04 Martin M. Hunt <hunt@cygnus.com>
125 * gdbtk-cmds.c (gdb_set_bp_addr): For callback, send full
126 pathname instead of just basename.
128 1998-11-03 Keith Seitz <keiths@cygnus.com>
129 * v850ice.c (do_gdb): New function.
130 (ice_stepi): Use do_gdb to step properly.
131 (ice_nexti): Use do_gdb to step properly.
132 (view_source): Correct call to src window's location for new version.
134 Tue Aug 25 18:13:30 1998 Jim Ingham <jingham@cygnus.com>
136 * gdbtk.c (gdbtk_init): I hadn't excised ALL the old startup code,
137 so it was not working correctly. Now it does.
139 Fri Aug 21 14:37:40 1998 Jim Ingham <jingham@cygnus.com>
141 * gdbtk.c (gdbtk_init): Changed the startup code to use
147 on Dec 28 17:44:36 1998 David Taylor <taylor@texas.cygnus.com>
150 The following changes were made by Jim Blandy <jimb@cygnus.com>,
151 Edith Epstein <eepstein@cygnus.com>, Elena Zannoni
152 <ezannoni@cygnus.com> Stan Shebs <shebs@cygnus.com>, and David
153 Taylor <taylor@cygnus.com>, as part of the project to merge in
154 changes originally made by HP; HP did not create ChangeLog
157 * gdbtk.c (gdbtk_init): change stderr to gdb_stderr.
160 (get_pc_register): Use paddr_nz, not sprintf's %llx and
161 a cast to `long long'. Those aren't portable.
162 (gdb_eval): add embedded_offset param to val_print call
163 (get_register): add embedded_offset param to val_print call
166 (tk_command_loop): change instream to a FILE.
167 (gdbtk_flush): change both the declaration and definition to
168 use GDB_FILE rather than FILE.
170 Mon Dec 21 11:11:02 1998 Keith Seitz <keiths@cygnus.com>
172 * gdbtk-cmds.c (get_register): Call get_saved_register instead of
173 read_relative_register_raw_bytes to fetch registers.
175 Thu Dec 17 09:00:56 1998 Keith Seitz <keiths@cygnus.com>
177 * gdbtk-cmds.c (gdb_search): Don't mention C++ RTTI and
178 global constructor/destructor symbols.
180 Tue Dec 15 10:09:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
182 * gdbtk-cmds.c (gdb_disassemble): Fix typo.
184 Sun Dec 13 09:52:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
186 * gdbtk-cmds.c: Update TARGET_PRINT_INSN_INFO, TARGET_PRINT_INSN.
188 Fri Dec 11 09:52:04 1998 Andrew Cagney <cagney@chook>
190 * gdbtk-cmds.c: Replace reg_name with REGISTER_NAME.
192 Mon Dec 14 13:20:50 1998 Jim Ingham <jingham@cygnus.com>
194 * Makefile.in, configure.in configure - add support for LIBGUI
195 outside the IDE context.
197 Thu Nov 19 13:14:57 1998 Geoffrey Noer <noer@cygnus.com>
199 * gdbtk-cmds.c: Can't start using new API names yet. Switch back
200 to calling cygwin32_ funcs until some time has passed...
201 * gdbtk.c: Ditto. Also, include sys/cygwin.h for Cygwin, instead
202 of providing own proto.
204 Fri Nov 13 00:15:08 1998 Geoffrey Noer <noer@cygnus.com>
206 Changes to account for name change from cygwin32 to cygwin and
207 clean up Win32-related ifdefs.
209 * gdbtk.c: lose "32" from cygwin_ func calls. ifndef for
210 checking DISPLAY should be for _WIN32, not WINNT.
211 * gdbtk.h: pick GDBTK_PATH_SEP based on _WIN32, not WINNT.
212 * gdbtk-cmds.c (gdb_path_conv): lose "32" from cygwin_ func call,
213 change ifdef to __CYGWIN32__ instead of WINNT.
214 * {gdbtk.c, gdbtk-hooks.c}: __CYGWIN32__ refs drop the "32".
216 Thu Nov 12 15:20:15 1998 Jim Ingham <jingham@cygnus.com>
218 * gdbtk-cmds.c (gdb_cmd): Added an optional second argument to the
219 gdb_cmd, which is from_tty. This is passed to the gdb command
220 parser. It is 0 by default, and the console window passes 1.
222 * gdbtk-cmds.c: moved disassemble_from_exec from gdbtk.c to gdbtk-cmds.c
223 with all the other link-var'ed variables
225 * gdbtk-hooks.c (gdbtk_trace_find): Only run the hook functions if
226 we are called from_tty.
228 * gdbtk-hooks.c (gdbtk_trace_start_stop): Set the trace buttons
229 from a trace_start_command callback rather than doing it as a
230 special case in gdb_cmd.
232 * tracepoint.c (tstart_command, tstop_command): Add call to
233 trace_start_stop_hook here.
235 Wed Nov 4 12:41:42 1998 Jim Ingham <jingham@cygnus.com>
237 * gdbtk-cmds.c (gdb_set_bp_addr): Pass the type, enable & thread
238 to gdbtk_tcl_breakpoint.
239 * gdbtk-hooks.c (gdbtk_trace_find): Added this function. It is
240 the hook function for tfind commands.
241 * tracepoint.c (trace_find_command): Added the trace_find_hook,
242 run when you do trace_find_command.
243 * tracepoint.h: Define the trace_find_hook.
245 1998-11-03 Keith Seitz <keiths@cygnus.com>
247 * v850ice.c (do_gdb): New function.
248 (ice_stepi): Use do_gdb to step properly.
249 (ice_nexti): Use do_gdb to step properly.
250 (view_source): Correct call to src window's location for new version.
252 Mon Nov 2 11:16:10 1998 Jim Ingham <jingham@cygnus.com>
254 * gdbtk-cmds (gdb_get_tracepoint_info): Demangle C++ function names.
256 Fri Oct 30 11:22:23 1998 Jim Ingham <jingham@cygnus.com>
258 * gdbtk-cmds (gdb_get_tracepoint_info): Fixed typo.
260 Wed Oct 28 16:19:02 1998 Martin M. Hunt <hunt@cygnus.com>
262 * gdbtk-cmds.c (gdb_set_bp_addr): For callback, send full
263 pathname instead of just basename.
265 Wed Oct 28 10:14:33 1998 Jim Ingham <jingham@cygnus.com>
267 * gdbtk-cmds.c: Made the bdtypes & bpdisp arrays shared so they
268 could be used in gdbtk-hooks.c (breakpoint_notify).
269 Also fixed a few error messages to actually print the bp number
271 * gdbtk-hooks.c (breakpoint_notify): pass more of the information
272 about the breakpoint into the Tcl command, so it does not have to
273 try and guess about information we have on the C side.
274 * gdbtk.h: Export the bptypes & pbdisp arrays.
276 1998-10-13 Jason Molenda (jsm@bugshack.cygnus.com)
278 * gdbtk.c, gdbtk-cmds.c: Cast parameters passed to make_cleanup to
279 use the new make_cleanup_func typedef.
281 1998-10-08 Keith Seitz <keiths@cygnus.com>
283 * gdbtk-hooks.c (gdbtk_add_hooks): Install a hook for
284 (new) file_changed_hook.
285 (gdbtk_exec_file_changed): Rename to gdbtk_exec_file_display
286 to mimic hook's name.
287 (gdbtk_file_changed): New hook function.
289 Tue Oct 6 22:57:13 1998 Andrew Cagney <cagney@b1.cygnus.com>
291 * configure.in (links): Link gdbtcl2 directory instead of gdbtcl.
293 Mon Oct 5 00:34:00 1998 Martin M. Hunt <hunt@cygnus.com>
295 * gdbtk-cmds.c (gdb_set_bp_addr): New command. Sets a
296 breakpoint at an address. Use this instead of gdb_cmd "break"
297 because the syntax of the break command is broken and doesn't
298 allow you to create a thread-specific BP at an address. Also
301 Sun Oct 4 22:35:47 1998 Martin M. Hunt <hunt@cygnus.com>
303 * gdbtk-cmds.c (gdb_set_bp): Add an optional thread number.
304 (gdb_find_bp_at_line): New function. Returns a list of bpnums
305 at the specified line number.
306 (gdb_find_bp_at_addr): New function. Returns a list of bpnums
309 1998-10-02 Keith Seitz <keiths@cygnus.com>
311 * gdbtk-hooks.c (gdbtk_exec_file_changed): New function which handles
313 (gdbtk_add_hooks): Define exec_file_display_hook (to gdbtk_exec_file_changed)
315 * gdbtk-cmds.c (gdb_stop): target_stop is ALWAYS defined, so
316 compare against something a little more meaningful (target_ignore).
318 1998-09-24 Keith Seitz <keiths@cygnus.com>
320 * gdbtk.c (gdbtk_wait): Don't run the timer for ice targets.
322 * v850ice.c (WM_ADDR_TO_SYM): New message.
323 (v850ice_wndproc): Add handler for WM_SOURCE.
324 (v850ice_wait): Call the ui_loop_hook occasionally.
325 (ice_cont): Acknowledge message before doing anything.
326 (ice_stepi): Ack message and let gdbtk do stepping.
327 (ice_nexti): Ack message and let gdbtk do stepping.
328 (view_source): New function ICE calls to display source code.
331 Mon Sep 21 13:33:27 1998 Drew Moseley <dmoseley@cygnus.com>
333 * Makefile.in: Added sanitize markers around IDE code
334 * configure.in (host_libs): Added sanitize markers around IDE code
335 * configure: Regenerated configure from configure.in
338 1998-09-18 Keith Seitz <keiths@cygnus.com>
340 * gdbtk-cmds.c (get_frame_name): Demangle function names, too.
342 Thu Sep 10 22:10:29 1998 Jim Ingham <jingham@cygnus.com>
344 *gdbtk-cmds.c (gdb_disassemble): Make sure the symtab's linetable is not
345 null before trying to use it...
347 1998-09-02 Keith Seitz <keiths@cygnus.com>
349 * gdbtk-cmds.c (gdb_cmd): Do not run the timer when downloading --
350 the ui_progress_hook that has been installed will actually
351 update the gui for us.
353 Mon Aug 31 15:42:10 1998 Tom Tromey <tromey@cygnus.com>
355 * gdbtk-hooks.c (context_hook): Don't define.
357 1998-08-31 Keith Seitz <keiths@cygnus.com>
359 * gdbtk-cmds.c (gdb_listfuncs): When stripping out "global destructors"
360 and "global constructors", do not append any elements to the result.
362 Sun Aug 30 00:49:18 1998 Martin M. Hunt <hunt@cygnus.com>
364 * gdbtk-cmds.c (Gdbtk_Init): Link C variable gdb_context
365 with tcl variable gdb_context_id.
367 * gdbtk-hooks.c (gdbtk_context_change): Implement new hook called
368 context_hook. Called when threads change.
370 * gdbtk.c: Initialize gdb_context.
372 * gdbtk.h: Declare gdb_context.
374 * infrun (wait_for_inferior): Call context_hook.
376 * thread.c (thread_command): Call context_hook.
378 * defs.h: Declare context_hook.
380 Fri Aug 28 12:14:49 1998 Martin M. Hunt <hunt@cygnus.com>
382 * gdbtk-cmds.c (gdb_loadfile): Open the file after doing
383 the symtab lookup and calling symtab_to_filename(). This
384 makes GDBtk work with the GDB "dir" command.
386 1998-08-18 Keith Seitz <keiths@cygnus.com>
388 * gdbtk-hooks.c (gdbtk_add_hooks): Set selected_frame_level_changed_hook.
389 (gdbtk_selected_frame_changed): New function.
391 * gdbtk-cmds.c (Gdbtk_Init): Add command gdb_stack into interpreter.
392 Link gdb's global selected_frame_level with interpreter global
393 gdb_selected_frame_level.
394 (gdb_stack): New function to faciltate speedier backtraces from
396 (get_frame_name): New helper function for gdb_stack.
398 Tue Aug 18 15:42:40 1998 Martin M. Hunt <hunt@cygnus.com>
400 * gdbtk-cmds.c (gdb_listfuncs): Strip out global constructors
401 and destructors from the function list.
404 Thu Aug 13 15:15:59 1998 Drew Moseley <dmoseley@cygnus.com>
406 * Makefile.in (FOUNDRY_LIB_BASE): Added the Foundry SDK code that allows
407 gdbtk to be linked with the Foundry libraries provided by a prebuilt/released
408 binary version of Foundry. The libraries and header files need to come from
409 the installed location of Foundry rather than the devo subdirectories.
410 * configure.in (ENABLE_IDE): Foundry SDK additions. Added the "with-foundry-libs"
412 * configure: Foundry SDK additions. Regenerated from configure.in.
415 Thu Aug 13 15:09:59 1998 Drew Moseley <dmoseley@cygnus.com>
417 * gdbtk.c (gdbtk_cleanup): added a scope-level around the contents
418 of the #ifdef so that the variable declarations in there would not
419 be illegal in a C compilation.
421 Mon Jul 27 13:07:16 1998 Martin M. Hunt <hunt@cygnus.com>
423 * gdbtk.c (gdbtk_call_command): Removed because it is now
425 (null_routine): Removed.
427 * gdbtk-hooks.c (tracepoint_notify): Fix sprintf to
428 match number of arguments.
430 * gdbtk-cmds.c (gdb_loc): When calling gdb_loc with an
431 argument, call find_pc_line() to get a complete
432 symtab_and_line struct.
434 Fri Jul 24 14:25:43 1998 Keith Seitz <keiths@cygnus.com>
436 * gdbtk-cmds.c (gdb_search): Add missing NULL to switches.
437 Add missing flags to result_ptr.
438 Pass along any errors caused by getting the list of files from
440 Allocate correct amount of memory for the file list.
441 Don't do any unecessary cleanups.
443 Fri Jul 24 01:08:37 1998 Martin M. Hunt <hunt@cygnus.com>
445 * gdbtk-cmds.c (gdb_loadfile): When there are no
446 linenumbers, use only one tab.
448 Sat Jul 18 12:28:39 1998 Martin M. Hunt <hunt@cygnus.com>
450 * gdbtk.c (gdbtk_cleanup): Add call to tcl function
451 gdbtk_cleanup. We need this so the GUI gets to clean
452 up no matter how GDB exits.
454 Wed Jul 1 13:10:58 1998 Jim Ingham <jingham@cygnus.com>
456 * Moved gdbtk_hooks.c & gdbtk_cmds.c to gdbtk-hooks.c &
457 gdbtk-cmds.c to comply with the gdb conventions. Changed the
458 configure & makefile to reflect the change...
460 Wed Jul 1 11:07:21 1998 Jim Ingham <jingham@cygnus.com>
462 * gdbtk.c: removed all the commands and hooks from this file so
463 now it contains only the startup code.
464 * gdbtk.c (gdbtk_init): Fixed a bug in the startup code on Windows
465 that caused gdbtk not to find the share directory unless
466 GDBTK_LIBRARY was set.
467 * gdbtk_cmds.c: New file - this contains all the Tcl commands that
468 gdb defines. All the old commands were moved here, the
469 string-based commands were converted to object commands, and the
470 object-based commands were all converted to uniformly use the
471 call_wrapper. A new function, Gdbtk_Init was added to centralize
472 initializing the gdb package.
473 * gdbtk_hooks.c: New file - All the hooks were moved here, and a new
474 function, gdbtk_add_hooks was added to centralize adding all these
475 hook functions. gdbtk_fputs was also modified to handle the new
476 result_ptr structure. See the comments in gdbtk.h for more
478 * gdbtk.h: New file - this contains all the defines and globals
479 shared by gdbtk.c, gdbtk_cmds.c & gdbtk_hooks.c
480 * Makefile.in, configure.in & configure: mutatis mutandi for the
484 Mon Jun 29 11:49:17 1998 Keith Seitz <keiths@cygnus.com>
486 * main.c (main): Don't include gdbtk test code if GDBTK is
487 not defined by configure.
489 * configure.in: When enabling gdbtk, add "-DGDBTK" to ENABLE_CFLAGS.
491 * configure: Regenerate.
493 Fri Jun 26 13:56:07 1998 Keith Seitz <keiths@cygnus.com>
495 * gdbtk.c: Change all references to static global "interp" to
496 "gdbtk_interp" and export this global.
497 (gdbtk_init): If gdbtk_source_filename is not NULL, source this file
498 into the interpreter when it goes idle.
499 Add new command "gdb_search".
500 (gdb_search): New function which searches the symbol table.
501 (gdbtk_test): New function called by main when the --tclcommand
504 * main.c (main): Add a new option "--tclcommand" which is used
505 by the testsuite to source a file into the interpreter when it
508 Sun Jun 21 09:31:12 1998 Ron Unrau (runrau@cygnus.com)
510 * gdbtk.c (gdb_set_bp): Use new interface.
512 Wed Jun 17 19:12:23 1998 Jeff Holcomb <jeffh@cygnus.com>
514 * Makefile.in (install-only): Install tracing help files.
516 Mon Jun 15 13:18:21 1998 Jim Ingham <jingham@cygnus.com>
518 * gdbtk.c (gdbtk_init): Add elements to the auto_path AS LIST
519 ELEMENTS. This allows gdbtk to work when installed in a directory
520 which has a space in the path. D. Moseley pointed out the bug.
523 Tue Jun 9 14:10:46 1998 Keith Seitz <keiths@cygnus.com>
525 * gdbtk.c (gdb_get_vars_command): Return static variables and
526 variables stored in registers.
528 * main.c (main): Call pre/post_add_symbol_hook's when loading
529 executables and symbol files.
531 Fri Jun 5 00:16:22 1998 Martin M. Hunt <hunt@cygnus.com>
533 * gdbtk.c (gdbtk_init): Change all references to
534 GDBTK_IDE to IDE_ENABLED.
536 Thu Jun 4 18:31:53 1998 Martin M. Hunt <hunt@cygnus.com>
538 * gdbtk.c (gdbtk_init): Initialize tkTable.
540 Thu Jun 4 10:15:03 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
544 - Elena Zannoni <ezannoni@kwikemart.cygnus.com>
545 (call_obj_wrapper): in case of error, copy the
546 error message from the result to the error_string.
547 (gdbtk_fputs): add comments.
548 (gdb_actions_command): call validate_actionline when installing the
549 tracepoint, to do the syntax checking of the actions for us.
550 - Elena Zannoni <ezannoni@kwikemart.cygnus.com>
551 (gdb_get_trace_frame_num): new function to get the
552 trace frame number from gdb.
553 (gdbtk_init): added new command gdb_get_trace_frame_num.
554 - Jim Blandy <jimb@zwingli.cygnus.com>
555 (struct wrapped_call_objs): Change the `func' member to
556 be a Tcl_ObjCmdProc, not an Tcl_CmdProc, since it accepts a vector
557 of objects as arguments. Change the object vector to be const,
558 since that's what all the users of this structure seem to expect.
559 (call_obj_wrapper): Cast clientData properly before storing it in
560 the wrapped_args structure.
562 Thu May 28 17:19:14 1998 Keith Seitz <keiths@cygnus.com>
564 * gdbtk.c (_initialize_gdbtk): Get rid of the console. Patch from
565 Chris Faylor (cgf@cygnus.com).
567 * configure.in: Link cygwin32 with subsystem console.
569 * configure: Regenerated
571 Sun May 24 14:00:24 1998 Keith Seitz <keiths@cygnus.com>
573 * ser-unix.c (wait_for): Do not reset timeout_remaining for cygwin32 so that
574 we can use this member to track real timeouts.
575 (hardwire_readchar): Modify for cygwin32 so that we only ever use a real
576 system timeout of one second. Track the "real" timeout as a series of these
578 Call ui_loop_hook to keep the gui alive.
580 * top.c: Define new hook for cygwin32, "ui_loop_hook".
582 * gdbtk.c (gdbtk_init): Add ui_loop_hook for CygWin32 to work around
585 Thu May 21 13:56:24 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
587 * gdbtk.c: reinserted the changes that were accidentally deleted:
588 (_initialize_gdbtk): Use correct device names in
589 cygwin-specific call (cosmetic change).
590 (gdbtk_ignorable_warning): removed va_list parameter,
592 (_initialize_gdbtk): add cygwin32 specific code to
593 allow `gdb -nw' to work when specified specified from a windows
594 console-mode command line.
596 1998-05-19 Jim Blandy <jimb@zwingli.cygnus.com>
598 * gdbtk.c (struct wrapped_call_objs): Change the `func' member to
599 be a Tcl_ObjCmdProc, not an Tcl_CmdProc, since it accepts a vector
600 of objects as arguments. Change the object vector to be const,
601 since that's what all the users of this structure seem to expect.
602 (call_obj_wrapper): Cast clientData properly before storing it in
603 the wrapped_args structure.
605 Wed May 13 11:12:58 1998 James Ingham <jingham@leda.cygnus.com>
607 * gdbtk.c: Fixed a goof in the definition of the gdb_get_args &
608 gdb_get_locals Tcl commands. Moved the previous ChangeLog entry
609 from ChangeLog to ChangeLog-gdbtk (here)...
611 Tue May 12 13:29:20 1998 Jeff Holcomb <jeffh@cygnus.com>
613 * Makefile.in (install-only): Add images/icons.txt and
614 images2/icons.txt to files that need to be installed.
616 Tue May 12 12:03:16 1998 James Ingham <jingham@leda.cygnus.com>
618 * gdbtk.c: Add an object call wrapper for the new Tcl_Obj based
619 commands. This way the obj commands will also go through
620 catch_errors. This is just a bandaid while I rewrite the
621 string-based commands to use the object format.
623 Tue May 5 09:30:25 1998 Christopher Faylor <cgf@cygnus.com>
625 * gdbtk.c (_initialize_gdbtk): Use correct device names in
626 cygwin-specific call (cosmetic change).
628 Wed Apr 29 15:53:16 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
630 * gdbtk.c (gdbtk_ignorable_warning): removed va_list parameter,
633 Tue Apr 28 19:41:33 1998 Tom Tromey <tromey@cygnus.com>
635 * Makefile.in (GDBTKLIBS): New macro.
636 (INSTALLED_LIBS): Include GDBTKLIBS.
638 * configure: Rebuilt.
639 * configure.in: Put Tcl/Tk libs into GDBTKLIBS, not LIBS.
640 (GDBTKLIBS): AC_SUBST.
642 Thu Apr 23 19:01:05 1998 Keith Seitz <keiths@onions.cygnus.com>
644 * Makefile.in (install-only): Install help files.
646 Wed Apr 22 21:17:35 1998 Christopher Faylor <cgf@cygnus.com>
648 * gdbtk.c (_initialize_gdbtk): add cygwin32 specific code to
649 allow `gdb -nw' to work when specified specified from a windows
650 console-mode command line.
652 Wed Apr 15 11:23:53 1998 Stan Shebs <shebs@andros.cygnus.com>
654 * gdbtcl: Remove directory and contents, this version of
655 the interface is obsolete.
657 Mon Apr 13 16:17:52 1998 Martin M. Hunt <hunt@cygnus.com>
659 * gdbtk.c (gdb_loadfile): Change fstat() call to stat().
660 Needed because you can't convert a FILE* to an fd.
662 Mon Apr 13 16:28:07 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
664 * gdbtk.c: (perror_with_name_wrapper) new function to call
665 perror_with_name safely.
666 (gdb_loadfile) added source vs. executable time stamp check.
667 (gdbtk_warning) new function to pass a warning message to the gui.
668 (gdbtk_ignorable_warning) new function to pass a warning
669 to the gui. Used only for the src. vs. exec check.
670 (gdbtk_init) added warning_hook
671 added include <sys/stat.h>
673 Mon Apr 13 12:58:26 1998 Keith Seitz <keiths@onions.cygnus.com>
675 * gdbtk.c (gdbtk_start_timer): Include on all platforms. Decrease
676 timer interval a little.
677 (gdbtk_stop_timer): Include on all platforms.
678 (gdbtk_wait): No more signals! Use a timer on all platforms to keep the
680 (gdbtk_init): Remove FIOASYNC and all x_fd references. Now using timers
683 Fri Apr 10 15:48:10 1998 Jason Molenda (crash@bugshack.cygnus.com)
685 * gdbtk.c (gdb_listfiles): Allocate space for 'files' dynamically.
687 Thu Apr 9 14:20:59 1998 Martin M. Hunt <hunt@cygnus.com>
689 * gdbtk.c (gdbtk_init): Remove redundant variable "IDE".
691 Tue Apr 7 15:13:58 1998 Stan Shebs <shebs@andros.cygnus.com>
693 * gdbtk.tcl: Remove, no longer used.
695 Tue Apr 7 12:49:45 1998 Keith Seitz <keiths@onions.cygnus.com>
697 * gdbtk.c (gdb_cmd): NEVER call the busy, update, and idle hooks.
699 Tue Mar 31 15:42:06 1998 Keith Seitz <keiths@onions.cygnus.com>
701 * gdbtk.c (gdb_loadfile): Don't use the return result from
702 sprintf, which returns a char * under SunOS4.
704 Tue Mar 31 17:18:43 1998 Ian Lance Taylor <ian@cygnus.com>
706 * configure.in: Add $(LIBIDETCL) as well as $(LIBIDE) if
708 * Makefile.in (IDE_CFLAGS_X): Add -I for libidetcl/src.
710 * configure: Rebuild.
712 Sun Mar 29 21:19:46 1998 Keith Seitz <keiths@onions.cygnus.com>
714 * gdbtk.c (gdb_get_tracepoint_info): Change formatting of address.
715 (tracepoint_exists): Remove code which confuses assembly traces.
717 Sat Mar 28 12:13:23 1998 Keith Seitz <keiths@onions.cygnus.com>
719 * gdbtk.c (gdb_cmd): If argc > 2, assume that the busy and idle hooks
720 should not be called.
722 Thu Mar 26 22:29:28 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
724 * gdbtk.c: (gdb_trace_status) new function.
725 (gdbtk_init) added command "gdb_is_tracing".
726 (tracepoint_notify) added passcount information.
728 Thu Mar 26 12:00:35 1998 Martin M. Hunt <hunt@cygnus.com>
730 * gdbtk.c (gdbtk_fputs): Insert fencepost.
731 (gdb_loc): Correct pc calculation.
732 (gdb_immediate_command): Return if a load is in progress.
733 (gdb_cmd): Return if a load is in progress.
734 (target_stop_wrapper): New function.
735 (gdb_stop): Call target_stop_wrapper.
736 (x_event): Add fencepost and optimize load cancel check.
737 (gdbtk_start_timer): Set up structs only once.
738 (gdbtk_stop_timer): Just use preset structs to set timer parameters.
739 (gdb_loadfile): If file cannot be loaded, return error message.
740 (gdb_loadfile): Add space before tab so that lines without
741 a '-' can later be changed to have one.
743 Wed Mar 25 14:08:51 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
745 * gdbtk.c (gdbtk_pre_add_symbol): Use Tcl_merge to form Tcl commands.
747 Mon Mar 23 13:41:39 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
749 * gdbtk.c (gdb_get_mem): Rewrite to fetch entire contents
750 of the memory window at once.
752 Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
754 Merged changes from Foundry: list follows by author:
756 - Tom Tromey <tromey@cygnus.com>
758 * Makefile.in (gdbres.o): New target.
759 (WINDRES): New define.
760 * configure: Rebuilt.
761 * configure.in (WINDRES): Define.
762 (CONFIG_OBS): Include gdbres.o on Windows.
763 * gdbtool.ico: New file.
765 * gdbtk.c (gdbtk_init): Call ide_create_messagebox_command.
766 (gdbtk_cleanup): Call ide_interface_deregister_all.
767 (gdbtk_init): Pass event handle to cleanup.
768 (TclDebug): Use Tcl_Merge to construct command.
769 (gdbtk_init): Call ide_create_cygwin_path_command.
771 - Martin M. Hunt <hunt@cygnus.com>
773 * gdbtk.c (gdb_set_bp): Set addr_string for bp.
774 (gdb_get_breakpoint_info): Demangle function
775 names in breakpoint info.
776 Include "demangle.h".
777 (gdb_loc, gdb_listfuncs): Demangle C++
779 (gdb_set_bp): Properly quote filename to fix
780 problems with spaces. Send pc back as a hex string.
781 (gdb_listfuncs): Remove debugging line.
782 Turn off some debugging lines.
783 (breakpoint_notify): Return correct line number.
784 (gdb_get_breakpoint_info): Return correct line number.
785 (gdb_set_bp): New function to provide a better way to
787 (gdbtk_readline, gdbtk_readline_begin): Memory
788 allocated by tcl needs to be freed by Tcl_Free().
789 (find_file_in_dir): Deleted.
790 (gdb_find_file_command): Call full_lookup_symtab().
791 (gdb_listfuncs): Call full_lookup_symtab().
792 (full_lookup_symtab): New function. Like lookup_symtab
793 except handles multiple files with the same basename,
794 full pathnames, and always sets symtab->fullname.
795 (gdb_loadfile): Call full_lookup_symtab(). Clear
797 (gdb_loadfile): Don't tag lines without source.
798 Tag source lines with source_tag.
799 (gdb_find_file_command, find_file_in_dir):
800 Rewrite. Now searches symtabs and psymtabs for a match
801 on the partial or full filename. Returns the full pathname.
802 (gdb_loadfile): Realloc additional memory
803 if someone loads in a file with more than 160,000
804 lines. I don't know if this really works because
805 I don't have enough memory to test it.
806 (gdb_sourcelines): Deleted.
807 (gdb_loadfile): New function. Takes a text widget
808 and loads it with the contents of a file. Marks
809 and tags source lines.
810 (pc_changed): New function.
811 (get_pc_register): Returns the value of
813 (gdb_loc): If looking on the stack, return
814 real pc along with calling source line.
815 (gdb_loc): Return "" instead of "N/A" if
816 filename is not found.
817 (gdb_get_breakpoint_info): Same.
818 (get_register): For Natural mode, set format to 0.
819 Minor bugfixes from keiths.
820 (TclDebug): New function for debugging use.
821 (gdb_loc): Return correct PC for frames
822 that are not the innermost frame.
823 (gdb_listfiles): Rewritten to use object
824 API. Now takes an optional dirname which will cause
825 only files in that directory or its subdirectories
826 to be returned. Now returns basenames instead of
828 (gdb_cmd): Set/reset load_in_progress flag.
829 (call_wrapper): Don't pop up dialog for errors in
830 downloads; just abort download.
831 (gdbtk_load_hash): Set return value correctly.
833 - Keith Seitz <keiths@onions.cygnus.com>
835 * gdbtk.c (gdbtk_init): Define the ui_loop_hook so that it can be
836 called by routines which might block, allowing us to update the GUI.
837 (gdbtk_wait): Move timer calls to annotation hooks.
838 (gdbtk_init): Define the annotation hooks.
839 (gdbtk_annotate_starting): New function for cygwin32 hosts.
840 (gdbtk_annotate_stopped): New function for cygwin32 hosts.
841 (gdbtk_annotate_exited): New function for cygwin32 hosts.
842 (gdbtk_annotate_signalled): New function. for cygwin32 hosts.
843 (gdbtk_init): Use gdbtk_print_frame_info hook.
844 (gdbtk_print_frame_info): New function which sets current_source_symtab
845 based on the given symtab and line info.
846 (gdb_immediate_command): New function which does
848 output. (Contrast to gdb_cmd.)
849 (gdb_prompt_command): New function to return gdb's prompt.
850 (find_file_in_dir): New functon which searches source paths
851 for a given filename.
852 (gdb_find_file): New function which returns path to given file -- uses
854 (gdbtk_init): Install "gdb_immediate", "gdb_find_file", and
856 commands into interpreter.
858 - Ian Lance Taylor <ian@cygnus.com>
860 * gdbtk.c (gdbtk_timer_going): If __CYGWIN32__, new static
862 (gdb_cmd): If __CYGWIN32__, if executing the load command, call
863 gdbtk_start_timer and gdbtk_stop_timer.
864 (call_wrapper): If __CYGWIN32__, if the timer is going, turn it
865 off. Clear load_in_progress.
866 (x_event): If load_in_progress, quit if download_cancel_ok.
867 (gdbtk_start_timer): Set gdbtk_timer_going.
868 (gdbtk_stop_timer): Clear gdbtk_timer_going.
869 (gdbtk_wait): Call x_event.
870 (gdbtk_init): Call ide_create_win_grab_command if
872 (gdb_clear_file): Clear stop_pc.
874 Wed Mar 4 16:50:18 1998 Jason Molenda (crash@bugshack.cygnus.com)
876 * gdbtk.c (gdb_listfiles): Fix thinko in last change.
878 Wed Mar 4 15:34:49 1998 Jason Molenda (crash@bugshack.cygnus.com)
880 * gdbtk.c (gdb_listfiles): Allocate space for 'files' dynamically.
882 Tue Feb 10 17:50:37 1998 Keith Seitz <keiths@onions.cygnus.com>
884 * gdbtk.c (gdbtk_modify_tracepoint): Define new tracepoint modification hook.
885 (gdbtk_print_frame_info): Define this hook so that current_source_symtab
887 (gdb_actions_command): Use free_actions () from tracepoint.c/h.
889 Mon Jan 26 11:37:55 1998 Keith Seitz <keiths@onions.cygnus.com>
891 * gdbtk.c (gdb_actions_command): Make note of next action
892 before freeing all references to it.
894 Sat Jan 24 23:52:08 1998 Martin M. Hunt <hunt@cygnus.com>
896 * gdbtk.c: Merge from Foundry branch.
897 (TclDebug): New debugging function.
898 (gdb_loc): For frames, find address of calling function
899 instead of whatever is on the stack (usually the next
901 (gdb_listfiles): Takes an optional pathname argument and
902 returns an alphabetized list of basenames of files in the
905 Wed Jan 22 10:37:02 1998 Keith Seitz <keiths@onions.cygnus.com>
907 * symfile.c: Define two new hooks for symbol reading:
908 "pre_add_symbol_hook" and "post_add_symbol_hook". These hooks
909 are called before we begin reading symbols, and after we finish.
910 (generic_load): Use new symbol reading hooks and get rid of
913 * gdbtk.c (gdbtk_init): Add hooks for pre- and post-symbol reading.
914 (gdbtk_pre_add_symbol): New function: the pre-add-symbol hook.
915 (gdbtk_post_add_symbol): New function: the post-add-symbol hook.
916 (find_file_in_dir): New function. Moved the guts of gdb_find_file_command
917 into here to allow its use by others.
918 (gdb_loc): Use find_file_in_dir to return the real path to the file
919 (or "N/A" if we can't find it).
921 * configure.in (TIX_LIB_EXT): Define new variable for those special cases
922 when TCL_SHLIB_SUFFIX is not enough to specify the dependency.
924 * configure: Regenerate.
926 Fri Jan 23 07:47:06 1998 Fred Fish <fnf@cygnus.com>
928 * Makefile.in (uninstall): Remove installed gdbtcl dir, if one
931 Thu Jan 15 12:42:28 1998 Keith Seitz <keiths@onions.cygnus.com>
933 * gdbtk.c (gdb_immediate_command): New function which does not buffer any
934 output. (Contrast to gdb_cmd.)
935 (gdbtk_init): Install "gdb_immediate" command into interpreter.
937 Wed Jan 14 16:38:44 1998 Keith Seitz <keiths@pizza.cygnus.com>
939 * configure.in (--enable-gdbtk): If tcl was built with --enable-shared,
940 use TCL_SHLIB_SUFFIX to specify the suffix of the library file so that
941 we don't expect to see "libfoo.a" instead of "libfoo.{so,sl, etc}".
943 * configure: Regenerate.
945 Wed Dec 31 16:50:26 1998 Keith Seitz (keiths@onions.cygnus.com)
947 * gdbtk.c (gdb_actions_command): extract and save step count
948 from "while-stepping" command
950 Tue Dec 16 21:16:42 1997 Ian Lance Taylor <ian@cygnus.com>
952 * Makefile.in (LIBGUI): New variable.
953 (GUI_CFLAGS_X): New variable.
954 (IDE_CFLAGS): Add $(GUI_CFLAGS_X).
955 * configure.in: Add $(LIBGUI) to TCL_LIBS and CONFIG_DEPS.
956 * configure: Rebuild.
958 Wed Dec 10 13:16:45 1997 Keith Seitz <keiths@onions.cygnus.com>
960 * gdbtk.c (gdb_get_tracepoint_info): Use info in struct
961 symtab_and_line (not struct tracepoint) so that we get the
962 real line info for an address. Arrange data more like
963 gdb_get_breakpoint_info.
964 (tracepoint_notify): Use info in struct symtab_and_line again.
965 (gdbtk_init): Add command "gdb_get_tracepoint_list" into
967 (gdb_get_tracepoint_list): New function that aids the source
968 window in displaying tracepoints when the file changes.
970 Fri Dec 5 10:31:23 1997 Keith Seitz <keiths@pizza.cygnus.com>
972 * gdbtk.c (gdbtk_init): Add gdb_find_file into interpreter.
973 (gdb_find_file_command): New function which searches source path
974 to find the real full filename of a file.
976 Mon Dec 1 10:19:44 1997 Keith Seitz <keiths@onions.cygnus.com>
978 * gdbtk.c: Move include of "guitcl.h" back out of IDE ifdef.
979 (gdbtk_init): Move ide_initialize_paths out of IDE ifdef.
981 * configure.in (TCL_LIBS, CONFIG_DEPS): Add IDE libraries for all
983 (CONFIG_OBS): Remove tracepoint.o, which should always be included.
985 * configure: regenerate
987 * Makefile.in (install-only): ALWAYS install the new gdbtk
988 (REMOTE_OBS): add tracepoint.o
990 Thu Nov 27 09:07:18 1997 Michael Meissner <meissner@cygnus.com>
992 * configure.in ({TCL_LIBS,CONFIG_DEPS}): Don't add IDE libraries
994 (CONFIG_OBS): Add tracepoint.o to list if --enable-gdbtk.
995 * configure: Regenerate.
997 * gdbtk.c (gdb_get_breakpoint_info): Add missing filename
999 (toplevel): Move include of guitcl.h into #ifdef IDE region.
1000 (gdbtk_init): Move ide_initialize_paths call into #ifdef IDE
1003 * Makefile.in (gdbtk.o): Update dependencies.
1005 Wed Nov 26 15:02:43 1997 Keith Seitz <keiths@onions.cygnus.com>
1007 * gdbtk.c (gdb_loc): symtab_to_filename can return NULL.
1008 (breakpoint_notify): Ditto.
1009 (gdb_get_breakpoint_info): Ditto.
1011 Wed Nov 26 11:33:09 1997 Keith Seitz <keiths@onions.cygnus.com>
1013 Merge in code from Foundry branch:
1015 * Makefile.in (install-only): install the new gdbtk, not the old
1017 * gdbtk.c (gdbtk_call_command): also run idle hooks for class_trace
1019 (gdbtk_init): Add new commands "gdb_get_locals", "gdb_get_args",
1020 "gdb_get_function", "gdb_get_line", "gdb_get_file",
1021 "gdb_tracepoint_exists", "gdb_get_tracepoint_info", "gdb_actions",
1023 (gdb_get_vars_command): New function.
1024 (gdb_get_line_command): New.
1025 (gdb_get_file_command): New.
1026 (gdb_get_function_command): New.
1027 (gdb_get_tracepoint_info): New.
1028 (gdbtk_create_tracepoint): New.
1029 (gdbtk_delete_tracepoint): New.
1030 (tracepoint_notify): New.
1031 (tracepoint_exists): New.
1032 (gdb_actions_command): New.
1033 (gdb_tracepoint_exists_command): New.
1034 (gdb_prompt_command): New.
1036 Thu Nov 13 18:15:54 1997 Ian Lance Taylor <ian@cygnus.com>
1038 * gdbtk.c: Move include of gdbcore.h to top of file.
1039 (close_bfds): New static function if _WIN32.
1040 (gdbtk_readline): Call close_bfds.
1041 (call_wrapper, tk_command_loop): Likewise.
1042 (gdb_clear_file): New static function.
1043 (gdbtk_init): Create gdb_clear_file Tcl command.
1045 Wed Nov 12 14:58:39 1997 Jeff Holcomb <jeffh@cygnus.com>
1047 * gdbtk.c: gdbtk_load_hash and ui_load_progress_hook return an
1049 (gdbtk_load_hash): download hash routine returns an int result.
1051 Mon Nov 10 15:11:51 1997 Ian Lance Taylor <ian@cygnus.com>
1053 * gdbtk.c (gdbtk_init): Call ide_create_shell_execute_command if
1055 * configure.in: Add -lshell32 to WIN32LIBS on cygwin32.
1056 * configure: Rebuild.
1058 Sun Nov 9 16:25:34 1997 Tom Tromey <tromey@cygnus.com>
1060 * gdbtk.c (gdbtk_init): Run ide_create_help_command.
1062 Tue Oct 28 17:31:47 1997 Martin M. Hunt <hunt@cygnus.com>
1064 * gdbtk.c (gdbtk_init): Call ide_create_winprint_command.
1066 Thu Oct 23 15:53:37 1997 Ian Lance Taylor <ian@cygnus.com>
1068 * configure.in: Add -lgdi32 to WIN32LIBS when linking gdbtk on
1070 * configure: Rebuild.
1072 Wed Oct 22 21:32:54 1997 Martin M. Hunt <hunt@cygnus.com>
1074 * gdbtk.c (gdbtk_init): Create sizebox command on Windows.
1076 Thu Oct 9 14:33:21 1997 Ian Lance Taylor <ian@cygnus.com>
1078 * gdbtk.c (gdbtk_init): Remove assertion argument from call to
1079 ide_create_window_register_command.
1081 Wed Oct 1 11:09:52 1997 Tom Tromey <tromey@cygnus.com>
1083 * gdbtk.c (gdbtk_init): Pass name of restore interface to
1084 ide_create_window_register_command.
1086 Fri Sep 26 21:08:22 1997 Keith Seitz <keiths@pizza.cygnus.com>
1088 * gdbtk.c (gdbtk_init): Initialize ui_load_progress_hook.
1090 Thu Sep 25 03:05:00 1997 Martin M. Hunt <hunt@cygnus.com>
1092 * gdbtk.c (gdb_load_info): New function. Returns a list
1093 of section names and sizes for an executable.
1094 (gdbtk_load_hash): Stub function to call tcl function
1097 Tue Sep 23 01:29:00 1997 Martin M. Hunt <hunt@cygnus.com>
1099 * gdbtk.c (gdb_get_mem): Fix compiler warning.
1101 Sun Sep 21 00:15:00 1997 Martin M. Hunt <hunt@cygnus.com>
1103 * gdbtk.c (gdb_get_mem): Fix problem with ASCII dump.
1105 Tue Sep 16 18:07:17 1997 Martin M. Hunt <hunt@cygnus.com>
1107 * gdbtk.c (gdb_get_mem): New function. Returns
1108 a formatted memory dump with optional ASCII dump.
1110 Mon Sep 8 12:48:50 1997 Ian Lance Taylor <ian@cygnus.com>
1112 * gdbtk.c: Include ilutk.h if IDE.
1113 (gdb_confirm_quit, gdb_force_quit): New static functions.
1114 (gdbtk_init): Add Tcl commands gdb_confirm_quit and
1117 Mon Sep 8 03:05:33 1997 Martin M. Hunt <hunt@cygnus.com>
1119 * gdbtk.c (gdb_get_breakpoint_info): Now returns the
1120 function a breakpoint is in.
1122 Fri Sep 5 20:23:58 1997 Ian Lance Taylor <ian@cygnus.com>
1124 * gdbtk.c (gdbtk_init): Call ide_create_exit_command.
1126 Wed Sep 3 19:39:15 1997 Ian Lance Taylor <ian@cygnus.com>
1128 * gdbtk.c: Include guitcl.h.
1129 (gdbtk_init): Always call ide_initialize_paths. Set the Tcl
1130 variable IDE to 1 when using the IDE. Always try using auto path
1132 * Makefile.in (IDE_CFLAGS_X): Always include libide.
1133 (LIBIDE): New variable.
1134 (IDE_X): Omit -lide.
1135 (IDE_DEPS): Omit libide.
1136 * configure.in: Add LIBIDE to TCL_LIBS and CONFIG_DEPS.
1137 * configure: Rebuild.
1139 Mon Aug 25 02:28:55 1997 Keith Seitz <keiths@pizza.cygnus.com>
1141 * gdbtk.c: (gdb_target_has_inferior) check if inferior_pid is non-zero
1142 before assuming that the inferior is running.
1144 Mon Aug 25 01:06:48 1997 Ian Lance Taylor <ian@cygnus.com>
1146 * gdbtk.c (gdbtk_start_timer): Pass third argument to setitimer.
1147 (gdbtk_stop_timer): Likewise.
1149 Mon Aug 25 00:23:08 1997 Keith Seitz <keiths@pizza.cygnus.com>
1151 * gdbtk.c: (gdbtk_init) create new command "gdb_target_has_execution"
1152 (gdb_target_has_execution_command) new function
1154 Sun Aug 24 20:27:22 1997 Ian Lance Taylor <ian@cygnus.com>
1156 * gdbtk.c (gdb_loc): If there are no symbols, just bail
1158 (tk_command_loop): Print errors encountered while running
1161 Sun Aug 24 13:44:03 1997 Tom Tromey <tromey@cygnus.com>
1163 * gdbtk.c (gdbtk_init): Run ide_create_build_command.
1165 Sat Aug 23 21:53:39 1997 Ian Lance Taylor <ian@cygnus.com>
1167 * gdbtk.c: If CYGWIN32, include <sys/time.h>.
1168 (x_fd): Don't define if WINNT.
1169 (gdbtk_start_timer, gdbtk_stop_timer): New static functions if
1171 (gdbtk_wait): Don't set up signal handling if WINNT. If CYGWIN32,
1172 call gdbtk_start_timer and gdbtk_stop_timer.
1173 (gdbtk_init): Don't set up signal handling or make x_fd
1174 asynchronous if CYGWIN32.
1176 Fri Aug 22 15:23:15 1997 Ian Lance Taylor <ian@cygnus.com>
1178 * gdbtk.c (error_string_ptr): New static variable.
1179 (gdbtk_fputs): If result_ptr is NULL, and error_string_ptr is not
1180 NULL, and we're outputting to stderr, append string to
1181 error_string_ptr rather than calling gdbtk_tcl_fputs.
1182 (call_wrapper): Set up error_string_ptr. Put both error string
1183 and normal string in Tcl result.
1185 * gdbtk.c (gdbtk_init): Don't call ide_run_server_init until after
1186 gdb has initialized.
1188 Thu Aug 21 19:14:38 1997 Ian Lance Taylor <ian@cygnus.com>
1190 * gdbtk.c: If _WIN32, include winuser.h.
1191 (gdbtk_init): If _WIN32, use MessageBox to display an error
1192 evaluating main.tcl.
1194 Thu Aug 21 00:48:00 1997 Martin M. Hunt <hunt@pern.cygnus.com>
1196 * gdbtk.c (gdbtk_init): Add call to ide_run_server_init().
1197 (gdb_cmd): For the load command, don't buffer the I/O.
1199 Wed Aug 20 11:41:22 1997 Martin M. Hunt <hunt@cygnus.com>
1201 * gdbtk.c (gdbtk_query): Chaneg free() call to Tcl_Free().
1203 Tue Aug 19 17:09:19 1997 Ian Lance Taylor <ian@cygnus.com>
1205 * Makefile.in (TCL_DEPS, TK_DEPS): New variables.
1206 (ITCL_DEPS, TIX_DEPS): New variables.
1207 (IDE_DEPS): New variable.
1208 (CDEPS): Include @CONFIG_DEPS@.
1209 * configure.in: Set and substitute CONFIG_DEPS and TIX_DEPS.
1210 * configure: Rebuild.
1212 Sun Aug 17 00:42:11 1997 Martin M. Hunt <hunt@cygnus.com>
1214 * gdbtk.c (gdb_listfuncs): New function that returns
1215 a list of all the functions in a source file.
1217 Tue Aug 12 16:35:21 1997 Ian Lance Taylor <ian@cygnus.com>
1219 * Makefile.in (install-only): Install tclIndex if ENABLE_IDE.
1221 Mon Aug 11 10:43:04 1997 Tom Tromey <tromey@cygnus.com>
1223 * gdbtk.c (gdbtk_init): Use ide_event_init_from_environment.
1225 Fri Aug 8 15:59:24 1997 Ian Lance Taylor <ian@cygnus.com>
1227 * gdbtk.c (gdbtk_init): Change gdbtk_lib_tmp and gdbtk_file to be
1228 dynamically allocated, rather than fixed size. Pass "gdbtcl" to
1229 ide_initialize_paths to match installed directory name. If IDE,
1230 use auto_path to search for main.tcl.
1231 * Makefile.in (install-only): If ENABLE_IDE, install from gdbtcl2
1234 * gdbtk.c (gdbtk_cleanup): New static function.
1235 (gdbtk_init): Add gdbtk_cleanup as a final cleanup. Uncomment
1236 call to ide_initialize_paths. If we can't initialize the event
1237 system, set GDBTK_IDE to 0 in the Tcl interpreter. Create the
1238 ide_window_register and the ide_window commands. Initialize tk,
1239 itcl, and tix after initializing the IDE.
1241 * configure.in (tixdir): Update for cygwin32 case for Tcl 8.0.
1242 * configure: Rebuild.
1244 Fri Aug 8 00:13:32 1997 Martin M. Hunt <hunt@cygnus.com>
1246 * gdbtk.c (breakpoint_notify): Change buffer size from 100
1247 to 256 to avoid memory corruption with very long pathnames.
1249 Thu Aug 7 14:08:23 1997 Martin M. Hunt <hunt@cygnus.com>
1251 * configure.in: Change required Tix version to 4.1.8.0 .
1252 * configure: Rebuilt.
1254 Fri Aug 1 15:21:44 1997 Ian Lance Taylor <ian@cygnus.com>
1256 * gdbtk.c (Tcl_Alloc): Don't provide our own version of this if
1258 (Tcl_Realloc, Tcl_Free): Likewise.
1259 * configure.in: Check for cygwin32 environment. Define and
1260 substitute WIN32LIBS and WIN32LDAPP. Always set configdir to
1261 unix; setting it to win was for an old Tcl/Tk configuration
1263 * aclocal.m4 (CY_AC_LOAD_TKCONFIG): Substitute TK_BUILD_INCLUDES.
1264 * Makefile.in (TK_CFLAGS): Add @TK_BUILD_INCLUDES@.
1265 (WIN32LDAPP, WIN32LIBS): Define.
1266 (CLIBS): Add $(WIN32LIBS).
1267 (gdb): Use $(WIN32LDAPP).
1268 * configure: Rebuild.
1270 Tue Jul 22 19:45:37 1997 Martin M. Hunt <hunt@cygnus.com>
1272 * configure.in, aclocal.m4: Another fix to find the
1273 correct Tix library name.
1275 * configure: Rebuilt.
1277 Mon Jul 21 22:24:07 1997 Martin M. Hunt <hunt@cygnus.com>
1279 * aclocal.m4: Search for the correct tix library.
1281 Thu Jul 10 00:02:41 1997 Martin M. Hunt <hunt@cygnus.com>
1283 * Makefile.in, configure.in, aclocal.m4: Add Itcl, Tix, and
1284 IDE configuration information.
1286 * gdbtk.c (breakpoint_notify): Send address, linenumber and
1287 filename when a breakpoint is set. Avoids call to bp_info.
1288 (gdbtk_init): Call Tcl_FindExecutable(). Add code to handle
1289 Itcl, Tix and IDE initialization.
1291 * configure: Regenerated.
1293 Fri Jun 13 10:28:09 1997 Fred Fish <fnf@cygnus.com>
1295 * gdbtk.c (gdbtk_init): Make truth value test explicit.
1296 Remove unused static variable "Gdbtk_Library".
1298 Sat Jun 7 02:34:19 1997 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
1300 * gdbtk.c (gdb_get_breakpoint_info): Add string for new
1301 enumeration del_at_next_stop to bpdisp array.
1303 Tue Jun 3 15:46:51 1997 Tom Tromey <tromey@cygnus.com>
1305 * Makefile.in (LIB_RUNTIME_DIR): New variable.
1307 Wed May 7 19:10:19 1997 Andrew Cagney <cagney@b1.cygnus.com>
1309 * gdbtk.c (wrapped_call): New function - make actual call to tk
1311 (call_wrapper): Rewrite to use top.c:catch_errors.
1313 * gdbtk.c (gdb_stop): If No target_stop set quit flag and hope for
1316 Mon Apr 21 14:00:08 1997 Doug Evans <dje@canuck.cygnus.com>
1318 * gdbtk.c (gdb_disassemble): Store endian-ness in `di'.
1320 Wed Apr 16 12:33:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
1322 * Makefile.in (install-only): Make list of gdbtcl files to install
1323 explicit - was picking up files such as ChangeLog etc.
1324 (install-only): Don't blindly create the directory.
1326 Tue Apr 1 15:04:21 1997 Jason Molenda (crash@godzilla.cygnus.co.jp)
1328 * configure.in (gdbtcl): Create soft-link for gdbtcl/ directory
1329 instead of gdbtk.tcl.
1331 Fri Mar 28 17:04:02 1997 Jason Molenda (crash@godzilla.cygnus.co.jp)
1333 * Makefile.in (gdbtk.o): look for GDBTK_LIBRARY in $(datadir) by
1334 default, not $(srcdir).
1336 Wed Mar 19 15:16:17 1997 Martin M. Hunt <hunt@onions.cygnus.com>
1338 * Makefile.in: Install gdbtcl dir instead of gdbtk.tcl.
1340 * gdbtk.c: Added some ifdefs for Windows. Changed GDBTK_FILENAME
1341 to GDBTK_LIBRARY, which is now a path to search.
1342 (gdb_path_conv): New function. Convert Cygwin32 pathname to
1345 * {aclocal.m4,configure.in}: Changes for Windows builds.
1347 * configure: Rebuilt.
1349 Fri Mar 14 10:01:29 1997 Tom Tromey <tromey@cygnus.com>
1351 * configure: Regenerated.
1352 * configure.in (LIBS): Re-reverse order of TCL_LIBS and TK_LIBS.
1354 Wed Mar 12 14:29:52 1997 Tom Tromey <tromey@cygnus.com>
1356 * gdbtk.c (x_event): Use Tcl_DoOneEvent, TCL_DONT_WAIT,
1359 * configure: Regenerated.
1360 * configure.in (ENABLE_GDBTK): Put TCL_LIBS after TK_LIBS in
1363 Mon Feb 10 13:50:53 1997 Stu Grossman (grossman@critters.cygnus.com)
1365 * gdbtk.c (call_wrapper): Clear running_now if an error occurs.
1367 Wed Dec 11 18:51:35 1996 Mark Alexander <marka@cygnus.com>
1369 * gdbtk.c (gdb_loc): Correct truncation of PC on 64-bit MIPS.
1371 Tue Nov 19 09:26:14 1996 Tom Tromey <tromey@cygnus.com>
1373 * gdbtk.c (gdbtk_readline): Fix memory leak.
1375 Mon Nov 18 23:43:05 1996 Tom Tromey <tromey@cygnus.com>
1377 Fixes for Tcl 7.6 / Tk 4.2:
1378 * gdbtk.tcl (apply_filespec): Use tk_getOpenFile.
1379 Remove old fileselect code.
1380 * gdbtk.c (Tcl_Alloc): Rename from Tcl_Malloc.
1382 Fri Sep 27 10:25:30 1996 Fred Fish <fnf@cygnus.com>
1384 * gdbtk.tcl (create_copyright_window): Increase timeout from
1385 15 seconds to 30 seconds.
1387 Wed Sep 4 17:28:40 1996 Stu Grossman (grossman@critters.cygnus.com)
1389 * configure configure.in: Add host *windows* to list of hosts
1390 that don't support GDBtk.
1392 Fri Aug 23 00:44:57 1996 Fred Fish <fnf@cygnus.com>
1394 * gdbtk.c (gdbtk_init): Check for a DISPLAY env variable and
1395 gracefully degrade to using command line interface if none is
1398 Fri Aug 9 12:32:53 1996 Tom Tromey <tromey@creche.cygnus.com>
1400 * Makefile.in (LIB_INSTALL_DIR): New macro.
1401 (TCL): Include @TCL_LD_SEARCH_FLAGS@.
1403 Thu Aug 1 20:35:01 1996 Tom Tromey <tromey@creche.cygnus.com>
1405 * gdbtk.c (mainWindow): Deleted.
1406 (cleanup_init): Don't destroy main window.
1407 (gdbtk_init): Main window now created by Tk_Init.
1409 * configure.in: Most X checks now handled automatically by Tk.
1410 Use new macros to find Tcl/Tk.
1411 * aclocal.m4: New version for new Tcl/Tk; from Don Libes.
1412 * config.in, configure: Regenerated.
1414 * Makefile.in (TCL, TCL_CFLAGS, TK, TK_CFLAGS, X11_CFLAGS,
1415 X11_LDFLAGS, X11_LIBS): Changed for new Tcl and Tk.
1417 Thu Aug 1 16:12:05 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
1419 * Makefile.in (gdbtk.tcl): put in $(datadir), not $(libdir).
1421 Fri Jul 26 14:07:37 1996 Ian Lance Taylor <ian@cygnus.com>
1423 * gdbtk.c (gdb_disassemble): Initialize di.flavour.
1425 Thu Jul 25 19:41:31 1996 Fred Fish <fnf@cygnus.com>
1427 * gdbtk.c (null_routine): Ditto.
1428 (gdbtk_flush): Ditto.
1429 (gdbtk_fputs): Ditto.
1430 (gdbtk_query): Ditto.
1431 (gdbtk_readline): Ditto.
1432 (gdbtk_readline_end): Ditto.
1433 (gdb_get_breakpoint_list): Ditto.
1434 (gdb_get_breakpoint_info): Ditto.
1435 (breakpoint_notify): Ditto.
1436 (gdbtk_create_breakpoint): Ditto.
1437 (gdbtk_delete_breakpoint): Ditto.
1438 (gdbtk_modify_breakpoint): Ditto.
1441 (gdb_sourcelines): Ditto.
1442 (map_arg_registers): Ditto.
1443 (get_register_name): Ditto.
1444 (gdb_regnames): Ditto.
1445 (get_register): Ditto.
1446 (gdb_fetch_registers): Ditto.
1447 (register_changed_p): Ditto.
1448 (gdb_changed_register_list): Ditto.
1450 (call_wrapper): Ditto.
1451 (gdb_listfiles): Ditto.
1453 (gdbtk_dis_asm_read_memory): Ditto.
1454 (compare_lines): Ditto.
1455 (gdb_disassemble): Ditto.
1456 (tk_command): Ditto.
1457 (cleanup_init): Ditto.
1458 (gdbtk_interactive): Ditto.
1460 (gdbtk_wait): Ditto.
1461 (gdbtk_call_command): Ditto.
1462 (tk_command_loop): Ditto.
1463 (gdbtk_init): Ditto.
1465 * gdbtk.c (register_changed_p): Remove unused local variable "buf".
1467 Sat Jul 20 17:46:40 1996 Fred Fish <fnf@cygnus.com>
1469 * gdbtk.tcl (files_command): Reorder the binding tags for
1470 the listbox widget to avoid referencing the listbox after
1471 the containing widget has been destroyed by the action of
1474 Sat Jul 20 10:09:28 1996 Fred Fish <fnf@cygnus.com>
1476 * gdbtk.tcl (delete_expr): Unset corresponding element of
1477 expr_update_list when destroying an expression.
1478 (create_expr_window): Initialize expr_num, delete_expr_num,
1479 and expr_update_list here when each new expression window
1480 is created, rather than once at startup.
1482 Mon Jul 15 16:44:05 1996 Stu Grossman (grossman@critters.cygnus.com)
1484 * gdbtk.c (gdb_disassemble): Setup di.mach from
1485 tm_print_insn_info.mach, and set endian from TARGET_BYTE_ORDER.
1487 Fri Jun 21 11:04:47 1996 Fred Fish <fnf@cygnus.com>
1489 * gdbtk.tcl (create_register_windows): Include missing '$'s.
1490 Add global declarations for various reg_format_* variables.
1491 * gdbtk.tcl (populate_register_window): Make initial window one
1492 line taller to account for new column header line.
1494 Fri Jun 21 09:46:47 1996 Fred Fish <fnf@cygnus.com>
1496 * gdbtk.c (get_register): Support for printing raw formats.
1497 * gdbtk.tcl: Add hint for using debug_interface.
1498 (center_window, add_breakpoint_frame, delete_breakpoint_frame):
1499 Enclose arg in braces for consistency.
1500 (create_registers_window, populate_reg_window, update_registers):
1501 Major rewrite to support displaying multiple formats in the register
1503 (init_reg_info): New function.
1504 (recompute_reg_display_list): Reset reg_display_list, start
1505 register display lines at line 2.
1507 Thu Jun 20 08:18:59 1996 Fred Fish <fnf@cygnus.com>
1509 * gdbtk.tcl (gdbtk_tcl_readline_begin): Handle backspace to
1510 avoid backing up over prompt. At every input, make sure insert
1511 point is at least after command start, handle control-u to delete
1513 (tclsh): Handle backspace to avoid backing up over prompt. Handle
1514 control-u to delete current input line.
1516 Wed Jun 19 17:23:38 1996 Geoffrey Noer <noer@cygnus.com>
1518 * configure.in: disable gdbtk for *cygwin32* hosted compiles
1519 * configure: regenerated with autoconf 2.8
1521 Sun May 19 16:49:37 1996 Fred Fish <fnf@cygnus.com>
1523 * gdbtk.c (gdbtk_readline_begin, gdbtk_readline, gdbtk_readline_end):
1525 (tk_command_loop): Set instream to NULL to enable Tk user interaction.
1526 (gdbtk_init): Set readline_begin_hook, readline_hook,
1527 and readline_end_hook.
1528 * gdbtk.tcl (gdbtk_tcl_readline_begin, gdbtk_tcl_readline,
1529 gdbtk_tcl_readline_end): New functions.
1530 (tclsh): Pack scroll bar on right side of window, not left.
1532 Fri May 17 13:54:34 1996 Fred Fish <fnf@cygnus.com>
1534 * gdbtk.tcl (create_command_window): Change a misspelled "get"
1535 to the intended "cget".
1536 (delete_line): Fix so it deletes the current line at the
1539 Thu May 16 19:20:29 1996 Fred Fish <fnf@cygnus.com>
1541 * gdbtk.tcl (gdb_prompt): Set this early on.
1542 (create_command_window): Use gdb_prompt rather than "(gdb) ".
1543 (gdbtk_tcl_preloop): Proc executed just prior to Tk main loop.
1544 (tclsh): If an evaluation window already exists, just bring it
1545 to the front instead of trying to create another.
1546 * gdbtk.c (tk_command_loop): New function.
1547 (gdbtk_init): Call tk_command_loop rather than Tk_MainLoop.
1549 Thu May 16 16:16:35 1996 Fred Fish <fnf@cygnus.com>
1551 * gdbtk.tcl (evaluate_tcl_command, tclsh): New functions that
1552 implement a tcl evaluation window for gdbtk maintainers to use.
1554 Thu May 16 11:42:58 1996 Tom Tromey <tromey@creche.cygnus.com>
1556 * gdbtk.tcl (files_command): Correctly insert list of files into
1559 * gdbtk.tcl (files_command): listbox command no longer accepts
1562 Wed May 15 16:04:09 1996 Stan Shebs <shebs@andros.cygnus.com>
1564 * gdbtk.tcl (create_command_window): If command window's buffer
1565 is disabled, don't execute any of the key bindings.
1567 Mon May 13 13:43:25 1996 Fred Fish <fnf@cygnus.com>
1569 * gdbtk.c (tk_command): Catch case where no argument is given
1570 since this will cause the tcl interpreter to dump core.
1572 Wed May 8 20:33:24 1996 Fred Fish <fnf@cygnus.com>
1574 * gdbtk.c: Fix a couple of misspellings.
1576 Thu May 2 19:17:49 1996 Stan Shebs <shebs@andros.cygnus.com>
1578 * gdbtk.tcl (debug_interface): New global, use to aid debugging.
1579 (insert_breakpoint_tag, delete_breakpoint_tag): Fix range.
1580 (file_popup_menu): Delete, never used.
1581 (listing_window_popup): Rename from listing_window_button_1,
1582 remove breakpoint toggling code.
1583 (toggle_breakpoint): New procedure.
1584 (create_file_win): Bind popup menu to button 2, toggle breakpoints
1585 with button 1 in breakpoint area, add display of tagged areas if
1588 Fri Apr 5 13:44:40 1996 Stan Shebs <shebs@andros.cygnus.com>
1590 * gdbtk.c (running_now): New global variable.
1591 (gdb_cmd): Test it before executing any command.
1592 (gdbtk_call_command): Set it when inferior is running.
1593 * gdbtk.tcl (gdbtk_tcl_busy, gdbtk_tcl_idle): Enable and
1594 disable interaction with command window's text appropriately.
1596 Fri Apr 5 13:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1598 * gdbtk.c (SIOCSPGRP, linux): If on Linux, undef SIOCSPGRP, since
1599 some versions of the kernel don't support it.
1601 Tue Feb 6 16:31:25 1996 Tom Tromey <tromey@creche.cygnus.com>
1603 * gdbtk.tcl (create_file_win): Eliminate text widget B1 binding so
1604 double-clicking will work again.
1605 (create_asm_win): Put "break" at end of all B1 bindings.
1606 (create_file_win): Lower "sel" tag, don't raise it.
1607 (ensure_line_visible): New proc.
1608 (update_listing, update_assembly): Use it.
1609 (create_copyright_window): Destroy window on Leave event.
1610 (create_command_window): Put "break" at end of all B2 bindings.
1612 Wed Jan 24 15:28:41 1996 Tom Tromey <tromey@creche.cygnus.com>
1614 * gdbtk.tcl, gdbtk.c: Updated copyrights.
1616 * configure.in: Look for -ldl or -ldld when using Tcl 7.5 or
1618 * configure: Rebuilt.
1620 Tue Jan 23 09:00:48 1996 Doug Evans <dje@charmed.cygnus.com>
1622 * gdbtk.c (gdb_disassemble): Pass fprintf_unfiltered to
1623 INIT_DISASSEMBLE_INFO.
1625 Mon Jan 15 09:58:41 1996 Tom Tromey <tromey@creche.cygnus.com>
1627 * gdbtk.tcl (create_expr_window): Many changes to update GUI.
1628 (add_expr): Changes from create_expr_window.
1629 (create_command_window): Set focus.
1630 (delete_expr): Rewrote.
1631 (expr_update_button): New proc.
1632 (add_expr): Put bindings on FocusIn, FocusOut.
1633 Don't allow .file_popup to be torn off.
1635 Fri Jan 12 09:36:17 1996 Tom Tromey <tromey@creche.cygnus.com>
1637 * gdbtk.tcl (gdbtk_tcl_query): Swap Yes and No buttons.
1638 (update_listing): Use lassign. Use "see" to scroll. Don't need
1639 screen_top, screen_bot, screen_height.
1640 (update_assembly): Use "see" to scroll.
1641 (textscrollproc): Removed.
1642 (create_file_win): Don't use textscrollproc.
1643 (asmscrollproc): Removed.
1644 (create_asm_window): Don't use asmscrollproc.
1645 (create_asm_win): Ditto.
1646 (screen_height, screen_top, screen_bot): Removed.
1647 (run_editor): New proc.
1648 (build_framework): Use it.
1649 (create_file_win, create_source_window): Don't use textscrollproc.
1650 (create_breakpoints_window): Set -xscrollcommand on canvas.
1651 (not_implemented_yet): Default button is 0.
1652 (delete_char): Don't use tk_textBackspace.
1653 (create_command_window): Allow Tk bindings to fire after deleting
1655 (create_command_window): Make Delete delete left, not right.
1657 Thu Jan 11 10:08:14 1996 Tom Tromey <tromey@creche.cygnus.com>
1659 * gdbtk.tcl (FSBox): Don't use tk_listboxSingleSelect.
1661 Changes in sync with expect:
1662 * configure.in (ENABLE_GDBTK): Use CY_AC_PATH_TCL and
1664 * aclocal.m4: Replaced with version from expect.
1665 * configure: Regenerated.
1667 Wed Jan 10 09:07:22 1996 Tom Tromey <tromey@creche.cygnus.com>
1669 * gdbtk.tcl (gdbtk_tcl_fputs, gdbtk_tcl_fputs_error,
1670 gdbtk_tcl_flush): Use "see", not "yview".
1671 (gdbtk_tcl_query): Use questhead bitmap.
1672 various: Always wrap condition of 'if' in {...}.
1673 (add_breakpoint_frame): Set -value on radiobuttons.
1674 (lassign): New proc.
1675 (add_breakpoint_frame): Use lassign, not series of assignments.
1676 (decr): Made faster.
1677 (interactive_cmd): Use "see", not "yview".
1678 (not_implemented_yet): Use warning bitmap.
1679 (update_expr): Don't allow $expr to be evalled by Tcl.
1680 (create_expr_window): Don't use "focus".
1681 (delete_char, delete_line): Define globally.
1682 (delete_line, delete_char, create_command_window, update_autocmd,
1683 build_framework, create_asm_win, create_file_win): Use "see", not
1685 (create_copyright_window, center_window, bind_widget_after_class):
1687 (FSBox,create_command_window, create_autocmd_window): Binding
1689 (textscrollproc): Define globally.
1690 (build_framework): tk_menuBar no longer needed. Keys Prior, Next,
1691 Home, End, Up, and Down are all defined by Tk.
1692 (apply_filespec): Use error bitmap in dialog.
1693 (files_command): Don't use tk_listboxSingleSelect.
1694 (files_command): Don't use "uniq" to remove duplicates from a
1696 (update_assembly): Use lassign.
1697 (create_asm_win): Removed redundant bindings.
1698 (listing_window_button_1, file_popup_menu): Use tk_popup.
1699 (ButtonRelease-1 binding): Just remove tag from window; rest
1702 * gdbtk.c (gdbtk_query): Use Tcl_Merge to provide quoting.
1703 (call_wrapper): Use Tcl_Eval, not Tcl_VarEval.
1704 (gdbtk_call_command): Ditto.
1706 Thu Jan 4 16:04:54 1996 Stu Grossman (grossman@cygnus.com)
1708 * configure configure.in: Make --enable-gdbtk be the default.
1710 Thu Dec 28 15:10:49 1995 Stan Shebs <shebs@andros.cygnus.com>
1712 * README.GDBTK: Polish introductory paragraph.
1714 Mon Oct 16 11:27:06 1995 Stu Grossman (grossman@cygnus.com)
1716 * gdbtk.c (gdb_disassemble): Use fprintf_unfiltered instead of
1719 Tue Oct 10 15:26:39 1995 Fred Fish <fnf@cygnus.com>
1721 * README.GDBTK: Updated for version 4.15.
1723 Sat Aug 19 17:20:22 1995 Michael Tiemann <tiemann@axon.cygnus.com>
1725 * gdbtk.tcl: ENABLE comes back as "1" or "0", not "enable" or
1727 Also, wire up the breakpoint window so that it can be demo'd.
1729 Tue Aug 1 11:44:53 1995 J.T. Conklin <jtc@rtl.cygnus.com>
1731 * gdbtk.c: Include "gdb_string.h" instead of <string.h>.
1733 Tue Jun 20 10:19:40 1995 Stu Grossman (grossman@cygnus.com)
1735 * gdbtk.c: Add functions Tcl_Malloc, Tcl_Realloc, and Tcl_Free.
1737 * gdbtk.tcl (add_breakpoint_frame): Add more fields.
1738 * (create_file_win create_asm_win build_framework): Create null
1739 bindings for meta keys to keep window from dropping down to
1740 insertion point when meta is pressed by itself. New bindings:
1741 Up/Down - Scroll up/down one line at a time
1742 Next/Prior - Scroll up/down one page at a time
1743 Home/End - Warp to current pc/end of file
1744 * (build_framework): Turn on breakpoint menu.
1745 * (create_command_window): Implement tab completion. Add binding
1746 for ^C to stop target.
1748 Fri May 19 06:15:40 1995 Jim Kingdon <kingdon@deneb.cygnus.com>
1750 * gdbtk.c: Conditionalize use of stdarg rather than varargs on
1751 ANSI_PROTOTYPES not __STDC__; it must match the definition of
1754 Thu May 18 15:58:46 1995 J.T. Conklin <jtc@rtl.cygnus.com>
1756 * gdbtk.c (gdbtk_query): Use stdarg.h macros when compiling with
1759 Sat Apr 15 13:52:24 1995 Stan Shebs <shebs@andros.cygnus.com>
1761 * gdbtk.c (gdb_disassemble): Read from inferior if connected
1762 to a VxWorks target.
1764 Fri Apr 14 10:18:20 1995 Stu Grossman (grossman@cygnus.com)
1766 * README.GDBTK: New file. Contains the obvious.
1768 Tue Apr 11 11:07:12 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1770 * gdbtk.c (gdbtk_init): If SIOCSPGRP is not available, but
1771 F_SETOWN is, use that.
1773 Thu Apr 6 17:00:46 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1775 * Makefile.in (X11_INCLUDES): Define as empty.
1776 (X11_CFLAGS): Define as including $(X11_INCLUDES).
1777 (X11_LIB_SWITCHES): Define as empty.
1778 (X11_LIBS): Define as -lX11.
1780 * configure.in (enable_gdbtk): If gdbtk, support the --x-includes
1781 and --x-libraries switches, setting the X11_INCLUDES and
1782 X11_LIB_SWITCHES respectively. Instead of using a hardcoded -lX11
1783 in ENABLE_CLIBS, use the X11_LIB_SWITCHES and X11_LIBS variables.
1785 * gdbtk.c (gdbtk_init): If SIOCSPGRP is not available, don't use
1786 it. This means that the stop button doesn't work, but is better
1789 Wed Mar 29 17:09:29 1995 Stu Grossman (grossman@cygnus.com)
1791 * Makefile.in (gdbtk.o): Use X11_CFLAGS to provide alternate
1792 locations (per-host) for X11 include files.
1793 * config/pa/hppahpux.mh (XM_CLIBS): Add -L/usr/lib/X11R5 to force
1795 (X11_CFLAGS): Add this to indicate the locs
1796 of the R5 include files.
1798 Wed Mar 8 16:12:21 1995 Stu Grossman (grossman@cygnus.com)
1800 * gdbtk.c (gdb_get_breakpoint_info): Return error if breakpoint
1801 type is not bp_breakpoint.
1803 Tue Feb 14 17:16:41 1995 Stu Grossman (grossman@cygnus.com)
1806 * gdbtk.c: General cleanups, get rid of unused variables. Redo
1807 handling of stdout/stderr to just return output as the result of
1808 the tcl command that caused the output. Cleanup -Wall stuff.
1809 * (breakpoint_notify): Now returns just action and breakpoint
1811 * (gdb_get_breakpoint_list): New routine. Does the obvious.
1812 * (gdb_get_breakpoint_info): Mostly derived from the old
1813 breakpoint_notify, but returns lots more info.
1814 * (dsprintf_append_element): Helper routine, works like printf,
1815 but appends a tcl element onto the specified DString. Good for
1816 building up lists as return values.
1817 * (gdbtk_enable/disable_breakpoint): Go away. Replaced with
1818 gdbtk_modify_breakpoint.
1819 * (*many routines*): Use new result protocol.
1820 * (call_wrapper): Make sure that recursive calls don't trash results.
1821 * gdbtk.tcl: New windows, autocmd, and breakpoints.
1822 * (gdbtk_tcl_fputs): Don't use $current_output_win redirection
1823 anymore. It's not needed (in fact, this routine may not be needed
1825 * (gdbtk_tcl_breakpoint): Change to reflect new breakpoint
1826 notification protocol.
1827 * (gdbtk_tcl_busy gdbtk_tcl_idle): Straighten out buttons, remove
1829 * (interactive_cmd): Use this wrapper around button invocations
1830 of many commands. This will catch errors and put the results into
1831 the command window. It also updates all the other windows.
1832 * Also, change reliefs of most things to sunken. This actually
1834 * (create_file_win): Fix margin binding to allow breakpoints to
1836 * (create_asm_win): Use return value of gdb_disassemble instead
1837 of implicit I/O to the command window.
1838 * (create_command_window): Use new result protocol to get output
1841 Sun Feb 5 20:32:44 1995 Jim Kingdon (kingdon@lioth.cygnus.com)
1843 * gdbtk.c (gdb_disassemble): Deference pointer to function before
1844 calling it (pre-ANSI compilers generally require this).
1846 Fri Feb 3 11:19:20 1995 Stu Grossman (grossman@cygnus.com)
1848 * gdbtk.c (gdb_disassemble): Get rid of
1849 dis_asm_read_memory_hook. We can now call the disassemblers
1850 directly and have no need for this hook anymore.
1852 Mon Jan 30 17:34:24 1995 Stu Grossman (grossman@cygnus.com)
1854 * gdbtk.tcl (create_file_win): Disable old popup menu for source
1857 Wed Jan 25 18:23:46 1995 Stu Grossman (grossman@cygnus.com)
1859 * gdbtk.c (gdbtk_init): Prevent segfault when gdbtk.tcl can't be
1861 * gdbtk.tcl: Initialize expr_update_list() to prevent errors when
1862 popping up expression window for the first time.
1864 Tue Jan 24 12:10:28 1995 Stu Grossman (grossman@cygnus.com)
1866 * gdbtk.tcl (create_registers_window): Work around a radiobutton
1867 widget bug to make Options|Natural button work.
1869 * gdbtk.c (gdb_disassemble): Fix problem with source+assembly and
1870 g++ caused by out-of-order pc's.
1871 * gdbtk.tcl (files_command): Remove duplicate file names. Also,
1874 Mon Jan 23 17:21:09 1995 Stu Grossman (grossman@cygnus.com)
1876 * gdbtk.tcl: Take .gdbtkinit if it exists. Makes gdbtk match the
1879 Thu Jan 12 15:02:40 1995 Stu Grossman (grossman@cygnus.com)
1881 * gdbtk.c, gdbtk.tcl: Update/add copyright.
1882 * gdbtk.tcl (build_framework): Several fixes for filespec widget,
1883 including dismiss button, and better error handling.
1884 * (create_command_win): Bind button 2 to retrieve selection.
1886 Wed Jan 11 17:06:55 1995 Stu Grossman (grossman@cygnus.com)
1888 * gdbtk.tcl: Add button to control mixed source disassembly.
1889 Use text widgets in expr window. The give me more control over
1891 Add auto-updating of exprs in expression window.
1892 Handle expressions out of scope a bit better.
1893 Make selected window pop up to the top when invoked via the
1895 Make copyright message have raised relief.
1897 * gdbtk.c (gdbtk_init): Improve handling for errors in gdbtk.tcl
1900 Thu Jan 5 17:38:29 1995 Stu Grossman (grossman@cygnus.com)
1902 * gdbtk.c (finish_saving_output): Don't do anything if not saving
1904 * (breakpoint_notify): Don't send null filename to tcl.
1905 * (gdb_eval): New tcl command to eval an expression.
1906 * (gdb_disassemble): New tcl command to do disassembly. This
1907 allows tcl code to choose between exec file and target memeory,
1908 and can also do mixed source and assembly.
1909 * (gdbtk_init): Move reading of gdbtk.tcl to the end to make sure
1910 that more of the environment is set up. Also, create link between
1911 gdb and tcl vars disassemble{-_}from{-_}exec.
1913 * gdbtk.tcl: New expression window support.
1914 * Make assembly window be 80 columns wide.
1915 * Use new disassembly method. Add menu items to select
1916 disassembly from exec file or target.
1917 * Change View menubar item to Options.
1919 * Get rid of Stack, Breakpoints, Signals, and Variables Windows,
1920 since they don't exist yet.
1922 * Pop up a copyright window on startup.
1924 Wed Jan 4 19:49:10 1995 Stan Shebs <shebs@andros.cygnus.com>
1926 * gdbtk.tcl (build_framework): Add standard commands menu, more
1927 windows to standard windows menu.
1928 (not_implemented_yet): Clarify message.
1930 Fri Dec 30 15:49:00 1994 Stan Shebs <shebs@andros.cygnus.com>
1932 * gdbtk.tcl (FSBox): New proc, File Selection Box code from exmh.
1933 (not_implemented_yet): New proc.
1934 (build_framework): Add various file commands to file menu.
1936 Fri Dec 23 16:18:50 1994 Stu Grossman (grossman@cygnus.com)
1938 * gdbtk.c (gdbtk_wait gdbtk_init): Portability improvements for
1941 Mon Dec 19 09:55:47 1994 Stu Grossman (grossman@cygnus.com)
1943 * gdbtk.tcl (update_assembly): Force update to make sure that pc
1944 is visible when creating new assembly windows.
1946 Sun Dec 18 23:31:20 1994 Stu Grossman (grossman@cygnus.com)
1948 * gdbtk.c (gdbtk_wait gdbtk_init): Use different method of
1949 enabling I/O interrupts for SVR4 (streams).
1950 * (start_saving_output save_output get_saved_output
1951 finish_saving_output flush_holdbuf gdbtk_flush gdbtk_fputs
1953 Totally revamp to use TCLs dynamic string functions. Also, quote
1954 all data passed back to TCL to prevent errors with unmatched
1955 braces, odd characters, etc... This fixes several wierd problems
1956 with outputting strings containing unmatched braces.
1957 * (breakpoint_notify gdb_loc): Use long hex format to output
1958 addresses of breakpoints and PCs. This fixes some Alpha problems.
1959 * (breakpoint_notify): Add stream arg to call to gdbtk_fputs.
1960 * (gdb_listfiles): Also, go through the symtabs when looking for
1961 files. This makes xcoff work (sort of), but probably breaks
1963 * (gdb_stop): Return TCL_OK instead of nothing. This fixes odd
1964 TCL errors when hitting stop button.
1965 * (tk_command): Don't pass interp->result on to Tcl_{Var}Eval, as
1966 that will trash the result. strdup the result instead and pass
1967 that on. Improve error handling as well.
1969 * gdbtk.tcl (gdbtk_tcl_flush): Use global def of
1970 current_output_win. Makes flushing actually work!
1971 * (asm_win_name create_asm_win update_assembly): Bunch of fixes
1972 to make assembly windows stop flashing when loading a new file.
1973 * (gdbtk_tcl_busy gdbtk_tcl_idle): Use catch to prevent gdb_cmd
1974 errors from losing control.
1975 * (create_source_window): Add source file selection to View menu.
1976 * (create_command_window (<Key-Return> binding): Quote text fed
1977 into gdb_cmd to prevent eval errors.
1979 Thu Dec 15 16:40:10 1994 Stu Grossman (grossman@cygnus.com)
1981 * gdbtk.c: Improve mechanism for capturing output values.
1982 (full_filename): Remove.
1983 (gdb_cmd call_wrapper gdbtk_init): Protect all calls from tcl land
1984 with call_wrapper. This prevents longjmps (usually via error())
1985 from jumping out of tcl/tk and leaving things in an indeterminate
1987 (gdbtk_fputs): Differentiate stdout from stderr when passing text
1989 * gdbtk.tcl: New view option to disable line numbers. Put catch
1990 around most uses of gdb_cmd. Add update button to reg config
1991 window. Stop doing immediate updates when selecting registers.
1992 Change register view values into checkbuttons.
1994 Mon Dec 12 16:59:29 1994 Stu Grossman (grossman@cygnus.com)
1996 * gdbtk.tcl (reg_config_menu create_registers_window
1997 recompute_reg_display_list): Use array instead of individual vars
1998 for register display list.
1999 * (recompute_reg_display_list update_registers): Fix bug with not
2000 displaying all registers.
2002 Mon Dec 12 12:22:21 1994 Stu Grossman (grossman@cygnus.com)
2004 * gdbtk.c: New tcl commands: gdb_fetch_registers,
2005 gdb_changed_register_list, and gdb_regnames.
2006 * gdbtk.tcl: Use monochrome color model for now.
2007 * (delete_breakpoint_tag create_file_win): Add breakdot support.
2008 * (create_file_win create_asm_win update_listing build_framework
2009 create_source_window create_command_window): Re-org window
2010 creation to give all windows consistent look and feel.
2011 * (update_listing update_asm): Change pc pointer to '->'.
2012 * (registers_command reg_config_menu create_registers_window
2013 populate_reg_window update_registers): Revamp register window.
2014 Allow selection of registers to be displayed. Highlight changed
2017 Mon Nov 28 09:17:20 1994 Stu Grossman (grossman@cygnus.com)
2019 * gdbtk.tcl (build_framework): Fix bug with setting window titles.
2021 * gdbtk.tcl (build_framework): Add "Report bug" to help menu.
2023 * gdbtk.tcl: Re-arrange windows using new, consistent layout. Clean
2024 up lots of code and centralize framework initialization.
2026 Wed Nov 16 15:28:29 1994 Rob Savoye (rob@cygnus.com)
2028 * Makefile.in: Fix the test for installing gdbtk.
2030 Mon Nov 14 08:51:29 1994 Stu Grossman (grossman@cygnus.com)
2032 * Makefile.in: Install gdbtk.tcl.
2033 * configure.in: Add ENABLE_GDBTK flag.
2034 * gdbtk.c (gdb_sourcelines): Returns list of source lines
2035 containing code. (gdb_regnames): Returns list of register names.
2037 Thu Nov 3 14:25:24 1994 Stu Grossman (grossman@cygnus.com)
2039 * gdbtk.c (gdb_stop): Switch to target_stop().
2041 Tue Nov 1 16:41:12 1994 Stu Grossman (grossman@cygnus.com)
2043 * Makefile.in: Use $(objdir)/tcl and $(objdir)/tk if they are
2045 * configure.in (ENABLE_CLIBS): Use $(TCL) and $(TK) instead of
2047 * gdbtk.c: Get rid of lots of unnecessary #includes.
2048 * (gdbtk_init): Use ConnectionNumber macro instead of referencing
2049 Display structure directly.
2050 * gdbtk.tcl: Change exit button to quit button.
2052 Wed Oct 26 15:41:07 1994 Stu Grossman (grossman@cygnus.com)
2054 * gdbtk.c: Change sense and name of no_windows variable. Now
2055 called use_windows, and defaults to off (for compatibility).
2057 Thu Oct 20 17:35:45 1994 Stu Grossman (grossman@cygnus.com)
2059 * gdbtk.c (gdb_cmd): Force GUI into idle mode when errors occur.
2060 * (gdb_stop): New tcl command to stop the target process.
2061 * (x_event, gdbtk_wait): Allow GUI to interrupt gdb out of target
2063 * (gdbtk_call_command): Wrapper around command processing to
2064 alert GUI of target state changes.
2065 * (gdbtk_init): Get the fd of X server for doing async
2066 notification of X events (via x_event). Setup new hooks.
2067 * gdbtk.tcl: Add scrollbars to assembly and command windows.
2068 * Change window foreground & background colors.
2069 * Create margin tag for breakpoints in source and assembly windows.
2070 * Add new routines to be invoked when target state changes to/from
2072 * Add start of expression window.
2073 * Change bindings of mouse button 1 in assembly and source window
2074 to just set or clear breakpoints when in the margin tag.
2075 * Change shape of register window to be more vertical to better
2076 reflect its contents.
2078 * Cleanup some code around command window bindings.
2080 Sat Sep 17 17:05:14 1994 Stu Grossman (grossman@cygnus.com)
2082 * gdbtk.tcl: Let ^U delete lines in the command window.
2084 Fri Sep 16 15:40:34 1994 Stu Grossman (grossman@cygnus.com)
2086 * gdbtk.c: Replace calls to full_filename with symtab_to_filename.
2087 * gdbtk.tcl: New routine pc_to_line replaces in line code. New
2088 routine decr replaces in line code.
2089 * (create_file_win): Use catch to handle open failures more
2090 elegantly. Also, create special window to display file open
2091 failure message. Move opening of file prior to creation of text
2093 * (create_asm_win): Add PC as argument. We now base disassembly
2094 on PC instead of function name, since function names can be
2095 ambiguous (usually seen with shared libs). Also, use catch to
2096 simplify code where we don't care about failures.
2098 Wed Sep 14 00:55:26 1994 Stu Grossman (grossman@cygnus.com)
2100 * gdbtk.tcl: Add ref counts to breakpoint tags.
2101 * Put quotes around function name in disassemble command to better
2102 handle assembler names containing `.'.
2103 * Make pclist element 0 be filler to avoid off-by-one problem with
2105 * Set names of top-level windows.
2106 * Add register display window.
2107 * Add PC to label of assembly window.
2109 Tue Sep 13 08:59:04 1994 Stu Grossman (grossman@cygnus.com)
2111 * gdbtk.c (gdbtk_flush gdbtk_fputs): Buffer up output to make
2112 disassembly more efficient.
2113 * (breakpoint_notify): Include pc in gdbtk_tcl_breakpoint
2115 * (gdb_loc): Include pc in return value. Also, return function
2116 name if arg was specified.
2117 * (gdb_cmd_stub): Call gdb_flush to drain internal GDB buffers
2118 after command completes.
2119 * (gdbtk_init): Improve error handling.
2121 * gdbtk.tcl: Add lots of comments. Clean up code.
2122 * (gdbtk_tcl_fputs): Make output window redirectable.
2123 * Add assembly window, and breapoint support.
2124 * Make button 1 in margin toggle breakpoints.
2125 * Use stippling to indicate breakpoint disabling.
2127 Fri Sep 2 19:11:40 1994 Stu Grossman (grossman@cygnus.com)
2129 * configure.in: Don't symlink to gdbtk.tcl if it's already there.
2131 Thu Jul 28 14:37:36 1994 Stu Grossman (grossman@cygnus.com)
2134 * Makefile.in: Add rule for gdbtk.o.
2135 * configure.in: Add support for --enable-gdbtk.
2136 * gdbtk.c: New file. Contains support routines for TK interface.
2137 * gdbtk.tcl: New file. Implements GUI policy.
2144 version-control: never