[commit: Cabal] master: Initial support for building haddock docs (4093375)
Ian Lynagh
igloo at earth.li
Fri Jun 24 01:57:10 CEST 2011
Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/40933750f54140d97809fab93f435c7bc497476e
>---------------------------------------------------------------
commit 40933750f54140d97809fab93f435c7bc497476e
Author: Duncan Coutts <duncan at haskell.org>
Date: Tue Aug 5 18:05:06 2008 +0000
Initial support for building haddock docs
No flag to turn it on/off yet.
>---------------------------------------------------------------
cabal-install/Distribution/Client/Install.hs | 41 +++++++++++++++++++------
1 files changed, 31 insertions(+), 10 deletions(-)
diff --git a/cabal-install/Distribution/Client/Install.hs b/cabal-install/Distribution/Client/Install.hs
index b865308..0a8cbbf 100644
--- a/cabal-install/Distribution/Client/Install.hs
+++ b/cabal-install/Distribution/Client/Install.hs
@@ -369,22 +369,43 @@ installUnpackedPackage :: Verbosity
-> Maybe (PackageIdentifier -> FilePath) -- ^ File to log output to (if any)
-> IO BuildResult
installUnpackedPackage verbosity scriptOptions miscOptions configFlags
- pkg workingDir useLogFile
- = onFailure ConfigureFailed $ do
- setup configureCommand (filterConfigureFlags configFlags)
- onFailure BuildFailed $ do
- setup buildCommand buildFlags
- onFailure InstallFailed $ do
- case rootCmd miscOptions of
- (Just cmd) -> reexec cmd
- Nothing -> setup Cabal.installCommand installFlags
- return (Right (BuildOk DocsNotTried TestsNotTried))
+ pkg workingDir useLogFile =
+
+ -- Configure phase
+ onFailure ConfigureFailed $ do
+ setup configureCommand (filterConfigureFlags configFlags)
+
+ -- Build phase
+ onFailure BuildFailed $ do
+ setup buildCommand buildFlags
+
+ -- Doc generation phase
+ docsResult <- if False --TODO: add flag to enable/disable haddock
+ then Exception.handle (\_ -> return DocsFailed) $ do
+ setup Cabal.haddockCommand haddockFlags
+ return DocsOk
+ else return DocsNotTried
+
+ -- Tests phase
+ testsResult <- return TestsNotTried --TODO: add optional tests
+
+ -- Install phase
+ onFailure InstallFailed $ do
+ case rootCmd miscOptions of
+ (Just cmd) -> reexec cmd
+ Nothing -> setup Cabal.installCommand installFlags
+ return (Right (BuildOk docsResult testsResult))
+
where
buildCommand = Cabal.buildCommand defaultProgramConfiguration
buildFlags _ = Cabal.emptyBuildFlags {
Cabal.buildDistPref = Cabal.configDistPref configFlags,
Cabal.buildVerbosity = Cabal.toFlag verbosity
}
+ haddockFlags _ = Cabal.emptyHaddockFlags {
+ Cabal.haddockDistPref = Cabal.configDistPref configFlags,
+ Cabal.haddockVerbosity = Cabal.toFlag verbosity
+ }
installFlags _ = Cabal.emptyInstallFlags {
Cabal.installDistPref = Cabal.configDistPref configFlags,
Cabal.installVerbosity = Cabal.toFlag verbosity
More information about the Cvs-libraries
mailing list