diff --git a/Stackage/CompleteBuild.hs b/Stackage/CompleteBuild.hs index 20dec4bf..19e90c43 100644 --- a/Stackage/CompleteBuild.hs +++ b/Stackage/CompleteBuild.hs @@ -30,6 +30,7 @@ data BuildFlags = BuildFlags { bfEnableTests :: !Bool , bfDoUpload :: !Bool , bfEnableLibProfile :: !Bool + , bfVerbose :: !Bool } deriving (Show) data BuildType = Nightly | LTS BumpType @@ -182,6 +183,7 @@ completeBuild buildType buildFlags = withManager tlsManagerSettings $ \man -> do , pbGlobalInstall = False , pbEnableTests = bfEnableTests buildFlags , pbEnableLibProfiling = bfEnableLibProfile buildFlags + , pbVerbose = bfVerbose buildFlags } performBuild pb >>= mapM_ putStrLn diff --git a/Stackage/PerformBuild.hs b/Stackage/PerformBuild.hs index e5e1c23b..7cdb3efd 100644 --- a/Stackage/PerformBuild.hs +++ b/Stackage/PerformBuild.hs @@ -63,6 +63,7 @@ data PerformBuild = PerformBuild -- ^ Register packages in the global database , pbEnableTests :: Bool , pbEnableLibProfiling :: Bool + , pbVerbose :: Bool } data PackageInfo = PackageInfo @@ -316,7 +317,8 @@ singleBuild pb@PerformBuild {..} SingleBuild {..} = PackageConstraints {..} = ppConstraints $ piPlan sbPackageInfo buildLibrary = wf libOut $ \outH -> do - let run = runChild outH + let run a b = do when pbVerbose $ log' (unwords (a : b)) + runChild outH a b log' $ "Unpacking " ++ namever runParent outH "cabal" ["unpack", namever] diff --git a/app/stackage.hs b/app/stackage.hs index 2a06c2bd..08efe846 100644 --- a/app/stackage.hs +++ b/app/stackage.hs @@ -69,4 +69,7 @@ main = help "Skip uploading bundle, docs, etc.")) <*> switch (long "enable-library-profiling" <> - help "Enable profiling when building") + help "Enable profiling when building") <*> + switch + (long "verbose" <> short 'v' <> + help "Output verbose detail about the build steps")