summaryrefslogtreecommitdiff
path: root/m4
diff options
context:
space:
mode:
Diffstat (limited to 'm4')
-rw-r--r--m4/attributes.m42
-rw-r--r--m4/pthreads.m410
2 files changed, 8 insertions, 4 deletions
diff --git a/m4/attributes.m4 b/m4/attributes.m4
index eaa788c5f..55f34c9f7 100644
--- a/m4/attributes.m4
+++ b/m4/attributes.m4
@@ -119,7 +119,7 @@ AC_DEFUN([CC_ATTRIBUTE_FORMAT_ARG], [
AC_CACHE_CHECK([if compiler supports __attribute__((format_arg(printf)))],
[cc_cv_attribute_format_arg],
[AC_COMPILE_IFELSE([
- void __attribute__((format_arg(1))) gettextlike(const char *fmt) { fmt = (void *)0; }
+ char *__attribute__((format_arg(1))) gettextlike(const char *fmt) { fmt = (void *)0; }
],
[cc_cv_attribute_format_arg=yes],
[cc_cv_attribute_format_arg=no])
diff --git a/m4/pthreads.m4 b/m4/pthreads.m4
index 28d72dd4f..35193370d 100644
--- a/m4/pthreads.m4
+++ b/m4/pthreads.m4
@@ -36,11 +36,15 @@ AC_DEFUN([CC_PTHREAD_FLAGS], [
[ac_save_CFLAGS="$CFLAGS"
ac_save_LIBS="$LIBS"
CFLAGS="$CFLAGS $cc_cv_werror $PTHREAD_CFLAGS"
+
LIBS="$LIBS $PTHREAD_LIBS"
- AC_COMPILE_IFELSE(
+ AC_LINK_IFELSE(
[AC_LANG_PROGRAM(
- [[#include <pthread.h>]],
- [[pthread_create(NULL, NULL, NULL, NULL);]]
+ [[#include <pthread.h>
+ void *fakethread(void *arg) { }
+ pthread_t fakevariable;
+ ]],
+ [[pthread_create(&fakevariable, NULL, &fakethread, NULL);]]
)],
[cc_cv_pthreads=yes],
[cc_cv_pthreads=no])