1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
dnl ** Have libdw?
dnl --------------------------------------------------------------
dnl Sets UseLibdw.
AC_DEFUN([FP_FIND_LIBDW],
[
AC_ARG_WITH([libdw-libraries],
[AS_HELP_STRING([--with-libdw-libraries=ARG],
[Find libraries for libdw in ARG [default=system default]])
],
[
LibdwLibDir="$withval"
LIBDW_LDFLAGS="-L$withval"
])
AC_ARG_WITH([libdw-includes],
[AS_HELP_STRING([--with-libdw-includes=ARG],
[Find includes for libdw in ARG [default=system default]])
],
[
LibdwIncludeDir="$withval"
LIBDW_CFLAGS="-I$withval"
])
AC_ARG_ENABLE(dwarf-unwind,
[AS_HELP_STRING([--enable-dwarf-unwind],
[Enable DWARF unwinding support in the runtime system via elfutils' libdw [default=no]])],
[],
[enable_dwarf_unwind=no])
UseLibdw=NO
if test "$enable_dwarf_unwind" != "no" ; then
CFLAGS2="$CFLAGS"
CFLAGS="$LIBDW_CFLAGS $CFLAGS"
LDFLAGS2="$LDFLAGS"
LDFLAGS="$LIBDW_LDFLAGS $LDFLAGS"
AC_CHECK_HEADER([elfutils/libdwfl.h],
[AC_CHECK_LIB(dw, dwfl_attach_state,
[UseLibdw=YES])])
if test "x:$enable_dwarf_unwind:$UseLibdw" = "x:yes:NO" ; then
AC_MSG_ERROR([Cannot find system libdw (required by --enable-dwarf-unwind)])
fi
CFLAGS="$CFLAGS2"
LDFLAGS="$LDFLAGS2"
fi
AC_SUBST(UseLibdw)
USE_LIBDW=0
if test $UseLibdw = "YES" ; then
USE_LIBDW=1
fi
AC_DEFINE_UNQUOTED([USE_LIBDW], [$USE_LIBDW], [Set to 1 to use libdw]
])
|