X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=configure.ac;h=1ddfec0643ec95ee12ff8d214f3b8b7b29c6c93d;hb=8b6e94997aafef8af615bc11ebb51c54b18700f0;hp=be36423dcc94c39a7210bc9cc2487490f4f10a40;hpb=17137804eea30b7b8edc82db768e1a27f280abc2;p=babeltrace.git diff --git a/configure.ac b/configure.ac index be36423d..1ddfec06 100644 --- a/configure.ac +++ b/configure.ac @@ -1,40 +1,62 @@ -# -*- Autoconf -*- -# Process this file with autoconf to produce a configure script. - -AC_INIT([babeltrace],[1.2.0],[mathieu dot desnoyers at efficios dot com]) +AC_PREREQ([2.50]) +AC_INIT([babeltrace],[1.3.0-pre],[jeremie dot galarneau 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]) AM_MAINTAINER_MODE([enable]) -m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) - -AC_CONFIG_MACRO_DIR([m4]) -AC_PROG_MKDIR_P -AC_PROG_LN_S - -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 @@ -42,6 +64,10 @@ 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 @@ -51,11 +77,26 @@ AM_PATH_GLIB_2_0(2.22.0, ,AC_MSG_ERROR([glib is required in order to compile Bab AC_C_INLINE AC_TYPE_PID_T AC_TYPE_SIZE_T +AC_TYPE_INT16_T +AC_TYPE_INT32_T +AC_TYPE_INT64_T +AC_TYPE_INT8_T +AC_TYPE_OFF_T +AC_TYPE_SSIZE_T +AC_TYPE_UINT16_T +AC_TYPE_UINT32_T +AC_TYPE_UINT64_T +AC_TYPE_UINT8_T # Checks for library functions. AC_FUNC_MALLOC AC_FUNC_MMAP -AC_CHECK_FUNCS([bzero gettimeofday munmap strtoul]) +AC_CHECK_FUNCS([ \ + gettimeofday munmap strtoul ftruncate gethostbyname \ + localtime_r memset mkdir rmdir setenv socket \ + strchr strdup strerror strndup strrchr strtoull tzset \ + strnlen mkdtemp dirfd \ +]) # Check for MinGW32. MINGW32=no @@ -66,6 +107,9 @@ esac 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], [ @@ -104,11 +148,24 @@ AC_CHECK_LIB([c], [open_memstream], ] ) +# 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