| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Explanation: Simple build system; basically the interface for Distribution.Simple.* modules. When given the parsed command-line args and package information, is able to perform basic commands like configure, build, install, register, etc. This module isn't called "Simple" because it's simple. Far from it. It's called "Simple" because it does complicated things to simple software. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Synopsis | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Documentation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
module Distribution.Package | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
module Distribution.Version | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
module Distribution.License | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
module Distribution.Simple.Compiler | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
module Language.Haskell.Extension | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Simple interface | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
defaultMain :: IO () | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A simple implementation of main for a Cabal setup script. It reads the package description file using IO, and performs the action specified on the command line. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
defaultMainNoRead :: PackageDescription -> IO () | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Like defaultMain, but accepts the package description as input rather than using IO to read it. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
defaultMainArgs :: [String] -> IO () | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A version of defaultMain that is passed the command line arguments, rather than getting them from the environment. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Customization | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
data UserHooks | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
type Args = [String] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
defaultMainWithHooks :: UserHooks -> IO () | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A customizable version of defaultMain. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
defaultMainWithHooksArgs :: UserHooks -> [String] -> IO () | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
A customizable version of defaultMain that also takes the command line arguments. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Standard sets of hooks | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
simpleUserHooks :: UserHooks | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Hooks that correspond to a plain instantiation of the "simple" build system | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
autoconfUserHooks :: UserHooks | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
defaultUserHooks :: UserHooks | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Basic autoconf UserHooks:
Thus configure can use local system information to generate package.buildinfo and possibly other files. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
emptyUserHooks :: UserHooks | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Empty UserHooks which do nothing. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Utils | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
defaultHookedPackageDesc :: IO (Maybe FilePath) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Optional auxiliary package information file (pkgname.buildinfo) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Produced by Haddock version 0.8 |