summary refs log tree commit diff
path: root/pkgs/development/python-modules/scikit-build/default.nix
blob: 8d459e2498481fac4f6654851df3f43157222359 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
{ lib, buildPythonPackage, fetchPypi, wheel, setuptools, packaging
, cmake, ninja, cython, codecov, coverage, six, virtualenv, pathpy
, pytest, pytestcov, pytest-virtualenv, pytest-mock, pytestrunner
, requests, flake8 }:

buildPythonPackage rec {
  pname = "scikit-build";
  version = "0.10.0";

  src = fetchPypi {
    inherit pname version;
    sha256 = "7342017cc82dd6178e3b19377389b8a8d1f8b429d9cdb315cfb1094e34a0f526";
  };

  propagatedBuildInputs = [ wheel setuptools packaging ];
  checkInputs = [ 
    cmake ninja cython codecov coverage six pathpy
    pytest pytestcov pytest-mock pytest-virtualenv pytestrunner
    requests flake8
  ];

  dontUseCmakeConfigure = true;

  disabledTests = lib.concatMapStringsSep " and " (s: "not " + s) ([
    "test_hello_develop" # tries setuptools develop install
    "test_source_distribution" # pip has no way to install missing dependencies
    "test_wheel" # pip has no way to install missing dependencies
    "test_fortran_compiler" # passes if gfortran is available
    "test_install_command" # tries to alter out path
    "test_test_command" # tries to alter out path
  ]);

  checkPhase = ''
    py.test -k '${disabledTests}'
  '';

  meta = with lib; {
    homepage = http://scikit-build.org/;
    description = "Improved build system generator for CPython C/C++/Fortran/Cython extensions";
    license = with licenses; [ mit bsd2 ]; # BSD due to reuses of PyNE code
    maintainers = [ maintainers.FlorianFranzen ];
  };
}