dnl Load the AX_CHECK_COMPILE_FLAG macro from the autoconf archive.
m4_include([build/ax_check_compile_flag.m4])
+
+dnl PHP_CHECK_VALGRIND
+AC_DEFUN([PHP_CHECK_VALGRIND], [
+ AC_MSG_CHECKING([for valgrind])
+
+ SEARCH_PATH="/usr/local /usr"
+ SEARCH_FOR="/include/valgrind/valgrind.h"
+ for i in $SEARCH_PATH ; do
+ if test -r $i/$SEARCH_FOR; then
+ VALGRIND_DIR=$i
+ fi
+ done
+
+ if test -z "$VALGRIND_DIR"; then
+ AC_MSG_RESULT([not found])
+ else
+ AC_MSG_RESULT(found in $VALGRIND_DIR)
+ AC_DEFINE(HAVE_VALGRIND, 1, [ ])
+ fi
+])
PHP_CRYPT_R_STYLE
fi
+PHP_CHECK_VALGRIND
+
dnl General settings.
dnl -------------------------------------------------------------------------
PHP_CONFIGURE_PART(General settings)
# include "openssl/applink.c"
#endif
+#ifdef HAVE_VALGRIND
+# include "valgrind/callgrind.h"
+#endif
+
#ifndef PHP_WIN32
/* XXX this will need to change later when threaded fastcgi is implemented. shane */
struct sigaction act, old_term, old_quit, old_int;
if (comma) {
warmup_repeats = atoi(php_optarg);
repeats = atoi(comma + 1);
+#ifdef HAVE_VALGRIND
+ if (warmup_repeats > 0) {
+ CALLGRIND_STOP_INSTRUMENTATION;
+ }
+#endif
} else {
repeats = atoi(php_optarg);
}
gettimeofday(&start, NULL);
#else
time(&start);
+#endif
+#ifdef HAVE_VALGRIND
+ CALLGRIND_START_INSTRUMENTATION;
#endif
}
continue;