diff --git a/ghc/lib/std/cbits/system.c b/ghc/lib/std/cbits/system.c
index 412181b71319f9aeafdadc531c1bdd8add678182..c60071800d3877321ba64a3c9274c3308c172186 100644
--- a/ghc/lib/std/cbits/system.c
+++ b/ghc/lib/std/cbits/system.c
@@ -1,7 +1,7 @@
 /* 
  * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
  *
- * $Id: system.c,v 1.8 2000/03/28 14:29:13 simonmar Exp $
+ * $Id: system.c,v 1.9 2000/07/17 15:27:15 rrt Exp $
  *
  * system Runtime Support
  */
@@ -44,16 +44,7 @@
 StgInt
 systemCmd(StgByteArray cmd)
 {
-#if defined(mingw32_TARGET_OS)
-  if (system(cmd) < 0) {
-     cvtErrno();
-     stdErrno();
-     return -1;
-  }
-  sleep(1);
-  return 0;
-#else
-#if defined(cygwin32_TARGET_OS)
+#if defined(mingw32_TARGET_OS) || defined(cygwin32_TARGET_OS)
    /* The implementation of std. fork() has its problems
       under cygwin32-b18, so we fall back on using libc's
       system() instead. (It in turn has problems, as it
@@ -120,5 +111,4 @@ systemCmd(StgByteArray cmd)
     }
     return -1;
 #endif
-#endif
 }
diff --git a/ghc/lib/std/cbits/timezone.h b/ghc/lib/std/cbits/timezone.h
index aa28ea69d132ee3796f828f464ecd55ad890d8c5..f84c241fff19b9c649feb58751ebded2c675e043 100644
--- a/ghc/lib/std/cbits/timezone.h
+++ b/ghc/lib/std/cbits/timezone.h
@@ -1,7 +1,7 @@
 /* 
  * (c) The GRASP/AQUA Project, Glasgow University, 1994-1998
  *
- * $Id: timezone.h,v 1.9 1999/05/05 10:33:17 sof Exp $
+ * $Id: timezone.h,v 1.10 2000/07/17 15:27:15 rrt Exp $
  *
  * Time-zone support header
  */
@@ -79,15 +79,11 @@ extern char *tzname[2];
 # endif /* ! HAVE_TZNAME */
 /* Get the offset in secs from UTC, if (struct tm) doesn't supply it. */
 
-#ifdef mingw32_TARGET_OS
+#if defined(mingw32_TARGET_OS) || defined(cygwin32_TARGET_OS)
 #define timezone _timezone
-#else
-# ifdef cygwin32_TARGET_OS
-#  define timezone _timezone
-# endif
 #endif
 
-#ifndef HAVE_TIMEZONE
+#if !defined(HAVE_TIMEZONE) && !defined(mingw32_TARGET_OS)
 extern TYPE_TIMEZONE timezone;
 #endif