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