aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--coreutils/date.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/coreutils/date.c b/coreutils/date.c
index 8f9aff8b0..c737f09f3 100644
--- a/coreutils/date.c
+++ b/coreutils/date.c
@@ -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