1#serial 11 2 3# Copyright (C) 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc. 4# This file is free software; the Free Software Foundation 5# gives unlimited permission to copy and/or distribute it, 6# with or without modifications, as long as this notice is preserved. 7 8dnl From Jim Meyering 9 10AC_DEFUN([gl_TIMESPEC], 11[ 12 AC_LIBSOURCES([timespec.h]) 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 <time.h> to declare nanosleep(). 21 AC_REQUIRE([AC_GNU_SOURCE]) 22 23 AC_CHECK_DECLS(nanosleep, , , [#include <time.h>]) 24]) 25 26dnl Define HAVE_STRUCT_TIMESPEC if `struct timespec' is declared 27dnl in time.h or sys/time.h. 28 29AC_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]) 60