diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2013-02-11 10:15:33 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2013-02-11 10:15:33 +0200 |
commit | 6ab751a49b1a4336c7f2f109c407fb31c9b69b02 (patch) | |
tree | 0c9473c27537d1b85ad2356a9b3c5a41984101a2 | |
parent | 2c8929d8461b5ba64d0b56234ff1d5f8dca3657c (diff) |
Detect POSIX threads on MinGW-W64
-rw-r--r-- | m4/threads.m4 | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/m4/threads.m4 b/m4/threads.m4 index 9a7da53..1609a04 100644 --- a/m4/threads.m4 +++ b/m4/threads.m4 @@ -22,7 +22,16 @@ if test x$threads = xcheck; then CXXFLAGS="$CXXFLAGS -mthreads" ;; esac - threads=win32 + + # Newer versions of GCC can be configured to use either Win32 or POSIX + # threads. It appears that -mthreads should be used in both cases but + # if the model is POSIX then GCC will also link -lpthread by default. + # Use that fact to test which model we have. + # + AC_TRY_LINK([#include <pthread.h>], + [pthread_create(0,0,0,0);], + [threads=posix], + [threads=win32]) ;; *) ACX_PTHREAD |