12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- dnl Copyright (C) 2009 Sun Microsystems
- dnl This file is free software; Sun Microsystems
- dnl gives unlimited permission to copy and/or distribute it,
- dnl with or without modifications, as long as this notice is preserved.
- dnl ---------------------------------------------------------------------------
- dnl Macro: PANDORA_ENABLE_DTRACE
- dnl ---------------------------------------------------------------------------
- AC_DEFUN([PANDORA_ENABLE_DTRACE],[
- AC_ARG_ENABLE([dtrace],
- [AS_HELP_STRING([--disable-dtrace],
- [enable DTrace USDT probes. @<:@default=yes@:>@])],
- [ac_cv_enable_dtrace="$enableval"],
- [ac_cv_enable_dtrace="yes"])
- AS_IF([test "$ac_cv_enable_dtrace" = "yes"],[
- AC_CHECK_PROGS([DTRACE], [dtrace])
- AS_IF([test "x$ac_cv_prog_DTRACE" = "xdtrace"],[
- AC_CACHE_CHECK([if dtrace works],[ac_cv_dtrace_works],[
- cat >conftest.d <<_ACEOF
- provider Example {
- probe increment(int);
- };
- _ACEOF
- $DTRACE -h -o conftest.h -s conftest.d 2>/dev/zero
- AS_IF([test $? -eq 0],[ac_cv_dtrace_works=yes],
- [ac_cv_dtrace_works=no])
- rm -f conftest.h conftest.d
- ])
- AS_IF([test "x$ac_cv_dtrace_works" = "xyes"],[
- AC_DEFINE([HAVE_DTRACE], [1], [Enables DTRACE Support])
- ])
- AC_CACHE_CHECK([if dtrace should instrument object files],
- [ac_cv_dtrace_needs_objects],[
- dnl DTrace on MacOSX does not use -G option
- cat >conftest.d <<_ACEOF
- provider Example {
- probe increment(int);
- };
- _ACEOF
- $DTRACE -G -o conftest.d.o -s conftest.d 2>/dev/zero
- AS_IF([test $? -eq 0],[ac_cv_dtrace_needs_objects=yes],
- [ac_cv_dtrace_needs_objects=no])
- rm -f conftest.d.o conftest.d
- ])
- AC_SUBST(DTRACEFLAGS) dnl TODO: test for -G on OSX
- ac_cv_have_dtrace=yes
- ])])
- AM_CONDITIONAL([HAVE_DTRACE], [test "x$ac_cv_dtrace_works" = "xyes"])
- AM_CONDITIONAL([DTRACE_NEEDS_OBJECTS],
- [test "x$ac_cv_dtrace_needs_objects" = "xyes"])
- ])
- dnl ---------------------------------------------------------------------------
- dnl End Macro: PANDORA_ENABLE_DTRACE
- dnl ---------------------------------------------------------------------------
|