mirror of
git://git.musl-libc.org/musl
synced 2024-12-17 12:14:42 +00:00
add C11 timespec_get function, with associated time.h changes for C11
based on patch by Jens Gustedt for inclusion with C11 threads implementation, but committed separately since it's independent of threads.
This commit is contained in:
parent
86876dbec5
commit
6eb19505bc
@ -17,11 +17,11 @@ extern "C" {
|
||||
#define __NEED_size_t
|
||||
#define __NEED_time_t
|
||||
#define __NEED_clock_t
|
||||
#define __NEED_struct_timespec
|
||||
|
||||
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|
||||
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|
||||
|| defined(_BSD_SOURCE)
|
||||
#define __NEED_struct_timespec
|
||||
#define __NEED_clockid_t
|
||||
#define __NEED_timer_t
|
||||
#define __NEED_pid_t
|
||||
@ -59,9 +59,11 @@ struct tm *gmtime (const time_t *);
|
||||
struct tm *localtime (const time_t *);
|
||||
char *asctime (const struct tm *);
|
||||
char *ctime (const time_t *);
|
||||
int timespec_get(struct timespec *, int);
|
||||
|
||||
#define CLOCKS_PER_SEC 1000000L
|
||||
|
||||
#define TIME_UTC 1
|
||||
|
||||
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|
||||
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|
||||
|
12
src/time/timespec_get.c
Normal file
12
src/time/timespec_get.c
Normal file
@ -0,0 +1,12 @@
|
||||
#include <time.h>
|
||||
|
||||
int __clock_gettime(clockid_t, struct timespec *);
|
||||
|
||||
/* There is no other implemented value than TIME_UTC; all other values
|
||||
* are considered erroneous. */
|
||||
int timespec_get(struct timespec * ts, int base)
|
||||
{
|
||||
if (base != TIME_UTC) return 0;
|
||||
int ret = __clock_gettime(CLOCK_REALTIME, ts);
|
||||
return ret < 0 ? 0 : base;
|
||||
}
|
Loading…
Reference in New Issue
Block a user