From b48017f818e13f8c7ddb555f8fe5fa895521af7a Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Fri, 14 Jan 2011 17:26:59 +0000 Subject: another try to fix systems without CLOCK_MONOTONIC Fix a reversed typedef and also deal with the case where CLOCK_MONOTONIC is a function call and not a constant macro. --- ext/clogger_ext/broken_system_compat.h | 2 +- ext/clogger_ext/clogger.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/ext/clogger_ext/broken_system_compat.h b/ext/clogger_ext/broken_system_compat.h index ec635b1..632612b 100644 --- a/ext/clogger_ext/broken_system_compat.h +++ b/ext/clogger_ext/broken_system_compat.h @@ -4,7 +4,7 @@ */ #ifndef HAVE_TYPE_CLOCKID_T -typedef clockid_t int; +typedef int clockid_t; #endif #ifndef HAVE_CLOCK_GETTIME diff --git a/ext/clogger_ext/clogger.c b/ext/clogger_ext/clogger.c index 604b9b6..d96b046 100644 --- a/ext/clogger_ext/clogger.c +++ b/ext/clogger_ext/clogger.c @@ -25,12 +25,14 @@ * since we could've been built on a different system than we're run * under. */ -static clockid_t hopefully_CLOCK_MONOTONIC = CLOCK_MONOTONIC; +static clockid_t hopefully_CLOCK_MONOTONIC; static void check_clock(void) { struct timespec now; + hopefully_CLOCK_MONOTONIC = CLOCK_MONOTONIC; + /* we can't check this reliably at compile time */ if (clock_gettime(CLOCK_MONOTONIC, &now) == 0) return; -- cgit v1.2.3-24-ge0c7