X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=configure.ac;h=4e41487b0fb10ca2872b003b8f968b18d3fc15be;hp=7b9d55b071e39ad77782e5e6fe8167f798d9c257;hb=74e89a8c6a6824c4ca8179a3ae7b9cc4c99bddc5;hpb=8a5583046c46a5b424a8997fc563e7924f0c8724 diff --git a/configure.ac b/configure.ac index 7b9d55b07..4e41487b0 100644 --- a/configure.ac +++ b/configure.ac @@ -8,7 +8,7 @@ AC_CONFIG_MACRO_DIR([m4]) AC_CANONICAL_TARGET AC_CANONICAL_HOST -AM_INIT_AUTOMAKE([foreign dist-bzip2 no-dist-gzip tar-pax nostdinc]) +AM_INIT_AUTOMAKE([1.12 foreign dist-bzip2 no-dist-gzip tar-pax nostdinc]) AM_MAINTAINER_MODE([enable]) # Enable silent rules if available (Introduced in AM 1.11) @@ -25,9 +25,6 @@ AC_PROG_CXX RW_PROG_CXX_WORKS AM_CONDITIONAL([CXX_WORKS], [test "x$rw_cv_prog_cxx_works" = "xyes"]) -LTTNG_CHECK_SDT_WORKS -AM_CONDITIONAL([SDT_WORKS], [test "x$lttng_cv_sdt_works" = "xyes"]) - # Checks for programs. AC_PROG_GREP AC_PROG_MAKE_SET @@ -392,6 +389,7 @@ _AC_DEFINE_AND_SUBST([DEFAULT_ROTATE_PENDING_TIMER], [500000]) # Command short descriptions _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_ADD_CONTEXT], [Add context fields to a channel]) _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_CREATE], [Create a tracing session]) +_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_CLEAR], [Clear a tracing session]) _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_DESTROY], [Tear down tracing sessions]) _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_DISABLE_CHANNEL], [Disable tracing channels]) _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_DISABLE_EVENT], [Disable event rules]) @@ -412,7 +410,6 @@ _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_STATUS], [Get the status of the current t _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_STOP], [Stop tracing]) _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_DISABLE_ROTATION], [Unset a rotation schedule]) _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_ENABLE_ROTATION], [Set a rotation schedule]) -_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_ROTATE], [Archive a tracing session’s current trace chunk]) _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_TRACK], [Track specific system resources]) _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_UNTRACK], [Untrack specific system resources]) _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_VERSION], [Show version information]) @@ -448,48 +445,6 @@ AC_SUBST(POPT_LIBS) PKG_CHECK_MODULES([libxml2], [libxml-2.0 >= 2.7.6]) -# First, check for uuid in system libs -AH_TEMPLATE([LTTNG_HAVE_LIBUUID], [Define if you have libuuid support]) -AC_CHECK_FUNCS([uuid_generate], - [ - AC_DEFINE([LTTNG_HAVE_LIBUUID], [1]) - UUID_LIBS="" - ], - [ - # Then, check if the pkg-config module is available, otherwise explicitly check - # for libuuid, or uuid support in the C-library. - PKG_CHECK_MODULES([UUID], [uuid], - [ - AC_DEFINE([LTTNG_HAVE_LIBUUID], [1]) - dnl PKG_CHECK_MODULES defines UUID_LIBS - ], - [ - AC_MSG_WARN([pkg-config was unable to find a valid .pc for libuuid. Set PKG_CONFIG_PATH to specify the pkgconfig configuration file location]) - AC_MSG_WARN([Finding libuuid without pkg-config.]) - AC_CHECK_LIB([uuid], [uuid_generate], - [ - AC_DEFINE([LTTNG_HAVE_LIBUUID], [1]) - UUID_LIBS="-luuid" - ], - [ - # libuuid not found, check for uuid_create in libc. - AC_CHECK_LIB([c], [uuid_create], - [ - AC_DEFINE([LTTNG_HAVE_LIBUUID], [1]) - UUID_LIBS="-lc" - ], - [ - AC_MSG_FAILURE([Cannot find libuuid uuid_generate nor libc uuid_create. Either set PKG_CONFIG_PATH to the configuration file location or use LDFLAGS=-Ldir to specify the library location]) - ] - ) - ] - ) - ] - ) - ] -) -AC_SUBST(UUID_LIBS) - AC_CHECK_FUNC([clock_gettime], [AC_DEFINE_UNQUOTED([LTTNG_HAVE_CLOCK_GETTIME], 1, [Has clock_gettime() support.])]) # URCU library version needed or newer @@ -560,19 +515,18 @@ AC_ARG_WITH([lttng-ust], [with_lttng_ust=yes] ) -AS_IF([test "x$with_lttng_ust" = "xyes"], - [ - AC_CHECK_LIB([lttng-ust-ctl], [ustctl_recv_channel_from_consumer], - [ - AC_DEFINE([HAVE_LIBLTTNG_UST_CTL], [1]) - ], - [ - AC_MSG_FAILURE([Cannot find LTTng-UST >= 2.2.x. Use [LDFLAGS]=-Ldir and [CPPFLAGS]=-Idir to specify its location, or specify --without-lttng-ust to build lttng-tools without LTTng-UST support.]) - ], - [-lurcu-common -lurcu-bp -lurcu-cds -lrt -ldl] - ) - ] -) +AS_IF([test "x$with_lttng_ust" = "xyes"], [ + AC_DEFINE([HAVE_LIBLTTNG_UST_CTL], [1]) + + # Check for liblttng-ust + PKG_CHECK_MODULES([UST], [lttng-ust >= $major_version.$minor_version]) + + # Check for liblttng-ust-ctl + PKG_CHECK_MODULES([UST_CTL], [lttng-ust-ctl >= $major_version.$minor_version]) + + AM_CPPFLAGS="$AM_CPPFLAGS $UST_CFLAGS" +]) + AM_CONDITIONAL([HAVE_LIBLTTNG_UST_CTL], [test "x$with_lttng_ust" = "xyes"]) @@ -858,6 +812,36 @@ AC_SUBST([RUN_PYTHON_AGENT_TEST]) AC_SUBST([PYTHON2_AGENT]) AC_SUBST([PYTHON3_AGENT]) +AC_ARG_ENABLE([test-sdt-uprobe], + [AS_HELP_STRING([--enable-test-sdt-uprobe], [enable the LTTng UST SDT uprobe tests [default=autodetect]])], + [test_sdt_uprobe="$enableval"], + [test_sdt_uprobe=autodetect] +) + +AS_IF([test "$test_sdt_uprobe" != "no"], [ + LTTNG_CHECK_SDT_WORKS + AC_PATH_PROG([DTRACE], [dtrace]) +]) + +AS_IF([test "$test_sdt_uprobe" = "yes"], [ + AS_IF([test "$lttng_cv_sdt_works" = "no"], [ + AC_MSG_ERROR([Cannot find 'sys/sdt.h'.]) + ]) + AS_IF([test "x$DTRACE" = "x"], [ + AC_MSG_ERROR([Cannot find SystemTap dtrace. You can set the DTRACE variable to override automatic detection.]) + ]) +]) + +AS_IF([test "$test_sdt_uprobe" = "autodetect"], [ + AS_IF([test "$lttng_cv_sdt_works" = "yes"], [ + AS_IF([test "x$DTRACE" != "x"], [ + test_sdt_uprobe=yes + ]) + ]) +]) + +AM_CONDITIONAL([TEST_SDT_UPROBE], [test "$test_sdt_uprobe" = "yes"]) + # 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], @@ -883,6 +867,7 @@ build_lib_kernel_consumer=no build_lib_kernel_ctl=no build_lib_lttng_ctl=no build_lib_relayd=no +build_lib_fd_tracker=no build_lib_sessiond_comm=no build_lib_testpoint=no build_lib_ust_consumer=no @@ -922,6 +907,7 @@ AS_IF([test x$enable_bin_lttng_relayd != xno], build_lib_index=yes build_lib_health=yes build_lib_testpoint=yes + build_lib_fd_tracker=yes ] ) AS_IF([test x$enable_bin_lttng_sessiond != xno], @@ -1047,6 +1033,7 @@ AM_CONDITIONAL([BUILD_LIB_KERNEL_CONSUMER], [test x$build_lib_kernel_consumer = AM_CONDITIONAL([BUILD_LIB_KERNEL_CTL], [test x$build_lib_kernel_ctl = xyes]) AM_CONDITIONAL([BUILD_LIB_LTTNG_CTL], [test x$build_lib_lttng_ctl = xyes]) AM_CONDITIONAL([BUILD_LIB_RELAYD], [test x$build_lib_relayd = xyes]) +AM_CONDITIONAL([BUILD_LIB_FD_TRACKER], [test x$build_lib_fd_tracker = xyes]) AM_CONDITIONAL([BUILD_LIB_SESSIOND_COMM], [test x$build_lib_sessiond_comm = xyes]) AM_CONDITIONAL([BUILD_LIB_TESTPOINT], [test x$build_lib_testpoint = xyes]) AM_CONDITIONAL([BUILD_LIB_UST_CONSUMER], [test x$build_lib_ust_consumer = xyes]) @@ -1107,6 +1094,7 @@ AC_CONFIG_FILES([ src/common/health/Makefile src/common/config/Makefile src/common/string-utils/Makefile + src/common/fd-tracker/Makefile src/lib/Makefile src/lib/lttng-ctl/Makefile src/lib/lttng-ctl/filter/Makefile @@ -1140,7 +1128,10 @@ AC_CONFIG_FILES([ tests/regression/tools/rotation/Makefile tests/regression/tools/base-path/Makefile tests/regression/tools/metadata/Makefile + tests/regression/tools/tracker/Makefile tests/regression/tools/working-directory/Makefile + tests/regression/tools/relayd-grouping/Makefile + tests/regression/tools/clear/Makefile tests/regression/ust/Makefile tests/regression/ust/nprocesses/Makefile tests/regression/ust/high-throughput/Makefile @@ -1175,6 +1166,8 @@ AC_CONFIG_FILES([ tests/utils/Makefile tests/utils/tap/Makefile tests/utils/testapp/Makefile + tests/utils/testapp/gen-ns-events/Makefile + tests/utils/testapp/gen-kernel-test-events/Makefile tests/utils/testapp/gen-ust-events/Makefile tests/utils/testapp/gen-ust-events-ns/Makefile tests/utils/testapp/gen-syscall-events-callstack/Makefile @@ -1285,6 +1278,10 @@ PPRINT_PROP_BOOL([LTTng-UST Python2 agent tests], $value) test ! -z "$PYTHON3_AGENT" && value=1 || value=0 PPRINT_PROP_BOOL([LTTng-UST Python3 agent tests], $value) +# LTTng UST Java agent Log4j tests enabled/disabled +test "x$test_sdt_uprobe" = "xyes" && value=1 || value=0 +PPRINT_PROP_BOOL([LTTng-UST SDT uprobe tests], $value) + #Python binding enabled/disabled test "x$enable_python_binding" = xyes && value=1 || value=0 AS_ECHO