1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pytest,
6 bashlex,
7 click,
8 shutilwhich,
9 gcc,
10 coreutils,
11}:
12
13buildPythonPackage rec {
14 pname = "compiledb";
15 version = "0.10.1";
16 format = "setuptools";
17
18 src = fetchFromGitHub {
19 owner = "nickdiego";
20 repo = pname;
21 rev = "v${version}";
22 sha256 = "0qricdgqzry7j3rmgwyd43av3c2kxpzkh6f9zcqbzrjkn78qbpd4";
23 };
24
25 # fix the tests
26 patchPhase = ''
27 substituteInPlace tests/data/multiple_commands_oneline.txt \
28 --replace /bin/echo ${coreutils}/bin/echo
29 '';
30
31 nativeCheckInputs = [
32 pytest
33 gcc
34 coreutils
35 ];
36 propagatedBuildInputs = [
37 click
38 bashlex
39 shutilwhich
40 ];
41
42 checkPhase = ''
43 pytest
44 '';
45
46 meta = with lib; {
47 description = "Tool for generating Clang's JSON Compilation Database files";
48 mainProgram = "compiledb";
49 license = licenses.gpl3;
50 homepage = "https://github.com/nickdiego/compiledb";
51 maintainers = with maintainers; [ multun ];
52 };
53}