diff --git a/userspace/libraries/LibC/CMakeLists.txt b/userspace/libraries/LibC/CMakeLists.txt index b5a8b054..1c6036eb 100644 --- a/userspace/libraries/LibC/CMakeLists.txt +++ b/userspace/libraries/LibC/CMakeLists.txt @@ -23,6 +23,7 @@ set(LIBC_SOURCES sys/select.cpp sys/socket.cpp sys/stat.cpp + sys/time.cpp sys/wait.cpp termios.cpp time.cpp diff --git a/userspace/libraries/LibC/sys/time.cpp b/userspace/libraries/LibC/sys/time.cpp new file mode 100644 index 00000000..27637d33 --- /dev/null +++ b/userspace/libraries/LibC/sys/time.cpp @@ -0,0 +1,15 @@ +#include +#include + +int gettimeofday(struct timeval* __restrict tp, void* __restrict tzp) +{ + // If tzp is not a null pointer, the behavior is unspecified. + (void)tzp; + + timespec ts; + clock_gettime(CLOCK_REALTIME, &ts); + + tp->tv_sec = ts.tv_sec; + tp->tv_usec = ts.tv_nsec / 1000; + return 0; +}