Setting temporary directory
- Dominant language
- Haskell
- Stars
- 1.7k
- Forks
- 750
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 28
Description
I want to use `cabal-install` to build multiple packages on multiple cores with the `-j` option. The more threads I enable the more the harddisk rattles and the less speedup I get. I tried the option `--builddir=/ram/build` in order to let Cabal work in a ram disk. First, this fails since multiple packages seem to be build in the same directory, e.g. if multiple packages use `configure` (e.g. `network`) the files will clash. Second, there are still files that Cabal writes to `/tmp`.
Contributor guide
Research direction
Start with cabal-install's handling of `--builddir`, then reproduce the issue using `-j` with multiple packages that use `configure`. Done means parallel package builds no longer clash in a shared build directory and the remaining temporary files are placed according to the requested temporary-directory behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell
- Domain
- build-system, cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100