-\f
-
-/* EMACS_CURRENT_TIME_ZONE (int *OFFSET, int *SAVINGS_FLAG,
- char *STANDARD_ABBR, char *SAVINGS_ABBR);
- expands to a statement which stores information about the current
- time zone in its arguments.
-
- *OFFSET is set to the number of minutes EAST of Greenwich at which
- the site's time zone is located. This should describe the offset
- to standard time only; if some sort of daylight savings time is in
- effect, that should not affect this value. Note that the tm_gmtoff
- member of the struct tm returned by localtime is adjusted for
- daylight savings, so you don't want to use localtime to set
- *OFFSET; gettimeofday does the right thing.
-
- *SAVINGS_FLAG is set to 1 if some sort of daylight savings time is
- currently in effect, or 0 if no seasonal adjustment is currently
- active.
-
- *STANDARD_ABBR points to an array of at least 10 characters, which
- should be set to the standard abbreviation for the time zone name
- when daylight savings time is not active. For example, EDT would
- be appropriate for the Eastern time zone of the USA.
-
- *SAVINGS_ABBR points to an array of at least 10 characters, which
- should be set to the standard abbreviation for the time zone name
- when daylight savings time is active. For example, EST would be
- appropriate for the Eastern time zone of the USA.
-
- If the operating system cannot provide all this information, then
- this macro will not be defined. */
-
-
-/* The operating system configuration file can define
- EMACS_CURRENT_TIME_ZONE. If not, we'll take a shot at it here. */
-
-#ifndef EMACS_CURRENT_TIME_ZONE
-
-/* System V derivatives have a timezone global variable. */
-#ifdef USG
-#define EMACS_GET_TZ_OFFSET(offset) \
- do { \
- tzset (); \
- *(offset) = timezone; \
- } while (0)
-#endif
-
-/* If we have timeval, then we have gettimeofday; that's half the battle. */
-#if defined (HAVE_TIMEVAL) && !defined (EMACS_GET_TZ_OFFSET)
-#define EMACS_GET_TZ_OFFSET(offset) \
- do { \
- struct timeval dummy; \
- struct timezone zoneinfo; \
- \
- gettimeofday (&dummy, &zoneinfo); \
- *(offset) = -zoneinfo.tz_minuteswest; \
- } while (0)
-#endif /* ! defined (HAVE_TIMEVAL) */
-
-/* The following sane systems have a tzname array. The timezone() function
- is a stupid idea; timezone names can only be determined geographically,
- not by Greenwich offset. */
-#if defined (ultrix) || defined (hpux) || defined (_AIX) || defined (USG)
+#define EMACS_TIME_EQ(T1, T2) (EMACS_TIME_CMP (T1, T2) == 0)
+#define EMACS_TIME_NE(T1, T2) (EMACS_TIME_CMP (T1, T2) != 0)
+#define EMACS_TIME_GT(T1, T2) (EMACS_TIME_CMP (T1, T2) > 0)
+#define EMACS_TIME_GE(T1, T2) (EMACS_TIME_CMP (T1, T2) >= 0)
+#define EMACS_TIME_LT(T1, T2) (EMACS_TIME_CMP (T1, T2) < 0)
+#define EMACS_TIME_LE(T1, T2) (EMACS_TIME_CMP (T1, T2) <= 0)