Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at master 1.3 kB view raw
1{ 2 lib, 3 fetchFromGitHub, 4 buildPythonPackage, 5 6 # build-system 7 cysignals, 8 cython, 9 pkgconfig, 10 setuptools, 11 12 gmp, 13 pari, 14 mpfr, 15 fplll, 16 numpy, 17 18 # Reverse dependency 19 sage, 20 21 # tests 22 pytestCheckHook, 23}: 24 25buildPythonPackage rec { 26 pname = "fpylll"; 27 version = "0.6.4"; 28 pyproject = true; 29 30 src = fetchFromGitHub { 31 owner = "fplll"; 32 repo = "fpylll"; 33 tag = version; 34 hash = "sha256-vks4rTXk6fh8183PCxJzfTXQyo3scBH4afjbQAkT6Gw="; 35 }; 36 37 nativeBuildInputs = [ 38 cython 39 cysignals 40 pkgconfig 41 setuptools 42 ]; 43 44 buildInputs = [ 45 gmp 46 pari 47 mpfr 48 fplll 49 ]; 50 51 propagatedBuildInputs = [ 52 numpy 53 cysignals 54 ]; 55 56 nativeCheckInputs = [ pytestCheckHook ]; 57 58 preCheck = '' 59 # Since upstream introduced --doctest-modules in 60 # https://github.com/fplll/fpylll/commit/9732fdb40cf1bd43ad1f60762ec0a8401743fc79, 61 # it is necessary to ignore import mismatches. Not sure why, but the files 62 # should be identical anyway. 63 export PY_IGNORE_IMPORTMISMATCH=1 64 ''; 65 66 passthru.tests = { 67 inherit sage; 68 }; 69 70 meta = with lib; { 71 description = "Python interface for fplll"; 72 changelog = "https://github.com/fplll/fpylll/releases/tag/${src.tag}"; 73 homepage = "https://github.com/fplll/fpylll"; 74 teams = [ teams.sage ]; 75 license = licenses.gpl2Plus; 76 }; 77}