Merge pull request #3743 from ttuegel/ghc-mod
Fix ghc-modi hanging in emacs
This commit is contained in:
commit
63e5ed7aef
@ -3,7 +3,7 @@
|
||||
{ cabal, Cabal, convertible, deepseq, djinnGhc, doctest, emacs
|
||||
, filepath, ghcPaths, ghcSybUtils, haskellSrcExts, hlint, hspec
|
||||
, ioChoice, monadControl, monadJournal, mtl, split, syb, text, time
|
||||
, transformers, transformersBase
|
||||
, transformers, transformersBase, makeWrapper
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
@ -22,9 +22,11 @@ cabal.mkDerivation (self: {
|
||||
ghcSybUtils haskellSrcExts hlint hspec ioChoice monadControl
|
||||
monadJournal mtl split syb text time transformers transformersBase
|
||||
];
|
||||
buildTools = [ emacs ];
|
||||
buildTools = [ emacs makeWrapper ];
|
||||
doCheck = false;
|
||||
configureFlags = "--datasubdir=${self.pname}-${self.version}";
|
||||
# The method used below to wrap ghc-mod and ghc-modi was borrowed from the
|
||||
# wrapper for haddock.
|
||||
postInstall = ''
|
||||
cd $out/share/$pname-$version
|
||||
make
|
||||
@ -32,20 +34,11 @@ cabal.mkDerivation (self: {
|
||||
cd ..
|
||||
ensureDir "$out/share/emacs"
|
||||
mv $pname-$version emacs/site-lisp
|
||||
mv $out/bin/ghc-mod $out/bin/.ghc-mod-wrapped
|
||||
cat - > $out/bin/ghc-mod <<EOF
|
||||
#! ${self.stdenv.shell}
|
||||
eval exec $out/bin/.ghc-mod-wrapped \$( ${self.ghc.GHCGetPackages} ${self.ghc.version} | tr " " "\n" | tail -n +2 | paste -d " " - - | sed 's/.*/-g "&"/' | tr "\n" " ") "\$@"
|
||||
EOF
|
||||
|
||||
mv $out/bin/ghc-modi $out/bin/.ghc-modi-wrapped
|
||||
cat - > $out/bin/ghc-modi <<EOF
|
||||
#! ${self.stdenv.shell}
|
||||
eval exec $out/bin/.ghc-modi-wrapped \$( ${self.ghc.GHCGetPackages} ${self.ghc.version} | tr " " "\n" | tail -n +2 | paste -d " " - - | sed 's/.*/-g "&"/' | tr "\n" " ") "\$@"
|
||||
EOF
|
||||
|
||||
chmod +x $out/bin/ghc-mod
|
||||
chmod +x $out/bin/ghc-modi
|
||||
wrapProgram $out/bin/ghc-mod --add-flags \
|
||||
"\$(${self.ghc.GHCGetPackages} ${self.ghc.version} \"\$(dirname \$0)\" \"-g -package-db -g\")"
|
||||
wrapProgram $out/bin/ghc-modi --add-flags \
|
||||
"\$(${self.ghc.GHCGetPackages} ${self.ghc.version} \"\$(dirname \$0)\" \"-g -package-db -g\")"
|
||||
'';
|
||||
meta = {
|
||||
homepage = "http://www.mew.org/~kazu/proj/ghc-mod/";
|
||||
|
Loading…
Reference in New Issue
Block a user