Scrap DEC OSF/1 support
authorHerbert Valerio Riedel <hvr@gnu.org>
Mon, 28 Mar 2016 10:24:37 +0000 (12:24 +0200)
committerHerbert Valerio Riedel <hvr@gnu.org>
Mon, 28 Mar 2016 10:39:49 +0000 (12:39 +0200)
DEC OSF/1 (aka Tru64 UNIX) has been discontinued a few years ago already[1].

This removes the undoubtedly bitrotten support for `OSOsf3 :: OS` from GHC's
code-base.

Support for `ArchAlpha :: Arch` may be removed at some later point, as there
may still be users out there running a more or less recent Linux/alpha
distribution on their more-than-a-decade old Alpha hardware...

 [1]: https://en.wikipedia.org/wiki/Tru64_UNIX

aclocal.m4
compiler/main/DriverPipeline.hs
compiler/utils/Platform.hs
rts/RtsFlags.c

index 7616cf4..14b8481 100644 (file)
@@ -271,13 +271,10 @@ AC_DEFUN([FPTOOLS_SET_HASKELL_PLATFORM_VARS],
         haiku)
             test -z "[$]2" || eval "[$]2=OSHaiku"
             ;;
-        osf3)
-            test -z "[$]2" || eval "[$]2=OSOsf3"
-            ;;
         nto-qnx)
             test -z "[$]2" || eval "[$]2=OSQNXNTO"
             ;;
-        dragonfly|osf1|hpux|linuxaout|freebsd2|gnu|nextstep2|nextstep3|sunos4|ultrix)
+        dragonfly|hpux|linuxaout|freebsd2|gnu|nextstep2|nextstep3|sunos4|ultrix)
             test -z "[$]2" || eval "[$]2=OSUnknown"
             ;;
         aix)
@@ -814,7 +811,6 @@ case $HostPlatform in
     i386-*2\.@<:@0-9@:>@ | i386-*3\.@<:@0-3@:>@ ) fptools_cv_leading_underscore=yes ;;
     *) fptools_cv_leading_underscore=no ;;
   esac ;;
-alpha-dec-osf*) fptools_cv_leading_underscore=no;;
 i386-unknown-mingw32) fptools_cv_leading_underscore=yes;;
 x86_64-unknown-mingw32) fptools_cv_leading_underscore=no;;
 
@@ -1884,7 +1880,7 @@ case "$1-$2" in
         $3="linux"
         ;;
       # As far as I'm aware, none of these have relevant variants
-      freebsd|netbsd|openbsd|dragonfly|osf1|osf3|hpux|linuxaout|kfreebsdgnu|freebsd2|solaris2|mingw32|darwin|gnu|nextstep2|nextstep3|sunos4|ultrix|haiku)
+      freebsd|netbsd|openbsd|dragonfly|hpux|linuxaout|kfreebsdgnu|freebsd2|solaris2|mingw32|darwin|gnu|nextstep2|nextstep3|sunos4|ultrix|haiku)
         $3="$1"
         ;;
       aix*) # e.g. powerpc-ibm-aix7.1.3.0
index 89fbb42..1991bd3 100644 (file)
@@ -1834,9 +1834,8 @@ linkBinary' staticLink dflags o_files dep_packages = do
     let thread_opts
          | WayThreaded `elem` ways dflags =
             let os = platformOS (targetPlatform dflags)
-            in if os == OSOsf3 then ["-lpthread", "-lexc"]
-               else if os `elem` [OSMinGW32, OSFreeBSD, OSOpenBSD,
-                                  OSNetBSD, OSHaiku, OSQNXNTO, OSiOS, OSDarwin]
+            in if os `elem` [OSMinGW32, OSFreeBSD, OSOpenBSD,
+                             OSNetBSD, OSHaiku, OSQNXNTO, OSiOS, OSDarwin]
                then []
                else ["-lpthread"]
          | otherwise               = []
index cfd948e..600ed80 100644 (file)
@@ -84,7 +84,6 @@ data OS
         | OSNetBSD
         | OSKFreeBSD
         | OSHaiku
-        | OSOsf3
         | OSQNXNTO
         | OSAndroid
         | OSAIX
@@ -136,8 +135,6 @@ osElfTarget OSiOS       = False
 osElfTarget OSMinGW32   = False
 osElfTarget OSKFreeBSD  = True
 osElfTarget OSHaiku     = True
-osElfTarget OSOsf3      = False -- I don't know if this is right, but as
-                                -- per comment below it's safe
 osElfTarget OSQNXNTO    = False
 osElfTarget OSAndroid   = True
 osElfTarget OSAIX       = False
index cce799e..3387355 100644 (file)
@@ -154,18 +154,7 @@ void initRtsFlagsDefaults(void)
 #else
     RtsFlags.GcFlags.doIdleGC           = rtsFalse;
 #endif
-
-#if osf3_HOST_OS
-/* ToDo: Perhaps by adjusting this value we can make linking without
- * -static work (i.e., not generate a core-dumping executable)? */
-# if SIZEOF_VOID_P == 8
-    RtsFlags.GcFlags.heapBase           = 0x180000000L;
-# else
-#  error I have no idea where to begin the heap on a non-64-bit osf3 machine.
-# endif
-#else
     RtsFlags.GcFlags.heapBase           = 0;   /* means don't care */
-#endif
     RtsFlags.GcFlags.allocLimitGrace    = (100*1024) / BLOCK_SIZE;
 
 #ifdef DEBUG