[commit: Cabal] master: Better error message for unknown build types (cc73fac)
Max Bolingbroke
batterseapower at hotmail.com
Fri Sep 9 15:48:52 CEST 2011
Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/cc73fac6ee2c7d1c883c5e4a1cd28751eebc4113
>---------------------------------------------------------------
commit cc73fac6ee2c7d1c883c5e4a1cd28751eebc4113
Author: Duncan Coutts <duncan at community.haskell.org>
Date: Thu Sep 1 11:40:46 2011 +0000
Better error message for unknown build types
>---------------------------------------------------------------
cabal-install/Distribution/Client/SetupWrapper.hs | 11 +++++++++--
1 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/cabal-install/Distribution/Client/SetupWrapper.hs b/cabal-install/Distribution/Client/SetupWrapper.hs
index 9315339..e63baf3 100644
--- a/cabal-install/Distribution/Client/SetupWrapper.hs
+++ b/cabal-install/Distribution/Client/SetupWrapper.hs
@@ -34,7 +34,8 @@ import Distribution.Package
, packageVersion, Dependency(..) )
import Distribution.PackageDescription
( GenericPackageDescription(packageDescription)
- , PackageDescription(..), specVersion, BuildType(..) )
+ , PackageDescription(..), specVersion
+ , BuildType(..), knownBuildTypes )
import Distribution.PackageDescription.Parse
( readPackageDescription )
import Distribution.Simple.Configure
@@ -56,7 +57,7 @@ import Distribution.Client.IndexUtils
( getInstalledPackages )
import Distribution.Simple.Utils
( die, debug, info, cabalVersion, findPackageDesc, comparing
- , createDirectoryIfMissingVerbose, rewriteFile )
+ , createDirectoryIfMissingVerbose, rewriteFile, intercalate )
import Distribution.Client.Utils
( moreRecentFile, inDir )
import Distribution.Text
@@ -116,12 +117,18 @@ setupWrapper verbosity options mpkg cmd flags extraArgs = do
mkArgs cabalLibVersion = commandName cmd
: commandShowOptions cmd (flags cabalLibVersion)
++ extraArgs
+ checkBuildType buildType'
setupMethod verbosity options' (packageId pkg) buildType' mkArgs
where
getPkg = findPackageDesc (fromMaybe "." (useWorkingDir options))
>>= readPackageDescription verbosity
>>= return . packageDescription
+ checkBuildType (UnknownBuildType name) =
+ die $ "The build-type '" ++ name ++ "' is not known. Use one of: "
+ ++ intercalate ", " (map display knownBuildTypes) ++ "."
+ checkBuildType _ = return ()
+
-- | Decide if we're going to be able to do a direct internal call to the
-- entry point in the Cabal library or if we're going to have to compile
-- and execute an external Setup.hs script.
More information about the Cvs-libraries
mailing list