Building GHC with hadrian on FreeBSD
authorKrzysztof Gogolewski <krz.gogolewski@gmail.com>
Sat, 17 Nov 2018 11:21:51 +0000 (12:21 +0100)
committerKrzysztof Gogolewski <krz.gogolewski@gmail.com>
Sat, 17 Nov 2018 12:51:43 +0000 (13:51 +0100)
Summary: I'm currently trying to make `hadrian` work as a build system
on FreeBSD (https://ghc.haskell.org/trac/ghc/ticket/15860).
I'm still having some issues with `libgmp` but one can get a working
`ghc` using `--integer-simple` and this patch.

Reviewers: bgamari, erikd, alpmestan

Reviewed By: alpmestan

Subscribers: rwbarton, carter

Differential Revision: https://phabricator.haskell.org/D5335

compiler/main/SysTools/BaseDir.hs

index 16f5a44..786b0e4 100644 (file)
@@ -27,7 +27,7 @@ import System.FilePath
 import Data.List
 
 -- POSIX
-#if defined(darwin_HOST_OS) || defined(linux_HOST_OS)
+#if defined(darwin_HOST_OS) || defined(linux_HOST_OS) || defined(freebsd_HOST_OS)
 import System.Environment (getExecutablePath)
 #endif
 
@@ -136,7 +136,7 @@ rootDir :: FilePath -> FilePath
 rootDir = takeDirectory . takeDirectory . normalise
 
 getBaseDir = Just . (\p -> p </> "lib") . rootDir <$> getExecutablePath
-#elif defined(darwin_HOST_OS) || defined(linux_HOST_OS)
+#elif defined(darwin_HOST_OS) || defined(linux_HOST_OS) || defined(freebsd_HOST_OS)
 -- on unix, this is a bit more confusing.
 -- The layout right now is something like
 --