commit: 6303d515ca41d3e54a61a948dc79a7303f332f03
parent 8ed4c1a20f56d0ede0730d91e4eeb8d4c7fce5ea
Author: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Date: Thu, 24 Jul 2025 09:33:01 +0200
dev-lang/mujs: replace obsoleted gettimeofday with clock_gettime
Diffstat:
1 file changed, 46 insertions(+), 0 deletions(-)
diff --git a/patches/dev-lang/mujs/PR204-gettimeofday.patch b/patches/dev-lang/mujs/PR204-gettimeofday.patch
@@ -0,0 +1,46 @@
+From 90baeeb6b33f10c51be5f73ae56be3dfd5382463 Mon Sep 17 00:00:00 2001
+From: "Haelwenn (lanodan) Monnier" <contact@hacktivis.me>
+Date: Sun, 29 Jun 2025 14:32:50 +0200
+Subject: [PATCH] jsdate: replace obsoleted gettimeofday with clock_gettime
+
+* clock_gettime got added in POSIX.1b-1993 and SUSv2 (1997)
+* gettimeofday got marked obsolescent in POSIX.1-2008 / SUSv7 and then
+ removed in POSIX.1-2024 / SUSv8
+---
+ jsdate.c | 15 +++++++++------
+ 1 file changed, 9 insertions(+), 6 deletions(-)
+
+diff --git a/jsdate.c b/jsdate.c
+index bf1d406..f73647e 100644
+--- a/jsdate.c
++++ b/jsdate.c
+@@ -1,10 +1,13 @@
++#if defined(__unix__) || defined(__APPLE__)
++#define _DEFAULT_SOURCE
++#define _POSIX_C_SOURCE 200805L
++#endif
++
+ #include "jsi.h"
+
+ #include <time.h>
+
+-#if defined(__unix__) || defined(__APPLE__)
+-#include <sys/time.h>
+-#elif defined(_WIN32)
++#if defined(_WIN32)
+ #include <sys/timeb.h>
+ #endif
+
+@@ -13,9 +16,9 @@
+ static double Now(void)
+ {
+ #if defined(__unix__) || defined(__APPLE__)
+- struct timeval tv;
+- gettimeofday(&tv, NULL);
+- return floor(tv.tv_sec * 1000.0 + tv.tv_usec / 1000.0);
++ struct timespec ts;
++ clock_gettime(CLOCK_REALTIME, &ts);
++ return floor(ts.tv_sec * 1000.0 + ts.tv_nsec / 1000000.0);
+ #elif defined(_WIN32)
+ struct _timeb tv;
+ _ftime(&tv);