Some pthreads symbols might be present in libc (as shown on various *BSD)
but not all of them, leading to false positives.
Check for the most common compiler flags before the plain symbol check
to avoid known pitfalls.
# do this before the optional library checks as some of them require pthreads
if ! disabled pthreads && ! enabled w32threads; then
enable pthreads
- if check_func pthread_join; then
- :
- elif check_func pthread_join -pthread; then
+ if check_func pthread_join -pthread; then
add_cflags -pthread
add_extralibs -pthread
elif check_func pthread_join -pthreads; then
add_extralibs -pthreads
elif check_func pthread_join -lpthreadGC2; then
add_extralibs -lpthreadGC2
- elif ! check_lib pthread.h pthread_join -lpthread; then
+ elif check_lib pthread.h pthread_join -lpthread; then
+ :
+ elif ! check_func pthread_join; then
disable pthreads
fi
fi