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