Really ugly fix for compiling Time.lhs on linux/glibc.
#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>