3 # Copyright (C) 2000, 2001, 2003, 2004, 2005, 2006 Free Software
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.
12 AC_DEFUN([gl_TIMESPEC],
14 AC_LIBSOURCES([timespec.h])
16 dnl Prerequisites of lib/timespec.h.
17 AC_REQUIRE([AC_C_INLINE])
18 AC_REQUIRE([AC_HEADER_TIME])
19 AC_CHECK_HEADERS_ONCE(sys/time.h)
20 gl_CHECK_TYPE_STRUCT_TIMESPEC
22 dnl Persuade glibc and Solaris <time.h> to declare nanosleep.
23 AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
25 AC_CHECK_DECLS(nanosleep, , , [#include <time.h>])
28 dnl Define HAVE_STRUCT_TIMESPEC if `struct timespec' is declared
29 dnl in time.h or sys/time.h.
31 AC_DEFUN([gl_CHECK_TYPE_STRUCT_TIMESPEC],
33 dnl Persuade pedantic Solaris to declare struct timespec.
34 AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
36 AC_REQUIRE([AC_HEADER_TIME])
37 AC_CHECK_HEADERS_ONCE(sys/time.h)
38 AC_CACHE_CHECK([for struct timespec], fu_cv_sys_struct_timespec,
41 # if TIME_WITH_SYS_TIME
42 # include <sys/time.h>
46 # include <sys/time.h>
52 [static struct timespec x; x.tv_sec = x.tv_nsec;],
53 fu_cv_sys_struct_timespec=yes,
54 fu_cv_sys_struct_timespec=no)
57 if test $fu_cv_sys_struct_timespec = yes; then
58 AC_DEFINE(HAVE_STRUCT_TIMESPEC, 1,
59 [Define if struct timespec is declared in <time.h>. ])