1{ lib, buildPythonPackage, fetchPypi
2, fftw, fftwFloat, fftwLongDouble, numpy, scipy, cython, dask }:
3
4buildPythonPackage rec {
5 version = "0.13.1";
6 pname = "pyFFTW";
7
8 src = fetchPypi {
9 inherit pname version;
10 hash = "sha256-CRVekKDG0MHy0fNmgYCn3pX7n4P+9RN6ES+wWXjocyA=";
11 };
12
13 preConfigure = ''
14 export LDFLAGS="-L${fftw.out}/lib -L${fftwFloat.out}/lib -L${fftwLongDouble.out}/lib"
15 export CFLAGS="-I${fftw.dev}/include -I${fftwFloat.dev}/include -I${fftwLongDouble.dev}/include"
16 '';
17
18 buildInputs = [ fftw fftwFloat fftwLongDouble];
19
20 propagatedBuildInputs = [ numpy scipy cython dask ];
21
22 # Tests cannot import pyfftw. pyfftw works fine though.
23 doCheck = false;
24 pythonImportsCheck = [ "pyfftw" ];
25
26 meta = with lib; {
27 description = "A pythonic wrapper around FFTW, the FFT library, presenting a unified interface for all the supported transforms";
28 homepage = "http://hgomersall.github.com/pyFFTW/";
29 license = with licenses; [ bsd2 bsd3 ];
30 maintainers = with maintainers; [ fridh ];
31 };
32}