configure.ac: use macro for wrong liburcu error message
[lttng-tools.git] / configure.ac
CommitLineData
4c436586 1AC_PREREQ([2.64])
45899340 2AC_INIT([lttng-tools],[2.6.2],[jeremie.galarneau@efficios.com],[],[https://lttng.org])
fac6795d 3AC_CONFIG_AUX_DIR([config])
6e2d116c
DG
4AC_CANONICAL_TARGET
5AC_CANONICAL_HOST
fac6795d 6AC_CONFIG_MACRO_DIR([config])
0403d7c9 7AM_INIT_AUTOMAKE([foreign dist-bzip2 no-dist-gzip])
d34cd287 8AM_MAINTAINER_MODE([enable])
c615ee2f 9m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
fac6795d 10
81265501
MD
11# Compute minor/major/patchlevel version numbers
12AC_PROG_SED
13major_version=$(echo AC_PACKAGE_VERSION | sed 's/^\([[0-9]]\)*\.[[0-9]]*\.[[0-9]]*.*$/\1/')
14minor_version=$(echo AC_PACKAGE_VERSION | sed 's/^[[0-9]]*\.\([[0-9]]*\)\.[[0-9]]*.*$/\1/')
15patchlevel_version=$(echo AC_PACKAGE_VERSION | sed 's/^[[0-9]]*\.[[0-9]]*\.\([[0-9]]*\).*$/\1/')
16AC_SUBST([MAJOR_VERSION], [$major_version])
17AC_SUBST([MINOR_VERSION], [$minor_version])
18AC_SUBST([PATCHLEVEL_VERSION], [$patchlevel_version])
8eaee515
DG
19AC_DEFINE_UNQUOTED([VERSION_MAJOR], $major_version, [LTTng-Tools major version number])
20AC_DEFINE_UNQUOTED([VERSION_MINOR], $minor_version, [LTTng-Tools minor version number])
21AC_DEFINE_UNQUOTED([VERSION_PATCHLEVEL], $patchlevel_version, [LTTng-Tools patchlevel version number])
81265501 22
b82b3032
DG
23version_name="Gaia"
24version_description="From Benelux brewery in Montreal, the Gaia is a witbier with a cloudy light amber ale color. Aroma of coriander with floral hay notes is enchanting. Taste is also dominated by the very floral coriander note and some medium sweet malt notes."
0e4cbe7e
DG
25
26AC_DEFINE_UNQUOTED([VERSION_NAME], ["$version_name"], "")
27AC_DEFINE_UNQUOTED([VERSION_DESCRIPTION], ["$version_description"], "")
c6d4a597 28
3bd1e081
MD
29AC_CONFIG_HEADERS([include/config.h])
30
6bd5984c
CB
31AC_PROG_GREP
32# libtool link_all_deplibs fixup. See http://bugs.lttng.org/issues/321.
33AC_ARG_ENABLE(libtool-linkdep-fixup,
34 AS_HELP_STRING([--disable-libtool-linkdep-fixup],
35 [disable the libtool fixup for linking all dependent libraries (link_all_deplibs)]),
36 libtool_fixup=$enableval,
37 libtool_fixup=yes)
38
39AS_IF([test "x$libtool_fixup" = "xyes"],
40 [
41 libtool_m4="$srcdir/config/libtool.m4"
42 libtool_flag_pattern=".*link_all_deplibs\s*,\s*\$1\s*)"
43 AC_MSG_CHECKING([for occurence(s) of link_all_deplibs = no in $libtool_m4])
44 libtool_flag_pattern_count=$(grep -c "$libtool_flag_pattern\s*=\s*no" $libtool_m4)
45 AS_IF([test $libtool_flag_pattern_count -ne 0],
46 [
47 AC_MSG_RESULT([$libtool_flag_pattern_count])
48 AC_MSG_WARN([the detected libtool will not link all dependencies, forcing link_all_deplibs = unknown])
49 sed -i "s/\($libtool_flag_pattern\)\s*=\s*no/\1=unknown/g" $libtool_m4
50 ],
51 [
52 AC_MSG_RESULT([none])
53 ])
54 ])
55
347e0f14
CB
56AM_CONDITIONAL([NO_SHARED], [test x$enable_shared = xno])
57
fac6795d
DG
58AC_CHECK_HEADERS([ \
59 sys/types.h unistd.h fcntl.h string.h pthread.h limits.h \
60 signal.h stdlib.h sys/un.h sys/socket.h stdlib.h stdio.h \
61 getopt.h sys/ipc.h sys/shm.h popt.h grp.h \
62])
63
0c95f5b2
DG
64# Babeltrace viewer check
65AC_ARG_WITH([babeltrace-bin],
66 AS_HELP_STRING([--with-babeltrace-bin],
67 [Location of the babeltrace viewer executable (including the filename)]),
68 [BABELTRACE_BIN="$withval"],
69 [BABELTRACE_BIN=''])
70AC_SUBST([BABELTRACE_BIN])
71
72# lttv-gui
73AC_ARG_WITH([lttv-gui-bin],
74 AS_HELP_STRING([--with-lttv-gui-bin],
75 [Location of the lttv GUI viewer executable (including the filename)]),
76 [LTTV_GUI_BIN="$withval"],
77 [LTTV_GUI_BIN=''])
78AC_SUBST([LTTV_GUI_BIN])
79
fc7a59ce
AM
80AC_ARG_WITH([consumerd32-bin],
81 AS_HELP_STRING([--with-consumerd32-bin],
82 [Location of the 32-bit consumerd executable (including the filename)]),
83 [CONSUMERD32_BIN="$withval"],
84 [CONSUMERD32_BIN=''])
85AC_SUBST([CONSUMERD32_BIN])
ebaeda94 86
fc7a59ce
AM
87AC_ARG_WITH([consumerd64-bin],
88 AS_HELP_STRING([--with-consumerd64-bin],
89 [Location of the 64-bit consumerd executable (including the filename)]),
90 [CONSUMERD64_BIN="$withval"],
91 [CONSUMERD64_BIN=''])
92AC_SUBST([CONSUMERD64_BIN])
ebaeda94
MD
93
94AC_ARG_WITH([consumerd32-libdir],
a4b279ba 95 AS_HELP_STRING([--with-consumerd32-libdir],
fc7a59ce 96 [Directory containing the 32-bit consumerd libraries]),
ebaeda94
MD
97 [CONSUMERD32_LIBDIR="$withval"],
98 [CONSUMERD32_LIBDIR=''])
99AC_SUBST([CONSUMERD32_LIBDIR])
100
ec029701 101AC_ARG_WITH([consumerd64-libdir],
a4b279ba 102 AS_HELP_STRING([--with-consumerd64-libdir],
fc7a59ce 103 [Directory containing the 64-bit consumerd libraries]),
ebaeda94
MD
104 [CONSUMERD64_LIBDIR="$withval"],
105 [CONSUMERD64_LIBDIR=''])
106AC_SUBST([CONSUMERD64_LIBDIR])
107
b8ec3da8
SM
108AC_ARG_WITH([sessiond-bin],
109 AS_HELP_STRING([--with-sessiond-bin],
110 [Location of the sessiond executable (including the filename)]),
111 [SESSIOND_BIN="$withval"],
112 [SESSIOND_BIN=''])
113AC_SUBST([SESSIOND_BIN])
114
d386c872
MD
115AC_ARG_WITH([lttng-system-rundir],
116 AS_HELP_STRING([--with-lttng-system-rundir],
117 [Location of the system directory where the system-wide lttng-sessiond runtime files are kept. The default is "/var/run/lttng".]),
118 [LTTNG_SYSTEM_RUNDIR="$withval"],
119 [LTTNG_SYSTEM_RUNDIR="/var/run/lttng"])
120AC_SUBST([LTTNG_SYSTEM_RUNDIR])
121
fb6f1fa2
YB
122AC_DEFINE_UNQUOTED([CONFIG_CONSUMERD32_BIN], "$CONSUMERD32_BIN", [Location of the 32-bit consumerd executable.])
123AC_DEFINE_UNQUOTED([CONFIG_CONSUMERD64_BIN], "$CONSUMERD64_BIN", [Location of the 64-bit consumerd executable])
124AC_DEFINE_UNQUOTED([CONFIG_CONSUMERD32_LIBDIR], "$CONSUMERD32_LIBDIR", [Search for consumerd 32-bit libraries in this location.])
125AC_DEFINE_UNQUOTED([CONFIG_CONSUMERD64_LIBDIR], "$CONSUMERD64_LIBDIR", [Search for consumerd 64-bit libraries in this location.])
0c95f5b2
DG
126AC_DEFINE_UNQUOTED([CONFIG_BABELTRACE_BIN], "$BABELTRACE_BIN", [Location of the babeltrace viewer executable.])
127AC_DEFINE_UNQUOTED([CONFIG_LTTV_GUI_BIN], "$LTTV_GUI_BIN", [Location of the lttv GUI viewer executable.])
b8ec3da8 128AC_DEFINE_UNQUOTED([CONFIG_SESSIOND_BIN], "$SESSIOND_BIN", [Location of the sessiond executable.])
d386c872 129AC_DEFINE_UNQUOTED([CONFIG_LTTNG_SYSTEM_RUNDIR], ["$LTTNG_SYSTEM_RUNDIR"], [LTTng system runtime directory])
43cadc7e 130
26296c48
JG
131if test "x$prefix" = "xNONE"; then
132 prefix=$ac_default_prefix
133fi
134CONFDIR=`eval echo $sysconfdir`
135AC_SUBST(CONFDIR)
136AC_DEFINE_UNQUOTED([CONFIG_LTTNG_SYSTEM_CONFIGDIR],"$CONFDIR", [LTTng system configuration directory.])
137
dcf266c0
JG
138AC_DEFINE_DIR([CONFIG_LTTNG_SYSTEM_DATADIR],[datadir], [LTTng system data directory.])
139
26296c48 140#
fac6795d
DG
141# Check for pthread
142AC_CHECK_LIB([pthread], [pthread_create], [],
3b6502fd 143 [AC_MSG_ERROR([Cannot find libpthread. Use LDFLAGS=-Ldir to specify its location.])]
fac6795d
DG
144)
145
146# Check libpopt
cc1aea28
SM
147PKG_CHECK_MODULES([POPT], [popt],
148 [LIBS="$LIBS $POPT_LIBS"],
3b6502fd
JR
149 [
150 AC_MSG_WARN([pkg-config was unable to find a valid .pc for libpopt. Set PKG_CONFIG_PATH to specify the pkgconfig configuration file location])
151 AC_MSG_WARN([Finding libpopt without pkg-config.])
152 AC_CHECK_LIB([popt],
153 [poptGetContext],
154 [],
155 [
156 AC_MSG_ERROR([Cannot find libpopt. Either set PKG_CONFIG_PATH to the configuration file location or use LDFLAGS=-Ldir to specify the library location])
157 ]
158 )
159 ]
fac6795d
DG
160)
161
3c038aa8 162AM_PATH_XML2(2.7.6, true, AC_MSG_ERROR(No supported version of libxml2 found.))
6c1494fd 163
ffe60014 164# Check for libuuid
cc1aea28 165PKG_CHECK_MODULES([UUID], [uuid],
ffe60014 166[
cc1aea28 167 LIBS="$LIBS $UUID_LIBS"
ffe60014
DG
168 AC_DEFINE_UNQUOTED([LTTNG_HAVE_LIBUUID], 1, [Has libuuid support.])
169 have_libuuid=yes
170],
171[
3b6502fd
JR
172 AC_MSG_WARN([pkg-config was unable to find a valid .pc for libuuid. Set PKG_CONFIG_PATH to specify the pkgconfig configuration file location])
173 AC_MSG_WARN([Finding libuuid without pkg-config.])
174 AC_CHECK_LIB([uuid],
175 [uuid_generate],
176 [
177 AC_DEFINE_UNQUOTED([LTTNG_HAVE_LIBUUID], 1, [Has libuuid support.])
178 have_libuuid=yes
179 ],
180 [
181 # libuuid not found, check for uuid_create in libc.
182 AC_CHECK_LIB([c],
183 [uuid_create],
184 [
185 AC_DEFINE_UNQUOTED([LTTNG_HAVE_LIBC_UUID], 1, [Has libc uuid support.])
186 have_libc_uuid=yes
187 ],
188 [
189 AC_MSG_ERROR([Cannot find libuuid uuid_generate nor libc uuid_create. Either set PKG_CONFIG_PATH to the configuration file location or use LDFLAGS=-Ldir to specify the library location])
190 ]
191 )
192 ]
193 )
194])
ffe60014
DG
195AM_CONDITIONAL([LTTNG_BUILD_WITH_LIBUUID], [test "x$have_libuuid" = "xyes"])
196AM_CONDITIONAL([LTTNG_BUILD_WITH_LIBC_UUID], [test "x$have_libc_uuid" = "xyes"])
197
6e59ae26 198# URCU library version needed or newer
5dd52fd4 199m4_define([WRONG_LIBURCU_MSG], [Userspace RCU (liburcu) >= 0.8.0 is needed])
6e59ae26 200
3ffccaed 201# Check liburcu needed function calls
fac6795d 202AC_CHECK_DECL([cds_list_add], [],
5dd52fd4 203 [AC_MSG_ERROR([WRONG_LIBURCU_MSG])], [[#include <urcu/list.h>]])
8bdee6e2 204AC_CHECK_DECL([cds_wfcq_init], [],
5dd52fd4 205 [AC_MSG_ERROR([WRONG_LIBURCU_MSG])], [[#include <urcu/wfcqueue.h>]])
8bdee6e2 206AC_CHECK_DECL([cds_wfcq_dequeue_blocking], [],
5dd52fd4 207 [AC_MSG_ERROR([WRONG_LIBURCU_MSG])], [[#include <urcu/wfcqueue.h>]])
8e12081b 208AC_CHECK_DECL([futex_async], [],
5dd52fd4 209 [AC_MSG_ERROR([WRONG_LIBURCU_MSG])], [[#include <urcu/futex.h>]])
3ffccaed 210AC_CHECK_DECL([rcu_thread_offline], [],
5dd52fd4 211 [AC_MSG_ERROR([WRONG_LIBURCU_MSG])], [[#include <urcu.h>]])
3ffccaed 212AC_CHECK_DECL([rcu_thread_online], [],
5dd52fd4 213 [AC_MSG_ERROR([WRONG_LIBURCU_MSG])], [[#include <urcu.h>]])
6e59ae26 214AC_CHECK_DECL([caa_likely], [],
5dd52fd4
PP
215 [AC_MSG_ERROR([WRONG_LIBURCU_MSG])], [[#include <urcu.h>]])
216
e6b66098
YB
217#Function added in urcu 0.7.0
218AC_CHECK_DECL([cmm_smp_mb__before_uatomic_or], [],
5dd52fd4 219 [AC_MSG_ERROR([WRONG_LIBURCU_MSG])], [[#include <urcu.h>]]
e6b66098 220)
6e59ae26 221
234170ac
UTL
222# Check kmod library
223AC_ARG_WITH(kmod-prefix,
224 AS_HELP_STRING([--with-kmod-prefix=PATH],
225 [Specify the installation prefix of the kmod library.
226 Headers must be in PATH/include; libraries in PATH/lib.]),
227 [
228 CPPFLAGS="$CPPFLAGS -I${withval}/include"
229 LDFLAGS="$LDFLAGS -L${withval}/lib64 -L${withval}/lib"
230 ])
231
232AC_ARG_ENABLE(kmod,
233 AS_HELP_STRING([--disable-kmod],[build without kmod support]),
234 kmod_support=zz$enableval, kmod_support=yes)
235
236AS_IF([test "x$kmod_support" = "xyes"], [
237 AC_CHECK_LIB([kmod], [kmod_module_probe_insert_module],
238 [
239 AC_DEFINE([HAVE_KMOD], [1], [has kmod support])
240 LIBS="$LIBS -lkmod"
241 kmod_found=yes
242 ],
243 kmod_found=no
244 )
245])
246AM_CONDITIONAL([HAVE_KMOD], [test "x$kmod_found" = xyes])
247
b91dd016
SS
248AC_ARG_WITH(lttng-ust-prefix,
249 AS_HELP_STRING([--with-lttng-ust-prefix=PATH],
250 [Specify the installation prefix of the lttng-ust library.
251 Headers must be in PATH/include; libraries in PATH/lib.]),
252 [
253 CPPFLAGS="$CPPFLAGS -I${withval}/include"
254 LDFLAGS="$LDFLAGS -L${withval}/lib64 -L${withval}/lib"
255 ])
256
74d0b642
MD
257# Check liblttng-ust-ctl library
258AC_ARG_ENABLE(lttng-ust,
6299f964 259 AS_HELP_STRING([--disable-lttng-ust],[build without LTTng-UST (Userspace Tracing) support]),
0e636c80 260 lttng_ust_support=$enableval, lttng_ust_support=yes)
74d0b642 261
6299f964 262AS_IF([test "x$lttng_ust_support" = "xyes"], [
b33f11e2 263 AC_CHECK_LIB([lttng-ust-ctl], [ustctl_recv_channel_from_consumer],
082d0908
CB
264 [
265 AC_DEFINE([HAVE_LIBLTTNG_UST_CTL], [1], [has LTTng-UST control support])
266 lttng_ust_ctl_found=yes
267 ],
b33f11e2 268 [AC_MSG_ERROR([Cannot find LTTng-UST >= 2.2.x. Use --with-lttng-ust-prefix=PREFIX to specify its location, or specify --disable-lttng-ust to build lttng-tools without LTTng-UST support.])],
b827d67e 269 [-lurcu-common -lurcu-bp -lurcu-cds -lrt]
74d0b642 270 )
6299f964 271])
082d0908 272AM_CONDITIONAL([HAVE_LIBLTTNG_UST_CTL], [test "x$lttng_ust_ctl_found" = xyes])
281047b8 273AC_CHECK_FUNCS([sched_getcpu sysconf sync_file_range])
f6a9efaa 274
6816a5cb
MD
275# check for dlopen
276AC_CHECK_LIB([dl], [dlopen],
277[
278 have_libdl=yes
279],
280[
281 #libdl not found, check for dlopen in libc.
282 AC_CHECK_LIB([c], [dlopen],
283 [
284 have_libc_dl=yes
285 ],
286 [
287 AC_MSG_ERROR([Cannot find dlopen in libdl nor libc. Use [LDFLAGS]=-Ldir to specify their location.])
288 ])
289])
290AM_CONDITIONAL([LTTNG_TOOLS_BUILD_WITH_LIBDL], [test "x$have_libdl" = "xyes"])
291AM_CONDITIONAL([LTTNG_TOOLS_BUILD_WITH_LIBC_DL], [test "x$have_libc_dl" = "xyes"])
292
53a80697
MD
293# Check for fmemopen
294AC_CHECK_LIB([c], [fmemopen],
295[
296 AC_DEFINE_UNQUOTED([LTTNG_HAVE_FMEMOPEN], 1, [Has fmemopen support.])
297]
298)
299
300# Check for open_memstream
301AC_CHECK_LIB([c], [open_memstream],
302[
303 AC_DEFINE_UNQUOTED([LTTNG_HAVE_OPEN_MEMSTREAM], 1, [Has open_memstream support.])
304]
305)
306
ceb6ba51
DG
307AC_ARG_ENABLE([git-version],
308 [AC_HELP_STRING([--disable-git-version],
309 [Do not use the git version for the build])],
4c6ac053 310 [have_git_version=$enableval], [have_git_version=yes]
ceb6ba51 311)
4c6ac053
MD
312
313AM_CONDITIONAL([LTTNG_TOOLS_BUILD_GIT_SOURCE],
314 [test "x${have_git_version}" = "xyes"])
ceb6ba51 315
36907cb5
DS
316# For Python
317# SWIG version needed or newer:
318swig_version=2.0.0
319
320AC_ARG_ENABLE([python-bindings],
321 [AC_HELP_STRING([--enable-python-bindings],
322 [compile Python bindings])],
323 [enable_python=yes], [enable_python=no])
324
325AM_CONDITIONAL([USE_PYTHON], [test "x${enable_python:-yes}" = xyes])
326
327if test "x${enable_python:-yes}" = xyes; then
328 AX_PKG_SWIG($swig_version, [], [ AC_MSG_ERROR([SWIG $swig_version or newer is needed]) ])
329 AM_PATH_PYTHON
330
331 AC_ARG_VAR([PYTHON_INCLUDE], [Include flags for python, bypassing python-config])
332 AC_ARG_VAR([PYTHON_CONFIG], [Path to python-config])
333 AS_IF([test -z "$PYTHON_INCLUDE"], [
334 AS_IF([test -z "$PYTHON_CONFIG"], [
335 AC_PATH_PROGS([PYTHON_CONFIG],
336 [python$PYTHON_VERSION-config python-config],
337 [no],
338 [`dirname $PYTHON`])
339 AS_IF([test "$PYTHON_CONFIG" = no], [AC_MSG_ERROR([cannot find python-config for $PYTHON. Do you have python-dev installed?])])
340 ])
341 AC_MSG_CHECKING([python include flags])
342 PYTHON_INCLUDE=`$PYTHON_CONFIG --includes`
343 AC_MSG_RESULT([$PYTHON_INCLUDE])
344 ])
345
346else
347 AC_MSG_NOTICE([You may configure with --enable-python-bindings ]dnl
348[if you want Python bindings.])
349
350fi
351
3ffccaed 352# Epoll check. If not present, the build will fallback on poll() API
71615260
DG
353AX_HAVE_EPOLL(
354 [AX_CONFIG_FEATURE_ENABLE(epoll)],
355 [AX_CONFIG_FEATURE_DISABLE(epoll)]
356)
71615260
DG
357AX_CONFIG_FEATURE(
358 [epoll], [This platform supports epoll(7)],
359 [HAVE_EPOLL], [This platform supports epoll(7).],
360 [enable_epoll="yes"], [enable_epoll="no"]
361)
71615260
DG
362AM_CONDITIONAL([COMPAT_EPOLL], [ test "$enable_epoll" = "yes" ])
363
37175ce4 364# Set compile flags to java include files if given. This is only used to
504d4ace 365# compile java agent tests.
37175ce4
DG
366AC_ARG_WITH([java-jdk],
367 [AS_HELP_STRING([--with-java-jdk=DIR],[use the Java JDK in DIR. Ex : $JAVA_HOME.])],
368 [JAVA_JDK=$withval],
369 [JAVA_JDK=""]
370)
371AM_CONDITIONAL([HAVE_JAVA_JDK], [test $JAVA_JDK], [Java JDK path])
372AC_SUBST([JAVA_JDK])
373
374AS_IF([test $JAVA_JDK],[
375 AS_IF([test -d $JAVA_JDK],
376 [
377 AC_MSG_RESULT([using Java includes in $JAVA_SDK])
378 SUBDIRS=`find $JAVA_JDK/include -type d`
379 CPPFLAGS+=" "
380 CPPFLAGS+=`for x in $SUBDIRS; do echo -n "-I$x "; done`
381 CPPFLAGS+=" "
382 ],[AC_MSG_ERROR(Unable to find Java include files in $JAVA_JDK)]
383 )
384])
385
504d4ace 386# Check for the UST agent jar file in the system. Hardcoded path is added here
37175ce4 387# since we have *no* idea where this could be installed. Note that this is only
504d4ace
DG
388# used for agent testing.
389AC_MSG_CHECKING(Java UST agent jar file)
390java_agent_jar_path="${prefix}/share/java/liblttng-ust-agent.jar"
391if test -f $java_agent_jar_path; then
392 build_java_agent=yes
37175ce4
DG
393 AC_MSG_RESULT(found)
394else
504d4ace 395 build_java_agent=no
37175ce4
DG
396 AC_MSG_RESULT(not found)
397fi
504d4ace
DG
398AM_CONDITIONAL([BUILD_JAVA_AGENT], [test "x$build_java_agent" = "xyes"])
399AC_SUBST([java_agent_jar_path])
400
401# Check for log4j support on the system to know if we can build or not the
402# log4j tests.
403if test "x$build_java_agent" = "xyes"; then
404 AC_MSG_CHECKING(Java agent support for log4j)
405 AX_JAVA_OPTIONS
406 AX_PROG_JAR
407 AX_PROG_JAVA
408 AX_PROG_JAVAC
409
410 # By default, use a commonly used classpath on the system to ease things up
411 # for the Java testing in this directory.
412 LOG4J_CLASSPATH="$java_agent_jar_path:$CLASSPATH:.:/usr/share/java/*"
413 JAVAFLAGS="-cp $LOG4J_CLASSPATH"
414 JAVACFLAGS="$JAVAFLAGS"
415 AX_CHECK_CLASS(org.apache.log4j.Logger)
416
417 if test "x$ac_cv_class_org_apache_log4j_Logger" = "xno"; then
418 build_java_log4j_agent=no
419 else
420 build_java_log4j_agent=yes
421 fi
422fi
423AM_CONDITIONAL([BUILD_JAVA_LOG4J_AGENT], [test "x$build_java_log4j_agent" = "xyes"])
37175ce4 424
c72b7d96 425AC_SYS_LARGEFILE
fac6795d 426AC_PROG_CC
3889a2d6 427LT_INIT
953192ba
MD
428AC_PROG_YACC
429AC_PROG_LEX
430
6ed49714
YB
431if test ! -f "$srcdir/src/lib/lttng-ctl/filter/filter-parser.h"; then
432 if test x"$YACC" != "xbison -y"; then
433 AC_MSG_ERROR([[bison not found and is required when building from git.
434 Please install bison]])
435 fi
78d31fa9
JR
436 AC_PATH_PROG([BISON],[bison])
437 AX_PROG_BISON_VERSION([2.4], [],[
438 AC_MSG_ERROR([[Bison >= 2.4 is required when building from git]])
439 ])
6ed49714
YB
440fi
441
442if test ! -f "$srcdir/src/lib/lttng-ctl/filter/filter-lexer.c"; then
443 if test x"$LEX" != "xflex"; then
444 AC_MSG_ERROR([[flex not found and is required when building from git.
445 Please install flex]])
446 fi
50258bd7
JR
447 AC_PATH_PROG([FLEX],[flex])
448 AX_PROG_FLEX_VERSION([2.5.35], [],[
449 AC_MSG_ERROR([[Flex >= 2.5.35 is required when building from git]])
450 ])
6ed49714 451fi
fac6795d 452
6e2d116c
DG
453CFLAGS="-Wall $CFLAGS -g -fno-strict-aliasing"
454
c72b7d96 455DEFAULT_INCLUDES="-I\$(top_srcdir) -I\$(top_builddir) -I\$(top_builddir)/src -I\$(top_builddir)/include -include config.h"
6e2d116c
DG
456
457lttngincludedir="${includedir}/lttng"
458
459AC_SUBST(lttngincludedir)
460AC_SUBST(DEFAULT_INCLUDES)
461
386418ba
MD
462lttnglibexecdir="${libdir}/lttng/libexec"
463AC_SUBST(lttnglibexecdir)
464
fac6795d
DG
465AC_CONFIG_FILES([
466 Makefile
10a8a223 467 doc/Makefile
6991b181 468 doc/man/Makefile
fac6795d 469 include/Makefile
36907cb5
DS
470 extras/Makefile
471 extras/bindings/Makefile
472 extras/bindings/swig/Makefile
473 extras/bindings/swig/python/Makefile
57f0bd0c 474 extras/core-handler/Makefile
10a8a223
DG
475 src/Makefile
476 src/common/Makefile
477 src/common/kernel-ctl/Makefile
478 src/common/kernel-consumer/Makefile
479 src/common/ust-consumer/Makefile
480 src/common/hashtable/Makefile
481 src/common/sessiond-comm/Makefile
d31efcff 482 src/common/compat/Makefile
00e2e675 483 src/common/relayd/Makefile
6242251b 484 src/common/testpoint/Makefile
309167d2 485 src/common/index/Makefile
55d09795 486 src/common/health/Makefile
bac6245e 487 src/common/config/Makefile
10a8a223
DG
488 src/lib/Makefile
489 src/lib/lttng-ctl/Makefile
d00c599e 490 src/lib/lttng-ctl/filter/Makefile
2c452d45 491 src/lib/lttng-ctl/lttng-ctl.pc
10a8a223
DG
492 src/bin/Makefile
493 src/bin/lttng-consumerd/Makefile
494 src/bin/lttng-sessiond/Makefile
b8aa1682 495 src/bin/lttng-relayd/Makefile
10a8a223 496 src/bin/lttng/Makefile
fac6795d 497 tests/Makefile
9ac429ef
CB
498 tests/regression/Makefile
499 tests/regression/kernel/Makefile
500 tests/regression/tools/Makefile
501 tests/regression/tools/streaming/Makefile
502 tests/regression/tools/filtering/Makefile
503 tests/regression/tools/health/Makefile
d946d662 504 tests/regression/tools/tracefile-limits/Makefile
07b86b52 505 tests/regression/tools/snapshots/Makefile
1b368955 506 tests/regression/tools/live/Makefile
345121ec 507 tests/regression/tools/exclusion/Makefile
e02b109b 508 tests/regression/tools/save-load/Makefile
68270f0f 509 tests/regression/tools/mi/Makefile
9ac429ef
CB
510 tests/regression/ust/Makefile
511 tests/regression/ust/nprocesses/Makefile
512 tests/regression/ust/high-throughput/Makefile
513 tests/regression/ust/low-throughput/Makefile
514 tests/regression/ust/before-after/Makefile
f5481aa9 515 tests/regression/ust/buffers-pid/Makefile
a788a3ed 516 tests/regression/ust/periodical-metadata-flush/Makefile
9ac429ef
CB
517 tests/regression/ust/multi-session/Makefile
518 tests/regression/ust/overlap/Makefile
519 tests/regression/ust/overlap/demo/Makefile
91c75285 520 tests/regression/ust/linking/Makefile
43c28d50 521 tests/regression/ust/daemon/Makefile
ee28adfb 522 tests/regression/ust/exit-fast/Makefile
37bd6c8e 523 tests/regression/ust/fork/Makefile
5836cdc2 524 tests/regression/ust/libc-wrapper/Makefile
37175ce4 525 tests/regression/ust/java-jul/Makefile
504d4ace 526 tests/regression/ust/java-log4j/Makefile
605ac758 527 tests/stress/Makefile
81d029da 528 tests/unit/Makefile
1501a7f3 529 tests/unit/ini_config/Makefile
86a96e6c
CB
530 tests/utils/Makefile
531 tests/utils/tap/Makefile
7e0cc23b
CB
532 tests/utils/testapp/Makefile
533 tests/utils/testapp/gen-ust-events/Makefile
ffb08a8c 534 tests/utils/testapp/gen-ust-nevents/Makefile
b02dcdb8 535 tests/utils/testapp/gen-ust-tracef/Makefile
fac6795d
DG
536])
537
538AC_OUTPUT
6299f964 539
994dd8a4 540#
6299f964 541# Mini-report on what will be built
994dd8a4
AM
542#
543AS_ECHO()
544
0e4cbe7e
DG
545AS_ECHO("Version name: $version_name")
546AS_ECHO("$version_description")
547
548AS_ECHO()
549
994dd8a4 550# Target architecture we're building for
2d90c6c8 551target_arch=$host_cpu
994dd8a4
AM
552[
553for f in $CFLAGS; do
554 if test $f = "-m32"; then
555 target_arch="32-bit"
556 elif test $f = "-m64"; then
557 target_arch="64-bit"
558 fi
559done
560]
561AS_ECHO_N("Target architecture: ")
562AS_ECHO($target_arch)
563
234170ac
UTL
564# kmod enabled/disabled
565AS_ECHO_N("libkmod support: ")
566AS_IF([test "x$kmod_found" = "xyes"],[
567 AS_ECHO("Enabled")
568],[
569 AS_ECHO("Disabled")
570])
571
994dd8a4 572# LTTng-UST enabled/disabled
6299f964 573AS_ECHO_N("Lttng-UST support: ")
994dd8a4
AM
574AS_IF([test "x$lttng_ust_support" = "xyes"],[
575 AS_ECHO("Enabled")
576],[
577 AS_ECHO("Disabled")
578])
55bed213 579
36907cb5
DS
580#Python binding enabled/disabled
581AS_ECHO_N("Python binding: ")
582AS_IF([test "x${enable_python:-yes}" = xyes], [
583 AS_ECHO("Enabled")
584],[
585 AS_ECHO("Disabled")
586])
587
994dd8a4
AM
588# Do we build only the consumerd, or everything
589AS_IF([test "x$consumerd_only" = "xyes"],[
590 AS_ECHO("Only the consumerd daemon will be built.")
591],[
592 AS_ECHO("All binaries will be built.")
593])
594
5fb528f1
AM
595# Print the bindir and libdir this `make install' will install into.
596AS_ECHO()
597AS_ECHO_N("Binaries will be installed in: ")
598AS_ECHO("`eval eval echo $bindir`")
599AS_ECHO_N("Libraries will be installed in: ")
600AS_ECHO("`eval eval echo $libdir`")
601
994dd8a4
AM
602# If we build the sessiond, print the paths it will use
603AS_IF([test "x$consumerd_only" = "xno"],[
b8ec3da8
SM
604 AS_ECHO()
605 AS_ECHO_N("The lttng command will look for the lttng-sessiond executable at: ")
606 AS_IF([test "$SESSIOND_BIN" = ""],[
607 AS_ECHO_N("`eval eval echo $bindir`")
608 AS_ECHO("/lttng-sessiond")
609 ],[
610 AS_ECHO("$SESSIOND_BIN")
611 ])
612
994dd8a4
AM
613 AS_ECHO()
614 AS_ECHO("The sessiond daemon will look in the following directories: ")
615 AS_ECHO_N("32-bit consumerd executable at: ")
616 AS_IF([test "$CONSUMERD32_BIN" = ""],[
386418ba 617 AS_ECHO_N("`eval eval echo $lttnglibexecdir`")
994dd8a4
AM
618 AS_ECHO("/lttng-consumerd")
619 ],[
620 AS_ECHO("$CONSUMERD32_BIN")
621 ])
622
623 AS_ECHO_N("32-bit consumer libraries in: ")
624 AS_IF([test "$CONSUMERD32_LIBDIR" = ""],[
625 AS_ECHO("`eval eval echo $libdir`")
626 ],[
627 AS_ECHO("$CONSUMERD32_LIBDIR")
628 ])
629
630 AS_ECHO_N("64-bit consumerd executable at: ")
631 AS_IF([test "$CONSUMERD64_BIN" = ""],[
386418ba 632 AS_ECHO_N("`eval eval echo $lttnglibexecdir`")
994dd8a4
AM
633 AS_ECHO("/lttng-consumerd")
634 ],[
635 AS_ECHO("$CONSUMERD64_BIN")
636 ])
637
638 AS_ECHO_N("64-bit consumer libraries in: ")
639 AS_IF([test "$CONSUMERD64_LIBDIR" = ""],[
640 AS_ECHO("`eval eval echo $libdir`")
641 ],[
642 AS_ECHO("$CONSUMERD64_LIBDIR")
643 ])
644])
6299f964 645
994dd8a4 646AS_ECHO()
6299f964 647
This page took 0.066614 seconds and 4 git commands to generate.