Fix: prevent dangling pointer in utils_partial_realpath
[lttng-tools.git] / configure.ac
CommitLineData
4c436586 1AC_PREREQ([2.64])
d522c1f1 2AC_INIT([lttng-tools],[2.6.0],[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], [],
143 [AC_MSG_ERROR([Cannot find libpthread. Use [LDFLAGS]=-Ldir to specify its location.])]
144)
145
146# Check libpopt
147AC_CHECK_LIB([popt], [poptGetContext], [],
148 [AC_MSG_ERROR([Cannot find libpopt. Use [LDFLAGS]=-Ldir to specify its location.])]
149)
150
3c038aa8 151AM_PATH_XML2(2.7.6, true, AC_MSG_ERROR(No supported version of libxml2 found.))
6c1494fd 152
ffe60014
DG
153# Check for libuuid
154AC_CHECK_LIB([uuid], [uuid_generate],
155[
156 AC_DEFINE_UNQUOTED([LTTNG_HAVE_LIBUUID], 1, [Has libuuid support.])
157 have_libuuid=yes
158],
159[
160 # libuuid not found, check for uuid_create in libc.
161 AC_CHECK_LIB([c], [uuid_create],
162 [
163 AC_DEFINE_UNQUOTED([LTTNG_HAVE_LIBC_UUID], 1, [Has libc uuid support.])
164 have_libc_uuid=yes
165 ],
166 [
167 AC_MSG_ERROR([Cannot find libuuid uuid_generate nor libc uuid_create. Use [LDFLAGS]=-Ldir to specify their location.])
168 ])
169]
170)
171AM_CONDITIONAL([LTTNG_BUILD_WITH_LIBUUID], [test "x$have_libuuid" = "xyes"])
172AM_CONDITIONAL([LTTNG_BUILD_WITH_LIBC_UUID], [test "x$have_libc_uuid" = "xyes"])
173
6e59ae26 174# URCU library version needed or newer
8bdee6e2 175liburcu_version=">= 0.8.0"
6e59ae26 176
3ffccaed 177# Check liburcu needed function calls
fac6795d 178AC_CHECK_DECL([cds_list_add], [],
8e12081b 179 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/list.h>]]
fac6795d 180)
8bdee6e2
SM
181AC_CHECK_DECL([cds_wfcq_init], [],
182 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/wfcqueue.h>]]
8e12081b 183)
8bdee6e2
SM
184AC_CHECK_DECL([cds_wfcq_dequeue_blocking], [],
185 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/wfcqueue.h>]]
487cf67c 186)
8e12081b
DG
187AC_CHECK_DECL([futex_async], [],
188 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu/futex.h>]]
099e26bd 189)
3ffccaed
DG
190AC_CHECK_DECL([rcu_thread_offline], [],
191 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu.h>]]
192)
193AC_CHECK_DECL([rcu_thread_online], [],
194 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu.h>]]
195)
6e59ae26
DG
196AC_CHECK_DECL([caa_likely], [],
197 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu.h>]]
198)
e6b66098
YB
199#Function added in urcu 0.7.0
200AC_CHECK_DECL([cmm_smp_mb__before_uatomic_or], [],
201 [AC_MSG_ERROR([liburcu $liburcu_version or newer is needed])], [[#include <urcu.h>]]
202)
6e59ae26 203
234170ac
UTL
204# Check kmod library
205AC_ARG_WITH(kmod-prefix,
206 AS_HELP_STRING([--with-kmod-prefix=PATH],
207 [Specify the installation prefix of the kmod library.
208 Headers must be in PATH/include; libraries in PATH/lib.]),
209 [
210 CPPFLAGS="$CPPFLAGS -I${withval}/include"
211 LDFLAGS="$LDFLAGS -L${withval}/lib64 -L${withval}/lib"
212 ])
213
214AC_ARG_ENABLE(kmod,
215 AS_HELP_STRING([--disable-kmod],[build without kmod support]),
216 kmod_support=zz$enableval, kmod_support=yes)
217
218AS_IF([test "x$kmod_support" = "xyes"], [
219 AC_CHECK_LIB([kmod], [kmod_module_probe_insert_module],
220 [
221 AC_DEFINE([HAVE_KMOD], [1], [has kmod support])
222 LIBS="$LIBS -lkmod"
223 kmod_found=yes
224 ],
225 kmod_found=no
226 )
227])
228AM_CONDITIONAL([HAVE_KMOD], [test "x$kmod_found" = xyes])
229
b91dd016
SS
230AC_ARG_WITH(lttng-ust-prefix,
231 AS_HELP_STRING([--with-lttng-ust-prefix=PATH],
232 [Specify the installation prefix of the lttng-ust library.
233 Headers must be in PATH/include; libraries in PATH/lib.]),
234 [
235 CPPFLAGS="$CPPFLAGS -I${withval}/include"
236 LDFLAGS="$LDFLAGS -L${withval}/lib64 -L${withval}/lib"
237 ])
238
74d0b642
MD
239# Check liblttng-ust-ctl library
240AC_ARG_ENABLE(lttng-ust,
6299f964 241 AS_HELP_STRING([--disable-lttng-ust],[build without LTTng-UST (Userspace Tracing) support]),
0e636c80 242 lttng_ust_support=$enableval, lttng_ust_support=yes)
74d0b642 243
6299f964 244AS_IF([test "x$lttng_ust_support" = "xyes"], [
b33f11e2 245 AC_CHECK_LIB([lttng-ust-ctl], [ustctl_recv_channel_from_consumer],
082d0908
CB
246 [
247 AC_DEFINE([HAVE_LIBLTTNG_UST_CTL], [1], [has LTTng-UST control support])
248 lttng_ust_ctl_found=yes
249 ],
b33f11e2 250 [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 251 [-lurcu-common -lurcu-bp -lurcu-cds -lrt]
74d0b642 252 )
6299f964 253])
082d0908 254AM_CONDITIONAL([HAVE_LIBLTTNG_UST_CTL], [test "x$lttng_ust_ctl_found" = xyes])
281047b8 255AC_CHECK_FUNCS([sched_getcpu sysconf sync_file_range])
f6a9efaa 256
6816a5cb
MD
257# check for dlopen
258AC_CHECK_LIB([dl], [dlopen],
259[
260 have_libdl=yes
261],
262[
263 #libdl not found, check for dlopen in libc.
264 AC_CHECK_LIB([c], [dlopen],
265 [
266 have_libc_dl=yes
267 ],
268 [
269 AC_MSG_ERROR([Cannot find dlopen in libdl nor libc. Use [LDFLAGS]=-Ldir to specify their location.])
270 ])
271])
272AM_CONDITIONAL([LTTNG_TOOLS_BUILD_WITH_LIBDL], [test "x$have_libdl" = "xyes"])
273AM_CONDITIONAL([LTTNG_TOOLS_BUILD_WITH_LIBC_DL], [test "x$have_libc_dl" = "xyes"])
274
53a80697
MD
275# Check for fmemopen
276AC_CHECK_LIB([c], [fmemopen],
277[
278 AC_DEFINE_UNQUOTED([LTTNG_HAVE_FMEMOPEN], 1, [Has fmemopen support.])
279]
280)
281
282# Check for open_memstream
283AC_CHECK_LIB([c], [open_memstream],
284[
285 AC_DEFINE_UNQUOTED([LTTNG_HAVE_OPEN_MEMSTREAM], 1, [Has open_memstream support.])
286]
287)
288
ceb6ba51
DG
289AC_ARG_ENABLE([git-version],
290 [AC_HELP_STRING([--disable-git-version],
291 [Do not use the git version for the build])],
4c6ac053 292 [have_git_version=$enableval], [have_git_version=yes]
ceb6ba51 293)
4c6ac053
MD
294
295AM_CONDITIONAL([LTTNG_TOOLS_BUILD_GIT_SOURCE],
296 [test "x${have_git_version}" = "xyes"])
ceb6ba51 297
36907cb5
DS
298# For Python
299# SWIG version needed or newer:
300swig_version=2.0.0
301
302AC_ARG_ENABLE([python-bindings],
303 [AC_HELP_STRING([--enable-python-bindings],
304 [compile Python bindings])],
305 [enable_python=yes], [enable_python=no])
306
307AM_CONDITIONAL([USE_PYTHON], [test "x${enable_python:-yes}" = xyes])
308
309if test "x${enable_python:-yes}" = xyes; then
310 AX_PKG_SWIG($swig_version, [], [ AC_MSG_ERROR([SWIG $swig_version or newer is needed]) ])
311 AM_PATH_PYTHON
312
313 AC_ARG_VAR([PYTHON_INCLUDE], [Include flags for python, bypassing python-config])
314 AC_ARG_VAR([PYTHON_CONFIG], [Path to python-config])
315 AS_IF([test -z "$PYTHON_INCLUDE"], [
316 AS_IF([test -z "$PYTHON_CONFIG"], [
317 AC_PATH_PROGS([PYTHON_CONFIG],
318 [python$PYTHON_VERSION-config python-config],
319 [no],
320 [`dirname $PYTHON`])
321 AS_IF([test "$PYTHON_CONFIG" = no], [AC_MSG_ERROR([cannot find python-config for $PYTHON. Do you have python-dev installed?])])
322 ])
323 AC_MSG_CHECKING([python include flags])
324 PYTHON_INCLUDE=`$PYTHON_CONFIG --includes`
325 AC_MSG_RESULT([$PYTHON_INCLUDE])
326 ])
327
328else
329 AC_MSG_NOTICE([You may configure with --enable-python-bindings ]dnl
330[if you want Python bindings.])
331
332fi
333
3ffccaed 334# Epoll check. If not present, the build will fallback on poll() API
71615260
DG
335AX_HAVE_EPOLL(
336 [AX_CONFIG_FEATURE_ENABLE(epoll)],
337 [AX_CONFIG_FEATURE_DISABLE(epoll)]
338)
71615260
DG
339AX_CONFIG_FEATURE(
340 [epoll], [This platform supports epoll(7)],
341 [HAVE_EPOLL], [This platform supports epoll(7).],
342 [enable_epoll="yes"], [enable_epoll="no"]
343)
71615260
DG
344AM_CONDITIONAL([COMPAT_EPOLL], [ test "$enable_epoll" = "yes" ])
345
37175ce4 346# Set compile flags to java include files if given. This is only used to
504d4ace 347# compile java agent tests.
37175ce4
DG
348AC_ARG_WITH([java-jdk],
349 [AS_HELP_STRING([--with-java-jdk=DIR],[use the Java JDK in DIR. Ex : $JAVA_HOME.])],
350 [JAVA_JDK=$withval],
351 [JAVA_JDK=""]
352)
353AM_CONDITIONAL([HAVE_JAVA_JDK], [test $JAVA_JDK], [Java JDK path])
354AC_SUBST([JAVA_JDK])
355
356AS_IF([test $JAVA_JDK],[
357 AS_IF([test -d $JAVA_JDK],
358 [
359 AC_MSG_RESULT([using Java includes in $JAVA_SDK])
360 SUBDIRS=`find $JAVA_JDK/include -type d`
361 CPPFLAGS+=" "
362 CPPFLAGS+=`for x in $SUBDIRS; do echo -n "-I$x "; done`
363 CPPFLAGS+=" "
364 ],[AC_MSG_ERROR(Unable to find Java include files in $JAVA_JDK)]
365 )
366])
367
504d4ace 368# Check for the UST agent jar file in the system. Hardcoded path is added here
37175ce4 369# since we have *no* idea where this could be installed. Note that this is only
504d4ace
DG
370# used for agent testing.
371AC_MSG_CHECKING(Java UST agent jar file)
372java_agent_jar_path="${prefix}/share/java/liblttng-ust-agent.jar"
373if test -f $java_agent_jar_path; then
374 build_java_agent=yes
37175ce4
DG
375 AC_MSG_RESULT(found)
376else
504d4ace 377 build_java_agent=no
37175ce4
DG
378 AC_MSG_RESULT(not found)
379fi
504d4ace
DG
380AM_CONDITIONAL([BUILD_JAVA_AGENT], [test "x$build_java_agent" = "xyes"])
381AC_SUBST([java_agent_jar_path])
382
383# Check for log4j support on the system to know if we can build or not the
384# log4j tests.
385if test "x$build_java_agent" = "xyes"; then
386 AC_MSG_CHECKING(Java agent support for log4j)
387 AX_JAVA_OPTIONS
388 AX_PROG_JAR
389 AX_PROG_JAVA
390 AX_PROG_JAVAC
391
392 # By default, use a commonly used classpath on the system to ease things up
393 # for the Java testing in this directory.
394 LOG4J_CLASSPATH="$java_agent_jar_path:$CLASSPATH:.:/usr/share/java/*"
395 JAVAFLAGS="-cp $LOG4J_CLASSPATH"
396 JAVACFLAGS="$JAVAFLAGS"
397 AX_CHECK_CLASS(org.apache.log4j.Logger)
398
399 if test "x$ac_cv_class_org_apache_log4j_Logger" = "xno"; then
400 build_java_log4j_agent=no
401 else
402 build_java_log4j_agent=yes
403 fi
404fi
405AM_CONDITIONAL([BUILD_JAVA_LOG4J_AGENT], [test "x$build_java_log4j_agent" = "xyes"])
37175ce4 406
c72b7d96 407AC_SYS_LARGEFILE
fac6795d 408AC_PROG_CC
3889a2d6 409LT_INIT
953192ba
MD
410AC_PROG_YACC
411AC_PROG_LEX
412
6ed49714
YB
413if test ! -f "$srcdir/src/lib/lttng-ctl/filter/filter-parser.h"; then
414 if test x"$YACC" != "xbison -y"; then
415 AC_MSG_ERROR([[bison not found and is required when building from git.
416 Please install bison]])
417 fi
78d31fa9
JR
418 AC_PATH_PROG([BISON],[bison])
419 AX_PROG_BISON_VERSION([2.4], [],[
420 AC_MSG_ERROR([[Bison >= 2.4 is required when building from git]])
421 ])
6ed49714
YB
422fi
423
424if test ! -f "$srcdir/src/lib/lttng-ctl/filter/filter-lexer.c"; then
425 if test x"$LEX" != "xflex"; then
426 AC_MSG_ERROR([[flex not found and is required when building from git.
427 Please install flex]])
428 fi
50258bd7
JR
429 AC_PATH_PROG([FLEX],[flex])
430 AX_PROG_FLEX_VERSION([2.5.35], [],[
431 AC_MSG_ERROR([[Flex >= 2.5.35 is required when building from git]])
432 ])
6ed49714 433fi
fac6795d 434
6e2d116c
DG
435CFLAGS="-Wall $CFLAGS -g -fno-strict-aliasing"
436
c72b7d96 437DEFAULT_INCLUDES="-I\$(top_srcdir) -I\$(top_builddir) -I\$(top_builddir)/src -I\$(top_builddir)/include -include config.h"
6e2d116c
DG
438
439lttngincludedir="${includedir}/lttng"
440
441AC_SUBST(lttngincludedir)
442AC_SUBST(DEFAULT_INCLUDES)
443
386418ba
MD
444lttnglibexecdir="${libdir}/lttng/libexec"
445AC_SUBST(lttnglibexecdir)
446
fac6795d
DG
447AC_CONFIG_FILES([
448 Makefile
10a8a223 449 doc/Makefile
6991b181 450 doc/man/Makefile
fac6795d 451 include/Makefile
36907cb5
DS
452 extras/Makefile
453 extras/bindings/Makefile
454 extras/bindings/swig/Makefile
455 extras/bindings/swig/python/Makefile
57f0bd0c 456 extras/core-handler/Makefile
10a8a223
DG
457 src/Makefile
458 src/common/Makefile
459 src/common/kernel-ctl/Makefile
460 src/common/kernel-consumer/Makefile
461 src/common/ust-consumer/Makefile
462 src/common/hashtable/Makefile
463 src/common/sessiond-comm/Makefile
d31efcff 464 src/common/compat/Makefile
00e2e675 465 src/common/relayd/Makefile
6242251b 466 src/common/testpoint/Makefile
309167d2 467 src/common/index/Makefile
55d09795 468 src/common/health/Makefile
bac6245e 469 src/common/config/Makefile
10a8a223
DG
470 src/lib/Makefile
471 src/lib/lttng-ctl/Makefile
d00c599e 472 src/lib/lttng-ctl/filter/Makefile
2c452d45 473 src/lib/lttng-ctl/lttng-ctl.pc
10a8a223
DG
474 src/bin/Makefile
475 src/bin/lttng-consumerd/Makefile
476 src/bin/lttng-sessiond/Makefile
b8aa1682 477 src/bin/lttng-relayd/Makefile
10a8a223 478 src/bin/lttng/Makefile
fac6795d 479 tests/Makefile
9ac429ef
CB
480 tests/regression/Makefile
481 tests/regression/kernel/Makefile
482 tests/regression/tools/Makefile
483 tests/regression/tools/streaming/Makefile
484 tests/regression/tools/filtering/Makefile
485 tests/regression/tools/health/Makefile
d946d662 486 tests/regression/tools/tracefile-limits/Makefile
07b86b52 487 tests/regression/tools/snapshots/Makefile
1b368955 488 tests/regression/tools/live/Makefile
345121ec 489 tests/regression/tools/exclusion/Makefile
e02b109b 490 tests/regression/tools/save-load/Makefile
68270f0f 491 tests/regression/tools/mi/Makefile
9ac429ef
CB
492 tests/regression/ust/Makefile
493 tests/regression/ust/nprocesses/Makefile
494 tests/regression/ust/high-throughput/Makefile
495 tests/regression/ust/low-throughput/Makefile
496 tests/regression/ust/before-after/Makefile
f5481aa9 497 tests/regression/ust/buffers-pid/Makefile
a788a3ed 498 tests/regression/ust/periodical-metadata-flush/Makefile
9ac429ef
CB
499 tests/regression/ust/multi-session/Makefile
500 tests/regression/ust/overlap/Makefile
501 tests/regression/ust/overlap/demo/Makefile
91c75285 502 tests/regression/ust/linking/Makefile
43c28d50 503 tests/regression/ust/daemon/Makefile
ee28adfb 504 tests/regression/ust/exit-fast/Makefile
37bd6c8e 505 tests/regression/ust/fork/Makefile
5836cdc2 506 tests/regression/ust/libc-wrapper/Makefile
37175ce4 507 tests/regression/ust/java-jul/Makefile
504d4ace 508 tests/regression/ust/java-log4j/Makefile
605ac758 509 tests/stress/Makefile
81d029da 510 tests/unit/Makefile
1501a7f3 511 tests/unit/ini_config/Makefile
86a96e6c
CB
512 tests/utils/Makefile
513 tests/utils/tap/Makefile
7e0cc23b
CB
514 tests/utils/testapp/Makefile
515 tests/utils/testapp/gen-ust-events/Makefile
ffb08a8c 516 tests/utils/testapp/gen-ust-nevents/Makefile
b02dcdb8 517 tests/utils/testapp/gen-ust-tracef/Makefile
fac6795d
DG
518])
519
520AC_OUTPUT
6299f964 521
994dd8a4 522#
6299f964 523# Mini-report on what will be built
994dd8a4
AM
524#
525AS_ECHO()
526
0e4cbe7e
DG
527AS_ECHO("Version name: $version_name")
528AS_ECHO("$version_description")
529
530AS_ECHO()
531
994dd8a4 532# Target architecture we're building for
2d90c6c8 533target_arch=$host_cpu
994dd8a4
AM
534[
535for f in $CFLAGS; do
536 if test $f = "-m32"; then
537 target_arch="32-bit"
538 elif test $f = "-m64"; then
539 target_arch="64-bit"
540 fi
541done
542]
543AS_ECHO_N("Target architecture: ")
544AS_ECHO($target_arch)
545
234170ac
UTL
546# kmod enabled/disabled
547AS_ECHO_N("libkmod support: ")
548AS_IF([test "x$kmod_found" = "xyes"],[
549 AS_ECHO("Enabled")
550],[
551 AS_ECHO("Disabled")
552])
553
994dd8a4 554# LTTng-UST enabled/disabled
6299f964 555AS_ECHO_N("Lttng-UST support: ")
994dd8a4
AM
556AS_IF([test "x$lttng_ust_support" = "xyes"],[
557 AS_ECHO("Enabled")
558],[
559 AS_ECHO("Disabled")
560])
55bed213 561
36907cb5
DS
562#Python binding enabled/disabled
563AS_ECHO_N("Python binding: ")
564AS_IF([test "x${enable_python:-yes}" = xyes], [
565 AS_ECHO("Enabled")
566],[
567 AS_ECHO("Disabled")
568])
569
994dd8a4
AM
570# Do we build only the consumerd, or everything
571AS_IF([test "x$consumerd_only" = "xyes"],[
572 AS_ECHO("Only the consumerd daemon will be built.")
573],[
574 AS_ECHO("All binaries will be built.")
575])
576
5fb528f1
AM
577# Print the bindir and libdir this `make install' will install into.
578AS_ECHO()
579AS_ECHO_N("Binaries will be installed in: ")
580AS_ECHO("`eval eval echo $bindir`")
581AS_ECHO_N("Libraries will be installed in: ")
582AS_ECHO("`eval eval echo $libdir`")
583
994dd8a4
AM
584# If we build the sessiond, print the paths it will use
585AS_IF([test "x$consumerd_only" = "xno"],[
b8ec3da8
SM
586 AS_ECHO()
587 AS_ECHO_N("The lttng command will look for the lttng-sessiond executable at: ")
588 AS_IF([test "$SESSIOND_BIN" = ""],[
589 AS_ECHO_N("`eval eval echo $bindir`")
590 AS_ECHO("/lttng-sessiond")
591 ],[
592 AS_ECHO("$SESSIOND_BIN")
593 ])
594
994dd8a4
AM
595 AS_ECHO()
596 AS_ECHO("The sessiond daemon will look in the following directories: ")
597 AS_ECHO_N("32-bit consumerd executable at: ")
598 AS_IF([test "$CONSUMERD32_BIN" = ""],[
386418ba 599 AS_ECHO_N("`eval eval echo $lttnglibexecdir`")
994dd8a4
AM
600 AS_ECHO("/lttng-consumerd")
601 ],[
602 AS_ECHO("$CONSUMERD32_BIN")
603 ])
604
605 AS_ECHO_N("32-bit consumer libraries in: ")
606 AS_IF([test "$CONSUMERD32_LIBDIR" = ""],[
607 AS_ECHO("`eval eval echo $libdir`")
608 ],[
609 AS_ECHO("$CONSUMERD32_LIBDIR")
610 ])
611
612 AS_ECHO_N("64-bit consumerd executable at: ")
613 AS_IF([test "$CONSUMERD64_BIN" = ""],[
386418ba 614 AS_ECHO_N("`eval eval echo $lttnglibexecdir`")
994dd8a4
AM
615 AS_ECHO("/lttng-consumerd")
616 ],[
617 AS_ECHO("$CONSUMERD64_BIN")
618 ])
619
620 AS_ECHO_N("64-bit consumer libraries in: ")
621 AS_IF([test "$CONSUMERD64_LIBDIR" = ""],[
622 AS_ECHO("`eval eval echo $libdir`")
623 ],[
624 AS_ECHO("$CONSUMERD64_LIBDIR")
625 ])
626])
6299f964 627
994dd8a4 628AS_ECHO()
6299f964 629
This page took 0.065791 seconds and 4 git commands to generate.