X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=libraries%2FinstallPackage.hs;h=65eab5664b1808e7c1b9077429be6c65b4d8f83f;hb=15a63009a30ce0d1614b36803185f548db838805;hp=00560a7fc96fbb9e41b1850d1b018f62bdb81d69;hpb=a385f0af5ea320a18d580f6a36c59c55b3516efd;p=ghc-hetmet.git diff --git a/libraries/installPackage.hs b/libraries/installPackage.hs index 00560a7..65eab56 100644 --- a/libraries/installPackage.hs +++ b/libraries/installPackage.hs @@ -1,4 +1,5 @@ +import Data.Maybe import Distribution.PackageDescription import Distribution.PackageDescription.Parse import Distribution.ReadE @@ -8,6 +9,7 @@ import Distribution.Simple.LocalBuildInfo import Distribution.Simple.Program import Distribution.Simple.Setup import Distribution.Simple.Utils +import Distribution.Text import Distribution.Verbosity import System.Environment @@ -60,10 +62,11 @@ doInstall verbosity ghcpkg ghcpkgconf destdir topdir -- This is an almighty hack. We need to register -- ghc-prim:GHC.Prim, but it doesn't exist, get built, get -- haddocked, get copied, etc. - pd_reg = if pkgName (package pd) == "ghc-prim" + pd_reg = if packageName pd == PackageName "ghc-prim" then case library pd of Just lib -> - let ems = "GHC.Prim" : exposedModules lib + let ems = fromJust (simpleParse "GHC.Prim") + : exposedModules lib lib' = lib { exposedModules = ems } in pd { library = Just lib' } Nothing ->