nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 hatch-vcs,
6 hatchling,
7 pcpp,
8 pytestCheckHook,
9}:
10
11buildPythonPackage rec {
12 pname = "cxxheaderparser";
13 version = "1.7.0";
14 pyproject = true;
15
16 src = fetchFromGitHub {
17 owner = "robotpy";
18 repo = "cxxheaderparser";
19 tag = version;
20 hash = "sha256-Go5oIYwB2DONPbgajQuXfgpUCiGZvgcTZuFJ5z5qC3U=";
21 };
22
23 postPatch = ''
24 # version.py is generated based on latest git tag
25 echo "__version__ = '${version}'" > cxxheaderparser/version.py
26 '';
27
28 build-system = [
29 hatch-vcs
30 hatchling
31 ];
32
33 checkInputs = [ pcpp ];
34
35 nativeCheckInputs = [ pytestCheckHook ];
36
37 pythonImportsCheck = [ "cxxheaderparser" ];
38
39 meta = {
40 description = "Modern pure Python C++ header parser";
41 homepage = "https://github.com/robotpy/cxxheaderparser";
42 changelog = "https://github.com/robotpy/cxxheaderparser/releases/tag/${src.tag}";
43 license = lib.licenses.bsd3;
44 maintainers = with lib.maintainers; [ nim65s ];
45 platforms = lib.platforms.unix;
46 };
47}