/* timespec -- System time interface
- Copyright (C) 2000, 2002, 2004-2005, 2007, 2009-2012 Free Software
+ Copyright (C) 2000, 2002, 2004-2005, 2007, 2009-2014 Free Software
Foundation, Inc.
This program is free software: you can redistribute it and/or modify
# include <time.h>
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
_GL_INLINE_HEADER_BEGIN
+#ifndef _GL_TIMESPEC_INLINE
+# define _GL_TIMESPEC_INLINE _GL_INLINE
+#endif
+
+/* Resolution of timespec time stamps (in units per second), and log
+ base 10 of the resolution. */
+
+enum { TIMESPEC_RESOLUTION = 1000000000 };
+enum { LOG10_TIMESPEC_RESOLUTION = 9 };
+
+/* Return a timespec with seconds S and nanoseconds NS. */
+
+_GL_TIMESPEC_INLINE struct timespec
+make_timespec (time_t s, long int ns)
+{
+ struct timespec r;
+ r.tv_sec = s;
+ r.tv_nsec = ns;
+ return r;
+}
/* Return negative, zero, positive if A < B, A == B, A > B, respectively.
The (int) cast avoids a gcc -Wconversion warning. */
-#ifndef _GL_TIMESPEC_INLINE
-# define _GL_TIMESPEC_INLINE _GL_INLINE
-#endif
-
_GL_TIMESPEC_INLINE int
timespec_cmp (struct timespec a, struct timespec b)
{