nixpkgs/pkgs/development/haskell-modules/patches/dyre-nix.patch

25 lines
1.1 KiB
Diff

--- dyre-0.8.12/Config/Dyre/Compile.hs 2015-04-13 11:00:20.794278350 +0100
+++ dyre-0.8.12-patched/Config/Dyre/Compile.hs 2015-04-13 11:07:26.938893502 +0100
@@ -10,11 +10,13 @@
import System.FilePath ( (</>) )
import System.Directory ( getCurrentDirectory, doesFileExist
, createDirectoryIfMissing )
+import System.Environment ( lookupEnv )
+import Control.Applicative ((<$>))
import Control.Exception ( bracket )
-import GHC.Paths ( ghc )
import Config.Dyre.Paths ( getPaths )
import Config.Dyre.Params ( Params(..) )
+import Data.Maybe ( fromMaybe )
-- | Return the path to the error file.
getErrorPath :: Params cfgType -> IO FilePath
@@ -47,6 +49,7 @@
errFile <- getErrorPath params
result <- bracket (openFile errFile WriteMode) hClose $ \errHandle -> do
ghcOpts <- makeFlags params configFile tempBinary cacheDir libsDir
+ ghc <- fromMaybe "ghc" <$> lookupEnv "NIX_GHC"
ghcProc <- runProcess ghc ghcOpts (Just cacheDir) Nothing
Nothing Nothing (Just errHandle)
waitForProcess ghcProc