about summary refs log tree commit diff
path: root/pkgs/development/compilers
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2013-11-11 05:00:11 -0800
committerPeter Simons <simons@cryp.to>2013-11-11 05:00:11 -0800
commitb1f7180d6cc37b31a21e95582b438924c4971329 (patch)
treeadab72e1ea7a1dba422d2aa645d460f7999b8a93 /pkgs/development/compilers
parent1e80c57274b7e2877ac554b5a51f868253fafdc1 (diff)
parente4d841eef4ca99976c4556ba2eb938a44a4cdca6 (diff)
downloadnixlib-b1f7180d6cc37b31a21e95582b438924c4971329.tar
nixlib-b1f7180d6cc37b31a21e95582b438924c4971329.tar.gz
nixlib-b1f7180d6cc37b31a21e95582b438924c4971329.tar.bz2
nixlib-b1f7180d6cc37b31a21e95582b438924c4971329.tar.lz
nixlib-b1f7180d6cc37b31a21e95582b438924c4971329.tar.xz
nixlib-b1f7180d6cc37b31a21e95582b438924c4971329.tar.zst
nixlib-b1f7180d6cc37b31a21e95582b438924c4971329.zip
Merge pull request #1188 from peti/reimplement-ghcWithPackagesOld-by-wrapping-ghcWithPackages
Re-implement ghcWithPackagesOld as a variant of ghcWithPackages that ignores collisions.
Diffstat (limited to 'pkgs/development/compilers')
-rw-r--r--pkgs/development/compilers/ghc/with-packages-old.nix127
1 files changed, 0 insertions, 127 deletions
diff --git a/pkgs/development/compilers/ghc/with-packages-old.nix b/pkgs/development/compilers/ghc/with-packages-old.nix
deleted file mode 100644
index 8acb2511e81d..000000000000
--- a/pkgs/development/compilers/ghc/with-packages-old.nix
+++ /dev/null
@@ -1,127 +0,0 @@
-{stdenv, ghc, packages ? [], makeWrapper}:
-
-stdenv.mkDerivation rec {
-  name = "haskell-env-${ghc.name}";
-
-  allPackages = stdenv.lib.filter (x: x ? pname) (stdenv.lib.closePropagation packages);
-  buildInputs = allPackages ++ [makeWrapper];
-  propagatedBuildInputs = packages;
-
-  unpackPhase = "true";
-
-  installPhase = ''
-    numversion=$(${ghc}/bin/ghc --numeric-version)
-    majorversion=''${numversion%%.*}
-    minorversion=''${numversion#*.}
-    minorversion=''${minorversion%%.*}
-
-    if [[ $majorversion -gt 6 ]] && [[ $minorversion -gt 4 ]]; then
-      globalConf="--global-package-db"
-    else
-      globalConf="--global-conf"
-    fi
-
-    originalTopDir="${ghc}/lib/ghc-${ghc.version}"
-    originalPkgDir="$originalTopDir/package.conf.d"
-    linkedTopDir="$out/lib/ghc-${ghc.version}"
-    linkedPkgDir="$linkedTopDir/package.conf.d"
-
-    mkdir -p $out/bin
-    mkdir -p $linkedTopDir
-    mkdir -p $linkedPkgDir
-
-    echo "Linking GHC core libraries:"
-
-    echo -n "Linking $originalTopDir "
-    for f in "$originalTopDir/"*; do
-      if test -f $f; then
-        ln -s $f $linkedTopDir
-        echo -n .
-      fi
-    done
-    echo
-
-    echo -n "Linking $originalPkgDir "
-    for f in "$originalPkgDir/"*.conf; do
-      ln -s $f $linkedPkgDir
-      echo -n .
-    done
-    echo
-
-    echo "Linking selected packages and dependencies:"
-
-    for currentPath in ${stdenv.lib.concatStringsSep " " allPackages}; do
-      currentPkgDir="$currentPath/lib/ghc-${ghc.version}"
-      # Check if current path is a Cabal package for the current GHC
-      if test -d $currentPkgDir; then
-        echo -n "Linking $currentPath "
-        for f in "$currentPath/bin/"*; do
-          ln -s $f $out/bin
-          echo -n .
-        done
-        for f in "$currentPath/etc/bash_completion.d/"*; do
-          mkdir -p $out/etc/bash_completion.d
-          ln -s $f $out/etc/bash_completion.d/
-          echo -n .
-        done
-        for s in 1 2 3 4 5 6 7 8 9; do
-          for f in "$currentPath/share/man/man$s/"*; do
-            mkdir -p $out/share/man/man$s
-            ln -sv $f $out/share/man/man$s/
-            echo -n .
-          done
-        done
-        for f in "$currentPath/share/emacs/site-lisp/"*; do
-          mkdir -p $out/share/emacs/site-lisp
-          ln -s $f $out/share/emacs/site-lisp/
-          echo -n .
-        done
-        for f in "$currentPath/share/ghci/"*; do
-          mkdir -p $out/share/ghci
-          ln -s $f $out/share/ghci/
-          echo -n .
-        done
-        for f in "$currentPkgDir/package.conf.d/"*.conf; do
-          ln -s $f $linkedPkgDir
-          echo -n .
-        done
-        echo
-      fi
-    done
-
-    echo -n "Generating package cache "
-    ${ghc}/bin/ghc-pkg $globalConf $linkedPkgDir recache
-    echo .
-
-    echo -n "Generating wrappers "
-
-    for prg in ghc ghci ghc-${ghc.version} ghci-${ghc.version}; do
-      # The NIX env-vars are picked up by our patched version of ghc-paths.
-      makeWrapper ${ghc}/bin/$prg $out/bin/$prg \
-        --add-flags "-B$linkedTopDir" \
-        --set "NIX_GHC"        "$out/bin/ghc"     \
-        --set "NIX_GHCPKG"     "$out/bin/ghc-pkg" \
-        --set "NIX_GHC_LIBDIR" "$linkedTopDir"
-      echo -n .
-    done
-
-    for prg in runghc runhaskell; do
-      makeWrapper ${ghc}/bin/$prg $out/bin/$prg --add-flags "-f $out/bin/ghc"
-      echo -n .
-    done
-
-    for prg in ghc-pkg ghc-pkg-${ghc.version}; do
-      makeWrapper ${ghc}/bin/$prg $out/bin/$prg --add-flags "$globalConf $linkedPkgDir"
-      echo -n .
-    done
-
-    for prg in hp2ps hpc hasktags hsc2hs haddock haddock-${ghc.version}; do
-      if test -x ${ghc}/bin/$prg -a ! -x $out/bin/$prg; then
-        ln -s ${ghc}/bin/$prg $out/bin/$prg && echo -n .
-      fi
-    done
-    echo
-  '';
-
-  meta = ghc.meta;
-}