1{
2 lib,
3 python3Packages,
4 fetchFromGitHub,
5 versionCheckHook,
6}:
7
8python3Packages.buildPythonApplication rec {
9 pname = "cpplint";
10 version = "2.0.2";
11 pyproject = true;
12
13 src = fetchFromGitHub {
14 owner = "cpplint";
15 repo = "cpplint";
16 tag = version;
17 hash = "sha256-4crTuqynQt8Nyjqea6DpREtLy7ydRF0hNVnc7tUnO1k=";
18 };
19
20 # We use pytest-cov-stub instead
21 postPatch = ''
22 substituteInPlace pyproject.toml \
23 --replace-fail '"pytest-cov",' ""
24 '';
25
26 build-system = with python3Packages; [
27 setuptools
28 ];
29
30 nativeCheckInputs = with python3Packages; [
31 parameterized
32 pytest-cov-stub
33 pytest-timeout
34 pytestCheckHook
35 testfixtures
36 versionCheckHook
37 ];
38 versionCheckProgramArg = "--version";
39
40 meta = {
41 homepage = "https://github.com/cpplint/cpplint";
42 description = "Static code checker for C++";
43 changelog = "https://github.com/cpplint/cpplint/releases/tag/${version}";
44 mainProgram = "cpplint";
45 maintainers = [ lib.maintainers.bhipple ];
46 license = [ lib.licenses.bsd3 ];
47 };
48}