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])])
m4_include([config/ax_tls.m4])
AC_C_INLINE
AC_TYPE_PID_T
AC_TYPE_SIZE_T
+AC_TYPE_INT32_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 sched_getcpu strtoul sysconf gettid])
+AC_CHECK_FUNCS(
+ [bzero gettimeofday munmap sched_getcpu strtoul sysconf gettid memeset strerror]
+)
+
+# Check for headers
+AC_CHECK_HEADERS([limits.h stddef.h sys/time.h])
# Find arch type
AS_CASE([$host_cpu],
[powerpc], [ARCHTYPE="ppc"],
[ppc64], [ARCHTYPE="ppc"],
[powerpc64], [ARCHTYPE="ppc"],
+ [powerpc64le], [ARCHTYPE="ppc"],
[ppc], [ARCHTYPE="ppc"],
[s390], [ARCHTYPE="s390"],
[s390x], [ARCHTYPE="s390"],
[sparc], [ARCHTYPE="sparc64"],
[sparc64], [ARCHTYPE="sparc64"],
[alpha*], [ARCHTYPE="alpha"],
- [ia64], [ARCHTYPE="gcc"],
+ [ia64], [ARCHTYPE="ia64"],
[arm*], [ARCHTYPE="arm"],
+ [aarch64], [ARCHTYPE="aarch64"],
[mips*], [ARCHTYPE="mips"],
- [tile*], [ARCHTYPE="gcc"],
+ [tile*], [ARCHTYPE="tile"],
+ [hppa*], [ARCHTYPE="hppa"],
[ARCHTYPE="unknown"]
)
#For now, using lock; addl compatibility mode even for i686, because the
#Pentium III is seen as a i686, but lacks mfence instruction.
#Only using fence for x86_64.
- AS_IF([test "x$host_cpu" != "xi386" -a "x$host_cpu" != "xi486" -a "x$host_cpu" != "xi586" -a "x$host_cpu" != "xi686"],[
+ #
+ #k1om is the name for the Intel MIC family (Xeon Phi). It is an x86_64
+ #variant but lacks fence instructions.
+ AS_IF([test "x$host_cpu" != "xi386" -a "x$host_cpu" != "xi486" -a "x$host_cpu" != "xi586" -a "x$host_cpu" != "xi686" -a "x$host_vendor" != "xk1om"],[
AC_MSG_RESULT([yes])
AC_DEFINE([CONFIG_RCU_HAVE_FENCE], [1])
],[
compat_futex_test=1
])
+# Check for pthread
+AC_CHECK_LIB([pthread], [pthread_create],
+ [AM_CONDITIONAL(LIBC_INCLUDES_PTHREAD, false)],
+ [AC_CHECK_LIB([c], [pthread_create],
+ [AM_CONDITIONAL(LIBC_INCLUDES_PTHREAD, true)],
+ [AC_MSG_ERROR([Cannot find libpthread. Use [LDFLAGS]=-Ldir to specify its location.])]
+ )]
+)
+
AM_CONDITIONAL([COMPAT_FUTEX], [test "x$compat_futex_test" = "x1"])
AM_CONDITIONAL([COMPAT_ARCH], [test "x$SUBARCHTYPE" = "xx86compat"])
AM_CONDITIONAL([NO_SHARED], [test "x$enable_shared" = "xno"])
tests/unit/Makefile
tests/benchmark/Makefile
tests/regression/Makefile
+ tests/utils/Makefile
liburcu.pc
liburcu-bp.pc
liburcu-cds.pc