Safe Haskell | None |
---|
- data BuilderConfig = BuilderConfig {
- builderConfigBaseSrcDir :: FilePath
- builderConfigBaseLibDir :: FilePath
- data Builder = Builder {
- builderName :: String
- buildHost :: Platform
- buildTarget :: Platform
- buildSpec :: Platform
- buildBaseSrcDir :: FilePath
- buildBaseLibDir :: FilePath
- buildCC :: FilePath -> FilePath -> IO ()
- buildLlc :: FilePath -> FilePath -> IO ()
- buildAs :: FilePath -> FilePath -> IO ()
- buildLdExe :: FilePath -> FilePath -> IO ()
- buildLdLibStatic :: [FilePath] -> FilePath -> IO ()
- buildLdLibShared :: [FilePath] -> FilePath -> IO ()
- data BuilderResult
- builders :: BuilderConfig -> [Builder]
- determineDefaultBuilder :: BuilderConfig -> IO (Maybe Builder)
Documentation
data BuilderConfig Source
Configuration information for a builder that is not platform specific.
BuilderConfig | |
|
Actions to use to invoke external compilation tools.
Builder | |
|
data BuilderResult Source
The result of a build command.
We use these so that the called doesn't need to worry about interpreting numeric exit codes.
BuilderSuccess | Build command completed successfully. |
BuilderCanceled | Build command was cancelled or killed by the user. eg by Control-C on the console. |
BuilderFailed | Build command failed. There is probably something wrong with the generated file. Unrecognised exit codes also result in this BuilderResult. |
Eq BuilderResult | |
Show BuilderResult |
builders :: BuilderConfig -> [Builder]Source
All supported builders. The host and target platforms are the same.
Supported builders are:
x86_32-darwin
, x86_64-darwin
,
x86_32-linux
, x86_64-linux
,
x86_32-cygwin
,
ppc32-linux
determineDefaultBuilder :: BuilderConfig -> IO (Maybe Builder)Source
Determine the default builder based on the arch
and uname
commands.
This assumes that the host
and target
platforms are the same.
If we don't recognise the result of arch
or uname
, or don't have
a default builder config for this platform then Nothing
.