[commit: Cabal] master: Fixups for recent cabal api changes (e9ec08c)
Ian Lynagh
igloo at earth.li
Fri Jun 24 01:44:54 CEST 2011
Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/e9ec08c5d42a1b0054ded3778ba0dadb673729b5
>---------------------------------------------------------------
commit e9ec08c5d42a1b0054ded3778ba0dadb673729b5
Author: Duncan Coutts <duncan at haskell.org>
Date: Thu Sep 6 23:22:55 2007 +0000
Fixups for recent cabal api changes
>---------------------------------------------------------------
.../src/Network/Hackage/CabalInstall/BuildDep.hs | 10 ++++++++--
.../src/Network/Hackage/CabalInstall/Configure.hs | 1 +
.../src/Network/Hackage/CabalInstall/Info.hs | 7 ++++++-
.../src/Network/Hackage/CabalInstall/Install.hs | 7 ++++++-
.../src/Network/Hackage/CabalInstall/Types.hs | 2 ++
5 files changed, 23 insertions(+), 4 deletions(-)
diff --git a/cabal-install/src/Network/Hackage/CabalInstall/BuildDep.hs b/cabal-install/src/Network/Hackage/CabalInstall/BuildDep.hs
index 72d5485..7df4bf2 100644
--- a/cabal-install/src/Network/Hackage/CabalInstall/BuildDep.hs
+++ b/cabal-install/src/Network/Hackage/CabalInstall/BuildDep.hs
@@ -19,6 +19,7 @@ import Network.Hackage.CabalInstall.Types (ConfigFlags (..), UnresolvedDependenc
import Distribution.PackageDescription (readPackageDescription, buildDepends,
GenericPackageDescription(..))
import Distribution.Simple.Configure (getInstalledPackages)
+import Distribution.Simple.Compiler (PackageDB(..))
{-|
This function behaves exactly like 'Network.Hackage.CabalInstall.Install.install' except
@@ -26,8 +27,13 @@ import Distribution.Simple.Configure (getInstalledPackages)
-}
buildDep :: ConfigFlags -> [String] -> [UnresolvedDependency] -> IO ()
buildDep cfg globalArgs deps
- = do ipkgs <- getInstalledPackages (configCompiler cfg) (configUserIns cfg) (configVerbose cfg)
- apkgs <- fmap getPackages (fmap (getBuildDeps ipkgs) (resolveDependenciesAux cfg ipkgs deps))
+ = do Just ipkgs <- getInstalledPackages
+ (configVerbose cfg) (configCompiler cfg)
+ (if configUserIns cfg then UserPackageDB
+ else GlobalPackageDB)
+ (configPrograms cfg)
+ apkgs <- fmap getPackages (fmap (getBuildDeps ipkgs)
+ (resolveDependenciesAux cfg ipkgs deps))
mapM_ (installPkg cfg globalArgs) apkgs
-- | Takes the path to a .cabal file, and installs the build-dependencies listed there.
diff --git a/cabal-install/src/Network/Hackage/CabalInstall/Configure.hs b/cabal-install/src/Network/Hackage/CabalInstall/Configure.hs
index cd3f79f..16cd7f6 100644
--- a/cabal-install/src/Network/Hackage/CabalInstall/Configure.hs
+++ b/cabal-install/src/Network/Hackage/CabalInstall/Configure.hs
@@ -132,6 +132,7 @@ mkConfigFlags cfg
outputGen <- defaultOutputGen (tempVerbose cfg)
let config = ConfigFlags
{ configCompiler = comp
+ , configPrograms = conf'''
, configConfDir = confDir
, configCacheDir = cacheDir
, configPkgListDir = pkgListDir
diff --git a/cabal-install/src/Network/Hackage/CabalInstall/Info.hs b/cabal-install/src/Network/Hackage/CabalInstall/Info.hs
index 7fdf76d..6200ca7 100644
--- a/cabal-install/src/Network/Hackage/CabalInstall/Info.hs
+++ b/cabal-install/src/Network/Hackage/CabalInstall/Info.hs
@@ -19,12 +19,17 @@ import Network.Hackage.CabalInstall.Types (ConfigFlags(..), ResolvedPackage(..)
import Distribution.Package (PackageIdentifier)
import Distribution.Simple.Configure (getInstalledPackages)
+import Distribution.Simple.Compiler (PackageDB(..))
import Data.Maybe (listToMaybe)
info :: ConfigFlags -> [String] -> [UnresolvedDependency] -> IO ()
info cfg globalArgs deps
- = do ipkgs <- getInstalledPackages (configCompiler cfg) (configUserIns cfg) (configVerbose cfg)
+ = do Just ipkgs <- getInstalledPackages
+ (configVerbose cfg) (configCompiler cfg)
+ (if configUserIns cfg then UserPackageDB
+ else GlobalPackageDB)
+ (configPrograms cfg)
apkgs <- resolveDependencies cfg [] deps
mapM_ (infoPkg cfg ipkgs globalArgs) apkgs
diff --git a/cabal-install/src/Network/Hackage/CabalInstall/Install.hs b/cabal-install/src/Network/Hackage/CabalInstall/Install.hs
index 191fc5b..26618ca 100644
--- a/cabal-install/src/Network/Hackage/CabalInstall/Install.hs
+++ b/cabal-install/src/Network/Hackage/CabalInstall/Install.hs
@@ -28,6 +28,7 @@ import Network.Hackage.CabalInstall.TarUtils
import Distribution.Simple.SetupWrapper (setupWrapper)
import Distribution.Simple.Configure (getInstalledPackages)
+import Distribution.Simple.Compiler (PackageDB(..))
import Distribution.Package (showPackageId, PackageIdentifier)
import Distribution.Verbosity
import System.FilePath ((</>), splitFileName)
@@ -44,7 +45,11 @@ import System.Posix.Signals
-- |Installs the packages needed to satisfy a list of dependencies.
install :: ConfigFlags -> [String] -> [UnresolvedDependency] -> IO ()
install cfg globalArgs deps
- = do ipkgs <- getInstalledPackages (configCompiler cfg) (configUserIns cfg) (configVerbose cfg)
+ = do Just ipkgs <- getInstalledPackages
+ (configVerbose cfg) (configCompiler cfg)
+ (if configUserIns cfg then UserPackageDB
+ else GlobalPackageDB)
+ (configPrograms cfg)
resolvedDeps <- resolveDependencies cfg ipkgs deps
let apkgs = getPackages resolvedDeps
if null apkgs
diff --git a/cabal-install/src/Network/Hackage/CabalInstall/Types.hs b/cabal-install/src/Network/Hackage/CabalInstall/Types.hs
index 6d42788..961e9d6 100644
--- a/cabal-install/src/Network/Hackage/CabalInstall/Types.hs
+++ b/cabal-install/src/Network/Hackage/CabalInstall/Types.hs
@@ -13,6 +13,7 @@
module Network.Hackage.CabalInstall.Types where
import Distribution.Simple.Compiler (CompilerFlavor(..),Compiler)
+import Distribution.Simple.Program (ProgramConfiguration)
import Distribution.Package (PackageIdentifier)
import Distribution.Version (Dependency)
import Distribution.Verbosity
@@ -57,6 +58,7 @@ data TempFlags = TempFlags {
data ConfigFlags = ConfigFlags {
configCompiler :: Compiler,
+ configPrograms :: ProgramConfiguration,
configConfDir :: FilePath,
configCacheDir :: FilePath,
configPkgListDir :: FilePath,
More information about the Cvs-libraries
mailing list