Merge pull request #11359 from FRidh/fftw

python FFTW bindings.

+35 -1
+2 -1
pkgs/development/libraries/fftw/default.nix
··· 20 20 ] 21 21 ++ optional (precision != "double") "--enable-${precision}" 22 22 # all x86_64 have sse2 23 - ++ optional stdenv.isx86_64 "--enable-sse2" 23 + # however, not all float sizes fit 24 + ++ optional (stdenv.isx86_64 && (precision == "single" || precision == "double") ) "--enable-sse2" 24 25 ++ optional stdenv.cc.isGNU "--enable-openmp"; 25 26 26 27 enableParallelBuilding = true;
+1
pkgs/top-level/all-packages.nix
··· 6355 6355 fftw = callPackage ../development/libraries/fftw { }; 6356 6356 fftwSinglePrec = fftw.override { precision = "single"; }; 6357 6357 fftwFloat = fftwSinglePrec; # the configure option is just an alias 6358 + fftwLongDouble = fftw.override { precision = "long-double"; }; 6358 6359 6359 6360 filter-audio = callPackage ../development/libraries/filter-audio {}; 6360 6361
+32
pkgs/top-level/python-packages.nix
··· 14544 14544 }; 14545 14545 }; 14546 14546 14547 + pyfftw = buildPythonPackage rec { 14548 + name = "pyfftw-${version}"; 14549 + version = "0.9.2"; 14550 + 14551 + src = pkgs.fetchurl { 14552 + url = "https://pypi.python.org/packages/source/p/pyFFTW/pyFFTW-${version}.tar.gz"; 14553 + sha256 = "f6bbb6afa93085409ab24885a1a3cdb8909f095a142f4d49e346f2bd1b789074"; 14554 + }; 14555 + 14556 + buildInputs = [ pkgs.fftw pkgs.fftwFloat pkgs.fftwLongDouble]; 14557 + 14558 + propagatedBuildInputs = with self; [ numpy scipy ]; 14559 + 14560 + # Tests cannot import pyfftw. pyfftw works fine though. 14561 + doCheck = false; 14562 + 14563 + preConfigure = '' 14564 + export LDFLAGS="-L${pkgs.fftw}/lib -L${pkgs.fftwFloat}/lib -L${pkgs.fftwLongDouble}/lib" 14565 + export CFLAGS="-I${pkgs.fftw}/include -I${pkgs.fftwFloat}/include -I${pkgs.fftwLongDouble}/include" 14566 + ''; 14567 + #+ optionalString isDarwin '' 14568 + # export DYLD_LIBRARY_PATH="${pkgs.fftw}/lib" 14569 + #''; 14570 + 14571 + meta = { 14572 + description = "A pythonic wrapper around FFTW, the FFT library, presenting a unified interface for all the supported transforms"; 14573 + homepage = http://hgomersall.github.com/pyFFTW/; 14574 + license = with licenses; [ bsd2 bsd3 ]; 14575 + maintainer = with maintainers; [ fridh ]; 14576 + }; 14577 + }; 14578 + 14547 14579 pyfiglet = buildPythonPackage rec { 14548 14580 name = "pyfiglet-${version}"; 14549 14581 version = "0.7.2";