X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=configure.ac;h=15fb68057ba3dbf27376d6612e3aea7bb74cd171;hb=fb54defd7e47e106bdf3b7eb07d53f0aba0525ec;hp=e07888c093fd38beda92477bc45ef051766eac39;hpb=8aeb3cae3d7a1c2cf0fb24d8d83c94e32d5622dd;p=lttng-ust.git diff --git a/configure.ac b/configure.ac index e07888c0..15fb6805 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ dnl Version infos m4_define([V_MAJOR], [2]) -m4_define([V_MINOR], [12]) +m4_define([V_MINOR], [13]) m4_define([V_PATCH], [0]) m4_define([V_EXTRA], [pre]) m4_define([V_NAME], [[Codename TBD]]) @@ -33,7 +33,7 @@ AC_DEFINE([CONFIG_LTTNG_UST_LIBRARY_VERSION_MAJOR], [UST_LIB_V_MAJOR], [Major SO # liblttng-ust, lttng-sessiond, and lttng-consumerd. AC_SUBST([LTTNG_UST_CTL_LIBRARY_VERSION], [4:0:0]) -AC_CONFIG_HEADERS([config.h include/lttng/ust-config.h]) +AC_CONFIG_HEADERS([include/config.h include/lttng/ust-config.h]) AC_CONFIG_AUX_DIR([config]) AC_CONFIG_MACRO_DIR([m4]) AC_CONFIG_SRCDIR([include/lttng/tracepoint.h]) @@ -41,7 +41,7 @@ AC_CONFIG_SRCDIR([include/lttng/tracepoint.h]) AC_CANONICAL_TARGET AC_CANONICAL_HOST -AM_INIT_AUTOMAKE([1.12 foreign dist-bzip2 no-dist-gzip tar-ustar]) +AM_INIT_AUTOMAKE([1.12 foreign dist-bzip2 no-dist-gzip tar-ustar nostdinc]) AM_MAINTAINER_MODE([enable]) # Enable silent rules if available (Introduced in AM 1.11) @@ -55,6 +55,7 @@ AC_SYS_LARGEFILE AC_PROG_CC AC_PROG_CC_STDC AC_PROG_CXX +AX_CXX_COMPILE_STDCXX([11]) RW_PROG_CXX_WORKS AM_CONDITIONAL([CXX_WORKS], [test "x$rw_cv_prog_cxx_works" = "xyes"]) @@ -131,6 +132,8 @@ 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])]) + # Checks for library functions. AC_FUNC_CHOWN AC_FUNC_FORK @@ -160,6 +163,9 @@ AC_CHECK_FUNCS([ \ sysconf \ ]) +# Check for pthread_setname_np and its signature +LTTNG_PTHREAD_SETNAME_NP + # AC_FUNC_MALLOC causes problems when cross-compiling. #AC_FUNC_MALLOC @@ -201,6 +207,11 @@ AS_CASE([$host_cpu], NO_UNALIGNED_ACCESS=1 ]) +# Set os specific options +AS_CASE([$host_os], + [freebsd*], [NO_NUMA=1] +) + # Configuration options, which will be installed in the config.h AH_TEMPLATE([LTTNG_UST_HAVE_EFFICIENT_UNALIGNED_ACCESS], [Use efficient unaligned access.]) AH_TEMPLATE([LTTNG_UST_HAVE_SDT_INTEGRATION], [SystemTap integration via sdt.h]) @@ -227,13 +238,6 @@ AC_CHECK_LIB([$libdl_name], [dlmopen], [AC_DEFINE([HAVE_DLMOPEN], [1])] ) -AC_CHECK_LIB([pthread], [pthread_create]) -AC_CHECK_LIB([pthread], [pthread_setname_np], - AC_DEFINE([HAVE_PTHREAD_SETNAME_NP], [1], [Define to 1 if pthread_setname_np is available.]), - AC_CHECK_LIB([pthread], [pthread_set_name_np], - AC_DEFINE([HAVE_PTHREAD_SET_NAME_NP], [1], [Define to 1 if pthread_set_name_np is available.]), - AC_MSG_RESULT([pthread setname/set_name not found.]))) - # Check for dlfcn.h AC_CHECK_HEADER([dlfcn.h]) AS_IF([test "x${ac_cv_header_dlfcn_h}" = "xyes"], [ @@ -249,6 +253,17 @@ AM_CONDITIONAL([HAVE_DLINFO], [test "x${ac_cv_have_decl_RTLD_DI_LINKMAP}" = "xye # URCU +AC_MSG_CHECKING([DEFINE_URCU_TLS_INIT()]) +AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ + #include + DEFINE_URCU_TLS_INIT(int, a, 1); +]])], [ + AC_MSG_RESULT([yes]) +], [ + AC_MSG_RESULT([no]) + AC_MSG_ERROR([Please upgrade your version of liburcu to 0.12.0 or better]) +]) + # urcu - check if we just find the headers it out of the box. AC_CHECK_HEADERS([urcu-bp.h], [], [AC_MSG_ERROR([Cannot find [URCU] headers (urcu-bp.h). Use [CPPFLAGS]=-Idir to specify their location. This error can also occur when the liburcu package's configure script has not been run.])]) @@ -359,6 +374,7 @@ AS_IF([test "x$jni_interface" = "xyes" || test "x$java_agent_jul" = "xyes" || te AX_PROG_JAVAC AX_PROG_JAVA AX_PROG_JAR + AC_ARG_VAR([CLASSPATH], [Java class path]) AX_JNI_INCLUDE_DIR for JNI_INCLUDE_DIR in $JNI_INCLUDE_DIRS @@ -506,8 +522,15 @@ AC_DEFUN([_AC_DEFINE_AND_SUBST], [ _AC_DEFINE_AND_SUBST([LTTNG_UST_DEFAULT_CONSTRUCTOR_TIMEOUT_MS], [3000]) -AM_CFLAGS="-Wall" +AM_CFLAGS="-Wall $PTHREAD_CFLAGS" AC_SUBST(AM_CFLAGS) + +# The order in which the include folders are searched is important. +# The top_builddir should always be searched first in the event that a build +# time generated file is included. +AM_CPPFLAGS="-I\$(top_builddir)/include -I\$(top_srcdir)/include -include config.h" +AC_SUBST(AM_CPPFLAGS) + AC_SUBST(JNI_CPPFLAGS) AC_CONFIG_FILES([ @@ -563,6 +586,7 @@ AC_CONFIG_FILES([ AC_CONFIG_LINKS([ python-lttngust/lttngust/agent.py:python-lttngust/lttngust/agent.py python-lttngust/lttngust/cmd.py:python-lttngust/lttngust/cmd.py + python-lttngust/lttngust/compat.py:python-lttngust/lttngust/compat.py python-lttngust/lttngust/debug.py:python-lttngust/lttngust/debug.py python-lttngust/lttngust/loghandler.py:python-lttngust/lttngust/loghandler.py ])