From 58239ae82a683ada1d39c0225bab555a7bfce6cd Mon Sep 17 00:00:00 2001 From: Marc Weber Date: Mon, 27 Jul 2009 16:05:44 +0000 Subject: ghc: add ghc-packages returning list of package databases so that you can define GHC_PACKAGE_PATH=`ghc-packgaes` easily. Required for scion svn path=/nixpkgs/trunk/; revision=16481 --- pkgs/development/compilers/ghc/wrapper.nix | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'pkgs/development') diff --git a/pkgs/development/compilers/ghc/wrapper.nix b/pkgs/development/compilers/ghc/wrapper.nix index 7d37cba6efed..c3c9ce2d3eac 100644 --- a/pkgs/development/compilers/ghc/wrapper.nix +++ b/pkgs/development/compilers/ghc/wrapper.nix @@ -20,6 +20,24 @@ stdenv.mkDerivation { for prg in ghc-pkg ghc-pkg-${ghc.version}; do makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$($out/bin/ghc-get-packages.sh ${ghc.version} \"\$(dirname \$0)\" --package-conf=)" done + cat >> $out/bin/ghc-packages << EOF + #! /bin/bash -e + declare -A GHC_PACKAGES_HASH # using bash4 hashs to get uniq paths + + for arg in \$($out/bin/ghc-get-packages.sh 6.10.3 "$(dirname $0)"); do + case "\$arg" in + -package-conf) ;; + *) + CANONICALIZED="\$(readlink -f "\$arg")" + GHC_PACKAGES_HASH["\$CANONICALIZED"]= ;; + esac + done + + for path in \''${!GHC_PACKAGES_HASH[@]}; do + echo -n "\$path:" + done + EOF + chmod +x $out/bin/ghc-packages ensureDir $out/nix-support ln -s $out/nix-support/propagated-build-inputs $out/nix-support/propagated-user-env-packages ''; -- cgit 1.4.1