1085.1.4
by Monty Taylor
pandora-build v1 |
1 |
dnl Copyright (C) 2009 Sun Microsystems |
2 |
dnl This file is free software; Sun Microsystems |
|
3 |
dnl gives unlimited permission to copy and/or distribute it, |
|
4 |
dnl with or without modifications, as long as this notice is preserved. |
|
5 |
||
1085.1.3
by Monty Taylor
Split out warnings - start using the pandora build system. |
6 |
dnl --------------------------------------------------------------------------- |
7 |
dnl Macro: PANDORA_ENABLE_DTRACE |
|
8 |
dnl --------------------------------------------------------------------------- |
|
9 |
AC_DEFUN([PANDORA_ENABLE_DTRACE],[ |
|
10 |
AC_ARG_ENABLE([dtrace], |
|
1497.3.2
by Monty Taylor
Enabled building dtrace if we have it by default. Apparently it doesn't add |
11 |
[AS_HELP_STRING([--disable-dtrace], |
12 |
[Build with support for the DTRACE. @<:@default=on@:>@])], |
|
1497.3.3
by Monty Taylor
Fixed lcov builds. Fixed the dtrace enabling. |
13 |
[ac_cv_enable_dtrace="$enableval"], |
1497.3.2
by Monty Taylor
Enabled building dtrace if we have it by default. Apparently it doesn't add |
14 |
[ac_cv_enable_dtrace="yes"]) |
1085.1.3
by Monty Taylor
Split out warnings - start using the pandora build system. |
15 |
|
16 |
AS_IF([test "$ac_cv_enable_dtrace" = "yes"],[ |
|
17 |
AC_CHECK_PROGS([DTRACE], [dtrace]) |
|
1720.1.5
by Monty Taylor
Added libdrizzle to the tree. |
18 |
AC_CHECK_HEADERS(sys/sdt.h) |
19 |
||
20 |
AS_IF([test "x$ac_cv_prog_DTRACE" = "xdtrace" -a "x${ac_cv_header_sys_sdt_h}" = "xyes"],[ |
|
1497.3.9
by Monty Taylor
dtrace is broken on FreeBSD. Check for that and don't attempt to use it if it don't work. |
21 |
|
22 |
AC_CACHE_CHECK([if dtrace works],[ac_cv_dtrace_works],[ |
|
23 |
cat >conftest.d <<_ACEOF
|
|
24 |
provider Example {
|
|
25 |
probe increment(int);
|
|
26 |
};
|
|
27 |
_ACEOF
|
|
28 |
$DTRACE -h -o conftest.h -s conftest.d 2>/dev/zero
|
|
29 |
AS_IF([test $? -eq 0],[ac_cv_dtrace_works=yes], |
|
30 |
[ac_cv_dtrace_works=no]) |
|
31 |
rm -f conftest.h conftest.d |
|
32 |
]) |
|
33 |
AS_IF([test "x$ac_cv_dtrace_works" = "xyes"],[ |
|
34 |
AC_DEFINE([HAVE_DTRACE], [1], [Enables DTRACE Support]) |
|
35 |
]) |
|
36 |
AC_CACHE_CHECK([if dtrace should instrument object files], |
|
37 |
[ac_cv_dtrace_needs_objects],[ |
|
38 |
dnl DTrace on MacOSX does not use -G option
|
|
39 |
cat >conftest.d <<_ACEOF
|
|
40 |
provider Example {
|
|
41 |
probe increment(int);
|
|
42 |
};
|
|
43 |
_ACEOF
|
|
44 |
$DTRACE -G -o conftest.d.o -s conftest.d 2>/dev/zero
|
|
45 |
AS_IF([test $? -eq 0],[ac_cv_dtrace_needs_objects=yes], |
|
1126.6.5
by Monty Taylor
pandora-build v0.59 |
46 |
[ac_cv_dtrace_needs_objects=no]) |
1497.3.9
by Monty Taylor
dtrace is broken on FreeBSD. Check for that and don't attempt to use it if it don't work. |
47 |
rm -f conftest.d.o conftest.d |
48 |
]) |
|
1085.1.3
by Monty Taylor
Split out warnings - start using the pandora build system. |
49 |
AC_SUBST(DTRACEFLAGS) dnl TODO: test for -G on OSX |
50 |
ac_cv_have_dtrace=yes |
|
51 |
])]) |
|
52 |
||
1497.3.9
by Monty Taylor
dtrace is broken on FreeBSD. Check for that and don't attempt to use it if it don't work. |
53 |
AM_CONDITIONAL([HAVE_DTRACE], [test "x$ac_cv_dtrace_works" = "xyes"]) |
1085.1.4
by Monty Taylor
pandora-build v1 |
54 |
AM_CONDITIONAL([DTRACE_NEEDS_OBJECTS], |
55 |
[test "x$ac_cv_dtrace_needs_objects" = "xyes"]) |
|
56 |
||
1085.1.3
by Monty Taylor
Split out warnings - start using the pandora build system. |
57 |
]) |
58 |
dnl --------------------------------------------------------------------------- |
|
59 |
dnl End Macro: PANDORA_ENABLE_DTRACE |
|
60 |
dnl --------------------------------------------------------------------------- |