From b321a6e3cc070ece1f388ea16a4eaab44d32963b Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Tue, 7 Dec 2004 20:44:46 +0000 Subject: [PATCH] 2004-12-07 Roland McGrath * rt/tst-timer5.c (setup_test): New function. (TEST_CLOCK_MISSING): Use it to punt test if timer_create does not support CLOCK_MONOTONIC. --- rt/tst-timer5.c | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/rt/tst-timer5.c b/rt/tst-timer5.c index 2683021eda..6466c8efc1 100644 --- a/rt/tst-timer5.c +++ b/rt/tst-timer5.c @@ -4,10 +4,34 @@ #include #if defined CLOCK_MONOTONIC && defined _POSIX_MONOTONIC_CLOCK + # define TEST_CLOCK CLOCK_MONOTONIC # define TEST_CLOCK_MISSING(clock) \ - (sysconf (_SC_MONOTONIC_CLOCK) > 0 ? NULL : #clock) + (setup_test () ? "CLOCK_MONOTONIC" : NULL) + +# include + +static int +setup_test (void) +{ + if (sysconf (_SC_MONOTONIC_CLOCK) <= 0) + return 1; + + /* The user-level timers implementation doesn't support CLOCK_MONOTONIC, + even though sysconf claims it will. */ + timer_t t; + if (timer_create (TEST_CLOCK, NULL, &t) != 0) + { + printf ("timer_create: %m\n"); + return 1; + } + timer_delete (t); + + return 0; +} + # include "tst-timer4.c" + #else # define TEST_FUNCTION 0 # include "../test-skeleton.c"