X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=configure.ac;h=06608073896d421ca04b7b6506af73376418907a;hp=d8625fc21ede93a5b5a2f56cef0eb20044dd4285;hb=df0b021fe4d7e6096062b63c330709f44761838a;hpb=4b223a6755662f272f7db155ee380528728e5dd1 diff --git a/configure.ac b/configure.ac index d8625fc21..066080738 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ([2.64]) -AC_INIT([lttng-tools],[2.11.0-pre],[jeremie.galarneau@efficios.com],[],[https://lttng.org]) +AC_INIT([lttng-tools],[2.12.0-pre],[jeremie.galarneau@efficios.com],[],[https://lttng.org]) AC_CONFIG_HEADERS([include/config.h]) AC_CONFIG_AUX_DIR([config]) @@ -21,6 +21,12 @@ AC_USE_SYSTEM_EXTENSIONS AC_SYS_LARGEFILE AC_PROG_CC AC_PROG_CC_STDC +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 @@ -151,7 +157,7 @@ AC_DEFINE_UNQUOTED([VERSION_MINOR], $minor_version, [LTTng-Tools minor version n AC_DEFINE_UNQUOTED([VERSION_PATCHLEVEL], $patchlevel_version, [LTTng-Tools patchlevel version number]) version_name="Codename TBD" -version_description='Description TBD' +version_description="Description TBD" version_description_c=$(echo $version_description | $SED 's/"/\\"/g') AC_DEFINE_UNQUOTED([VERSION_NAME], ["$version_name"], "") @@ -188,9 +194,11 @@ AC_CHECK_HEADERS([ \ signal.h stdlib.h sys/un.h sys/socket.h stdlib.h stdio.h \ getopt.h sys/ipc.h sys/shm.h popt.h grp.h arpa/inet.h \ netdb.h netinet/in.h paths.h stddef.h sys/file.h sys/ioctl.h \ - sys/mount.h sys/param.h sys/time.h + sys/mount.h sys/param.h sys/time.h elf.h ]) +AM_CONDITIONAL([HAVE_ELF_H], [test x$ac_cv_header_elf_h = xyes]) + # Basic functions check AC_CHECK_FUNCS([ \ atexit bzero clock_gettime dup2 fdatasync fls ftruncate \ @@ -209,15 +217,18 @@ AC_CHECK_LIB([rt], [clock_gettime, timer_create, timer_settime, timer_delete]) AC_CHECK_LIB([dl], [dlopen], [ have_libdl=yes libdl_name=dl + DL_LIBS="-ldl" ], [ # libdl not found, check for dlopen in libc. AC_CHECK_LIB([c], [dlopen], [ have_libc_dl=yes libdl_name=c + DL_LIBS="-lc" ], [ AC_MSG_ERROR([Cannot find dlopen in libdl nor libc. Use [LDFLAGS]=-Ldir to specify their location.]) ]) ]) +AC_SUBST(DL_LIBS) # Check if libdl has dlmopen support. AH_TEMPLATE([HAVE_DLMOPEN], ["Define to 1 if dlmopen is available."]) @@ -376,7 +387,7 @@ _AC_DEFINE_QUOTED_AND_SUBST([DEFAULT_NETWORK_CONTROL_BIND_ADDRESS], [0.0.0.0]) _AC_DEFINE_QUOTED_AND_SUBST([DEFAULT_NETWORK_DATA_BIND_ADDRESS], [0.0.0.0]) _AC_DEFINE_QUOTED_AND_SUBST([DEFAULT_NETWORK_VIEWER_BIND_ADDRESS], [localhost]) _AC_DEFINE_AND_SUBST([DEFAULT_NETWORK_RELAYD_CTRL_MAX_PAYLOAD_SIZE], [134217728]) -_AC_DEFINE_AND_SUBST([DEFAULT_ROTATE_PENDING_RELAY_TIMER], [200000]) +_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]) @@ -399,6 +410,9 @@ _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_SNAPSHOT], [Snapshot buffers of current t _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_START], [Start tracing]) _AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_STATUS], [Get the status of the current tracing session]) _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]) @@ -411,7 +425,7 @@ CONFDIR=`eval echo $sysconfdir` AC_SUBST(CONFDIR) AC_DEFINE_UNQUOTED([CONFIG_LTTNG_SYSTEM_CONFIGDIR],"$CONFDIR", [LTTng system configuration directory.]) -AC_DEFINE_DIR([CONFIG_LTTNG_SYSTEM_DATADIR],[datadir], [LTTng system data directory.]) +AX_DEFINE_DIR([CONFIG_LTTNG_SYSTEM_DATADIR], [datadir], [LTTng system data directory.]) # Check libpopt PKG_CHECK_MODULES([POPT], [popt], @@ -548,34 +562,19 @@ AC_ARG_WITH([lttng-ust], AS_IF([test "x$with_lttng_ust" = "xyes"], [ - AC_CHECK_LIB([lttng-ust-ctl], [ustctl_recv_channel_from_consumer], + AC_CHECK_LIB([lttng-ust-ctl], [lttng_ust_enum_get_from_desc], [ 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] + AC_MSG_FAILURE([Cannot find LTTng-UST >= 2.11.x. Use [LDFLAGS]=-Ldir and [CPPFLAGS]=-Idir to specify its location, or specify --without-lttng-ust to build lttng-tools without LTTng-UST support.]) + ] ) ] ) AM_CONDITIONAL([HAVE_LIBLTTNG_UST_CTL], [test "x$with_lttng_ust" = "xyes"]) - -# check for dlopen -AC_CHECK_LIB([dl], [dlopen], - [DL_LIBS="-ldl"], - [ - #libdl not found, check for dlopen in libc. - AC_CHECK_LIB([c], [dlopen], - [DL_LIBS="-lc"], - [AC_MSG_FAILURE([Cannot find dlopen in libdl nor libc. Use [LDFLAGS]=-Ldir to specify their location.])] - ) - ] -) -AC_SUBST(DL_LIBS) - # Check for fmemopen AC_CHECK_LIB([c], [fmemopen], [ @@ -639,6 +638,17 @@ AX_CONFIG_FEATURE( ) AM_CONDITIONAL([COMPAT_EPOLL], [ test "$enable_epoll" = "yes" ]) +AS_IF([test "x$ac_cv_func_dirfd" = "xyes"], + [AX_CONFIG_FEATURE_ENABLE(dirfd)], + [AX_CONFIG_FEATURE_DISABLE(dirfd)] +) +AX_CONFIG_FEATURE( + [dirfd], [Use directory file descriptors], + [COMPAT_DIRFD], [This platform supports directory file descriptors.], + [enable_dirfd="yes"], [enable_dirfd="no"] +) +AM_CONDITIONAL([COMPAT_DIRFD], [ test "$enable_dirfd" = "yes" ]) + AM_CONDITIONAL([TEST_JAVA_JUL_AGENT], [test "x$test_java_agent_jul" = "xyes"]) AM_CONDITIONAL([TEST_JAVA_LOG4J_AGENT], [test "x$test_java_agent_log4j" = "xyes"]) @@ -867,7 +877,6 @@ build_lib_compat=no build_lib_consumer=no build_lib_hashtable=no build_lib_health=no -build_lib_unix=no build_lib_index=no build_lib_kernel_consumer=no build_lib_kernel_ctl=no @@ -924,7 +933,6 @@ AS_IF([test x$enable_bin_lttng_sessiond != xno], build_lib_relayd=yes build_lib_testpoint=yes build_lib_health=yes - build_lib_unix=yes ] ) @@ -1033,7 +1041,6 @@ AM_CONDITIONAL([BUILD_LIB_CONFIG], [test x$build_lib_config = xyes]) AM_CONDITIONAL([BUILD_LIB_CONSUMER], [test x$build_lib_consumer = xyes]) AM_CONDITIONAL([BUILD_LIB_HASHTABLE], [test x$build_lib_hashtable = xyes]) AM_CONDITIONAL([BUILD_LIB_HEALTH], [test x$build_lib_health = xyes]) -AM_CONDITIONAL([BUILD_LIB_UNIX], [test x$build_lib_unix = xyes]) AM_CONDITIONAL([BUILD_LIB_INDEX], [test x$build_lib_index = xyes]) AM_CONDITIONAL([BUILD_LIB_KERNEL_CONSUMER], [test x$build_lib_kernel_consumer = xyes]) AM_CONDITIONAL([BUILD_LIB_KERNEL_CTL], [test x$build_lib_kernel_ctl = xyes]) @@ -1046,7 +1053,13 @@ AM_CONDITIONAL([BUILD_LIB_UST_CONSUMER], [test x$build_lib_ust_consumer = xyes]) AM_CFLAGS="-Wall -fno-strict-aliasing $PTHREAD_CFLAGS" AC_SUBST(AM_CFLAGS) -AM_CPPFLAGS="-I\$(top_srcdir)/include -I\$(top_builddir)/include -I\$(top_srcdir)/src -include config.h $AM_CPPFLAGS" +# The order in which the include folders are searched is important. +# The top_builddir should always be searched first in the event that a build +# time generated file is included. An example of this is the "version.i" file. +# In a scenario where lttng-tools is built from a distribution tarball and in a +# out-of-tree manner, the generated "version.i" has priority on the one from +# the source (distribution tarball) and must be found first. +AM_CPPFLAGS="-I\$(top_builddir)/include -I\$(top_srcdir)/include -I\$(top_srcdir)/src -include config.h $AM_CPPFLAGS" AC_SUBST(AM_CPPFLAGS) lttngincludedir="${includedir}/lttng" @@ -1124,6 +1137,9 @@ AC_CONFIG_FILES([ tests/regression/tools/regen-statedump/Makefile tests/regression/tools/notification/Makefile tests/regression/tools/rotation/Makefile + tests/regression/tools/base-path/Makefile + tests/regression/tools/metadata/Makefile + tests/regression/tools/working-directory/Makefile tests/regression/ust/Makefile tests/regression/ust/nprocesses/Makefile tests/regression/ust/high-throughput/Makefile @@ -1150,6 +1166,7 @@ AC_CONFIG_FILES([ tests/regression/ust/type-declarations/Makefile tests/regression/ust/rotation-destroy-flush/Makefile tests/regression/ust/blocking/Makefile + tests/regression/ust/namespaces/Makefile tests/stress/Makefile tests/unit/Makefile tests/unit/ini_config/Makefile @@ -1157,12 +1174,17 @@ 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-ust-events/Makefile + tests/utils/testapp/gen-ust-events-ns/Makefile tests/utils/testapp/gen-syscall-events-callstack/Makefile tests/utils/testapp/gen-ust-nevents/Makefile tests/utils/testapp/gen-ust-nevents-str/Makefile tests/utils/testapp/gen-syscall-events/Makefile tests/utils/testapp/gen-ust-tracef/Makefile + tests/utils/testapp/userspace-probe-elf-binary/Makefile + tests/utils/testapp/userspace-probe-elf-cxx-binary/Makefile + tests/utils/testapp/userspace-probe-sdt-binary/Makefile ]) # Inject variable into python test script.