summaryrefslogtreecommitdiff
path: root/docs/debugging.txt
diff options
context:
space:
mode:
authorOwen Taylor <owt1@cornell.edu>1998-02-19 06:21:27 +0000
committerOwen Taylor <otaylor@src.gnome.org>1998-02-19 06:21:27 +0000
commitfc7e845c8f4d3eb4481f803eae3f9c7f8d75a1d9 (patch)
tree888ffee4d7f12e1ed7aabf29fe67d80de3849268 /docs/debugging.txt
parent3d4cc2f904cd5d0dd1acfa6938c5577264fab524 (diff)
downloadgtk+-fc7e845c8f4d3eb4481f803eae3f9c7f8d75a1d9.tar.gz
configure.in gdk/gdk.[ch] gdk/gdkcc.c gdk/gdkglobals.c
Thu Feb 19 01:11:48 1998 Owen Taylor <owt1@cornell.edu> * configure.in gdk/gdk.[ch] gdk/gdkcc.c gdk/gdkglobals.c gdk/gdkinputcommon.h gdk/gdkprivate.h gdk/gdkvisual.c glib/configure.in glib/glib.h glib/gutils.c gtk/Makefile.am gtk/gtkmain.c gtk/gtkobject.[ch] gtk/gtkdebug.h docs/debugging.txt New system for controlling debugging: * --enable-debug=[no/yes/minimum] * G_DISABLE_ASSERT and G_DISABLE_CHECKS for glib * G_NO_CHECK_CASTS to control cast checking * G_ENABLE_DEBUG enables run time checking which controls: Object tracing Showing events Miscellaneous g_print's in GDK And is controlled by --gdk-debug/GDK_DEBUG, --gtk-debug/GTK_DEBUG * debug_level and show_events are gone from GTK See docs/debugging.txt for details. And some fixups to the configure.in's so '-g' can be overriden on the command line for --enable-debug
Diffstat (limited to 'docs/debugging.txt')
-rw-r--r--docs/debugging.txt83
1 files changed, 83 insertions, 0 deletions
diff --git a/docs/debugging.txt b/docs/debugging.txt
new file mode 100644
index 0000000000..1313fcc061
--- /dev/null
+++ b/docs/debugging.txt
@@ -0,0 +1,83 @@
+The GLIB, GDK, and GTK libraries have extensive support for
+debugging the library and your programs.
+
+The amount of debugging being done can be determined both
+at run time and compile time.
+
+COMPILE TIME OPTIONS
+--------------------
+
+At compile time, the amount of debugging support included is
+determined by four macros:
+
+G_ENABLE_DEBUG
+ If set, enable support for runtime checking.
+
+G_DISABLE_ASSERT
+ If set, disable g_assert macros
+
+G_DISABLE_CHECKS
+ If set, disable the g_return_if_fail and g_return_val_if_fail macros
+
+GTK_NO_CHECK_CASTS
+ If set, don't check casts between different object types
+
+
+Whether these macros are defined is controlled at configuration
+time by the --enable-debug option.
+
+--enable-debug=minimum [default]
+ Enable only inexpensive sanity checking
+ sets GTK_NO_CHECK_CASTS
+
+--enable-debug=yes
+ Enable all debugging support
+ sets G_ENABLE_DEBUG
+
+--enable-debug=no (or --disable-debug)
+ Disable all debugging support (fastest)
+ sets G_DISABLE_ASSERT, G_DISABLE_CHECKS, and GTK_NO_CHECK_CASTS
+
+
+RUN TIME OPTIONS
+----------------
+
+At run time, if GTK+ was compiled with debugging enabled,
+different types of debugging information can be printed
+out by setting the --gtk-debug and --gdk-debug command line
+options, or the GTK_DEBUG and GDK_DEBUG environment
+variables. (The command line options override the environment
+variables)
+
+Each of these can either be the special value ALL,
+or a sequence of ':' separated options. (Note, case is
+significant)
+
+As noted below, some of these are useful in application
+debugging, but most are only interested to those debugging
+the libraries
+
+ GTK_DEBUG
+ ---------
+
+ Application relevant options:
+
+ 'objects' - Trace the creation and destruction of objects, print
+ out a summary at program termination
+
+ Options only interesting to library maintainers:
+
+ GDK_DEBUG
+ ---------
+
+ Application relevant options:
+
+ 'events' - Show all events received by GTK
+
+ Options only interesting to library maintainers:
+
+ 'misc' - Miscellaneous information
+ 'dnd' - Information about drag-and-drop
+ 'color-context' - Information about the internal workings of
+ GdkColorContext
+ 'xim' - Information about X Input Method support