From df4fb819beea9d3cf431ec6f12cbb8ec04c8bd37 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sun, 5 Jul 2015 20:55:12 +0200 Subject: [PATCH] ghc: add release candidate 2 for compiler version 7.10.2 --- pkgs/development/compilers/ghc/7.10.2.nix | 56 +++++++++++++++++++++++ pkgs/top-level/haskell-packages.nix | 7 +++ 2 files changed, 63 insertions(+) create mode 100644 pkgs/development/compilers/ghc/7.10.2.nix diff --git a/pkgs/development/compilers/ghc/7.10.2.nix b/pkgs/development/compilers/ghc/7.10.2.nix new file mode 100644 index 00000000000..df951271a31 --- /dev/null +++ b/pkgs/development/compilers/ghc/7.10.2.nix @@ -0,0 +1,56 @@ +{ stdenv, fetchurl, fetchpatch, ghc, perl, gmp, ncurses, libiconv }: + +let + + 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" + libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses}/include" + libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses}/lib" + ${stdenv.lib.optionalString stdenv.isDarwin '' + libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include" + libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib" + ''} + ''; + +in + +stdenv.mkDerivation rec { + version = "7.10.1.20150630"; + name = "ghc-${version}"; + + src = fetchurl { + url = "https://downloads.haskell.org/~ghc/7.10.2-rc2/${name}-src.tar.xz"; + sha256 = "1wxf7jkkgpvvrg3q311c4rca4vsxrqrmnrqg4j4klgj445yj82gb"; + }; + + buildInputs = [ ghc perl ]; + + enableParallelBuilding = true; + + preConfigure = '' + echo >mk/build.mk "${buildMK}" + sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure + '' + stdenv.lib.optionalString (!stdenv.isDarwin) '' + export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}" + '' + stdenv.lib.optionalString stdenv.isDarwin '' + export NIX_LDFLAGS+=" -no_dtrace_dof" + ''; + + configureFlags = [ + "--with-gcc=${stdenv.cc}/bin/cc" + "--with-gmp-includes=${gmp}/include" "--with-gmp-libraries=${gmp}/lib" + ]; + + # required, because otherwise all symbols from HSffi.o are stripped, and + # that in turn causes GHCi to abort + stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols"; + + meta = { + homepage = "http://haskell.org/ghc"; + description = "The Glasgow Haskell Compiler"; + maintainers = with stdenv.lib.maintainers; [ marcweber andres simons ]; + inherit (ghc.meta) license platforms; + }; + +} diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 6b37718afea..8ffa3ce8ebf 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -34,6 +34,9 @@ rec { ghc7101 = callPackage ../development/compilers/ghc/7.10.1.nix ({ ghc = compiler.ghc784; } // stdenv.lib.optionalAttrs stdenv.isDarwin { libiconv = pkgs.darwin.libiconv; }); + ghc7102 = callPackage ../development/compilers/ghc/7.10.2.nix ({ ghc = compiler.ghc784; } // stdenv.lib.optionalAttrs stdenv.isDarwin { + libiconv = pkgs.darwin.libiconv; + }); ghcHEAD = callPackage ../development/compilers/ghc/head.nix ({ inherit (packages.ghc784) ghc alex happy; } // stdenv.lib.optionalAttrs stdenv.isDarwin { libiconv = pkgs.darwin.libiconv; }); @@ -84,6 +87,10 @@ rec { ghc = compiler.ghc7101; packageSetConfig = callPackage ../development/haskell-modules/configuration-ghc-7.10.x.nix { }; }; + ghc7102 = callPackage ../development/haskell-modules { + ghc = compiler.ghc7102; + packageSetConfig = callPackage ../development/haskell-modules/configuration-ghc-7.10.x.nix { }; + }; ghcHEAD = callPackage ../development/haskell-modules { ghc = compiler.ghcHEAD; packageSetConfig = callPackage ../development/haskell-modules/configuration-ghc-head.nix { };