about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndres Löh <mail@andres-loeh.de>2010-09-28 13:48:22 +0000
committerAndres Löh <mail@andres-loeh.de>2010-09-28 13:48:22 +0000
commitf6e3110b74cfe357572a90d549e6ed8797f06f12 (patch)
tree86f24186015843aa791fa8f088253314d6ef30be
parenta77454913966b3aca1ca21a08082738d7950f70e (diff)
downloadnixlib-f6e3110b74cfe357572a90d549e6ed8797f06f12.tar
nixlib-f6e3110b74cfe357572a90d549e6ed8797f06f12.tar.gz
nixlib-f6e3110b74cfe357572a90d549e6ed8797f06f12.tar.bz2
nixlib-f6e3110b74cfe357572a90d549e6ed8797f06f12.tar.lz
nixlib-f6e3110b74cfe357572a90d549e6ed8797f06f12.tar.xz
nixlib-f6e3110b74cfe357572a90d549e6ed8797f06f12.tar.zst
nixlib-f6e3110b74cfe357572a90d549e6ed8797f06f12.zip
Preliminarily added ghc-7.0.1-rc1 and current HEAD.
svn path=/nixpkgs/trunk/; revision=23985
-rw-r--r--pkgs/development/compilers/ghc/7.0.1.nix84
-rw-r--r--pkgs/development/compilers/ghc/head.nix84
-rw-r--r--pkgs/top-level/all-packages.nix39
-rw-r--r--pkgs/top-level/release.nix4
4 files changed, 186 insertions, 25 deletions
diff --git a/pkgs/development/compilers/ghc/7.0.1.nix b/pkgs/development/compilers/ghc/7.0.1.nix
new file mode 100644
index 000000000000..e4840eb2d20a
--- /dev/null
+++ b/pkgs/development/compilers/ghc/7.0.1.nix
@@ -0,0 +1,84 @@
+{stdenv, fetchurl, ghc, perl, gmp, ncurses}:
+
+stdenv.mkDerivation rec {
+  version = "7.0.1-rc1";
+  
+  name = "ghc-${version}";
+  
+  # TODO: Does this have to be here, or can it go to meta?
+  homepage = "http://haskell.org/ghc";
+
+  src = fetchurl {
+    url = "http://new-www.haskell.org/ghc/dist/${version}/ghc-7.0.0.20100924-src.tar.bz2";
+    sha256 = "14b3cg4i805798v0rasr16nja70k68vp34qar0pv2vbwcl39apv5";
+  };
+
+  buildInputs = [ghc perl gmp ncurses];
+
+  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
+  '';
+
+  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 = {
+    inherit homepage;
+    description = "The Glasgow Haskell Compiler";
+    maintainers = [
+      stdenv.lib.maintainers.marcweber
+      stdenv.lib.maintainers.andres
+    ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+
+  # TODO: requires a comment as to what it does and why it is needed.
+  passthru = {
+    corePackages = [
+       [ "Cabal" "1.8.0.2" ]
+       [ "array" "0.3.0.0" ]
+       [ "base" "3.0.3.2" ]
+       [ "base" "4.2.0.0" ]
+       [ "bin-package-db" "0.0.0.0" ]
+       [ "bytestring" "0.9.1.5" ]
+       [ "containers" "0.3.0.0" ]
+       [ "directory" "1.0.1.0" ]
+       [ "dph-base" "0.4.0" ]
+       [ "dph-par" "0.4.0" ]
+       [ "dph-prim-interface" "0.4.0" ]
+       [ "dph-prim-par" "0.4.0" ]
+       [ "dph-prim-seq" "0.4.0" ]
+       [ "dph-seq" "0.4.0" ]
+       [ "extensible-exceptions" "0.1.1.1" ]
+       [ "ffi" "1.0" ]
+       [ "filepath" "1.1.0.3" ]
+       [ "ghc" "6.12.1" ]
+       [ "ghc-binary" "0.5.0.2" ]
+       [ "ghc-prim" "0.2.0.0" ]
+       [ "haskell98" "1.0.1.1" ]
+       [ "hpc" "0.5.0.4" ]
+       [ "integer-gmp" "0.2.0.0" ]
+       [ "old-locale" "1.0.0.2" ]
+       [ "old-time" "1.0.0.3" ]
+       [ "pretty" "1.0.1.1" ]
+       [ "process" "1.0.1.2" ]
+       [ "random" "1.0.0.2" ]
+       [ "rts" "1.0" ]
+       [ "syb" "0.1.0.2" ]
+       [ "template-haskell" "2.4.0.0" ]
+       [ "time" "1.1.4" ]
+       [ "unix" "2.4.0.0" ]
+       [ "utf8-string" "0.3.4" ]
+    ];
+  };
+}
diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix
new file mode 100644
index 000000000000..e24e1aaebcb1
--- /dev/null
+++ b/pkgs/development/compilers/ghc/head.nix
@@ -0,0 +1,84 @@
+{stdenv, fetchurl, ghc, perl, gmp, ncurses}:
+
+stdenv.mkDerivation rec {
+  version = "6.13.20100917";
+  
+  name = "ghc-${version}";
+  
+  # TODO: Does this have to be here, or can it go to meta?
+  homepage = "http://haskell.org/ghc";
+
+  src = fetchurl {
+    url = "${homepage}/dist/current/dist/${name}-src.tar.bz2";
+    sha256 = "0b5pg6688yfzd5zfaffjp21y933vp94h94ds85gwi156f4g3bkij";
+  };
+
+  buildInputs = [ghc perl gmp ncurses];
+
+  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
+  '';
+
+  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 = {
+    inherit homepage;
+    description = "The Glasgow Haskell Compiler";
+    maintainers = [
+      stdenv.lib.maintainers.marcweber
+      stdenv.lib.maintainers.andres
+    ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+
+  # TODO: requires a comment as to what it does and why it is needed.
+  passthru = {
+    corePackages = [
+       [ "Cabal" "1.8.0.2" ]
+       [ "array" "0.3.0.0" ]
+       [ "base" "3.0.3.2" ]
+       [ "base" "4.2.0.0" ]
+       [ "bin-package-db" "0.0.0.0" ]
+       [ "bytestring" "0.9.1.5" ]
+       [ "containers" "0.3.0.0" ]
+       [ "directory" "1.0.1.0" ]
+       [ "dph-base" "0.4.0" ]
+       [ "dph-par" "0.4.0" ]
+       [ "dph-prim-interface" "0.4.0" ]
+       [ "dph-prim-par" "0.4.0" ]
+       [ "dph-prim-seq" "0.4.0" ]
+       [ "dph-seq" "0.4.0" ]
+       [ "extensible-exceptions" "0.1.1.1" ]
+       [ "ffi" "1.0" ]
+       [ "filepath" "1.1.0.3" ]
+       [ "ghc" "6.12.1" ]
+       [ "ghc-binary" "0.5.0.2" ]
+       [ "ghc-prim" "0.2.0.0" ]
+       [ "haskell98" "1.0.1.1" ]
+       [ "hpc" "0.5.0.4" ]
+       [ "integer-gmp" "0.2.0.0" ]
+       [ "old-locale" "1.0.0.2" ]
+       [ "old-time" "1.0.0.3" ]
+       [ "pretty" "1.0.1.1" ]
+       [ "process" "1.0.1.2" ]
+       [ "random" "1.0.0.2" ]
+       [ "rts" "1.0" ]
+       [ "syb" "0.1.0.2" ]
+       [ "template-haskell" "2.4.0.0" ]
+       [ "time" "1.1.4" ]
+       [ "unix" "2.4.0.0" ]
+       [ "utf8-string" "0.3.4" ]
+    ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 84e49e8d1b7b..a1d589654646 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1781,14 +1781,7 @@ let
   # reducing the number or "enabled" versions again.
 
   # Helper functions to abstract away from repetitive instantiations.
-  haskellPackagesFun610 = ghcPath : profDefault : recurseIntoAttrs (import ./haskell-packages.nix {
-    inherit pkgs newScope;
-    enableLibraryProfiling = getConfig [ "cabal" "libraryProfiling" ] profDefault;
-    ghc = callPackage ghcPath {
-      ghc = ghc6101Binary;    };
-  });
-
-  haskellPackagesFun612 = ghcPath : profDefault : recurseIntoAttrs (import ./haskell-packages.nix {
+  haskellPackagesFun = ghcPath : profDefault : recurseIntoAttrs (import ./haskell-packages.nix {
     inherit pkgs newScope;
     enableLibraryProfiling = getConfig [ "cabal" "libraryProfiling" ] profDefault;
     ghc = callPackage ghcPath {
@@ -1797,36 +1790,32 @@ let
 
   # Currently active GHC versions.
   haskellPackages_ghc6101 =
-    haskellPackagesFun610 ../development/compilers/ghc/6.10.1.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.10.1.nix false;
 
   haskellPackages_ghc6102 =
-    haskellPackagesFun610 ../development/compilers/ghc/6.10.2.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.10.2.nix false;
 
   haskellPackages_ghc6103 =
-    haskellPackagesFun610 ../development/compilers/ghc/6.10.3.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.10.3.nix false;
 
-  # Current default version.
   haskellPackages_ghc6104 =
-    haskellPackagesFun610 ../development/compilers/ghc/6.10.4.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.10.4.nix false;
 
   haskellPackages_ghc6121 =
-    haskellPackagesFun612 ../development/compilers/ghc/6.12.1.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.12.1.nix false;
 
   haskellPackages_ghc6122 =
-    haskellPackagesFun612 ../development/compilers/ghc/6.12.2.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.12.2.nix false;
 
+  # Current default version.
   haskellPackages_ghc6123 =
-    haskellPackagesFun612 ../development/compilers/ghc/6.12.3.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.12.3.nix false;
 
-  # Currently not pointing to the actual HEAD, therefore disabled
-  /*
-  haskellPackages_ghcHEAD = lowPrio (import ./haskell-packages.nix {
-    inherit pkgs;
-    ghc = callPackage ../development/compilers/ghc/6.11.nix {
-      inherit (haskellPackages) happy alex; # hope these aren't required for the final version
-      ghc = ghc6101Binary;    };
-  });
-  */
+  haskellPackages_ghc701 =
+    lowPrio (haskellPackagesFun ../development/compilers/ghc/7.0.1.nix false);
+
+  haskellPackages_ghcHEAD =
+    lowPrio (haskellPackagesFun ../development/compilers/ghc/head.nix false);
 
   haxeDist = import ../development/compilers/haxe {
     inherit fetchurl sourceFromHead stdenv lib ocaml zlib makeWrapper neko;
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index 28daa90a7162..b27f984d28fb 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -437,6 +437,10 @@ with (import ./release-lib.nix);
     xmonad = linux;
   };
 
+  haskellPackages_ghc701 = {
+    ghc = ghcSupported;
+  };
+
   kde3 = {
     kdebase = linux;
     kdelibs = linux;