From cdac57db6801683b05c2b9ee688805e218cef91a Mon Sep 17 00:00:00 2001 From: Lennart Kolmodin <kolmodin@gentoo.org> Date: Thu, 21 Feb 2008 21:32:01 +0000 Subject: [PATCH] Make the qa check return an exit code reporting the status --- cabal-install/Hackage/Check.hs | 3 ++- cabal-install/Main.hs | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/cabal-install/Hackage/Check.hs b/cabal-install/Hackage/Check.hs index 0603c4ce3b..f2ba43c339 100644 --- a/cabal-install/Hackage/Check.hs +++ b/cabal-install/Hackage/Check.hs @@ -23,7 +23,7 @@ import Distribution.PackageDescription.Configuration ( flattenPackageDescription import Distribution.Verbosity ( Verbosity ) import Distribution.Simple.Utils ( defaultPackageDesc ) -check :: Verbosity -> IO () +check :: Verbosity -> IO Bool check verbosity = do pdfile <- defaultPackageDesc verbosity ppd <- readPackageDescription verbosity pdfile @@ -78,3 +78,4 @@ check verbosity = do when (null packageChecks) $ do putStrLn "No errors or warnings could be found in the package." + return (null packageChecks) diff --git a/cabal-install/Main.hs b/cabal-install/Main.hs index 6d222a292a..28b83fbfaf 100644 --- a/cabal-install/Main.hs +++ b/cabal-install/Main.hs @@ -202,4 +202,7 @@ checkAction :: Flag Verbosity -> [String] -> IO () checkAction verbosityFlag extraArgs = do unless (null extraArgs) $ do die $ "'check' doesn't take any extra arguments: " ++ unwords extraArgs - Check.check (fromFlag verbosityFlag) + allOk <- Check.check (fromFlag verbosityFlag) + if allOk + then exitWith ExitSuccess + else exitWith (ExitFailure 1) -- GitLab