1{ lib
2, buildPythonPackage
3, flit-core
4, ninja
5}:
6
7buildPythonPackage rec {
8 pname = "ninja";
9 inherit (ninja) version;
10 format = "pyproject";
11
12 src = ./stub;
13
14 postUnpack = ''
15 substituteInPlace "$sourceRoot/pyproject.toml" \
16 --subst-var version
17
18 substituteInPlace "$sourceRoot/ninja/__init__.py" \
19 --subst-var version \
20 --subst-var-by BIN_DIR "${ninja}/bin"
21 '';
22
23 inherit (ninja) setupHook;
24
25 nativeBuildInputs = [
26 flit-core
27 ];
28
29 preBuild = ''
30 cp "${ninja.src}/misc/ninja_syntax.py" ninja/ninja_syntax.py
31 '';
32
33 pythonImportsCheck = [
34 "ninja"
35 "ninja.ninja_syntax"
36 ];
37
38 meta = with lib; {
39 description = "A small build system with a focus on speed";
40 longDescription = ''
41 This is a stub of the ninja package on PyPI that uses the ninja program
42 provided by nixpkgs instead of downloading ninja from the web.
43 '';
44 homepage = "https://github.com/scikit-build/ninja-python-distributions";
45 license = licenses.asl20;
46 maintainers = with maintainers; [ _999eagle tjni ];
47 };
48}