Commit Graph

306 Commits

Author SHA1 Message Date
Peter Simons
eb4f75a868 ghc: remove obsolete "i686-darwin" from meta.platforms 2015-03-26 11:29:05 +01:00
Peter Simons
6bd48cbfef Enable Darwin builds of Haskell packages again.
Hopefully, issues like https://github.com/NixOS/nixpkgs/issues/2689 are
all remedied by now.
2015-03-26 11:29:05 +01:00
Peter Simons
93bd02a6aa ghc: versions prior to 7.4.x currently don't work on Darwin
db4cb021c0 (commitcomment-10320216)
2015-03-26 11:29:05 +01:00
Mateusz Kowalczyk
d56831a9af ghc: update link and version of 7.10 RC3 2015-03-19 12:33:11 +00:00
Peter Simons
04611ab692 ghc: update 7.10.1 to rc3 2015-03-17 11:40:51 +01:00
Peter Simons
3f712f8448 ghc-6.10.4: cosmetic clean up 2015-03-15 11:00:11 +01:00
Peter Simons
26223831dc ghc-6.12.3: cosmetic clean up 2015-03-15 11:00:11 +01:00
Peter Simons
e2b033cad9 ghc: re-instate code that configures statically linked builds by default
The compiler should not expect to have dynamic versions of all libraries
available, because that configuration doesn't play along nicely with statically
linked libraries.

Fixes https://github.com/NixOS/nixpkgs/issues/6399.
2015-03-09 15:55:24 +01:00
Joel Taylor
4b6d83199a Fix temp directory paths for GHC 7.0.4 on Darwin
This is a remnant of https://github.com/NixOS/nixpkgs/pull/6268
2015-02-16 23:42:59 -08:00
Peter Simons
155e926274 ghc: disable parallel building for older versions again
This change accidentally crept in with the recent Darwin changes.
2015-02-14 19:41:49 +01:00
Joel Taylor
fd18936a32 Add purity to GHC builds on Darwin 2015-02-14 19:41:49 +01:00
Peter Simons
54ce1a1810 Merge remote-tracking branch 'origin/master' into staging.
Conflicts:
      pkgs/development/compilers/ghc/head.nix
      pkgs/top-level/haskell-ng.nix
2015-02-13 22:13:25 +01:00
Joel Taylor
2a5dacbf6b patch shebangs in boot script 2015-02-13 10:37:47 +01:00
Joel Taylor
dcafdf47ea Revert "Revert "Build GHC HEAD from git checkout"."
This reverts commit 15416dd2ec.
2015-02-13 10:37:47 +01:00
Peter Simons
15416dd2ec Revert "Build GHC HEAD from git checkout".
This reverts commit 52c8d7c4ab. The new
expression doesn't compile: http://hydra.nixos.org/build/19594431/nixlog/1/raw.
2015-02-12 20:15:56 +01:00
Joel Taylor
52c8d7c4ab Build GHC HEAD from git checkout 2015-02-11 14:32:54 -08:00
Joel Taylor
db4cb021c0 Add purity to GHC builds on Darwin. 2015-02-10 22:08:01 +01:00
Peter Simons
f637b5368b ghc-head: re-use the $version attribute in the URL to prevent mismatches 2015-02-03 17:01:09 +01:00
Peter Simons
86753ed326 ghc-7.10.1: fix misspelled version number in build expression 2015-02-03 17:01:09 +01:00
Cray Elliott
a9b774204b Update GHC 7.10.1 expression to RC2 2015-01-26 22:41:27 -08:00
Peter Simons
134d1a80c6 Add a package set for GHC 7.10.1-rc1 and bump GHC HEAD to 7.11.x.
Fixes https://github.com/NixOS/nixpkgs/issues/5836.
2015-01-19 13:55:31 +01:00
Peter Simons
20560e667a Remove obsolete, broken, and unnecessary versions of GHC.
These versions have been removed:

 - 6.4.2-binary.nix
 - 6.4.2.nix
 - 6.6.1.nix
 - 6.8.2.nix
 - 6.8.3.nix
 - 6.10.1-binary.nix
 - 6.10.1.nix
 - 6.10.2.nix
 - 6.10.3.nix
 - 6.11.nix
 - 6.12.1-binary.nix
 - 6.12.1.nix
 - 6.12.2.nix
 - 7.0.1.nix
 - 7.0.2.nix
 - 7.0.3.nix
 - 7.2.1.nix
 - 7.4.1.nix
 - 7.6.1.nix
 - 7.6.2.nix
 - 7.8.3-binary.nix

As a rule of thumb, we keep the latest version in every major release. If
someone feels up to the task of fixing versions 6.4.x, 6.6.x, and 6.8.x, then
please don't hesitate to revive those builds.

Fixes https://github.com/NixOS/nixpkgs/issues/5630.
2015-01-17 20:29:00 +01:00
Peter Simons
d1fc5370e9 ghc: pass explicit 'ncurses' path to ./configure instead of finding through the environment
Fixes https://github.com/NixOS/nixpkgs/issues/5616. For real this time!
2015-01-17 20:29:00 +01:00
Peter Simons
1912736a86 ghc-7.8.4: re-implement "fix build on Darwin" to avoid re-builds on Linux
Originally, I thought that I can commit a "clean" patch -- even if it
triggers re-builds -- because those re-builds were triggered by the
ncurses patch to GHC anyway . That patch had to be reverted, though, so
now I'm rewriting this patch to avoid re-builds on Linux.

What a mess. :-(
2015-01-15 00:06:06 +01: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
Eric Seidel
a92afcd34a ghc-7.8.4: fix build on Darwin
https://github.com/NixOS/nixpkgs/pull/5746
2015-01-14 11:24:59 +01:00
Peter Simons
ddf0804a87 ghc-7.8.3-binary: remove broken platforms
The source tarballs URLs and hashes for everything but x86_64-darwin
were just copied from the 7.0.4 binaries. That's not going to work. :-(
2015-01-13 21:25:14 +01:00
Peter Simons
c1c0b4bbfd ghc: bump HEAD compiler to 7.10.1-rc1 2015-01-07 23:58:23 +01:00
John Wiegley
28b6fb61e6 Change occurrences of gcc to the more general cc
This is done for the sake of Yosemite, which does not have gcc, and yet
this change is also compatible with Linux.
2014-12-26 11:06:21 -06:00
Peter Simons
157e63c6e6 Update default Haskell compiler from GHC 7.8.3 to 7.8.4. 2014-12-24 09:56:31 +01:00
Peter Simons
8311973759 Add GHC 7.8.4 and create haskellPackages_ghc784 package set. 2014-12-23 20:44:49 +01:00
Peter Simons
f9580894f2 ghc-head: bump version to most recent snapshot 2014-12-18 19:03:28 +01:00
Peter Simons
c9cd0bc68c ghc-head: fix configure phase to make sure the compiler knows how to use gmp properly
Start with version 7.9 of the compiler, the path to the gmp library must
now be passed to the top-level configure script.
2014-12-18 19:03:28 +01:00
Mathijs Kwik
04f73ed2e4 ghc-head: upgrade to 2014-12-10 2014-12-13 21:17:14 +01:00
Luca Bruno
83221f3886 Merge branch 'master' into staging
Makes the build more useful:
- Disabled hybrid iso, makes installer tests pass again
- Imagemagick fixes to the "Illegal instruction" thing
2014-11-08 15:56:40 +01:00
Peter Simons
484b26569a ghc-head: update to version 7.9.20141106 2014-11-07 23:22:27 +01:00
Eelco Dolstra
7495c61d49 Merge remote-tracking branch 'origin/darwin-clang-stdenv' into staging
Conflicts:
	pkgs/applications/editors/vim/macvim.nix
2014-11-04 14:30:43 +01:00
Peter Simons
7a20d76482 Disable all Haskell builds for Darwin on Hydra.
Hydra generates a GHC closure for Darwin that for no apparent reason
contains an ancient, broken Haddock binary -- probably because of an
impurity in the build system. That bug makes those GHC binaries
unusable: <https://github.com/NixOS/nixpkgs/issues/2689>.
2014-10-21 23:54:51 +02:00
Joel Taylor
3e8344d334 suitable clang stdenv 2014-09-09 13:54:24 -07:00
Ryan Newton
56d15045fa Bump ghc-head to latest. 2014-08-19 23:47:58 +02:00
Peter Simons
78fccddde3 ghc 7.0.2 and 7.0.3 are "broken" because of build errors with recent versions of GCC
rts/StgCRun.c: In function 'StgRunIsImplementedInAssembler':

  rts/StgCRun.c:208:1:
       error: frame pointer required, but reserved
       StgRunIsImplementedInAssembler(void)
       ^

  In file included from includes/Stg.h:230:0:
      0,
                       from rts/StgCRun.c:70:

  includes/stg/Regs.h:323:20:
       note: for 'Sp'
       GLOBAL_REG_DECL(P_,Sp,REG_Sp)
                          ^

  includes/stg/Regs.h:174:54:
       note: in definition of macro 'GLOBAL_REG_DECL'
       #define GLOBAL_REG_DECL(type,name,reg) register type name REG(reg);
                                                            ^
2014-07-12 15:13:59 +02:00
Peter Simons
48a2253974 ghc: update version 7.8.2 to 7.8.3 2014-07-12 15:13:58 +02:00
Vladimír Čunát
de12094b0e Merge recent master 2014-06-12 09:15:11 +02:00
Peter Simons
abff388c20 ghc-head: update to version 7.9.20140608 2014-06-10 20:27:20 +02:00
Vladimír Čunát
5e37c09f06 ghc on darwin: second attempt to fix build
Tested not to affect hash on linux.
2014-06-09 19:01:49 +02:00
Vladimír Čunát
789b1d613c ghc on darwin: attempt to fix build 2014-05-30 23:13:49 +02:00
Vladimír Čunát
628ac8b087 older GHCs: fix build after gcc-4.8.3 bump
Getting "frame pointer required, but reserved" while compiling runtime.
Thanks to @jwiegley for suggestion of the work-around.
2014-05-30 23:10:19 +02:00
Ricardo M. Correia
2204eb9f18 ghc: Add support for grsecurity
In this case, we also need to specify compilation flags to mark stacks as
non-executable, otherwise PaX will not allow ghc or binaries built by ghc
to run.  This is what gentoo-hardened does as well.
2014-05-15 13:25:49 +02:00
Peter Simons
366e3bd7a1 ghc-7.0.1: fix download URL 2014-05-07 20:33:32 +02:00
Peter Simons
13b246b221 ghc-head: update snapshot to 7.9.20140430 (and download the tarball from Debian)
https://github.com/NixOS/nixpkgs/pull/2480
2014-05-03 20:03:30 +02:00
Peter Simons
4604d52df4 GHC version 7.8.1 has been deprecated because of a serious bug.
We'll have version 7.8.2 out soon.

http://www.haskell.org/pipermail/ghc-devs/2014-April/004605.html
http://www.haskell.org/pipermail/ghc-devs/2014-April/004616.html
2014-04-11 22:33:11 +02:00
Peter Simons
23c7a249d3 ghc: add release version 7.8.1 2014-04-08 21:35:48 +02:00
Peter Simons
5c3be05e90 ghc-HEAD: fix build on recent versions of Darwin 2014-03-22 17:08:47 +01:00
Peter Simons
e54ae8cce1 ghc-7.8.1: fix build on recent versions of Darwin 2014-03-22 17:08:47 +01:00
Peter Simons
ec8e5b99fc ghc-7.4.2: fix build on recent versions of Darwin 2014-03-22 17:08:47 +01:00
Peter Simons
4d03052c9c ghc: update HEAD snapshot to 7.9.20140313 2014-03-15 09:11:47 +01:00
Andres Loeh
b2b4e46198 Add GHC-7.8.1-rc2. 2014-03-11 20:14:24 +01:00
Eelco Dolstra
8893f10d6a ghc: Fix building on Darwin
http://hydra.nixos.org/build/8598783
2014-01-30 13:45:48 +01:00
Peter Simons
cb21683794 ghc: disable parallel building
It sucks, I know, but GHC just doesn't compile reliably when built with
some -j<n> option. :-( We have build errors because of apparent race
conditions all over the place on Hydra. This causes so much trouble for
users that it's not worth keeping this option enabled, IMHO.
2014-01-21 20:35:49 +01:00
Vladimír Čunát
2848336491 ghc-7.6.3: disable parallel building (fails on Hydra) 2014-01-17 21:57:30 +01:00
Peter Simons
c32bf83301 Merge remote-tracking branch 'origin/master' into stdenv-updates.
Conflicts:
	pkgs/development/interpreters/perl/5.16/default.nix
	pkgs/tools/networking/curl/default.nix
	pkgs/top-level/all-packages.nix
	pkgs/top-level/release-python.nix
	pkgs/top-level/release-small.nix
	pkgs/top-level/release.nix
2013-12-04 18:33:52 +01:00
Peter Simons
dc662dcaa2 ghc-head: update to today's git snapshot and arbitrarily dub it version 7.7.20131202 2013-12-03 22:23:20 +01:00
Peter Simons
e4d841eef4 Re-implement ghcWithPackagesOld as a variant of ghcWithPackages that ignores collisions.
This change is intended to fix <https://github.com/NixOS/nixpkgs/issues/1161>
and to address some of the concerns that come up during the discussion of
<d64917ad17>.
2013-11-09 20:41:52 +01:00
Peter Simons
981c287355 ghc: several enhancements to the new "with-packages" wrapper
1) The wrapper erroneously used the ghc-pkg flag "--package-db" instead of
    "--global-package-db". The result was that packages installed locally in
    ~/.ghc and ~/.cabal were invisible to GHC. This has been fixed.

 2) The wrapper now deals gracefully with an empty package set: if no package
    is requested to be included in the wrapped environment, the wrapper just
    installs a pristine GHC.

 3) Correctly configure the "docdir" path returned by ghc-paths.

 4) Added some comments that describe the idea behind our ghc-paths patches and
    gives users same sample shell code that can be used to import our special
    environment variables into the currently running shell, so that programs
    outside of the wrapped environment can use them, too.
2013-11-09 20:36:25 +01:00
Peter Simons
f92a5cbfc6 pkgs/development/compilers/ghc/with-packages.nix: add 'ignoreCollisions' parameter
The ghcWithPackage expression now has an argument 'ignoreCollisions' that
allows users to disable the path collision check like so:

  (pkgs.haskellPackages.ghcWithPackages (pkgs: with pkgs; [ haskellPlatform ])).override { ignoreCollisions = true; };

See d64917ad17
for a long and detailed discussion of why these path collisions may occur.
2013-11-07 12:14:19 +01:00
Peter Simons
89c566fcfd pkgs/development/compilers/ghc/with-packages.nix: improve recognition of Haskell packages
Haskell packages -- i.e. packages built by our Cabal builder -- invariably have
the attributes 'pname' and 'version'. We use the absence of these attributes to
recognize non-Haskell packages and filter them from the closed package set
generated by closePropagation. We do this so that the generated Haskell
environment won't contain paths like "/lib/libz.a", which are part of the
closure but have nothing to do with Haskell.

The previous scheme used the attribute 'ghc' to accomplish the same thing, but
unfortunately other packages to contain a 'ghc' attribute, too, like the
old-style ghc-wrapper. Including the ghc-wrapper in this environment is
pointless, obviously. The new approach filters the ghc-wrapper successfully.
2013-11-07 12:14:19 +01:00
Peter Simons
0e831bd525 Resurrect the old ghcWithPackages wrapper under the attribute name 'ghcWithPackagesOld'. 2013-11-04 19:42:49 +01:00
Mathijs Kwik
609f8dc04b Merge branch 'master' into stdenv-updates
Conflicts:
	pkgs/top-level/all-packages.nix
2013-11-01 08:31:54 +01:00
Peter Simons
094edba311 ghc-with-packages.nix: make sure that GHC itself is included in the environment 2013-10-28 17:54:28 +01:00
Peter Simons
9eea6c64fb Merge branch 'origin/master' into stdenv-updates. 2013-10-27 10:58:24 +01:00
Peter Simons
f5e8f1ccc1 ghc: update HEAD version to 7.7.20130828 2013-10-27 10:22:21 +01:00
Peter Simons
d64917ad17 Back-port Haskell-related improvements from stdenv-updates.
* There now is full support for building Haskell packages as shared libraries
   for GHC versions 7.4.2 or later. The Cabal builder recognizes the following
   attributes:

    - enableSharedLibraries configures Cabal to build of shared libraries in
      addition to static ones. This option requires that all dependencies of
      the package have been compiled for use in shared libraries, too.

    - enableSharedExecutables configures Cabal to prefer shared libraries when
      linking executables.

   The default values for these attributes are arguments to the haskellPackages
   expression.

 * Haskell builds now run in a LANG="en_US.UTF-8" environment to avoid plenty
   of build and test suite errors. Without this setting, GHC seems unable to
   deal with the UTF-8 character encoding that's generally considered standard
   in the Haskell world.

 * The Cabal builder supports a new attribute 'testTarget' to specify the exact
   set of tests to be run during the check phase.

 * The ghc-wrapper attribute ghcVersion has been removed. Instead, we use the
   ghc.version attribute, which exists in unwrapped GHC derivations, too.
2013-10-27 10:09:36 +01:00
Peter Simons
fae8fd8ef1 ghc-wrapper: rename 'ghcVersion' attribute to 'version' for consistency 2013-10-20 15:40:36 +02:00
Peter Simons
e9163ad4c9 ghc: configure RPATH that allows ghc's shared libraries to find each other
Prior to this patch, libHSrts.so didn't know how to load libffi.so.
See issue #1081 for further details.
2013-10-18 18:39:04 +02:00
Peter Simons
f998111d2c ghc-7.6.3: undo commit 7c8ba75
The change was supposed to trigger a re-build to fix a broken GHC binary
on the Hydra build farm, but now it turns out that the cause for the
errors we're seeing isn't GHC: all kinds of (non-Haskell) packages are
broken.
2013-09-21 09:51:35 +02:00
Peter Simons
7c8ba7557c ghc-7.6.3: cosmetic change to force a re-build 2013-09-20 19:27:22 +02:00
Peter Simons
0d7118814b Merge branch 'origin/master' into stdenv. 2013-08-17 10:00:16 +02:00
Peter Simons
898348a80d ghc-head: update to version 7.7.20130816 2013-08-16 23:47:59 +02:00
Peter Simons
76244ac2e2 Merge branch 'master' into stdenv-updates
Conflicts:
	pkgs/development/compilers/ghc/with-packages.nix
2013-08-16 22:51:13 +02:00
Peter Simons
bb312b77b5 ghc-head: update to version 7.7.20130811 2013-08-11 23:50:05 +02:00
Gergely Risko
de35a6dbb9 Export ghci config files for ghc-vis and ghc-heap-view 2013-08-11 23:50:04 +02:00
Vladimír Čunát
8ba92b8895 Merge master into stdenv-updates
Conflicts (simple):
	pkgs/development/tools/misc/binutils/default.nix
	pkgs/tools/package-management/disnix/default.nix
	pkgs/top-level/all-packages.nix
2013-07-08 10:48:05 +02:00
Eelco Dolstra
acba9240cd nixos.org/tarballs -> tarballs.nixos.org
It's currently the same machine, but tarballs.nixos.org should become
an S3/CloudFront site eventually.
2013-06-25 14:12:16 +02:00
Shea Levy
fde3526e7d Merge branch 'master' into stdenv-updates
Conflict in kerberos, which was updated both in master and in
stdenv-updates. Kept the stdenv-updates version, except pulled in the
enableParallelBuilding change from master.

Signed-off-by: Shea Levy <shea@shealevy.com>

Conflicts:
	pkgs/development/libraries/kerberos/krb5.nix
2013-05-04 18:28:48 -04:00
Peter Simons
e0b57c9fb9 ghc: bump HEAD compiler to version 7.7 2013-04-24 13:21:05 +02:00
Peter Simons
fdf1d45a38 ghc: add version 7.6.3 (and a corresponding package set) 2013-04-21 20:10:27 +02:00
Peter Simons
431b774cc0 ghc: greatly simplify the GHC compiler wrapper
The wrapper script accumulated some cruft over the last couple of months
because we did changes in freaky ways to avoid triggering re-builds of all
Haskell packages. Most of these kludges have been thrown out now.

This patch doesn't change the behavior of the wrapper except for one thing: the
internal helper scripts "ghc-get-packages.sh" and "ghc-packages.sh" are no
longer installed in the bin directory of the generated derivation.
2013-04-20 23:28:53 +02:00
Peter Simons
4dd05a51ed ghc-binary: don't refer to /bin/sh 2013-04-20 23:28:11 +02:00
Peter Simons
2ffd0b6dac Merge changes from branch 'origin/master' into stdenv-updates. 2013-04-20 22:19:39 +02:00
Patrick John Wheeler
3bf0d2b960 ghc-wrapper: install the GHC documentation into the user's profile
The freaky implementation was done that way in order to avoid unnecessary
re-builds of all Haskell packages by changing the wrapper script used
internally in those builds.

See <https://github.com/NixOS/nixpkgs/pull/466> for further details.
2013-04-20 22:14:44 +02:00
Peter Simons
0823aea0a6 Merge branch 'master' into stdenv-updates.
Conflicts:
	pkgs/development/libraries/libxslt/default.nix

Commit 1764ea2b0a introduced changes to libxslt
in an awkward way to avoid re-builds on Linux. This patch has been simplified
during this merge.
2013-03-25 13:43:45 +01:00
Peter Simons
83d0a3a37c ghc: add meta.license attribute to all compiler versions 2013-03-23 15:58:14 +01:00
Peter Simons
264ac17a0f ghc-with-packages: set NIX_GHC_XXX variables for runhaskell and runghc, too 2013-03-21 16:26:18 +01:00
Peter Simons
459234db20 ghc-with-packages: include only derivations in the generated environment that have a ghc attribute
This predicate filters out packages that weren't created by the Cabal builder.
Doing that greatly reduces the likelihood of file collisions in the generated
environment, because Haskell packages tend to have a lot of propagated build
inputs.

For example, both zeromq 2.x and 3.x use the same names for their header files.
Users of haskell-zeromq don't need those headers, so we just don't include them
in the generated environment to avoid the collision that would otherwise occur
when haskell-zeromq 2.x and 3.x are installed into the same environment.
2013-03-21 16:25:50 +01:00
Peter Simons
90fc42c2f2 pkgs/development/compilers/ghc/with-packages.nix: simply this wrapper on top of buildenv 2013-03-15 21:11:31 +01:00
Peter Simons
d09269a22e Use the same directory layout for user-installed Haskell libraries that GHC
uses for its core libraries, so that these files integrate seamlessly into one
profile, living right next to each other. This change is eventually going to
simply our with-packages wrapper quite a bit.
2013-03-15 20:38:15 +01:00
Peter Simons
893c684e99 pkgs/development/compilers/ghc/with-packages.nix: include share/emacs/site-lisp in the generated environment
This change allows 'ghc-mod' to be included in such a GHC environment,
which is important because the tool is GHC version-specific.
2013-03-15 19:58:08 +01:00
Andres Loeh
54e0fe3ec1 ghc: update HEAD snapshot 2013-03-10 21:14:45 +01:00
Peter Simons
97faa4c319 ghc-with-packages.nix: include man pages in the generated profile 2013-02-11 23:26:06 +01:00