1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 meson,
6 ninja,
7 pyproject-metadata,
8 tomli,
9 typing-extensions,
10 pythonOlder,
11}:
12
13buildPythonPackage rec {
14 pname = "meson-python";
15 version = "0.17.1";
16 format = "pyproject";
17
18 src = fetchPypi {
19 inherit version;
20 pname = "meson_python";
21 hash = "sha256-77kfafLhnu97yaRx7SpOcwCIzGs56srz5J/E+TDrX4M=";
22 };
23
24 nativeBuildInputs = [
25 meson
26 ninja
27 pyproject-metadata
28 tomli
29 ] ++ lib.optionals (pythonOlder "3.10") [ typing-extensions ];
30
31 propagatedBuildInputs = [
32 meson
33 ninja
34 pyproject-metadata
35 tomli
36 ] ++ lib.optionals (pythonOlder "3.10") [ typing-extensions ];
37 setupHooks = [ ./add-build-flags.sh ];
38
39 meta = {
40 changelog = "https://github.com/mesonbuild/meson-python/blob/${version}/CHANGELOG.rst";
41 description = "Meson Python build backend (PEP 517)";
42 homepage = "https://github.com/mesonbuild/meson-python";
43 license = [ lib.licenses.mit ];
44 maintainers = with lib.maintainers; [ doronbehar ];
45 };
46}