X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=configure.ac;h=ab72dbe5e4f1d2807b6b3ffcd846a453d4e59dbe;hp=51f9bca3f34954601bf1d2accbf48f52650a25a2;hb=192ac418bed152e8655e250e723d3c6b8814c747;hpb=3fa8d43b5d5d7ce42f6ea6960498800c1de25c3d diff --git a/configure.ac b/configure.ac index 51f9bca3f..ab72dbe5e 100644 --- a/configure.ac +++ b/configure.ac @@ -127,6 +127,10 @@ AC_CHECK_FUNCS([ \ strtoull dirfd gethostbyname2 getipnodebyname epoll_create1 \ ]) +# Check if clock_gettime, timer_create, timer_settime, and timer_delete are available in lib rt, and if so, +# add -lrt to LIBS +AC_CHECK_LIB([rt], [clock_gettime, timer_create, timer_settime, timer_delete]) + # Babeltrace viewer check AC_ARG_WITH([babeltrace-bin], AS_HELP_STRING([--with-babeltrace-bin], @@ -265,6 +269,30 @@ _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]) +# 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_CALIBRATE], [Quantify LTTng overhead]) +_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_CREATE], [Create 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]) +_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_ENABLE_CHANNEL], [Create or enable tracing channels]) +_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_ENABLE_EVENT], [Create or enable event rules]) +_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_HELP], [Display help information about a command]) +_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_LIST], [List tracing sessions, domains, channels, and events]) +_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_LOAD], [Load tracing session configurations]) +_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_METADATA], [Manage an LTTng tracing session's metadata generation]) +_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_SAVE], [Save tracing session configurations]) +_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_SET_SESSION], [Set current tracing session]) +_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_SNAPSHOT], [Snapshot buffers of current tracing session]) +_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_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]) +_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_VIEW], [Start trace viewer]) + if test "x$prefix" = "xNONE"; then prefix=$ac_default_prefix fi @@ -296,23 +324,30 @@ PKG_CHECK_MODULES([POPT], [popt], ] ) -AM_PATH_XML2(2.7.6, true, AC_MSG_ERROR(No supported version of libxml2 found.)) +PKG_CHECK_MODULES([libxml2], [libxml-2.0 >= 2.7.6]) -# Check for libuuid +# Check for uuid in system libs +AC_CHECK_FUNCS([uuid_generate], +[ + AC_DEFINE_UNQUOTED([LTTNG_HAVE_LIBUUID], 1, [Has libuuid support.]) + link_with_libuuid=no +], +[ +# First, check the pkg-config module is available, otherwise explicitly check +# for libuuid, or uuid support in the C-library. PKG_CHECK_MODULES([UUID], [uuid], [ LIBS="$LIBS $UUID_LIBS" AC_DEFINE_UNQUOTED([LTTNG_HAVE_LIBUUID], 1, [Has libuuid support.]) - have_libuuid=yes + link_with_libuuid=yes ], [ - 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.]) + # Check for libuuid AC_CHECK_LIB([uuid], [uuid_generate], [ AC_DEFINE_UNQUOTED([LTTNG_HAVE_LIBUUID], 1, [Has libuuid support.]) - have_libuuid=yes + link_with_libuuid=yes ], [ # libuuid not found, check for uuid_create in libc. @@ -320,7 +355,7 @@ PKG_CHECK_MODULES([UUID], [uuid], [uuid_create], [ AC_DEFINE_UNQUOTED([LTTNG_HAVE_LIBC_UUID], 1, [Has libc uuid support.]) - have_libc_uuid=yes + link_with_libc_uuid=yes ], [ AC_MSG_ERROR([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]) @@ -329,8 +364,12 @@ PKG_CHECK_MODULES([UUID], [uuid], ] ) ]) -AM_CONDITIONAL([LTTNG_BUILD_WITH_LIBUUID], [test "x$have_libuuid" = "xyes"]) -AM_CONDITIONAL([LTTNG_BUILD_WITH_LIBC_UUID], [test "x$have_libc_uuid" = "xyes"]) +]) + +AM_CONDITIONAL([LTTNG_BUILD_WITH_LIBUUID], [test "x$link_with_libuuid" = "xyes"]) +AM_CONDITIONAL([LTTNG_BUILD_WITH_LIBC_UUID], [test "x$link_with_libc_uuid" = "xyes"]) + +AC_CHECK_FUNC([clock_gettime], [AC_DEFINE_UNQUOTED([LTTNG_HAVE_CLOCK_GETTIME], 1, [Has clock_gettime() support.])]) # URCU library version needed or newer m4_define([WRONG_LIBURCU_MSG], [Userspace RCU (liburcu) >= 0.8.0 is needed]) @@ -370,7 +409,7 @@ AC_ARG_WITH(kmod-prefix, AC_ARG_ENABLE(kmod, AS_HELP_STRING([--disable-kmod],[build without kmod support]), - kmod_support=zz$enableval, kmod_support=yes) + kmod_support=$enableval, kmod_support=yes) AS_IF([test "x$kmod_support" = "xyes"], [ AC_CHECK_LIB([kmod], [kmod_module_probe_insert_module], @@ -459,11 +498,11 @@ swig_version=2.0.0 AC_ARG_ENABLE([python-bindings], [AC_HELP_STRING([--enable-python-bindings], [compile Python bindings])], - [enable_python_binding=yes], [enable_python_binding=no]) + [enable_python_binding=$enableval], [enable_python_binding=no]) -AM_CONDITIONAL([PYTHON_BINDING], [test "x${enable_python_binding:-yes}" = xyes]) +AM_CONDITIONAL([PYTHON_BINDING], [test "x$enable_python_binding" = xyes]) -if test "x${enable_python_binding:-yes}" = xyes; then +if test "x$enable_python_binding" = xyes; then AX_PKG_SWIG($swig_version, [], [ AC_MSG_ERROR([SWIG $swig_version or newer is needed]) ]) AS_IF([test x$enable_shared = xno], [ AC_MSG_ERROR([Python bindings require shared libraries.]) ]) AM_PATH_PYTHON([3.0]) @@ -597,6 +636,8 @@ and installing the man pages. AM_CONDITIONAL([MAN_PAGES_OPT], [test "x$man_pages_opt" != "xno"]) AM_CONDITIONAL([HAVE_ASCIIDOC_XMLTO], [test "x$have_asciidoc_xmlto" = "xyes"]) +AC_DEFINE_UNQUOTED([MANPATH], ["`eval eval echo $mandir`"], [Path to man pages.]) + # Python agent test UST_PYTHON_AGENT="lttngust" @@ -907,7 +948,7 @@ AC_CONFIG_FILES([ Makefile doc/Makefile doc/man/Makefile - doc/man/asciidoc.conf + doc/man/asciidoc-attrs.conf include/Makefile extras/Makefile extras/bindings/Makefile @@ -951,10 +992,12 @@ AC_CONFIG_FILES([ tests/regression/tools/live/Makefile tests/regression/tools/exclusion/Makefile tests/regression/tools/save-load/Makefile + tests/regression/tools/save-load/configuration/Makefile tests/regression/tools/mi/Makefile tests/regression/tools/wildcard/Makefile tests/regression/tools/crash/Makefile - tests/regression/tools/metadata-regen/Makefile + tests/regression/tools/regen-metadata/Makefile + tests/regression/tools/regen-statedump/Makefile tests/regression/ust/Makefile tests/regression/ust/nprocesses/Makefile tests/regression/ust/high-throughput/Makefile @@ -978,6 +1021,7 @@ AC_CONFIG_FILES([ tests/regression/ust/getcpu-override/Makefile tests/regression/ust/clock-override/Makefile tests/regression/ust/type-declarations/Makefile + tests/regression/ust/rotation-destroy-flush/Makefile tests/stress/Makefile tests/unit/Makefile tests/unit/ini_config/Makefile @@ -1085,7 +1129,7 @@ test ! -z "$PYTHON3_AGENT" && value=1 || value=0 PPRINT_PROP_BOOL([LTTng-UST Python3 agent tests], $value) #Python binding enabled/disabled -test "x${enable_python_binding:-yes}" = xyes && value=1 || value=0 +test "x$enable_python_binding" = xyes && value=1 || value=0 AS_ECHO PPRINT_SET_INDENT(0) PPRINT_PROP_BOOL([Python binding], $value, $PPRINT_COLOR_SUBTITLE)