1{ lib
2, buildPythonPackage
3, cython
4, fetchFromGitHub
5, mpi4py
6, numpy
7, precice
8, pythonOlder
9}:
10
11buildPythonPackage rec {
12 pname = "pyprecice";
13 version = "2.4.0.0";
14 format = "setuptools";
15
16 disabled = pythonOlder "3.7";
17
18 src = fetchFromGitHub {
19 owner = "precice";
20 repo = "python-bindings";
21 rev = "refs/tags/v${version}";
22 hash = "sha256-Endy5oiC1OWdtZlVPUkIdkzoDTc1b5TaQ6VEUWq5iSg=";
23 };
24
25 nativeBuildInputs = [
26 cython
27 ];
28
29 propagatedBuildInputs = [
30 numpy
31 mpi4py
32 precice
33 ];
34
35 # Disable Test because everything depends on open mpi which requires network
36 doCheck = false;
37
38 # Do not use pythonImportsCheck because this will also initialize mpi which requires a network interface
39
40 meta = with lib; {
41 description = "Python language bindings for preCICE";
42 homepage = "https://github.com/precice/python-bindings";
43 license = licenses.lgpl3Only;
44 maintainers = with maintainers; [ Scriptkiddi ];
45 };
46}