|
Packit |
6c4009 |
/* Timer test using the monotonic clock. */
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
#include <time.h>
|
|
Packit |
6c4009 |
#include <unistd.h>
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
#if defined CLOCK_MONOTONIC && defined _POSIX_MONOTONIC_CLOCK
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
# define TEST_CLOCK CLOCK_MONOTONIC
|
|
Packit |
6c4009 |
# define TEST_CLOCK_MISSING(clock) \
|
|
Packit |
6c4009 |
(setup_test () ? "CLOCK_MONOTONIC" : NULL)
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
# include <stdio.h>
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
static int
|
|
Packit |
6c4009 |
setup_test (void)
|
|
Packit |
6c4009 |
{
|
|
Packit |
6c4009 |
if (sysconf (_SC_MONOTONIC_CLOCK) <= 0)
|
|
Packit |
6c4009 |
return 1;
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
/* The user-level timers implementation doesn't support CLOCK_MONOTONIC,
|
|
Packit |
6c4009 |
even though sysconf claims it will. */
|
|
Packit |
6c4009 |
timer_t t;
|
|
Packit |
6c4009 |
if (timer_create (TEST_CLOCK, NULL, &t) != 0)
|
|
Packit |
6c4009 |
{
|
|
Packit |
6c4009 |
printf ("timer_create: %m\n");
|
|
Packit |
6c4009 |
return 1;
|
|
Packit |
6c4009 |
}
|
|
Packit |
6c4009 |
timer_delete (t);
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
return 0;
|
|
Packit |
6c4009 |
}
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
# include "tst-timer4.c"
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
#else
|
|
Packit |
6c4009 |
# define TEST_FUNCTION 0
|
|
Packit |
6c4009 |
# include "../test-skeleton.c"
|
|
Packit |
6c4009 |
#endif
|