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