ref: eeb15a2bd7b2fa6333937cdc7ec93df4a4522447
parent: 6212e95d0985e27dc4161dbf1fcee82d3843f31d
author: Jacob Moody <moody@posixcafe.org>
date: Fri Dec 12 00:13:50 EST 2025
libnpe: add nanosleep()
--- a/include/npe/time.h
+++ b/include/npe/time.h
@@ -38,5 +38,6 @@
size_t strftime(char *s, size_t max, const char *format, const struct tm *tm);
time_t mktime(struct tm *tm);
int clock_gettime(clockid_t clockid, struct timespec *tp);
+int nanosleep(struct timespec *req, struct timespec *rem);
#endif
--- a/libnpe/mkfile
+++ b/libnpe/mkfile
@@ -52,6 +52,7 @@
mkdir.$O\
mkstemp.$O\
mktime.$O\
+ nanosleep.$O\
opendir.$O\
pclose.$O\
popen.$O\
--- /dev/null
+++ b/libnpe/nanosleep.c
@@ -1,0 +1,15 @@
+#include <unistd.h>
+#include <npe/time.h>
+#include "_npe.h"
+
+int
+nanosleep(struct timespec *req, struct timespec *rem)
+{+ uvlong ns;
+
+ ns = req->tv_sec * 1000000000 + req->tv_nsec;
+ npe_nsleep(ns);
+ if(rem)
+ rem->tv_sec = rem->tv_nsec = 0;
+ return 0;
+}
--
⑨