* gdbgui.texinfo: New file, manual for GUI (gdbtk) users.
authorStan Shebs <shebs@codesourcery.com>
Sat, 7 Jan 1995 01:20:09 +0000 (01:20 +0000)
committerStan Shebs <shebs@codesourcery.com>
Sat, 7 Jan 1995 01:20:09 +0000 (01:20 +0000)
* Makefile.in (gdbgui.dvi, gdbgui.info): New actions.

gdb/doc/ChangeLog
gdb/doc/Makefile.in
gdb/doc/gdbgui.texinfo [new file with mode: 0644]

index e9e8f65..7af9c45 100644 (file)
@@ -1,3 +1,10 @@
+start-sanitize-gdbtk
+Fri Jan  6 17:17:28 1995  Stan Shebs  <shebs@andros.cygnus.com>
+
+       * gdbgui.texinfo: New file, manual for GUI (gdbtk) users.
+       * Makefile.in (gdbgui.dvi, gdbgui.info): New actions.
+end-sanitize-gdbtk
+
 Sun Sep  4 16:47:21 1994  Stan Shebs  (shebs@andros.cygnus.com)
 
        * gdbint.texinfo: Removed mentions of some incorrectly placed and
index ff6950b..9e95fed 100644 (file)
@@ -296,6 +296,22 @@ gdb.mm: $(SFILES_LOCAL) links2roff rluser.texinfo inc-hist.texi
        sed -e 's/---/\\(em/g' \
        >gdb.mm 
 
+# start-sanitize-gdbtk
+# GDB GUI MANUAL: TeX dvi file
+gdbgui.dvi : gdbgui.texinfo ${SFILES_DOC}
+       $(SET_TEXINPUTS) $(TEX) gdbgui.texinfo
+       $(TEXINDEX) gdbgui.??
+       $(SET_TEXINPUTS) $(TEX) gdbgui.texinfo
+       rm -f gdbgui.?? gdbgui.aux gdbgui.cps gdbgui.fns gdbgui.kys \
+               gdbgui.log gdbgui.pgs gdbgui.toc gdbgui.tps gdbgui.vrs
+
+# GDB GUI MANUAL: info file
+gdb-gui: gdbgui.info
+
+gdbgui.info: gdbgui.texinfo ${SFILES_DOC}
+       $(MAKEINFO) -o gdbgui.info $(srcdir)/gdbgui.texinfo
+# end-sanitize-gdbtk
+
 # GDB INTERNALS MANUAL: TeX dvi file
 gdbint.dvi : gdbint.texinfo
        $(SET_TEXINPUTS) $(TEX) gdbint.texinfo
diff --git a/gdb/doc/gdbgui.texinfo b/gdb/doc/gdbgui.texinfo
new file mode 100644 (file)
index 0000000..1b7b5d3
--- /dev/null
@@ -0,0 +1,411 @@
+\input texinfo      @c -*-texinfo-*-
+@c Copyright 1988 1989 1990 1991 1992 1993 1994 Free Software Foundation, Inc.
+@c
+@c %**start of header 
+@c makeinfo ignores cmds prev to setfilename, so its arg cannot make use
+@c of @set vars.  However, you can override filename with makeinfo -o.
+@setfilename gdb.info
+@c
+@include gdb-cfg.texi
+@c
+@ifset GENERIC
+@settitle Using the Graphical Interface to @value{GDBN}
+@end ifset
+@ifclear GENERIC
+@settitle Using the Graphical Interface to @value{GDBN} (@value{TARGET})
+@end ifclear
+@setchapternewpage odd
+@c %**end of header
+
+@c Since this interface is so new, there is much missing still.
+@c Desired but unimplemented features are commented out.
+
+@iftex
+@c @smallbook
+@c @cropmarks
+@end iftex
+
+@finalout
+@syncodeindex ky cp
+
+@c readline appendices use @vindex
+@syncodeindex vr cp
+
+@c !!set GDB manual's edition---not the same as GDB version!
+@set EDITION 4.13
+
+@c !!set GDB manual's revision date
+@set DATE January 1995
+
+@c THIS MANUAL REQUIRES TEXINFO-2 macros and info-makers to format properly.
+
+@ifinfo
+@c This is a dir.info fragment to support semi-automated addition of
+@c manuals to an info tree.  zoo@cygnus.com is developing this facility.
+@format
+START-INFO-DIR-ENTRY
+* Gdb: (gdb).                     The GNU debugger.
+END-INFO-DIR-ENTRY
+@end format
+@end ifinfo
+@c
+@c
+@ifinfo
+This file documents the graphical interface to the GNU debugger @value{GDBN}.
+
+
+This is Edition @value{EDITION}, @value{DATE}, 
+of @cite{Using the Graphical Interface to @value{GDBN}}
+for GDB Version @value{GDBVN}.
+
+Copyright (C) 1994, 1995 Free Software Foundation, Inc.
+
+Permission is granted to make and distribute verbatim copies of
+this manual provided the copyright notice and this permission notice
+are preserved on all copies.
+
+@ignore
+Permission is granted to process this file through TeX and print the
+results, provided the printed document carries copying permission
+notice identical to this one except for the removal of this paragraph
+(this paragraph not being relevant to the printed manual).
+
+@end ignore
+Permission is granted to copy and distribute modified versions of this
+manual under the conditions for verbatim copying, provided also that the
+entire resulting derived work is distributed under the terms of a
+permission notice identical to this one.
+
+Permission is granted to copy and distribute translations of this manual
+into another language, under the above conditions for modified versions.
+@end ifinfo
+
+@titlepage
+@title Using the Graphical Interface to @value{GDBN}
+@subtitle The GNU Source-Level Debugger
+@ifclear GENERIC
+@subtitle (@value{TARGET})
+@end ifclear
+@sp 1
+@subtitle Edition @value{EDITION}, for @value{GDBN} version @value{GDBVN}
+@subtitle @value{DATE}
+@author Stanley T. Shebs
+@page
+@tex
+{\parskip=0pt
+\hfill (Send bugs and comments on @value{GDBN} to bug-gdb\@prep.ai.mit.edu.)\par
+\hfill {\it Debugging with @value{GDBN}}\par
+\hfill \TeX{}info \texinfoversion\par
+\hfill pesch\@cygnus.com\par
+}
+@end tex
+
+@vskip 0pt plus 1filll
+Copyright @copyright{} 1994, 1995 Free Software Foundation, Inc. 
+@sp 2
+
+Permission is granted to make and distribute verbatim copies of
+this manual provided the copyright notice and this permission notice
+are preserved on all copies.
+
+Permission is granted to copy and distribute modified versions of this
+manual under the conditions for verbatim copying, provided also that the
+entire resulting derived work is distributed under the terms of a
+permission notice identical to this one.
+
+Permission is granted to copy and distribute translations of this manual
+into another language, under the above conditions for modified versions.
+@end titlepage
+@page
+
+@ifinfo
+@node Top
+@top Using the Graphical Interface to @value{GDBN}
+@end ifinfo
+
+This file describes a graphical interface to @value{GDBN},
+the GNU symbolic debugger.
+
+@node Invocation
+@chapter Starting up GUI @value{GDBN}
+
+If @value{GDBN} has been configured to use the graphical interface,
+then you will get the interface automatically upon startup.
+
+When running as a Unix program and using the X11-based interface,
+you must of course be using an X server and/or workstation,
+and your @code{DISPLAY} environment variable must be set correctly.
+If either of these is not true, then @value{GDBN} will still start up,
+but will use only the traditional command interface.
+
+The exact layout and appearance of the windows will depend on the host
+system type.  For instance, GDB under Windows will display its windows
+inside a larger window, while under Unix/X, each window is a separate
+toplevel window.  However, general behavior and layout is consistent
+across all platforms; omissions or restrictions on particular platforms,
+if not documented as unavoidable, should be considered bugs and
+reported.
+
+All GDB windows have a common structure.  Each window has an associated
+menu bar, which may be at the top of the window or perhaps elsewhere.
+Some of the menus and menu items in the menu bar are common to all GDB
+windows, while others are specific to particular types of windows.
+Below the menu bar is the working data area of the window.  If the data
+is too large to display all at once, the data area will have scroll bars
+on its right and bottom sides.  Below the data area are two optional
+features; a status/data line, and a button box.
+
+@section Menus
+
+@subsection File Menu
+
+The standard file menu provides operations that affect the overall state
+of GDB, mainly file operations, but other things as well.
+
+About GDB...
+
+Displays the startup window for GDB.
+
+File...
+
+Lets you set the combined executable and symbol file that GDB will use.
+(Like "file".)
+
+Target...
+
+Brings up a dialog that you can use to connect GDB to a target program.
+The dialog is described in more depth later.
+(Like "target".)
+
+Edit...
+
+Starts up an editor to modify the source file being displayed.
+
+Exec File...
+
+Lets you set the executable file that GDB will use.
+(Like "exec-file".)
+
+Symbol File...
+
+Lets you set the symbol file that GDB will use.
+(Like "symbol-file".)
+
+Add Symbol File...
+
+Lets you add additional symbol files.
+(Like "add-symbol-file".)
+
+Core File...
+
+Lets you set the core file that GDB will use.
+(Like "core-file".)
+
+Shared Libraries...
+
+(Like "sharedlibrary".)
+
+Quit
+
+quits GDB.
+(Like @samp{quit}.)
+
+
+@c @subsection Commands Menu
+
+@c The commands menu consists of items that let you run and control the program being
+@c debugged.
+@c 
+@c Run
+@c 
+@c Step
+@c 
+@c Next
+@c 
+@c Finish
+@c 
+@c Stepi
+@c 
+@c Nexti
+
+@subsection Windows Menu
+
+The windows menu allows access to all the windows available in GDB.
+The first part of the menu lists all of the predefined individual windows.
+If the window exists already, its item will be marked as such;
+selecting the item will cause the window to be put in front if it is
+obscured.  If it does not exist, then it will be created.
+
+The second part of the menu lists additional windows that you may have
+created, such as source windows or variable displays.
+
+Command
+---
+Source
+Assembly
+---
+Registers
+Variables
+---
+Files
+@c ---
+@c <extra windows>
+
+@subsection View Menu
+
+All windows have a view menu, but its contents are highly specific to
+window type.  For instance, a source window will have a view menu item
+to control the display of line numbers, but a register window will instead
+have an option to choose the radix in which to display register contents.
+You can find the full description of view options with each window type.
+
+@subsection Help Menu
+
+The help menu includes access to GDB's online help.
+
+@section Windows
+
+@subsection Command Window
+
+The command window provides access to the standard GDB command
+interpreter.  In nearly all cases, commands typed into this window
+will behave exactly as for a non-windowing GDB. 
+
+Note that not all changes to GDB will be reflected in this window.  For instance,
+if you were to type a "step" command, then click on the "step" menu item in
+the source window, then go back, and type another "step" command, the command
+buffer will only show two steps, when you have actually done three.  GDB will
+put a "..." into the command buffer when operations in other windows are done,
+as a reminder that the command buffer is incomplete.
+
+@c Also note that as a side effect of having the interface and possibly an
+@c associated scripting language built in, additional commands may be
+@c available.  For instance, if tcl is in GDB, the command ``tcl <tcl code>''
+@c will be available.
+
+The command window has no status line or button box.
+
+@subsection Files Window
+
+The files window lists all of the files that were used to build the
+executable.
+
+Clicking on the xxx in the left margin expands/contracts the display of
+included files and symbols defined by the file.
+
+The View menu for this window includes the following items:
+Name/Full Pathname
+@c Sort by Name
+@c Sort by Section&Offset
+@c Show All Included Files
+@c Included File Indentation...
+
+@subsection Source Window
+
+A source window displays a single file of source code.
+
+The left margin includes an indicator for the current PC, breakpoints and potential breakpoints,
+and (optionally) line numbers.
+
+The View menu for this window includes the following items:
+Show Line Numbers
+Show Breakdots
+@c Jump to PC (if pc changes, scroll back so PC is centered)
+@c Tab... (set tabbing)
+
+@section Extensions
+
+[description of gdbtk details]
+
+@c 
+@c GDBTK Interface Design
+@c 
+@c This is the working document describing the design of the GDBTK
+@c interface.  Note that overall layout applies only to the default setup;
+@c it is expected that debugger users will be able to customize extensively.
+@c 
+@c Default Startup
+@c 
+@c One source window, shows source as in "list main", does *not* set a
+@c break at main or run or anything.  No current PC indicator, only put
+@c in when something runs.
+@c 
+@c Source Window
+@c 
+@c For native, "run" button is always the same, for cross, it's actually
+@c a "target" button that pops up appropriate dialog to get connected.
+@c Once remote target is active, change button to "run".
+@c 
+@c Be able to toggle assembly interleaved between source.
+@c 
+@c Command Window
+@c 
+@c Is an *optional* window.
+@c 
+@c Behavior mimics command-line GDB running in an Emacs buffer as much
+@c as possible.
+@c 
+@c Assembly Window
+@c 
+@c Be able to toggle source interleaved between assembly.
+@c 
+@c Target Info Window
+@c 
+@c Contents similar to "info target".
+@c 
+@c Should expand into process and thread info also.
+@c 
+@c File Info Window
+@c 
+@c Contents similar to "info files".
+@c 
+@c Include data shown in "info sources" as well as "info files".
+@c 
+@c Register Info Window
+@c 
+@c Contents similar to "info registers".
+@c 
+@c Add view option(s) for classes of registers.
+@c 
+@c Stack Info Window
+@c 
+@c Combines backtrace, frame, and local var displays.
+@c 
+@c Signals Dialog
+@c 
+@c Includes all signals whose handling may be controlled, plus
+@c checkboxes for what to do with each.
+@c 
+@c Settings Dialog(s)
+@c 
+@c Include all variables that can be "set" and "show"n.
+@c 
+@c General Principles
+@c 
+@c All windows should have a menu that allows access to other windows.
+@c Selection of item either brings up for first time or brings to front.
+@c 
+@c All windows should have a "view" menu that controls formatting
+@c options for that window.
+@c 
+@c Windows should usually be scrollable.  Windows that display largish
+@c horizontal things should be horizontal and vertical scrollbars.
+@c 
+@c To do standard modification, add commands or tcl code to .gdbtkinit.
+@c 
+@c Be able to record window positions so they come up in the same way
+@c the next time.  Could scribble on .gdbtkinit perhaps, or else an
+@c aux file that can be sourced by .gdbtkinit.
+
+@section How to Build
+
+If GDB is configured with --enable-gdbtk, then upon startup, it will
+open windows.
+
+@node Index
+@unnumbered Index
+
+@printindex cp
+
+@contents
+@bye