X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=libraries%2FinstallPackage.hs;h=2a13e0b30585e9a72dc668a3bb2bfc84c374462d;hb=13df6c59f92c81bbb53b8402bd28159faf4758f0;hp=461542956033f7dfd99ba4fbd53ce8618292b614;hpb=fcf6b22d0478be20e27c2245f3e34dd272e12522;p=ghc-hetmet.git diff --git a/libraries/installPackage.hs b/libraries/installPackage.hs index 4615429..2a13e0b 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 @@ -9,6 +11,10 @@ import Distribution.Simple.Utils import Distribution.Verbosity import System.Environment +-- XXX This will need to be changed +distPref :: FilePath +distPref = defaultDistPref + main :: IO () main = do args <- getArgs @@ -29,10 +35,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 +66,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 } @@ -137,7 +140,7 @@ replaceTopdir _ p = p -- Get the build info, merging the setup-config and buildinfo files. getConfig :: Verbosity -> IO LocalBuildInfo getConfig verbosity = do - lbi <- getPersistBuildConfig + lbi <- getPersistBuildConfig distPref maybe_infoFile <- defaultHookedPackageDesc case maybe_infoFile of Nothing -> return lbi