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 <[email protected]>
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,



_______________________________________________
Cvs-libraries mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-libraries

Reply via email to