Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal On branch : master
http://hackage.haskell.org/trac/ghc/changeset/b8d7b60a75e2e43de29641e27b57c1596d9a4d4e >--------------------------------------------------------------- commit b8d7b60a75e2e43de29641e27b57c1596d9a4d4e Author: bjorn <[email protected]> Date: Sun Oct 7 12:58:40 2007 +0000 Move listInstalledPackages to Config. >--------------------------------------------------------------- .../src/Network/Hackage/CabalInstall/BuildDep.hs | 3 +-- .../src/Network/Hackage/CabalInstall/Config.hs | 13 ++++++++++++- .../src/Network/Hackage/CabalInstall/Dependency.hs | 14 +------------- .../src/Network/Hackage/CabalInstall/Info.hs | 4 ++-- 4 files changed, 16 insertions(+), 18 deletions(-) diff --git a/cabal-install/src/Network/Hackage/CabalInstall/BuildDep.hs b/cabal-install/src/Network/Hackage/CabalInstall/BuildDep.hs index d023fa3..cf87a49 100644 --- a/cabal-install/src/Network/Hackage/CabalInstall/BuildDep.hs +++ b/cabal-install/src/Network/Hackage/CabalInstall/BuildDep.hs @@ -12,9 +12,8 @@ ----------------------------------------------------------------------------- module Network.Hackage.CabalInstall.BuildDep where -import Network.Hackage.CabalInstall.Config (findCompiler, getKnownPackages) +import Network.Hackage.CabalInstall.Config (findCompiler, getKnownPackages, listInstalledPackages) import Network.Hackage.CabalInstall.Dependency (getPackages, getBuildDeps - , listInstalledPackages , depToUnresolvedDep, resolveDependenciesAux) import Network.Hackage.CabalInstall.Install (install, installPackages) import Network.Hackage.CabalInstall.Types (ConfigFlags (..), UnresolvedDependency) diff --git a/cabal-install/src/Network/Hackage/CabalInstall/Config.hs b/cabal-install/src/Network/Hackage/CabalInstall/Config.hs index b7dc943..163c643 100644 --- a/cabal-install/src/Network/Hackage/CabalInstall/Config.hs +++ b/cabal-install/src/Network/Hackage/CabalInstall/Config.hs @@ -14,6 +14,7 @@ module Network.Hackage.CabalInstall.Config ( repoCacheDir , packageFile , packageDir + , listInstalledPackages , getKnownPackages , message , pkgURL @@ -43,7 +44,8 @@ import Distribution.PackageDescription (GenericPackageDescription(..) , PackageDescription(..) , parsePackageDescription, ParseResult(..)) import Distribution.ParseUtils (FieldDescr, simpleField, listField, liftField, field) -import Distribution.Simple.Compiler (Compiler) +import Distribution.Simple.Compiler (Compiler, PackageDB(..)) +import Distribution.Simple.Configure (getInstalledPackages) import qualified Distribution.Simple.Configure as Configure (configCompiler) import Distribution.Simple.InstallDirs (InstallDirTemplates(..), PathTemplate, toPathTemplate, defaultInstallDirs) import Distribution.Simple.Program (ProgramConfiguration, defaultProgramConfiguration) @@ -73,6 +75,15 @@ packageDir cfg pkg repo = repoCacheDir cfg repo </> pkgName pkg </> showVersion (pkgVersion pkg) +listInstalledPackages :: ConfigFlags -> Compiler -> ProgramConfiguration -> IO [PackageIdentifier] +listInstalledPackages cfg comp conf = + do Just ipkgs <- getInstalledPackages + (configVerbose cfg) comp + (if configUserInstall cfg then UserPackageDB + else GlobalPackageDB) + conf + return ipkgs + getKnownPackages :: ConfigFlags -> IO [PkgInfo] getKnownPackages cfg = fmap concat $ mapM (readRepoIndex cfg) $ configRepos cfg diff --git a/cabal-install/src/Network/Hackage/CabalInstall/Dependency.hs b/cabal-install/src/Network/Hackage/CabalInstall/Dependency.hs index 3f2023b..5c91b4c 100644 --- a/cabal-install/src/Network/Hackage/CabalInstall/Dependency.hs +++ b/cabal-install/src/Network/Hackage/CabalInstall/Dependency.hs @@ -16,8 +16,6 @@ module Network.Hackage.CabalInstall.Dependency resolveDependencies , resolveDependenciesAux , finalizePackage - -- * Installed packages - , listInstalledPackages -- * Utilities , depToUnresolvedDep , getPackages -- :: [ResolvedPackage] -> [(PackageIdentifier,[String],String)] @@ -33,7 +31,6 @@ import Distribution.PackageDescription , GenericPackageDescription(packageDescription) , finalizePackageDescription) import Distribution.ParseUtils (showDependency) -import Distribution.Simple.Configure (getInstalledPackages) import Distribution.Simple.Compiler (PackageDB(..), Compiler, showCompilerId, compilerVersion) import Distribution.Simple.Program (ProgramConfiguration) @@ -41,7 +38,7 @@ import Data.Char (toLower) import Data.List (nub, maximumBy, isPrefixOf) import qualified System.Info (arch,os) -import Network.Hackage.CabalInstall.Config (getKnownPackages, findCompiler) +import Network.Hackage.CabalInstall.Config (listInstalledPackages, getKnownPackages, findCompiler) import Network.Hackage.CabalInstall.Types ( ResolvedPackage(..), UnresolvedDependency(..) , ConfigFlags (..), PkgInfo (..), ResolvedDependency(..), Repo(..)) import Text.Printf (printf) @@ -197,12 +194,3 @@ resolveDependencies cfg comp conf deps = do installed <- listInstalledPackages cfg comp conf available <- getKnownPackages cfg return $ flattenDepList installed $ resolveDependenciesAux cfg comp conf installed available deps - -listInstalledPackages :: ConfigFlags -> Compiler -> ProgramConfiguration -> IO [PackageIdentifier] -listInstalledPackages cfg comp conf = - do Just ipkgs <- getInstalledPackages - (configVerbose cfg) comp - (if configUserInstall cfg then UserPackageDB - else GlobalPackageDB) - conf - return ipkgs \ No newline at end of file diff --git a/cabal-install/src/Network/Hackage/CabalInstall/Info.hs b/cabal-install/src/Network/Hackage/CabalInstall/Info.hs index 59b1c0c..9787a40 100644 --- a/cabal-install/src/Network/Hackage/CabalInstall/Info.hs +++ b/cabal-install/src/Network/Hackage/CabalInstall/Info.hs @@ -12,9 +12,9 @@ ----------------------------------------------------------------------------- module Network.Hackage.CabalInstall.Info where -import Network.Hackage.CabalInstall.Config (pkgURL, findCompiler) +import Network.Hackage.CabalInstall.Config (pkgURL, findCompiler, listInstalledPackages) import Network.Hackage.CabalInstall.Dependency - (resolveDependencies, fulfillDependency, listInstalledPackages) + (resolveDependencies, fulfillDependency) import Network.Hackage.CabalInstall.Fetch (isFetched, packageFile) import Network.Hackage.CabalInstall.Types (ConfigFlags(..), ResolvedPackage(..) ,UnresolvedDependency(..)) _______________________________________________ Cvs-libraries mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-libraries
