From: Victor Julien Date: Tue, 6 Jan 2015 09:18:38 +0000 (+0100) Subject: configure: add switch to disable __thread use X-Git-Tag: suricata-2.1beta3~67 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=6fa8922ccdb4e18d5d4beee84fc425ee1d9a3bdc;p=thirdparty%2Fsuricata.git configure: add switch to disable __thread use Add --disable-threading-tls switch to force the posix thread local storage code paths even if __thread is available. Goal is to make it easier to QA the posix code path. --- diff --git a/configure.ac b/configure.ac index 6f691bab83..48fcad47c3 100644 --- a/configure.ac +++ b/configure.ac @@ -224,13 +224,18 @@ esac AC_MSG_RESULT(ok) - # check if our target supports thread local storage - AC_MSG_CHECKING(for thread local storage __thread support) - AC_TRY_COMPILE([#include ], - [ static __thread int i; i = 1; i++; ], - [AC_DEFINE([TLS], [1], [Thread local storage]) - AC_MSG_RESULT([yes]) ], - [AC_MSG_RESULT([no])]) + # disable TLS on user request + AC_ARG_ENABLE(threading-tls, + AS_HELP_STRING([--disable-threading-tls], [Disable TLS (thread local storage)])], [enable_tls="$enableval"],[enable_tls=yes]) + AS_IF([test "x$enable_tls" = "xyes"], [ + # check if our target supports thread local storage + AC_MSG_CHECKING(for thread local storage __thread support) + AC_TRY_COMPILE([#include ], + [ static __thread int i; i = 1; i++; ], + [AC_DEFINE([TLS], [1], [Thread local storage]) + AC_MSG_RESULT([yes]) ], + [AC_MSG_RESULT([no])]) + ]) #Enable support for gcc compile time security options. There is no great way to do detection of valid cflags that I have found #AX_CFLAGS_GCC_OPTION don't seem to do a better job than the code below and are a pain because of extra m4 files etc.