From 438e05e7ea9949b7ee61e40a2a6bc7e1c1d4b8f3 Mon Sep 17 00:00:00 2001 From: Benjamin Barenblat Date: Sun, 20 Sep 2015 17:46:07 -0400 Subject: Use correct OpenSSL thread safety macros on OS X (closes #209) Create an Autoconf test to determine if pthread_t is a pointer or scalar type, and use the appropriate CRYPTO_THREADID_set macro based on the result. --- configure.ac | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'configure.ac') diff --git a/configure.ac b/configure.ac index a6f8ac43..f074ccbf 100644 --- a/configure.ac +++ b/configure.ac @@ -112,6 +112,22 @@ if test [$CLANG = "yes"]; then PTHREAD_LIBS="" fi +# Check if pthread_t is a scalar or pointer type so we can use the correct +# OpenSSL functions on it. +AC_MSG_CHECKING([if pthread_t is a pointer type]) +AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include + ]], + [[ +pthread_t a; +*a; + ]])], + AC_DEFINE([PTHREAD_T_IS_POINTER], [1], [Define if pthread_t is a pointer.]) + AC_MSG_RESULT(yes), + AC_MSG_RESULT(no)) + AC_SUBST(CC) AC_SUBST(BIN) AC_SUBST(LIB) -- cgit v1.2.3