Support urcu 0.6.6 with the likely/unlikely API change
[lttng-tools.git] / configure.ac
CommitLineData
ab7f4103 1AC_INIT([lttng-tools], [2.0-pre14], [david.goulet@polymtl.ca], ,[http://lttng.org])
fac6795d 2AC_CONFIG_AUX_DIR([config])
6e2d116c
DG
3AC_CANONICAL_TARGET
4AC_CANONICAL_HOST
fac6795d 5AC_CONFIG_MACRO_DIR([config])
0403d7c9 6AM_INIT_AUTOMAKE([foreign dist-bzip2 no-dist-gzip])
fac6795d
DG
7AM_SILENT_RULES([yes])
8
3bd1e081
MD
9AC_CONFIG_HEADERS([include/config.h])
10
11AH_TEMPLATE([CONFIG_LTTNG_TOOLS_HAVE_UST], [Defined on systems where UST headers can be found.])
12
fac6795d
DG
13AC_CHECK_HEADERS([ \
14 sys/types.h unistd.h fcntl.h string.h pthread.h limits.h \
15 signal.h stdlib.h sys/un.h sys/socket.h stdlib.h stdio.h \
16 getopt.h sys/ipc.h sys/shm.h popt.h grp.h \
17])
18
19# Check for pthread
20AC_CHECK_LIB([pthread], [pthread_create], [],
21 [AC_MSG_ERROR([Cannot find libpthread. Use [LDFLAGS]=-Ldir to specify its location.])]
22)
23
24# Check libpopt
25AC_CHECK_LIB([popt], [poptGetContext], [],
26 [AC_MSG_ERROR([Cannot find libpopt. Use [LDFLAGS]=-Ldir to specify its location.])]
27)
28
6e59ae26
DG
29# URCU library version needed or newer
30liburcu_version=">= 0.6.6"
31
3ffccaed 32# Check liburcu needed function calls
fac6795d 33AC_CHECK_DECL([cds_list_add], [],
8e12081b 34 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/list.h>]]
fac6795d 35)
099e26bd 36AC_CHECK_DECL([cds_wfq_init], [],
8e12081b
DG
37 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/wfqueue.h>]]
38)
8e12081b
DG
39AC_CHECK_DECL([futex_async], [],
40 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/futex.h>]]
099e26bd 41)
3ffccaed
DG
42AC_CHECK_DECL([rcu_thread_offline], [],
43 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu.h>]]
44)
45AC_CHECK_DECL([rcu_thread_online], [],
46 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu.h>]]
47)
6e59ae26
DG
48AC_CHECK_DECL([caa_likely], [],
49 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu.h>]]
50)
51
52# Check libust library
3bd1e081
MD
53AC_CHECK_DECL([ustctl_create_session],
54 [
55 AC_DEFINE([CONFIG_LTTNG_TOOLS_HAVE_UST], 1)
56 have_ust_test=1
57 ],
58 [
59 AC_MSG_WARN([UST header not found. Building without UST support.])
60 have_ust_test=0
61 ],
62 [[#include <ust/lttng-ust-ctl.h>]]
63)
3bd1e081 64AM_CONDITIONAL([LTTNG_TOOLS_HAVE_UST], [ test "x$have_ust_test" = "x1" ])
099e26bd 65
f6a9efaa
DG
66AC_CHECK_FUNCS([sched_getcpu sysconf])
67
3ffccaed 68# Epoll check. If not present, the build will fallback on poll() API
71615260
DG
69AX_HAVE_EPOLL(
70 [AX_CONFIG_FEATURE_ENABLE(epoll)],
71 [AX_CONFIG_FEATURE_DISABLE(epoll)]
72)
71615260
DG
73AX_CONFIG_FEATURE(
74 [epoll], [This platform supports epoll(7)],
75 [HAVE_EPOLL], [This platform supports epoll(7).],
76 [enable_epoll="yes"], [enable_epoll="no"]
77)
71615260
DG
78AM_CONDITIONAL([COMPAT_EPOLL], [ test "$enable_epoll" = "yes" ])
79
fac6795d
DG
80AC_PROG_CC
81AC_PROG_LIBTOOL
82
6e2d116c
DG
83CFLAGS="-Wall $CFLAGS -g -fno-strict-aliasing"
84
85DEFAULT_INCLUDES="-I\$(top_srcdir) -I\$(top_builddir)"
86
87lttngincludedir="${includedir}/lttng"
88
89AC_SUBST(lttngincludedir)
90AC_SUBST(DEFAULT_INCLUDES)
91
fac6795d
DG
92AC_CONFIG_FILES([
93 Makefile
94 include/Makefile
ee0326c0 95 libkernelctl/Makefile
3bd1e081
MD
96 liblttng-consumer/Makefile
97 liblttng-kconsumer/Makefile
98 liblttng-ustconsumer/Makefile
fac6795d 99 liblttngctl/Makefile
ca3c5ac0 100 liblttng-sessiond-comm/Makefile
3bd1e081 101 lttng-consumerd/Makefile
32258573 102 lttng-sessiond/Makefile
fac6795d
DG
103 lttng/Makefile
104 tests/Makefile
ebb6ebd5 105 doc/Makefile
fac6795d
DG
106])
107
108AC_OUTPUT
This page took 0.030905 seconds and 5 git commands to generate.