shithub: npe

Download patch

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;
+}
--