X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2049ba38adafa0ec146880de29f26e32dd69a125..d9a56bdeaf27254ad19694a0c0c277385f0613c0:/src/common/timercmn.cpp diff --git a/src/common/timercmn.cpp b/src/common/timercmn.cpp index a1e02d73a3..7c1f7ccdc3 100644 --- a/src/common/timercmn.cpp +++ b/src/common/timercmn.cpp @@ -28,18 +28,23 @@ #include "wx/timer.h" -#ifdef __SVR4__ +#if defined(__SVR4__) && !defined(__SYSV__) #define __SYSV__ #endif #include + +#ifndef __WXMAC__ #include +#endif -#if (!defined(__SC__) && !defined(__SGI__) && !defined(__GNUWIN32__)) || defined(__MINGW32__) +#if (!defined(__SC__) && !defined(__SGI__) && !defined(__GNUWIN32__) && !defined(__MWERKS__)) || defined(__MINGW32__) #include #endif -#if defined(__linux__) || defined(__SVR4__) || defined(__SYSV__) || defined(__SGI__) || defined(__ALPHA__) || defined(__GNUWIN32__) +#if defined(__linux__) || defined(__SVR4__) || defined(__SYSV__) || defined(__SGI__) || \ + defined(__ALPHA__) || defined(__GNUWIN32__) || defined(__FreeBSD__) || defined(__NetBSD__) || \ + defined(__SALFORDC__) #include #endif @@ -47,10 +52,11 @@ #include "windows.h" #endif -#if defined(__SUN__) || defined(__OSF__) +#if defined(__SUN__) || defined(__OSF__) || defined(__FreeBSD__) // At least on Sun, ftime is undeclared. // Need to be verified on other platforms. extern "C" int ftime(struct timeb *tp); +//extern "C" int gettimeofday(struct timeval *tp, void *); // extern "C" time_t time(time_t); // #include #if defined(__SVR4__) && !defined(__ALPHA__) @@ -69,13 +75,13 @@ void wxStartTimer(void) { #if defined(__xlC__) || defined(__AIX__) || defined(__SVR4__) || defined(__SYSV__) || (defined(__GNUWIN32__) && !defined(__MINGW32__)) // || defined(__AIXV3__) struct timeval tp; -#ifdef __SYSV__ +#if defined(__SYSV__) || (defined (__GNUWIN32__) && !defined (__MINGW32__)) gettimeofday(&tp, (struct timezone *)NULL); #else gettimeofday(&tp); #endif wxStartTime = 1000*tp.tv_sec + tp.tv_usec/1000; -#elif (defined(__SC__) || defined(__SGI__) || defined(___BSDI__) || defined(__ALPHA__) || defined(__MINGW32__)) +#elif (defined(__SC__) || defined(__SGI__) || defined(___BSDI__) || defined(__ALPHA__) || defined(__MINGW32__) || defined(__MWERKS__) || defined(__FreeBSD__) ) time_t t0; struct tm *tp; time(&t0); @@ -93,7 +99,7 @@ long wxGetElapsedTime(bool resetTimer) { #if defined(__xlC__) || defined(__AIX__) || defined(__SVR4__) || defined(__SYSV__) || (defined(__GNUWIN32__) && !defined(__MINGW32__)) // || defined(__AIXV3__) struct timeval tp; -#ifdef __SYSV__ +#if defined(__SYSV__) || (defined (__GNUWIN32__) && !defined (__MINGW32__)) gettimeofday(&tp, (struct timezone *)NULL); #else gettimeofday(&tp); @@ -102,7 +108,7 @@ long wxGetElapsedTime(bool resetTimer) long newTime = 1000*tp.tv_sec + tp.tv_usec / 1000; if (resetTimer) wxStartTime = newTime; -#elif (defined(__SC__) || defined(__SGI__) || defined(___BSDI__) || defined(__ALPHA__) || defined(__MINGW32__)) +#elif (defined(__SC__) || defined(__SGI__) || defined(___BSDI__) || defined(__ALPHA__) || defined(__MINGW32__)|| defined(__MWERKS__) || defined(__FreeBSD__)) time_t t0; struct tm *tp; time(&t0); @@ -131,7 +137,7 @@ bool wxGetLocalTime(long *timeZone, int *dstObserved) struct tm *tp; time(&t0); tp = localtime(&t0); - *timeZone = timezone; // tp->tm_gmtoff; // ??? + *timeZone = _timezone; // tp->tm_gmtoff; // ??? *dstObserved = tp->tm_isdst; #elif defined(__MINGW32__) time_t t0; @@ -144,17 +150,23 @@ bool wxGetLocalTime(long *timeZone, int *dstObserved) *dstObserved = tp->tm_isdst; #else -#if (((defined(__SYSV__) && !defined(__HPUX__)) || defined(__MSDOS__) || defined(__WXMSW__)) && !defined(__GNUWIN32__)) -#ifdef __BORLANDC__ +#if (((defined(__SYSV__) && !defined(__HPUX__)) || defined(__MSDOS__) || defined(__WXMSW__))\ + && !defined(__GNUWIN32__) && !defined(__MWERKS__) ) +#if defined(__BORLANDC__) /* Borland uses underscores */ *timeZone = _timezone; *dstObserved = _daylight; +#elif defined(__SALFORDC__) + *timeZone = _timezone; + *dstObserved = daylight; #else *timeZone = timezone; *dstObserved = daylight; #endif -#elif defined(__xlC__) || defined(__AIX__) || defined(__SVR4__) || defined(__SYSV__) || (defined(__GNUWIN32__) && !defined(__MINGW32__)) // || defined(__AIXV3__) +#elif defined(__xlC__) || defined(__AIX__) || defined(__SVR4__) || defined(__SYSV__) || defined(__MWERKS__) || (defined(__GNUWIN32__) && !defined(__MINGW32__)) // || defined(__AIXV3__) +#ifndef __MWERKS__ // shouldn't this be one scope below ? struct timeval tp; +#endif #if defined(__SYSV__) || (defined(__GNUWIN32__) && !defined(__MINGW32)) struct timezone tz; gettimeofday(&tp, &tz); @@ -165,9 +177,15 @@ bool wxGetLocalTime(long *timeZone, int *dstObserved) struct tm *tp; time(&t0); tp = localtime(&t0); +#ifndef __MWERKS__ *timeZone = tp->tm_gmtoff; // ??? +#else + *timeZone = 0 ; +#endif *dstObserved = tp->tm_isdst; #endif +#elif defined(__WXSTUBS__) + return FALSE; #else // #error wxGetLocalTime not implemented. struct timeval tp; @@ -187,7 +205,7 @@ long wxGetCurrentTime(void) { #if defined(__xlC__) || defined(__AIX__) || defined(__SVR4__) || defined(__SYSV__) // || defined(__AIXV3__) struct timeval tp; -#ifdef __SYSV__ +#if defined(__SYSV__) || (defined (__GNUWIN32__) && !defined (__MINGW32__) || defined(__FreeBSD__)) gettimeofday(&tp, (struct timezone *)NULL); #else gettimeofday(&tp);