aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/algebra.scm34
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm
index 6c294c814a..bc8a4873f3 100644
--- a/gnu/packages/algebra.scm
+++ b/gnu/packages/algebra.scm
@@ -164,3 +164,37 @@ compiler for the dc calculator. This version has a single executable
that both compiles the language and runs the resulting `byte code'. The
byte code is not the dc language.")
(license gpl2+)))
+
+(define-public fftw
+ (package
+ (name "fftw")
+ (version "3.3.3")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "ftp://ftp.fftw.org/pub/fftw/fftw-"
+ version".tar.gz"))
+ (sha256
+ (base32
+ "1wwp9b2va7vkq3ay7a9jk22nr4x5q6m37rzqy2j8y3d11c5grkc5"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:configure-flags '("--enable-shared" "--enable-openmp")
+ #:phases (alist-cons-before
+ 'build 'no-native
+ (lambda _
+ ;; By default '-mtune=native' is used. However, that may
+ ;; cause the use of ISA extensions (SSE2, etc.) that are
+ ;; not necessarily available on the user's machine when
+ ;; that package is built on a different machine.
+ (substitute* (find-files "." "Makefile$")
+ (("-mtune=native") "")))
+ %standard-phases)))
+ (native-inputs `(("perl" ,perl)))
+ (home-page "http://fftw.org")
+ (synopsis "Computing the discrete Fourier transform")
+ (description
+ "FFTW is a C subroutine library for computing the discrete Fourier
+transform (DFT) in one or more dimensions, of arbitrary input size, and of
+both real and complex data (as well as of even/odd data---i.e. the discrete
+cosine/ sine transforms or DCT/DST).")
+ (license gpl2+)))