mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-15 14:26:33 +01:00
54 lines
1.2 KiB
Nix
54 lines
1.2 KiB
Nix
{
|
|
lib,
|
|
buildPythonPackage,
|
|
fetchFromGitHub,
|
|
gsl,
|
|
swig,
|
|
numpy,
|
|
pytestCheckHook,
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "pygsl";
|
|
version = "2.4.0";
|
|
format = "setuptools";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "pygsl";
|
|
repo = "pygsl";
|
|
rev = "refs/tags/v${version}";
|
|
hash = "sha256-7agGgfDUgY6mRry7d38vGGNLJC4dFUniy2M/cnejDDs=";
|
|
};
|
|
|
|
# error: no member named 'n' in 'gsl_bspline_workspace'
|
|
postPatch = lib.optionalString (lib.versionAtLeast gsl.version "2.8") ''
|
|
substituteInPlace src/bspline/bspline.ic \
|
|
--replace-fail "self->w->n" "self->w->ncontrol"
|
|
substituteInPlace swig_src/bspline_wrap.c \
|
|
--replace-fail "self->w->n;" "self->w->ncontrol;"
|
|
'';
|
|
|
|
nativeBuildInputs = [
|
|
gsl.dev
|
|
swig
|
|
];
|
|
buildInputs = [ gsl ];
|
|
dependencies = [ numpy ];
|
|
|
|
preBuild = ''
|
|
python setup.py build_ext --inplace
|
|
'';
|
|
|
|
preCheck = ''
|
|
cd tests
|
|
'';
|
|
nativeCheckInputs = [ pytestCheckHook ];
|
|
|
|
meta = {
|
|
description = "Python interface for GNU Scientific Library";
|
|
homepage = "https://github.com/pygsl/pygsl";
|
|
changelog = "https://github.com/pygsl/pygsl/blob/v${version}/ChangeLog";
|
|
license = lib.licenses.gpl2Plus;
|
|
maintainers = with lib.maintainers; [ amesgen ];
|
|
};
|
|
}
|