1 | #serial 12
|
---|
2 |
|
---|
3 | # Copyright (C) 2000, 2001, 2003, 2004, 2005, 2006 Free Software
|
---|
4 | # Foundation, Inc.
|
---|
5 |
|
---|
6 | # This file is free software; the Free Software Foundation
|
---|
7 | # gives unlimited permission to copy and/or distribute it,
|
---|
8 | # with or without modifications, as long as this notice is preserved.
|
---|
9 |
|
---|
10 | dnl From Jim Meyering
|
---|
11 |
|
---|
12 | AC_DEFUN([gl_TIMESPEC],
|
---|
13 | [
|
---|
14 | dnl Prerequisites of lib/timespec.h.
|
---|
15 | AC_REQUIRE([AC_C_INLINE])
|
---|
16 | AC_REQUIRE([AC_HEADER_TIME])
|
---|
17 | AC_CHECK_HEADERS_ONCE(sys/time.h)
|
---|
18 | gl_CHECK_TYPE_STRUCT_TIMESPEC
|
---|
19 |
|
---|
20 | dnl Persuade glibc and Solaris <time.h> to declare nanosleep.
|
---|
21 | AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
|
---|
22 |
|
---|
23 | AC_CHECK_DECLS(nanosleep, , , [#include <time.h>])
|
---|
24 | ])
|
---|
25 |
|
---|
26 | dnl Define HAVE_STRUCT_TIMESPEC if `struct timespec' is declared
|
---|
27 | dnl in time.h or sys/time.h.
|
---|
28 |
|
---|
29 | AC_DEFUN([gl_CHECK_TYPE_STRUCT_TIMESPEC],
|
---|
30 | [
|
---|
31 | dnl Persuade pedantic Solaris to declare struct timespec.
|
---|
32 | AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
|
---|
33 |
|
---|
34 | AC_REQUIRE([AC_HEADER_TIME])
|
---|
35 | AC_CHECK_HEADERS_ONCE(sys/time.h)
|
---|
36 | AC_CACHE_CHECK([for struct timespec], fu_cv_sys_struct_timespec,
|
---|
37 | [AC_TRY_COMPILE(
|
---|
38 | [
|
---|
39 | # if TIME_WITH_SYS_TIME
|
---|
40 | # include <sys/time.h>
|
---|
41 | # include <time.h>
|
---|
42 | # else
|
---|
43 | # if HAVE_SYS_TIME_H
|
---|
44 | # include <sys/time.h>
|
---|
45 | # else
|
---|
46 | # include <time.h>
|
---|
47 | # endif
|
---|
48 | # endif
|
---|
49 | ],
|
---|
50 | [static struct timespec x; x.tv_sec = x.tv_nsec;],
|
---|
51 | fu_cv_sys_struct_timespec=yes,
|
---|
52 | fu_cv_sys_struct_timespec=no)
|
---|
53 | ])
|
---|
54 |
|
---|
55 | if test $fu_cv_sys_struct_timespec = yes; then
|
---|
56 | AC_DEFINE(HAVE_STRUCT_TIMESPEC, 1,
|
---|
57 | [Define if struct timespec is declared in <time.h>. ])
|
---|
58 | fi
|
---|
59 | ])
|
---|