X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=configure.ac;h=016002d292b809bcc2dabb109e84d57c79bd8d63;hp=e937d25d35b815b31f45c546d76dd92981caf4dc;hb=bfa9a4be6ef22434c7ce0a5953e7daef7e39d2fb;hpb=8deeabc63f54ef7e479a0142c03270358c6671b6 diff --git a/configure.ac b/configure.ac index e937d25d..016002d2 100644 --- a/configure.ac +++ b/configure.ac @@ -161,6 +161,7 @@ AS_CASE([$host_os], [mingw*], [ MINGW32=yes + DEFAULT_ENABLE_DEBUG_INFO=no ] ) @@ -252,7 +253,7 @@ swig_version=2.0.0 AC_ARG_ENABLE([python-bindings], [AC_HELP_STRING([--enable-python-bindings], [generate Python bindings])], - [enable_python_bindings=yes], [enable_python_bindings=no]) + [enable_python_bindings=$enableval], [enable_python_bindings=no]) AM_CONDITIONAL([USE_PYTHON], [test "x${enable_python_bindings:-yes}" = xyes]) @@ -262,7 +263,7 @@ AC_ARG_ENABLE( [--enable-python-plugins], [add support for the Babeltrace library and converter to load Python plugins]) ], - [enable_python_plugins=yes], + [enable_python_plugins=$enableval], [enable_python_plugins=no] ) @@ -274,7 +275,7 @@ else fi if test "x$enable_python_bindings" != xno || test "x$enable_python_plugins" != xno; then - AM_PATH_PYTHON([3.0], , [AC_MSG_ERROR(Python3 is not available or is not the default Python interpreter on your system. See the README file to learn how to override your distribution's default Python interpreter.)]) + AM_PATH_PYTHON([3.0], , [AC_MSG_ERROR(Python 3 is not available or is not the default Python interpreter on your system. See the README file to learn how to override your distribution's default Python interpreter.)]) AM_PATH_PYTHON_MODULES([PYTHON]) # pythondir is the path where extra modules are to be installed @@ -310,6 +311,8 @@ if test "x$enable_python_bindings" != xno || test "x$enable_python_plugins" != x ]) fi +AS_IF([test "x$BUILT_IN_PLUGINS" = ""]) + AM_CONDITIONAL([WITH_PYTHON_PLUGINS], [test "x$enable_python_plugins" != xno]) AS_IF( [test "x$enable_python_plugins" != xno], @@ -319,14 +322,14 @@ AS_IF( AC_ARG_ENABLE([python-bindings-doc], [AC_HELP_STRING([--enable-python-bindings-doc], [generate Python bindings documentation])], - [enable_python_bindings_doc=yes], [enable_python_bindings_doc=no]) + [enable_python_bindings_doc=$enableval], [enable_python_bindings_doc=no]) AM_CONDITIONAL([BUILD_PYTHON_BINDINGS_DOC], [test "x${enable_python_bindings_doc:-yes}" = xyes]) AC_ARG_ENABLE([python-bindings-tests], [AC_HELP_STRING([--enable-python-bindings-tests], [test Python bindings])], - [enable_python_bindings_tests=yes], [enable_python_bindings_tests=no]) + [enable_python_bindings_tests=$enableval], [enable_python_bindings_tests=no]) AM_CONDITIONAL([ENABLE_PYTHON_BINDINGS_TESTS], [test "x${enable_python_bindings_tests:-yes}" = xyes]) @@ -368,12 +371,13 @@ AC_ARG_ENABLE([debug-info], [AS_IF([test "x$enableval" = xyes], [_enable_debug_info=yes], [_enable_debug_info=no])], []) AM_CONDITIONAL([ENABLE_DEBUG_INFO], [test "x$_enable_debug_info" = xyes]) + AS_IF([test "x$_enable_debug_info" = xyes], [ - # Check if libelf and libdw are present - AC_CHECK_LIB([elf], [elf_version], [], [AC_MSG_ERROR(Missing libelf (from elfutils >= 0.154) which is required by debug info. You can disable this feature using --disable-debug-info.)]) - AC_CHECK_LIB([dw], [dwarf_begin], [], [AC_MSG_ERROR(Missing libdw (from elfutils >= 0.154) which is required by debug info. You can disable this feature using --disable-debug-info.)]) - BT_LIB_ELFUTILS([0], [154], [:], [AC_MSG_ERROR(elfutils >= 0.154 is required to use the debug info feature. You can disable this feature using --disable-debug-info.)]) - AC_DEFINE([ENABLE_DEBUG_INFO], [1], [Define to 1 if you enable the 'debug info' feature]) + # Check if libelf and libdw are present + AC_CHECK_LIB([elf], [elf_version], [], [AC_MSG_ERROR(Missing libelf (from elfutils >= 0.154) which is required by debug info. You can disable this feature using --disable-debug-info.)]) + AC_CHECK_LIB([dw], [dwarf_begin], [], [AC_MSG_ERROR(Missing libdw (from elfutils >= 0.154) which is required by debug info. You can disable this feature using --disable-debug-info.)]) + BT_LIB_ELFUTILS([0], [154], [:], [AC_MSG_ERROR(elfutils >= 0.154 is required to use the debug info feature. You can disable this feature using --disable-debug-info.)]) + AC_DEFINE([ENABLE_DEBUG_INFO], [1], [Define to 1 if you enable the 'debug info' feature]) ], []) AC_ARG_VAR([BUILT_IN_PLUGINS], [Statically-link in-tree plug-ins into the babeltrace binary]) @@ -386,11 +390,14 @@ AS_IF([test "x$BUILT_IN_PLUGINS" != x], [ ]) AM_CONDITIONAL([BUILT_IN_PLUGINS], [test "x$built_in_plugins" = "xyes"]) -AC_ARG_VAR([BUILT_IN_PYTHON_PLUGIN_SUPPORT], [Statically-link Python plugin support into the babeltrace binary]) +AC_ARG_VAR([BUILT_IN_PYTHON_PLUGIN_SUPPORT], [Statically-link Python plugin support into the babeltrace library]) AS_IF([test "x$BUILT_IN_PYTHON_PLUGIN_SUPPORT" != x], [ # Built-in plug-ins are only available when the --disable-shared --enable-static options are used. AS_IF([test "x$enable_static" != "xyes"], [AC_MSG_ERROR(--enable-static must be used to bundle Python plugin support in the babeltrace executable)]) AS_IF([test "x$enable_shared" = "xyes"], [AC_MSG_ERROR(--disable-shared must be used to bundle Python plugin support in the babeltrace executable)]) + AS_IF([test "x$enable_python_plugins" = "xno"], [ + AC_MSG_ERROR([You can't use BUILT_IN_PYTHON_PLUGIN_SUPPORT=1 without --enable-python-plugins.]) + ]) built_in_python_plugin_support=yes AC_DEFINE([BT_BUILT_IN_PYTHON_PLUGIN_SUPPORT], [1], [Define to 1 to register plug-in attributes in static executable sections]) ]) @@ -398,6 +405,14 @@ AM_CONDITIONAL([BUILT_IN_PYTHON_PLUGIN_SUPPORT], [test "x$built_in_python_plugin PKG_CHECK_MODULES(GMODULE, [gmodule-2.0 >= 2.0.0]) +# Logging +AC_ARG_VAR([BABELTRACE_MINIMAL_LOG_LEVEL], [Minimal log level for Babeltrace program, library, and plugins (VERBOSE, DEBUG, INFO, WARN, ERROR (default), FATAL, or NONE)]) +AS_IF([test "x$BABELTRACE_MINIMAL_LOG_LEVEL" = "x"], [BABELTRACE_MINIMAL_LOG_LEVEL=DEBUG]) +AS_IF([test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "VERBOSE" && test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "DEBUG" && test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "INFO" && test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "WARN" && test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "ERROR" && test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "FATAL" && test "$BABELTRACE_MINIMAL_LOG_LEVEL" != "NONE"], [ + AC_MSG_ERROR([Invalid BABELTRACE_MINIMAL_LOG_LEVEL value ($BABELTRACE_MINIMAL_LOG_LEVEL): use VERBOSE, DEBUG, INFO, WARN, ERROR, FATAL, or NONE.]) +]) +AC_DEFINE_UNQUOTED([BT_LOG_LEVEL], [BT_LOG_$BABELTRACE_MINIMAL_LOG_LEVEL], [Minimal log level]) + LIBS="$LIBS $GMODULE_LIBS" PACKAGE_CFLAGS="$GMODULE_CFLAGS -Wall -Wformat" AC_SUBST(PACKAGE_CFLAGS) @@ -471,14 +486,15 @@ AC_CONFIG_FILES([ lib/ctf-ir/Makefile lib/ctf-writer/Makefile include/Makefile + logging/Makefile bindings/Makefile bindings/python/Makefile bindings/python/babeltrace/Makefile bindings/python/bt2/Makefile bindings/python/bt2/__init__.py tests/Makefile - tests/bin/Makefile - tests/bin/intersection/Makefile + tests/cli/Makefile + tests/cli/intersection/Makefile tests/lib/Makefile tests/lib/writer/Makefile tests/lib/test-plugin-plugins/Makefile @@ -496,18 +512,18 @@ AC_CONFIG_FILES([ plugins/ctf/common/btr/Makefile plugins/ctf/common/metadata/Makefile plugins/ctf/common/notif-iter/Makefile - plugins/ctf/fs/Makefile + plugins/ctf/fs-src/Makefile + plugins/ctf/fs-sink/Makefile plugins/ctf/lttng-live/Makefile plugins/text/Makefile plugins/text/pretty/Makefile - plugins/writer/Makefile plugins/utils/Makefile plugins/utils/dummy/Makefile plugins/utils/trimmer/Makefile plugins/utils/muxer/Makefile python-plugin-provider/Makefile plugins/libctfcopytrace/Makefile - plugins/debug-info/Makefile + plugins/lttng-utils/Makefile babeltrace.pc babeltrace-ctf.pc ]) @@ -515,18 +531,16 @@ AC_CONFIG_FILES([ #AC_CONFIG_FILES([converter/babeltrace], [chmod +x converter/babeltrace]) AC_CONFIG_FILES([tests/lib/test_ctf_writer_complete], [chmod +x tests/lib/test_ctf_writer_complete]) AC_CONFIG_FILES([tests/lib/test_plugin_complete], [chmod +x tests/lib/test_plugin_complete]) -AC_CONFIG_FILES([tests/lib/test_seek_big_trace], [chmod +x tests/lib/test_seek_big_trace]) -AC_CONFIG_FILES([tests/lib/test_seek_empty_packet], [chmod +x tests/lib/test_seek_empty_packet]) AC_CONFIG_FILES([tests/lib/test_dwarf_complete], [chmod +x tests/lib/test_dwarf_complete]) AC_CONFIG_FILES([tests/lib/test_bin_info_complete], [chmod +x tests/lib/test_bin_info_complete]) AC_CONFIG_FILES([tests/plugins/test-utils-muxer-complete], [chmod +x tests/plugins/test-utils-muxer-complete]) -AC_CONFIG_FILES([tests/bin/test_trace_read], [chmod +x tests/bin/test_trace_read]) -AC_CONFIG_FILES([tests/bin/intersection/test_intersection], [chmod +x tests/bin/intersection/test_intersection]) -AC_CONFIG_FILES([tests/bin/intersection/bt_python_helper.py]) +AC_CONFIG_FILES([tests/cli/test_trace_read], [chmod +x tests/cli/test_trace_read]) +AC_CONFIG_FILES([tests/cli/intersection/test_intersection], [chmod +x tests/cli/intersection/test_intersection]) +AC_CONFIG_FILES([tests/cli/intersection/bt_python_helper.py]) AC_CONFIG_FILES([tests/lib/writer/bt_python_helper.py]) -AC_CONFIG_FILES([tests/bin/test_packet_seq_num], [chmod +x tests/bin/test_packet_seq_num]) +AC_CONFIG_FILES([tests/cli/test_packet_seq_num], [chmod +x tests/cli/test_packet_seq_num]) AS_IF([test "x$enable_python" = "xyes"], [ AC_CONFIG_FILES( @@ -549,7 +563,7 @@ AS_ECHO AS_ECHO("${PPRINT_COLOR_BLDBLU}Babeltrace $PACKAGE_VERSION$PPRINT_COLOR_RST") AS_ECHO -PPRINT_SUBTITLE([Features]) +PPRINT_SUBTITLE([System]) # Target architecture we're building for. target_arch=$host_cpu @@ -562,45 +576,59 @@ for f in $CFLAGS; do fi done ] -PPRINT_PROP_STRING([Target architecture], $target_arch) -# API doc -test "x$enable_api_doc" = "xyes" && value=1 || value=0 -PPRINT_PROP_BOOL([HTML API documentation], $value) +PPRINT_PROP_STRING([Target architecture], $target_arch) -# python bindings enabled/disabled +AS_ECHO +PPRINT_SUBTITLE([Python 3 language support]) test "x$enable_python_bindings" = "xyes" && value=1 || value=0 PPRINT_PROP_BOOL([Python bindings], $value) - -# python bindings doc enabled/disabled -test "x$enable_python_bindings_doc" = "xyes" && value=1 || value=0 -PPRINT_PROP_BOOL([Python bindings doc], $value) - -# python bindings tests enabled/disabled -test "x$enable_python_bindings_tests" = "xyes" && value=1 || value=0 -PPRINT_PROP_BOOL([Python bindings tests], $value) - -# python plugins enabled/disabled test "x$enable_python_plugins" = "xyes" && value=1 || value=0 PPRINT_PROP_BOOL([Python plugin support], $value) +AS_IF([test "x$enable_python_bindings" = "xyes" || test "x$enable_python_plugins" = "xyes"], [ + PPRINT_PROP_STRING([Python include paths], [$PYTHON_INCLUDE]) + PPRINT_PROP_STRING([Python libraries], [$PYTHON_LIBS]) +]) -# built-in Python plugin support enabled/disabled +AS_ECHO +PPRINT_SUBTITLE([Plugins]) +PPRINT_PROP_BOOL(['ctf' plugin], 1) +test "x$_enable_debug_info" = "xyes" && value=1 || value=0 +PPRINT_PROP_BOOL(['lttng-utils' plugin], $value) +PPRINT_PROP_BOOL(['text' plugin], 1) +PPRINT_PROP_BOOL(['utils' plugin], 1) + +AS_ECHO +PPRINT_SUBTITLE([Built-in features]) +test "x$built_in_plugins" = "xyes" && value=1 || value=0 +PPRINT_PROP_BOOL([Built-in plugins], $value) test "x$built_in_python_plugin_support" = "xyes" && value=1 || value=0 PPRINT_PROP_BOOL([Built-in Python plugin support], $value) -# debug info enabled/disabled -test "x$_enable_debug_info" = "xyes" && value=1 || value=0 -PPRINT_PROP_BOOL([Debug information output], $value) +AS_ECHO +PPRINT_SUBTITLE([Documentation]) +test "x$enable_api_doc" = "xyes" && value=1 || value=0 +PPRINT_PROP_BOOL([HTML API documentation], $value) +test "x$enable_python_bindings_doc" = "xyes" && value=1 || value=0 +PPRINT_PROP_BOOL([Python bindings documentation], $value) -# built-in plug-ins enabled/disabled -test "x$built_in_plugins" = "xyes" && value=1 || value=0 -PPRINT_PROP_BOOL([Built-in plug-ins], $value) +AS_ECHO +PPRINT_SUBTITLE([Logging]) +PPRINT_PROP_STRING([Minimal log level], $BABELTRACE_MINIMAL_LOG_LEVEL) + +AS_ECHO +PPRINT_SUBTITLE([Testing]) +test "x$enable_python_bindings_tests" = "xyes" && value=1 || value=0 +PPRINT_PROP_BOOL([Python bindings tests], $value) report_bindir="`eval eval echo $bindir`" report_libdir="`eval eval echo $libdir`" +report_sysconfdif="`eval eval echo $sysconfdir`" # Print the bindir and libdir this `make install' will install into. AS_ECHO PPRINT_SUBTITLE([Install directories]) PPRINT_PROP_STRING([Binaries], [$report_bindir]) PPRINT_PROP_STRING([Libraries], [$report_libdir]) +PPRINT_PROP_STRING([Plugins], [$report_libdir/babeltrace/plugins]) +PPRINT_PROP_STRING([Configuration], [$report_sysconfdif])