Skip to content
Snippets Groups Projects
Commit fecabc25 authored by tibbe's avatar tibbe
Browse files

Merge branch '1.18' of https://github.com/ezyang/cabal into 1.18

parents ece909bf b14a493a
No related branches found
No related tags found
No related merge requests found
...@@ -75,6 +75,7 @@ import qualified Distribution.InstalledPackageInfo as IPI ...@@ -75,6 +75,7 @@ import qualified Distribution.InstalledPackageInfo as IPI
import qualified Distribution.ModuleName as ModuleName import qualified Distribution.ModuleName as ModuleName
import Distribution.ModuleName (ModuleName) import Distribution.ModuleName (ModuleName)
import Distribution.Simple.Program (ghcPkgProgram)
import Distribution.Simple.Setup import Distribution.Simple.Setup
( BuildFlags(..), ReplFlags(..), fromFlag ) ( BuildFlags(..), ReplFlags(..), fromFlag )
import Distribution.Simple.BuildTarget import Distribution.Simple.BuildTarget
...@@ -91,6 +92,7 @@ import Distribution.Simple.LocalBuildInfo ...@@ -91,6 +92,7 @@ import Distribution.Simple.LocalBuildInfo
, inplacePackageId, LibraryName(..) ) , inplacePackageId, LibraryName(..) )
import Distribution.Simple.Program.Types import Distribution.Simple.Program.Types
import Distribution.Simple.Program.Db import Distribution.Simple.Program.Db
import qualified Distribution.Simple.Program.HcPkg as HcPkg
import Distribution.Simple.BuildPaths import Distribution.Simple.BuildPaths
( autogenModulesDir, autogenModuleName, cppHeaderName, exeExtension ) ( autogenModulesDir, autogenModuleName, cppHeaderName, exeExtension )
import Distribution.Simple.Register import Distribution.Simple.Register
...@@ -116,7 +118,7 @@ import Control.Monad ...@@ -116,7 +118,7 @@ import Control.Monad
import System.FilePath import System.FilePath
( (</>), (<.>) ) ( (</>), (<.>) )
import System.Directory import System.Directory
( getCurrentDirectory ) ( getCurrentDirectory, removeDirectoryRecursive, doesDirectoryExist )
-- ----------------------------------------------------------------------------- -- -----------------------------------------------------------------------------
-- |Build the libraries and executables in this package. -- |Build the libraries and executables in this package.
...@@ -141,7 +143,8 @@ build pkg_descr lbi flags suffixes = do ...@@ -141,7 +143,8 @@ build pkg_descr lbi flags suffixes = do
-- Only bother with this message if we're building the whole package -- Only bother with this message if we're building the whole package
setupMessage verbosity "Building" (packageId pkg_descr) setupMessage verbosity "Building" (packageId pkg_descr)
internalPackageDB <- createInternalPackageDB distPref let Just ghcPkgProg = lookupProgram ghcPkgProgram (withPrograms lbi)
internalPackageDB <- createInternalPackageDB verbosity ghcPkgProg distPref
withComponentsInBuildOrder pkg_descr lbi componentsToBuild $ \comp clbi -> withComponentsInBuildOrder pkg_descr lbi componentsToBuild $ \comp clbi ->
let bi = componentBuildInfo comp let bi = componentBuildInfo comp
...@@ -177,7 +180,8 @@ repl pkg_descr lbi flags suffixes args = do ...@@ -177,7 +180,8 @@ repl pkg_descr lbi flags suffixes args = do
initialBuildSteps distPref pkg_descr lbi verbosity initialBuildSteps distPref pkg_descr lbi verbosity
internalPackageDB <- createInternalPackageDB distPref let Just ghcPkgProg = lookupProgram ghcPkgProgram (withPrograms lbi)
internalPackageDB <- createInternalPackageDB verbosity ghcPkgProg distPref
let lbiForComponent comp lbi' = let lbiForComponent comp lbi' =
lbi' { lbi' {
withPackageDB = withPackageDB lbi ++ [internalPackageDB], withPackageDB = withPackageDB lbi ++ [internalPackageDB],
...@@ -435,11 +439,13 @@ benchmarkExeV10asExe Benchmark{} _ = error "benchmarkExeV10asExe: wrong kind" ...@@ -435,11 +439,13 @@ benchmarkExeV10asExe Benchmark{} _ = error "benchmarkExeV10asExe: wrong kind"
-- | Initialize a new package db file for libraries defined -- | Initialize a new package db file for libraries defined
-- internally to the package. -- internally to the package.
createInternalPackageDB :: FilePath -> IO PackageDB createInternalPackageDB :: Verbosity -> ConfiguredProgram -> FilePath -> IO PackageDB
createInternalPackageDB distPref = do createInternalPackageDB verbosity ghcPkgProg distPref = do
let dbFile = distPref </> "package.conf.inplace" let dbDir = distPref </> "package.conf.inplace"
packageDB = SpecificPackageDB dbFile packageDB = SpecificPackageDB dbDir
writeFile dbFile "[]" exists <- doesDirectoryExist dbDir
when exists $ removeDirectoryRecursive dbDir
HcPkg.init verbosity ghcPkgProg dbDir
return packageDB return packageDB
addInternalBuildTools :: PackageDescription -> LocalBuildInfo -> BuildInfo addInternalBuildTools :: PackageDescription -> LocalBuildInfo -> BuildInfo
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment