Cabal-1.20.0.4: A framework for packaging Haskell software

Maintainerduncan@community.haskell.org
Safe HaskellNone

Distribution.Simple.BuildTarget

Contents

Description

Handling for user-specified build targets

Synopsis

Build targets

data BuildTarget

A fully resolved build target.

Constructors

BuildTargetComponent ComponentName

A specific component

BuildTargetModule ComponentName ModuleName

A specific module within a specific component.

BuildTargetFile ComponentName FilePath

A specific file within a specific component.

Instances

Parsing user build targets

data UserBuildTarget

Various ways that a user may specify a build target.

Resolving build targets

resolveBuildTargets :: PackageDescription -> [(UserBuildTarget, Bool)] -> ([BuildTargetProblem], [BuildTarget])

Given a bunch of user-specified targets, try to resolve what it is they refer to.

data BuildTargetProblem

Constructors

BuildTargetExpected UserBuildTarget [String] String
expected thing
(actually got)
BuildTargetNoSuch UserBuildTarget [(String, String)]
(no such thing, actually got)
BuildTargetAmbigious UserBuildTarget [(UserBuildTarget, BuildTarget)] 

Instances