nixpkgs/pkgs/development/tools/misc/ycmd/default.nix

41 lines
1.2 KiB
Nix
Raw Normal View History

2016-11-09 12:59:28 +00:00
{ stdenv, fetchgit, cmake, llvmPackages, boost, python2Packages
2016-01-05 14:28:15 +00:00
}:
let
2016-11-09 12:59:28 +00:00
inherit (python2Packages) python mkPythonDerivation waitress frozendict bottle;
in mkPythonDerivation rec {
2016-01-05 14:28:15 +00:00
name = "ycmd-2016-01-12";
namePrefix = "";
2016-01-05 14:28:15 +00:00
src = fetchgit {
url = "git://github.com/Valloric/ycmd.git";
rev = "f982f6251c5ff85e3abe6e862aad8bcd19e85ece";
sha256 = "1g0hivv3wla7z5dgnkcn3ny38p089pjfj36nx6k29zmprgmjinyr";
2016-01-05 14:28:15 +00:00
};
buildInputs = [ cmake boost ];
2016-01-05 14:28:15 +00:00
2016-11-09 12:59:28 +00:00
propagatedBuildInputs = [ waitress frozendict bottle ];
2016-01-05 14:28:15 +00:00
buildPhase = ''
export EXTRA_CMAKE_ARGS=-DPATH_TO_LLVM_ROOT=${llvmPackages.clang-unwrapped}
${python.interpreter} build.py --clang-completer --system-boost
2016-01-05 14:28:15 +00:00
'';
configurePhase = ":";
2016-11-09 12:59:28 +00:00
installPhase = ''
2016-01-05 14:28:15 +00:00
mkdir -p $out/lib/ycmd/third_party $out/bin
cp -r ycmd/ CORE_VERSION libclang.so.* ycm_client_support.so ycm_core.so $out/lib/ycmd/
ln -s $out/lib/ycmd/ycmd/__main__.py $out/bin/ycmd
'';
meta = with stdenv.lib; {
2016-01-05 14:28:15 +00:00
description = "A code-completion and comprehension server";
homepage = https://github.com/Valloric/ycmd;
license = licenses.gpl3;
maintainers = with maintainers; [ rasendubi ];
platforms = platforms.all;
2016-01-05 14:28:15 +00:00
};
}