X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=utils%2Fghc-cabal%2Fghc-cabal.hs;h=a1bdf66ab6f5369f874e071f1b61bd2f7a700378;hb=9ab9ffe6d740fdd9ae92b7f6e3f7b0c43da17dbf;hp=851136978b61c2fd45d6b89a96a45b86f20eabc5;hpb=8464822fd829e63b2301ced2c2027edeb788f527;p=ghc-hetmet.git diff --git a/utils/ghc-cabal/ghc-cabal.hs b/utils/ghc-cabal/ghc-cabal.hs index 8511369..a1bdf66 100644 --- a/utils/ghc-cabal/ghc-cabal.hs +++ b/utils/ghc-cabal/ghc-cabal.hs @@ -12,13 +12,11 @@ import Distribution.Simple.Program import Distribution.Simple.Utils (defaultPackageDesc, writeFileAtomic) import Distribution.Simple.Build (writeAutogenFiles) import Distribution.Simple.Register -import Distribution.Simple.PackageIndex import Distribution.Text import Distribution.Verbosity import qualified Distribution.InstalledPackageInfo as Installed import qualified Distribution.Simple.PackageIndex as PackageIndex -import Control.Monad import Data.Maybe import System.IO import System.Directory @@ -126,7 +124,7 @@ doInstall ghcpkg ghcpkgconf directory distDir myDestDir myPrefix myLibdir myDocd idts' = idts { prefix = toPathTemplate myPrefix, libdir = toPathTemplate myLibdir, libsubdir = toPathTemplate "$pkgid", - docdir = toPathTemplate (myDocdir "$pkgid"), + docdir = toPathTemplate (myDocdir "$pkg"), htmldir = toPathTemplate "$docdir" } progs = withPrograms lbi prog = ConfiguredProgram { @@ -158,8 +156,16 @@ generate config_args distdir directory withArgs (["configure", "--distdir", distdir] ++ config_args) (case buildType (flattenPackageDescription gpd) of Just Configure -> defaultMainWithHooks autoconfUserHooks - _other -> defaultMain) - -- not quite right, but good enough for us + -- time has a "Custom" Setup.hs, but it's actually Configure + -- plus a "./Setup test" hook. However, Cabal is also + -- "Custom", but doesn't have a configure script. + Just Custom -> + do configureExists <- doesFileExist "configure" + if configureExists + then defaultMainWithHooks autoconfUserHooks + else defaultMain + -- not quite right, but good enough for us: + _ -> defaultMain) lbi <- getPersistBuildConfig distdir let pd0 = localPkgDescr lbi