X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=configure.ac;h=c66bbaf273c8fd0c933969e9b4c2375db1e37547;hb=44e0165bf1f8c3b6643a8c9a94daf9144132d8fd;hp=18321ba9cc58a32cd2c05e57a04f04d20d5d70c0;hpb=80e2fb154a331f2fc7e7aa171966d6603a53a00c;p=babeltrace.git diff --git a/configure.ac b/configure.ac index 18321ba9..c66bbaf2 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ([2.50]) -AC_INIT([babeltrace],[1.3.0-pre],[jeremie dot galarneau at efficios dot com]) +AC_INIT([babeltrace],[2.0.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 @@ -32,14 +32,35 @@ 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]) +AC_HEADER_STDBOOL +AC_CHECK_HEADERS([ \ + fcntl.h \ + float.h \ + libintl.h \ + limits.h \ + malloc.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 + if test x"$(basename "$YACC")" != "xbison -y"; then AC_MSG_ERROR([[bison not found and is required when building from git. Please install bison]]) fi @@ -63,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 @@ -79,12 +103,40 @@ AC_TYPE_UINT64_T AC_TYPE_UINT8_T # Checks for library functions. +AC_FUNC_ALLOCA +AC_FUNC_FORK AC_FUNC_MALLOC +AC_FUNC_MKTIME AC_FUNC_MMAP +AC_FUNC_REALLOC +AC_FUNC_STRERROR_R AC_CHECK_FUNCS([ \ - gettimeofday munmap strtoul ftruncate gethostbyname \ - localtime_r memset mkdir rmdir setenv socket \ - strchr strdup strerror strndup strrchr strtoull tzset \ + atexit \ + dirfd \ + dup2 \ + ftruncate \ + gethostbyname \ + gethostname \ + gettimeofday \ + localtime_r \ + memchr \ + memset \ + mkdir \ + mkdtemp \ + munmap \ + rmdir \ + setenv \ + socket \ + strchr \ + strdup \ + strerror \ + strndup \ + strnlen \ + strrchr \ + strtoul \ + strtoull \ + tzset \ + uname \ ]) # Check for MinGW32. @@ -96,32 +148,37 @@ 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], +# 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], @@ -137,11 +194,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 @@ -205,9 +275,12 @@ PKG_CHECK_MODULES(GMODULE, [$pkg_modules]) AC_SUBST(PACKAGE_LIBS) LIBS="$LIBS $GMODULE_LIBS" -PACKAGE_CFLAGS="$GMODULE_CFLAGS -Wall -Wformat -include config.h" +PACKAGE_CFLAGS="$GMODULE_CFLAGS -Wall -Wformat" AC_SUBST(PACKAGE_CFLAGS) +DEFAULT_INCLUDES="-I\$(top_srcdir) -I\$(top_builddir) -I\$(top_builddir)/include -include config.h" +AC_SUBST(DEFAULT_INCLUDES) + babeltraceincludedir="${includedir}/babeltrace" AC_SUBST(babeltraceincludedir) @@ -239,6 +312,7 @@ AC_CONFIG_FILES([ doc/Makefile doc/bindings/Makefile doc/bindings/python/Makefile + doc/images/Makefile lib/Makefile lib/prio_heap/Makefile include/Makefile @@ -254,4 +328,6 @@ 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_OUTPUT