Fix: use-after-free in statedump lib iter_end
[lttng-ust.git] / configure.ac
CommitLineData
86adb855 1dnl -*- Autoconf -*-
b54f2130 2dnl Process this file with autoconf to produce a configure script.
1304f3df 3
16f9d99c 4dnl Version infos
58f107eb 5m4_define([V_MAJOR], [2])
19cd6b83 6m4_define([V_MINOR], [9])
58f107eb 7m4_define([V_PATCH], [0])
19cd6b83 8m4_define([V_EXTRA], [pre])
58f107eb
PP
9m4_define([V_STRING], [V_MAJOR.V_MINOR.V_PATCH])
10m4_ifdef([V_EXTRA], [m4_append([V_STRING], [-V_EXTRA])])
1bf9a788
MD
11m4_define([V_NAME], [[J-TBD]])
12m4_define([V_DESC], [[]])
58f107eb 13
86adb855 14AC_INIT([lttng-ust], V_STRING, [mathieu dot desnoyers at efficios dot com])
a334646a
MD
15
16# Following the numbering scheme proposed by libtool for the library version
17# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
41a2a9aa 18# This is the library version of liblttng-ust.
a334646a
MD
19AC_SUBST([LTTNG_UST_LIBRARY_VERSION], [0:0:0])
20# note: remember to update tracepoint.h dlopen() to match this version
21# number. TODO: eventually automate by exporting the major number.
22
41a2a9aa
MD
23# This is the library version of liblttng-ust-ctl, used internally by
24# liblttng-ust, lttng-sessiond, and lttng-consumerd.
76bacff6 25AC_SUBST([LTTNG_UST_CTL_LIBRARY_VERSION], [2:0:0])
41a2a9aa 26
55355fa5 27AC_CONFIG_AUX_DIR([config])
9441df61
PMF
28AC_CANONICAL_TARGET
29AC_CANONICAL_HOST
50f3dba0 30AC_CONFIG_MACRO_DIR([config])
a995492f 31AM_INIT_AUTOMAKE([1.9 foreign dist-bzip2 no-dist-gzip tar-ustar])
846154aa 32AM_MAINTAINER_MODE([enable])
50f3dba0 33m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
4318ae1b 34AC_CONFIG_SRCDIR([include/lttng/tracepoint.h])
4846fadc 35
f3c7428e
MJ
36AC_REQUIRE_AUX_FILE([tap-driver.sh])
37
4846fadc 38# Configuration options, which will be installed in the config.h
562c813a
MD
39AC_CONFIG_HEADERS([config.h include/lttng/ust-config.h])
40AH_TEMPLATE([LTTNG_UST_HAVE_EFFICIENT_UNALIGNED_ACCESS], [Use efficient unaligned access.])
02120ddf 41AH_TEMPLATE([LTTNG_UST_HAVE_SDT_INTEGRATION], [SystemTap integration via sdt.h])
d58d1454 42AH_TEMPLATE([LTTNG_UST_HAVE_PERF_EVENT], [Perf event integration via perf_event.h])
23c8854a 43
b54f2130 44dnl Substitute minor/major/patchlevel version numbers
58f107eb
PP
45AC_SUBST([MAJOR_VERSION], [V_MAJOR])
46AC_SUBST([MINOR_VERSION], [V_MINOR])
47AC_SUBST([PATCHLEVEL_VERSION], [V_PATCH])
161239e0 48
46a73fe4 49AC_PROG_SED
faebb418 50AC_PROG_GREP
85e09133 51AC_PROG_LN_S
46a73fe4 52
faebb418 53# libtool link_all_deplibs fixup. See http://bugs.lttng.org/issues/321.
86adb855
PP
54AC_ARG_ENABLE([libtool-linkdep-fixup], [
55 AS_HELP_STRING([--disable-libtool-linkdep-fixup], [disable the libtool fixup for linking all dependent libraries (link_all_deplibs)])
56], [
57 libtool_fixup=$enableval
58], [
59 libtool_fixup=yes
60])
61
62AS_IF([test "x$libtool_fixup" = "xyes"], [
63 libtool_m4="$srcdir/config/libtool.m4"
64 libtool_flag_pattern=".*link_all_deplibs\s*,\s*\$1\s*)"
65 AC_MSG_CHECKING([for occurence(s) of link_all_deplibs = no in $libtool_m4])
66 libtool_flag_pattern_count=$(grep -c "$libtool_flag_pattern\s*=\s*no" $libtool_m4)
67
68 AS_IF([test $libtool_flag_pattern_count -ne 0], [
69 AC_MSG_RESULT([$libtool_flag_pattern_count])
70 AC_MSG_WARN([the detected libtool will not link all dependencies, forcing link_all_deplibs = unknown])
71 sed -i "s/\($libtool_flag_pattern\)\s*=\s*no/\1=unknown/g" $libtool_m4
72 ], [
73 AC_MSG_RESULT([none])
74 ])
75])
faebb418 76
824a00a7
MD
77AM_CONDITIONAL([NO_SHARED], [test "x$enable_shared" = "xno"])
78
1304f3df
PMF
79# Checks for programs.
80AC_PROG_CC
6b79f035 81AC_PROG_CXX
acb9c126
SB
82AM_CONDITIONAL([HAVE_CXX], [test "x$CXX" != "x"])
83AC_CHECK_PROG([HAVE_CMAKE], [cmake], ["yes"])
84AM_CONDITIONAL([HAVE_CMAKE], [test "x$HAVE_CMAKE" = "xyes"])
1304f3df 85AC_PROG_MAKE_SET
fa1c6efe 86LT_INIT
1304f3df 87
340f7763
SM
88# rw_PROG_CXX_WORKS
89# Check whether the C++ compiler works.
86adb855
PP
90AC_CACHE_CHECK([whether the C++ compiler works], [rw_cv_prog_cxx_works], [
91 AC_LANG_PUSH([C++])
92
93 AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], [
94 check_cxx_designated_initializers=yes
95 ], [
96 rw_cv_prog_cxx_works=no
97 ])
98
99 AS_IF([test "x$check_cxx_designated_initializers" = "xyes"], [
100 AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
101 struct foo { int a; int b; };
102 void fct(void)
103 {
104 struct foo f = { .a = 0, .b = 1 };
105 }
106 ]])], [
107 rw_cv_prog_cxx_works=yes
108 ], [
109 rw_cv_prog_cxx_works=no
0e7d861a 110 ])
86adb855
PP
111 ])
112
113 AC_LANG_POP([C++])
114])
340f7763
SM
115
116AM_CONDITIONAL([CXX_WORKS], [test "x$rw_cv_prog_cxx_works" = "xyes"])
117
f1d4b810
CB
118# Check if the compiler support weak symbols
119AX_SYS_WEAK_ALIAS
120
0e7d861a
PP
121AS_IF([test "x${ax_cv_sys_weak_alias}" = "xno"], [
122 AC_MSG_ERROR([Your platform doesn't support weak symbols.])
123])
f1d4b810 124
b54f2130 125# Checks for libraries.
86adb855 126AC_CHECK_LIB([dl], [dlopen], [
c6c454ab 127 have_libdl=yes
86adb855 128], [
c6c454ab 129 #libdl not found, check for dlopen in libc.
86adb855 130 AC_CHECK_LIB([c], [dlopen], [
c6c454ab 131 have_libc_dl=yes
86adb855 132 ], [
c6c454ab
MD
133 AC_MSG_ERROR([Cannot find dlopen in libdl nor libc. Use [LDFLAGS]=-Ldir to specify their location.])
134 ])
135])
86adb855 136
c6c454ab
MD
137AM_CONDITIONAL([LTTNG_UST_BUILD_WITH_LIBDL], [test "x$have_libdl" = "xyes"])
138AM_CONDITIONAL([LTTNG_UST_BUILD_WITH_LIBC_DL], [test "x$have_libc_dl" = "xyes"])
139
e26c8207 140AC_CHECK_LIB([pthread], [pthread_create])
01f0e40c
RB
141AC_CHECK_LIB([pthread], [pthread_setname_np],
142 AC_DEFINE([HAVE_PTHREAD_SETNAME_NP], [1], [Define to 1 if pthread_setname_np is available.]),
143 AC_CHECK_LIB([pthread], [pthread_set_name_np],
144 AC_DEFINE([HAVE_PTHREAD_SET_NAME_NP], [1], [Define to 1 if pthread_set_name_np is available.]),
145 AC_MSG_RESULT([pthread setname/set_name not found.])))
1304f3df 146
f9ff7aa4
RN
147# Check for dlfcn.h
148AC_CHECK_HEADER([dlfcn.h])
86adb855
PP
149AS_IF([test "x${ac_cv_header_dlfcn_h}" = "xyes"], [
150 AC_CHECK_DECLS([RTLD_DI_LINKMAP], [], [], [
151 #define _GNU_SOURCE /* Required on Linux to get GNU extensions */
152 #include <dlfcn.h>
153 ])
154], [
155 ac_cv_have_decl_RTLD_DI_LINKMAP="no"
156])
157
f9ff7aa4
RN
158AM_CONDITIONAL([HAVE_DLINFO], [test "x${ac_cv_have_decl_RTLD_DI_LINKMAP}" = "xyes"])
159
1304f3df 160# Checks for header files.
b54f2130 161dnl AC_CHECK_HEADERS([fcntl.h stdint.h stdlib.h string.h sys/socket.h sys/time.h unistd.h])
1304f3df
PMF
162
163# Checks for typedefs, structures, and compiler characteristics.
164AC_C_INLINE
b54f2130
PP
165dnl AC_TYPE_INT16_T
166dnl AC_TYPE_INT32_T
167dnl AC_TYPE_INT64_T
168dnl AC_TYPE_INT8_T
169dnl AC_TYPE_PID_T
170dnl AC_TYPE_SIZE_T
171dnl AC_TYPE_SSIZE_T
172dnl AC_TYPE_UINT16_T
173dnl AC_TYPE_UINT32_T
174dnl AC_TYPE_UINT64_T
175dnl AC_TYPE_UINT8_T
176dnl AC_CHECK_TYPES([ptrdiff_t])
1304f3df
PMF
177
178# Checks for library functions.
179AC_FUNC_MALLOC
e9d165be 180AC_CHECK_FUNCS([gettimeofday munmap socket strerror strtol sched_getcpu sysconf])
1304f3df 181
fbae86d6
MD
182CFLAGS="-Wall $CFLAGS"
183
8624c549
PMF
184# URCU
185
186# urcu - check if we just find the headers it out of the box.
135987a5 187AC_CHECK_HEADERS([urcu-bp.h], [], [AC_MSG_ERROR([Cannot find [URCU] headers (urcu-bp.h). Use [CPPFLAGS]=-Idir to specify their location.
cacb7fbe 188This error can also occur when the liburcu package's configure script has not been run.])])
bf956ec0
MD
189
190# urcu-cds - check that URCU Concurrent Data Structure lib is available to compilation
191# Part of Userspace RCU library 0.7.2 or better.
192AC_CHECK_LIB([urcu-cds], [_cds_lfht_new], [], [AC_MSG_ERROR([Cannot find
193liburcu-cds lib, part of Userspace RCU 0.7 or better. Use [LDFLAGS]=-Ldir to specify its location.])])
8624c549 194
b5a3dfa5 195AC_MSG_CHECKING([caa_likely()])
31b07350 196AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
86adb855
PP
197 #include <urcu/compiler.h>
198 void fct(void)
199 {
200 if (caa_likely(1)) {
201 }
b5a3dfa5 202 }
86adb855 203]])], [
b5a3dfa5 204 AC_MSG_RESULT([yes])
86adb855 205], [
b5a3dfa5
MD
206 AC_MSG_RESULT([no])
207 AC_MSG_ERROR([Please upgrade your version of liburcu to 0.6.6 or better])
727bb6cb 208])
b5a3dfa5 209
8624c549 210# urcu - check that URCU lib is available to compilation
cfa0520d 211AC_CHECK_LIB([urcu-bp], [synchronize_rcu_bp], [], [AC_MSG_ERROR([Cannot find liburcu-bp lib. Use [LDFLAGS]=-Ldir to specify its location.])])
e3073410 212
a6830b14
MD
213# urcu - check that URCU lib is at least version 0.6
214AC_CHECK_LIB([urcu-bp], [call_rcu_bp], [], [AC_MSG_ERROR([liburcu 0.6 or newer is needed, please update your version or use [LDFLAGS]=-Ldir to specify the right location.])])
e3073410 215
d58d1454
MD
216# optional linux/perf_event.h
217AC_CHECK_HEADERS([linux/perf_event.h], [have_perf_event=yes], [])
d58d1454 218
1113f842
CB
219# Perf event counters are only supported on x86 so far.
220AC_MSG_CHECKING([UST support for architecture perf event counters])
0516f3b3
PP
221AS_CASE([$host_cpu],
222 [i[[3456]]86], [UST_SUPPORT_FOR_ARCH_PERF_EVENT_COUNTERS=yes],
223 [x86_64], [UST_SUPPORT_FOR_ARCH_PERF_EVENT_COUNTERS=yes],
224 [amd64], [UST_SUPPORT_FOR_ARCH_PERF_EVENT_COUNTERS=yes],
d286ad50 225 [armv7l], [UST_SUPPORT_FOR_ARCH_PERF_EVENT_COUNTERS=yes],
0516f3b3 226 [UST_SUPPORT_FOR_ARCH_PERF_EVENT_COUNTERS=no])
1113f842
CB
227AC_MSG_RESULT([$UST_SUPPORT_FOR_ARCH_PERF_EVENT_COUNTERS])
228
8f22f7fb 229AM_CONDITIONAL([HAVE_PERF_EVENT], [test "x$have_perf_event" = "xyes" && test "x$UST_SUPPORT_FOR_ARCH_PERF_EVENT_COUNTERS" = "xyes"])
1113f842 230
8f22f7fb 231AS_IF([test "x$have_perf_event" = "xyes" && test "x$UST_SUPPORT_FOR_ARCH_PERF_EVENT_COUNTERS" = "xyes"], [
0e7d861a
PP
232 AC_DEFINE([LTTNG_UST_HAVE_PERF_EVENT], [1])
233])
d58d1454 234
dca6e79f 235AC_MSG_CHECKING([host system alignment requirements])
0516f3b3
PP
236AS_CASE([$host_cpu],
237 [i[[3456]]86], [],
238 [x86_64], [],
239 [amd64], [],
240 [powerpc], [],
241 [ppc64], [],
242 [ppc64le], [],
243 [powerpc64], [],
244 [powerpc64le], [],
245 [s390], [NO_UNALIGNED_ACCESS=1],
246 [s390x], [NO_UNALIGNED_ACCESS=1],
247 [arm*], [NO_UNALIGNED_ACCESS=1],
b5eac5d4 248 [aarch64*], [NO_UNALIGNED_ACCESS=1],
0516f3b3
PP
249 [mips*], [NO_UNALIGNED_ACCESS=1],
250 [tile*], [NO_UNALIGNED_ACCESS=1],
251 [
0ea8bd08
MJ
252 UNSUPPORTED_ARCH=1
253 NO_UNALIGNED_ACCESS=1
0516f3b3 254 ])
f039c6b0 255AC_MSG_RESULT([$host_cpu])
ed452f03 256
0e7d861a
PP
257AS_IF([test "x$NO_UNALIGNED_ACCESS" = "x"], [
258 AC_DEFINE([LTTNG_UST_HAVE_EFFICIENT_UNALIGNED_ACCESS], [1])
259])
2699970a 260
2b6f8df9 261# Check for JNI header files if requested
86adb855
PP
262AC_ARG_ENABLE([jni-interface], [
263 AS_HELP_STRING([--enable-jni-interface], [build JNI interface between C and Java. Needs Java include files [default=no]])
264], [
265 jni_interface=$enableval
266], [
267 jni_interface=no
268])
2b6f8df9 269
b2263155 270AM_CONDITIONAL([BUILD_JNI_INTERFACE], [test "x$jni_interface" = "xyes"])
2b6f8df9 271
501f6777 272
86adb855
PP
273AC_ARG_ENABLE([java-agent-jul], [
274 AS_HELP_STRING([--enable-java-agent-jul], [build the LTTng UST Java agent with JUL support [default=no]])
275], [
276 java_agent_jul=$enableval
277], [
278 java_agent_jul=no
279])
501f6777 280
86adb855
PP
281AC_ARG_ENABLE([java-agent-log4j], [
282 AS_HELP_STRING([--enable-java-agent-log4j], [build the LTTng UST Java agent with Log4j support [default=no]])
283], [
284 java_agent_log4j=$enableval
285], [
286 java_agent_log4j=no
287])
501f6777 288
86adb855
PP
289AC_ARG_ENABLE([java-agent-all], [
290 AS_HELP_STRING([--enable-java-agent-all], [build the LTTng UST Java agent with all supported backends [default=no]])
291], [
292 java_agent_jul=$enableval
293 java_agent_log4j=$enableval
294], [:])
501f6777
CB
295
296AM_CONDITIONAL([BUILD_JAVA_AGENT], [test "x$java_agent_jul" = "xyes" || test "x$java_agent_log4j" = "xyes"])
297AM_CONDITIONAL([BUILD_JAVA_AGENT_WITH_JUL], [test "x$java_agent_jul" = "xyes"])
298AM_CONDITIONAL([BUILD_JAVA_AGENT_WITH_LOG4J], [test "x$java_agent_log4j" = "xyes"])
299
0e7d861a
PP
300AS_IF([test "x$jni_interface" = "xyes" || test "x$java_agent_jul" = "xyes" || test "x$java_agent_log4j" = "xyes"], [
301 AX_JAVA_OPTIONS
302 AX_PROG_JAVAC
303 AX_PROG_JAVA
304 AX_PROG_JAR
501f6777 305
0e7d861a
PP
306 AX_JNI_INCLUDE_DIR
307 for JNI_INCLUDE_DIR in $JNI_INCLUDE_DIRS
308 do
309 CPPFLAGS="$CPPFLAGS -I$JNI_INCLUDE_DIR"
310 done
501f6777 311
0e7d861a
PP
312 AX_PROG_JAVAH
313])
501f6777 314
0e7d861a
PP
315AS_IF([test "x$java_agent_log4j" = "xyes"], [
316 AX_CHECK_CLASSPATH
0e7d861a 317 AX_CHECK_CLASS([org.apache.log4j.Logger])
0e7d861a
PP
318 AS_IF([test "x$ac_cv_class_org_apache_log4j_Logger" = "xno"], [
319 AC_MSG_ERROR([The UST Java agent support for log4j was requested but the Log4j classes were not found. Please specify the location of the Log4j jar via the Java CLASSPATH e.g: export CLASSPATH="/path/to/log4j.jar"])
320 ])
321])
501f6777 322
c3e14096 323# Option to build the python agent
86adb855
PP
324AC_ARG_ENABLE([python-agent], [
325 AS_HELP_STRING([--enable-python-agent], [build the LTTng UST Python agent [default=no]])
326], [
327 python_agent=$enableval
328], [:])
c3e14096 329AM_CONDITIONAL([BUILD_PYTHON_AGENT], [test "x$python_agent" = "xyes"])
0e7d861a 330AS_IF([test "x$python_agent" = "xyes"], [
55c9e5ae 331 AM_PATH_PYTHON([2.7])
0e7d861a 332])
c3e14096 333
4846fadc 334# sdt.h integration
86adb855
PP
335AC_ARG_WITH([sdt], [
336 AS_HELP_STRING([--with-sdt], [provide SystemTap integration via sdt.h [default=no]])
337], [
338 with_sdt=$withval
339], [
340 with_sdt="no"
341])
4846fadc 342
86adb855 343AS_IF([test "x$with_sdt" = "xyes"], [
491f30fe
MD
344 AC_MSG_CHECKING([STAP_PROBEV()])
345 AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
86adb855
PP
346 #define SDT_USE_VARIADIC
347 #include <sys/sdt.h>
348 void fct(void)
349 {
350 STAP_PROBEV(provider,name,1,2,3,4,5,6,7,8,9,10);
351 }
352 ]])], [
491f30fe 353 AC_MSG_RESULT([yes])
562c813a 354 AC_DEFINE([LTTNG_UST_HAVE_SDT_INTEGRATION], [1])
86adb855 355 ], [
491f30fe 356 AC_MSG_RESULT([no])
135987a5 357 AC_MSG_ERROR([The sdt.h integration was requested but the STAP_PROBEV define cannot be used. Make sure it is installed, and up to date, or use CPPFLAGS=-I/path/ to specify a non-standard path to sys/sdt.h])
4846fadc
AM
358 ])
359])
360
ccb19569 361AC_MSG_CHECKING([whether shared libraries are enabled])
86adb855
PP
362AS_IF([test "x$enable_shared" = "xyes"], [
363 AC_MSG_RESULT([yes])
364], [
365 AC_MSG_RESULT([no])
366 AC_MSG_ERROR([LTTng-UST requires shared libraries to be enabled])
367])
ccb19569 368
86adb855
PP
369AC_ARG_WITH([lttng-system-rundir], [
370 AS_HELP_STRING([--with-lttng-system-rundir], [Location of the system directory where LTTng-UST expects the system-wide lttng-sessiond runtime files. The default is "/var/run/lttng".]),
371], [
372 lttng_system_rundir="$withval"
373], [
374 lttng_system_rundir="/var/run/lttng"
375])
751d4e91 376AC_DEFINE_UNQUOTED([LTTNG_SYSTEM_RUNDIR], ["$lttng_system_rundir"],
86adb855 377 [LTTng system runtime directory])
751d4e91 378
86adb855 379AC_CHECK_PROG([BUILD_GEN_TP_EXAMPLES], [python], ["yes"])
0d8ba43d 380AM_CONDITIONAL([BUILD_GEN_TP_EXAMPLES], [test "x$BUILD_GEN_TP_EXAMPLES" = "xyes"])
2b90f1d3 381
4ddbd0b7
PP
382# Set $IN_GIT_REPO if we're in the Git repository; the `bootstrap` file
383# is not distributed in tarballs.
384AS_IF([test -f "$srcdir/bootstrap"], [in_git_repo=yes], [in_git_repo=no])
385AM_CONDITIONAL([IN_GIT_REPO], [test "x$in_git_repo" = "xyes"])
386
387# Enable building man pages (user's intention).
388AC_ARG_ENABLE(
389 man-pages,
390 AS_HELP_STRING(
391 [--disable-man-pages],
392 [Do not build and install man pages (already built in a distributed tarball)]
393 ),
394 [man_pages_opt=$enableval],
395 [man_pages_opt=yes]
396)
397
398# Check for asciidoc and xmlto if we enabled building the man pages.
399have_asciidoc_xmlto=no
400
401AS_IF([test "x$man_pages_opt" = "xyes"], [
402 AC_PATH_PROG([ASCIIDOC], [asciidoc], [no])
403 AC_PATH_PROG([XMLTO], [xmlto], [no])
404
405 AS_IF([test "x$ASCIIDOC" = "xno" || test "x$XMLTO" = "xno"], [
406 AS_IF([test "x$in_git_repo" = "xyes"], [
407 # This is an error because we're in the Git repo, which
408 # means the man pages are not already generated for us,
409 # thus asciidoc/xmlto are required because we were asked
410 # to build the man pages.
411 AC_MSG_ERROR([
412Both asciidoc and xmlto are needed to build the LTTng-UST man pages. Use
413--disable-man-pages to disable building the man pages, in which case
414they will not be installed.
415 ])
416 ], [
417 # Only warn here: since we're in the tarball, the man
418 # pages should already be generated at this point, thus
419 # asciidoc/xmlto are not strictly required.
420 AC_MSG_WARN([
421Both asciidoc and xmlto are needed to build the LTTng-UST man pages.
422Note that the man pages are already built in this distribution tarball,
423so asciidoc and xmlto are only needed if you intend to modify their
424sources. Use --disable-man-pages to completely disable building
425and installing the man pages.
426 ])
427 ])
428 ], [
429 have_asciidoc_xmlto=yes
430 ])
431])
432
433# Export man page build condition: build the man pages if the user
434# asked for it, and if the tools are available.
435AM_CONDITIONAL([MAN_PAGES_OPT], [test "x$man_pages_opt" != "xno"])
436AM_CONDITIONAL([HAVE_ASCIIDOC_XMLTO], [test "x$have_asciidoc_xmlto" = "xyes"])
437
2b4444ce
PP
438# Default values
439AC_DEFUN([_AC_DEFINE_AND_SUBST], [
440 AC_DEFINE_UNQUOTED([CONFIG_$1], [$2], [$1])
441 $1="$2"
442 AC_SUBST([$1])
443])
444
445_AC_DEFINE_AND_SUBST([LTTNG_UST_DEFAULT_CONSTRUCTOR_TIMEOUT_MS], [3000])
446
55355fa5
JB
447AC_CONFIG_FILES([
448 Makefile
7ccf75d3
MD
449 doc/Makefile
450 doc/examples/Makefile
4ddbd0b7 451 doc/man/Makefile
69400ac4 452 include/Makefile
b728d87e 453 include/lttng/ust-version.h
69400ac4 454 snprintf/Makefile
4931a13e 455 libringbuffer/Makefile
69400ac4
MD
456 liblttng-ust-comm/Makefile
457 liblttng-ust/Makefile
458 liblttng-ust-ctl/Makefile
459 liblttng-ust-fork/Makefile
b13d93c2 460 liblttng-ust-dl/Makefile
69400ac4 461 liblttng-ust-java/Makefile
501f6777
CB
462 liblttng-ust-java-agent/Makefile
463 liblttng-ust-java-agent/java/Makefile
8e6b6350 464 liblttng-ust-java-agent/java/lttng-ust-agent-all/Makefile
8e57e02f
AM
465 liblttng-ust-java-agent/java/lttng-ust-agent-common/Makefile
466 liblttng-ust-java-agent/java/lttng-ust-agent-jul/Makefile
467 liblttng-ust-java-agent/java/lttng-ust-agent-log4j/Makefile
501f6777 468 liblttng-ust-java-agent/jni/Makefile
8ab5c06b 469 liblttng-ust-java-agent/jni/common/Makefile
501f6777
CB
470 liblttng-ust-java-agent/jni/jul/Makefile
471 liblttng-ust-java-agent/jni/log4j/Makefile
476037d9 472 liblttng-ust-libc-wrapper/Makefile
70d654f2 473 liblttng-ust-cyg-profile/Makefile
c3e14096 474 liblttng-ust-python-agent/Makefile
5b6ff569
PP
475 python-lttngust/Makefile
476 python-lttngust/setup.py
477 python-lttngust/lttngust/__init__.py
b25c5b37 478 tools/Makefile
6dd969b5 479 tests/Makefile
c785c634 480 tests/ctf-types/Makefile
6dd969b5 481 tests/hello/Makefile
6b79f035 482 tests/hello.cxx/Makefile
90c09854 483 tests/same_line_tracepoint/Makefile
d23b20e9 484 tests/snprintf/Makefile
22609c7a 485 tests/ust-elf/Makefile
a44af49d 486 tests/benchmark/Makefile
9a4b88ff 487 tests/utils/Makefile
53569322 488 tests/test-app-ctx/Makefile
5a673446 489 tests/gcc-weak-hidden/Makefile
74a6d87b 490 lttng-ust.pc
55355fa5 491])
1f9eff07 492
bf261856
JR
493# Create link for python agent for the VPATH guru.
494AC_CONFIG_LINKS([
5b6ff569
PP
495 python-lttngust/lttngust/agent.py:python-lttngust/lttngust/agent.py
496 python-lttngust/lttngust/cmd.py:python-lttngust/lttngust/cmd.py
497 python-lttngust/lttngust/debug.py:python-lttngust/lttngust/debug.py
498 python-lttngust/lttngust/loghandler.py:python-lttngust/lttngust/loghandler.py
bf261856
JR
499])
500
1304f3df 501AC_OUTPUT
1f9eff07 502
2770ab16 503AS_ECHO
16f9d99c 504AS_ECHO(["m4_bpatsubst(V_NAME, ["], [\\"])"])
2a5b1cfe 505AS_ECHO
16f9d99c 506AS_ECHO(["m4_bpatsubst(V_DESC, ["], [\\"])"])
649282a8 507
1f9eff07 508# Report on the configuration options
2a5b1cfe 509AS_ECHO
79057ae6 510AS_ECHO(["LTTng-UST will be built with the following options:"])
1f9eff07 511
2a5b1cfe 512AS_ECHO
501f6777 513
79057ae6 514AS_ECHO_N(["Java agent (JUL support): "])
380a81f4 515AS_IF([test "x$java_agent_jul" = "xyes"], [AS_ECHO(["Enabled"])], [AS_ECHO(["Disabled (Use --enable-java-agent-jul)"])])
501f6777 516
79057ae6 517AS_ECHO_N(["Java agent (Log4j support): "])
380a81f4 518AS_IF([test "x$java_agent_log4j" = "xyes"], [AS_ECHO(["Enabled"])], [AS_ECHO(["Disabled (Use --enable-java-agent-log4j)"])])
501f6777 519
79057ae6 520AS_ECHO_N(["JNI interface (JNI): "])
380a81f4 521AS_IF([test "x$jni_interface" = "xyes"], [AS_ECHO(["Enabled"])], [AS_ECHO(["Disabled (Use --enable-jni-interface)"])])
1f9eff07 522
79057ae6 523AS_ECHO_N(["Python ($PYTHON) agent: "])
380a81f4 524AS_IF([test "x$python_agent" = "xyes"], [AS_ECHO(["Enabled"])], [AS_ECHO(["Disabled (Use --enable-python-agent)"])])
c3e14096 525
79057ae6
PP
526AS_ECHO_N(["sdt.h integration: "])
527AS_IF([test "x$with_sdt" = "xyes"], [AS_ECHO(["Enabled"])], [AS_ECHO(["Disabled"])])
1f9eff07 528
79057ae6
PP
529AS_ECHO(["Architecture: $host_cpu"])
530AS_ECHO_N(["Efficient unaligned memory access: "])
531AS_IF([test "x$NO_UNALIGNED_ACCESS" != "x1"], [AS_ECHO(["yes"])], [AS_IF([test "x$UNSUPPORTED_ARCH" != "x1"], [AS_ECHO(["no"])], [AS_ECHO(["unknown"])])])
0ea8bd08 532AS_IF([test "x$UNSUPPORTED_ARCH" = "x1"], [AC_MSG_WARN([Your architecture ($host_cpu) is unsupported, using safe default of no unaligned access])])
2a5b1cfe 533AS_ECHO
0ea8bd08 534
79057ae6 535AS_ECHO(["Type 'make' to compile."])
1f9eff07 536
This page took 0.062487 seconds and 4 git commands to generate.