A previous commit attempted to workaround pollution in the
Mingw64 pthreads.h header file

  commit d5fec6c22f03c6a73d62260c9ce091c10c0a9cbd
  Author: Eric Blake <ebl...@redhat.com>
  Date:   Wed Jan 22 20:39:45 2014 -0700

    pthread: work around winpthread header pollution on mingw

It activated its workaround based on existance of the strtok_r
wrapper in pthreads.h As luck would have it, latest Mingw64
headers removed the strtok_r wrapper from pthreads.h, but left
all the others. So the gnulib workaround was not activated.

Change the configure check to look for any of the broken
wrappers, instead of just strtok_r
---
 m4/pthread.m4 | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/m4/pthread.m4 b/m4/pthread.m4
index 524ac25..1477000 100644
--- a/m4/pthread.m4
+++ b/m4/pthread.m4
@@ -16,7 +16,12 @@ AC_DEFUN([gl_PTHREAD_CHECK],
       [AC_COMPILE_IFELSE(
         [AC_LANG_PROGRAM(
           [[#include <pthread.h>
-            #ifdef strtok_r
+            #if defined(strtok_r) || \
+               defined(gmtime_r) || \
+               defined(ctime_r) || \
+               defined(asctime_r) || \
+               defined(localtime_r) || \
+               defined(rand_r)
             #error
              break me
             #endif
-- 
2.1.0


Reply via email to