GHC.SysTools.Tasks

ghc-9.10.0.20240328: The GHC API

Safe Haskell | None
Language | GHC2021

GHC.SysTools.Tasks

Synopsis

- runUnlit :: Logger -> DynFlags -> [Option] -> IO ()
- augmentImports :: DynFlags -> [FilePath] -> [FilePath]
- cc_filter :: String -> String
- runCpp :: Logger -> TmpFs -> DynFlags -> [Option] -> IO ()
- runHsCpp :: Logger -> DynFlags -> [Option] -> IO ()
- runPp :: Logger -> DynFlags -> [Option] -> IO ()
- runCc :: Maybe ForeignSrcLang -> Logger -> TmpFs -> DynFlags -> [Option] -> IO ()
- isContainedIn :: String -> String -> Bool
- askLd :: Logger -> DynFlags -> [Option] -> IO String
- runAs :: Logger -> DynFlags -> [Option] -> IO ()
- runLlvmOpt :: Logger -> DynFlags -> [Option] -> IO ()
- runLlvmLlc :: Logger -> DynFlags -> [Option] -> IO ()
- runLlvmAs :: Logger -> DynFlags -> [Option] -> IO ()
- runEmscripten :: Logger -> DynFlags -> [Option] -> IO ()
- figureLlvmVersion :: Logger -> DynFlags -> IO (Maybe LlvmVersion)
- runMergeObjects :: Logger -> TmpFs -> DynFlags -> [Option] -> IO ()
- runAr :: Logger -> DynFlags -> Maybe FilePath -> [Option] -> IO ()
- askOtool :: Logger -> ToolSettings -> Maybe FilePath -> [Option] -> IO String
- runInstallNameTool :: Logger -> ToolSettings -> [Option] -> IO ()
- runRanlib :: Logger -> DynFlags -> [Option] -> IO ()
- runWindres :: Logger -> DynFlags -> [Option] -> IO ()

# Documentation

runUnlit :: Logger -> DynFlags -> [Option] -> IO () Source #

augmentImports :: DynFlags -> [FilePath] -> [FilePath] Source #

Prepend the working directory to the search path. Note [Filepaths and Multiple Home Units]

cc_filter :: String -> String Source #

Discard some harmless warnings from gcc that we can't turn off

runCpp :: Logger -> TmpFs -> DynFlags -> [Option] -> IO () Source #

Run the C preprocessor, which is different from running the Haskell C preprocessor (they're configured separately!). See also Note [Preprocessing invocations] in GHC.SysTools.Cpp

runHsCpp :: Logger -> DynFlags -> [Option] -> IO () Source #

Run the Haskell C preprocessor. See also Note [Preprocessing invocations] in GHC.SysTools.Cpp

runPp :: Logger -> DynFlags -> [Option] -> IO () Source #

runCc :: Maybe ForeignSrcLang -> Logger -> TmpFs -> DynFlags -> [Option] -> IO () Source #

Run compiler of C-like languages and raw objects (such as gcc or clang).

isContainedIn :: String -> String -> Bool Source #

askLd :: Logger -> DynFlags -> [Option] -> IO String Source #

Run the linker with some arguments and return the output

runAs :: Logger -> DynFlags -> [Option] -> IO () Source #

runLlvmOpt :: Logger -> DynFlags -> [Option] -> IO () Source #

Run the LLVM Optimiser

runLlvmLlc :: Logger -> DynFlags -> [Option] -> IO () Source #

Run the LLVM Compiler

runLlvmAs :: Logger -> DynFlags -> [Option] -> IO () Source #

Run the LLVM Assembler

runEmscripten :: Logger -> DynFlags -> [Option] -> IO () Source #

figureLlvmVersion :: Logger -> DynFlags -> IO (Maybe LlvmVersion) Source #

Figure out which version of LLVM we are running this session

runMergeObjects :: Logger -> TmpFs -> DynFlags -> [Option] -> IO () Source #

runAr :: Logger -> DynFlags -> Maybe FilePath -> [Option] -> IO () Source #

askOtool :: Logger -> ToolSettings -> Maybe FilePath -> [Option] -> IO String Source #

runInstallNameTool :: Logger -> ToolSettings -> [Option] -> IO () Source #

runRanlib :: Logger -> DynFlags -> [Option] -> IO () Source #

runWindres :: Logger -> DynFlags -> [Option] -> IO () Source #