X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=configure.ac;h=426f8024cb470dbbdeeee8e1782180ddf656834f;hb=1a0399f92145e2ed072a62dc97c8c95279a87893;hp=a6be47834524e684bb61818e039cf11d60d5da63;hpb=e7b68776474003337fc6f733983e175952f154f7;p=babeltrace.git diff --git a/configure.ac b/configure.ac index a6be4783..426f8024 100644 --- a/configure.ac +++ b/configure.ac @@ -84,6 +84,9 @@ fi AM_PATH_GLIB_2_0(2.22.0, ,AC_MSG_ERROR([glib is required in order to compile BabelTrace - download it from ftp://ftp.gtk.org/pub/gtk]) , gmodule) +# Check what libraries are required on this platform to link sockets programs. +AX_LIB_SOCKET_NSL + # Checks for typedefs, structures, and compiler characteristics. AC_C_INLINE AC_TYPE_PID_T @@ -136,41 +139,52 @@ AC_CHECK_FUNCS([ \ uname \ ]) -# Check for MinGW32. MINGW32=no -case $host in - *-*-mingw*) - MINGW32=yes;; -esac +DEFAULT_ENABLE_DEBUGINFO=yes +AS_CASE([$host_os], + [solaris*|darwin*], + [ + DEFAULT_ENABLE_DEBUGINFO=no + ], + [mingw*], + [ + MINGW32=yes + ] +) AM_CONDITIONAL([BABELTRACE_BUILD_WITH_MINGW], [test "x$MINGW32" = "xyes"]) -# Check what libraries are required on this platform to link sockets programs. -AX_LIB_SOCKET_NSL - -# Check for libuuid -AC_CHECK_LIB([uuid], [uuid_generate], +# Check for uuid in system libs +AC_CHECK_FUNCS([uuid_generate], [ - AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBUUID], 1, [Has libuuid support.]) - have_libuuid=yes + AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBUUID], 1, [Has libuuid support.]) + link_with_libuuid=no ], [ - # libuuid not found, check for uuid_create in libc. - AC_CHECK_LIB([c], [uuid_create], - [ - AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBC_UUID], 1, [Has libc uuid support.]) - have_libc_uuid=yes - ], - [ - # for MinGW32 we have our own internal implemenation of uuid using Windows functions. - if test "x$MINGW32" = xno; then - AC_MSG_ERROR([Cannot find libuuid uuid_generate nor libc uuid_create. Use [LDFLAGS]=-Ldir to specify their location.]) - fi - ]) -] -) -AM_CONDITIONAL([BABELTRACE_BUILD_WITH_LIBUUID], [test "x$have_libuuid" = "xyes"]) -AM_CONDITIONAL([BABELTRACE_BUILD_WITH_LIBC_UUID], [test "x$have_libc_uuid" = "xyes"]) + # Check for libuuid + AC_CHECK_LIB([uuid], [uuid_generate], + [ + AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBUUID], 1, [Has libuuid support.]) + link_with_libuuid=yes + ], + [ + # libuuid not found, check for uuid_create in libc. + AC_CHECK_LIB([c], [uuid_create], + [ + AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBC_UUID], 1, [Has libc uuid support.]) + link_with_libc_uuid=yes + ], + [ + # for MinGW32 we have our own internal implemenation of uuid using Windows functions. + if test "x$MINGW32" = xno; then + AC_MSG_ERROR([Cannot find libuuid uuid_generate nor libc uuid_create. Use [LDFLAGS]=-Ldir to specify their location.]) + fi + ]) + ]) +]) + +AM_CONDITIONAL([BABELTRACE_BUILD_WITH_LIBUUID], [test "x$link_with_libuuid" = "xyes"]) +AM_CONDITIONAL([BABELTRACE_BUILD_WITH_LIBC_UUID], [test "x$link_with_libc_uuid" = "xyes"]) # Check for fmemopen AC_CHECK_LIB([c], [fmemopen], @@ -262,8 +276,20 @@ if test "x${enable_python_bindings_doc:-yes}" = xyes; then ) fi -pkg_modules="gmodule-2.0 >= 2.0.0" -PKG_CHECK_MODULES(GMODULE, [$pkg_modules]) +# Optional debuginfo feature (enabled by default) +AS_IF([test "x$DEFAULT_ENABLE_DEBUGINFO" = xyes], + [AC_ARG_ENABLE([debug-info], [AC_HELP_STRING([--disable-debug-info], [disable the debug-info feature (default on OS X and Solaris)])], [], [enable_debuginfo=yes])], + [AC_ARG_ENABLE([debug-info], [AC_HELP_STRING([--enable-debug-info], [enable the debug-info feature (default on Linux)])], [], [enable_debuginfo=no])] +) + +AM_CONDITIONAL([ENABLE_DEBUGINFO], [test "x$enable_debuginfo" = xyes]) +AS_IF([test "x$enable_debuginfo" = xyes], [ + PKG_CHECK_MODULES(LIBDW, [libdw >= 0.154], [], [AC_MSG_ERROR(Missing libdw (from elfutils >= 0.154) which is required by debug-info. You can disable this feature using --disable-debuginfo.)]) + PKG_CHECK_MODULES(LIBELF, [libelf >= 0.154], [], [AC_MSG_ERROR(Missing libelf (from elfutils >= 0.154) which is required by debug-info. You can disable this feature using --disable-debuginfo.)]) + AC_DEFINE([ENABLE_DEBUGINFO], [1], [Define to 1 if you enable the 'debug-info' feature]) +], []) + +PKG_CHECK_MODULES(GMODULE, [gmodule-2.0 >= 2.0.0]) AC_SUBST(PACKAGE_LIBS) LIBS="$LIBS $GMODULE_LIBS" @@ -320,4 +346,60 @@ AC_CONFIG_FILES([ babeltrace.pc babeltrace-ctf.pc ]) + +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/bin/test_trace_read], [chmod +x tests/bin/test_trace_read]) +AC_CONFIG_FILES([tests/bin/test_intersection], [chmod +x tests/bin/test_intersection]) +AC_CONFIG_FILES([tests/bin/test_packet_seq_num], [chmod +x tests/bin/test_packet_seq_num]) + AC_OUTPUT + +# +# Mini-report on what will be built. +# + +PPRINT_INIT +PPRINT_SET_INDENT(1) +PPRINT_SET_TS(38) + +AS_ECHO +AS_ECHO("${PPRINT_COLOR_BLDBLU}Babeltrace $PACKAGE_VERSION$PPRINT_COLOR_RST") +AS_ECHO + +PPRINT_SUBTITLE([Features]) + +# Target architecture we're building for. +target_arch=$host_cpu +[ +for f in $CFLAGS; do + if test $f = "-m32"; then + target_arch="32-bit" + elif test $f = "-m64"; then + target_arch="64-bit" + fi +done +] +PPRINT_PROP_STRING([Target architecture], $target_arch) + +# python bindings enabled/disabled +test "x$enable_python" = "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) + +# debug-info enabled/disabled +test "x$enable_debuginfo" = "xyes" && value=1 || value=0 +PPRINT_PROP_BOOL([Debug information output], $value) + + +report_bindir="`eval eval echo $bindir`" +report_libdir="`eval eval echo $libdir`" + +# 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])