configure: regroup automake conditionals
[lttng-ust.git] / configure.ac
CommitLineData
f4a9899e
MJ
1dnl SPDX-License-Identifier: LGPL-2.1-only
2dnl
3dnl Copyright (C) 2021 EfficiOS, Inc.
4dnl
5dnl Process this file with autoconf to produce a configure script.
6
7
8# Project version information
9m4_define([ust_version_major], [2])
10m4_define([ust_version_minor], [13])
11m4_define([ust_version_patch], [0])
12m4_define([ust_version_dev_stage], [-pre])
13m4_define([ust_version], ust_version_major[.]ust_version_minor[.]ust_version_patch[]ust_version_dev_stage)
14m4_define([ust_version_name], [[Codename TBD]])
15m4_define([ust_version_description], [[Description TBD]])
16
17# Library version information of "liblttng-ust"
18# Following the numbering scheme proposed by libtool for the library version
19# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
20m4_define([ust_lib_version_current], [1])
21m4_define([ust_lib_version_revision], [0])
22m4_define([ust_lib_version_age], [0])
23m4_define([ust_lib_version], ust_lib_version_current[:]ust_lib_version_revision[:]ust_lib_version_age)
94480b71 24
f4a9899e 25# Library version information of "liblttng-ust-ctl"
a334646a
MD
26# Following the numbering scheme proposed by libtool for the library version
27# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
f4a9899e
MJ
28m4_define([ust_ctl_lib_version_current], [5])
29m4_define([ust_ctl_lib_version_revision], [0])
30m4_define([ust_ctl_lib_version_age], [0])
31m4_define([ust_ctl_lib_version], ust_ctl_lib_version_current[:]ust_ctl_lib_version_revision[:]ust_ctl_lib_version_age)
32
23e08412 33
f4a9899e
MJ
34## ##
35## Autoconf base setup ##
36## ##
a334646a 37
f4a9899e
MJ
38AC_PREREQ([2.69])
39AC_INIT([lttng-ust],[ust_version],[mathieu dot desnoyers at efficios dot com],[],[https://lttng.org])
41a2a9aa 40
f4a9899e 41AC_CONFIG_HEADERS([include/config.h include/lttng/ust-config.h include/lttng/ust-version.h])
55355fa5 42AC_CONFIG_AUX_DIR([config])
94480b71 43AC_CONFIG_MACRO_DIR([m4])
94480b71 44
9441df61
PMF
45AC_CANONICAL_TARGET
46AC_CANONICAL_HOST
94480b71 47
f4a9899e
MJ
48
49## ##
50## Automake base setup ##
51## ##
52
0f6f0e89 53AM_INIT_AUTOMAKE([1.12 foreign dist-bzip2 no-dist-gzip tar-ustar nostdinc -Wall -Wno-portability -Werror])
846154aa 54AM_MAINTAINER_MODE([enable])
94480b71 55
80268473
MJ
56# Enable silent rules by default
57AM_SILENT_RULES([yes])
4846fadc 58
2bee6b25 59
dd08adc1
MJ
60## ##
61## OS and Arch specific defaults ##
62## ##
63
64# Set os specific options
65AS_CASE([$host_os],
ed6dd5d6 66 [freebsd*], [AE_FEATURE_DISABLE([numa])]
dd08adc1
MJ
67)
68
69# Set architecture specific options
70AS_CASE([$host_cpu],
71 [i[[3456]]86], [],
72 [x86_64], [],
73 [amd64], [],
74 [powerpc], [],
75 [ppc64], [],
76 [ppc64le], [],
77 [powerpc64], [],
78 [powerpc64le], [],
79 [s390], [],
80 [s390x], [],
ed6dd5d6 81 [arm*], [AE_FEATURE_DISABLE([numa])],
dd08adc1
MJ
82 [aarch64*], [],
83 [mips*], [],
84 [tile*], [],
85 [
86 unsupported_arch="yes"
87 ])
88
89
2bee6b25
MJ
90## ##
91## C compiler checks ##
92## ##
93
94# Choose the C compiler
94480b71 95AC_PROG_CC
f436dc74
JG
96# AC_PROG_CC_STDC was merged in AC_PROG_CC in autoconf 2.70
97m4_version_prereq([2.70], [], [AC_PROG_CC_STDC])
23c8854a 98
2bee6b25
MJ
99# Make sure the C compiler supports C99
100AS_IF([test "$ac_cv_prog_cc_c99" = "no"], [AC_MSG_ERROR([The compiler does not support C99])])
101
102# Enable available system extensions and LFS support
103AC_USE_SYSTEM_EXTENSIONS
104AC_SYS_LARGEFILE
105
106# Make sure the C compiler supports __attribute__
107AX_C___ATTRIBUTE__
108AS_IF([test "x$ax_cv___attribute__" != "xyes"],
109 [AC_MSG_ERROR([The compiler does not support __attribute__ extensions])])
110
111# Make sure we have pthread support
112AX_PTHREAD([], [AC_MSG_ERROR([Could not configure pthread support])])
113
114# Make sure the C compiler supports weak symbols
94480b71 115AX_SYS_WEAK_ALIAS
2bee6b25
MJ
116AS_IF([test "x$ax_cv_sys_weak_alias" = "xno"],
117 [AC_MSG_ERROR([Your platform doesn't support weak symbols.])])
118
119# Checks for typedefs, structures, and compiler characteristics.
120AC_C_INLINE
121AC_C_TYPEOF
122AC_TYPE_INT16_T
123AC_TYPE_INT32_T
124AC_TYPE_INT64_T
125AC_TYPE_INT8_T
126AC_TYPE_MODE_T
127AC_TYPE_OFF_T
128AC_TYPE_PID_T
129AC_TYPE_SIZE_T
130AC_TYPE_SSIZE_T
131AC_TYPE_UID_T
132AC_TYPE_UINT16_T
133AC_TYPE_UINT32_T
134AC_TYPE_UINT64_T
135AC_TYPE_UINT8_T
136AC_CHECK_TYPES([ptrdiff_t])
137
138
139## ##
140## C++ compiler checks ##
141## ##
142
143# Find an optional C++11 compiler without GNU extensions (-std=c++11)
144AX_CXX_COMPILE_STDCXX([11], [noext], [optional])
94480b71 145
161239e0 146
eeef0055
MJ
147## ##
148## Header checks ##
149## ##
150
151AC_HEADER_STDBOOL
152AC_CHECK_HEADERS([ \
153 arpa/inet.h \
154 dlfcn.h \
155 fcntl.h \
156 float.h \
157 limits.h \
158 linux/perf_event.h \
159 locale.h \
160 stddef.h \
161 sys/socket.h \
162 sys/time.h \
163 wchar.h \
164])
165
166# Check for dlinfo() by testing for RTLD_DI_LINKMAP in dlfcn.h
167AS_IF([test "x$ac_cv_header_dlfcn_h" = "xyes"], [
168 AC_CHECK_DECL([RTLD_DI_LINKMAP], [], [], [[#include <dlfcn.h>]])
169])
170
171
49f89ab8
MJ
172## ##
173## Programs checks ##
174## ##
175
8aeb3cae 176AM_PROG_AR
46a73fe4 177AC_PROG_SED
faebb418 178AC_PROG_GREP
85e09133 179AC_PROG_LN_S
4c70c05c 180AC_PROG_MKDIR_P
94480b71 181AC_PROG_MAKE_SET
49f89ab8
MJ
182AC_CHECK_PROGS([ASCIIDOC], [asciidoc])
183AC_CHECK_PROGS([CMAKE], [cmake])
184AC_CHECK_PROGS([FOLD], [fold])
185AC_CHECK_PROGS([XMLTO], [xmlto])
46a73fe4 186
49f89ab8 187AM_PATH_PYTHON([2.7], [], [PYTHON=""])
86adb855 188
49f89ab8
MJ
189AX_PROG_JAVAC
190AX_PROG_JAVA
191AX_PROG_JAR
86adb855 192
49f89ab8 193# Initialize and configure libtool
94480b71 194LT_INIT([disable-static])
faebb418 195
49f89ab8 196
a423db3f
MJ
197## ##
198## Library checks ##
199## ##
49f89ab8 200
94480b71
MJ
201AC_FUNC_CHOWN
202AC_FUNC_FORK
203AC_FUNC_MMAP
94480b71
MJ
204AC_FUNC_STRERROR_R
205AC_FUNC_STRNLEN
206AC_CHECK_FUNCS([ \
a423db3f
MJ
207 atexit \
208 clock_gettime \
209 ftruncate \
210 getpagesize \
211 gettimeofday \
212 localeconv \
213 memchr \
214 memmove \
215 memset \
216 mkdir \
217 munmap \
218 realpath \
219 sched_getcpu \
220 socket \
221 strchr \
222 strdup \
223 strerror \
224 strtol \
225 strtoul \
226 sysconf \
86adb855 227])
340f7763 228
a423db3f
MJ
229# AC_FUNC_MALLOC causes problems when cross-compiling.
230#AC_FUNC_MALLOC
231#AC_FUNC_REALLOC
232
d9c56a93
MJ
233# Check for pthread_setname_np and its signature
234LTTNG_PTHREAD_SETNAME_NP
653f7d34 235LTTNG_PTHREAD_GETNAME_NP
d9c56a93 236
a423db3f
MJ
237# Check dor dlopen() in -ldl or -lc
238AC_CHECK_LIB([dl], [dlopen], [
239 libdl_name=dl
240 DL_LIBS="-ldl"
241], [
242 # dlopen not found in libdl, check in libc
243 AC_CHECK_LIB([c], [dlopen], [
244 libdl_name=c
245 DL_LIBS="-lc"
246 ], [
247 AC_MSG_ERROR([Cannot find dlopen in libdl nor libc. Use [LDFLAGS]=-Ldir to specify their location.])
248 ])
249])
250AC_SUBST(DL_LIBS)
251
252# Check if libdl has dlmopen()
253AC_CHECK_LIB([$libdl_name], [dlmopen], [
254 AC_DEFINE([HAVE_DLMOPEN], [1], [Define to 1 if dlmopen is available.])
255])
256
257# Require URCU >= 0.12 for DEFINE_URCU_TLS_INIT
258PKG_CHECK_MODULES([URCU], [liburcu >= 0.12])
259
260
ed6dd5d6
MJ
261## ##
262## User variables ##
263## ##
a423db3f 264
ed6dd5d6 265# Additional variables captured during ./configure
f1d4b810 266
ed6dd5d6 267AC_ARG_VAR([CLASSPATH], [Java class path])
94480b71 268
42330adc 269
ed6dd5d6
MJ
270## ##
271## Optionnal features selection ##
272## ##
f9ff7aa4 273
ed6dd5d6
MJ
274# numa integration
275# Enabled by default, except on some platforms
276AE_FEATURE_DEFAULT_ENABLE
277AE_FEATURE([numa],[disable NUMA support])
c95c332a 278
ed6dd5d6
MJ
279# Java JNI interface library
280# Disabled by default
281AE_FEATURE_DEFAULT_DISABLE
282AE_FEATURE([jni-interface], [build JNI interface between C and Java])
bfcda6ce 283
ed6dd5d6
MJ
284# Build the Java Logging API agent
285# Disabled by default
286AE_FEATURE_DEFAULT_DISABLE
287AE_FEATURE([java-agent-jul],[build the LTTng UST Java agent with JUL support])
e3073410 288
ed6dd5d6
MJ
289# Build the Java Log4j agent
290# Disabled by default
291AE_FEATURE_DEFAULT_DISABLE
292AE_FEATURE([java-agent-log4j],[build the LTTng UST Java agent with Log4j support])
d58d1454 293
ed6dd5d6
MJ
294# Build both Java agents
295# Disabled by default
296AE_FEATURE_DEFAULT_DISABLE
297AE_FEATURE([java-agent-all],[build the LTTng UST Java agent with all supported backends])
2b6f8df9 298
ed6dd5d6
MJ
299# Build the Python agent
300# Disabled by default
301AE_FEATURE_DEFAULT_DISABLE
302AE_FEATURE([python-agent],[build the LTTng UST Python agent])
2b6f8df9 303
ed6dd5d6
MJ
304# Build the examples
305# Disabled by default
306AE_FEATURE_DEFAULT_ENABLE
307AE_FEATURE([examples],[Do not build and install examples])
501f6777 308
ed6dd5d6
MJ
309# Man pages
310# Enabled by default
311AE_FEATURE_DEFAULT_ENABLE
312AE_FEATURE([man-pages],[Do not build and install man pages (already built in a distributed tarball)])
313
314# Systemtap sdt.h integration
315# Disabled by default
316AC_ARG_WITH([sdt],
317 [AS_HELP_STRING([--with-sdt], [provide SystemTap integration via sdt.h [default=no]])]
318)
501f6777 319
ed6dd5d6
MJ
320# Override the default runtime directory
321AC_ARG_WITH([lttng-system-rundir], [
322AS_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".]),
86adb855 323], [
ed6dd5d6 324 lttng_system_rundir="$withval"
86adb855 325], [
ed6dd5d6 326 lttng_system_rundir="/var/run/lttng"
86adb855 327])
501f6777 328
ed6dd5d6
MJ
329# Add the java command line arguments like '--wit-java-prefix'
330AX_JAVA_OPTIONS
501f6777 331
501f6777 332
ed6dd5d6
MJ
333## ##
334## Check for conflicting features selection ##
335## ##
501f6777 336
ed6dd5d6
MJ
337AE_IF_FEATURE_DISABLED([shared], [
338 AC_MSG_ERROR(LTTng-UST requires shared libraries to be enabled)
339])
501f6777 340
ed6dd5d6
MJ
341AE_IF_FEATURE_ENABLED([java-agent-all], [
342 AE_FEATURE_ENABLE([java-agent-jul])
343 AE_FEATURE_ENABLE([java-agent-log4j])
0e7d861a 344])
501f6777 345
1f0418c7 346
ed6dd5d6
MJ
347## ##
348## Check for optional features dependencies ##
349## ##
350
351# The numa integration requires libnuma
352AE_IF_FEATURE_ENABLED([numa], [
353 AC_CHECK_LIB([numa], [numa_available], [], [
354 AC_MSG_ERROR([dnl
355libnuma is not available. Please either install it (e.g. libnuma-dev) or use
356[LDFLAGS]=-Ldir to specify the right location, or use --disable-numa configure
357argument to disable NUMA support.
358 ])
359 ])
0e7d861a 360])
501f6777 361
ed6dd5d6
MJ
362# The JNI interface and Java Agents require a working Java JDK
363AS_IF([AE_IS_FEATURE_ENABLED([jni-interface]) || AE_IS_FEATURE_ENABLED([java-agent-jul]) || AE_IS_FEATURE_ENABLED([java-agent-log4j])], [
364 # We detected a java compiler earlier, make sure it works
365 AX_PROG_JAVAC_WORKS
366
367 # Get the CPPFLAGS required to build jni libaries
368 AX_JNI_INCLUDE_DIR
369 for jni_include_dir in $JNI_INCLUDE_DIRS; do
370 JNI_CPPFLAGS="$JNI_CPPFLAGS -I$jni_include_dir"
371 done
372
373 # Check for javah and jni.h
374 saved_CPPFLAGS="$CPPFLAGS"
375 CPPFLAGS="$CPPFLAGS $JNI_CPPFLAGS"
376 AX_PROG_JAVAH
377 CPPFLAGS="$saved_CPPFLAGS"
378])
c3e14096 379
ed6dd5d6
MJ
380# The log4j agent requires the log4j jar in the classpath
381AE_IF_FEATURE_ENABLED([java-agent-log4j], [
382 AX_CHECK_CLASS([org.apache.log4j.Logger])
383 AS_IF([test "x$ac_cv_class_org_apache_log4j_Logger" = "xno"], [
384 AC_MSG_ERROR([dnl
385The UST Java agent support for log4j was requested but the Log4j classes were
386not found. Please specify the location of the Log4j jar via the Java CLASSPATH
387environment variable, e.g. ./configure CLASSPATH="/path/to/log4j.jar"
388
389Current CLASSPATH: "$CLASSPATH"
390 ])
391 ])
86adb855 392])
4846fadc 393
ed6dd5d6
MJ
394# The python agent requires a python interpreter
395AE_IF_FEATURE_ENABLED([python-agent], [
396 AS_IF([test "x$PYTHON" = "x"], [
397 AC_MSG_ERROR([dnl
398Cannot find a suitable python interpreter. You can override it with the PYTHON
399environment variable.
400 ])
401 ])
4846fadc
AM
402])
403
ed6dd5d6
MJ
404# Check for asciidoc and xmlto if we enabled building the man pages.
405AE_IF_FEATURE_ENABLED([man-pages], [
406 AS_IF([test "x$ASCIIDOC" = "x" || test "x$XMLTO" = "x"], [
407 AE_IF_IN_GIT_REPO([
408 # This is an error because we're in the Git repo, which
409 # means the man pages are not already generated for us,
410 # thus asciidoc/xmlto are required because we were asked
411 # to build the man pages.
412 AC_MSG_ERROR([dnl
413Both asciidoc and xmlto are needed to build the LTTng-UST man pages. Use
414--disable-man-pages to disable building the man pages, in which case
415they will not be installed.
416 ])
417 ], [
418 # Only warn here: since we're in the tarball, the man
419 # pages should already be generated at this point, thus
420 # asciidoc/xmlto are not strictly required.
421 warn_prebuilt_man_pages=yes
422 ])
423 ], [
424 have_asciidoc_xmlto=yes
425 ])
426])
427
428AS_IF([test "x$with_sdt" = "xyes"], [
429 AC_MSG_CHECKING([STAP_PROBEV()])
430 AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
431 #define SDT_USE_VARIADIC
432 #include <sys/sdt.h>
433 void fct(void)
434 {
435 STAP_PROBEV(provider,name,1,2,3,4,5,6,7,8,9,10);
436 }
437 ]])], [
438 AC_MSG_RESULT([yes])
439 AC_DEFINE([LTTNG_UST_HAVE_SDT_INTEGRATION], [1], [SystemTap integration via sdt.h])
440 ], [
441 AC_MSG_RESULT([no])
442 AC_MSG_ERROR([dnl
443The sdt.h integration was requested but the STAP_PROBEV define cannot be used.
444Make sure it is installed, and up to date, or use CPPFLAGS=-I/path/ to specify
445a non-standard path to sys/sdt.h
446 ])
447 ])
86adb855 448])
ed6dd5d6
MJ
449
450
b7c38855
MJ
451## ##
452## Set defines for optional features conditionnals in the source code ##
453## ##
454
455AC_DEFINE_UNQUOTED([LTTNG_SYSTEM_RUNDIR], ["$lttng_system_rundir"], [LTTng system runtime directory])
456
457# Defined in include/lttng/ust-version.h
458AC_DEFINE([LTTNG_UST_MAJOR_VERSION], ust_version_major, [LTTng UST major version])
459AC_DEFINE([LTTNG_UST_MINOR_VERSION], ust_version_minor, [LTTng UST minor version])
460AC_DEFINE([LTTNG_UST_PATCHLEVEL_VERSION], ust_version_patch, [LTTng UST patch version])
461AC_DEFINE([LTTNG_UST_VERSION], ["]ust_version["], [LTTng UST version string])
462AC_DEFINE([LTTNG_UST_LIB_SONAME_MAJOR], [ust_lib_version_current], [Major SONAME number of liblttng-ust])
463AC_DEFINE([LTTNG_UST_CTL_LIB_SONAME_MAJOR], [ust_ctl_lib_version_current], [Major SONAME number of liblttng-ust-ctl])
464
465
f574bfb4
MJ
466## ##
467## Set automake variables for optional feature conditionnals in Makefile.am ##
468## ##
ed6dd5d6 469
f574bfb4 470AM_CONDITIONAL([ENABLE_EXAMPLES], AE_IS_FEATURE_ENABLED([examples]))
49f89ab8 471AM_CONDITIONAL([ENABLE_GEN_TP_EXAMPLES], [test "x$PYTHON" != "x"])
f574bfb4
MJ
472AM_CONDITIONAL([ENABLE_JAVA_AGENT], AE_IS_FEATURE_ENABLED([java-agent-jul]) || AE_IS_FEATURE_ENABLED([java-agent-log4j]))
473AM_CONDITIONAL([ENABLE_JAVA_AGENT_WITH_JUL], AE_IS_FEATURE_ENABLED([java-agent-jul]))
474AM_CONDITIONAL([ENABLE_JAVA_AGENT_WITH_LOG4J], AE_IS_FEATURE_ENABLED([java-agent-log4j]))
475AM_CONDITIONAL([ENABLE_JNI_INTERFACE], AE_IS_FEATURE_ENABLED([jni-interface]))
476AM_CONDITIONAL([ENABLE_MAN_PAGES], AE_IS_FEATURE_ENABLED([man-pages]))
477AM_CONDITIONAL([ENABLE_NUMA], AE_IS_FEATURE_ENABLED([numa]))
478AM_CONDITIONAL([ENABLE_PYTHON_AGENT], AE_IS_FEATURE_ENABLED([python-agent]))
479AM_CONDITIONAL([ENABLE_UST_DL], [test "x$ac_cv_have_decl_RTLD_DI_LINKMAP" = "xyes"])
4ddbd0b7 480AM_CONDITIONAL([HAVE_ASCIIDOC_XMLTO], [test "x$have_asciidoc_xmlto" = "xyes"])
f574bfb4
MJ
481AM_CONDITIONAL([HAVE_CMAKE], [test "x$CMAKE" != "x"])
482AM_CONDITIONAL([HAVE_CXX], [test "$HAVE_CXX11" = "1"])
483AM_CONDITIONAL([HAVE_JAVAH], [test "x$JAVAH" != "x"])
484AM_CONDITIONAL([HAVE_PERF_EVENT], [test "x$ac_cv_header_linux_perf_event_h" = "xyes"])
4ddbd0b7 485
ff1ee9bc 486AM_CFLAGS="-Wall $URCU_CFLAGS $PTHREAD_CFLAGS"
e1c62734 487AC_SUBST(AM_CFLAGS)
fb54defd 488
04022848
MJ
489AM_CXXFLAGS="$AM_CFLAGS"
490AC_SUBST(AM_CXXFLAGS)
491
fb54defd
MJ
492# The order in which the include folders are searched is important.
493# The top_builddir should always be searched first in the event that a build
494# time generated file is included.
495AM_CPPFLAGS="-I\$(top_builddir)/include -I\$(top_srcdir)/include -include config.h"
496AC_SUBST(AM_CPPFLAGS)
497
e1c62734
MJ
498AC_SUBST(JNI_CPPFLAGS)
499
f4a9899e
MJ
500
501## ##
502## Output files generated by configure ##
503## ##
504
505# List of files to be generated from '.in' templates by AC_OUTPUT
55355fa5
JB
506AC_CONFIG_FILES([
507 Makefile
7ccf75d3
MD
508 doc/Makefile
509 doc/examples/Makefile
4ddbd0b7 510 doc/man/Makefile
69400ac4 511 include/Makefile
69400ac4 512 snprintf/Makefile
ebabbf58 513 libcounter/Makefile
49705576 514 libmsgpack/Makefile
4931a13e 515 libringbuffer/Makefile
69400ac4
MD
516 liblttng-ust-comm/Makefile
517 liblttng-ust/Makefile
518 liblttng-ust-ctl/Makefile
519 liblttng-ust-fork/Makefile
b13d93c2 520 liblttng-ust-dl/Makefile
95e6d268 521 liblttng-ust-fd/Makefile
69400ac4 522 liblttng-ust-java/Makefile
501f6777
CB
523 liblttng-ust-java-agent/Makefile
524 liblttng-ust-java-agent/java/Makefile
8e6b6350 525 liblttng-ust-java-agent/java/lttng-ust-agent-all/Makefile
8e57e02f
AM
526 liblttng-ust-java-agent/java/lttng-ust-agent-common/Makefile
527 liblttng-ust-java-agent/java/lttng-ust-agent-jul/Makefile
528 liblttng-ust-java-agent/java/lttng-ust-agent-log4j/Makefile
501f6777 529 liblttng-ust-java-agent/jni/Makefile
8ab5c06b 530 liblttng-ust-java-agent/jni/common/Makefile
501f6777
CB
531 liblttng-ust-java-agent/jni/jul/Makefile
532 liblttng-ust-java-agent/jni/log4j/Makefile
476037d9 533 liblttng-ust-libc-wrapper/Makefile
70d654f2 534 liblttng-ust-cyg-profile/Makefile
c3e14096 535 liblttng-ust-python-agent/Makefile
5b6ff569
PP
536 python-lttngust/Makefile
537 python-lttngust/setup.py
538 python-lttngust/lttngust/__init__.py
b25c5b37 539 tools/Makefile
6dd969b5 540 tests/Makefile
dbe6ade0
MJ
541 tests/compile/Makefile
542 tests/compile/ctf-types/Makefile
543 tests/compile/hello.cxx/Makefile
544 tests/compile/hello/Makefile
545 tests/compile/hello-many/Makefile
546 tests/compile/same_line_tracepoint/Makefile
547 tests/compile/test-app-ctx/Makefile
a44af49d 548 tests/benchmark/Makefile
dbe6ade0 549 tests/unit/gcc-weak-hidden/Makefile
49705576 550 tests/unit/libmsgpack/Makefile
dbe6ade0 551 tests/unit/Makefile
8707de35 552 tests/unit/libringbuffer/Makefile
dbe6ade0
MJ
553 tests/unit/pthread_name/Makefile
554 tests/unit/snprintf/Makefile
555 tests/unit/ust-elf/Makefile
9a4b88ff 556 tests/utils/Makefile
74a6d87b 557 lttng-ust.pc
a1acf2a6 558 lttng-ust-ctl.pc
55355fa5 559])
1f9eff07 560
1304f3df 561AC_OUTPUT
1f9eff07 562
94480b71 563
f4a9899e
MJ
564## ##
565## Mini-report on what will be built. ##
566## ##
94480b71
MJ
567
568PPRINT_INIT
569PPRINT_SET_INDENT(1)
570PPRINT_SET_TS(38)
571
2770ab16 572AS_ECHO
f4a9899e
MJ
573AS_IF([test -n "ust_version_name"], [
574 AS_ECHO("${PPRINT_COLOR_BLDBLU}LTTng-ust $PACKAGE_VERSION \"ust_version_name\"$PPRINT_COLOR_RST")
575], [
576 AS_ECHO("${PPRINT_COLOR_BLDBLU}LTTng-ust $PACKAGE_VERSION")
577])
578
2a5b1cfe 579AS_ECHO
649282a8 580
f4a9899e
MJ
581AS_IF([test -n "ust_version_description"], [
582 AS_IF([test -n "$FOLD"], [
583 AS_ECHO("`AS_ECHO("ust_version_description") | $FOLD -s`")
584 ], [
585 AS_ECHO("ust_version_description")
586 ])
587 AS_ECHO
588])
94480b71 589
94480b71
MJ
590PPRINT_SUBTITLE([System])
591
592PPRINT_PROP_STRING([Target architecture], $host_cpu)
593
dd08adc1 594AS_IF([test "x$unsupported_arch" = "xyes"],[
94480b71
MJ
595 PPRINT_WARN([Your architecture ($host_cpu) is unsupported, using safe default of no unaligned access.])
596])
597
598AS_ECHO
599PPRINT_SUBTITLE([Features])
600PPRINT_SET_INDENT(1)
601
602test "x$with_sdt" = "xyes" && value=1 || value=0
603PPRINT_PROP_BOOL_CUSTOM([sdt.h integration], $value, [use --with-sdt])
604
ed6dd5d6 605AE_IS_FEATURE_ENABLED([java-agent-jul]) && value=1 || value=0
94480b71
MJ
606PPRINT_PROP_BOOL_CUSTOM([Java agent (JUL support)], $value, [use --enable-java-agent-jul])
607
ed6dd5d6 608AE_IS_FEATURE_ENABLED([java-agent-log4j]) && value=1 || value=0
94480b71
MJ
609PPRINT_PROP_BOOL_CUSTOM([Java agent (Log4j support)], $value, [use --enable-java-agent-log4j])
610
ed6dd5d6 611AE_IS_FEATURE_ENABLED([jni-interface]) && value=1 || value=0
94480b71
MJ
612PPRINT_PROP_BOOL_CUSTOM([JNI interface (JNI)], $value, [use --enable-jni-interface])
613
ed6dd5d6 614AE_IS_FEATURE_ENABLED([python-agent]) && value=1 || value=0
94480b71 615PPRINT_PROP_BOOL_CUSTOM([Python agent], $value, [use --enable-python-agent])
1f9eff07 616
eeef0055 617test "x$ac_cv_header_linux_perf_event_h" = "xyes" && value=1 || value=0
3207efee
MJ
618PPRINT_PROP_BOOL_CUSTOM([Perf event integration], $value)
619
ed6dd5d6 620AE_IS_FEATURE_ENABLED([numa]) && value=1 || value=0
bfcda6ce
MD
621PPRINT_PROP_BOOL([NUMA], $value)
622
2a5b1cfe 623AS_ECHO
94480b71 624PPRINT_SET_INDENT(0)
501f6777 625
ed6dd5d6 626AE_IS_FEATURE_ENABLED([examples]) && value=1 || value=0
08aa9a26
PP
627PPRINT_PROP_BOOL([Build and install examples], $value, $PPRINT_COLOR_SUBTITLE)
628
94480b71
MJ
629# man pages build enabled/disabled
630m4_pushdef([build_man_pages_msg], [Build and install man pages])
501f6777 631
ed6dd5d6
MJ
632AE_IF_FEATURE_ENABLED([man-pages], [
633 AE_IF_IN_GIT_REPO([
634 PPRINT_PROP_BOOL([build_man_pages_msg], 1, $PPRINT_COLOR_SUBTITLE)
635 ], [
636 AS_IF([test "x$have_asciidoc_xmlto" = "xyes"], [
637 PPRINT_PROP_BOOL([build_man_pages_msg], 1, $PPRINT_COLOR_SUBTITLE)
638 ], [
639 PPRINT_PROP_STRING([build_man_pages_msg],
640 [${PPRINT_COLOR_BLDGRN}yes (already built)],
641 $PPRINT_COLOR_SUBTITLE)
642 ])
643 ])
94480b71 644], [
ed6dd5d6 645 PPRINT_PROP_BOOL([build_man_pages_msg], 0, $PPRINT_COLOR_SUBTITLE)
94480b71 646])
501f6777 647
94480b71 648m4_popdef([build_man_pages_msg])
1f9eff07 649
94480b71 650PPRINT_SET_INDENT(1)
c3e14096 651
94480b71
MJ
652report_bindir="`eval eval echo $bindir`"
653report_libdir="`eval eval echo $libdir`"
1f9eff07 654
94480b71 655# Print the bindir and libdir this `make install' will install into.
2a5b1cfe 656AS_ECHO
94480b71
MJ
657PPRINT_SUBTITLE([Install directories])
658PPRINT_PROP_STRING([Binaries], [$report_bindir])
659PPRINT_PROP_STRING([Libraries], [$report_libdir])
0ea8bd08 660
94480b71
MJ
661AS_ECHO
662PPRINT_SUBTITLE([System directories])
663
664PPRINT_PROP_STRING([lttng-sessiond rundir], [$lttng_system_rundir])
665
666PPRINT_SET_INDENT(0)
667
668AS_IF([test "x$warn_prebuilt_man_pages" = "xyes" ], [
ed6dd5d6
MJ
669 AS_ECHO
670 PPRINT_WARN([dnl
671Both asciidoc and xmlto are needed to build the LTTng-UST man pages.
1f9eff07 672
94480b71
MJ
673Note that the man pages are already built in this distribution tarball,
674therefore asciidoc and xmlto are only needed if you intend to modify
675their sources.
676
677Use --disable-man-pages to completely disable building and installing
678the man pages.])
679])
This page took 0.071487 seconds and 4 git commands to generate.