Add epoll check to autoconf and Makefile
[lttng-tools.git] / configure.ac
1 AC_INIT([lttng-tools], [2.0-pre12], [david.goulet@polymtl.ca], ,[http://lttng.org])
2 AC_CONFIG_AUX_DIR([config])
3 AC_CANONICAL_TARGET
4 AC_CANONICAL_HOST
5 AC_CONFIG_MACRO_DIR([config])
6 AM_INIT_AUTOMAKE([foreign dist-bzip2 no-dist-gzip])
7 AM_SILENT_RULES([yes])
8
9 AC_CHECK_HEADERS([ \
10 sys/types.h unistd.h fcntl.h string.h pthread.h limits.h \
11 signal.h stdlib.h sys/un.h sys/socket.h stdlib.h stdio.h \
12 getopt.h sys/ipc.h sys/shm.h popt.h grp.h \
13 ])
14
15 # URCU library version needed or newer
16 liburcu_version="0.6.0"
17
18 # Check for pthread
19 AC_CHECK_LIB([pthread], [pthread_create], [],
20 [AC_MSG_ERROR([Cannot find libpthread. Use [LDFLAGS]=-Ldir to specify its location.])]
21 )
22
23 # Check libpopt
24 AC_CHECK_LIB([popt], [poptGetContext], [],
25 [AC_MSG_ERROR([Cannot find libpopt. Use [LDFLAGS]=-Ldir to specify its location.])]
26 )
27
28 # Check liburcu list.h, wfqueue.h, futex.h
29 AC_CHECK_DECL([cds_list_add], [],
30 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/list.h>]]
31 )
32
33 AC_CHECK_DECL([cds_wfq_init], [],
34 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/wfqueue.h>]]
35 )
36
37 AC_CHECK_DECL([futex_async], [],
38 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/futex.h>]]
39 )
40
41 AX_HAVE_EPOLL(
42 [AX_CONFIG_FEATURE_ENABLE(epoll)],
43 [AX_CONFIG_FEATURE_DISABLE(epoll)]
44 )
45
46 AX_CONFIG_FEATURE(
47 [epoll], [This platform supports epoll(7)],
48 [HAVE_EPOLL], [This platform supports epoll(7).],
49 [enable_epoll="yes"], [enable_epoll="no"]
50 )
51
52 AM_CONDITIONAL([COMPAT_EPOLL], [ test "$enable_epoll" = "yes" ])
53
54 AC_PROG_CC
55 AC_PROG_LIBTOOL
56
57 CFLAGS="-Wall $CFLAGS -g -fno-strict-aliasing"
58
59 DEFAULT_INCLUDES="-I\$(top_srcdir) -I\$(top_builddir)"
60
61 lttngincludedir="${includedir}/lttng"
62
63 AC_SUBST(lttngincludedir)
64 AC_SUBST(DEFAULT_INCLUDES)
65
66 AC_CONFIG_FILES([
67 Makefile
68 include/Makefile
69 libkernelctl/Makefile
70 liblttngkconsumerd/Makefile
71 liblttngctl/Makefile
72 liblttng-sessiond-comm/Makefile
73 libustctl/Makefile
74 libustcomm/Makefile
75 ltt-kconsumerd/Makefile
76 ltt-sessiond/Makefile
77 lttng/Makefile
78 tests/Makefile
79 doc/Makefile
80 ])
81
82 AC_OUTPUT
This page took 0.042031 seconds and 4 git commands to generate.