module BuildBox.Build
( module BuildBox.Build.Testable
, module BuildBox.Build.BuildError
, module BuildBox.Build.BuildState
, Build
, runBuild
, runBuildPrint
, runBuildPrintWithState
, successfully
, throw
, needs
, io
, whenM
, out
, outLn
, outBlank
, outLine
, outLINE
, logSystem)
where
import BuildBox.Build.Base
import BuildBox.Build.Testable
import BuildBox.Build.BuildState
import BuildBox.Build.BuildError
import Control.Monad.State
import System.IO
logSystem :: String -> Build ()
logSystem cmd
= do mHandle <- gets buildStateLogSystem
case mHandle of
Nothing -> return ()
Just handle
-> do io $ hPutStr handle "buildbox system: "
io $ hPutStrLn handle cmd
return ()