From e97c817092fa49165b57021e4b6c0a5ad852e589 Mon Sep 17 00:00:00 2001
From: Bruce Momjian <bruce@momjian.us>
Date: Wed, 8 Sep 2004 19:43:12 +0000
Subject: [PATCH] Use _timezone global on Cygwin instead of timezone.

---
 config/c-library.m4                 |  8 ++++++--
 configure                           |  4 ++++
 src/include/port.h                  | 10 +++++++++-
 src/interfaces/ecpg/pgtypeslib/dt.h |  8 --------
 src/timezone/pgtz.c                 |  8 ++------
 5 files changed, 21 insertions(+), 17 deletions(-)

diff --git a/config/c-library.m4 b/config/c-library.m4
index 6385ab36d41..96e7e18b158 100644
--- a/config/c-library.m4
+++ b/config/c-library.m4
@@ -1,5 +1,5 @@
 # Macros that test various C library quirks
-# $PostgreSQL: pgsql/config/c-library.m4,v 1.26 2004/06/07 22:39:44 momjian Exp $
+# $PostgreSQL: pgsql/config/c-library.m4,v 1.27 2004/09/08 19:43:00 momjian Exp $
 
 
 # PGAC_VAR_INT_TIMEZONE
@@ -10,7 +10,11 @@ AC_DEFUN([PGAC_VAR_INT_TIMEZONE],
 [AC_CACHE_CHECK(for int timezone, pgac_cv_var_int_timezone,
 [AC_TRY_LINK([#include <time.h>
 int res;],
-  [res = timezone / 60;],
+  [#ifndef __CYGWIN__
+res = timezone / 60;
+#else
+res = _timezone / 60;
+#endif],
   [pgac_cv_var_int_timezone=yes],
   [pgac_cv_var_int_timezone=no])])
 if test x"$pgac_cv_var_int_timezone" = xyes ; then
diff --git a/configure b/configure
index 9b0dc313434..073e3c467fa 100755
--- a/configure
+++ b/configure
@@ -10725,7 +10725,11 @@ int res;
 int
 main ()
 {
+#ifndef __CYGWIN__
 res = timezone / 60;
+#else
+res = _timezone / 60;
+#endif
   ;
   return 0;
 }
diff --git a/src/include/port.h b/src/include/port.h
index e3e4eda4569..080026e1c89 100644
--- a/src/include/port.h
+++ b/src/include/port.h
@@ -6,7 +6,7 @@
  * Portions Copyright (c) 1996-2004, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $PostgreSQL: pgsql/src/include/port.h,v 1.57 2004/08/29 21:08:48 tgl Exp $
+ * $PostgreSQL: pgsql/src/include/port.h,v 1.58 2004/09/08 19:43:07 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -180,6 +180,14 @@ extern int	win32_open(const char *, int,...);
 #define pclose(a) _pclose(a)
 #endif
 
+/* Global variable holding time zone information. */
+#if !defined(__CYGWIN__)
+#define TIMEZONE_GLOBAL timezone
+#else
+#define TIMEZONE_GLOBAL _timezone
+#define tzname _tzname			/* should be in time.h? */
+#endif
+
 extern int	copydir(char *fromdir, char *todir);
 
 /* Missing rand functions */
diff --git a/src/interfaces/ecpg/pgtypeslib/dt.h b/src/interfaces/ecpg/pgtypeslib/dt.h
index fa74a23f4ba..001e0fc4af4 100644
--- a/src/interfaces/ecpg/pgtypeslib/dt.h
+++ b/src/interfaces/ecpg/pgtypeslib/dt.h
@@ -216,14 +216,6 @@ do { \
 } while(0)
 #endif
 
-/* Global variable holding time zone information. */
-#if !defined(__CYGWIN__) && !defined(WIN32)
-#define TIMEZONE_GLOBAL timezone
-#else
-#define TIMEZONE_GLOBAL _timezone
-#define tzname _tzname			/* should be in time.h? */
-#endif
-
 /*
  * Date/time validation
  * Include check for leap year.
diff --git a/src/timezone/pgtz.c b/src/timezone/pgtz.c
index f12b025e92d..e8b0fe75f88 100644
--- a/src/timezone/pgtz.c
+++ b/src/timezone/pgtz.c
@@ -6,7 +6,7 @@
  * Portions Copyright (c) 1996-2004, PostgreSQL Global Development Group
  *
  * IDENTIFICATION
- *	  $PostgreSQL: pgsql/src/timezone/pgtz.c,v 1.27 2004/09/02 01:15:06 momjian Exp $
+ *	  $PostgreSQL: pgsql/src/timezone/pgtz.c,v 1.28 2004/09/08 19:43:12 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -96,11 +96,7 @@ get_timezone_offset(struct tm * tm)
 #if defined(HAVE_STRUCT_TM_TM_ZONE)
 	return tm->tm_gmtoff;
 #elif defined(HAVE_INT_TIMEZONE)
-#ifdef HAVE_UNDERSCORE_TIMEZONE
-	return -_timezone;
-#else
-	return -timezone;
-#endif
+	return -TIMEZONE_GLOBAL;
 #else
 #error No way to determine TZ? Can this happen?
 #endif
-- 
GitLab