-# -*- Autoconf -*-
-# Process this file with autoconf to produce a configure script.
-
-AC_INIT([babeltrace],[1.2.0-rc2],[mathieu dot desnoyers at efficios dot com])
+AC_PREREQ([2.50])
+AC_INIT([babeltrace],[1.2.4],[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
AC_SUBST([BABELTRACE_LIBRARY_VERSION], [1:0:0])
+AC_CONFIG_HEADERS([config.h])
AC_CONFIG_AUX_DIR([config])
+AC_CONFIG_MACRO_DIR([m4])
+
AC_CANONICAL_TARGET
AC_CANONICAL_HOST
-AM_INIT_AUTOMAKE([foreign dist-bzip2 no-dist-gzip])
-m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
-
-AC_CONFIG_MACRO_DIR([m4])
-AC_PROG_MKDIR_P
+AM_INIT_AUTOMAKE([foreign dist-bzip2 no-dist-gzip])
+AM_MAINTAINER_MODE([enable])
-AC_CONFIG_HEADERS([config.h])
+# Enable silent rules if available (Introduced in AM 1.11)
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
+# Checks for C compiler
+AC_USE_SYSTEM_EXTENSIONS
AC_SYS_LARGEFILE
+AC_PROG_CC
+AC_PROG_CC_STDC
# Checks for programs.
-AC_PROG_CC_STDC
AC_PROG_MAKE_SET
LT_INIT
AC_PROG_YACC
AC_PROG_LEX
+AC_PROG_MKDIR_P
+AC_PROG_LN_S
+
+AX_C___ATTRIBUTE__
+AS_IF([test "x$ax_cv___attribute__" = "xyes"],
+ [:],
+ [AC_MSG_ERROR([The compiler does not support __attribute__ extensions])])
+
+AX_PTHREAD(,[AC_MSG_ERROR([Could not configure pthreads support])])
+LIBS="$PTHREAD_LIBS $LIBS"
+CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+CC="$PTHREAD_CC"
+
+# Check linker option
+AX_APPEND_LINK_FLAGS([-Wl,--no-as-needed], [LD_NO_AS_NEEDED])
+AC_SUBST([LD_NO_AS_NEEDED])
+
+AC_CHECK_HEADERS([fcntl.h limits.h netdb.h netinet/in.h stddef.h sys/socket.h])
if test ! -f "$srcdir/formats/ctf/metadata/ctf-parser.h"; then
if test x"$YACC" != "xbison -y"; then
AC_MSG_ERROR([[bison not found and is required when building from git.
Please install bison]])
fi
+ AC_PATH_PROG([BISON],[bison])
+ AX_PROG_BISON_VERSION([2.4], [],[
+ AC_MSG_ERROR([[Bison >= 2.4 is required when building from git]])
+ ])
fi
if test ! -f "$srcdir/formats/ctf/metadata/ctf-lexer.c"; then
AC_MSG_ERROR([[flex not found and is required when building from git.
Please install flex]])
fi
+ AC_PATH_PROG([FLEX],[flex])
+ AX_PROG_FLEX_VERSION([2.5.35], [],[
+ AC_MSG_ERROR([[Flex >= 2.5.35 is required when building from git]])
+ ])
fi
# Checks for library functions.
AC_FUNC_MALLOC
AC_FUNC_MMAP
-AC_CHECK_FUNCS([bzero gettimeofday munmap strtoul])
+AC_CHECK_FUNCS([gettimeofday munmap strtoul strndup strnlen])
# Check for MinGW32.
MINGW32=no
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 posix_fallocate
+AC_CHECK_LIB([c], [posix_fallocate],
+[
+ AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_POSIX_FALLOCATE], 1, [Has posix_fallocate support.])
+]
+)
+
+# Check for faccessat
+AC_CHECK_LIB([c], [faccessat],
+[
+ AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_FACCESSAT], 1, [Has faccessat support.])
+]
+)
+
AC_CHECK_LIB([popt], [poptGetContext], [],
[AC_MSG_ERROR([Cannot find popt.])]
)
-
# For Python
# SWIG version needed or newer:
swig_version=2.0.0
AX_PKG_SWIG($swig_version, [], [ AC_MSG_ERROR([SWIG $swig_version or newer is needed]) ])
AM_PATH_PYTHON
+ AM_PATH_PYTHON_MODULES([PYTHON])
+ # pythondir is the path where extra modules are to be installed
+ pythondir=$PYTHON_PREFIX/$PYTHON_MODULES_PATH
+ # pyexecdir is the path that contains shared objects used by the extra modules
+ pyexecdir=$PYTHON_EXEC_PREFIX/$PYTHON_MODULES_PATH
AC_ARG_VAR([PYTHON_INCLUDE], [Include flags for python, bypassing python-config])
AC_ARG_VAR([PYTHON_CONFIG], [Path to python-config])
AS_IF([test -z "$PYTHON_INCLUDE"], [