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