summaryrefslogtreecommitdiffstats
path: root/configure.in
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2003-02-07 21:14:19 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2003-02-07 21:14:19 (GMT)
commit168d67dbd20923feef30fb76c6b569ef2e5add4a (patch)
tree2bcfd51c39665400804e92ac0fb13d42b2df96c3 /configure.in
parent4e8da9d2246a0bba1afb5c678346b2f1c4633c69 (diff)
downloadhdf5-168d67dbd20923feef30fb76c6b569ef2e5add4a.zip
hdf5-168d67dbd20923feef30fb76c6b569ef2e5add4a.tar.gz
hdf5-168d67dbd20923feef30fb76c6b569ef2e5add4a.tar.bz2
[svn-r6383] Purpose:
New feature for developers. Description: Added "function stack" tracing to library. This allows developers (there is no public API) to call H5FS_print within the library and get a listing of the functions traversed to reach that point in the library. Eventually, I may add support for reporting the parameters to each function also... Mainly for debugging parallel I/O programs, but I think it will come in handy in other cases also. The function stack tracking is controlled with a configure switch: --enable-funcstack, which defaults to enabled currently. When we branch for 1.6, we should change the default setting on the branch to be disabled. Also, added a destructor to the thread-specific keys when thread-safety is turned on in the library. Otherwise, they were leaking memory and causing difficult to debug errors in threaded programs (like the test/ttsafe test). Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)} FreeBSD 4.7 (sleipnir) w/thread-safety enabled. Misc. update: Updated MANIFEST with new files added (src/H5FS.c & src/H5FDprivate.h) Update release_docs/RELEASE with thread-safety bug fix.
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in25
1 files changed, 25 insertions, 0 deletions
diff --git a/configure.in b/configure.in
index af929fe..8d689e0 100644
--- a/configure.in
+++ b/configure.in
@@ -1224,6 +1224,28 @@ if test "X$THREADSAFE" = "Xyes"; then
fi
dnl ----------------------------------------------------------------------
+dnl Check if they would like the function stack support compiled in
+dnl
+AC_MSG_CHECKING([whether function stack tracking is enabled])
+AC_ARG_ENABLE([funcstack],
+ [AC_HELP_STRING([--enable-funcstack],
+ [Enable the function stack
+ tracing [default=yes]])],
+ [FUNCSTACK=$enableval])
+
+case "X-$FUNCSTACK" in
+ X-|X-yes)
+ FUNCSTACK="yes"
+ AC_MSG_RESULT([yes])
+ AC_DEFINE([HAVE_FUNCSTACK], [1],
+ [Define if the function stack tracing code is to be compiled in])
+ ;;
+ *)
+ AC_MSG_RESULT([no])
+ ;;
+esac
+
+dnl ----------------------------------------------------------------------
dnl Check if they would like the HDF5 v1.4 compatibility functions
dnl compiled in
dnl
@@ -2302,5 +2324,8 @@ IF_ENABLED_DISABLED "$STREAM_VFD"
PRINT_N " Threadsafety"
IF_ENABLED_DISABLED "$THREADSAFE"
+PRINT_N " Function Stack Tracing"
+IF_ENABLED_DISABLED "$FUNCSTACK"
+
PRINT_N " Zlib-compression"
IF_YES_NO "$HAVE_ZLIB"