configure: regroup autoconf substituted variable
[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
46f5fb4c
MJ
486
487## ##
488## Substitute variables for use in Makefile.am ##
489## ##
490
491# Library versions for libtool
492AC_SUBST([LTTNG_UST_LIBRARY_VERSION], ust_lib_version)
493AC_SUBST([LTTNG_UST_CTL_LIBRARY_VERSION], ust_ctl_lib_version)
494
ff1ee9bc 495AM_CFLAGS="-Wall $URCU_CFLAGS $PTHREAD_CFLAGS"
e1c62734 496AC_SUBST(AM_CFLAGS)
fb54defd 497
04022848
MJ
498AM_CXXFLAGS="$AM_CFLAGS"
499AC_SUBST(AM_CXXFLAGS)
500
fb54defd
MJ
501# The order in which the include folders are searched is important.
502# The top_builddir should always be searched first in the event that a build
503# time generated file is included.
504AM_CPPFLAGS="-I\$(top_builddir)/include -I\$(top_srcdir)/include -include config.h"
505AC_SUBST(AM_CPPFLAGS)
506
e1c62734
MJ
507AC_SUBST(JNI_CPPFLAGS)
508
f4a9899e
MJ
509
510## ##
511## Output files generated by configure ##
512## ##
513
514# List of files to be generated from '.in' templates by AC_OUTPUT
55355fa5
JB
515AC_CONFIG_FILES([
516 Makefile
7ccf75d3
MD
517 doc/Makefile
518 doc/examples/Makefile
4ddbd0b7 519 doc/man/Makefile
69400ac4 520 include/Makefile
69400ac4 521 snprintf/Makefile
ebabbf58 522 libcounter/Makefile
49705576 523 libmsgpack/Makefile
4931a13e 524 libringbuffer/Makefile
69400ac4
MD
525 liblttng-ust-comm/Makefile
526 liblttng-ust/Makefile
527 liblttng-ust-ctl/Makefile
528 liblttng-ust-fork/Makefile
b13d93c2 529 liblttng-ust-dl/Makefile
95e6d268 530 liblttng-ust-fd/Makefile
69400ac4 531 liblttng-ust-java/Makefile
501f6777
CB
532 liblttng-ust-java-agent/Makefile
533 liblttng-ust-java-agent/java/Makefile
8e6b6350 534 liblttng-ust-java-agent/java/lttng-ust-agent-all/Makefile
8e57e02f
AM
535 liblttng-ust-java-agent/java/lttng-ust-agent-common/Makefile
536 liblttng-ust-java-agent/java/lttng-ust-agent-jul/Makefile
537 liblttng-ust-java-agent/java/lttng-ust-agent-log4j/Makefile
501f6777 538 liblttng-ust-java-agent/jni/Makefile
8ab5c06b 539 liblttng-ust-java-agent/jni/common/Makefile
501f6777
CB
540 liblttng-ust-java-agent/jni/jul/Makefile
541 liblttng-ust-java-agent/jni/log4j/Makefile
476037d9 542 liblttng-ust-libc-wrapper/Makefile
70d654f2 543 liblttng-ust-cyg-profile/Makefile
c3e14096 544 liblttng-ust-python-agent/Makefile
5b6ff569
PP
545 python-lttngust/Makefile
546 python-lttngust/setup.py
547 python-lttngust/lttngust/__init__.py
b25c5b37 548 tools/Makefile
6dd969b5 549 tests/Makefile
dbe6ade0
MJ
550 tests/compile/Makefile
551 tests/compile/ctf-types/Makefile
552 tests/compile/hello.cxx/Makefile
553 tests/compile/hello/Makefile
554 tests/compile/hello-many/Makefile
555 tests/compile/same_line_tracepoint/Makefile
556 tests/compile/test-app-ctx/Makefile
a44af49d 557 tests/benchmark/Makefile
dbe6ade0 558 tests/unit/gcc-weak-hidden/Makefile
49705576 559 tests/unit/libmsgpack/Makefile
dbe6ade0 560 tests/unit/Makefile
8707de35 561 tests/unit/libringbuffer/Makefile
dbe6ade0
MJ
562 tests/unit/pthread_name/Makefile
563 tests/unit/snprintf/Makefile
564 tests/unit/ust-elf/Makefile
9a4b88ff 565 tests/utils/Makefile
74a6d87b 566 lttng-ust.pc
a1acf2a6 567 lttng-ust-ctl.pc
55355fa5 568])
1f9eff07 569
1304f3df 570AC_OUTPUT
1f9eff07 571
94480b71 572
f4a9899e
MJ
573## ##
574## Mini-report on what will be built. ##
575## ##
94480b71
MJ
576
577PPRINT_INIT
578PPRINT_SET_INDENT(1)
579PPRINT_SET_TS(38)
580
2770ab16 581AS_ECHO
f4a9899e
MJ
582AS_IF([test -n "ust_version_name"], [
583 AS_ECHO("${PPRINT_COLOR_BLDBLU}LTTng-ust $PACKAGE_VERSION \"ust_version_name\"$PPRINT_COLOR_RST")
584], [
585 AS_ECHO("${PPRINT_COLOR_BLDBLU}LTTng-ust $PACKAGE_VERSION")
586])
587
2a5b1cfe 588AS_ECHO
649282a8 589
f4a9899e
MJ
590AS_IF([test -n "ust_version_description"], [
591 AS_IF([test -n "$FOLD"], [
592 AS_ECHO("`AS_ECHO("ust_version_description") | $FOLD -s`")
593 ], [
594 AS_ECHO("ust_version_description")
595 ])
596 AS_ECHO
597])
94480b71 598
94480b71
MJ
599PPRINT_SUBTITLE([System])
600
601PPRINT_PROP_STRING([Target architecture], $host_cpu)
602
dd08adc1 603AS_IF([test "x$unsupported_arch" = "xyes"],[
94480b71
MJ
604 PPRINT_WARN([Your architecture ($host_cpu) is unsupported, using safe default of no unaligned access.])
605])
606
607AS_ECHO
608PPRINT_SUBTITLE([Features])
609PPRINT_SET_INDENT(1)
610
611test "x$with_sdt" = "xyes" && value=1 || value=0
612PPRINT_PROP_BOOL_CUSTOM([sdt.h integration], $value, [use --with-sdt])
613
ed6dd5d6 614AE_IS_FEATURE_ENABLED([java-agent-jul]) && value=1 || value=0
94480b71
MJ
615PPRINT_PROP_BOOL_CUSTOM([Java agent (JUL support)], $value, [use --enable-java-agent-jul])
616
ed6dd5d6 617AE_IS_FEATURE_ENABLED([java-agent-log4j]) && value=1 || value=0
94480b71
MJ
618PPRINT_PROP_BOOL_CUSTOM([Java agent (Log4j support)], $value, [use --enable-java-agent-log4j])
619
ed6dd5d6 620AE_IS_FEATURE_ENABLED([jni-interface]) && value=1 || value=0
94480b71
MJ
621PPRINT_PROP_BOOL_CUSTOM([JNI interface (JNI)], $value, [use --enable-jni-interface])
622
ed6dd5d6 623AE_IS_FEATURE_ENABLED([python-agent]) && value=1 || value=0
94480b71 624PPRINT_PROP_BOOL_CUSTOM([Python agent], $value, [use --enable-python-agent])
1f9eff07 625
eeef0055 626test "x$ac_cv_header_linux_perf_event_h" = "xyes" && value=1 || value=0
3207efee
MJ
627PPRINT_PROP_BOOL_CUSTOM([Perf event integration], $value)
628
ed6dd5d6 629AE_IS_FEATURE_ENABLED([numa]) && value=1 || value=0
bfcda6ce
MD
630PPRINT_PROP_BOOL([NUMA], $value)
631
2a5b1cfe 632AS_ECHO
94480b71 633PPRINT_SET_INDENT(0)
501f6777 634
ed6dd5d6 635AE_IS_FEATURE_ENABLED([examples]) && value=1 || value=0
08aa9a26
PP
636PPRINT_PROP_BOOL([Build and install examples], $value, $PPRINT_COLOR_SUBTITLE)
637
94480b71
MJ
638# man pages build enabled/disabled
639m4_pushdef([build_man_pages_msg], [Build and install man pages])
501f6777 640
ed6dd5d6
MJ
641AE_IF_FEATURE_ENABLED([man-pages], [
642 AE_IF_IN_GIT_REPO([
643 PPRINT_PROP_BOOL([build_man_pages_msg], 1, $PPRINT_COLOR_SUBTITLE)
644 ], [
645 AS_IF([test "x$have_asciidoc_xmlto" = "xyes"], [
646 PPRINT_PROP_BOOL([build_man_pages_msg], 1, $PPRINT_COLOR_SUBTITLE)
647 ], [
648 PPRINT_PROP_STRING([build_man_pages_msg],
649 [${PPRINT_COLOR_BLDGRN}yes (already built)],
650 $PPRINT_COLOR_SUBTITLE)
651 ])
652 ])
94480b71 653], [
ed6dd5d6 654 PPRINT_PROP_BOOL([build_man_pages_msg], 0, $PPRINT_COLOR_SUBTITLE)
94480b71 655])
501f6777 656
94480b71 657m4_popdef([build_man_pages_msg])
1f9eff07 658
94480b71 659PPRINT_SET_INDENT(1)
c3e14096 660
94480b71
MJ
661report_bindir="`eval eval echo $bindir`"
662report_libdir="`eval eval echo $libdir`"
1f9eff07 663
94480b71 664# Print the bindir and libdir this `make install' will install into.
2a5b1cfe 665AS_ECHO
94480b71
MJ
666PPRINT_SUBTITLE([Install directories])
667PPRINT_PROP_STRING([Binaries], [$report_bindir])
668PPRINT_PROP_STRING([Libraries], [$report_libdir])
0ea8bd08 669
94480b71
MJ
670AS_ECHO
671PPRINT_SUBTITLE([System directories])
672
673PPRINT_PROP_STRING([lttng-sessiond rundir], [$lttng_system_rundir])
674
675PPRINT_SET_INDENT(0)
676
677AS_IF([test "x$warn_prebuilt_man_pages" = "xyes" ], [
ed6dd5d6
MJ
678 AS_ECHO
679 PPRINT_WARN([dnl
680Both asciidoc and xmlto are needed to build the LTTng-UST man pages.
1f9eff07 681
94480b71
MJ
682Note that the man pages are already built in this distribution tarball,
683therefore asciidoc and xmlto are only needed if you intend to modify
684their sources.
685
686Use --disable-man-pages to completely disable building and installing
687the man pages.])
688])
This page took 0.071476 seconds and 4 git commands to generate.