diff --git a/pkgs/development/compilers/ghc/7.4.2.nix b/pkgs/development/compilers/ghc/7.4.2.nix new file mode 100644 index 000000000000..567e6c75def5 --- /dev/null +++ b/pkgs/development/compilers/ghc/7.4.2.nix @@ -0,0 +1,45 @@ +{stdenv, fetchurl, ghc, perl, gmp, ncurses, darwinInstallNameToolUtility}: + +stdenv.mkDerivation rec { + version = "7.4.1.20120412"; + + name = "ghc-${version}"; + + src = fetchurl { + url = "http://haskell.org/ghc/dist/stable/dist/${name}-src.tar.bz2"; + sha256 = "0hpzd51s5nvlsjk3wza45ji5v6m0szqjzch45fvv7wfzllrm595l"; + }; + + buildInputs = [ghc perl gmp ncurses] ++ + (if stdenv.isDarwin then [darwinInstallNameToolUtility] else []); + + buildMK = '' + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp}/lib" + libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp}/include" + ''; + + preConfigure = '' + echo "${buildMK}" > mk/build.mk + sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure + ''; + + configureFlags=[ + "--with-gcc=${stdenv.gcc}/bin/gcc" + ]; + + # required, because otherwise all symbols from HSffi.o are stripped, and + # that in turn causes GHCi to abort + stripDebugFlags=["-S" "--keep-file-symbols"]; + + meta = { + homepage = "http://haskell.org/ghc"; + description = "The Glasgow Haskell Compiler"; + maintainers = [ + stdenv.lib.maintainers.marcweber + stdenv.lib.maintainers.andres + stdenv.lib.maintainers.simons + ]; + platforms = ghc.meta.platforms; + }; + +} diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix index 0a08cc3a4e70..8d495a092c16 100644 --- a/pkgs/development/compilers/ghc/head.nix +++ b/pkgs/development/compilers/ghc/head.nix @@ -1,13 +1,13 @@ {stdenv, fetchurl, ghc, perl, gmp, ncurses, darwinInstallNameToolUtility}: stdenv.mkDerivation rec { - version = "7.4.0.20120126"; + version = "7.5.20120413"; name = "ghc-${version}"; src = fetchurl { - url = "http://haskell.org/ghc/dist/7.4.1-rc2/${name}-src.tar.bz2"; - sha256 = "0arnvzhwjzk2z3m2891b4z13p4v1c84f31jgyj13a1fbfpylgs64"; + url = "http://haskell.org/ghc/dist/current/dist/${name}-src.tar.bz2"; + sha256 = "0mvpdibdvbanpia8lngrw6pinn1jm867mjcz55zj5nv8wqhgfs7r"; }; buildInputs = [ghc perl gmp ncurses] ++ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f7f2438208a5..c80694ff6ef9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2307,12 +2307,19 @@ let (if stdenv.isDarwin then ghc704Binary else ghc6121Binary) (x : x.ghc741Prefs) false false lowPrio); + # Stable branch snapshot. + haskellPackages_ghc742 = + recurseIntoAttrs + (haskellPackagesFun ../development/compilers/ghc/7.4.2.nix + (if stdenv.isDarwin then ghc704Binary else ghc6121Binary) + (x : x.ghcHEADPrefs) false false lowPrio); + # Reasonably current HEAD snapshot. Should *always* be lowPrio. haskellPackages_ghcHEAD = recurseIntoAttrs (haskellPackagesFun ../development/compilers/ghc/head.nix # (haskellPackages_ghc704.ghcWithPackages (self : [ self.alex self.happy ])) - (if stdenv.isDarwin then ghc704Binary else ghc6121Binary) + ghc704Binary (x : x.ghcHEADPrefs) false false lowPrio); haxeDist = import ../development/compilers/haxe {