| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Distribution.Simple.Build.Inputs
Synopsis
- data PreBuildComponentInputs = PreBuildComponentInputs {}
- buildVerbosity :: PreBuildComponentInputs -> Verbosity
- buildComponent :: PreBuildComponentInputs -> Component
- buildIsLib :: PreBuildComponentInputs -> Bool
- buildCLBI :: PreBuildComponentInputs -> ComponentLocalBuildInfo
- buildBI :: PreBuildComponentInputs -> BuildInfo
- buildCompiler :: PreBuildComponentInputs -> Compiler
- data BuildingWhat
- data LocalBuildInfo where
- NewLocalBuildInfo { }
- pattern LocalBuildInfo :: ConfigFlags -> FlagAssignment -> ComponentRequestedSpec -> [String] -> InstallDirTemplates -> Compiler -> Platform -> Maybe (SymbolicPath Pkg 'File) -> Graph ComponentLocalBuildInfo -> Map ComponentName [ComponentLocalBuildInfo] -> Map (PackageName, ComponentName) PromisedComponent -> InstalledPackageIndex -> PackageDescription -> ProgramDb -> PackageDBStack -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> ProfDetailLevel -> ProfDetailLevel -> OptimisationLevel -> DebugInfoLevel -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> [UnitId] -> Bool -> LocalBuildInfo
- data TargetInfo = TargetInfo {}
- buildingWhatCommonFlags :: BuildingWhat -> CommonSetupFlags
- buildingWhatVerbosity :: BuildingWhat -> Verbosity
- buildingWhatWorkingDir :: BuildingWhat -> Maybe (SymbolicPath CWD ('Dir Pkg))
- buildingWhatDistPref :: BuildingWhat -> SymbolicPath Pkg ('Dir Dist)
Inputs of actions for building components
data PreBuildComponentInputs #
The information required for a build computation which is available right before building each component, i.e. the pre-build component inputs.
Constructors
| PreBuildComponentInputs | |
Fields
| |
Queries over the component being built
buildVerbosity :: PreBuildComponentInputs -> Verbosity #
Get the from the context the component being built is in.Verbosity
buildComponent :: PreBuildComponentInputs -> Component #
Get the being built.Component
buildIsLib :: PreBuildComponentInputs -> Bool #
Is the being built a Component?Library
buildCLBI :: PreBuildComponentInputs -> ComponentLocalBuildInfo #
Get the for the component being built.ComponentLocalBuildInfo
buildBI :: PreBuildComponentInputs -> BuildInfo #
Get the of the component being built.BuildInfo
buildCompiler :: PreBuildComponentInputs -> Compiler #
Get the being used to build the component.Compiler
Re-exports
data BuildingWhat #
What kind of build phase are we doing/hooking into?
Is this a normal build, or is it perhaps for running an interactive session or Haddock?
Constructors
| BuildNormal BuildFlags | A normal build. |
| BuildRepl ReplFlags | Build steps for an interactive session. |
| BuildHaddock HaddockFlags | Build steps for generating documentation. |
| BuildHscolour HscolourFlags | Build steps for Hscolour. |
Instances
data LocalBuildInfo #
Data cached after configuration step. See also
ConfigFlags.
Constructors
| NewLocalBuildInfo | |
Fields
| |
Bundled Patterns
| pattern LocalBuildInfo :: ConfigFlags -> FlagAssignment -> ComponentRequestedSpec -> [String] -> InstallDirTemplates -> Compiler -> Platform -> Maybe (SymbolicPath Pkg 'File) -> Graph ComponentLocalBuildInfo -> Map ComponentName [ComponentLocalBuildInfo] -> Map (PackageName, ComponentName) PromisedComponent -> InstalledPackageIndex -> PackageDescription -> ProgramDb -> PackageDBStack -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> ProfDetailLevel -> ProfDetailLevel -> OptimisationLevel -> DebugInfoLevel -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> Bool -> [UnitId] -> Bool -> LocalBuildInfo | This pattern synonym is for backwards compatibility, to adapt
to |
Instances
| Structured LocalBuildInfo # | |||||
Defined in Distribution.Types.LocalBuildInfo Methods structure :: Proxy LocalBuildInfo -> Structure Source # structureHash' :: Tagged LocalBuildInfo MD5 | |||||
| Binary LocalBuildInfo # | |||||
Defined in Distribution.Types.LocalBuildInfo Methods put :: LocalBuildInfo -> Put # get :: Get LocalBuildInfo # putList :: [LocalBuildInfo] -> Put # | |||||
| Generic LocalBuildInfo # | |||||
Defined in Distribution.Types.LocalBuildInfo Associated Types
Methods from :: LocalBuildInfo -> Rep LocalBuildInfo x # to :: Rep LocalBuildInfo x -> LocalBuildInfo # | |||||
| Read LocalBuildInfo # | |||||
Defined in Distribution.Types.LocalBuildInfo Methods readsPrec :: Int -> ReadS LocalBuildInfo # readList :: ReadS [LocalBuildInfo] # | |||||
| Show LocalBuildInfo # | |||||
Defined in Distribution.Types.LocalBuildInfo Methods showsPrec :: Int -> LocalBuildInfo -> ShowS # show :: LocalBuildInfo -> String # showList :: [LocalBuildInfo] -> ShowS # | |||||
| type Rep LocalBuildInfo # | |||||
Defined in Distribution.Types.LocalBuildInfo type Rep LocalBuildInfo = D1 ('MetaData "LocalBuildInfo" "Distribution.Types.LocalBuildInfo" "Cabal-3.16.0.0-9b60" 'False) (C1 ('MetaCons "NewLocalBuildInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "localBuildDescr") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 LocalBuildDescr) :*: S1 ('MetaSel ('Just "localBuildConfig") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 LocalBuildConfig))) | |||||
data TargetInfo #
The TargetInfo contains all the information necessary to build a
specific target (e.g., componentmodulefile) in a package. In
principle, one can get the Component from a
ComponentLocalBuildInfo and LocalBuildInfo, but it is much more
convenient to have the component in hand.
Constructors
| TargetInfo | |
Fields | |
Instances
| IsNode TargetInfo # | |||||
Defined in Distribution.Types.TargetInfo Associated Types
Methods nodeKey :: TargetInfo -> Key TargetInfo Source # nodeNeighbors :: TargetInfo -> [Key TargetInfo] Source # | |||||
| Structured TargetInfo # | |||||
Defined in Distribution.Types.TargetInfo | |||||
| Binary TargetInfo # | |||||
Defined in Distribution.Types.TargetInfo | |||||
| Generic TargetInfo # | |||||
Defined in Distribution.Types.TargetInfo Associated Types
| |||||
| Show TargetInfo # | |||||
Defined in Distribution.Types.TargetInfo Methods showsPrec :: Int -> TargetInfo -> ShowS # show :: TargetInfo -> String # showList :: [TargetInfo] -> ShowS # | |||||
| type Key TargetInfo # | |||||
Defined in Distribution.Types.TargetInfo | |||||
| type Rep TargetInfo # | |||||
Defined in Distribution.Types.TargetInfo type Rep TargetInfo = D1 ('MetaData "TargetInfo" "Distribution.Types.TargetInfo" "Cabal-3.16.0.0-9b60" 'False) (C1 ('MetaCons "TargetInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "targetCLBI") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ComponentLocalBuildInfo) :*: S1 ('MetaSel ('Just "targetComponent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Component))) | |||||
buildingWhatWorkingDir :: BuildingWhat -> Maybe (SymbolicPath CWD ('Dir Pkg)) #
buildingWhatDistPref :: BuildingWhat -> SymbolicPath Pkg ('Dir Dist) #