# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
-AC_INIT([ust], [0.11], [nils dot carlson at ericsson dot com])
+AC_INIT([ust], [0.12], [nils dot carlson at ericsson dot com])
AC_CONFIG_AUX_DIR([config])
AC_CANONICAL_TARGET
AC_CANONICAL_HOST
AC_FUNC_MALLOC
AC_CHECK_FUNCS([gettimeofday munmap socket strerror strtol])
+CFLAGS="-Wall $CFLAGS"
+
# URCU
# urcu - check if we just find the headers it out of the box.
# urcu - check that URCU lib is available to compilation
AC_CHECK_LIB([urcu-bp], [synchronize_rcu], [], [AC_MSG_ERROR([Cannot find liburcu-bp lib. Use [LDFLAGS]=-Ldir to specify its location.])])
+# urcu - check that URCU lib is at least version 0.5.4
+AC_CHECK_LIB([urcu-bp], [rcu_bp_before_fork], [], [AC_MSG_ERROR([liburcu 0.5.4 or newer is needed, please update your version or use [LDFLAGS]=-Ldir to specify the right location.])])
+
# urcu - check that URCU lib is at least version 0.5
AC_CHECK_DECL([cds_list_add(0, 0)], [], [AC_MSG_ERROR([liburcu 0.5 or newer is needed, please update your version or use [LDFLAGS]=-Ldir to specify the right location.])], [[#include <urcu/list.h>]])
+
# Check for various supplementary host information (beyond the
# triplet) which might affect the library format choices. E.g., we
# can be building with `i686-unknown-linux-gnu-gcc -m64'
ppc64) LIBFORMAT="elf64-powerpc" ;;
s390) LIBFORMAT="elf32-s390" ;;
s390x) LIBFORMAT="elf64-s390" ;;
+ arm) LIBFORMAT="elf32-littlearm" ;;
+ mips*) LIBFORMAT="" ;;
*) AC_MSG_ERROR([unable to detect library format (unsupported architecture ($host_cpu)?)]) ;;
esac
AC_SUBST(LIBFORMAT)