build: Tell gen-scmconfig' whether the system has struct timespec'.
* configure.ac: Reinstate `struct timespec' check removed in commit
7e7c6f6a93, but define
`HAVE_SYSTEM_STRUCT_TIMESPEC' instead of `HAVE_STRUCT_TIMESPEC'.
* libguile/gen-scmconfig.c (main): Change `HAVE_STRUCT_TIMESPEC' to
`HAVE_SYSTEM_STRUCT_TIMESPEC'.
This commit is contained in:
parent
cfeb9130bb
commit
039300a1eb
2 changed files with 24 additions and 1 deletions
23
configure.ac
23
configure.ac
|
|
@ -1300,6 +1300,29 @@ if test $scm_cv_struct_linger = yes; then
|
|||
getsockopt and setsockopt system calls.])
|
||||
fi
|
||||
|
||||
|
||||
dnl Check for `struct timespec', for the sake of `gen-scmconfig'. When
|
||||
dnl building Guile, we always have it, thanks to Gnulib; but scmconfig.h
|
||||
dnl must tell whether the system has it.
|
||||
dnl
|
||||
dnl On MinGW, struct timespec is in <pthread.h>.
|
||||
AC_MSG_CHECKING(for struct timespec)
|
||||
AC_CACHE_VAL(scm_cv_struct_timespec,
|
||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||
#include <time.h>
|
||||
#if HAVE_PTHREAD_H
|
||||
#include <pthread.h>
|
||||
#endif]], [[struct timespec t; t.tv_nsec = 100]])],
|
||||
[scm_cv_struct_timespec="yes"],
|
||||
[scm_cv_struct_timespec="no"]))
|
||||
AC_MSG_RESULT($scm_cv_struct_timespec)
|
||||
if test $scm_cv_struct_timespec = yes; then
|
||||
dnl Don't call it `HAVE_STRUCT_TIMESPEC' because pthread-win32's
|
||||
dnl <pthread.h> checks whether that macro is defined.
|
||||
AC_DEFINE([HAVE_SYSTEM_STRUCT_TIMESPEC], 1,
|
||||
[Define this if your system defines struct timespec via either <time.h> or <pthread.h>.])
|
||||
fi
|
||||
|
||||
#--------------------------------------------------------------------
|
||||
#
|
||||
# Flags for thread support
|
||||
|
|
|
|||
|
|
@ -301,7 +301,7 @@ main (int argc, char *argv[])
|
|||
|
||||
pf ("\n");
|
||||
pf ("/* same as POSIX \"struct timespec\" -- always defined */\n");
|
||||
#ifdef HAVE_STRUCT_TIMESPEC
|
||||
#ifdef HAVE_SYSTEM_STRUCT_TIMESPEC
|
||||
pf ("typedef struct timespec scm_t_timespec;\n");
|
||||
#else
|
||||
pf ("/* POSIX.4 structure for a time value. This is like a `struct timeval'"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue