filter: bytecode already in the list should go before
[lttng-ust.git] / configure.ac
... / ...
CommitLineData
1dnl Version infos
2m4_define([V_MAJOR], [2])
3m4_define([V_MINOR], [12])
4m4_define([V_PATCH], [0])
5m4_define([V_EXTRA], [rc1])
6m4_define([V_NAME], [[(Ta) Meilleure]])
7m4_define([V_DESC], [[Ta Meilleure is a Northeast IPA beer brewed by Lagabière. Translating to "Your best one", this beer gives out strong aromas of passion fruit, lemon, and peaches. Tastewise, expect a lot of fruit, a creamy texture, and a smooth lingering hop bitterness.]])
8
9m4_define([V_STRING], [V_MAJOR.V_MINOR.V_PATCH])
10m4_ifdef([V_EXTRA], [m4_append([V_STRING], [-V_EXTRA])])
11
12AC_PREREQ(2.59)
13AC_INIT([lttng-ust], V_STRING, [mathieu dot desnoyers at efficios dot com], [], [https://lttng.org])
14
15dnl Substitute minor/major/patchlevel version numbers
16AC_SUBST([MAJOR_VERSION], [V_MAJOR])
17AC_SUBST([MINOR_VERSION], [V_MINOR])
18AC_SUBST([PATCHLEVEL_VERSION], [V_PATCH])
19
20# Following the numbering scheme proposed by libtool for the library version
21# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
22# This is the library version of liblttng-ust.
23m4_define([UST_LIB_V_MAJOR], [0])
24m4_define([UST_LIB_V_MINOR], [0])
25m4_define([UST_LIB_V_PATCH], [0])
26
27AC_SUBST([LTTNG_UST_LIBRARY_VERSION], [UST_LIB_V_MAJOR:UST_LIB_V_MINOR:UST_LIB_V_PATCH])
28AC_DEFINE([CONFIG_LTTNG_UST_LIBRARY_VERSION_MAJOR], [UST_LIB_V_MAJOR], [Major SONAME number of the ust library])
29# note: remember to update tracepoint.h dlopen() to match this version
30# number. TODO: eventually automate by exporting the major number.
31
32# This is the library version of liblttng-ust-ctl, used internally by
33# liblttng-ust, lttng-sessiond, and lttng-consumerd.
34AC_SUBST([LTTNG_UST_CTL_LIBRARY_VERSION], [4:0:0])
35
36AC_CONFIG_HEADERS([config.h include/lttng/ust-config.h])
37AC_CONFIG_AUX_DIR([config])
38AC_CONFIG_MACRO_DIR([m4])
39AC_CONFIG_SRCDIR([include/lttng/tracepoint.h])
40
41AC_CANONICAL_TARGET
42AC_CANONICAL_HOST
43
44AM_INIT_AUTOMAKE([1.12 foreign dist-bzip2 no-dist-gzip tar-ustar])
45AM_MAINTAINER_MODE([enable])
46
47# Enable silent rules if available (Introduced in AM 1.11)
48m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
49
50AC_REQUIRE_AUX_FILE([tap-driver.sh])
51
52# Checks for C compiler
53AC_USE_SYSTEM_EXTENSIONS
54AC_SYS_LARGEFILE
55AC_PROG_CC
56AC_PROG_CC_STDC
57AC_PROG_CXX
58RW_PROG_CXX_WORKS
59AM_CONDITIONAL([CXX_WORKS], [test "x$rw_cv_prog_cxx_works" = "xyes"])
60
61# Check if the compiler support weak symbols
62AX_SYS_WEAK_ALIAS
63
64AS_IF([test "x${ax_cv_sys_weak_alias}" = "xno"], [
65 AC_MSG_ERROR([Your platform doesn't support weak symbols.])
66])
67
68# Checks for programs.
69AM_PROG_AR
70AC_PROG_SED
71AC_PROG_GREP
72AC_PROG_LN_S
73AC_PROG_MKDIR_P
74AC_PROG_MAKE_SET
75AC_CHECK_PROG([HAVE_CMAKE], [cmake], ["yes"])
76AM_CONDITIONAL([HAVE_CMAKE], [test "x$HAVE_CMAKE" = "xyes"])
77
78# libtool link_all_deplibs fixup. See http://bugs.lttng.org/issues/321.
79AC_ARG_ENABLE([libtool-linkdep-fixup], [
80AS_HELP_STRING([--disable-libtool-linkdep-fixup], [disable the libtool fixup for linking all dependent libraries (link_all_deplibs)])
81], [
82 libtool_fixup=$enableval
83], [
84 libtool_fixup=yes
85])
86
87AS_IF([test "x$libtool_fixup" = "xyes"], [
88 libtool_m4="$srcdir/m4/libtool.m4"
89 libtool_flag_pattern=".*link_all_deplibs\s*,\s*\$1\s*)"
90 AC_MSG_CHECKING([for occurence(s) of link_all_deplibs = no in $libtool_m4])
91 libtool_flag_pattern_count=$(grep -c "$libtool_flag_pattern\s*=\s*no" $libtool_m4)
92
93 AS_IF([test $libtool_flag_pattern_count -ne 0], [
94 AC_MSG_RESULT([$libtool_flag_pattern_count])
95 AC_MSG_WARN([the detected libtool will not link all dependencies, forcing link_all_deplibs = unknown])
96 $SED -i "s/\($libtool_flag_pattern\)\s*=\s*no/\1=unknown/g" $libtool_m4
97 ], [
98 AC_MSG_RESULT([none])
99 ])
100])
101LT_INIT([disable-static])
102
103AC_MSG_CHECKING([whether shared libraries are enabled])
104AS_IF([test "x$enable_shared" = "xyes"], [
105 AC_MSG_RESULT([yes])
106], [
107 AC_MSG_RESULT([no])
108 AC_MSG_ERROR([LTTng-UST requires shared libraries to be enabled])
109])
110
111# Checks for typedefs, structures, and compiler characteristics.
112AC_C_INLINE
113AC_TYPE_INT8_T
114AC_TYPE_INT16_T
115AC_TYPE_INT32_T
116AC_TYPE_INT64_T
117AC_TYPE_MODE_T
118AC_TYPE_OFF_T
119AC_TYPE_PID_T
120AC_TYPE_SIZE_T
121AC_TYPE_SSIZE_T
122AC_TYPE_UID_T
123AC_TYPE_UINT8_T
124AC_TYPE_UINT16_T
125AC_TYPE_UINT32_T
126AC_TYPE_UINT64_T
127AC_CHECK_TYPES([ptrdiff_t])
128
129AX_C___ATTRIBUTE__
130AS_IF([test "x$ax_cv___attribute__" = "xyes"],
131 [:],
132 [AC_MSG_ERROR([The compiler does not support __attribute__ extensions])])
133
134# Checks for library functions.
135AC_FUNC_CHOWN
136AC_FUNC_FORK
137AC_FUNC_MMAP
138AC_FUNC_REALLOC
139AC_FUNC_STRERROR_R
140AC_FUNC_STRNLEN
141AC_CHECK_FUNCS([ \
142 atexit \
143 clock_gettime \
144 ftruncate \
145 getpagesize \
146 gettimeofday \
147 localeconv \
148 memchr \
149 memmove \
150 memset \
151 mkdir \
152 munmap \
153 realpath \
154 sched_getcpu \
155 socket \
156 strchr \
157 strdup \
158 strerror \
159 strtol \
160 sysconf \
161])
162
163# AC_FUNC_MALLOC causes problems when cross-compiling.
164#AC_FUNC_MALLOC
165
166# Checks for header files.
167AC_HEADER_STDBOOL
168AC_CHECK_HEADERS([ \
169 arpa/inet.h \
170 fcntl.h \
171 float.h \
172 limits.h \
173 locale.h \
174 stddef.h \
175 sys/socket.h \
176 sys/time.h \
177 wchar.h \
178])
179
180# Set architecture specific options
181AS_CASE([$host_cpu],
182 [i[[3456]]86], [],
183 [x86_64], [],
184 [amd64], [],
185 [powerpc], [],
186 [ppc64], [],
187 [ppc64le], [],
188 [powerpc64], [],
189 [powerpc64le], [],
190 [s390], [NO_UNALIGNED_ACCESS=1],
191 [s390x], [NO_UNALIGNED_ACCESS=1],
192 [arm*], [
193 NO_UNALIGNED_ACCESS=1
194 NO_NUMA=1
195 ],
196 [aarch64*], [NO_UNALIGNED_ACCESS=1],
197 [mips*], [NO_UNALIGNED_ACCESS=1],
198 [tile*], [NO_UNALIGNED_ACCESS=1],
199 [
200 UNSUPPORTED_ARCH=1
201 NO_UNALIGNED_ACCESS=1
202 ])
203
204# Configuration options, which will be installed in the config.h
205AH_TEMPLATE([LTTNG_UST_HAVE_EFFICIENT_UNALIGNED_ACCESS], [Use efficient unaligned access.])
206AH_TEMPLATE([LTTNG_UST_HAVE_SDT_INTEGRATION], [SystemTap integration via sdt.h])
207AH_TEMPLATE([LTTNG_UST_HAVE_PERF_EVENT], [Perf event integration via perf_event.h])
208
209# Checks for libraries.
210AC_CHECK_LIB([dl], [dlopen], [
211 libdl_name=dl
212 DL_LIBS="-ldl"
213], [
214 #libdl not found, check for dlopen in libc.
215 AC_CHECK_LIB([c], [dlopen], [
216 libdl_name=c
217 DL_LIBS="-lc"
218 ], [
219 AC_MSG_ERROR([Cannot find dlopen in libdl nor libc. Use [LDFLAGS]=-Ldir to specify their location.])
220 ])
221])
222AC_SUBST(DL_LIBS)
223
224# Check if libdl has dlmopen support.
225AH_TEMPLATE([HAVE_DLMOPEN], ["Define to 1 if dlmopen is available."])
226AC_CHECK_LIB([$libdl_name], [dlmopen],
227 [AC_DEFINE([HAVE_DLMOPEN], [1])]
228)
229
230AC_CHECK_LIB([pthread], [pthread_create])
231AC_CHECK_LIB([pthread], [pthread_setname_np],
232 AC_DEFINE([HAVE_PTHREAD_SETNAME_NP], [1], [Define to 1 if pthread_setname_np is available.]),
233 AC_CHECK_LIB([pthread], [pthread_set_name_np],
234 AC_DEFINE([HAVE_PTHREAD_SET_NAME_NP], [1], [Define to 1 if pthread_set_name_np is available.]),
235 AC_MSG_RESULT([pthread setname/set_name not found.])))
236
237# Check for dlfcn.h
238AC_CHECK_HEADER([dlfcn.h])
239AS_IF([test "x${ac_cv_header_dlfcn_h}" = "xyes"], [
240 AC_CHECK_DECLS([RTLD_DI_LINKMAP], [], [], [
241 #define _GNU_SOURCE /* Required on Linux to get GNU extensions */
242 #include <dlfcn.h>
243 ])
244], [
245 ac_cv_have_decl_RTLD_DI_LINKMAP="no"
246])
247
248AM_CONDITIONAL([HAVE_DLINFO], [test "x${ac_cv_have_decl_RTLD_DI_LINKMAP}" = "xyes"])
249
250# URCU
251
252AC_MSG_CHECKING([DEFINE_URCU_TLS_INIT()])
253AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
254 #include <urcu/tls-compat.h>
255 DEFINE_URCU_TLS_INIT(int, a, 1);
256]])], [
257 AC_MSG_RESULT([yes])
258], [
259 AC_MSG_RESULT([no])
260 AC_MSG_ERROR([Please upgrade your version of liburcu to 0.12.0 or better])
261])
262
263# urcu - check if we just find the headers it out of the box.
264AC_CHECK_HEADERS([urcu-bp.h], [], [AC_MSG_ERROR([Cannot find [URCU] headers (urcu-bp.h). Use [CPPFLAGS]=-Idir to specify their location.
265This error can also occur when the liburcu package's configure script has not been run.])])
266
267# urcu-cds - check that URCU Concurrent Data Structure lib is available to compilation
268# Part of Userspace RCU library 0.7.2 or better.
269AC_CHECK_LIB([urcu-cds], [_cds_lfht_new], [], [AC_MSG_ERROR([Cannot find
270liburcu-cds lib, part of Userspace RCU 0.7 or better. Use [LDFLAGS]=-Ldir to specify its location.])])
271
272AC_MSG_CHECKING([caa_likely()])
273AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
274 #include <urcu/compiler.h>
275 void fct(void)
276 {
277 if (caa_likely(1)) {
278 }
279 }
280]])], [
281 AC_MSG_RESULT([yes])
282], [
283 AC_MSG_RESULT([no])
284 AC_MSG_ERROR([Please upgrade your version of liburcu to 0.6.6 or better])
285])
286
287# urcu - check that URCU lib is available to compilation
288AC_CHECK_LIB([urcu-bp], [urcu_bp_synchronize_rcu], [], [AC_MSG_ERROR([Cannot find liburcu-bp 0.11 or newer. Use [LDFLAGS]=-Ldir to specify its location.])])
289
290# urcu - check that URCU lib is at least version 0.11
291AC_CHECK_LIB([urcu-bp], [urcu_bp_call_rcu], [], [AC_MSG_ERROR([liburcu 0.11 or newer is needed, please update your version or use [LDFLAGS]=-Ldir to specify the right location.])])
292
293# numa.h integration
294AS_IF([test "x$NO_NUMA" = "x1"],[
295 AS_IF([test "x$enable_numa" = "x" ], [enable_numa=no])
296])
297
298AC_ARG_ENABLE([numa], [
299AS_HELP_STRING([--disable-numa], [disable NUMA support])
300], [
301 enable_numa=$enableval
302], [
303 enable_numa=yes
304])
305
306AS_IF([test "x$enable_numa" = "xyes"], [
307 # numa - check that numa lib is available
308 AC_CHECK_LIB([numa], [numa_available], [],
309[AC_MSG_ERROR([libnuma is not available. Please either install it (e.g. libnuma-dev) or use [LDFLAGS]=-Ldir to specify the right location, or use --disable-numa configure argument to disable NUMA support.])])
310 have_libnuma=yes
311])
312AM_CONDITIONAL([HAVE_LIBNUMA], [test "x$have_libnuma" = "xyes"])
313
314# optional linux/perf_event.h
315AC_CHECK_HEADERS([linux/perf_event.h], [have_perf_event=yes], [])
316
317# Perf event counters are supported on all architectures supported by
318# perf, using the read system call as fallback.
319AM_CONDITIONAL([HAVE_PERF_EVENT], [test "x$have_perf_event" = "xyes"])
320
321AS_IF([test "x$have_perf_event" = "xyes"], [
322 AC_DEFINE([LTTNG_UST_HAVE_PERF_EVENT], [1])
323])
324
325AS_IF([test "x$NO_UNALIGNED_ACCESS" = "x"], [
326 AC_DEFINE([LTTNG_UST_HAVE_EFFICIENT_UNALIGNED_ACCESS], [1])
327])
328
329# Check for JNI header files if requested
330AC_ARG_ENABLE([jni-interface], [
331AS_HELP_STRING([--enable-jni-interface], [build JNI interface between C and Java. Needs Java include files [default=no]])
332], [
333 jni_interface=$enableval
334], [
335 jni_interface=no
336])
337
338AM_CONDITIONAL([BUILD_JNI_INTERFACE], [test "x$jni_interface" = "xyes"])
339
340
341AC_ARG_ENABLE([java-agent-jul], [
342AS_HELP_STRING([--enable-java-agent-jul], [build the LTTng UST Java agent with JUL support [default=no]])
343], [
344 java_agent_jul=$enableval
345], [
346 java_agent_jul=no
347])
348
349AC_ARG_ENABLE([java-agent-log4j], [
350AS_HELP_STRING([--enable-java-agent-log4j], [build the LTTng UST Java agent with Log4j support [default=no]])
351], [
352 java_agent_log4j=$enableval
353], [
354 java_agent_log4j=no
355])
356
357AC_ARG_ENABLE([java-agent-all], [
358AS_HELP_STRING([--enable-java-agent-all], [build the LTTng UST Java agent with all supported backends [default=no]])
359], [
360 java_agent_jul=$enableval
361 java_agent_log4j=$enableval
362], [:])
363
364AM_CONDITIONAL([BUILD_JAVA_AGENT], [test "x$java_agent_jul" = "xyes" || test "x$java_agent_log4j" = "xyes"])
365AM_CONDITIONAL([BUILD_JAVA_AGENT_WITH_JUL], [test "x$java_agent_jul" = "xyes"])
366AM_CONDITIONAL([BUILD_JAVA_AGENT_WITH_LOG4J], [test "x$java_agent_log4j" = "xyes"])
367
368AS_IF([test "x$jni_interface" = "xyes" || test "x$java_agent_jul" = "xyes" || test "x$java_agent_log4j" = "xyes"], [
369 AX_JAVA_OPTIONS
370 AX_PROG_JAVAC
371 AX_PROG_JAVA
372 AX_PROG_JAR
373
374 AX_JNI_INCLUDE_DIR
375 for JNI_INCLUDE_DIR in $JNI_INCLUDE_DIRS
376 do
377 JNI_CPPFLAGS="$JNI_CPPFLAGS -I$JNI_INCLUDE_DIR"
378 done
379
380 saved_CPPFLAGS="$CPPFLAGS"
381 CPPFLAGS="$CPPFLAGS $JNI_CPPFLAGS"
382 AX_PROG_JAVAH
383 CPPFLAGS="$saved_CPPFLAGS"
384])
385
386AM_CONDITIONAL([HAVE_JAVAH], [test "x$JAVAH" != "x"])
387
388AS_IF([test "x$java_agent_log4j" = "xyes"], [
389 AX_CHECK_CLASSPATH
390 AX_CHECK_CLASS([org.apache.log4j.Logger])
391 AS_IF([test "x$ac_cv_class_org_apache_log4j_Logger" = "xno"], [
392 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"])
393 ])
394])
395
396# Option to build the python agent
397AC_ARG_ENABLE([python-agent], [
398AS_HELP_STRING([--enable-python-agent], [build the LTTng UST Python agent [default=no]])
399], [
400 python_agent=$enableval
401], [:])
402AM_CONDITIONAL([BUILD_PYTHON_AGENT], [test "x$python_agent" = "xyes"])
403AS_IF([test "x$python_agent" = "xyes"], [
404 AM_PATH_PYTHON([2.7])
405])
406
407# sdt.h integration
408AC_ARG_WITH([sdt], [
409AS_HELP_STRING([--with-sdt], [provide SystemTap integration via sdt.h [default=no]])
410], [
411 with_sdt=$withval
412], [
413 with_sdt="no"
414])
415
416AS_IF([test "x$with_sdt" = "xyes"], [
417 AC_MSG_CHECKING([STAP_PROBEV()])
418 AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
419 #define SDT_USE_VARIADIC
420 #include <sys/sdt.h>
421 void fct(void)
422 {
423 STAP_PROBEV(provider,name,1,2,3,4,5,6,7,8,9,10);
424 }
425 ]])], [
426 AC_MSG_RESULT([yes])
427 AC_DEFINE([LTTNG_UST_HAVE_SDT_INTEGRATION], [1])
428 ], [
429 AC_MSG_RESULT([no])
430 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])
431 ])
432])
433
434AC_ARG_WITH([lttng-system-rundir], [
435AS_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".]),
436], [
437 lttng_system_rundir="$withval"
438], [
439 lttng_system_rundir="/var/run/lttng"
440])
441AC_DEFINE_UNQUOTED([LTTNG_SYSTEM_RUNDIR], ["$lttng_system_rundir"],
442 [LTTng system runtime directory])
443
444AC_CHECK_PROG([BUILD_GEN_TP_EXAMPLES], [python], ["yes"])
445AM_CONDITIONAL([BUILD_GEN_TP_EXAMPLES], [test "x$BUILD_GEN_TP_EXAMPLES" = "xyes"])
446
447# Enable building examples
448AC_ARG_ENABLE(
449 examples,
450 AS_HELP_STRING(
451 [--disable-examples],
452 [Do not build and install examples]
453 ),
454 [enable_examples=$enableval],
455 [enable_examples=yes]
456)
457
458AM_CONDITIONAL([ENABLE_EXAMPLES], [test "x$enable_examples" != "xno"])
459
460# Set $IN_GIT_REPO if we're in the Git repository; the `bootstrap` file
461# is not distributed in tarballs.
462AS_IF([test -f "$srcdir/bootstrap"], [in_git_repo=yes], [in_git_repo=no])
463AM_CONDITIONAL([IN_GIT_REPO], [test "x$in_git_repo" = "xyes"])
464
465# Enable building man pages (user's intention).
466AC_ARG_ENABLE(
467 man-pages,
468 AS_HELP_STRING(
469 [--disable-man-pages],
470 [Do not build and install man pages (already built in a distributed tarball)]
471 ),
472 [man_pages_opt=$enableval],
473 [man_pages_opt=yes]
474)
475
476# Check for asciidoc and xmlto if we enabled building the man pages.
477have_asciidoc_xmlto=no
478warn_prebuilt_man_pages=no
479
480AS_IF([test "x$man_pages_opt" = "xyes"], [
481 AC_PATH_PROG([ASCIIDOC], [asciidoc], [no])
482 AC_PATH_PROG([XMLTO], [xmlto], [no])
483
484 AS_IF([test "x$ASCIIDOC" = "xno" || test "x$XMLTO" = "xno"], [
485 AS_IF([test "x$in_git_repo" = "xyes"], [
486 # This is an error because we're in the Git repo, which
487 # means the man pages are not already generated for us,
488 # thus asciidoc/xmlto are required because we were asked
489 # to build the man pages.
490 AC_MSG_ERROR([
491Both asciidoc and xmlto are needed to build the LTTng-UST man pages. Use
492--disable-man-pages to disable building the man pages, in which case
493they will not be installed.
494 ])
495 ], [
496 # Only warn here: since we're in the tarball, the man
497 # pages should already be generated at this point, thus
498 # asciidoc/xmlto are not strictly required.
499 warn_prebuilt_man_pages=yes
500 ])
501 ], [
502 have_asciidoc_xmlto=yes
503 ])
504])
505
506# Export man page build condition: build the man pages if the user
507# asked for it, and if the tools are available.
508AM_CONDITIONAL([MAN_PAGES_OPT], [test "x$man_pages_opt" != "xno"])
509AM_CONDITIONAL([HAVE_ASCIIDOC_XMLTO], [test "x$have_asciidoc_xmlto" = "xyes"])
510
511# Default values
512AC_DEFUN([_AC_DEFINE_AND_SUBST], [
513 AC_DEFINE_UNQUOTED([CONFIG_$1], [$2], [$1])
514 $1="$2"
515 AC_SUBST([$1])
516])
517
518_AC_DEFINE_AND_SUBST([LTTNG_UST_DEFAULT_CONSTRUCTOR_TIMEOUT_MS], [3000])
519
520AM_CFLAGS="-Wall"
521AC_SUBST(AM_CFLAGS)
522AC_SUBST(JNI_CPPFLAGS)
523
524AC_CONFIG_FILES([
525 Makefile
526 doc/Makefile
527 doc/examples/Makefile
528 doc/man/Makefile
529 include/Makefile
530 include/lttng/ust-version.h
531 snprintf/Makefile
532 libringbuffer/Makefile
533 liblttng-ust-comm/Makefile
534 liblttng-ust/Makefile
535 liblttng-ust-ctl/Makefile
536 liblttng-ust-fork/Makefile
537 liblttng-ust-dl/Makefile
538 liblttng-ust-fd/Makefile
539 liblttng-ust-java/Makefile
540 liblttng-ust-java-agent/Makefile
541 liblttng-ust-java-agent/java/Makefile
542 liblttng-ust-java-agent/java/lttng-ust-agent-all/Makefile
543 liblttng-ust-java-agent/java/lttng-ust-agent-common/Makefile
544 liblttng-ust-java-agent/java/lttng-ust-agent-jul/Makefile
545 liblttng-ust-java-agent/java/lttng-ust-agent-log4j/Makefile
546 liblttng-ust-java-agent/jni/Makefile
547 liblttng-ust-java-agent/jni/common/Makefile
548 liblttng-ust-java-agent/jni/jul/Makefile
549 liblttng-ust-java-agent/jni/log4j/Makefile
550 liblttng-ust-libc-wrapper/Makefile
551 liblttng-ust-cyg-profile/Makefile
552 liblttng-ust-python-agent/Makefile
553 python-lttngust/Makefile
554 python-lttngust/setup.py
555 python-lttngust/lttngust/__init__.py
556 tools/Makefile
557 tests/Makefile
558 tests/ctf-types/Makefile
559 tests/hello/Makefile
560 tests/hello-many/Makefile
561 tests/hello.cxx/Makefile
562 tests/same_line_tracepoint/Makefile
563 tests/snprintf/Makefile
564 tests/ust-elf/Makefile
565 tests/benchmark/Makefile
566 tests/utils/Makefile
567 tests/test-app-ctx/Makefile
568 tests/gcc-weak-hidden/Makefile
569 lttng-ust.pc
570 lttng-ust-ctl.pc
571])
572
573# Create link for python agent for the VPATH guru.
574AC_CONFIG_LINKS([
575 python-lttngust/lttngust/agent.py:python-lttngust/lttngust/agent.py
576 python-lttngust/lttngust/cmd.py:python-lttngust/lttngust/cmd.py
577 python-lttngust/lttngust/debug.py:python-lttngust/lttngust/debug.py
578 python-lttngust/lttngust/loghandler.py:python-lttngust/lttngust/loghandler.py
579])
580
581AC_CONFIG_FILES([tests/ust-elf/test_ust_elf],[chmod +x tests/ust-elf/test_ust_elf])
582
583AC_OUTPUT
584
585
586#
587# Mini-report on what will be built.
588#
589
590PPRINT_INIT
591PPRINT_SET_INDENT(1)
592PPRINT_SET_TS(38)
593
594AS_ECHO
595AS_ECHO("${PPRINT_COLOR_BLDBLU}LTTng-ust $PACKAGE_VERSION \"V_NAME\"$PPRINT_COLOR_RST")
596AS_ECHO
597
598AS_ECHO("V_DESC")
599
600AS_ECHO
601PPRINT_SUBTITLE([System])
602
603PPRINT_PROP_STRING([Target architecture], $host_cpu)
604
605test "x$NO_UNALIGNED_ACCESS" != "x1" && value=1 || value=0
606PPRINT_PROP_BOOL([Efficient unaligned memory access], $value)
607
608AS_IF([test "x$UNSUPPORTED_ARCH" = "x1"],[
609 PPRINT_WARN([Your architecture ($host_cpu) is unsupported, using safe default of no unaligned access.])
610])
611
612AS_ECHO
613PPRINT_SUBTITLE([Features])
614PPRINT_SET_INDENT(1)
615
616test "x$with_sdt" = "xyes" && value=1 || value=0
617PPRINT_PROP_BOOL_CUSTOM([sdt.h integration], $value, [use --with-sdt])
618
619test "x$java_agent_jul" = xyes && value=1 || value=0
620PPRINT_PROP_BOOL_CUSTOM([Java agent (JUL support)], $value, [use --enable-java-agent-jul])
621
622test "x$java_agent_log4j" = xyes && value=1 || value=0
623PPRINT_PROP_BOOL_CUSTOM([Java agent (Log4j support)], $value, [use --enable-java-agent-log4j])
624
625test "x$jni_interface" = xyes && value=1 || value=0
626PPRINT_PROP_BOOL_CUSTOM([JNI interface (JNI)], $value, [use --enable-jni-interface])
627
628test "x$python_agent" = xyes && value=1 || value=0
629PPRINT_PROP_BOOL_CUSTOM([Python agent], $value, [use --enable-python-agent])
630
631test "x$have_perf_event" = "xyes" && value=1 || value=0
632PPRINT_PROP_BOOL_CUSTOM([Perf event integration], $value)
633
634test "x$enable_numa" = xyes && value=1 || value=0
635PPRINT_PROP_BOOL([NUMA], $value)
636
637AS_ECHO
638PPRINT_SET_INDENT(0)
639
640test "x$enable_examples" = xyes && value=1 || value=0
641PPRINT_PROP_BOOL([Build and install examples], $value, $PPRINT_COLOR_SUBTITLE)
642
643# man pages build enabled/disabled
644m4_pushdef([build_man_pages_msg], [Build and install man pages])
645
646AS_IF([test "x$man_pages_opt" != "xno"], [
647 AS_IF([test "x$in_git_repo" = "xyes"], [
648 PPRINT_PROP_BOOL([build_man_pages_msg], 1, $PPRINT_COLOR_SUBTITLE)
649 ], [
650 AS_IF([test "x$have_asciidoc_xmlto" = "xyes"], [
651 PPRINT_PROP_BOOL([build_man_pages_msg], 1, $PPRINT_COLOR_SUBTITLE)
652 ], [
653 PPRINT_PROP_STRING([build_man_pages_msg],
654 [${PPRINT_COLOR_BLDGRN}yes (already built)],
655 $PPRINT_COLOR_SUBTITLE)
656 ])
657 ])
658], [
659 PPRINT_PROP_BOOL([build_man_pages_msg], 0, $PPRINT_COLOR_SUBTITLE)
660])
661
662m4_popdef([build_man_pages_msg])
663
664PPRINT_SET_INDENT(1)
665
666report_bindir="`eval eval echo $bindir`"
667report_libdir="`eval eval echo $libdir`"
668
669# Print the bindir and libdir this `make install' will install into.
670AS_ECHO
671PPRINT_SUBTITLE([Install directories])
672PPRINT_PROP_STRING([Binaries], [$report_bindir])
673PPRINT_PROP_STRING([Libraries], [$report_libdir])
674
675AS_ECHO
676PPRINT_SUBTITLE([System directories])
677
678PPRINT_PROP_STRING([lttng-sessiond rundir], [$lttng_system_rundir])
679
680PPRINT_SET_INDENT(0)
681
682AS_IF([test "x$warn_prebuilt_man_pages" = "xyes" ], [
683 AS_ECHO
684 PPRINT_WARN([Both asciidoc and xmlto are needed to build the LTTng-UST man pages.
685
686Note that the man pages are already built in this distribution tarball,
687therefore asciidoc and xmlto are only needed if you intend to modify
688their sources.
689
690Use --disable-man-pages to completely disable building and installing
691the man pages.])
692])
This page took 0.026958 seconds and 4 git commands to generate.