Add liburcu function check to build system
[lttng-tools.git] / configure.ac
CommitLineData
775182fa 1AC_INIT([lttng-tools], [2.0-pre13], [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
9AC_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
8e12081b 15# URCU library version needed or newer
3ffccaed 16liburcu_version=">= 0.6.5"
8e12081b 17
fac6795d
DG
18# Check for pthread
19AC_CHECK_LIB([pthread], [pthread_create], [],
20 [AC_MSG_ERROR([Cannot find libpthread. Use [LDFLAGS]=-Ldir to specify its location.])]
21)
22
23# Check libpopt
24AC_CHECK_LIB([popt], [poptGetContext], [],
25 [AC_MSG_ERROR([Cannot find libpopt. Use [LDFLAGS]=-Ldir to specify its location.])]
26)
27
3ffccaed 28# Check liburcu needed function calls
fac6795d 29AC_CHECK_DECL([cds_list_add], [],
8e12081b 30 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/list.h>]]
fac6795d 31)
099e26bd 32AC_CHECK_DECL([cds_wfq_init], [],
8e12081b
DG
33 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/wfqueue.h>]]
34)
8e12081b
DG
35AC_CHECK_DECL([futex_async], [],
36 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/futex.h>]]
099e26bd 37)
3ffccaed
DG
38AC_CHECK_DECL([rcu_thread_offline], [],
39 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu.h>]]
40)
41AC_CHECK_DECL([rcu_thread_online], [],
42 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu.h>]]
43)
099e26bd 44
3ffccaed 45# Epoll check. If not present, the build will fallback on poll() API
71615260
DG
46AX_HAVE_EPOLL(
47 [AX_CONFIG_FEATURE_ENABLE(epoll)],
48 [AX_CONFIG_FEATURE_DISABLE(epoll)]
49)
71615260
DG
50AX_CONFIG_FEATURE(
51 [epoll], [This platform supports epoll(7)],
52 [HAVE_EPOLL], [This platform supports epoll(7).],
53 [enable_epoll="yes"], [enable_epoll="no"]
54)
71615260
DG
55AM_CONDITIONAL([COMPAT_EPOLL], [ test "$enable_epoll" = "yes" ])
56
fac6795d
DG
57AC_PROG_CC
58AC_PROG_LIBTOOL
59
6e2d116c
DG
60CFLAGS="-Wall $CFLAGS -g -fno-strict-aliasing"
61
62DEFAULT_INCLUDES="-I\$(top_srcdir) -I\$(top_builddir)"
63
64lttngincludedir="${includedir}/lttng"
65
66AC_SUBST(lttngincludedir)
67AC_SUBST(DEFAULT_INCLUDES)
68
fac6795d
DG
69AC_CONFIG_FILES([
70 Makefile
71 include/Makefile
ee0326c0 72 libkernelctl/Makefile
6533b585 73 liblttngkconsumerd/Makefile
fac6795d 74 liblttngctl/Makefile
ca3c5ac0 75 liblttng-sessiond-comm/Makefile
62d3069f
DG
76 libustctl/Makefile
77 libustcomm/Makefile
2b1173d8 78 ltt-kconsumerd/Makefile
6e0ca3c2 79 ltt-sessiond/Makefile
fac6795d
DG
80 lttng/Makefile
81 tests/Makefile
ebb6ebd5 82 doc/Makefile
fac6795d
DG
83])
84
85AC_OUTPUT
This page took 0.026996 seconds and 4 git commands to generate.