shared: introduce timespec-util.h

Copyright is set according to the moved code from compositor.c.

Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
diff --git a/src/compositor.c b/src/compositor.c
index 2a117d8..cafac29 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -58,31 +58,12 @@
 #include "presentation_timing-server-protocol.h"
 #include "shared/helpers.h"
 #include "shared/os-compatibility.h"
+#include "shared/timespec-util.h"
 #include "git-version.h"
 #include "version.h"
 
 #define DEFAULT_REPAINT_WINDOW 7 /* milliseconds */
 
-#define NSEC_PER_SEC 1000000000
-
-static void
-timespec_sub(struct timespec *r,
-	     const struct timespec *a, const struct timespec *b)
-{
-	r->tv_sec = a->tv_sec - b->tv_sec;
-	r->tv_nsec = a->tv_nsec - b->tv_nsec;
-	if (r->tv_nsec < 0) {
-		r->tv_sec--;
-		r->tv_nsec += NSEC_PER_SEC;
-	}
-}
-
-static int64_t
-timespec_to_nsec(const struct timespec *a)
-{
-	return (int64_t)a->tv_sec * NSEC_PER_SEC + a->tv_nsec;
-}
-
 static void
 weston_output_transform_scale_init(struct weston_output *output,
 				   uint32_t transform, uint32_t scale);