~drizzle-trunk/drizzle/development

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 ---------------------------------------------------------------------------