Cabal-3.3.0.0: A framework for packaging Haskell software

Safe HaskellSafe
LanguageHaskell2010

Distribution.Compat.Process

Contents

Synopsis

Redefined functions

createProcess :: CreateProcess -> IO (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle) #

createProcess with process jobs enabled when appropriate. See enableProcessJobs.

runInteractiveProcess #

Arguments

:: FilePath

Filename of the executable (see RawCommand for details)

-> [String]

Arguments to pass to the executable

-> Maybe FilePath

Optional path to the working directory

-> Maybe [(String, String)]

Optional environment (otherwise inherit)

-> IO (Handle, Handle, Handle, ProcessHandle) 

runInteractiveProcess with process jobs enabled when appropriate. See enableProcessJobs.

rawSystem :: String -> [String] -> IO ExitCode #

rawSystem with process jobs enabled when appropriate. See enableProcessJobs.

Additions

enableProcessJobs :: CreateProcess -> CreateProcess #

Enable process jobs to ensure accurate determination of process completion in the presence of exec(3) on Windows.

Unfortunately the process job support is badly broken in process releases prior to 1.6.8, so we disable it in these versions, despite the fact that this means we may see sporatic build failures without jobs.