From: Ian Lynagh Date: Sat, 10 May 2008 22:55:52 +0000 (+0000) Subject: Follow changes in Cabal X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=e25d5095e6fd47e0a02404d9532c2f776d3f8a32;hp=abfbfafac4f4713d106a214be1c5237b61b7c5e2 Follow changes in Cabal --- diff --git a/compiler/main/CodeOutput.lhs b/compiler/main/CodeOutput.lhs index fd67f21..d2d7c7f 100644 --- a/compiler/main/CodeOutput.lhs +++ b/compiler/main/CodeOutput.lhs @@ -33,7 +33,7 @@ import Outputable import Module import Maybes ( firstJust ) -import Distribution.Package ( showPackageId ) +import Distribution.Text import Directory ( doesFileExist ) import Monad ( when ) import IO @@ -127,7 +127,7 @@ outputC dflags filenm flat_absC packages _ -> "#include \""++h_file++"\"" pkg_configs <- getPreloadPackagesAnd dflags packages - let pkg_names = map (showPackageId.package) pkg_configs + let pkg_names = map (display.package) pkg_configs doOutput filenm $ \ h -> do hPutStr h ("/* GHC_PACKAGES " ++ unwords pkg_names ++ "\n*/\n") diff --git a/compiler/main/PackageConfig.hs b/compiler/main/PackageConfig.hs index 80488ec..d5569c4 100644 --- a/compiler/main/PackageConfig.hs +++ b/compiler/main/PackageConfig.hs @@ -8,7 +8,7 @@ module PackageConfig ( -- * The PackageConfig type: information about a package PackageConfig, - InstalledPackageInfo_(..), showPackageId, + InstalledPackageInfo_(..), display, Version(..), PackageIdentifier(..), defaultPackageConfig, @@ -16,9 +16,10 @@ module PackageConfig ( #include "HsVersions.h" -import Module +import Module import Distribution.InstalledPackageInfo import Distribution.Package +import Distribution.Text import Distribution.Version import Distribution.Compat.ReadP ( readP_to_S ) @@ -45,14 +46,14 @@ defaultPackageConfig = emptyInstalledPackageInfo -- A PackageId is a string of the form -. mkPackageId :: PackageIdentifier -> PackageId -mkPackageId = stringToPackageId . showPackageId +mkPackageId = stringToPackageId . display packageConfigId :: PackageConfig -> PackageId packageConfigId = mkPackageId . package unpackPackageId :: PackageId -> Maybe PackageIdentifier unpackPackageId p - = case [ pid | (pid,"") <- readP_to_S parsePackageId str ] of + = case [ pid | (pid,"") <- readP_to_S parse str ] of [] -> Nothing (pid:_) -> Just pid where str = packageIdString p diff --git a/compiler/main/Packages.lhs b/compiler/main/Packages.lhs index c6b208c..6a5b63c 100644 --- a/compiler/main/Packages.lhs +++ b/compiler/main/Packages.lhs @@ -47,8 +47,8 @@ import Panic import Outputable import System.Environment ( getEnv ) -import Distribution.InstalledPackageInfo -import Distribution.Package +import Distribution.InstalledPackageInfo hiding (depends) +import Distribution.Package hiding (depends) import Distribution.Version import FastString import ErrUtils ( debugTraceMsg, putMsg, Message ) @@ -317,7 +317,7 @@ matchingPackages str pkgs -- A package named on the command line can either include the -- version, or just the name if it is unambiguous. matches str p - = str == showPackageId (package p) + = str == display (package p) || str == pkgName (package p) pickPackages :: [PackageConfig] -> [String] -> [PackageConfig] @@ -346,9 +346,9 @@ hideOldPackages dflags pkgs = mapM maybe_hide pkgs | (p' : _) <- later_versions = do debugTraceMsg dflags 2 $ (ptext (sLit "hiding package") <+> - text (showPackageId (package p)) <+> + text (display (package p)) <+> ptext (sLit "to avoid conflict with later version") <+> - text (showPackageId (package p'))) + text (display (package p'))) return (p {exposed=False}) | otherwise = return p where myname = pkgName (package p) @@ -417,7 +417,7 @@ findWiredInPackages dflags pkgs preload this_package = do ptext (sLit "wired-in package ") <> text wired_pkg <> ptext (sLit " mapped to ") - <> text (showPackageId (package pkg)) + <> text (display (package pkg)) return (Just (package pkg)) @@ -485,7 +485,7 @@ elimDanglingDeps dflags pkgs ignored = go [] pkgs' debugTraceMsg dflags 2 $ (ptext (sLit "package") <+> pprPkg p <+> ptext (sLit "will be ignored due to missing or recursive dependencies:") $$ - nest 2 (hsep (map (text.showPackageId) deps))) + nest 2 (hsep (map (text.display) deps))) -- ----------------------------------------------------------------------------- -- When all the command-line options are in, we can process our package @@ -574,7 +574,7 @@ mkModuleMap pkg_db = foldr extend_modmap emptyUFM pkgids hidden_mods = hiddenModules pkg pprPkg :: PackageConfig -> SDoc -pprPkg p = text (showPackageId (package p)) +pprPkg p = text (display (package p)) -- ----------------------------------------------------------------------------- -- Extracting information from the packages in scope @@ -714,8 +714,8 @@ dumpPackages dflags putMsg dflags $ vcat (map (text.showInstalledPackageInfo.to_ipi) (eltsUFM pkg_map)) where - to_ipi pkgconf@InstalledPackageInfo_{ exposedModules = e, - hiddenModules = h } = + to_ipi pkgconf@(InstalledPackageInfo { exposedModules = e, + hiddenModules = h }) = pkgconf{ exposedModules = map moduleNameString e, hiddenModules = map moduleNameString h } \end{code} diff --git a/libraries/installPackage.hs b/libraries/installPackage.hs index 4615429..3ab4f7e 100644 --- a/libraries/installPackage.hs +++ b/libraries/installPackage.hs @@ -1,5 +1,7 @@ import Distribution.PackageDescription +import Distribution.PackageDescription.Parse +import Distribution.ReadE import Distribution.Simple import Distribution.Simple.Configure import Distribution.Simple.LocalBuildInfo @@ -29,10 +31,7 @@ main mkVerbosity :: [String] -> Verbosity mkVerbosity [] = normal -mkVerbosity ['-':'v':v] = let m = case v of - "" -> Nothing - _ -> Just v - in flagToVerbosity m +mkVerbosity ['-':'v':v] = readEOrFail flagToVerbosity v mkVerbosity args = error ("Bad arguments: " ++ show args) doRegisterInplace :: Verbosity -> IO () @@ -63,11 +62,11 @@ doInstall verbosity ghcpkg ghcpkgconf destdir topdir copyto = if null destdir then NoCopyDest else CopyTo destdir copyFlags = defaultCopyFlags { copyDest = toFlag copyto, - copyVerbose = toFlag verbosity + copyVerbosity = toFlag verbosity } registerFlags = defaultRegisterFlags { regPackageDB = toFlag GlobalPackageDB, - regVerbose = toFlag verbosity, + regVerbosity = toFlag verbosity, regGenScript = toFlag $ False, regInPlace = toFlag $ False }