date: make %N work without -lrt on glibc
No binary (build failed)
—
(log yok)
| @@ -93,6 +93,9 @@ | |
| //config: MMDDhhmm[[YY]YY][.ss] format. | |
| #include "libbb.h" | |
| + | #if ENABLE_FEATURE_DATE_NANO |
| + | # include <sys/syscall.h> |
| + | #endif |
| enum { | |
| OPT_RFC2822 = (1 << 0), /* R */ | |
| @@ -208,7 +211,9 @@ int date_main(int argc UNUSED_PARAM, char **argv) | |
| #endif | |
| } else { | |
| #if ENABLE_FEATURE_DATE_NANO | |
| - | clock_gettime(CLOCK_REALTIME, &ts); |
| + | /* libc has incredibly messy way of doing this, |
| + | * typically requiring -lrt. We just skip all this mess */ |
| + | syscall(__NR_clock_gettime, CLOCK_REALTIME, &ts); |
| #else | |
| time(&ts.tv_sec); | |
| #endif | |