]> git.sesse.net Git - movit/blobdiff - main.cpp
<sys/time.h> is needed for gettimeofday.
[movit] / main.cpp
index 9a9a3eac7b7df1c380d28879ac4b12401abb4615..8389cad581768dea43cea63d865797332c5161f0 100644 (file)
--- a/main.cpp
+++ b/main.cpp
@@ -8,6 +8,7 @@
 #include <string.h>
 #include <math.h>
 #include <time.h>
 #include <string.h>
 #include <math.h>
 #include <time.h>
+#include <sys/time.h>
 #include <assert.h>
 
 #include <string>
 #include <assert.h>
 
 #include <string>
@@ -227,9 +228,14 @@ int main(int argc, char **argv)
 
        make_hsv_wheel_texture();
 
 
        make_hsv_wheel_texture();
 
-       struct timespec start, now;
        int frame = 0, screenshot = 0;
        int frame = 0, screenshot = 0;
+#if _POSIX_C_SOURCE >= 199309L
+       struct timespec start, now;
        clock_gettime(CLOCK_MONOTONIC, &start);
        clock_gettime(CLOCK_MONOTONIC, &start);
+#else
+       struct timeval start, now;
+       gettimeofday(&start, NULL);
+#endif
 
        while (!quit) {
                SDL_Event event;
 
        while (!quit) {
                SDL_Event event;
@@ -280,9 +286,15 @@ int main(int argc, char **argv)
                check_error();
 
 #if 1
                check_error();
 
 #if 1
+#if _POSIX_C_SOURCE >= 199309L
                clock_gettime(CLOCK_MONOTONIC, &now);
                double elapsed = now.tv_sec - start.tv_sec +
                        1e-9 * (now.tv_nsec - start.tv_nsec);
                clock_gettime(CLOCK_MONOTONIC, &now);
                double elapsed = now.tv_sec - start.tv_sec +
                        1e-9 * (now.tv_nsec - start.tv_nsec);
+#else
+               gettimeofday(&now, NULL);
+               double elapsed = now.tv_sec - start.tv_sec +
+                       1e-6 * (now.tv_usec - start.tv_usec);
+#endif
                printf("%d frames in %.3f seconds = %.1f fps (%.1f ms/frame)\n",
                        frame, elapsed, frame / elapsed,
                        1e3 * elapsed / frame);
                printf("%d frames in %.3f seconds = %.1f fps (%.1f ms/frame)\n",
                        frame, elapsed, frame / elapsed,
                        1e3 * elapsed / frame);