Mercurial > hg > xemacs-beta
diff src/systime.h @ 442:abe6d1db359e r21-2-36
Import from CVS: tag r21-2-36
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:35:02 +0200 |
parents | 8de8e3f6228a |
children | 223736d75acb |
line wrap: on
line diff
--- a/src/systime.h Mon Aug 13 11:33:40 2007 +0200 +++ b/src/systime.h Mon Aug 13 11:35:02 2007 +0200 @@ -24,14 +24,14 @@ #define INCLUDED_systime_h_ #ifdef TIME_WITH_SYS_TIME -#include <sys/time.h> -#include <time.h> +# include <sys/time.h> +# include <time.h> #else -#ifdef HAVE_SYS_TIME_H -#include <sys/time.h> -#else -#include <time.h> -#endif +# ifdef HAVE_SYS_TIME_H +# include <sys/time.h> +# else +# include <time.h> +# endif #endif /* select() is supposed to be (Unix98) defined in sys/time.h, @@ -41,17 +41,33 @@ #include <unistd.h> #endif -#if defined(WINDOWSNT) && defined(HAVE_X_WINDOWS) +#ifdef WIN32_NATIVE + +/* This defines struct timeval */ +#include <winsock.h> + +struct timezone + { + int tz_minuteswest; /* minutes west of Greenwich */ + int tz_dsttime; /* type of dst correction */ + }; + +#ifdef HAVE_X_WINDOWS /* Provides gettimeofday etc */ #include <X11/Xw32defs.h> #include <X11/Xos.h> -#endif +#else +/* X11R6 on NT provides the single parameter version of this command */ +void gettimeofday (struct timeval *, struct timezone *); +#endif /* HAVE_X_WINDOWS */ + +#endif /* WIN32_NATIVE */ #ifdef HAVE_UTIME_H # include <utime.h> #endif -#if defined(HAVE_TZNAME) && !defined(WINDOWSNT) && !defined(__CYGWIN32__) +#if defined(HAVE_TZNAME) && !defined(WIN32_NATIVE) && !defined(CYGWIN) #ifndef tzname /* For SGI. */ extern char *tzname[]; /* RS6000 and others want it this way. */ #endif @@ -147,37 +163,23 @@ #define EMACS_SET_USECS(time, microseconds) ((time).tv_usec = (microseconds)) #if !defined (HAVE_GETTIMEOFDAY) -struct timezone; -int gettimeofday (struct timeval *, struct timezone *); +int gettimeofday (struct timeval *, void *); #endif /* On SVR4, the compiler may complain if given this extra BSD arg. */ #ifdef GETTIMEOFDAY_ONE_ARGUMENT -# ifdef SOLARIS2 -/* Solaris (at least) omits this prototype. IRIX5 has it and chokes if we - declare it here. */ -int gettimeofday (struct timeval *); -# endif +#define EMACS_GETTIMEOFDAY(time) gettimeofday(time) +#else +#define EMACS_GETTIMEOFDAY(time) gettimeofday(time,0) +#endif + /* According to the Xt sources, some NTP daemons on some systems may return non-normalized values. */ #define EMACS_GET_TIME(time) \ do { \ - gettimeofday (&(time)); \ + EMACS_GETTIMEOFDAY (&(time)); \ EMACS_NORMALIZE_TIME (time); \ } while (0) -#else /* not GETTIMEOFDAY_ONE_ARGUMENT */ -# ifdef SOLARIS2 -/* Solaris doesn't provide any prototype of this unless a bunch of - crap we don't define are defined. */ -int gettimeofday (struct timeval *, void *dummy); -# endif -#define EMACS_GET_TIME(time) \ -do { \ - struct timezone dummy; \ - gettimeofday (&(time), &dummy); \ - EMACS_NORMALIZE_TIME (time); \ -} while (0) -#endif /* not GETTIMEOFDAY_ONE_ARGUMENT */ #define EMACS_NORMALIZE_TIME(time) \ do { \ @@ -231,7 +233,7 @@ void get_process_times (double *user_time, double *system_time, double *real_time); -#if defined(WINDOWSNT) || defined(BROKEN_CYGWIN) || defined(__MINGW32__) +#if defined(WIN32_NATIVE) || defined(BROKEN_CYGWIN) /* setitimer emulation for Win32 (see nt.c) */ @@ -247,6 +249,6 @@ #define ITIMER_REAL 1 #define ITIMER_PROF 2 -#endif /* WINDOWSNT */ +#endif /* WIN32_NATIVE */ #endif /* INCLUDED_systime_h_ */