Author: viric
Date: 2010-06-24 16:43:42 +0000 (Thu, 24 Jun 2010)
New Revision: 22402

You can view the changes in this commit at:
   https://svn.nixos.org/viewvc/nix?rev=22402&view=rev

Modified:
   nixpkgs/trunk/pkgs/development/libraries/fftw/default.nix

Log:
Adding some features in fftw, that I think they should work fine in linux at 
least.
(higher speed, multithread).
I also fixed the namings about single/double floats.

Changes:

Modified: nixpkgs/trunk/pkgs/development/libraries/fftw/default.nix
===================================================================
--- nixpkgs/trunk/pkgs/development/libraries/fftw/default.nix   2010-06-23 
21:11:33 UTC (rev 22401)
+++ nixpkgs/trunk/pkgs/development/libraries/fftw/default.nix   2010-06-24 
16:43:42 UTC (rev 22402)
@@ -1,23 +1,31 @@
-args : with args;
-       let localDefs = builderDefs.passthru.function { 
-               src = 
-                       fetchurl {
-                               url = 
ftp://ftp.fftw.org/pub/fftw/fftw-3.2.1.tar.gz;
-                               sha256 = 
"1x8jww3vflrgzjrpnnsk0020bkd9aqmfga8y31v10cqd02l46sh7";
-                       };
-               buildInputs = [];
-               configureFlags = ["--enable-shared"] 
-                     ++ (if args.singlePrecision then [ /*"--enable-single" 
*/] else ["--enable-float"]);
-                          # some distros seem to be shipping both versions 
within the same package?
-                          # why does --enable-single still result in ..3f.so 
instead of ..3.so?
-       };
-       in with localDefs;
+{fetchurl, stdenv, builderDefs, stringsWithDeps, singlePrecision ? false}:
+let localDefs = builderDefs.passthru.function { 
+  src = 
+    fetchurl {
+      url = ftp://ftp.fftw.org/pub/fftw/fftw-3.2.2.tar.gz;
+      sha256 = "13vnglardq413q2518zi4a8pam3znydrz28m9w09kss9xrjsx9va";
+    };
+  buildInputs = [];
+  configureFlags = ["--enable-shared" "--enable-openmp"]
+                        # some distros seem to be shipping both versions 
within the same package?
+                        # why does --enable-float still result in ..3f.so 
instead of ..3.so?
+                   ++ (if singlePrecision then [ "--enable-single" ] else [ ])
+                        # I think all i686 has sse
+                   ++ (if (stdenv.isi686 || stdenv.isx86_64) && 
singlePrecision then [ "--enable-sse" ] else [ ])
+                        # I think all x86_64 has sse2
+                   ++ (if stdenv.isx86_64 && ! singlePrecision then [ 
"--enable-sse2" ] else [ ]);
+                
+  };
+in with localDefs;
 stdenv.mkDerivation {
-       name = "fftw-3.2.1" + ( if args.singlePrecision then "-single" else 
"-float" );
-       builder = writeScript "fftw-3.2.1-builder"
-               (textClosure localDefs [doConfigure doMakeInstall 
doForceShare]);
-       meta = {
-               description = "Fastest Fourier Transform in the West library";
-               inherit src;
-       };
+  name = "fftw-3.2.2" + ( if singlePrecision then "-single" else "-double" );
+  builder = writeScript "fftw-3.2.1-builder"
+    (textClosure localDefs [doConfigure doMakeInstall doForceShare]);
+  meta = {
+    description = "Fastest Fourier Transform in the West library";
+  };
+  passthru = {
+    # Allow instantiating "-A fftw.src"
+    inherit src;
+  };
 }

_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits

Reply via email to