Merge master branch
[lttng-tools.git] / configure.ac
1 AC_INIT([lttng-tools], [2.0-pre14], [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_CONFIG_HEADERS([include/config.h])
10
11 AH_TEMPLATE([CONFIG_LTTNG_TOOLS_HAVE_UST], [Defined on systems where UST headers can be found.])
12
13 AC_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 # URCU library version needed or newer
20 liburcu_version=">= 0.6.5"
21
22 # Check for pthread
23 AC_CHECK_LIB([pthread], [pthread_create], [],
24 [AC_MSG_ERROR([Cannot find libpthread. Use [LDFLAGS]=-Ldir to specify its location.])]
25 )
26
27 # Check libpopt
28 AC_CHECK_LIB([popt], [poptGetContext], [],
29 [AC_MSG_ERROR([Cannot find libpopt. Use [LDFLAGS]=-Ldir to specify its location.])]
30 )
31
32 # Needed for benchmark time
33 AC_CHECK_DECL([caa_get_cycles], [],
34 [AC_MSG_ERROR([liburcu liburcu_version or newer is needed])], [[#include <urcu/arch.h>]]
35 )
36
37 # Check liburcu needed function calls
38 AC_CHECK_DECL([cds_list_add], [],
39 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/list.h>]]
40 )
41 AC_CHECK_DECL([cds_wfq_init], [],
42 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/wfqueue.h>]]
43 )
44 AC_CHECK_DECL([futex_async], [],
45 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/futex.h>]]
46 )
47 AC_CHECK_DECL([rcu_thread_offline], [],
48 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu.h>]]
49 )
50 AC_CHECK_DECL([rcu_thread_online], [],
51 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu.h>]]
52 )
53 AC_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 )
64
65 AM_CONDITIONAL([LTTNG_TOOLS_HAVE_UST], [ test "x$have_ust_test" = "x1" ])
66
67 AC_CHECK_FUNCS([sched_getcpu sysconf])
68
69 # Epoll check. If not present, the build will fallback on poll() API
70 AX_HAVE_EPOLL(
71 [AX_CONFIG_FEATURE_ENABLE(epoll)],
72 [AX_CONFIG_FEATURE_DISABLE(epoll)]
73 )
74 AX_CONFIG_FEATURE(
75 [epoll], [This platform supports epoll(7)],
76 [HAVE_EPOLL], [This platform supports epoll(7).],
77 [enable_epoll="yes"], [enable_epoll="no"]
78 )
79 AM_CONDITIONAL([COMPAT_EPOLL], [ test "$enable_epoll" = "yes" ])
80
81 AC_PROG_CC
82 AC_PROG_LIBTOOL
83
84 CFLAGS="-Wall $CFLAGS -g -fno-strict-aliasing"
85
86 DEFAULT_INCLUDES="-I\$(top_srcdir) -I\$(top_builddir)"
87
88 lttngincludedir="${includedir}/lttng"
89
90 AC_SUBST(lttngincludedir)
91 AC_SUBST(DEFAULT_INCLUDES)
92
93 AC_CONFIG_FILES([
94 Makefile
95 include/Makefile
96 benchmark/Makefile
97 libkernelctl/Makefile
98 liblttng-consumer/Makefile
99 liblttng-kconsumer/Makefile
100 liblttng-ustconsumer/Makefile
101 liblttngctl/Makefile
102 liblttng-sessiond-comm/Makefile
103 lttng-consumerd/Makefile
104 lttng-sessiond/Makefile
105 lttng/Makefile
106 tests/Makefile
107 doc/Makefile
108 ])
109
110 AC_OUTPUT
This page took 0.032516 seconds and 5 git commands to generate.