Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- initSysTools :: String -> IO Settings
- lazyInitLlvmConfig :: String -> IO LlvmConfig
- module SysTools.Tasks
- module SysTools.Info
- linkDynLib :: DynFlags -> [String] -> [InstalledUnitId] -> IO ()
- copy :: DynFlags -> String -> FilePath -> FilePath -> IO ()
- copyWithHeader :: DynFlags -> String -> Maybe String -> FilePath -> FilePath -> IO ()
- data Option
- expandTopDir :: FilePath -> String -> String
- libmLinkOpts :: [Option]
- getPkgFrameworkOpts :: DynFlags -> Platform -> [InstalledUnitId] -> IO [String]
- getFrameworkOpts :: DynFlags -> Platform -> [String]
Initialisation
lazyInitLlvmConfig :: String -> IO LlvmConfig Source #
Interface to system tools
module SysTools.Tasks
module SysTools.Info
linkDynLib :: DynFlags -> [String] -> [InstalledUnitId] -> IO () Source #
General utilities
When invoking external tools as part of the compilation pipeline, we pass these a sequence of options on the command-line. Rather than just using a list of Strings, we use a type that allows us to distinguish between filepaths and 'other stuff'. The reason for this is that this type gives us a handle on transforming filenames, and filenames only, to whatever format they're expected to be on a particular platform.
expandTopDir :: FilePath -> String -> String #
Expand occurrences of the $topdir
interpolation in a string.
Platform-specifics
libmLinkOpts :: [Option] Source #
Some platforms require that we explicitly link against libm
if any
math-y things are used (which we assume to include all programs). See #14022.
Mac OS X frameworks
getPkgFrameworkOpts :: DynFlags -> Platform -> [InstalledUnitId] -> IO [String] Source #