--- swlibs/fxmisc/fxos.c.orig Wed Jan 15 10:01:58 2003 +++ swlibs/fxmisc/fxos.c Sun Jul 1 01:56:10 2007 @@ -43,13 +43,26 @@ #include #endif #if !macintosh -/* return current time in seconds (floating point) */ -float fxTime(void) -{ #if defined ( __sparc__ ) || defined ( __DJGPP__ ) /* times returns 0 in BSD Unix, so we use ftime instead */ # include # include +#elif defined(__FreeBSD__) +# include +#elif defined ( WIN32 ) || ( __DOS__ ) +# include +# define times(a) clock() +# define HZ CLOCKS_PER_SEC +#else +# include +# include +# include +#endif + +/* return current time in seconds (floating point) */ +float fxTime(void) +{ +#if defined ( __sparc__ ) || defined ( __DJGPP__ ) struct timeb tb; static time_t once; // saves first time value @@ -59,22 +72,12 @@ return (tb.time - once) + tb.millitm * .001; #elif defined(__FreeBSD__) -#include struct timeval t; struct timezone tz; gettimeofday(&t, &tz); return ((float)t.tv_sec + ((float)t.tv_usec)/1000000.0); #else -#if defined ( WIN32 ) || ( __DOS__ ) -# include -# define times(a) clock() -# define HZ CLOCKS_PER_SEC -#else -# include -# include -# include struct tms foo; -#endif return times(&foo)/(float)HZ; #endif }