1 Wed Oct 28 16:19:02 1998 Martin M. Hunt <hunt@cygnus.com>
3 * gdbtk-cmds.c (gdb_set_bp_addr): For callback, send full
4 pathname instead of just basename.
6 1998-10-08 Keith Seitz <keiths@cygnus.com>
8 * gdbtk-hooks.c (gdbtk_add_hooks): Install a hook for
9 (new) file_changed_hook.
10 (gdbtk_exec_file_changed): Rename to gdbtk_exec_file_display
12 (gdbtk_file_changed): New hook function.
14 Tue Oct 6 22:57:13 1998 Andrew Cagney <cagney@b1.cygnus.com>
16 * configure.in (links): Link gdbtcl2 directory instead of gdbtcl.
18 Mon Oct 5 00:34:00 1998 Martin M. Hunt <hunt@cygnus.com>
20 * gdbtk-cmds.c (gdb_set_bp_addr): New command. Sets a
21 breakpoint at an address. Use this instead of gdb_cmd "break"
22 because the syntax of the break command is broken and doesn't
23 allow you to create a thread-specific BP at an address. Also
26 Sun Oct 4 22:35:47 1998 Martin M. Hunt <hunt@cygnus.com>
28 * gdbtk-cmds.c (gdb_set_bp): Add an optional thread number.
29 (gdb_find_bp_at_line): New function. Returns a list of bpnums
30 at the specified line number.
31 (gdb_find_bp_at_addr): New function. Returns a list of bpnums
34 1998-10-02 Keith Seitz <keiths@cygnus.com>
36 * gdbtk-hooks.c (gdbtk_exec_file_changed): New function which handles
38 (gdbtk_add_hooks): Define exec_file_display_hook (to gdbtk_exec_file_changed)
40 * gdbtk-cmds.c (gdb_stop): target_stop is ALWAYS defined, so
41 compare against something a little more meaningful (target_ignore).
43 1998-09-24 Keith Seitz <keiths@cygnus.com>
45 * gdbtk.c (gdbtk_wait): Don't run the timer for ice targets.
47 * v850ice.c (WM_ADDR_TO_SYM): New message.
48 (v850ice_wndproc): Add handler for WM_SOURCE.
49 (v850ice_wait): Call the ui_loop_hook occasionally.
50 (ice_cont): Acknowledge message before doing anything.
51 (ice_stepi): Ack message and let gdbtk do stepping.
52 (ice_nexti): Ack message and let gdbtk do stepping.
53 (view_source): New function ICE calls to display source code.
56 Mon Sep 21 13:33:27 1998 Drew Moseley <dmoseley@cygnus.com>
58 * Makefile.in: Added sanitize markers around IDE code
59 * configure.in (host_libs): Added sanitize markers around IDE code
60 * configure: Regenerated configure from configure.in
63 1998-09-18 Keith Seitz <keiths@cygnus.com>
65 * gdbtk-cmds.c (get_frame_name): Demangle function names, too.
67 Thu Sep 10 22:10:29 1998 Jim Ingham <jingham@cygnus.com>
69 *gdbtk-cmds.c (gdb_disassemble): Make sure the symtab's linetable is not
70 null before trying to use it...
72 1998-09-02 Keith Seitz <keiths@cygnus.com>
74 * gdbtk-cmds.c (gdb_cmd): Do not run the timer when downloading --
75 the ui_progress_hook that has been installed will actually
76 update the gui for us.
78 Mon Aug 31 15:42:10 1998 Tom Tromey <tromey@cygnus.com>
80 * gdbtk-hooks.c (context_hook): Don't define.
82 1998-08-31 Keith Seitz <keiths@cygnus.com>
84 * gdbtk-cmds.c (gdb_listfuncs): When stripping out "global destructors"
85 and "global constructors", do not append any elements to the result.
87 Sun Aug 30 00:49:18 1998 Martin M. Hunt <hunt@cygnus.com>
89 * gdbtk-cmds.c (Gdbtk_Init): Link C variable gdb_context
90 with tcl variable gdb_context_id.
92 * gdbtk-hooks.c (gdbtk_context_change): Implement new hook called
93 context_hook. Called when threads change.
95 * gdbtk.c: Initialize gdb_context.
97 * gdbtk.h: Declare gdb_context.
99 * infrun (wait_for_inferior): Call context_hook.
101 * thread.c (thread_command): Call context_hook.
103 * defs.h: Declare context_hook.
105 Fri Aug 28 12:14:49 1998 Martin M. Hunt <hunt@cygnus.com>
107 * gdbtk-cmds.c (gdb_loadfile): Open the file after doing
108 the symtab lookup and calling symtab_to_filename(). This
109 makes GDBtk work with the GDB "dir" command.
111 1998-08-18 Keith Seitz <keiths@cygnus.com>
113 * gdbtk-hooks.c (gdbtk_add_hooks): Set selected_frame_level_changed_hook.
114 (gdbtk_selected_frame_changed): New function.
116 * gdbtk-cmds.c (Gdbtk_Init): Add command gdb_stack into interpreter.
117 Link gdb's global selected_frame_level with interpreter global
118 gdb_selected_frame_level.
119 (gdb_stack): New function to faciltate speedier backtraces from
121 (get_frame_name): New helper function for gdb_stack.
123 Tue Aug 18 15:42:40 1998 Martin M. Hunt <hunt@cygnus.com>
125 * gdbtk-cmds.c (gdb_listfuncs): Strip out global constructors
126 and destructors from the function list.
129 Thu Aug 13 15:15:59 1998 Drew Moseley <dmoseley@cygnus.com>
131 * Makefile.in (FOUNDRY_LIB_BASE): Added the Foundry SDK code that allows
132 gdbtk to be linked with the Foundry libraries provided by a prebuilt/released
133 binary version of Foundry. The libraries and header files need to come from
134 the installed location of Foundry rather than the devo subdirectories.
135 * configure.in (ENABLE_IDE): Foundry SDK additions. Added the "with-foundry-libs"
137 * configure: Foundry SDK additions. Regenerated from configure.in.
140 Thu Aug 13 15:09:59 1998 Drew Moseley <dmoseley@cygnus.com>
142 * gdbtk.c (gdbtk_cleanup): added a scope-level around the contents
143 of the #ifdef so that the variable declarations in there would not
144 be illegal in a C compilation.
146 Mon Jul 27 13:07:16 1998 Martin M. Hunt <hunt@cygnus.com>
148 * gdbtk.c (gdbtk_call_command): Removed because it is now
150 (null_routine): Removed.
152 * gdbtk-hooks.c (tracepoint_notify): Fix sprintf to
153 match number of arguments.
155 * gdbtk-cmds.c (gdb_loc): When calling gdb_loc with an
156 argument, call find_pc_line() to get a complete
157 symtab_and_line struct.
159 Fri Jul 24 14:25:43 1998 Keith Seitz <keiths@cygnus.com>
161 * gdbtk-cmds.c (gdb_search): Add missing NULL to switches.
162 Add missing flags to result_ptr.
163 Pass along any errors caused by getting the list of files from
165 Allocate correct amount of memory for the file list.
166 Don't do any unecessary cleanups.
168 Fri Jul 24 01:08:37 1998 Martin M. Hunt <hunt@cygnus.com>
170 * gdbtk-cmds.c (gdb_loadfile): When there are no
171 linenumbers, use only one tab.
173 Sat Jul 18 12:28:39 1998 Martin M. Hunt <hunt@cygnus.com>
175 * gdbtk.c (gdbtk_cleanup): Add call to tcl function
176 gdbtk_cleanup. We need this so the GUI gets to clean
177 up no matter how GDB exits.
179 Wed Jul 1 13:10:58 1998 Jim Ingham <jingham@cygnus.com>
181 * Moved gdbtk_hooks.c & gdbtk_cmds.c to gdbtk-hooks.c &
182 gdbtk-cmds.c to comply with the gdb conventions. Changed the
183 configure & makefile to reflect the change...
185 Wed Jul 1 11:07:21 1998 Jim Ingham <jingham@cygnus.com>
187 * gdbtk.c: removed all the commands and hooks from this file so
188 now it contains only the startup code.
189 * gdbtk.c (gdbtk_init): Fixed a bug in the startup code on Windows
190 that caused gdbtk not to find the share directory unless
191 GDBTK_LIBRARY was set.
192 * gdbtk_cmds.c: New file - this contains all the Tcl commands that
193 gdb defines. All the old commands were moved here, the
194 string-based commands were converted to object commands, and the
195 object-based commands were all converted to uniformly use the
196 call_wrapper. A new function, Gdbtk_Init was added to centralize
197 initializing the gdb package.
198 * gdbtk_hooks.c: New file - All the hooks were moved here, and a new
199 function, gdbtk_add_hooks was added to centralize adding all these
200 hook functions. gdbtk_fputs was also modified to handle the new
201 result_ptr structure. See the comments in gdbtk.h for more
203 * gdbtk.h: New file - this contains all the defines and globals
204 shared by gdbtk.c, gdbtk_cmds.c & gdbtk_hooks.c
205 * Makefile.in, configure.in & configure: mutatis mutandi for the
209 Mon Jun 29 11:49:17 1998 Keith Seitz <keiths@cygnus.com>
211 * main.c (main): Don't include gdbtk test code if GDBTK is
212 not defined by configure.
214 * configure.in: When enabling gdbtk, add "-DGDBTK" to ENABLE_CFLAGS.
216 * configure: Regenerate.
218 Fri Jun 26 13:56:07 1998 Keith Seitz <keiths@cygnus.com>
220 * gdbtk.c: Change all references to static global "interp" to
221 "gdbtk_interp" and export this global.
222 (gdbtk_init): If gdbtk_source_filename is not NULL, source this file
223 into the interpreter when it goes idle.
224 Add new command "gdb_search".
225 (gdb_search): New function which searches the symbol table.
226 (gdbtk_test): New function called by main when the --tclcommand
229 * main.c (main): Add a new option "--tclcommand" which is used
230 by the testsuite to source a file into the interpreter when it
233 Wed Jun 17 19:12:23 1998 Jeff Holcomb <jeffh@cygnus.com>
235 * Makefile.in (install-only): Install tracing help files.
237 Mon Jun 15 13:18:21 1998 Jim Ingham <jingham@cygnus.com>
239 * gdbtk.c (gdbtk_init): Add elements to the auto_path AS LIST
240 ELEMENTS. This allows gdbtk to work when installed in a directory
241 which has a space in the path. D. Moseley pointed out the bug.
244 Tue Jun 9 14:10:46 1998 Keith Seitz <keiths@cygnus.com>
246 * gdbtk.c (gdb_get_vars_command): Return static variables and
247 variables stored in registers.
249 * main.c (main): Call pre/post_add_symbol_hook's when loading
250 executables and symbol files.
252 Fri Jun 5 00:16:22 1998 Martin M. Hunt <hunt@cygnus.com>
254 * gdbtk.c (gdbtk_init): Change all references to
255 GDBTK_IDE to IDE_ENABLED.
257 Thu Jun 4 18:31:53 1998 Martin M. Hunt <hunt@cygnus.com>
259 * gdbtk.c (gdbtk_init): Initialize tkTable.
261 Thu Jun 4 10:15:03 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
265 - Elena Zannoni <ezannoni@kwikemart.cygnus.com>
266 (call_obj_wrapper): in case of error, copy the
267 error message from the result to the error_string.
268 (gdbtk_fputs): add comments.
269 (gdb_actions_command): call validate_actionline when installing the
270 tracepoint, to do the syntax checking of the actions for us.
271 - Elena Zannoni <ezannoni@kwikemart.cygnus.com>
272 (gdb_get_trace_frame_num): new function to get the
273 trace frame number from gdb.
274 (gdbtk_init): added new command gdb_get_trace_frame_num.
275 - Jim Blandy <jimb@zwingli.cygnus.com>
276 (struct wrapped_call_objs): Change the `func' member to
277 be a Tcl_ObjCmdProc, not an Tcl_CmdProc, since it accepts a vector
278 of objects as arguments. Change the object vector to be const,
279 since that's what all the users of this structure seem to expect.
280 (call_obj_wrapper): Cast clientData properly before storing it in
281 the wrapped_args structure.
283 Thu May 28 17:19:14 1998 Keith Seitz <keiths@cygnus.com>
285 * gdbtk.c (_initialize_gdbtk): Get rid of the console. Patch from
286 Chris Faylor (cgf@cygnus.com).
288 * configure.in: Link cygwin32 with subsystem console.
290 * configure: Regenerated
292 Sun May 24 14:00:24 1998 Keith Seitz <keiths@cygnus.com>
294 * ser-unix.c (wait_for): Do not reset timeout_remaining for cygwin32 so that
295 we can use this member to track real timeouts.
296 (hardwire_readchar): Modify for cygwin32 so that we only ever use a real
297 system timeout of one second. Track the "real" timeout as a series of these
299 Call ui_loop_hook to keep the gui alive.
301 * top.c: Define new hook for cygwin32, "ui_loop_hook".
303 * gdbtk.c (gdbtk_init): Add ui_loop_hook for CygWin32 to work around
306 Thu May 21 13:56:24 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
308 * gdbtk.c: reinserted the changes that were accidentally deleted:
309 (_initialize_gdbtk): Use correct device names in
310 cygwin-specific call (cosmetic change).
311 (gdbtk_ignorable_warning): removed va_list parameter,
313 (_initialize_gdbtk): add cygwin32 specific code to
314 allow `gdb -nw' to work when specified specified from a windows
315 console-mode command line.
317 Wed May 13 11:12:58 1998 James Ingham <jingham@leda.cygnus.com>
319 * gdbtk.c: Fixed a goof in the definition of the gdb_get_args &
320 gdb_get_locals Tcl commands. Moved the previous ChangeLog entry
321 from ChangeLog to ChangeLog-gdbtk (here)...
323 Tue May 12 13:29:20 1998 Jeff Holcomb <jeffh@cygnus.com>
325 * Makefile.in (install-only): Add images/icons.txt and
326 images2/icons.txt to files that need to be installed.
328 Tue May 12 12:03:16 1998 James Ingham <jingham@leda.cygnus.com>
330 * gdbtk.c: Add an object call wrapper for the new Tcl_Obj based
331 commands. This way the obj commands will also go through
332 catch_errors. This is just a bandaid while I rewrite the
333 string-based commands to use the object format.
335 Tue May 5 09:30:25 1998 Christopher Faylor <cgf@cygnus.com>
337 * gdbtk.c (_initialize_gdbtk): Use correct device names in
338 cygwin-specific call (cosmetic change).
340 Wed Apr 29 15:53:16 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
342 * gdbtk.c (gdbtk_ignorable_warning): removed va_list parameter,
345 Thu Apr 23 19:01:05 1998 Keith Seitz <keiths@onions.cygnus.com>
347 * Makefile.in (install-only): Install help files.
349 Wed Apr 22 21:17:35 1998 Christopher Faylor <cgf@cygnus.com>
351 * gdbtk.c (_initialize_gdbtk): add cygwin32 specific code to
352 allow `gdb -nw' to work when specified specified from a windows
353 console-mode command line.
355 Wed Apr 15 11:23:53 1998 Stan Shebs <shebs@andros.cygnus.com>
357 * gdbtcl: Remove directory and contents, this version of
358 the interface is obsolete.
360 Mon Apr 13 16:17:52 1998 Martin M. Hunt <hunt@cygnus.com>
362 * gdbtk.c (gdb_loadfile): Change fstat() call to stat().
363 Needed because you can't convert a FILE* to an fd.
365 Mon Apr 13 16:28:07 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
367 * gdbtk.c: (perror_with_name_wrapper) new function to call
368 perror_with_name safely.
369 (gdb_loadfile) added source vs. executable time stamp check.
370 (gdbtk_warning) new function to pass a warning message to the gui.
371 (gdbtk_ignorable_warning) new function to pass a warning
372 to the gui. Used only for the src. vs. exec check.
373 (gdbtk_init) added warning_hook
374 added include <sys/stat.h>
376 Mon Apr 13 12:58:26 1998 Keith Seitz <keiths@onions.cygnus.com>
378 * gdbtk.c (gdbtk_start_timer): Include on all platforms. Decrease
379 timer interval a little.
380 (gdbtk_stop_timer): Include on all platforms.
381 (gdbtk_wait): No more signals! Use a timer on all platforms to keep the
383 (gdbtk_init): Remove FIOASYNC and all x_fd references. Now using timers
386 Fri Apr 10 15:48:10 1998 Jason Molenda (crash@bugshack.cygnus.com)
388 * gdbtk.c (gdb_listfiles): Allocate space for 'files' dynamically.
390 Thu Apr 9 14:20:59 1998 Martin M. Hunt <hunt@cygnus.com>
392 * gdbtk.c (gdbtk_init): Remove redundant variable "IDE".
394 Tue Apr 7 15:13:58 1998 Stan Shebs <shebs@andros.cygnus.com>
396 * gdbtk.tcl: Remove, no longer used.
398 Tue Apr 7 12:49:45 1998 Keith Seitz <keiths@onions.cygnus.com>
400 * gdbtk.c (gdb_cmd): NEVER call the busy, update, and idle hooks.
402 Tue Mar 31 15:42:06 1998 Keith Seitz <keiths@onions.cygnus.com>
404 * gdbtk.c (gdb_loadfile): Don't use the return result from
405 sprintf, which returns a char * under SunOS4.
407 Tue Mar 31 17:18:43 1998 Ian Lance Taylor <ian@cygnus.com>
409 * configure.in: Add $(LIBIDETCL) as well as $(LIBIDE) if
411 * Makefile.in (IDE_CFLAGS_X): Add -I for libidetcl/src.
413 * configure: Rebuild.
415 Sun Mar 29 21:19:46 1998 Keith Seitz <keiths@onions.cygnus.com>
417 * gdbtk.c (gdb_get_tracepoint_info): Change formatting of address.
418 (tracepoint_exists): Remove code which confuses assembly traces.
420 Sat Mar 28 12:13:23 1998 Keith Seitz <keiths@onions.cygnus.com>
422 * gdbtk.c (gdb_cmd): If argc > 2, assume that the busy and idle hooks
423 should not be called.
425 Thu Mar 26 22:29:28 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
427 * gdbtk.c: (gdb_trace_status) new function.
428 (gdbtk_init) added command "gdb_is_tracing".
429 (tracepoint_notify) added passcount information.
431 Thu Mar 26 12:00:35 1998 Martin M. Hunt <hunt@cygnus.com>
433 * gdbtk.c (gdbtk_fputs): Insert fencepost.
434 (gdb_loc): Correct pc calculation.
435 (gdb_immediate_command): Return if a load is in progress.
436 (gdb_cmd): Return if a load is in progress.
437 (target_stop_wrapper): New function.
438 (gdb_stop): Call target_stop_wrapper.
439 (x_event): Add fencepost and optimize load cancel check.
440 (gdbtk_start_timer): Set up structs only once.
441 (gdbtk_stop_timer): Just use preset structs to set timer parameters.
442 (gdb_loadfile): If file cannot be loaded, return error message.
443 (gdb_loadfile): Add space before tab so that lines without
444 a '-' can later be changed to have one.
446 Wed Mar 25 14:08:51 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
448 * gdbtk.c (gdbtk_pre_add_symbol): Use Tcl_merge to form Tcl commands.
450 Mon Mar 23 13:41:39 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
452 * gdbtk.c (gdb_get_mem): Rewrite to fetch entire contents
453 of the memory window at once.
455 Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
457 Merged changes from Foundry: list follows by author:
459 - Tom Tromey <tromey@cygnus.com>
461 * Makefile.in (gdbres.o): New target.
462 (WINDRES): New define.
463 * configure: Rebuilt.
464 * configure.in (WINDRES): Define.
465 (CONFIG_OBS): Include gdbres.o on Windows.
466 * gdbtool.ico: New file.
468 * gdbtk.c (gdbtk_init): Call ide_create_messagebox_command.
469 (gdbtk_cleanup): Call ide_interface_deregister_all.
470 (gdbtk_init): Pass event handle to cleanup.
471 (TclDebug): Use Tcl_Merge to construct command.
472 (gdbtk_init): Call ide_create_cygwin_path_command.
474 - Martin M. Hunt <hunt@cygnus.com>
476 * gdbtk.c (gdb_set_bp): Set addr_string for bp.
477 (gdb_get_breakpoint_info): Demangle function
478 names in breakpoint info.
479 Include "demangle.h".
480 (gdb_loc, gdb_listfuncs): Demangle C++
482 (gdb_set_bp): Properly quote filename to fix
483 problems with spaces. Send pc back as a hex string.
484 (gdb_listfuncs): Remove debugging line.
485 Turn off some debugging lines.
486 (breakpoint_notify): Return correct line number.
487 (gdb_get_breakpoint_info): Return correct line number.
488 (gdb_set_bp): New function to provide a better way to
490 (gdbtk_readline, gdbtk_readline_begin): Memory
491 allocated by tcl needs to be freed by Tcl_Free().
492 (find_file_in_dir): Deleted.
493 (gdb_find_file_command): Call full_lookup_symtab().
494 (gdb_listfuncs): Call full_lookup_symtab().
495 (full_lookup_symtab): New function. Like lookup_symtab
496 except handles multiple files with the same basename,
497 full pathnames, and always sets symtab->fullname.
498 (gdb_loadfile): Call full_lookup_symtab(). Clear
500 (gdb_loadfile): Don't tag lines without source.
501 Tag source lines with source_tag.
502 (gdb_find_file_command, find_file_in_dir):
503 Rewrite. Now searches symtabs and psymtabs for a match
504 on the partial or full filename. Returns the full pathname.
505 (gdb_loadfile): Realloc additional memory
506 if someone loads in a file with more than 160,000
507 lines. I don't know if this really works because
508 I don't have enough memory to test it.
509 (gdb_sourcelines): Deleted.
510 (gdb_loadfile): New function. Takes a text widget
511 and loads it with the contents of a file. Marks
512 and tags source lines.
513 (pc_changed): New function.
514 (get_pc_register): Returns the value of
516 (gdb_loc): If looking on the stack, return
517 real pc along with calling source line.
518 (gdb_loc): Return "" instead of "N/A" if
519 filename is not found.
520 (gdb_get_breakpoint_info): Same.
521 (get_register): For Natural mode, set format to 0.
522 Minor bugfixes from keiths.
523 (TclDebug): New function for debugging use.
524 (gdb_loc): Return correct PC for frames
525 that are not the innermost frame.
526 (gdb_listfiles): Rewritten to use object
527 API. Now takes an optional dirname which will cause
528 only files in that directory or its subdirectories
529 to be returned. Now returns basenames instead of
531 (gdb_cmd): Set/reset load_in_progress flag.
532 (call_wrapper): Don't pop up dialog for errors in
533 downloads; just abort download.
534 (gdbtk_load_hash): Set return value correctly.
536 - Keith Seitz <keiths@onions.cygnus.com>
538 * gdbtk.c (gdbtk_init): Define the ui_loop_hook so that it can be
539 called by routines which might block, allowing us to update the GUI.
540 (gdbtk_wait): Move timer calls to annotation hooks.
541 (gdbtk_init): Define the annotation hooks.
542 (gdbtk_annotate_starting): New function for cygwin32 hosts.
543 (gdbtk_annotate_stopped): New function for cygwin32 hosts.
544 (gdbtk_annotate_exited): New function for cygwin32 hosts.
545 (gdbtk_annotate_signalled): New function. for cygwin32 hosts.
546 (gdbtk_init): Use gdbtk_print_frame_info hook.
547 (gdbtk_print_frame_info): New function which sets current_source_symtab
548 based on the given symtab and line info.
549 (gdb_immediate_command): New function which does
551 output. (Contrast to gdb_cmd.)
552 (gdb_prompt_command): New function to return gdb's prompt.
553 (find_file_in_dir): New functon which searches source paths
554 for a given filename.
555 (gdb_find_file): New function which returns path to given file -- uses
557 (gdbtk_init): Install "gdb_immediate", "gdb_find_file", and
559 commands into interpreter.
561 - Ian Lance Taylor <ian@cygnus.com>
563 * gdbtk.c (gdbtk_timer_going): If __CYGWIN32__, new static
565 (gdb_cmd): If __CYGWIN32__, if executing the load command, call
566 gdbtk_start_timer and gdbtk_stop_timer.
567 (call_wrapper): If __CYGWIN32__, if the timer is going, turn it
568 off. Clear load_in_progress.
569 (x_event): If load_in_progress, quit if download_cancel_ok.
570 (gdbtk_start_timer): Set gdbtk_timer_going.
571 (gdbtk_stop_timer): Clear gdbtk_timer_going.
572 (gdbtk_wait): Call x_event.
573 (gdbtk_init): Call ide_create_win_grab_command if
575 (gdb_clear_file): Clear stop_pc.
578 Tue Feb 10 17:50:37 1998 Keith Seitz <keiths@onions.cygnus.com>
580 * gdbtk.c (gdbtk_modify_tracepoint): Define new tracepoint modification hook.
581 (gdbtk_print_frame_info): Define this hook so that current_source_symtab
583 (gdb_actions_command): Use free_actions () from tracepoint.c/h.
585 Mon Jan 26 11:37:55 1998 Keith Seitz <keiths@onions.cygnus.com>
587 * gdbtk.c (gdb_actions_command): Make note of next action
588 before freeing all references to it.
590 Sat Jan 24 23:52:08 1998 Martin M. Hunt <hunt@cygnus.com>
592 * gdbtk.c: Merge from Foundry branch.
593 (TclDebug): New debugging function.
594 (gdb_loc): For frames, find address of calling function
595 instead of whatever is on the stack (usually the next
597 (gdb_listfiles): Takes an optional pathname argument and
598 returns an alphabetized list of basenames of files in the
601 Wed Jan 22 10:37:02 1998 Keith Seitz <keiths@onions.cygnus.com>
603 * symfile.c: Define two new hooks for symbol reading:
604 "pre_add_symbol_hook" and "post_add_symbol_hook". These hooks
605 are called before we begin reading symbols, and after we finish.
606 (generic_load): Use new symbol reading hooks and get rid of
609 * gdbtk.c (gdbtk_init): Add hooks for pre- and post-symbol reading.
610 (gdbtk_pre_add_symbol): New function: the pre-add-symbol hook.
611 (gdbtk_post_add_symbol): New function: the post-add-symbol hook.
612 (find_file_in_dir): New function. Moved the guts of gdb_find_file_command
613 into here to allow its use by others.
614 (gdb_loc): Use find_file_in_dir to return the real path to the file
615 (or "N/A" if we can't find it).
617 * configure.in (TIX_LIB_EXT): Define new variable for those special cases
618 when TCL_SHLIB_SUFFIX is not enough to specify the dependency.
620 * configure: Regenerate.
622 Fri Jan 23 07:47:06 1998 Fred Fish <fnf@cygnus.com>
624 * Makefile.in (uninstall): Remove installed gdbtcl dir, if one
627 Thu Jan 15 12:42:28 1998 Keith Seitz <keiths@onions.cygnus.com>
629 * gdbtk.c (gdb_immediate_command): New function which does not buffer any
630 output. (Contrast to gdb_cmd.)
631 (gdbtk_init): Install "gdb_immediate" command into interpreter.
633 Wed Jan 14 16:38:44 1998 Keith Seitz <keiths@pizza.cygnus.com>
635 * configure.in (--enable-gdbtk): If tcl was built with --enable-shared,
636 use TCL_SHLIB_SUFFIX to specify the suffix of the library file so that
637 we don't expect to see "libfoo.a" instead of "libfoo.{so,sl, etc}".
639 * configure: Regenerate.
641 Wed Dec 31 16:50:26 1998 Keith Seitz (keiths@onions.cygnus.com)
643 * gdbtk.c (gdb_actions_command): extract and save step count
644 from "while-stepping" command
646 Tue Dec 16 21:16:42 1997 Ian Lance Taylor <ian@cygnus.com>
648 * Makefile.in (LIBGUI): New variable.
649 (GUI_CFLAGS_X): New variable.
650 (IDE_CFLAGS): Add $(GUI_CFLAGS_X).
651 * configure.in: Add $(LIBGUI) to TCL_LIBS and CONFIG_DEPS.
652 * configure: Rebuild.
654 Wed Dec 10 13:16:45 1997 Keith Seitz <keiths@onions.cygnus.com>
656 * gdbtk.c (gdb_get_tracepoint_info): Use info in struct
657 symtab_and_line (not struct tracepoint) so that we get the
658 real line info for an address. Arrange data more like
659 gdb_get_breakpoint_info.
660 (tracepoint_notify): Use info in struct symtab_and_line again.
661 (gdbtk_init): Add command "gdb_get_tracepoint_list" into
663 (gdb_get_tracepoint_list): New function that aids the source
664 window in displaying tracepoints when the file changes.
666 Fri Dec 5 10:31:23 1997 Keith Seitz <keiths@pizza.cygnus.com>
668 * gdbtk.c (gdbtk_init): Add gdb_find_file into interpreter.
669 (gdb_find_file_command): New function which searches source path
670 to find the real full filename of a file.
672 Mon Dec 1 10:19:44 1997 Keith Seitz <keiths@onions.cygnus.com>
674 * gdbtk.c: Move include of "guitcl.h" back out of IDE ifdef.
675 (gdbtk_init): Move ide_initialize_paths out of IDE ifdef.
677 * configure.in (TCL_LIBS, CONFIG_DEPS): Add IDE libraries for all
679 (CONFIG_OBS): Remove tracepoint.o, which should always be included.
681 * configure: regenerate
683 * Makefile.in (install-only): ALWAYS install the new gdbtk
684 (REMOTE_OBS): add tracepoint.o
686 Thu Nov 27 09:07:18 1997 Michael Meissner <meissner@cygnus.com>
688 * configure.in ({TCL_LIBS,CONFIG_DEPS}): Don't add IDE libraries
690 (CONFIG_OBS): Add tracepoint.o to list if --enable-gdbtk.
691 * configure: Regenerate.
693 * gdbtk.c (gdb_get_breakpoint_info): Add missing filename
695 (toplevel): Move include of guitcl.h into #ifdef IDE region.
696 (gdbtk_init): Move ide_initialize_paths call into #ifdef IDE
699 * Makefile.in (gdbtk.o): Update dependencies.
701 Wed Nov 26 15:02:43 1997 Keith Seitz <keiths@onions.cygnus.com>
703 * gdbtk.c (gdb_loc): symtab_to_filename can return NULL.
704 (breakpoint_notify): Ditto.
705 (gdb_get_breakpoint_info): Ditto.
707 Wed Nov 26 11:33:09 1997 Keith Seitz <keiths@onions.cygnus.com>
709 Merge in code from Foundry branch:
711 * Makefile.in (install-only): install the new gdbtk, not the old
713 * gdbtk.c (gdbtk_call_command): also run idle hooks for class_trace
715 (gdbtk_init): Add new commands "gdb_get_locals", "gdb_get_args",
716 "gdb_get_function", "gdb_get_line", "gdb_get_file",
717 "gdb_tracepoint_exists", "gdb_get_tracepoint_info", "gdb_actions",
719 (gdb_get_vars_command): New function.
720 (gdb_get_line_command): New.
721 (gdb_get_file_command): New.
722 (gdb_get_function_command): New.
723 (gdb_get_tracepoint_info): New.
724 (gdbtk_create_tracepoint): New.
725 (gdbtk_delete_tracepoint): New.
726 (tracepoint_notify): New.
727 (tracepoint_exists): New.
728 (gdb_actions_command): New.
729 (gdb_tracepoint_exists_command): New.
730 (gdb_prompt_command): New.
732 Thu Nov 13 18:15:54 1997 Ian Lance Taylor <ian@cygnus.com>
734 * gdbtk.c: Move include of gdbcore.h to top of file.
735 (close_bfds): New static function if _WIN32.
736 (gdbtk_readline): Call close_bfds.
737 (call_wrapper, tk_command_loop): Likewise.
738 (gdb_clear_file): New static function.
739 (gdbtk_init): Create gdb_clear_file Tcl command.
741 Wed Nov 12 14:58:39 1997 Jeff Holcomb <jeffh@cygnus.com>
743 * gdbtk.c: gdbtk_load_hash and ui_load_progress_hook return an
745 (gdbtk_load_hash): download hash routine returns an int result.
747 Mon Nov 10 15:11:51 1997 Ian Lance Taylor <ian@cygnus.com>
749 * gdbtk.c (gdbtk_init): Call ide_create_shell_execute_command if
751 * configure.in: Add -lshell32 to WIN32LIBS on cygwin32.
752 * configure: Rebuild.
754 Sun Nov 9 16:25:34 1997 Tom Tromey <tromey@cygnus.com>
756 * gdbtk.c (gdbtk_init): Run ide_create_help_command.
758 Tue Oct 28 17:31:47 1997 Martin M. Hunt <hunt@cygnus.com>
760 * gdbtk.c (gdbtk_init): Call ide_create_winprint_command.
762 Thu Oct 23 15:53:37 1997 Ian Lance Taylor <ian@cygnus.com>
764 * configure.in: Add -lgdi32 to WIN32LIBS when linking gdbtk on
766 * configure: Rebuild.
768 Wed Oct 22 21:32:54 1997 Martin M. Hunt <hunt@cygnus.com>
770 * gdbtk.c (gdbtk_init): Create sizebox command on Windows.
772 Thu Oct 9 14:33:21 1997 Ian Lance Taylor <ian@cygnus.com>
774 * gdbtk.c (gdbtk_init): Remove assertion argument from call to
775 ide_create_window_register_command.
777 Wed Oct 1 11:09:52 1997 Tom Tromey <tromey@cygnus.com>
779 * gdbtk.c (gdbtk_init): Pass name of restore interface to
780 ide_create_window_register_command.
782 Fri Sep 26 21:08:22 1997 Keith Seitz <keiths@pizza.cygnus.com>
784 * gdbtk.c (gdbtk_init): Initialize ui_load_progress_hook.
786 Thu Sep 25 03:05:00 1997 Martin M. Hunt <hunt@cygnus.com>
788 * gdbtk.c (gdb_load_info): New function. Returns a list
789 of section names and sizes for an executable.
790 (gdbtk_load_hash): Stub function to call tcl function
793 Tue Sep 23 01:29:00 1997 Martin M. Hunt <hunt@cygnus.com>
795 * gdbtk.c (gdb_get_mem): Fix compiler warning.
797 Sun Sep 21 00:15:00 1997 Martin M. Hunt <hunt@cygnus.com>
799 * gdbtk.c (gdb_get_mem): Fix problem with ASCII dump.
801 Tue Sep 16 18:07:17 1997 Martin M. Hunt <hunt@cygnus.com>
803 * gdbtk.c (gdb_get_mem): New function. Returns
804 a formatted memory dump with optional ASCII dump.
806 Mon Sep 8 12:48:50 1997 Ian Lance Taylor <ian@cygnus.com>
808 * gdbtk.c: Include ilutk.h if IDE.
809 (gdb_confirm_quit, gdb_force_quit): New static functions.
810 (gdbtk_init): Add Tcl commands gdb_confirm_quit and
813 Mon Sep 8 03:05:33 1997 Martin M. Hunt <hunt@cygnus.com>
815 * gdbtk.c (gdb_get_breakpoint_info): Now returns the
816 function a breakpoint is in.
818 Fri Sep 5 20:23:58 1997 Ian Lance Taylor <ian@cygnus.com>
820 * gdbtk.c (gdbtk_init): Call ide_create_exit_command.
822 Wed Sep 3 19:39:15 1997 Ian Lance Taylor <ian@cygnus.com>
824 * gdbtk.c: Include guitcl.h.
825 (gdbtk_init): Always call ide_initialize_paths. Set the Tcl
826 variable IDE to 1 when using the IDE. Always try using auto path
828 * Makefile.in (IDE_CFLAGS_X): Always include libide.
829 (LIBIDE): New variable.
831 (IDE_DEPS): Omit libide.
832 * configure.in: Add LIBIDE to TCL_LIBS and CONFIG_DEPS.
833 * configure: Rebuild.
835 Mon Aug 25 02:28:55 1997 Keith Seitz <keiths@pizza.cygnus.com>
837 * gdbtk.c: (gdb_target_has_inferior) check if inferior_pid is non-zero
838 before assuming that the inferior is running.
840 Mon Aug 25 01:06:48 1997 Ian Lance Taylor <ian@cygnus.com>
842 * gdbtk.c (gdbtk_start_timer): Pass third argument to setitimer.
843 (gdbtk_stop_timer): Likewise.
845 Mon Aug 25 00:23:08 1997 Keith Seitz <keiths@pizza.cygnus.com>
847 * gdbtk.c: (gdbtk_init) create new command "gdb_target_has_execution"
848 (gdb_target_has_execution_command) new function
850 Sun Aug 24 20:27:22 1997 Ian Lance Taylor <ian@cygnus.com>
852 * gdbtk.c (gdb_loc): If there are no symbols, just bail
854 (tk_command_loop): Print errors encountered while running
857 Sun Aug 24 13:44:03 1997 Tom Tromey <tromey@cygnus.com>
859 * gdbtk.c (gdbtk_init): Run ide_create_build_command.
861 Sat Aug 23 21:53:39 1997 Ian Lance Taylor <ian@cygnus.com>
863 * gdbtk.c: If CYGWIN32, include <sys/time.h>.
864 (x_fd): Don't define if WINNT.
865 (gdbtk_start_timer, gdbtk_stop_timer): New static functions if
867 (gdbtk_wait): Don't set up signal handling if WINNT. If CYGWIN32,
868 call gdbtk_start_timer and gdbtk_stop_timer.
869 (gdbtk_init): Don't set up signal handling or make x_fd
870 asynchronous if CYGWIN32.
872 Fri Aug 22 15:23:15 1997 Ian Lance Taylor <ian@cygnus.com>
874 * gdbtk.c (error_string_ptr): New static variable.
875 (gdbtk_fputs): If result_ptr is NULL, and error_string_ptr is not
876 NULL, and we're outputting to stderr, append string to
877 error_string_ptr rather than calling gdbtk_tcl_fputs.
878 (call_wrapper): Set up error_string_ptr. Put both error string
879 and normal string in Tcl result.
881 * gdbtk.c (gdbtk_init): Don't call ide_run_server_init until after
884 Thu Aug 21 19:14:38 1997 Ian Lance Taylor <ian@cygnus.com>
886 * gdbtk.c: If _WIN32, include winuser.h.
887 (gdbtk_init): If _WIN32, use MessageBox to display an error
890 Thu Aug 21 00:48:00 1997 Martin M. Hunt <hunt@pern.cygnus.com>
892 * gdbtk.c (gdbtk_init): Add call to ide_run_server_init().
893 (gdb_cmd): For the load command, don't buffer the I/O.
895 Wed Aug 20 11:41:22 1997 Martin M. Hunt <hunt@cygnus.com>
897 * gdbtk.c (gdbtk_query): Chaneg free() call to Tcl_Free().
899 Tue Aug 19 17:09:19 1997 Ian Lance Taylor <ian@cygnus.com>
901 * Makefile.in (TCL_DEPS, TK_DEPS): New variables.
902 (ITCL_DEPS, TIX_DEPS): New variables.
903 (IDE_DEPS): New variable.
904 (CDEPS): Include @CONFIG_DEPS@.
905 * configure.in: Set and substitute CONFIG_DEPS and TIX_DEPS.
906 * configure: Rebuild.
908 Sun Aug 17 00:42:11 1997 Martin M. Hunt <hunt@cygnus.com>
910 * gdbtk.c (gdb_listfuncs): New function that returns
911 a list of all the functions in a source file.
913 Tue Aug 12 16:35:21 1997 Ian Lance Taylor <ian@cygnus.com>
915 * Makefile.in (install-only): Install tclIndex if ENABLE_IDE.
917 Mon Aug 11 10:43:04 1997 Tom Tromey <tromey@cygnus.com>
919 * gdbtk.c (gdbtk_init): Use ide_event_init_from_environment.
921 Fri Aug 8 15:59:24 1997 Ian Lance Taylor <ian@cygnus.com>
923 * gdbtk.c (gdbtk_init): Change gdbtk_lib_tmp and gdbtk_file to be
924 dynamically allocated, rather than fixed size. Pass "gdbtcl" to
925 ide_initialize_paths to match installed directory name. If IDE,
926 use auto_path to search for main.tcl.
927 * Makefile.in (install-only): If ENABLE_IDE, install from gdbtcl2
930 * gdbtk.c (gdbtk_cleanup): New static function.
931 (gdbtk_init): Add gdbtk_cleanup as a final cleanup. Uncomment
932 call to ide_initialize_paths. If we can't initialize the event
933 system, set GDBTK_IDE to 0 in the Tcl interpreter. Create the
934 ide_window_register and the ide_window commands. Initialize tk,
935 itcl, and tix after initializing the IDE.
937 * configure.in (tixdir): Update for cygwin32 case for Tcl 8.0.
938 * configure: Rebuild.
940 Fri Aug 8 00:13:32 1997 Martin M. Hunt <hunt@cygnus.com>
942 * gdbtk.c (breakpoint_notify): Change buffer size from 100
943 to 256 to avoid memory corruption with very long pathnames.
945 Thu Aug 7 14:08:23 1997 Martin M. Hunt <hunt@cygnus.com>
947 * configure.in: Change required Tix version to 4.1.8.0 .
948 * configure: Rebuilt.
950 Fri Aug 1 15:21:44 1997 Ian Lance Taylor <ian@cygnus.com>
952 * gdbtk.c (Tcl_Alloc): Don't provide our own version of this if
954 (Tcl_Realloc, Tcl_Free): Likewise.
955 * configure.in: Check for cygwin32 environment. Define and
956 substitute WIN32LIBS and WIN32LDAPP. Always set configdir to
957 unix; setting it to win was for an old Tcl/Tk configuration
959 * aclocal.m4 (CY_AC_LOAD_TKCONFIG): Substitute TK_BUILD_INCLUDES.
960 * Makefile.in (TK_CFLAGS): Add @TK_BUILD_INCLUDES@.
961 (WIN32LDAPP, WIN32LIBS): Define.
962 (CLIBS): Add $(WIN32LIBS).
963 (gdb): Use $(WIN32LDAPP).
964 * configure: Rebuild.
966 Tue Jul 22 19:45:37 1997 Martin M. Hunt <hunt@cygnus.com>
968 * configure.in, aclocal.m4: Another fix to find the
969 correct Tix library name.
971 * configure: Rebuilt.
973 Mon Jul 21 22:24:07 1997 Martin M. Hunt <hunt@cygnus.com>
975 * aclocal.m4: Search for the correct tix library.
977 Thu Jul 10 00:02:41 1997 Martin M. Hunt <hunt@cygnus.com>
979 * Makefile.in, configure.in, aclocal.m4: Add Itcl, Tix, and
980 IDE configuration information.
982 * gdbtk.c (breakpoint_notify): Send address, linenumber and
983 filename when a breakpoint is set. Avoids call to bp_info.
984 (gdbtk_init): Call Tcl_FindExecutable(). Add code to handle
985 Itcl, Tix and IDE initialization.
987 * configure: Regenerated.
989 Fri Jun 13 10:28:09 1997 Fred Fish <fnf@cygnus.com>
991 * gdbtk.c (gdbtk_init): Make truth value test explicit.
992 Remove unused static variable "Gdbtk_Library".
994 Sat Jun 7 02:34:19 1997 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
996 * gdbtk.c (gdb_get_breakpoint_info): Add string for new
997 enumeration del_at_next_stop to bpdisp array.
999 Tue Jun 3 15:46:51 1997 Tom Tromey <tromey@cygnus.com>
1001 * Makefile.in (LIB_RUNTIME_DIR): New variable.
1003 Wed May 7 19:10:19 1997 Andrew Cagney <cagney@b1.cygnus.com>
1005 * gdbtk.c (wrapped_call): New function - make actual call to tk
1007 (call_wrapper): Rewrite to use top.c:catch_errors.
1009 * gdbtk.c (gdb_stop): If No target_stop set quit flag and hope for
1012 Mon Apr 21 14:00:08 1997 Doug Evans <dje@canuck.cygnus.com>
1014 * gdbtk.c (gdb_disassemble): Store endian-ness in `di'.
1016 Wed Apr 16 12:33:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
1018 * Makefile.in (install-only): Make list of gdbtcl files to install
1019 explicit - was picking up files such as ChangeLog etc.
1020 (install-only): Don't blindly create the directory.
1022 Tue Apr 1 15:04:21 1997 Jason Molenda (crash@godzilla.cygnus.co.jp)
1024 * configure.in (gdbtcl): Create soft-link for gdbtcl/ directory
1025 instead of gdbtk.tcl.
1027 Fri Mar 28 17:04:02 1997 Jason Molenda (crash@godzilla.cygnus.co.jp)
1029 * Makefile.in (gdbtk.o): look for GDBTK_LIBRARY in $(datadir) by
1030 default, not $(srcdir).
1032 Wed Mar 19 15:16:17 1997 Martin M. Hunt <hunt@onions.cygnus.com>
1034 * Makefile.in: Install gdbtcl dir instead of gdbtk.tcl.
1036 * gdbtk.c: Added some ifdefs for Windows. Changed GDBTK_FILENAME
1037 to GDBTK_LIBRARY, which is now a path to search.
1038 (gdb_path_conv): New function. Convert Cygwin32 pathname to
1041 * {aclocal.m4,configure.in}: Changes for Windows builds.
1043 * configure: Rebuilt.
1045 Fri Mar 14 10:01:29 1997 Tom Tromey <tromey@cygnus.com>
1047 * configure: Regenerated.
1048 * configure.in (LIBS): Re-reverse order of TCL_LIBS and TK_LIBS.
1050 Wed Mar 12 14:29:52 1997 Tom Tromey <tromey@cygnus.com>
1052 * gdbtk.c (x_event): Use Tcl_DoOneEvent, TCL_DONT_WAIT,
1055 * configure: Regenerated.
1056 * configure.in (ENABLE_GDBTK): Put TCL_LIBS after TK_LIBS in
1059 Mon Feb 10 13:50:53 1997 Stu Grossman (grossman@critters.cygnus.com)
1061 * gdbtk.c (call_wrapper): Clear running_now if an error occurs.
1063 Wed Dec 11 18:51:35 1996 Mark Alexander <marka@cygnus.com>
1065 * gdbtk.c (gdb_loc): Correct truncation of PC on 64-bit MIPS.
1067 Tue Nov 19 09:26:14 1996 Tom Tromey <tromey@cygnus.com>
1069 * gdbtk.c (gdbtk_readline): Fix memory leak.
1071 Mon Nov 18 23:43:05 1996 Tom Tromey <tromey@cygnus.com>
1073 Fixes for Tcl 7.6 / Tk 4.2:
1074 * gdbtk.tcl (apply_filespec): Use tk_getOpenFile.
1075 Remove old fileselect code.
1076 * gdbtk.c (Tcl_Alloc): Rename from Tcl_Malloc.
1078 Fri Sep 27 10:25:30 1996 Fred Fish <fnf@cygnus.com>
1080 * gdbtk.tcl (create_copyright_window): Increase timeout from
1081 15 seconds to 30 seconds.
1083 Wed Sep 4 17:28:40 1996 Stu Grossman (grossman@critters.cygnus.com)
1085 * configure configure.in: Add host *windows* to list of hosts
1086 that don't support GDBtk.
1088 Fri Aug 23 00:44:57 1996 Fred Fish <fnf@cygnus.com>
1090 * gdbtk.c (gdbtk_init): Check for a DISPLAY env variable and
1091 gracefully degrade to using command line interface if none is
1094 Fri Aug 9 12:32:53 1996 Tom Tromey <tromey@creche.cygnus.com>
1096 * Makefile.in (LIB_INSTALL_DIR): New macro.
1097 (TCL): Include @TCL_LD_SEARCH_FLAGS@.
1099 Thu Aug 1 20:35:01 1996 Tom Tromey <tromey@creche.cygnus.com>
1101 * gdbtk.c (mainWindow): Deleted.
1102 (cleanup_init): Don't destroy main window.
1103 (gdbtk_init): Main window now created by Tk_Init.
1105 * configure.in: Most X checks now handled automatically by Tk.
1106 Use new macros to find Tcl/Tk.
1107 * aclocal.m4: New version for new Tcl/Tk; from Don Libes.
1108 * config.in, configure: Regenerated.
1110 * Makefile.in (TCL, TCL_CFLAGS, TK, TK_CFLAGS, X11_CFLAGS,
1111 X11_LDFLAGS, X11_LIBS): Changed for new Tcl and Tk.
1113 Thu Aug 1 16:12:05 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
1115 * Makefile.in (gdbtk.tcl): put in $(datadir), not $(libdir).
1117 Fri Jul 26 14:07:37 1996 Ian Lance Taylor <ian@cygnus.com>
1119 * gdbtk.c (gdb_disassemble): Initialize di.flavour.
1121 Thu Jul 25 19:41:31 1996 Fred Fish <fnf@cygnus.com>
1123 * gdbtk.c (null_routine): Ditto.
1124 (gdbtk_flush): Ditto.
1125 (gdbtk_fputs): Ditto.
1126 (gdbtk_query): Ditto.
1127 (gdbtk_readline): Ditto.
1128 (gdbtk_readline_end): Ditto.
1129 (gdb_get_breakpoint_list): Ditto.
1130 (gdb_get_breakpoint_info): Ditto.
1131 (breakpoint_notify): Ditto.
1132 (gdbtk_create_breakpoint): Ditto.
1133 (gdbtk_delete_breakpoint): Ditto.
1134 (gdbtk_modify_breakpoint): Ditto.
1137 (gdb_sourcelines): Ditto.
1138 (map_arg_registers): Ditto.
1139 (get_register_name): Ditto.
1140 (gdb_regnames): Ditto.
1141 (get_register): Ditto.
1142 (gdb_fetch_registers): Ditto.
1143 (register_changed_p): Ditto.
1144 (gdb_changed_register_list): Ditto.
1146 (call_wrapper): Ditto.
1147 (gdb_listfiles): Ditto.
1149 (gdbtk_dis_asm_read_memory): Ditto.
1150 (compare_lines): Ditto.
1151 (gdb_disassemble): Ditto.
1152 (tk_command): Ditto.
1153 (cleanup_init): Ditto.
1154 (gdbtk_interactive): Ditto.
1156 (gdbtk_wait): Ditto.
1157 (gdbtk_call_command): Ditto.
1158 (tk_command_loop): Ditto.
1159 (gdbtk_init): Ditto.
1161 * gdbtk.c (register_changed_p): Remove unused local variable "buf".
1163 Sat Jul 20 17:46:40 1996 Fred Fish <fnf@cygnus.com>
1165 * gdbtk.tcl (files_command): Reorder the binding tags for
1166 the listbox widget to avoid referencing the listbox after
1167 the containing widget has been destroyed by the action of
1170 Sat Jul 20 10:09:28 1996 Fred Fish <fnf@cygnus.com>
1172 * gdbtk.tcl (delete_expr): Unset corresponding element of
1173 expr_update_list when destroying an expression.
1174 (create_expr_window): Initialize expr_num, delete_expr_num,
1175 and expr_update_list here when each new expression window
1176 is created, rather than once at startup.
1178 Mon Jul 15 16:44:05 1996 Stu Grossman (grossman@critters.cygnus.com)
1180 * gdbtk.c (gdb_disassemble): Setup di.mach from
1181 tm_print_insn_info.mach, and set endian from TARGET_BYTE_ORDER.
1183 Fri Jun 21 11:04:47 1996 Fred Fish <fnf@cygnus.com>
1185 * gdbtk.tcl (create_register_windows): Include missing '$'s.
1186 Add global declarations for various reg_format_* variables.
1187 * gdbtk.tcl (populate_register_window): Make initial window one
1188 line taller to account for new column header line.
1190 Fri Jun 21 09:46:47 1996 Fred Fish <fnf@cygnus.com>
1192 * gdbtk.c (get_register): Support for printing raw formats.
1193 * gdbtk.tcl: Add hint for using debug_interface.
1194 (center_window, add_breakpoint_frame, delete_breakpoint_frame):
1195 Enclose arg in braces for consistency.
1196 (create_registers_window, populate_reg_window, update_registers):
1197 Major rewrite to support displaying multiple formats in the register
1199 (init_reg_info): New function.
1200 (recompute_reg_display_list): Reset reg_display_list, start
1201 register display lines at line 2.
1203 Thu Jun 20 08:18:59 1996 Fred Fish <fnf@cygnus.com>
1205 * gdbtk.tcl (gdbtk_tcl_readline_begin): Handle backspace to
1206 avoid backing up over prompt. At every input, make sure insert
1207 point is at least after command start, handle control-u to delete
1209 (tclsh): Handle backspace to avoid backing up over prompt. Handle
1210 control-u to delete current input line.
1212 Wed Jun 19 17:23:38 1996 Geoffrey Noer <noer@cygnus.com>
1214 * configure.in: disable gdbtk for *cygwin32* hosted compiles
1215 * configure: regenerated with autoconf 2.8
1217 Sun May 19 16:49:37 1996 Fred Fish <fnf@cygnus.com>
1219 * gdbtk.c (gdbtk_readline_begin, gdbtk_readline, gdbtk_readline_end):
1221 (tk_command_loop): Set instream to NULL to enable Tk user interaction.
1222 (gdbtk_init): Set readline_begin_hook, readline_hook,
1223 and readline_end_hook.
1224 * gdbtk.tcl (gdbtk_tcl_readline_begin, gdbtk_tcl_readline,
1225 gdbtk_tcl_readline_end): New functions.
1226 (tclsh): Pack scroll bar on right side of window, not left.
1228 Fri May 17 13:54:34 1996 Fred Fish <fnf@cygnus.com>
1230 * gdbtk.tcl (create_command_window): Change a misspelled "get"
1231 to the intended "cget".
1232 (delete_line): Fix so it deletes the current line at the
1235 Thu May 16 19:20:29 1996 Fred Fish <fnf@cygnus.com>
1237 * gdbtk.tcl (gdb_prompt): Set this early on.
1238 (create_command_window): Use gdb_prompt rather than "(gdb) ".
1239 (gdbtk_tcl_preloop): Proc executed just prior to Tk main loop.
1240 (tclsh): If an evaluation window already exists, just bring it
1241 to the front instead of trying to create another.
1242 * gdbtk.c (tk_command_loop): New function.
1243 (gdbtk_init): Call tk_command_loop rather than Tk_MainLoop.
1245 Thu May 16 16:16:35 1996 Fred Fish <fnf@cygnus.com>
1247 * gdbtk.tcl (evaluate_tcl_command, tclsh): New functions that
1248 implement a tcl evaluation window for gdbtk maintainers to use.
1250 Thu May 16 11:42:58 1996 Tom Tromey <tromey@creche.cygnus.com>
1252 * gdbtk.tcl (files_command): Correctly insert list of files into
1255 * gdbtk.tcl (files_command): listbox command no longer accepts
1258 Wed May 15 16:04:09 1996 Stan Shebs <shebs@andros.cygnus.com>
1260 * gdbtk.tcl (create_command_window): If command window's buffer
1261 is disabled, don't execute any of the key bindings.
1263 Mon May 13 13:43:25 1996 Fred Fish <fnf@cygnus.com>
1265 * gdbtk.c (tk_command): Catch case where no argument is given
1266 since this will cause the tcl interpreter to dump core.
1268 Wed May 8 20:33:24 1996 Fred Fish <fnf@cygnus.com>
1270 * gdbtk.c: Fix a couple of misspellings.
1272 Thu May 2 19:17:49 1996 Stan Shebs <shebs@andros.cygnus.com>
1274 * gdbtk.tcl (debug_interface): New global, use to aid debugging.
1275 (insert_breakpoint_tag, delete_breakpoint_tag): Fix range.
1276 (file_popup_menu): Delete, never used.
1277 (listing_window_popup): Rename from listing_window_button_1,
1278 remove breakpoint toggling code.
1279 (toggle_breakpoint): New procedure.
1280 (create_file_win): Bind popup menu to button 2, toggle breakpoints
1281 with button 1 in breakpoint area, add display of tagged areas if
1284 Fri Apr 5 13:44:40 1996 Stan Shebs <shebs@andros.cygnus.com>
1286 * gdbtk.c (running_now): New global variable.
1287 (gdb_cmd): Test it before executing any command.
1288 (gdbtk_call_command): Set it when inferior is running.
1289 * gdbtk.tcl (gdbtk_tcl_busy, gdbtk_tcl_idle): Enable and
1290 disable interaction with command window's text appropriately.
1292 Fri Apr 5 13:25:42 1996 Michael Meissner <meissner@tiktok.cygnus.com>
1294 * gdbtk.c (SIOCSPGRP, linux): If on Linux, undef SIOCSPGRP, since
1295 some versions of the kernel don't support it.
1297 Tue Feb 6 16:31:25 1996 Tom Tromey <tromey@creche.cygnus.com>
1299 * gdbtk.tcl (create_file_win): Eliminate text widget B1 binding so
1300 double-clicking will work again.
1301 (create_asm_win): Put "break" at end of all B1 bindings.
1302 (create_file_win): Lower "sel" tag, don't raise it.
1303 (ensure_line_visible): New proc.
1304 (update_listing, update_assembly): Use it.
1305 (create_copyright_window): Destroy window on Leave event.
1306 (create_command_window): Put "break" at end of all B2 bindings.
1308 Wed Jan 24 15:28:41 1996 Tom Tromey <tromey@creche.cygnus.com>
1310 * gdbtk.tcl, gdbtk.c: Updated copyrights.
1312 * configure.in: Look for -ldl or -ldld when using Tcl 7.5 or
1314 * configure: Rebuilt.
1316 Tue Jan 23 09:00:48 1996 Doug Evans <dje@charmed.cygnus.com>
1318 * gdbtk.c (gdb_disassemble): Pass fprintf_unfiltered to
1319 INIT_DISASSEMBLE_INFO.
1321 Mon Jan 15 09:58:41 1996 Tom Tromey <tromey@creche.cygnus.com>
1323 * gdbtk.tcl (create_expr_window): Many changes to update GUI.
1324 (add_expr): Changes from create_expr_window.
1325 (create_command_window): Set focus.
1326 (delete_expr): Rewrote.
1327 (expr_update_button): New proc.
1328 (add_expr): Put bindings on FocusIn, FocusOut.
1329 Don't allow .file_popup to be torn off.
1331 Fri Jan 12 09:36:17 1996 Tom Tromey <tromey@creche.cygnus.com>
1333 * gdbtk.tcl (gdbtk_tcl_query): Swap Yes and No buttons.
1334 (update_listing): Use lassign. Use "see" to scroll. Don't need
1335 screen_top, screen_bot, screen_height.
1336 (update_assembly): Use "see" to scroll.
1337 (textscrollproc): Removed.
1338 (create_file_win): Don't use textscrollproc.
1339 (asmscrollproc): Removed.
1340 (create_asm_window): Don't use asmscrollproc.
1341 (create_asm_win): Ditto.
1342 (screen_height, screen_top, screen_bot): Removed.
1343 (run_editor): New proc.
1344 (build_framework): Use it.
1345 (create_file_win, create_source_window): Don't use textscrollproc.
1346 (create_breakpoints_window): Set -xscrollcommand on canvas.
1347 (not_implemented_yet): Default button is 0.
1348 (delete_char): Don't use tk_textBackspace.
1349 (create_command_window): Allow Tk bindings to fire after deleting
1351 (create_command_window): Make Delete delete left, not right.
1353 Thu Jan 11 10:08:14 1996 Tom Tromey <tromey@creche.cygnus.com>
1355 * gdbtk.tcl (FSBox): Don't use tk_listboxSingleSelect.
1357 Changes in sync with expect:
1358 * configure.in (ENABLE_GDBTK): Use CY_AC_PATH_TCL and
1360 * aclocal.m4: Replaced with version from expect.
1361 * configure: Regenerated.
1363 Wed Jan 10 09:07:22 1996 Tom Tromey <tromey@creche.cygnus.com>
1365 * gdbtk.tcl (gdbtk_tcl_fputs, gdbtk_tcl_fputs_error,
1366 gdbtk_tcl_flush): Use "see", not "yview".
1367 (gdbtk_tcl_query): Use questhead bitmap.
1368 various: Always wrap condition of 'if' in {...}.
1369 (add_breakpoint_frame): Set -value on radiobuttons.
1370 (lassign): New proc.
1371 (add_breakpoint_frame): Use lassign, not series of assignments.
1372 (decr): Made faster.
1373 (interactive_cmd): Use "see", not "yview".
1374 (not_implemented_yet): Use warning bitmap.
1375 (update_expr): Don't allow $expr to be evalled by Tcl.
1376 (create_expr_window): Don't use "focus".
1377 (delete_char, delete_line): Define globally.
1378 (delete_line, delete_char, create_command_window, update_autocmd,
1379 build_framework, create_asm_win, create_file_win): Use "see", not
1381 (create_copyright_window, center_window, bind_widget_after_class):
1383 (FSBox,create_command_window, create_autocmd_window): Binding
1385 (textscrollproc): Define globally.
1386 (build_framework): tk_menuBar no longer needed. Keys Prior, Next,
1387 Home, End, Up, and Down are all defined by Tk.
1388 (apply_filespec): Use error bitmap in dialog.
1389 (files_command): Don't use tk_listboxSingleSelect.
1390 (files_command): Don't use "uniq" to remove duplicates from a
1392 (update_assembly): Use lassign.
1393 (create_asm_win): Removed redundant bindings.
1394 (listing_window_button_1, file_popup_menu): Use tk_popup.
1395 (ButtonRelease-1 binding): Just remove tag from window; rest
1398 * gdbtk.c (gdbtk_query): Use Tcl_Merge to provide quoting.
1399 (call_wrapper): Use Tcl_Eval, not Tcl_VarEval.
1400 (gdbtk_call_command): Ditto.
1402 Thu Jan 4 16:04:54 1996 Stu Grossman (grossman@cygnus.com)
1404 * configure configure.in: Make --enable-gdbtk be the default.
1406 Thu Dec 28 15:10:49 1995 Stan Shebs <shebs@andros.cygnus.com>
1408 * README.GDBTK: Polish introductory paragraph.
1410 Mon Oct 16 11:27:06 1995 Stu Grossman (grossman@cygnus.com)
1412 * gdbtk.c (gdb_disassemble): Use fprintf_unfiltered instead of
1415 Tue Oct 10 15:26:39 1995 Fred Fish <fnf@cygnus.com>
1417 * README.GDBTK: Updated for version 4.15.
1419 Sat Aug 19 17:20:22 1995 Michael Tiemann <tiemann@axon.cygnus.com>
1421 * gdbtk.tcl: ENABLE comes back as "1" or "0", not "enable" or
1423 Also, wire up the breakpoint window so that it can be demo'd.
1425 Tue Aug 1 11:44:53 1995 J.T. Conklin <jtc@rtl.cygnus.com>
1427 * gdbtk.c: Include "gdb_string.h" instead of <string.h>.
1429 Tue Jun 20 10:19:40 1995 Stu Grossman (grossman@cygnus.com)
1431 * gdbtk.c: Add functions Tcl_Malloc, Tcl_Realloc, and Tcl_Free.
1433 * gdbtk.tcl (add_breakpoint_frame): Add more fields.
1434 * (create_file_win create_asm_win build_framework): Create null
1435 bindings for meta keys to keep window from dropping down to
1436 insertion point when meta is pressed by itself. New bindings:
1437 Up/Down - Scroll up/down one line at a time
1438 Next/Prior - Scroll up/down one page at a time
1439 Home/End - Warp to current pc/end of file
1440 * (build_framework): Turn on breakpoint menu.
1441 * (create_command_window): Implement tab completion. Add binding
1442 for ^C to stop target.
1444 Fri May 19 06:15:40 1995 Jim Kingdon <kingdon@deneb.cygnus.com>
1446 * gdbtk.c: Conditionalize use of stdarg rather than varargs on
1447 ANSI_PROTOTYPES not __STDC__; it must match the definition of
1450 Thu May 18 15:58:46 1995 J.T. Conklin <jtc@rtl.cygnus.com>
1452 * gdbtk.c (gdbtk_query): Use stdarg.h macros when compiling with
1455 Sat Apr 15 13:52:24 1995 Stan Shebs <shebs@andros.cygnus.com>
1457 * gdbtk.c (gdb_disassemble): Read from inferior if connected
1458 to a VxWorks target.
1460 Fri Apr 14 10:18:20 1995 Stu Grossman (grossman@cygnus.com)
1462 * README.GDBTK: New file. Contains the obvious.
1464 Tue Apr 11 11:07:12 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1466 * gdbtk.c (gdbtk_init): If SIOCSPGRP is not available, but
1467 F_SETOWN is, use that.
1469 Thu Apr 6 17:00:46 1995 Michael Meissner <meissner@tiktok.cygnus.com>
1471 * Makefile.in (X11_INCLUDES): Define as empty.
1472 (X11_CFLAGS): Define as including $(X11_INCLUDES).
1473 (X11_LIB_SWITCHES): Define as empty.
1474 (X11_LIBS): Define as -lX11.
1476 * configure.in (enable_gdbtk): If gdbtk, support the --x-includes
1477 and --x-libraries switches, setting the X11_INCLUDES and
1478 X11_LIB_SWITCHES respectively. Instead of using a hardcoded -lX11
1479 in ENABLE_CLIBS, use the X11_LIB_SWITCHES and X11_LIBS variables.
1481 * gdbtk.c (gdbtk_init): If SIOCSPGRP is not available, don't use
1482 it. This means that the stop button doesn't work, but is better
1485 Wed Mar 29 17:09:29 1995 Stu Grossman (grossman@cygnus.com)
1487 * Makefile.in (gdbtk.o): Use X11_CFLAGS to provide alternate
1488 locations (per-host) for X11 include files.
1489 * config/pa/hppahpux.mh (XM_CLIBS): Add -L/usr/lib/X11R5 to force
1491 (X11_CFLAGS): Add this to indicate the locs
1492 of the R5 include files.
1494 Wed Mar 8 16:12:21 1995 Stu Grossman (grossman@cygnus.com)
1496 * gdbtk.c (gdb_get_breakpoint_info): Return error if breakpoint
1497 type is not bp_breakpoint.
1499 Tue Feb 14 17:16:41 1995 Stu Grossman (grossman@cygnus.com)
1502 * gdbtk.c: General cleanups, get rid of unused variables. Redo
1503 handling of stdout/stderr to just return output as the result of
1504 the tcl command that caused the output. Cleanup -Wall stuff.
1505 * (breakpoint_notify): Now returns just action and breakpoint
1507 * (gdb_get_breakpoint_list): New routine. Does the obvious.
1508 * (gdb_get_breakpoint_info): Mostly derived from the old
1509 breakpoint_notify, but returns lots more info.
1510 * (dsprintf_append_element): Helper routine, works like printf,
1511 but appends a tcl element onto the specified DString. Good for
1512 building up lists as return values.
1513 * (gdbtk_enable/disable_breakpoint): Go away. Replaced with
1514 gdbtk_modify_breakpoint.
1515 * (*many routines*): Use new result protocol.
1516 * (call_wrapper): Make sure that recursive calls don't trash results.
1517 * gdbtk.tcl: New windows, autocmd, and breakpoints.
1518 * (gdbtk_tcl_fputs): Don't use $current_output_win redirection
1519 anymore. It's not needed (in fact, this routine may not be needed
1521 * (gdbtk_tcl_breakpoint): Change to reflect new breakpoint
1522 notification protocol.
1523 * (gdbtk_tcl_busy gdbtk_tcl_idle): Straighten out buttons, remove
1525 * (interactive_cmd): Use this wrapper around button invocations
1526 of many commands. This will catch errors and put the results into
1527 the command window. It also updates all the other windows.
1528 * Also, change reliefs of most things to sunken. This actually
1530 * (create_file_win): Fix margin binding to allow breakpoints to
1532 * (create_asm_win): Use return value of gdb_disassemble instead
1533 of implicit I/O to the command window.
1534 * (create_command_window): Use new result protocol to get output
1537 Sun Feb 5 20:32:44 1995 Jim Kingdon (kingdon@lioth.cygnus.com)
1539 * gdbtk.c (gdb_disassemble): Deference pointer to function before
1540 calling it (pre-ANSI compilers generally require this).
1542 Fri Feb 3 11:19:20 1995 Stu Grossman (grossman@cygnus.com)
1544 * gdbtk.c (gdb_disassemble): Get rid of
1545 dis_asm_read_memory_hook. We can now call the disassemblers
1546 directly and have no need for this hook anymore.
1548 Mon Jan 30 17:34:24 1995 Stu Grossman (grossman@cygnus.com)
1550 * gdbtk.tcl (create_file_win): Disable old popup menu for source
1553 Wed Jan 25 18:23:46 1995 Stu Grossman (grossman@cygnus.com)
1555 * gdbtk.c (gdbtk_init): Prevent segfault when gdbtk.tcl can't be
1557 * gdbtk.tcl: Initialize expr_update_list() to prevent errors when
1558 popping up expression window for the first time.
1560 Tue Jan 24 12:10:28 1995 Stu Grossman (grossman@cygnus.com)
1562 * gdbtk.tcl (create_registers_window): Work around a radiobutton
1563 widget bug to make Options|Natural button work.
1565 * gdbtk.c (gdb_disassemble): Fix problem with source+assembly and
1566 g++ caused by out-of-order pc's.
1567 * gdbtk.tcl (files_command): Remove duplicate file names. Also,
1570 Mon Jan 23 17:21:09 1995 Stu Grossman (grossman@cygnus.com)
1572 * gdbtk.tcl: Take .gdbtkinit if it exists. Makes gdbtk match the
1575 Thu Jan 12 15:02:40 1995 Stu Grossman (grossman@cygnus.com)
1577 * gdbtk.c, gdbtk.tcl: Update/add copyright.
1578 * gdbtk.tcl (build_framework): Several fixes for filespec widget,
1579 including dismiss button, and better error handling.
1580 * (create_command_win): Bind button 2 to retrieve selection.
1582 Wed Jan 11 17:06:55 1995 Stu Grossman (grossman@cygnus.com)
1584 * gdbtk.tcl: Add button to control mixed source disassembly.
1585 Use text widgets in expr window. The give me more control over
1587 Add auto-updating of exprs in expression window.
1588 Handle expressions out of scope a bit better.
1589 Make selected window pop up to the top when invoked via the
1591 Make copyright message have raised relief.
1593 * gdbtk.c (gdbtk_init): Improve handling for errors in gdbtk.tcl
1596 Thu Jan 5 17:38:29 1995 Stu Grossman (grossman@cygnus.com)
1598 * gdbtk.c (finish_saving_output): Don't do anything if not saving
1600 * (breakpoint_notify): Don't send null filename to tcl.
1601 * (gdb_eval): New tcl command to eval an expression.
1602 * (gdb_disassemble): New tcl command to do disassembly. This
1603 allows tcl code to choose between exec file and target memeory,
1604 and can also do mixed source and assembly.
1605 * (gdbtk_init): Move reading of gdbtk.tcl to the end to make sure
1606 that more of the environment is set up. Also, create link between
1607 gdb and tcl vars disassemble{-_}from{-_}exec.
1609 * gdbtk.tcl: New expression window support.
1610 * Make assembly window be 80 columns wide.
1611 * Use new disassembly method. Add menu items to select
1612 disassembly from exec file or target.
1613 * Change View menubar item to Options.
1615 * Get rid of Stack, Breakpoints, Signals, and Variables Windows,
1616 since they don't exist yet.
1618 * Pop up a copyright window on startup.
1620 Wed Jan 4 19:49:10 1995 Stan Shebs <shebs@andros.cygnus.com>
1622 * gdbtk.tcl (build_framework): Add standard commands menu, more
1623 windows to standard windows menu.
1624 (not_implemented_yet): Clarify message.
1626 Fri Dec 30 15:49:00 1994 Stan Shebs <shebs@andros.cygnus.com>
1628 * gdbtk.tcl (FSBox): New proc, File Selection Box code from exmh.
1629 (not_implemented_yet): New proc.
1630 (build_framework): Add various file commands to file menu.
1632 Fri Dec 23 16:18:50 1994 Stu Grossman (grossman@cygnus.com)
1634 * gdbtk.c (gdbtk_wait gdbtk_init): Portability improvements for
1637 Mon Dec 19 09:55:47 1994 Stu Grossman (grossman@cygnus.com)
1639 * gdbtk.tcl (update_assembly): Force update to make sure that pc
1640 is visible when creating new assembly windows.
1642 Sun Dec 18 23:31:20 1994 Stu Grossman (grossman@cygnus.com)
1644 * gdbtk.c (gdbtk_wait gdbtk_init): Use different method of
1645 enabling I/O interrupts for SVR4 (streams).
1646 * (start_saving_output save_output get_saved_output
1647 finish_saving_output flush_holdbuf gdbtk_flush gdbtk_fputs
1649 Totally revamp to use TCLs dynamic string functions. Also, quote
1650 all data passed back to TCL to prevent errors with unmatched
1651 braces, odd characters, etc... This fixes several wierd problems
1652 with outputting strings containing unmatched braces.
1653 * (breakpoint_notify gdb_loc): Use long hex format to output
1654 addresses of breakpoints and PCs. This fixes some Alpha problems.
1655 * (breakpoint_notify): Add stream arg to call to gdbtk_fputs.
1656 * (gdb_listfiles): Also, go through the symtabs when looking for
1657 files. This makes xcoff work (sort of), but probably breaks
1659 * (gdb_stop): Return TCL_OK instead of nothing. This fixes odd
1660 TCL errors when hitting stop button.
1661 * (tk_command): Don't pass interp->result on to Tcl_{Var}Eval, as
1662 that will trash the result. strdup the result instead and pass
1663 that on. Improve error handling as well.
1665 * gdbtk.tcl (gdbtk_tcl_flush): Use global def of
1666 current_output_win. Makes flushing actually work!
1667 * (asm_win_name create_asm_win update_assembly): Bunch of fixes
1668 to make assembly windows stop flashing when loading a new file.
1669 * (gdbtk_tcl_busy gdbtk_tcl_idle): Use catch to prevent gdb_cmd
1670 errors from losing control.
1671 * (create_source_window): Add source file selection to View menu.
1672 * (create_command_window (<Key-Return> binding): Quote text fed
1673 into gdb_cmd to prevent eval errors.
1675 Thu Dec 15 16:40:10 1994 Stu Grossman (grossman@cygnus.com)
1677 * gdbtk.c: Improve mechanism for capturing output values.
1678 (full_filename): Remove.
1679 (gdb_cmd call_wrapper gdbtk_init): Protect all calls from tcl land
1680 with call_wrapper. This prevents longjmps (usually via error())
1681 from jumping out of tcl/tk and leaving things in an indeterminate
1683 (gdbtk_fputs): Differentiate stdout from stderr when passing text
1685 * gdbtk.tcl: New view option to disable line numbers. Put catch
1686 around most uses of gdb_cmd. Add update button to reg config
1687 window. Stop doing immediate updates when selecting registers.
1688 Change register view values into checkbuttons.
1690 Mon Dec 12 16:59:29 1994 Stu Grossman (grossman@cygnus.com)
1692 * gdbtk.tcl (reg_config_menu create_registers_window
1693 recompute_reg_display_list): Use array instead of individual vars
1694 for register display list.
1695 * (recompute_reg_display_list update_registers): Fix bug with not
1696 displaying all registers.
1698 Mon Dec 12 12:22:21 1994 Stu Grossman (grossman@cygnus.com)
1700 * gdbtk.c: New tcl commands: gdb_fetch_registers,
1701 gdb_changed_register_list, and gdb_regnames.
1702 * gdbtk.tcl: Use monochrome color model for now.
1703 * (delete_breakpoint_tag create_file_win): Add breakdot support.
1704 * (create_file_win create_asm_win update_listing build_framework
1705 create_source_window create_command_window): Re-org window
1706 creation to give all windows consistent look and feel.
1707 * (update_listing update_asm): Change pc pointer to '->'.
1708 * (registers_command reg_config_menu create_registers_window
1709 populate_reg_window update_registers): Revamp register window.
1710 Allow selection of registers to be displayed. Highlight changed
1713 Mon Nov 28 09:17:20 1994 Stu Grossman (grossman@cygnus.com)
1715 * gdbtk.tcl (build_framework): Fix bug with setting window titles.
1717 * gdbtk.tcl (build_framework): Add "Report bug" to help menu.
1719 * gdbtk.tcl: Re-arrange windows using new, consistent layout. Clean
1720 up lots of code and centralize framework initialization.
1722 Wed Nov 16 15:28:29 1994 Rob Savoye (rob@cygnus.com)
1724 * Makefile.in: Fix the test for installing gdbtk.
1726 Mon Nov 14 08:51:29 1994 Stu Grossman (grossman@cygnus.com)
1728 * Makefile.in: Install gdbtk.tcl.
1729 * configure.in: Add ENABLE_GDBTK flag.
1730 * gdbtk.c (gdb_sourcelines): Returns list of source lines
1731 containing code. (gdb_regnames): Returns list of register names.
1733 Thu Nov 3 14:25:24 1994 Stu Grossman (grossman@cygnus.com)
1735 * gdbtk.c (gdb_stop): Switch to target_stop().
1737 Tue Nov 1 16:41:12 1994 Stu Grossman (grossman@cygnus.com)
1739 * Makefile.in: Use $(objdir)/tcl and $(objdir)/tk if they are
1741 * configure.in (ENABLE_CLIBS): Use $(TCL) and $(TK) instead of
1743 * gdbtk.c: Get rid of lots of unnecessary #includes.
1744 * (gdbtk_init): Use ConnectionNumber macro instead of referencing
1745 Display structure directly.
1746 * gdbtk.tcl: Change exit button to quit button.
1748 Wed Oct 26 15:41:07 1994 Stu Grossman (grossman@cygnus.com)
1750 * gdbtk.c: Change sense and name of no_windows variable. Now
1751 called use_windows, and defaults to off (for compatibility).
1753 Thu Oct 20 17:35:45 1994 Stu Grossman (grossman@cygnus.com)
1755 * gdbtk.c (gdb_cmd): Force GUI into idle mode when errors occur.
1756 * (gdb_stop): New tcl command to stop the target process.
1757 * (x_event, gdbtk_wait): Allow GUI to interrupt gdb out of target
1759 * (gdbtk_call_command): Wrapper around command processing to
1760 alert GUI of target state changes.
1761 * (gdbtk_init): Get the fd of X server for doing async
1762 notification of X events (via x_event). Setup new hooks.
1763 * gdbtk.tcl: Add scrollbars to assembly and command windows.
1764 * Change window foreground & background colors.
1765 * Create margin tag for breakpoints in source and assembly windows.
1766 * Add new routines to be invoked when target state changes to/from
1768 * Add start of expression window.
1769 * Change bindings of mouse button 1 in assembly and source window
1770 to just set or clear breakpoints when in the margin tag.
1771 * Change shape of register window to be more vertical to better
1772 reflect its contents.
1774 * Cleanup some code around command window bindings.
1776 Sat Sep 17 17:05:14 1994 Stu Grossman (grossman@cygnus.com)
1778 * gdbtk.tcl: Let ^U delete lines in the command window.
1780 Fri Sep 16 15:40:34 1994 Stu Grossman (grossman@cygnus.com)
1782 * gdbtk.c: Replace calls to full_filename with symtab_to_filename.
1783 * gdbtk.tcl: New routine pc_to_line replaces in line code. New
1784 routine decr replaces in line code.
1785 * (create_file_win): Use catch to handle open failures more
1786 elegantly. Also, create special window to display file open
1787 failure message. Move opening of file prior to creation of text
1789 * (create_asm_win): Add PC as argument. We now base disassembly
1790 on PC instead of function name, since function names can be
1791 ambiguous (usually seen with shared libs). Also, use catch to
1792 simplify code where we don't care about failures.
1794 Wed Sep 14 00:55:26 1994 Stu Grossman (grossman@cygnus.com)
1796 * gdbtk.tcl: Add ref counts to breakpoint tags.
1797 * Put quotes around function name in disassemble command to better
1798 handle assembler names containing `.'.
1799 * Make pclist element 0 be filler to avoid off-by-one problem with
1801 * Set names of top-level windows.
1802 * Add register display window.
1803 * Add PC to label of assembly window.
1805 Tue Sep 13 08:59:04 1994 Stu Grossman (grossman@cygnus.com)
1807 * gdbtk.c (gdbtk_flush gdbtk_fputs): Buffer up output to make
1808 disassembly more efficient.
1809 * (breakpoint_notify): Include pc in gdbtk_tcl_breakpoint
1811 * (gdb_loc): Include pc in return value. Also, return function
1812 name if arg was specified.
1813 * (gdb_cmd_stub): Call gdb_flush to drain internal GDB buffers
1814 after command completes.
1815 * (gdbtk_init): Improve error handling.
1817 * gdbtk.tcl: Add lots of comments. Clean up code.
1818 * (gdbtk_tcl_fputs): Make output window redirectable.
1819 * Add assembly window, and breapoint support.
1820 * Make button 1 in margin toggle breakpoints.
1821 * Use stippling to indicate breakpoint disabling.
1823 Fri Sep 2 19:11:40 1994 Stu Grossman (grossman@cygnus.com)
1825 * configure.in: Don't symlink to gdbtk.tcl if it's already there.
1827 Thu Jul 28 14:37:36 1994 Stu Grossman (grossman@cygnus.com)
1830 * Makefile.in: Add rule for gdbtk.o.
1831 * configure.in: Add support for --enable-gdbtk.
1832 * gdbtk.c: New file. Contains support routines for TK interface.
1833 * gdbtk.tcl: New file. Implements GUI policy.
1840 version-control: never