| Safe Haskell | None |
|---|
DDC.Build.Builder
- data BuilderConfig = BuilderConfig {}
- 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.
Constructors
| BuilderConfig | |
Fields
| |
Actions to use to invoke external compilation tools.
Constructors
| Builder | |
Fields
| |
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.
Constructors
| 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. |
Instances
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.