X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=configure.ac;h=73c7b897e522e169437437bba582ffe90e2f6ca7;hb=refs%2Fheads%2Fcygwin-2.0-experimental;hp=5f4780cdf6330a13ae02595c564f74ec7a53fe57;hpb=401685e62addfe47dccf09422a0137cd4184b0d2;p=lttng-ust.git diff --git a/configure.ac b/configure.ac index 5f4780cd..73c7b897 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,7 @@ # -*- Autoconf -*- # Process this file with autoconf to produce a configure script. -AC_INIT([lttng-ust],[2.0.4],[mathieu dot desnoyers at efficios dot com]) +AC_INIT([lttng-ust],[2.0.6],[mathieu dot desnoyers at efficios dot com]) # Following the numbering scheme proposed by libtool for the library version # http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html @@ -39,6 +39,33 @@ version_description="New type of beer, 100% from Quebec, flavored with sapin bea AC_DEFINE_UNQUOTED([VERSION_NAME], [$version_name], [UST version name]) AC_DEFINE_UNQUOTED([VERSION_DESCRIPTION], [$version_description], [UST version description]) +AC_PROG_GREP +# libtool link_all_deplibs fixup. See http://bugs.lttng.org/issues/321. +AC_ARG_ENABLE(libtool-linkdep-fixup, + AS_HELP_STRING([--disable-libtool-linkdep-fixup], + [disable the libtool fixup for linking all dependent libraries (link_all_deplibs)]), + libtool_fixup=$enableval, + libtool_fixup=yes) + +AS_IF([test "x$libtool_fixup" = "xyes"], + [ + libtool_m4="$srcdir/config/libtool.m4" + libtool_flag_pattern=".*link_all_deplibs\s*,\s*\$1\s*)" + AC_MSG_CHECKING([for occurence(s) of link_all_deplibs = no in $libtool_m4]) + libtool_flag_pattern_count=$(grep -c "$libtool_flag_pattern\s*=\s*no" $libtool_m4) + AS_IF([test $libtool_flag_pattern_count -ne 0], + [ + AC_MSG_RESULT([$libtool_flag_pattern_count]) + AC_MSG_WARN([the detected libtool will not link all dependencies, forcing link_all_deplibs = unknown]) + sed -i "s/\($libtool_flag_pattern\)\s*=\s*no/\1=unknown/g" $libtool_m4 + ], + [ + AC_MSG_RESULT([none]) + ]) + ]) + +AM_CONDITIONAL([NO_SHARED], [test "x$enable_shared" = "xno"]) + # Checks for programs. AC_PROG_CC AC_PROG_CXX @@ -50,9 +77,25 @@ AC_CHECK_LIB([dl], [dlopen]) AC_CHECK_LIB([pthread], [pthread_create]) # Check for libuuid -AC_CHECK_LIB([uuid], [uuid_generate], [], - [AC_MSG_ERROR([Cannot find libuuid. Use [LDFLAGS]=-Ldir to specify its location.])] +AC_CHECK_LIB([uuid], [uuid_generate], +[ + AC_DEFINE_UNQUOTED([LTTNG_UST_HAVE_LIBUUID], 1, [Has libuuid support.]) + have_libuuid=yes +], +[ + # libuuid not found, check for uuid_create in libc. + AC_CHECK_LIB([c], [uuid_create], + [ + AC_DEFINE_UNQUOTED([LTTNG_UST_HAVE_LIBC_UUID], 1, [Has libc uuid support.]) + have_libc_uuid=yes + ], + [ + AC_MSG_ERROR([Cannot find libuuid uuid_generate nor libc uuid_create. Use [LDFLAGS]=-Ldir to specify its location.]) + ]) +] ) +AM_CONDITIONAL([LTTNG_UST_BUILD_WITH_LIBUUID], [test "x$have_libuuid" = "xyes"]) +AM_CONDITIONAL([LTTNG_UST_BUILD_WITH_LIBC_UUID], [test "x$have_libc_uuid" = "xyes"]) # Checks for header files. #AC_CHECK_HEADERS([fcntl.h stdint.h stdlib.h string.h sys/socket.h sys/time.h unistd.h]) @@ -126,6 +169,10 @@ got it [ust_cv_i386_is_x86_64=no]) CPPFLAGS="$save_CPPFLAGS"]) ;; + # All symbols must be resolved at link time on Cygwin/MinGW/Windows, + # else libtool will not be able to build shared libraries. + *-*-cygwin*) + LDFLAGS="-Wl,-no-undefined $LDFLAGS";; esac AC_MSG_CHECKING([library format for the host system]) @@ -234,6 +281,13 @@ AS_IF([test "x$with_sdt" = "xyes"],[ # liblttng-ust-java/Makefile +# Disabled for now, because these libraries +# rely on the dlsym(3) RTLD_NEXT GNU extension. +# This is not implemented in Cygwin. +#liblttng-ust-fork/Makefile +#liblttng-ust-libc-wrapper/Makefile +#tests/fork/Makefile + AC_CONFIG_FILES([ Makefile doc/Makefile @@ -245,15 +299,12 @@ AC_CONFIG_FILES([ liblttng-ust-comm/Makefile liblttng-ust/Makefile liblttng-ust-ctl/Makefile - liblttng-ust-fork/Makefile - liblttng-ust-libc-wrapper/Makefile tools/Makefile tests/Makefile tests/hello/Makefile tests/hello-static-lib/Makefile tests/hello.cxx/Makefile tests/demo/Makefile - tests/fork/Makefile tests/ust-basic-tracing/Makefile tests/ust-multi-test/Makefile lttng-ust.pc