Overhaul the mLib debugging options.
authormdw <mdw>
Sun, 4 Feb 2001 01:18:52 +0000 (01:18 +0000)
committermdw <mdw>
Sun, 4 Feb 2001 01:18:52 +0000 (01:18 +0000)
aclocal.glob

index dfbf692..d899953 100644 (file)
@@ -1,6 +1,6 @@
 dnl -*-fundamental-*-                                    *@--GLOB-HEADER--@*
 dnl
-dnl $Id: aclocal.glob,v 1.11 2001/01/20 12:03:08 mdw Exp $
+dnl $Id: aclocal.glob,v 1.12 2001/02/04 01:18:52 mdw Exp $
 dnl
 dnl Common library of autoconf macros
 dnl
@@ -28,6 +28,9 @@ dnl Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 dnl----- Revision history ---------------------------------------------------
 dnl
 dnl $Log: aclocal.glob,v $
+dnl Revision 1.12  2001/02/04 01:18:52  mdw
+dnl Overhaul the mLib debugging options.
+dnl
 dnl Revision 1.11  2001/01/20 12:03:08  mdw
 dnl Remove redundant stuff.
 dnl
@@ -65,7 +68,7 @@ dnl
 
 dnl----- Common files distribution --------------------------- *@--NOTICE--@*
 dnl
-dnl $Id: aclocal.glob,v 1.11 2001/01/20 12:03:08 mdw Exp $
+dnl $Id: aclocal.glob,v 1.12 2001/02/04 01:18:52 mdw Exp $
 
 dnl --- *@-AM_PROG_CC_STDC-@* ---
 dnl
@@ -1460,16 +1463,15 @@ dnl Synopsis:   mdw_OPT_NDEBUG
 dnl
 dnl Arguments: ---
 dnl
-dnl Use:       Turns off the `NDEBUG' flag if the user wants to do
-dnl            debugging.
+dnl Use:       Turns on the `NDEBUG' flag, to disable useful things like
+dnl            assertions.
 
 AC_DEFUN(mdw_OPT_NDEBUG,
 [AC_ARG_ENABLE(debugging,
-[  --enable-debugging      spews vast swathes of useless information],
+[  --disable-debugging     spews vast swathes of useless information],
 [if test "$enableval" = "no"; then
   AC_DEFINE(NDEBUG, 1)
-fi],
-[AC_DEFINE(NDEBUG, 1)])])
+fi])])
 
 dnl --- *@-mdw_OPT_EFENCE-@* ---
 dnl
@@ -1488,42 +1490,66 @@ AC_DEFUN(mdw_OPT_EFENCE,
   AC_CHECK_LIB(efence, malloc)
 fi])])
 
-dnl --- *@-mdw_OPT_mLib_DEBUG-@* ---
+dnl --- *@-mdw_OPT_TRACE-@* ---
 dnl
 dnl Author:    Mark Wooding
 dnl
-dnl Synopsis:  mdw_OPT_mLib_DEBUG(PROGRAM)
+dnl Synopsis:  mdw_OPT_TRACE
 dnl
 dnl Arguments: ---
 dnl
-dnl Use:       Provides options for mLib debugging.  In particular, the
+dnl Use:       Turns on the `NTRACE' flag, to disable useful things like
+dnl            trace outputs.
+
+AC_DEFUN(mdw_OPT_TRACE,
+[AC_ARG_ENABLE(tracing,    
+[  --disable-tracing       disable output of trace information],
+[if test "$enableval" = "no"; then
+  AC_DEFINE(NTRACE, 1)
+fi])])
+
+dnl --- *@-mdw_OPT_mLib_TRACK-@* ---
+dnl
+dnl Author:    Mark Wooding
+dnl
+dnl Synopsis:  mdw_OPT_mLib_TRACK(PROGRAM)
+dnl
+dnl Arguments: PROGRAM = name of this program or package.
+dnl
+dnl Use:       Controls the unsupported mLib memory tracker.  The
 dnl            following are defined:
 dnl
-dnl              --enable-tracing        turns off the NTRACE variable
 dnl              --enable-track          turns on malloc tracking
 dnl              --enable-blame-PROGRAM  tracks malloc contexts in PROGRAM
 dnl
-dnl            There must be  a separate `blame' option, so that the various
-dnl            blame options work properly.
-
-AC_DEFUN(mdw_OPT_mLib_DEBUG,
-[mdw_OPT_NDEBUG
-mdw_OPT_EFENCE
-
-AC_ARG_ENABLE(tracing,
-[  --enable-tracing        enable output of tracing information],
-[if test "$enableval" = "no"; then
-  AC_DEFINE(NTRACE, 1)
-fi],
-[AC_DEFINE(NTRACE, 1)])
+dnl            There must be  a separate `blame' option for each program,
+dnl            so that the various blame options in a hierarchy get
+dnl            propagated properly.  This is an obsolete feature from the
+dnl            days when mLib was provided as a subdirectory of other
+dnl            packages.
 
+AC_DEFUN(mdw_OPT_mLib_TRACK,
+[AC_REQUIRE([mdw_OPT_TRACE])
 AC_ARG_ENABLE(track,
 [  --enable-track          enable tracking of malloc and free],
 [AC_DEFINE(TRACK_ENABLE, 1)])
-
 AC_ARG_ENABLE(blame-$1,
 [  --enable-blame-$1
                           track malloc contexts while in $1],
 [AC_DEFINE(TRACK_BLAME, 1)])])
 
+dnl --- *@-mdw_OPT_mLib_DEBUG-@* ---
+dnl
+dnl Author:    Mark Wooding
+dnl
+dnl Synopsis:  mdw_OPT_mLib_DEBUG(PROGRAM)
+dnl
+dnl Arguments: PROGRAM = name of this program or package.
+dnl
+dnl Use:       Provides all of the above debugging options.
+
+AC_DEFUN(mdw_OPT_mLib_DEBUG,
+[mdw_REQUIRE([mdw_OPT_NDEBUG])
+mdw_REQUIRE([mdw_OPT_mLib_TRACK], [$1])])
+
 dnl----- That's all, folks --------------------------------- *@--GLOB-END--@*