Commit graph

23 commits

Author SHA1 Message Date
Peter Simons c4ff9d10ba haskell-generic-builder: consistently use $TMPDIR to refer to the designated place for temporary files
Resolves https://github.com/NixOS/nixpkgs/issues/6525.
2015-03-09 15:55:24 +01:00
Joel Taylor 8bfa1a2efc Patches for a lot of packages for GHC 7.10 2015-02-22 17:33:10 -08:00
Peter Simons 5d5b51dfc0 haskell-generic-builder: add a passthru attribute 'isHaskellLibrary' to every derivation
The presence of this attribute allows us to recognize Haskell derivations.
Furthermore, we can use it to distinguish libraries from executables (which is
useful for the code that's generating the wrapper).
2015-02-22 22:13:10 +01:00
Peter Simons 9db348d7f9 ghc-7.10.x: compile Setup.hs with -threaded to avoid hanging test suites
Closes https://github.com/NixOS/nixpkgs/issues/6259.
2015-02-13 22:24:32 +01:00
Peter Simons 69cda1a7c0 haskell-generic-builder: set locale to "UTF-8" in nix-shell environments
The package builder did this already, but I forgot to add the setting in
the interactive environment.

Fixes https://github.com/NixOS/nixpkgs/issues/5904.
2015-01-23 08:19:46 +01:00
Peter Simons 9ab8a12b06 haskell-generic-builder: re-enable the checkPhase that was accidentally broken in the earlier re-factoring 2015-01-20 16:17:14 +01:00
Peter Simons 8959aade32 haskell-generic-builder: allow setting preUnpack and postUnpack hooks
This is useful for Hydra builds that have more than one package in the
same repository and need to change to the proper directory.
2015-01-19 23:15:29 +01:00
Peter Simons 380114738f haskell-ng: rename "noHaddock" attribute to "doHaddock"
This makes the attribute (a) consistent with "doCheck" and friends and (b)
avoids the double negation "noHaddock = false" meaning "doHaddock = true".

Fixes https://github.com/NixOS/cabal2nix/issues/63.
2015-01-18 12:58:31 +01:00
Peter Simons 54bbfd5440 haskell-generic-builder: re-factor for improved modularity 2015-01-17 20:29:00 +01:00
Peter Simons e6ecb1fb83 haskell-ng: enable package sets for GHC 6.12.3, 7.0.4, 7.2.2, and 7.4.2 2015-01-17 20:29:00 +01:00
Eric Seidel ed1ca3928d don't use cpphs by default on darwin 2015-01-15 13:40:04 -08:00
Peter Simons df76eb1268 ghc: revert "propagate 'gmp' and 'ncurses' to ensure users can link the 'haskeline' library, etc."
I thought that [1] could be fixed by ensuring that ncurses is available in the
environment (because ghc exports it as a propagateBuildInput), and indeed that
change fixed *some* build failures we've had before. However, the same error
still occurs with other packages, like hledger [2] and Agda [3]. Frankly, I
have no idea why those packages fail and others don't. But clearly the fix was
inadequate, so I'm reverting commit a8076c76.

[1] https://github.com/NixOS/nixpkgs/issues/5616
[2] http://hydra.cryp.to/build/372451/nixlog/1/raw
[2] http://hydra.cryp.to/build/373161/nixlog/1/raw
2015-01-14 22:24:33 +01:00
Peter Simons a8076c7654 ghc: propagate 'gmp' and 'ncurses' to ensure users can link the 'haskeline' library, etc.
Fixes https://github.com/NixOS/nixpkgs/issues/5616.
2015-01-14 11:24:59 +01:00
Peter Simons 007628fd49 haskell-generic-builder: use cpphs pre-processor by default on Darwin
Allegedly, the cpp implementation of Clang is weird and causes errors.
2015-01-13 22:33:17 +01:00
Peter Simons 67312f83ad haskell-generic-builder: pass "--with-gcc=$CC" on Darwin to help Cabal find Clang
Suggested in https://github.com/NixOS/nixpkgs/pull/5746.
2015-01-13 22:33:01 +01:00
Shea Levy 67460ea19f haskellng: Fix amazonka-core on 7.8
Required adding a flag to the generic builder to build Setup.hs with
core packages even if there is an override in buildInputs, to break
circular dependencies.
2015-01-12 15:41:03 -05:00
Peter Simons bca9b8d867 haskell-generic-builder: make $shellHook in 'env' attribute more robust
In case our GHC environment is empty, the old code ended up running
'grep export' on a GHC binary, which doesn't seem like a good idea.
2015-01-11 11:59:47 +01:00
Peter Simons dbb4012fdc haskell-generic-builder: add a helpful message that explains why it makes no sense to build an 'env' attribute 2015-01-11 11:39:16 +01:00
Peter Simons b31082d246 haskell-generic-builder: propagate build inputs only if we're building a library 2015-01-10 23:54:30 +01:00
Peter Simons 89b5d9ee14 haskell-generic-builder: add an 'env' attribute to every Haskell expression that can be used with nix-shell to create an interactive build environment for this package
For example:

  nix-shell --pure ~/.nix-defexpr -A haskell-ng.packages.ghc784.hsdns.env
2015-01-10 15:55:47 +01:00
Peter Simons afca6145d4 haskell-generic-builder: simplify "package.conf.d" management
The builder creates a temporary package.conf.d database in $TMP that
contains everything required to build the current package (i.e. the
transitive closure of the package's propagated build inputs). These
files are no longer installed, however, we just install the package.conf
file for the package we're actually building. This means that
package.conf.d directory in $out won't have collisions anymore, which
simplifies the with-packages-wrapper.nix a bit.
2015-01-10 15:55:47 +01:00
Peter Simons 2f2f767813 haskell-generic-builder: allow selective enabling/disabling of the --hoogle flag to Haddock 2015-01-09 19:55:25 +01:00
Peter Simons 54baa53df1 Say hello to our brand-new Haskell infrastructure. 2015-01-07 23:45:21 +01:00