diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2003-02-07 21:14:19 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2003-02-07 21:14:19 (GMT) |
commit | 168d67dbd20923feef30fb76c6b569ef2e5add4a (patch) | |
tree | 2bcfd51c39665400804e92ac0fb13d42b2df96c3 /configure | |
parent | 4e8da9d2246a0bba1afb5c678346b2f1c4633c69 (diff) | |
download | hdf5-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')
-rwxr-xr-x | configure | 37 |
1 files changed, 33 insertions, 4 deletions
@@ -1008,6 +1008,7 @@ Optional Features: --enable-linux-lfs Enable support for large (64-bit) files on Linux. [default=check] --enable-threadsafe Enable thread safe capability + --enable-funcstack Enable the function stack tracing [default=yes] --enable-hdf5v1_4 Compile the HDF5 v1.4 compatibility interface [default=no] --enable-stream-vfd Build the Stream Virtual File Driver [default=no] @@ -4107,7 +4108,7 @@ test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes case $host in *-*-irix6*) # Find out which ABI we are using. - echo '#line 4110 "configure"' > conftest.$ac_ext + echo '#line 4111 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -4648,7 +4649,7 @@ chmod -w . save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -o out/conftest2.$ac_objext" compiler_c_o=no -if { (eval echo configure:4651: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then +if { (eval echo configure:4652: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings if test -s out/conftest.err; then @@ -6459,7 +6460,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 6462 "configure" +#line 6463 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -6557,7 +6558,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 6560 "configure" +#line 6561 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -27777,6 +27778,31 @@ _ACEOF fi +echo "$as_me:$LINENO: checking whether function stack tracking is enabled" >&5 +echo $ECHO_N "checking whether function stack tracking is enabled... $ECHO_C" >&6 +# Check whether --enable-funcstack or --disable-funcstack was given. +if test "${enable_funcstack+set}" = set; then + enableval="$enable_funcstack" + FUNCSTACK=$enableval +fi; + +case "X-$FUNCSTACK" in + X-|X-yes) + FUNCSTACK="yes" + echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6 + +cat >>confdefs.h <<\_ACEOF +#define HAVE_FUNCSTACK 1 +_ACEOF + + ;; + *) + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 + ;; +esac + echo "$as_me:$LINENO: checking whether HDF5 v1.4 compatibility functions enabled" >&5 echo $ECHO_N "checking whether HDF5 v1.4 compatibility functions enabled... $ECHO_C" >&6 # Check whether --enable-hdf5v1_4 or --disable-hdf5v1_4 was given. @@ -32010,5 +32036,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" |