AC_CANONICAL_TARGET
AC_CANONICAL_HOST
-AM_INIT_AUTOMAKE([1.12 foreign dist-bzip2 no-dist-gzip tar-pax nostdinc])
+AM_INIT_AUTOMAKE([1.12 foreign dist-bzip2 no-dist-gzip tar-pax nostdinc subdir-objects])
AM_MAINTAINER_MODE([enable])
# Enable silent rules if available (Introduced in AM 1.11)
AC_PROG_GREP
AC_PROG_MAKE_SET
AC_PROG_SED
+AC_PROG_MKDIR_P
AC_PATH_PROG([report_fold], [fold])
LT_INIT
mkdir munmap putenv realpath rmdir socket strchr strcspn strdup \
strncasecmp strndup strnlen strpbrk strrchr strstr strtol strtoul \
strtoull dirfd gethostbyname2 getipnodebyname epoll_create1 \
- sched_getcpu sysconf sync_file_range getrandom
+ sched_getcpu sysconf sync_file_range getrandom posix_fadvise \
+ arc4random flock
])
# Check for pthread_setname_np and pthread_getname_np
fi
fi
+# API documentation using Doxygen
+AC_ARG_ENABLE([api-doc], [
+ AS_HELP_STRING([--enable-api-doc], [build HTML API documentation])
+], [api_doc=$enableval], [api_doc=no])
+
+AS_IF([test "x$api_doc" = xyes], [
+ DX_DOXYGEN_FEATURE(ON)
+ DX_DOT_FEATURE(OFF)
+ DX_HTML_FEATURE(ON)
+ DX_CHM_FEATURE(OFF)
+ DX_CHI_FEATURE(OFF)
+ DX_MAN_FEATURE(OFF)
+ DX_RTF_FEATURE(OFF)
+ DX_XML_FEATURE(OFF)
+ DX_PDF_FEATURE(OFF)
+ DX_PS_FEATURE(OFF)
+ DX_INIT_DOXYGEN(["LTTng control library"], [$(builddir)/Doxyfile], [output])
+
+ AS_IF([test -z "$DX_DOXYGEN"], [
+ AC_MSG_ERROR([You need Doxygen to build the liblttng-ctl API documentation])
+ ])
+])
+
+AM_CONDITIONAL([API_DOC], [test "x$api_doc" = xyes])
+
# enable building man pages (user's intention)
AC_ARG_ENABLE(
man-pages,
AM_CONDITIONAL([TEST_SDT_UPROBE], [test "$test_sdt_uprobe" = "yes"])
+AC_ARG_ENABLE(
+ [precious-tests],
+ AS_HELP_STRING(
+ [--disable-precious-tests],
+ [Delete log files for interrupted tests]
+ ),
+ [precious_tests=$enableval],
+ [precious_tests=yes]
+)
+
+AM_CONDITIONAL([PRECIOUS_TESTS], [test x$precious_tests = xyes])
+
+AC_ARG_ENABLE([lib-lttng-ctl], AS_HELP_STRING([--disable-lib-lttng-ctl],
+ [Disable the build of liblttng-ctl (only possible if no binaries that depend on it are built)]))
+
# Arguments for binaries build exclusion
AC_ARG_ENABLE([bin-lttng], AS_HELP_STRING([--disable-bin-lttng],[Disable the build of lttng binaries]))
AC_ARG_ENABLE([bin-lttng-consumerd], AS_HELP_STRING([--disable-bin-lttng-consumerd],
)
# Libraries dependencies enabling
+# If we want to build liblttng-ctl
+AS_IF([test x$enable_lib_lttng_ctl != xno],
+ [
+ build_lib_lttng_ctl=yes
+ ]
+)
+# If we need to build liblttng-ctl because a binary depends on it
AS_IF([test x$build_lib_lttng_ctl = xyes],
[
build_lib_sessiond_comm=yes
]
)
+# Fail if we didn't want to build liblttng-ctl but need to build it anyway
+AS_IF([test "x$build_lib_lttng_ctl" = "xyes" -a "x$enable_lib_lttng_ctl" = "xno"],[
+ AC_MSG_FAILURE(
+ [liblttng-ctl must be built, because at least one binary that depends on it is enabled])
+])
AS_IF([test x$build_lib_consumer = xyes],
[
)
AM_CONDITIONAL([BUILD_TESTS], [test x$build_tests = xyes])
+
+AS_IF([test "x$build_tests" = "xyes"],
+ [
+ PKG_CHECK_MODULES([babeltrace2], [babeltrace2])
+ ]
+)
+
AM_CONDITIONAL([BUILD_EXTRAS], [test x$enable_extras != xno])
# Export libraries build conditions.
AC_CONFIG_FILES([
Makefile
doc/Makefile
+ doc/api/Makefile
+ doc/api/liblttng-ctl/Doxyfile
+ doc/api/liblttng-ctl/Makefile
doc/examples/Makefile
doc/examples/rotation/Makefile
doc/examples/trigger-condition-event-matches/Makefile
src/bin/lttng-crash/Makefile
src/vendor/Makefile
src/vendor/msgpack/Makefile
+ src/vendor/fmt/Makefile
tests/Makefile
tests/destructive/Makefile
tests/meta/Makefile
tests/regression/tools/trigger/name/Makefile
tests/regression/tools/trigger/hidden/Makefile
tests/regression/tools/context/Makefile
+ tests/regression/tools/client/Makefile
tests/regression/ust/Makefile
tests/regression/ust/nprocesses/Makefile
tests/regression/ust/high-throughput/Makefile
tests/regression/ust/rotation-destroy-flush/Makefile
tests/regression/ust/blocking/Makefile
tests/regression/ust/namespaces/Makefile
+ tests/regression/ust/ust-constructor/Makefile
tests/stress/Makefile
tests/unit/Makefile
tests/unit/ini_config/Makefile
tests/perf/Makefile
tests/utils/Makefile
+ tests/utils/bt2_plugins/Makefile
+ tests/utils/bt2_plugins/event_name/Makefile
+ tests/utils/bt2_plugins/field_stats/Makefile
tests/utils/lttngtest/Makefile
tests/utils/tap/Makefile
tests/utils/testapp/Makefile
+ tests/utils/testapp/gen-data-pending/Makefile
tests/utils/testapp/gen-ns-events/Makefile
tests/utils/testapp/gen-kernel-test-events/Makefile
tests/utils/testapp/gen-py-events/Makefile
tests/utils/testapp/gen-ust-events/Makefile
+ tests/utils/testapp/gen-ust-events-constructor/Makefile
tests/utils/testapp/gen-ust-events-ns/Makefile
tests/utils/testapp/gen-syscall-events-callstack/Makefile
tests/utils/testapp/gen-ust-nevents/Makefile
test "x$with_lttng_ust" = "xyes" && value=1 || value=0
PPRINT_PROP_BOOL([LTTng-UST support], $value)
+AS_ECHO
+PPRINT_SUBTITLE([Libraries])
+
+# liblttng-ctl enabled/disabled
+test x$build_lib_lttng_ctl != xno && value=1 || value=0
+PPRINT_PROP_BOOL([liblttng-ctl], $value)
+
AS_ECHO
PPRINT_SUBTITLE([Binaries])
test "x$embedded_help" = xyes && value=1 || value=0
PPRINT_PROP_BOOL([Embed --help messages], $value, $PPRINT_COLOR_SUBTITLE)
+test "x$api_doc" = xyes && value=1 || value=0
+PPRINT_PROP_BOOL([liblttng-ctl HTML API documentation], $value, $PPRINT_COLOR_SUBTITLE)
+
PPRINT_SET_INDENT(1)
report_bindir="`eval eval echo $bindir`"