diff options
author | Yang Tse <yangsita@gmail.com> | 2008-07-02 03:04:56 +0000 |
---|---|---|
committer | Yang Tse <yangsita@gmail.com> | 2008-07-02 03:04:56 +0000 |
commit | 97333deb3f6713d7d12168c8980d69cc60961063 (patch) | |
tree | 6c792c1b43a9de7cf829f7dc618a2379797da653 /acinclude.m4 | |
parent | 400d9d420517a81d5f55153b0dda90aced1cbfb3 (diff) |
fallback to gettimeofday when monotonic clock is unavailable at run-time
Diffstat (limited to 'acinclude.m4')
-rw-r--r-- | acinclude.m4 | 30 |
1 files changed, 6 insertions, 24 deletions
diff --git a/acinclude.m4 b/acinclude.m4 index ce01ab45b..f120559d5 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -1979,16 +1979,13 @@ dnl Check if monotonic clock_gettime is available. AC_DEFUN([CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC], [ AC_REQUIRE([AC_HEADER_TIME])dnl - AC_CHECK_HEADERS(sys/types.h unistd.h sys/time.h time.h) - AC_MSG_CHECKING([for POSIX always supported monotonic clock_gettime]) + AC_CHECK_HEADERS(sys/types.h sys/time.h time.h) + AC_MSG_CHECKING([for monotonic clock_gettime]) AC_COMPILE_IFELSE([ AC_LANG_PROGRAM([[ #ifdef HAVE_SYS_TYPES_H #include <sys/types.h> #endif -#ifdef HAVE_UNISTD_H -#include <unistd.h> -#endif #ifdef HAVE_SYS_TIME_H #include <sys/time.h> #ifdef TIME_WITH_SYS_TIME @@ -2000,16 +1997,8 @@ AC_DEFUN([CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC], [ #endif #endif ]],[[ -#if defined(_POSIX_MONOTONIC_CLOCK) && (_POSIX_MONOTONIC_CLOCK > 0) - /* - The monotonic clock will not be used unless the feature test macro is - defined with a value greater than zero indicating _always_ supported. - */ struct timespec ts; (void)clock_gettime(CLOCK_MONOTONIC, &ts); -#else - HAVE_CLOCK_GETTIME_MONOTONIC shall not be defined. -#endif ]]) ],[ AC_MSG_RESULT([yes]) @@ -2018,8 +2007,8 @@ AC_DEFUN([CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC], [ AC_MSG_RESULT([no]) ac_cv_func_clock_gettime="no" ]) - dnl Definition of HAVE_CLOCK_GETTIME_MONOTONIC is intentionally - dnl postponed until library linking checks for clock_gettime pass. + dnl Definition of HAVE_CLOCK_GETTIME_MONOTONIC is intentionally postponed + dnl until library linking and run-time checks for clock_gettime succeed. ]) dnl AC_DEFUN @@ -2050,9 +2039,6 @@ AC_DEFUN([CURL_CHECK_LIBS_CLOCK_GETTIME_MONOTONIC], [ #ifdef HAVE_SYS_TYPES_H #include <sys/types.h> #endif -#ifdef HAVE_UNISTD_H -#include <unistd.h> -#endif #ifdef HAVE_SYS_TIME_H #include <sys/time.h> #ifdef TIME_WITH_SYS_TIME @@ -2105,9 +2091,6 @@ AC_DEFUN([CURL_CHECK_LIBS_CLOCK_GETTIME_MONOTONIC], [ #ifdef HAVE_SYS_TYPES_H #include <sys/types.h> #endif -#ifdef HAVE_UNISTD_H -#include <unistd.h> -#endif #ifdef HAVE_SYS_TIME_H #include <sys/time.h> #ifdef TIME_WITH_SYS_TIME @@ -2119,12 +2102,11 @@ AC_DEFUN([CURL_CHECK_LIBS_CLOCK_GETTIME_MONOTONIC], [ #endif #endif ]],[[ -#if defined(_POSIX_MONOTONIC_CLOCK) && (_POSIX_MONOTONIC_CLOCK > 0) struct timespec ts; if (0 == clock_gettime(CLOCK_MONOTONIC, &ts)) exit(0); -#endif - exit(1); + else + exit(1); ]]) ],[ AC_MSG_RESULT([yes]) |