Support GHC 8

This commit is contained in:
Harendra Kumar 2017-02-20 02:05:05 +05:30
parent 98b1ffa6c6
commit dee0f76486
3 changed files with 25 additions and 5 deletions

View File

@ -323,7 +323,14 @@ union ls ps' =
grabDefaultPkgConf :: IO PkgEnvs grabDefaultPkgConf :: IO PkgEnvs
grabDefaultPkgConf = do grabDefaultPkgConf = do
pc <- configureAllKnownPrograms silent defaultProgramConfiguration pc <- configureAllKnownPrograms silent defaultProgramConfiguration
#if MIN_VERSION_Cabal(1,24,0)
(compiler, _platform, _programConfiguration)
<- configure silent Nothing Nothing pc
pkgIndex <- getInstalledPackages silent compiler
[GlobalPackageDB, UserPackageDB] pc
#else
pkgIndex <- getInstalledPackages silent [GlobalPackageDB, UserPackageDB] pc pkgIndex <- getInstalledPackages silent [GlobalPackageDB, UserPackageDB] pc
#endif
return $ [] `union` allPackages pkgIndex return $ [] `union` allPackages pkgIndex
-- --
@ -332,7 +339,13 @@ grabDefaultPkgConf = do
readPackageConf :: FilePath -> IO [PackageConfig] readPackageConf :: FilePath -> IO [PackageConfig]
readPackageConf f = do readPackageConf f = do
pc <- configureAllKnownPrograms silent defaultProgramConfiguration pc <- configureAllKnownPrograms silent defaultProgramConfiguration
#if MIN_VERSION_Cabal(1,24,0)
(compiler, _platform, _programConfiguration)
<- configure silent Nothing Nothing pc
pkgIndex <- getInstalledPackages silent compiler [GlobalPackageDB, UserPackageDB, SpecificPackageDB f] pc
#else
pkgIndex <- getInstalledPackages silent [GlobalPackageDB, UserPackageDB, SpecificPackageDB f] pc pkgIndex <- getInstalledPackages silent [GlobalPackageDB, UserPackageDB, SpecificPackageDB f] pc
#endif
return $ allPackages pkgIndex return $ allPackages pkgIndex
-- ----------------------------------------------------------- -- -----------------------------------------------------------

View File

@ -72,11 +72,16 @@ import System.Plugins.LoadTypes
-- import Language.Hi.Parser -- import Language.Hi.Parser
import BinIface import BinIface
import HscTypes import HscTypes
#if MIN_VERSION_ghc(7,10,0)
import Module (moduleName, moduleNameString, packageKeyString) import Module (moduleName, moduleNameString)
#if MIN_VERSION_ghc(8,0,0)
import Module (unitIdString)
#elif MIN_VERSION_ghc(7,10,0)
import Module (packageKeyString)
#else #else
import Module (moduleName, moduleNameString, packageIdString) import Module (packageIdString)
#endif #endif
import HscMain (newHscEnv) import HscMain (newHscEnv)
import TcRnMonad (initTcRnIf) import TcRnMonad (initTcRnIf)
@ -705,7 +710,9 @@ loadDepends obj incpaths = do
-- and find some packages to load, as well. -- and find some packages to load, as well.
let ps = dep_pkgs ds let ps = dep_pkgs ds
#if MIN_VERSION_ghc(7,10,0) #if MIN_VERSION_ghc(8,0,0)
ps' <- filterM loaded . map unitIdString . nub $ map fst ps
#elif MIN_VERSION_ghc(7,10,0)
ps' <- filterM loaded . map packageKeyString . nub $ map fst ps ps' <- filterM loaded . map packageKeyString . nub $ map fst ps
#elif MIN_VERSION_ghc(7,2,0) #elif MIN_VERSION_ghc(7,2,0)
ps' <- filterM loaded . map packageIdString . nub $ map fst ps ps' <- filterM loaded . map packageIdString . nub $ map fst ps

View File

@ -1,7 +1,7 @@
# For more information, see: https://github.com/commercialhaskell/stack/blob/master/doc/yaml_configuration.md # For more information, see: https://github.com/commercialhaskell/stack/blob/master/doc/yaml_configuration.md
# Specifies the GHC version and set of packages available (e.g., lts-3.5, nightly-2015-09-21, ghc-7.10.2) # Specifies the GHC version and set of packages available (e.g., lts-3.5, nightly-2015-09-21, ghc-7.10.2)
resolver: lts-3.8 resolver: lts-8.0
# Local packages, usually specified by relative directory name # Local packages, usually specified by relative directory name
packages: packages: