emacs-irony: prebuild irony-server executable

This has melpaBuild compile the irony-server executable automatically.
This means each user of the irony executable doesn’t have to wait for
it to compile on each new use. This depends on this PR to work
correctly:

https://github.com/Sarcasm/irony-mode/pull/537
This commit is contained in:
Matthew Bauer 2019-06-08 22:51:56 -04:00
parent c4fc74b19c
commit 72e67bd6ba
2 changed files with 40 additions and 1 deletions

View file

@ -17600,7 +17600,7 @@ in
inherit (pythonPackages) elpy;
inherit
autoconf automake git libffi libpng pkgconfig poppler rtags w3m zlib
substituteAll rustPlatform;
substituteAll rustPlatform cmake llvmPackages;
};
};

View file

@ -288,6 +288,45 @@ let
icicles = callPackage ../applications/editors/emacs-modes/icicles { };
irony = melpaBuild rec {
pname = "irony";
ename = "irony";
version = "20190516";
src = fetchFromGitHub {
owner = "Sarcasm";
repo = "irony-mode";
rev = "c3ae899b61124a747ebafc705086345e460ac08e";
sha256 = "06ld83vzyklfmrfi6pp893mvlnhacv9if75c9pbipjvy6nwfb63r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3cfa28c7314fa57fa9a3aaaadf9ef83f8ae541a9/recipes/irony";
sha256 = "1xcxrdrs7imi31nxpszgpaywq4ivni75hrdl4zzrf103xslqpl8a";
name = "recipe";
};
preConfigure = ''
cd server
'';
preBuild = ''
make
'';
postInstall = ''
mkdir -p $out
mv $out/share/emacs/site-lisp/elpa/*/server/bin $out
rm -rf $out/share/emacs/site-lisp/*/server
'';
preCheck = ''
cd source/server
'';
dontUseCmakeBuildDir = true;
doCheck = true;
packageRequires = [ emacs ];
nativeBuildInputs = [ external.cmake external.llvmPackages.llvm ];
meta = {
homepage = "https://melpa.org/#/irony";
license = lib.licenses.gpl3;
};
};
redshank = callPackage ../applications/editors/emacs-modes/redshank { };
rtags = melpaBuild rec {