ddc-build-0.4.2.1: Disciplined Disciple Compiler build framework.

Safe HaskellSafe
LanguageHaskell98

DDC.Build.Spec

Synopsis

Documentation

data Spec Source

A build specification. This specifies how to build a particular library or exectutable, and is equivalent to a Haskell Cabal file.

Constructors

Spec 

Fields

specVersion :: String

Version number set by the first line of the file.

specComponents :: [Component]

Components in this build specification.

Instances

data Component Source

A build component.

Constructors

SpecLibrary 

Fields

specLibraryName :: String

Name of the library.

specLibraryVersion :: String

Library version.

specLibraryTetraModules :: [ModuleName]

Tetra modules to build, in dependency order.

specLibraryMeta :: [(String, String)]

Optional library meta-data. These fields are for informational purposes and are not nessesary to build the library itself.

SpecExecutable 

Fields

specExecutableName :: String

Name of executable

specExecutableTetraMain :: ModuleName

Name of main module.

specExecutableTetraOther :: [ModuleName]

Tetra modules to build, in dependency order.

specExecutableMeta :: [(String, String)]

Optional library meta-data. These fields are for informational purposes and are not nessesary to build the executable itself.

Instances

specFieldsLibrary :: [(String, Bool)] Source

Names of all allowable fields in library metadata, and whether each field is nessesary or optional.