Karya, built on 2023-08-29T07:47:28 (patch 7a412d5d6ba4968ca4155ef276a062ccdeb9109a)
Safe HaskellSafe-Inferred

Shake.Util

Synopsis

shake specific

type Cmdline = (String, String, [String]) Source #

(short_name_for_cmd, output_file_name, [cmd])

cmdline :: Cmdline -> Shake.Action () Source #

This is like system, but expect a Cmdline. It logs an abbreviated cmdline at quiet, and a complete cmdline at normal.

Shake logs # key msgs at and cmds at loud. However, I think cmds should be at normal, and the keys should be at loud, because the cmds give a progress indication, while the keys just make any compiler errors scroll off the screen.

systemKeepGoing :: IO.FilePath -> [String] -> Shake.Action () Source #

Like system, but don't ignore the exit code.

shell :: String -> Shake.Action () Source #

Run a shell command, and crash if it fails.

findFiles :: (IO.FilePath -> Bool) -> Shake.FilePattern -> IO.FilePath -> Shake.Action [IO.FilePath] Source #

Recursively find files below a directory.

runIO :: IO.FilePath -> Shake.Action a -> IO.IO a Source #

Run an Action, useful for interactive testing.

ghc

newtype PackageId Source #

An exact package id suitable for the -package-id flag.

Constructors

PackageId String 

Instances

Instances details
Show PackageId Source # 
Instance details

Defined in Shake.Util

Eq PackageId Source # 
Instance details

Defined in Shake.Util

platform

data Platform Source #

Constructors

Mac 
Linux 

Instances

Instances details
Show Platform Source # 
Instance details

Defined in Shake.Util

Eq Platform Source # 
Instance details

Defined in Shake.Util

general

ifM :: Monad m => m Bool -> m a -> m a -> m a Source #

whenM :: Monad m => m Bool -> m () -> m () Source #

errorIO :: MonadIO m => String -> m a Source #