Distribution.Types.ParStrat

Cabal-3.11.0.0: A framework for packaging Haskell software

Safe Haskell | Safe-Inferred
Language | Haskell2010

Distribution.Types.ParStrat

Synopsis

- data ParStratX sem
  - = NumJobs (Maybe Int)
  - | UseSem sem
  - | Serial
- type ParStrat = ParStratX String
- type ParStratInstall = ParStratX Int
- isParallelBuild :: ParStratX n -> Bool

# Documentation

data ParStratX sem Source #

How to control parallelism, e.g. a fixed number of jobs or by using a system semaphore.

Constructors

NumJobs (Maybe Int) | Compile in parallel with the given number of jobs (`-jN` or `-j`).
UseSem sem | `--semaphore`: use a system semaphore to control parallelism.
Serial | No parallelism (neither `-jN` nor `--semaphore`, but could be `-j1`).

#### Instances

Instances details

Show sem => Show (ParStratX sem) Source # |
Instance details Defined in Distribution.Types.ParStrat Methods showsPrec :: Int -> ParStratX sem -> ShowS # show :: ParStratX sem -> String # showList :: [ParStratX sem] -> ShowS #

type ParStrat = ParStratX String Source #

Used by Cabal to indicate that we want to use this specific semaphore (created by cabal-install)

type ParStratInstall = ParStratX Int Source #

Used by cabal-install to say we want to create a semaphore with N slots.

isParallelBuild :: ParStratX n -> Bool Source #

Determine if the parallelism strategy enables parallel builds.