X-Git-Url: http://git.lttng.org/?p=ust.git;a=blobdiff_plain;f=configure.ac;h=d9bba968899596a1af571f752a83bd083a1f7cb2;hp=bebc1ab588eadf0a99d18c3792183887ede0fb01;hb=HEAD;hpb=3c087c81ecf753fa18ba42ccdb2552831d3b1d3d diff --git a/configure.ac b/configure.ac index bebc1ab..d9bba96 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,7 @@ # -*- Autoconf -*- # Process this file with autoconf to produce a configure script. -AC_INIT([ust], [0.12], [nils dot carlson at ericsson dot com]) +AC_INIT([ust], [0.16], [mathieu dot desnoyers at efficios dot com]) AC_CONFIG_AUX_DIR([config]) AC_CANONICAL_TARGET AC_CANONICAL_HOST @@ -9,7 +9,16 @@ AC_CONFIG_MACRO_DIR([config]) AM_INIT_AUTOMAKE([foreign]) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) AC_CONFIG_SRCDIR([ustctl/ustctl.c]) -AC_CONFIG_HEADERS([config.h]) +AC_CONFIG_HEADERS([config.h include/ust/config.h]) +AH_TEMPLATE([HAVE_EFFICIENT_UNALIGNED_ACCESS], [Use efficient unaligned access.]) +# Compute minor/major version numbers +major_version=`echo AC_PACKAGE_VERSION | sed 's/\..*//'` +minor_version=`echo AC_PACKAGE_VERSION | sed 's/.*\.//' | sed 's/^0//'` +AC_SUBST([MAJOR_VERSION], [$major_version]) +AC_SUBST([MINOR_VERSION], [$minor_version]) +AC_DEFINE_UNQUOTED([VERSION_MAJOR], $major_version, [UST major version number]) +AC_DEFINE_UNQUOTED([VERSION_MINOR], $minor_version, [UST minor version number]) + # Checks for programs. AC_PROG_CC @@ -61,14 +70,10 @@ AC_CHECK_HEADERS([urcu-bp.h], [], [AC_MSG_ERROR([Cannot find [URCU] headers (urc This error can also occur when the liburcu package's configure script has not been run.])]) # 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 ]]) +AC_CHECK_LIB([urcu-bp], [synchronize_rcu_bp], [], [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.6 +AC_CHECK_LIB([urcu-bp], [call_rcu_bp], [], [AC_MSG_ERROR([liburcu 0.6 or newer is needed, please update your version or use [LDFLAGS]=-Ldir to specify the right location.])]) # Check for various supplementary host information (beyond the @@ -106,14 +111,41 @@ changequote([,])dnl x86_64) LIBFORMAT="elf64-x86-64" ;; powerpc) LIBFORMAT="elf32-powerpc" ;; ppc64) LIBFORMAT="elf64-powerpc" ;; + powerpc64) LIBFORMAT="elf64-powerpc" ;; s390) LIBFORMAT="elf32-s390" ;; s390x) LIBFORMAT="elf64-s390" ;; + armv5) LIBFORMAT="elf32-littlearm"; NO_UNALIGNED_ACCESS=1 ;; arm) LIBFORMAT="elf32-littlearm" ;; + mips*) LIBFORMAT="" ;; *) AC_MSG_ERROR([unable to detect library format (unsupported architecture ($host_cpu)?)]) ;; esac AC_SUBST(LIBFORMAT) AC_MSG_RESULT($LIBFORMAT) +if test "x$host_cpu" = "xarm" ; then +AC_MSG_CHECKING([checking for armv5]) +AC_TRY_COMPILE( +[ +], +[ +#ifndef __ARM_ARCH_5TEJ__ +#error "no arm5 here" +#endif +], +[ + AC_MSG_RESULT([yes]) + NO_UNALIGNED_ACCESS=1 +] +, +[ + AC_MSG_RESULT([no]) +] +) +fi +if test x$NO_UNALIGNED_ACCESS = x ; then +AC_DEFINE([HAVE_EFFICIENT_UNALIGNED_ACCESS], [1]) +fi + AC_CONFIG_FILES([ Makefile doc/Makefile @@ -138,6 +170,7 @@ AC_CONFIG_FILES([ tests/tracepoint/benchmark/Makefile tests/register_test/Makefile tests/libustctl_function_tests/Makefile + tests/exit-fast/Makefile libustinstr-malloc/Makefile libustfork/Makefile libustconsumer/Makefile @@ -146,5 +179,7 @@ AC_CONFIG_FILES([ libustcomm/Makefile libustctl/Makefile snprintf/Makefile + ust.pc + include/ust/version.h ]) AC_OUTPUT