summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorMehmet Tekman <mtekman89@gmail.com>2023-11-28 12:52:46 +0100
committerSharlatan Hellseher <sharlatanus@gmail.com>2024-03-29 16:45:12 +0000
commit74d2c8304f3839efcbb048d23f366df9f33d7646 (patch)
tree6baf904061ee2bb33264d58a775447127f0b0d21 /gnu
parent82d33ff33c9600896442dd4b88547c094dfcbb0f (diff)
downloadguix-74d2c8304f3839efcbb048d23f366df9f33d7646.tar.gz
gnu: fftw-cmake: New Variables.
This is a clone of the fftw function, but uses cmake to build in order
for the FFTW3LibraryDepends.cmake file to be built, neccesary for
packages with cmake builds that depend on fftw3.

See: https://bugzilla.redhat.com/show_bug.cgi?id=1729652#c5

This variable inherits from the existing fftw3 in order to not break any
downstream packages that make use of the target optimizations given by
the gnu build.

* gnu/packages/algebra.scm (fftw-cmake): New variable.

Change-Id: Idb06f86031123de3b2621953a385f4f57d9b5cc5
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/algebra.scm15
1 files changed, 15 insertions, 0 deletions
diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm
index 3fb9362b91..9335cd6e18 100644
--- a/gnu/packages/algebra.scm
+++ b/gnu/packages/algebra.scm
@@ -15,6 +15,7 @@
 ;;; Copyright © 2020, 2021, 2023, 2024 Vinicius Monego <monego@posteo.net>
 ;;; Copyright © 2021 Lars-Dominik Braun <ldb@leibniz-psychology.org>
 ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2023 Mehmet Tekman <mtekman89@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -745,6 +746,20 @@ both real and complex data (as well as of even/odd data---i.e. the discrete
 cosine/ sine transforms or DCT/DST).")
     (license license:gpl2+)))
 
+(define-public fftw-cmake
+  (package/inherit fftw
+    ;; Cmake compiling is experimental since 2017, and it is not clear if this
+    ;; build has the same target-specific optimizations as the fftw gnu build.
+    ;; See: https://fftw.org/release-notes.html
+    (name "fftw-cmake")
+    (build-system cmake-build-system)
+    (arguments (default-keyword-arguments '()
+                                          '()))
+    (description (string-append (package-description fftw)
+                  "  This CMake build offers the file
+FFTW3LibraryDepends.cmake required by some dependent packages, absent in the
+gnu build version."))))
+
 (define-public fftwf
   (package/inherit fftw
     (name "fftwf")