summary refs log tree commit diff
path: root/pkgs/development/haskell-modules/generic-builder.nix
Commit message (Collapse)AuthorAge
* haskellPackages.*.env: Fixed shellHook being ignoredFalco Peijnenburg2018-11-04
| | | | The problem was introduced in 2bafa93b75464eee5744653319d8046e05cf141a
* haskellPackages.shellFor: Add nativeBuildInputs [Fixes #48435]Will Fancher2018-10-18
|
* haskell: re-enable aarch64, but disable parallel builds on that arch.Drew Hess2018-10-05
| | | | | This is a workaround for unreliable parallel Haskell builds on aarch64. See https://ghc.haskell.org/trac/ghc/ticket/15449
* haskellPackages.*.env: Use shellForSilvan Mosberger2018-10-03
|
* haskell.lib.getBuildInputs: Use generic builder passthru to implementSilvan Mosberger2018-10-03
|
* Merge pull request #46872 from obsidiansystems/cross-haskell-ar-flagJohn Ericson2018-09-18
|\ | | | | haskell infra: Also pass `--with-ar` in cross builds
| * haskell infra: Also pass `--with-ar` in cross buildsJohn Ericson2018-09-18
| |
* | Merge pull request #46512 from michaelpj/imp/haskell-benchmarksBas van Dijk2018-09-18
|\ \ | | | | | | haskell lib: add --enable-benchmarks in doBenchmark
| * | haskell generic builder: enable benchmarks if doBenchmark is trueMichael Peyton Jones2018-09-11
| |/
* | More conservative SCC tagging for Haskell librariesAlexander Biehl2018-09-12
| | | | | | | | | | `all-functions` corresponds to `-fprof-auto` which places an SCC on every binding. It is well known that SCCs hinder GHC from doing its optimization magic and really slows down profiled code to a point where the profiling reports are completely skewed towards things that were completely optimized away in production settings. Concretely this shows up with things like lenses which do not carry runtime overhead when properly simplified. `exported-functions` corresponds to GHCs `-fprof-auto-exported` which doesn't put SCCs on `INLINE`d code and in turn doesn't influence simplification of this basic but important stuff.
* | Haskell builder: Use $abi/$libname as --libsubdirAlex Biehl2018-09-12
|/
* treewide: Remove usage of remaining redundant platform compatability stuffJohn Ericson2018-08-30
| | | | | Want to get this out of here for 18.09, so it can be deprecated thereafter.
* haskell generic builder: expose enableParallelBuildingDomen Kožar2018-08-26
|
* Update generic-builder.nixMoritz Angermann2018-08-07
| | | Drop `hasActiveLibrary` altogether. The condition is wrong, `isLibrary` is the correct one. We can have non-static, non-shared libraries as well.
* [haskell/generic-builder] windows always has an active libraryMoritz Angermann2018-08-07
| | | | | | This commit is not really correct. The `hasActiveLibrary` check is wrong. We can have an active library even if we do not ask for a static lirbary or dynamic one; we can still have just a set of objet files and archives.
* haskell: don't error if isLibrary = true and no libraries existDomen Kožar2018-07-18
| | | | | | | | | | | If empty directory isn't deleted, referer depenedencies will fail with: cp: missing destination file operand after '/tmp/nix-build-cabal-helper-0.8.0.2.drv-0/setup-package.conf.d/' This is currently only the case for cabal-install, as cabal2nix doesn't handle well buildable=False flags due to long-standing bugs in Cabal itself.
* haskell: Pass `dontStrip` to cabal. Fixes #43506Niklas Hambüchen2018-07-14
|
* haskell generic-builder: Make test and benchmark tool depends ↵John Ericson2018-07-09
| | | | | | | | | | | `nativeBuildInputs` This was reverted in 6e07a3a19a56b27446fb78b3213ea1d6534d1c99 with the other commits in the PR, as the number of overrides added in that PR was deemed excessive. But this commit adds no overrides, and is valuable on its own, so I am adding it back. (cherry picked from commit 359e0ce4bb084a07a39fa369a0121a2f997548a3)
* Revert "haskell generic-builder: Use strictDeps always"Peter Simons2018-07-04
|
* haskell generic-builder: Use strictDeps alwaysJohn Ericson2018-07-02
| | | | | This helps avoid the `ARG_MAX` issues we've been having, and is generally a good idea to ensure cross comparability anyways.
* haskell generic-builder: Make test and benchmark tool depends ↵John Ericson2018-07-02
| | | | | | `nativeBuildInputs` I suppose I forgot these when I did this before.
* haskell-generic-builder: bake the package name and version into --docdirPeter Simons2018-06-22
| | | | | | | | If we use a --docdir that's not specific to the package, then different builds will install their license files into the same location, which leads to file collisions if those are ever joined into the same environment. Fixes https://github.com/NixOS/nixpkgs/issues/35024.
* haskell: make generic builder follow compiler’s shared configMatthew Bauer2018-06-20
| | | | | | | | | | enableShared in generic-builder.nix should default to what the GHC compiler was compiled with. Add a passthru to all of the GHC compilers to hold the value of enableShared. If enableShared is not set in the GHC we just use false as the default value for enableSharedLibraries. Note: I may have missed some compilers. Only GHC & GHCJS are covered by this commit but this shouldn’t break evaluation of anything else.
* haskell generic-builder: Only pass --extra-* for host depsJohn Ericson2018-06-19
|
* haskell generic-buider: nativeGhc should be a depsBuildBuildPascal Wittmann2018-06-19
| | | | It targets the build platform.
* haskell generic-builder: Always use separate pkg db for custom setupJohn Ericson2018-06-18
| | | | | | This decreases complexity and ensures setup dependencies are properly specified with `setup-depends` as they should be. Testing will say if this is a reasonable change.
* haskell generic-builder: Use separate setup db in more casesJohn Ericson2018-06-13
| | | | Use for cross and GHCJS whether or not there are setup depends.
* haskell generic-builder: Fix setup dependsJohn Ericson2018-06-12
| | | | | I was referring to the wrong package db in a few places. Thanks @ElvishJerricco for catching.
* haskell: fixup merge of c425a1fc5002a1642036a74d67b200e47f19cefbMatthew Bauer2018-05-31
| | | | | This was accidentally included even though setupHaskellDepends is already listed above.
* haskell: add *FrameworkDepends argumentsRyan Trinkle2018-05-31
|
* use https for default Hackage homepageRyan Mulligan2018-05-28
|
* Merge branch 'master' into stagingJan Malakhovski2018-05-26
|\ | | | | | | | | | | Fixed conflicts: - lib/systems/for-meta.nix: in favor of staging - pkgs/os-specific/darwin/xcode/default.nix: in favor of master
| * haskell generic-builder: Limit usage of --extra-framework-dirs for compatJohn Ericson2018-05-25
| |
| * haskell infra: Adds buildFlags logicMoritz Angermann2018-05-23
| |
| * haskell generic builder: Do the `links` dance only if shared is enabled.Moritz Angermann2018-05-23
| |
| * haskell generic builder: Disable static libs on Windows because no -staticlibMoritz Angermann2018-05-23
| | | | | | | | | | | | | | | | | | The reason why this does not work is not that we can't built static objects, we can, but we can't use `-staticlib` on GHC on windows. `-staticlib` rolls all dependencies into a combined archive. While this would work on windows if we used gnu ar and MRI script, GHC can't rely on GNU ar, and as such has a quick archive concatenation module for GNU and BSD archives only.
| * haskell generic builder: Use setup package database for setup-dependsMoritz Angermann2018-05-23
| | | | | | | | Adapted from https://github.com/obsidiansystems/nixpkgs/commit/b69f420121120433220c568e4b35ade539ef60f2 by @Ericson2314
| * haskell generic builder: `setupHaskellDepends` should be `nativeBuildInputsJohn Ericson2018-05-23
| | | | | | | | | | | | | | | | | | | | | | This is because they are just for Setup.hs, so they are just used at build time and completely isolated from the normal components' dependencies. This was previous implemented in 8a8f0408cd9b7fdda1095718107c800057658c44, but reverted in e69c7f56419589c0d3296e81f47032fa813cca4b because it broken setup-depends non-cross in haskell shell environments (custom Setup.hs in cross shell environments has never worked). This version adds a special native exception to avoid that breakage.
| * haskell-generic-builder: Add extra framework dirsJohn Ericson2018-05-23
| | | | | | | | | | | | Just like with the other `--extra-*` flags, cc/ld-wrapper already handles this, but we need to make Cabal aware so that the haskell builds have the correct metadata.
* | Merge remote-tracking branch 'upstream/master' into stagingJohn Ericson2018-05-23
|\|
| * haskell generic-builder: Tiny changes that preserve hasesJohn Ericson2018-05-23
| | | | | | | | These bring us closer to staging at no cost
* | haskell generic-builder: Remove merge conflictJohn Ericson2018-05-23
| | | | | | | | I forgot this in 17316643fd1a0bca5cafddaef227327542c2e832
* | Merge remote-tracking branch 'upstream/master' into stagingJohn Ericson2018-05-23
|\| | | | | | | Use newer vagrant from master
| * Revert "ghc, haskell infra: #40642 direct to master"Peter Simons2018-05-23
| |
* | Merge branch 'staging' into feature/clean-ghcJohn Ericson2018-05-21
|\ \ | |/ |/|
| * Merge pull request #40442 from obsidiansystems/cabal-frameworksJohn Ericson2018-05-18
| |\ | | | | | | haskell-generic-builder: Add extra framework dirs
| * \ Merge branch 'staging' into fix-ncurses-darwin-extensionsMatthew Justin Bauer2018-05-02
| |\ \
| | * | haskell-generic-builder: be explicit about `doCheck`, cleanupJan Malakhovski2018-04-26
| | | |
* | | | haskell infra: Adds buildFlags logicMoritz Angermann2018-05-21
| | | |
* | | | haskell generic builder: Do the `links` dance only if shared is enabled.Moritz Angermann2018-05-21
| | | |