summaryrefslogtreecommitdiffstats
path: root/configure.in
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2004-07-22 20:46:27 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2004-07-22 20:46:27 (GMT)
commitecd9f0a10ee44c6051054ecccbeb35fb2f26c673 (patch)
tree6617063423ae1715d3142057f14c9f8d1cf0bec4 /configure.in
parente047136588f35b08b324a8483165d8284568920e (diff)
downloadhdf5-ecd9f0a10ee44c6051054ecccbeb35fb2f26c673.zip
hdf5-ecd9f0a10ee44c6051054ecccbeb35fb2f26c673.tar.gz
hdf5-ecd9f0a10ee44c6051054ecccbeb35fb2f26c673.tar.bz2
[svn-r8932] Purpose:
Code cleanup Description: Clean up collective chunking code a bit. Also, add '--enable-instrument' configure flag to have a mechanism for determining that optimized operations happened correctly in the library (instead of just the "normal" way) by allowing 'flag' properties to be set outside the library and set when the "right" thing happens. This is mainly for debugging and regression checks, so we make certain we don't break optimized I/O by accident. It's enabled by default when --enable-debug is on (which is on by default in the development branch and off by default in the release branch), but can also be independently controlled with its own configure flag. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel IBM p690 (copper) w/parallel
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in37
1 files changed, 37 insertions, 0 deletions
diff --git a/configure.in b/configure.in
index 2fb57d7..d916de2 100644
--- a/configure.in
+++ b/configure.in
@@ -1901,6 +1901,40 @@ case "X-$TRACE" in
;;
esac
+dnl ----------------------------------------------------------------------
+dnl Enable instrumenting of the library's internal operations
+dnl This must come after the enable-debug since it depends on debug.
+dnl
+AC_SUBST([INSTRUMENT_LIBRARY])
+AC_MSG_CHECKING([for instrumented library]);
+AC_ARG_ENABLE([instrument],
+ [AC_HELP_STRING([--enable-instrument],
+ [Enable library instrumentation of optimization
+ tracing. Default=no if debug is disabled.])],
+ INSTRUMENT=$enableval)
+
+dnl Default to no if debug is disabled
+if test "X-$INSTRUMENT" = X- ; then
+ if test -z "$DEBUG_PKG" ; then
+ INSTRUMENT=no
+ else
+ INSTRUMENT=yes
+ fi
+fi
+
+case "X-$INSTRUMENT" in
+ X-yes)
+ AC_MSG_RESULT([yes])
+ INSTRUMENT_LIBRARY=yes
+ AC_DEFINE([HAVE_INSTRUMENTED_LIBRARY], [1],
+ [Define if library will contain instrumentation to detect correct optimization operation])
+ ;;
+ X-no|*)
+ AC_MSG_RESULT([no])
+ INSTRUMENT_LIBRARY=no
+ ;;
+esac
+
dnl Checkpoint the cache
AC_CACHE_SAVE
@@ -2990,6 +3024,9 @@ IF_YES_NO "$STATIC_EXEC"
PRINT_N " Tracing"
IF_YES_NO "$TRACE_API"
+PRINT_N " Optimization Instrumentation"
+IF_YES_NO "$INSTRUMENT"
+
PRINT "Languages:"
PRINT_N " C++"