Add support for using GHC's -jsem option #9139
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a rebase and fixup of #8557.
The top-level user interface to enable the use of the semaphore is the
--semaphore
flag. If you pass-j4 --semaphore
then cabal will create a semaphore with 4 slots which is passed to ghc using the-jsem
option so that all GHC processes coordinate to use 4 capabilities.semaphore-compat
which provides a cross-platform abstraction for semaphores.The low level
./Setup.hs build
interface accepts the--semaphore <SEMAPHORE>
option, which can be used to directly pass the semaphore you require to the Setup script.