3
0
Fork 0
forked from mirrors/nixpkgs
nixpkgs/pkgs/development/tools/sourcetrail/python.nix
sternenseemann 1a2893f58a sourcetrail: fix hash for SourceTrailPythonIndexer
The sha256 for the python indexer wasn't updated along with the git
revision. The old hash is of commit 0d1246be53b37639427fe9959f748dd0fc429c8f,
the new hash the correct one for tag v1_db25_p5
(3afb24195c5f3dc98e4cb60751f908f09f1bc046).
2020-12-25 14:46:57 +01:00

69 lines
1.8 KiB
Nix

{ stdenv, lib, fetchFromGitHub, wrapPython, python, jedi, parso, cmake, swig }:
stdenv.mkDerivation rec {
pname = "SourcetrailPythonIndexer";
version = "v1_db25_p5";
src = fetchFromGitHub {
owner = "CoatiSoftware";
repo = pname;
rev = version;
sha256 = "01jaigxigq6dvfwq018gn9qw7i6p4jm0y71lqzschfv9vwf6ga45";
fetchSubmodules = true;
};
nativeBuildInputs = [ wrapPython cmake swig ];
buildInputs = [ python ];
pythonPath = [ jedi parso ];
dontUseCmakeConfigure = true;
cmakeFlags = [
"-DBUILD_BINDINGS_PYTHON=1"
"-DPYTHON_VERSION=${lib.versions.majorMinor python.version}"
];
buildPhase = ''
pushd SourcetrailDB
cmake -Bbuild $cmakeFlags .
pushd build
make -j $NIX_BUILD_CORES
popd
popd
'';
checkPhase = ''
buildPythonPath "$pythonPath"
# FIXME: some tests are failing
# PYTHONPATH="$program_PYTHONPATH:SourcetrailDB/build/bindings_python" \
# ${python}/bin/python test.py
PYTHONPATH="$program_PYTHONPATH:SourcetrailDB/build/bindings_python" \
${python}/bin/python test_shallow.py
'';
installPhase = ''
shopt -s extglob
mkdir -p $out/{bin,libexec}
cp !(run).py $out/libexec # copy *.py excluding run.py (needs extglob)
cat <(echo '#!/usr/bin/env python') run.py > $out/libexec/run.py
chmod +x $out/libexec/run.py
ln -s $out/libexec/run.py $out/bin/SourcetrailPythonIndexer
pushd SourcetrailDB/build/bindings_python
cp sourcetraildb.py $out/libexec
cp _sourcetraildb* $out/libexec/_sourcetraildb.so
popd
wrapPythonProgramsIn "$out/libexec" "$pythonPath"
'';
doCheck = true;
meta = with lib; {
description = "Python indexer for Sourcetrail";
homepage = "https://github.com/CoatiSoftware/SourcetrailPythonIndexer";
license = licenses.gpl3;
};
}