mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-07 18:30:25 +02:00
Test if need braces around PTHREAD_ONCE_INIT, set
AC_OUTPUT of SCM_I_GSC_NEED_BRACES_ON_PTHREAD_ONCE_INIT.
This commit is contained in:
parent
82843d5c26
commit
33f9e79b8c
1 changed files with 26 additions and 2 deletions
28
configure.in
28
configure.in
|
@ -1021,13 +1021,37 @@ case "$with_threads" in
|
||||||
with_threads="pthreads",
|
with_threads="pthreads",
|
||||||
with_threads="null")
|
with_threads="null")
|
||||||
|
|
||||||
|
old_CFLAGS="$CFLAGS"
|
||||||
|
CFLAGS="$PTHREAD_CFLAGS $CFLAGS"
|
||||||
|
|
||||||
# Reasons for testing:
|
# Reasons for testing:
|
||||||
# pthread_getattr_np - "np" meaning "non portable" says it
|
# pthread_getattr_np - "np" meaning "non portable" says it
|
||||||
# all; not present on MacOS X or Solaris 10
|
# all; not present on MacOS X or Solaris 10
|
||||||
#
|
#
|
||||||
old_CFLAGS="$CFLAGS"
|
|
||||||
CFLAGS="$PTHREAD_CFLAGS $CFLAGS"
|
|
||||||
AC_CHECK_FUNCS(pthread_attr_getstack pthread_getattr_np)
|
AC_CHECK_FUNCS(pthread_attr_getstack pthread_getattr_np)
|
||||||
|
|
||||||
|
# On past versions of Solaris, believe 8 through 10 at least, you
|
||||||
|
# had to write "pthread_once_t foo = { PTHREAD_ONCE_INIT };".
|
||||||
|
# This is contrary to posix:
|
||||||
|
# http://www.opengroup.org/onlinepubs/000095399/functions/pthread_once.html
|
||||||
|
# Check here if this style is required.
|
||||||
|
#
|
||||||
|
# glibc (2.3.6 at least) works both with or without braces, so the
|
||||||
|
# test checks whether it works without.
|
||||||
|
#
|
||||||
|
AC_CACHE_CHECK([whether PTHREAD_ONCE_INIT needs braces],
|
||||||
|
guile_cv_need_braces_on_pthread_once_init,
|
||||||
|
[AC_TRY_COMPILE([#include <pthread.h>],
|
||||||
|
[pthread_once_t foo = PTHREAD_ONCE_INIT;],
|
||||||
|
[guile_cv_need_braces_on_pthread_once_init=no],
|
||||||
|
[guile_cv_need_braces_on_pthread_once_init=yes])])
|
||||||
|
if test "$guile_cv_need_braces_on_pthread_once_init" = yes; then
|
||||||
|
SCM_I_GSC_NEED_BRACES_ON_PTHREAD_ONCE_INIT=1
|
||||||
|
else
|
||||||
|
SCM_I_GSC_NEED_BRACES_ON_PTHREAD_ONCE_INIT=0
|
||||||
|
fi
|
||||||
|
AC_SUBST(SCM_I_GSC_NEED_BRACES_ON_PTHREAD_ONCE_INIT)
|
||||||
|
|
||||||
CFLAGS="$old_CFLAGS"
|
CFLAGS="$old_CFLAGS"
|
||||||
|
|
||||||
# On Solaris, sched_yield lives in -lrt.
|
# On Solaris, sched_yield lives in -lrt.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue