From 35bb50cb53da808f5fb6eda87896a7b57e2f4292 Mon Sep 17 00:00:00 2001
From: simonm <unknown>
Date: Thu, 28 May 1998 14:05:32 +0000
Subject: [PATCH] [project @ 1998-05-28 14:05:32 by simonm] Really ugly fix for
 compiling Time.lhs on linux/glibc.

---
 ghc/lib/std/cbits/timezone.h | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/ghc/lib/std/cbits/timezone.h b/ghc/lib/std/cbits/timezone.h
index 46b907f269c5..e9b4bdaf38a6 100644
--- a/ghc/lib/std/cbits/timezone.h
+++ b/ghc/lib/std/cbits/timezone.h
@@ -3,6 +3,19 @@
 
 #define _OSF_SOURCE
 
+#if linux_TARGET_OS
+/* Sigh, RedHat 5 has the TM_ZONE stuff, but only when _BSD_SOURCE is
+ * on.  The configure script erroneously says we've got TM_ZONE, so
+ * make sure we use the TZNAME stuff instead.
+ *
+ * Aside: tzname is POSIX, whereas tm_zone is BSD.  We should be using
+ *  tzname by preference, but the GNU configure stuff gives us HAVE_TM_ZONE
+ *  in preference to HAVE_TZNAME.  More sighs.
+ */
+# undef  HAVE_TM_ZONE
+# define HAVE_TZNAME  1
+#endif
+
 #if TIME_WITH_SYS_TIME
 # include <sys/time.h>
 # include <time.h>
-- 
GitLab