1{ lib, buildPythonPackage, fetchPypi, wheel, setuptools, packaging
2, cmake, ninja, cython, codecov, coverage, six, virtualenv, pathpy
3, pytest, pytestcov, pytest-virtualenv, pytest-mock, pytestrunner
4, requests, flake8 }:
5
6buildPythonPackage rec {
7 pname = "scikit-build";
8 version = "0.8.1";
9
10 src = fetchPypi {
11 inherit pname version;
12 sha256 = "1hh275lj98wgwi53mr9fqk8wh1dajjksch52xjax6a79gld4391a";
13 };
14
15 # Fixes incorrect specified requirement (part of next release)
16 patches = [ ./fix_pytestrunner_req.patch ];
17
18 propagatedBuildInputs = [ wheel setuptools packaging ];
19 checkInputs = [
20 cmake ninja cython codecov coverage six virtualenv pathpy
21 pytest pytestcov pytest-mock pytest-virtualenv pytestrunner
22 requests flake8
23 ];
24
25 disabledTests = lib.concatMapStringsSep " and " (s: "not " + s) ([
26 "test_hello_develop" # tries setuptools develop install
27 "test_wheel" # pip has no way to install missing dependencies
28 "test_fortran_compiler" # passes if gfortran is available
29 "test_install_command" # tries to alter out path
30 "test_test_command" # tries to alter out path
31 ]);
32
33 checkPhase = ''
34 py.test -k '${disabledTests}'
35 '';
36
37 meta = with lib; {
38 homepage = http://scikit-build.org/;
39 description = "Improved build system generator for CPython C/C++/Fortran/Cython extensions";
40 license = with licenses; [ mit bsd2 ]; # BSD due to reuses of PyNE code
41 maintainers = [ maintainers.FlorianFranzen ];
42 };
43}