From 89bc16599528f4978d3c7767be0561bb6c66cd86 Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Mon, 20 Feb 2012 18:26:58 +0000 Subject: sync with x_misc.c from pure-data.git 0.42-1 svn path=/trunk/; revision=16005 --- externals/vanilla/cputime.c | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) (limited to 'externals/vanilla/cputime.c') diff --git a/externals/vanilla/cputime.c b/externals/vanilla/cputime.c index 875c065c..a8246cc3 100644 --- a/externals/vanilla/cputime.c +++ b/externals/vanilla/cputime.c @@ -9,45 +9,44 @@ #include #include #include -#ifdef UNISTD +#ifdef _WIN32 +#include +#include +#else #include #include #include #include #include -#endif -#ifdef _WIN32 -#include -#include -#endif +#endif /* _WIN32 */ #if defined (__APPLE__) || defined (__FreeBSD__) #define CLOCKHZ CLK_TCK #endif -#if defined (__linux__) +#if defined (__linux__) || defined (__CYGWIN__) || defined (ANDROID) #define CLOCKHZ sysconf(_SC_CLK_TCK) #endif +#if defined (__FreeBSD_kernel__) || defined(__GNU__) +#include +#define CLOCKHZ CLOCKS_PER_SEC +#endif static t_class *cputime_class; typedef struct _cputime { t_object x_obj; -#ifdef UNISTD - struct tms x_setcputime; -#endif #ifdef _WIN32 LARGE_INTEGER x_kerneltime; LARGE_INTEGER x_usertime; int x_warned; -#endif +#else + struct tms x_setcputime; +#endif /* _WIN32 */ } t_cputime; static void cputime_bang(t_cputime *x) { -#ifdef UNISTD - times(&x->x_setcputime); -#endif #ifdef _WIN32 FILETIME ignorethis, ignorethat; BOOL retval; @@ -61,12 +60,14 @@ static void cputime_bang(t_cputime *x) x->x_kerneltime.QuadPart = 0; x->x_usertime.QuadPart = 0; } -#endif +#else + times(&x->x_setcputime); +#endif /* _WIN32 */ } static void cputime_bang2(t_cputime *x) { -#ifdef UNISTD +#ifndef _WIN32 t_float elapsedcpu; struct tms newcputime; times(&newcputime); @@ -74,8 +75,7 @@ static void cputime_bang2(t_cputime *x) newcputime.tms_utime + newcputime.tms_stime - x->x_setcputime.tms_utime - x->x_setcputime.tms_stime) / CLOCKHZ; outlet_float(x->x_obj.ob_outlet, elapsedcpu); -#endif -#ifdef _WIN32 +#else t_float elapsedcpu; FILETIME ignorethis, ignorethat; LARGE_INTEGER usertime, kerneltime; @@ -89,7 +89,7 @@ static void cputime_bang2(t_cputime *x) (usertime.QuadPart - x->x_usertime.QuadPart)); else elapsedcpu = 0; outlet_float(x->x_obj.ob_outlet, elapsedcpu); -#endif +#endif /* NOT _WIN32 */ } static void *cputime_new(void) -- cgit v1.2.1