Hi Tim, Thanks for the more verbose configure output.
I misinterpreted the config.log output; I now see how it was produced even without --disable-threads. The logic in threadlib.m4 is as follows: - If no preference is given (no --enable-threads={posix|solaris|pth|windows} options), the macro attempts to use POSIX threads if possible. This makes sense in general, when you think of systems like Haiku or such. - Since you have mingw's pthread.h installed, the logic goes this route. The two errors that you encounter: * The error > >> In file included from /usr/share/mingw-w64/include/signal.h:10, > >> from ./signal.h:52, > >> from pthread_sigmask.c:20: > >> pthread_sigmask.c:34:1: error: expected identifier or ‘(’ before numeric > >> constant > >> pthread_sigmask (int how, const sigset_t *new_mask, sigset_t *old_mask) > >> ^~~~~~~~~~~~~~~ is caused by #define pthread_sigmask(H, S1, S2) 0 in pthread_signal.h. You could probably easily avoid the error by inserting a '#undef pthread_sigmask' at the appropriate place. * The error libtests.a(localename.o):localename.c:(.text+0x10): undefined reference to `pthread_mutex_lock' is apparently because -lpthread or -lpthread are not occurring on the link command line. These link options should be transmitted through LIBTHREAD, LTLIBTHREAD in config.status. But I don't see these variables in the config.status that you sent me. config.status contains a setting of LTLIBPTHREAD, which comes from this line in gnutls-3.6.7/configure: AC_LIB_HAVE_LINKFLAGS(pthread,, [#include <pthread.h>], [pthread_mutex_lock (0);]) So this is just a different autoconf test. But it doesn't explain why LIBTHREAD, LTLIBTHREAD are missing. Btw, there are two(!) pthreads implementations for mingw. - The one that ships with mingw in Debian is initially '(C) 2010 Lockless Inc.' and is under a BSD license. - The one at https://sourceware.org/pthreads-win32/ is by Ross Johnson and is under LGPL. Another difference between the two is explained in https://en.wikipedia.org/wiki/POSIX_Threads#POSIX_Threads_for_Windows I'm not going to work on this. But if you have time, these would be some improvements: - Test a gnulib testdir in an environment where you have the mingw-pthreads installed. Probably you'll hit the pthread_sigmask problem when you do this. Possibly also some test failures. - Build your preferred packages once with --enable-threads=windows, once with --enable-threads=posix and the mingw pthreads, once with --enable-threads=posix and the pthreads-win32 package, and compare/analyze/report the results. Bruno