]> granicus.if.org Git - check/commitdiff
configure.ac: also use pthread.h for time struct checks
authorbrarcher <brarcher@64e312b2-a51f-0410-8e61-82d0ca0eb02a>
Mon, 21 Oct 2013 03:26:27 +0000 (03:26 +0000)
committerbrarcher <brarcher@64e312b2-a51f-0410-8e61-82d0ca0eb02a>
Mon, 21 Oct 2013 03:26:27 +0000 (03:26 +0000)
In MinGW and MinGW-w64, the timespec and itimerspec structs
are defined in pthread.h instead of time.h. To properly
check for this, we now also will include pthread.h if it is
available on the system.

git-svn-id: svn+ssh://svn.code.sf.net/p/check/code/trunk@845 64e312b2-a51f-0410-8e61-82d0ca0eb02a

configure.ac

index 67b7b8b63a86d73b53b81efaaa5fb12df55f2999..beb2a170accb7a92efe1f33ede4e10102e133bff 100644 (file)
@@ -169,12 +169,26 @@ AC_CHECK_LIB([m], [floor])
 AC_CHECK_LIB([rt], [clock_gettime, timer_create, timer_settime, timer_delete])
 
 # check that struct timespec is defined in time.h. If not, we need to
-# define it in libcompat.h
-AC_CHECK_MEMBERS([struct timespec.tv_sec, struct timespec.tv_nsec], [], [AC_DEFINE_UNQUOTED(STRUCT_TIMESPEC_DEFINITION_MISSING, 1, "Need to define the timespec structure")], [#include <time.h>])
+# define it in libcompat.h. Note the optional inclusion of pthread.h.
+# On MinGW and MinGW-w64, the pthread.h file contains the timespec
+# definition.
+AC_CHECK_MEMBERS([struct timespec.tv_sec, struct timespec.tv_nsec], [], [AC_DEFINE_UNQUOTED(STRUCT_TIMESPEC_DEFINITION_MISSING, 1, "Need to define the timespec structure")], [
+#include <time.h>
+#if defined(HAVE_PTHREAD)
+#include <pthread.h>
+#endif /* HAVE_PTHREAD */
+])
 
 # check that struct itimerspec is defined in time.h. If not, we need to
-# define it in libcompat.h
-AC_CHECK_MEMBERS([struct itimerspec.it_interval, struct itimerspec.it_value], [], [AC_DEFINE_UNQUOTED(STRUCT_ITIMERSPEC_DEFINITION_MISSING, 1, "Need to define the itimerspec structure")], [#include <time.h>])
+# define it in libcompat.h.  Note the optional inclusion of pthread.h.
+# On MinGW and MinGW-w64, the pthread.h file contains the itimerspec
+# definition.
+AC_CHECK_MEMBERS([struct itimerspec.it_interval, struct itimerspec.it_value], [], [AC_DEFINE_UNQUOTED(STRUCT_ITIMERSPEC_DEFINITION_MISSING, 1, "Need to define the itimerspec structure")], [
+#include <time.h>
+#if defined(HAVE_PTHREAD)
+#include <pthread.h>
+#endif /* HAVE_PTHREAD */
+])
 
 # Checks for header files.
 AC_HEADER_STDC