Subject: [PATCH] Add fftw-cmake

From: Mehmet Tekman <[email-masked]>
Date: Tue, 28 Nov 2023 14:06:43 +0100

Ignore last patch.

Full patch inserted into the correct location:

>From 82f7a7d8c60e1773565e3655dfd06dda28056924 Mon Sep 17 00:00:00 2001
Message-ID: <8[email-masked]>
From: Mehmet Tekman <[email-masked]>
Date: Tue, 28 Nov 2023 12:52:46 +0100
Subject: [PATCH 1/3] gnu: fftw-cmake: New Variables

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

  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.

Change-Id: Idb06f86031123de3b2621953a385f4f57d9b5cc5
---
 gnu/packages/algebra.scm | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm
index c454c69164..34ea8afd37 100644
--- a/gnu/packages/algebra.scm
+++ b/gnu/packages/algebra.scm
@@ -15,6 +15,7 @@
 ;;; Copyright © 2020, 2021, 2023 Vinicius Monego <[email-masked]>
 ;;; Copyright © 2021 Lars-Dominik Braun <[email-masked]>
 ;;; Copyright © 2022 Maxim Cournoyer <[email-masked]>
+;;; Copyright © 2023 Mehmet Tekman <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -778,6 +779,20 @@ (define-public fftw
 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")

base-commit: d20ece07dbb09382f361c8bbf0bcab9e83d8b73e
prerequisite-patch-id: 1b1e053362719da363d12b39b15ee8fddd42f055
prerequisite-patch-id: 5e038d2168ed78fa67564a796d60f89181658bd6
prerequisite-patch-id: 1abba5a8291cc17c1a3d3c203f69463ec18ba18a
prerequisite-patch-id: 6145533ee55441de6e2e0bf1ec0efcaf459ec9d4
prerequisite-patch-id: c9d43a39d17bdf99c8fdffa63de8782c5aff8be6
prerequisite-patch-id: 9a9fee2e1b9c0d3c4cbcd7e04ee6268931b4fca4
prerequisite-patch-id: 0e0a94aa00d44132a8b6a57255c3e6c1b16ee32d
prerequisite-patch-id: 2916ef9e42067a748bd637c4c816db222e7a0a6a
prerequisite-patch-id: 036877634a4f913547798fe428a921b864191a9a
prerequisite-patch-id: 2953ba221a2a23b014df20cfe32dfec1b4fb3ebe
prerequisite-patch-id: 42fe10c31e8abca29dbc661882d91743cb6fb3d7
prerequisite-patch-id: dfd79a545a32d136f0fc5aad1ecce4ef9caeedd1
prerequisite-patch-id: 67e338bc475db1200ac48c8432b45ffdfea25f97
prerequisite-patch-id: 0fc27e2b49c40401a5c20c3176b2711dc46c6c0b
prerequisite-patch-id: 1b9c06c52fc75699a3f91dbc1c1db2f2c8b43f24
prerequisite-patch-id: e9b51ab6e025dcda31c3dcb18833c02990eda617
prerequisite-patch-id: edc4ad5a3ddd165887410175e6adefb91edb89cc
prerequisite-patch-id: 9644272952324d73c97e11b5dc7e96ff2f213bad
prerequisite-patch-id: 66e24e88542f4afd26e21df35cdbd0358b06200a
prerequisite-patch-id: f9faf3efa71fde59a4aaf59ce2ec598bd7c7e619
prerequisite-patch-id: a828d34a2b93fcab7f08cbae0ba3be1605fc6ab3
prerequisite-patch-id: 3bc23c0b0b859368581a94f504174a3b32cd4681
prerequisite-patch-id: d7fcbbd1c434689f68f23ccc1e761ee4876d88c9
prerequisite-patch-id: 4e6a208a4917519c47559492431884edd90b0ac0
prerequisite-patch-id: 8d920aa0d84c59a43e915158cec79b30ceec3253
prerequisite-patch-id: ce8fd15795cf040801f84ec6b92b111ac876ef16
prerequisite-patch-id: 394c36eced1f88686534935227839bcc0b94b1f9
prerequisite-patch-id: 285e54bd647ccb48dcd876d20cba6e0420a3efdb
prerequisite-patch-id: 5c1c3ed84de29355b9601a182430677073382950
prerequisite-patch-id: db6948d3f4b647d74e8966ac123025167c36e7a2
prerequisite-patch-id: f01c64d9491c96bbdc1e1c0609486888424cacd6
prerequisite-patch-id: 1ed41a3f5e63baf0d7fce69cc9af7930d0c7ed51
prerequisite-patch-id: 849d68087c67547dbe68e71f213e9b4a840ad103
prerequisite-patch-id: 7feb3926df6748612131b18d72414e97cf35b5d8
prerequisite-patch-id: 89c489755cff5b15b9b5542ed01bf2b82f9fb41a
prerequisite-patch-id: 25b1ceb97bbe78b827ca27a87cda09672283fcc3
prerequisite-patch-id: 277fbe1b17e68748924f48730926ca8488f01ba0
prerequisite-patch-id: 7a79190b94a1de8bced6395e46928184a667569e
prerequisite-patch-id: 1343ddae02e0048a41d4e67f17259ea9d7f16bdc
prerequisite-patch-id: 58598af47e14c8c77e4379594bce995222651ee6
prerequisite-patch-id: 744b593ba5299ea8a1b059c2f1c0e541d20fb5fe
prerequisite-patch-id: 9d40085c1270a20a18f65d6d28e13284d3551cd9
prerequisite-patch-id: ef570b2cc72f6abbaa6b137d44d46b2e55e2da75
prerequisite-patch-id: 6237cb1554d91e3ba4f0a726f336b5efbc6b96d0
prerequisite-patch-id: d96ca610d81de0dc6d0bd71e1528e10c7a72d959
prerequisite-patch-id: f804437cca8cd4663b5282fe56485601f31b5c4a
prerequisite-patch-id: ea39d80b24da79454af67755080b3a56429855fb
prerequisite-patch-id: 33e2da89c3dea6be07f9558ca4826a9fe6309dfc
prerequisite-patch-id: 501fbd4723626e8a8d2074788334d7009df9fa27
prerequisite-patch-id: e4693a7b07f307597c2e36db5fa590b4d3a76fc5
prerequisite-patch-id: 70280462047e7bc641f4cdd239f13a03dab61e36
prerequisite-patch-id: 5217b1b7ded69081d854be9236f6859f7b1b4596
prerequisite-patch-id: 2971815abf9208f8e377af62223a01dc75a1e050
prerequisite-patch-id: 850101ea4f8ba3c8b2ec07c99c26665139916730
prerequisite-patch-id: cd019e45544b2cf2c879f163ea5facc438ac872d
prerequisite-patch-id: e59061017fee6744e0a6ba610d022afc7ba5c5cc
prerequisite-patch-id: 392ac2cabfb84ecbbb015376fb6bb537396cf5ed
prerequisite-patch-id: 4e48fc1b6f8380b1bc14530bf3199eb4e7dc8315
prerequisite-patch-id: abb0aaf054e8dff3460b20ab3aa718a114ce25a7
prerequisite-patch-id: 419367554266b25598fa05f6a34ef5962b3ee4fa
prerequisite-patch-id: 93bd4e464c2d942ed454384c9350e84bfc56ce0e
prerequisite-patch-id: b0099b5312d017e4bf67a5342c45c29a4d1317df
prerequisite-patch-id: a24c6a7069525d52e9769739d9486f7b866e6e08
prerequisite-patch-id: 5187190c1b9a28a06a3af5c0810486b4e820cc14
prerequisite-patch-id: 10ea7b150b81cf0b9fd4be7516551f47e794b7cd
prerequisite-patch-id: 8f3a4f5eeb63936c4e6272923b3dbec9a0b224d7
prerequisite-patch-id: 25bfbb30d592a1f196a70dac1f9fa4d646917c4a
prerequisite-patch-id: 4b56557074a6f2fc119f6b58425a2006a1866711
prerequisite-patch-id: f0b8bed9dde4f2320ff4449d49f0646ca2240e86
prerequisite-patch-id: 20ff96b6dee44064594c0e62d80dffdbc6d8bd09
prerequisite-patch-id: a07aaeabbcd2b2ee4892eb8c78a391054068d085
prerequisite-patch-id: b2743e0f5e08bdcd637144be4c28622f2a93ec9c
prerequisite-patch-id: 6caca1fa87e055ac53f490e2bcde7d518564e2ac
prerequisite-patch-id: afaa01ce700938bf8ff0dfd7891dc390720c5d2b
prerequisite-patch-id: fd70879ba4bb8ab47603daa3e419c2671f12b222
prerequisite-patch-id: 98a9f6f59a5589e5eb27a286a8d8437f5dea71c7
prerequisite-patch-id: 215da1b3b4cc2d25310901e94e3b1725f2bf54ff
prerequisite-patch-id: e94fc089b9c73876ddc03cfd6be61007d29efb8f
prerequisite-patch-id: b409a8e797d0601c7051d81229455c76c3464d05
prerequisite-patch-id: cec4b4bd270adeebd96800920455cc2a2fbf05fc
prerequisite-patch-id: 5dcb70b9c189e9e48f53fcc1c458e674b15b06b7
prerequisite-patch-id: c734b2b194e75a5f569b733aea196f5fd7ed7e79
prerequisite-patch-id: e03100003d0080e814e2d0a541913b98982b5c72
prerequisite-patch-id: b2258fff91672dabf5b8fc7189c2f7d0ff385556
prerequisite-patch-id: 8aebd812574d93a5d4d49237ed3a9b92531bb736
prerequisite-patch-id: 0b6f594d83da7bea97796e4e0c4bcb45724fda50
prerequisite-patch-id: d2eb234f2dee3edf248b1ce1d42edd73f7041941
prerequisite-patch-id: 0b0b92affa359469947d4c55daa0986a342d28d3
prerequisite-patch-id: 891da9d7a0a25bf5b205ae6f9e1b22141943f226
prerequisite-patch-id: f6d2d9f9c8888269e9bdb6dc41bcf27098f9cf5d
prerequisite-patch-id: 79cbc0f5e60d53f2660d84b2d48fd253157d77e6
prerequisite-patch-id: 9528fcde2e87f38657ffead2353e813067c3f0f1
prerequisite-patch-id: 748248b1a3d2cf8924d64effceb82622fa8367ff
prerequisite-patch-id: 78c7afc70b4b33495a87c8426b0647f4f2f03832
prerequisite-patch-id: f5bf187bbaee3bb16819159cafa66bab07e7809a
prerequisite-patch-id: 5e135420534fd6d0c3b97bc46c5923af1b7d161e
prerequisite-patch-id: 3ab57ce18efe35c6a138bfca872b6225906c319d
prerequisite-patch-id: 0cfbae1dfbeed77b312785c52465db3f6fa30afe
prerequisite-patch-id: 54533bbd65f0e48741bb9591c5c5a5b4c297d728
prerequisite-patch-id: 3010a509868761574497c86e78202e2f3cb79f1a
prerequisite-patch-id: 8af86338ec361ae48c2d8b5d1391cb9d8be85c69
prerequisite-patch-id: b3ef3920946eaca6a46d96187a30dc8b4720cfbb
prerequisite-patch-id: d2ec590bda7597f76735be6585982a49d7913c37
prerequisite-patch-id: 64c192e844f6a2fed9ad2f05b52d089fe266f089
prerequisite-patch-id: fd91288df4d73a4b4eebe166142a422abb411f21
prerequisite-patch-id: b8ef813340992b680a2052a316a22a0058959996
prerequisite-patch-id: 1a628f7b3dca672a8a5c14824e724bad0a6b4602
prerequisite-patch-id: 650e778ac577e8bfdf0d6418bf02850803ac5d9c
prerequisite-patch-id: e293d6f6285d71b0c8d04e7f2434941a824975c4
prerequisite-patch-id: a334f2d2d88d88e09c4544a2eaf35aead461e1c7
prerequisite-patch-id: 5f5377888db787468353f29ac74b0904a8b25baf
prerequisite-patch-id: b59fd0ee65c8b821476bbb3617706748a8dbe2c2
prerequisite-patch-id: d25067ea4ec0e23744f2dca853c7e9f7b9ab4a9d
prerequisite-patch-id: f8f225f62915061e919eb8f34f6a5b95f8b27479
prerequisite-patch-id: 8c7d381e1523dea1b6f5abee73d498d8b2955cad
prerequisite-patch-id: 26cdf7f0745ad3a2a2b698628e977ce5c7713c7a
prerequisite-patch-id: ca2cfb6dab200e185222198f1a14cbfc6d0a7e2d
prerequisite-patch-id: d72173ece060949e147e13fc5989bdbb3493ceff
prerequisite-patch-id: 638fddce3707675a7a61dbff9c3614397f57627e
prerequisite-patch-id: 996b6619beeb853982d6060e027a93faf91dff41
prerequisite-patch-id: f90c3cdfaea1b8dc6d557553446aaf1d40da3699
prerequisite-patch-id: 4415303e0228b478d456b59c7ff2206cca74de6e
prerequisite-patch-id: d2be497b832c5de25de960841f7f4561ef1a30df
prerequisite-patch-id: 95d2f4a95240415365a12edc0949ad303e58162e
prerequisite-patch-id: e6d21cd55c7a6eb93d84edc7052bca860fed2db4
prerequisite-patch-id: 3db726b75b4052394d38cb177c0f0f8bd1bd1fdc
prerequisite-patch-id: 898e1f6abc0aa874521bfba111b3b6a971d0351d
prerequisite-patch-id: ef11ecac000f8b1c2804e1165b7d9cd60efa1faa
prerequisite-patch-id: 259d98f6e077fe294a64208b951757d26ec7c55d
prerequisite-patch-id: 4ecea34e053c8f49d374450be274db8d20e9dc40
prerequisite-patch-id: 5bb57a94507a2286da7fb7d899c8c80da958ee77
prerequisite-patch-id: 7c7e19fff0e2ec722d382afb2dc503931052a4d8
prerequisite-patch-id: 79f59bf9b784aeeb252514ceedcba03e8cf2f3f1
prerequisite-patch-id: dc6fd671e585bb5851897f9f09699c82abd50be3
prerequisite-patch-id: 0c429a0ae59ee2d66302f2405487791c2b4dc1bf
prerequisite-patch-id: 94f123a4a42718663ebe824f2ca1f225d06b61b1
prerequisite-patch-id: fe840212617ae226b810ba307b13ad025515114b
prerequisite-patch-id: 4ee2b6d0dbb14a05d46e4622834ff53b243eea7b
prerequisite-patch-id: ef97aa5db4ce9518038b714dc64fd3dbaa1ac79a
prerequisite-patch-id: 45f37f741c0cc19b48e2dce967fce2d117d7a108
prerequisite-patch-id: 40534393f472f95f1491abf676ba4224a3085de0
prerequisite-patch-id: e3714930d19440271c1e8c27f390d3d0d07b3297
prerequisite-patch-id: b41b94dc66fec4926a988e1f1cd2f5ab9d482355
prerequisite-patch-id: c939c32d0ccb8a236ff341c467623fdf3ddc81bd
prerequisite-patch-id: 1b078a9b11c7df9a80c58371c54a7ff1dc978699
prerequisite-patch-id: 9eec331074d94e1d2fc40fd894fdeebe3b84ca60
prerequisite-patch-id: e2e79ed2643a2a97be6b300d3f24b7e29799f645
prerequisite-patch-id: e4b70da6954e5b56053c0c7b4315d494ba953175
prerequisite-patch-id: 2cf00bbc50cd30fb52f55761ad912e43543ba5ac
prerequisite-patch-id: e4bfcaf5bd90a82cb6cffcc5485ba525cbb806be
prerequisite-patch-id: 14f1afe39778dea24436862a928036ee875d15e3
prerequisite-patch-id: ecbbe689bcce3c1814f6c5a9d11a7fdb029fea4c
prerequisite-patch-id: b72df03ef72781aabcbff4af91af9e2322741467
prerequisite-patch-id: e0fa3700c128c1277437f38faf6aaf599a7eeef9
prerequisite-patch-id: 5ac9fa96627b4d3593429f55b391e66ccf8f14e2
prerequisite-patch-id: d72ec36511b6a610072e24e051bbe859af3490fe
prerequisite-patch-id: d418fbf5d24fd92638cd9b9b8b0634d002ceb93d
prerequisite-patch-id: 3bf6339a386a211f7eec2ea29c33f9703cd76252
prerequisite-patch-id: b33c848deaf60e3ca4df6f8c188c52e7be8a5075
prerequisite-patch-id: bf2b064047f9f433df99419e18e099effdf0179d
prerequisite-patch-id: 72604edaf068706d59873547196e173245c02af1
prerequisite-patch-id: b84ee3e0df1e9e704a5900ff31bbbfaf0a8b324d
prerequisite-patch-id: 20e0bd5d1f3c88351c4991ef9c652dbded53bf9a
prerequisite-patch-id: ced1a8d10fa61ec7058db37a516dc39cc8782cb8
prerequisite-patch-id: 257232611b37b0984e075357e7b371a4be545d7d
prerequisite-patch-id: 4c810718eddd4d5002206e32157b144ae03ee341
prerequisite-patch-id: cc7a27871a08825d6f8e88217a50cac54b9f0695
prerequisite-patch-id: 624f5fa83ea855d5d8c12b9951d9aefe24fab4a2
prerequisite-patch-id: b1b420ecf3df4943df2465c3cebb41fd4508a005
prerequisite-patch-id: ef0163a6672712ef8db18dddab09ecfe8f150a25
prerequisite-patch-id: e70019e8a44b17fc097d0d1e37f317809323543b
prerequisite-patch-id: 09f842625b0dfef06a33bdec0668a363f20c82fa
prerequisite-patch-id: 79bcb423d571c54069d1592796524fd375e877bb
prerequisite-patch-id: 8736ba5a46e7f3801184b4fbbadf06b8aa526ba4
prerequisite-patch-id: fd652b4de6d67046087ddd8db3a10e1edc75fa8a
prerequisite-patch-id: e1f33e2fd3f957aa0a993ac0aa00346a8d9adff5
prerequisite-patch-id: 3b3a5af294c8d761db12245960508a62073bce4d
prerequisite-patch-id: da6ed76d48a1c5aea7bfe370b5fc2a09877295b0
prerequisite-patch-id: 20ff96b6dee44064594c0e62d80dffdbc6d8bd09
prerequisite-patch-id: e8be691d1a631f0002248d7bd5cee1107cc695ff
prerequisite-patch-id: 3415877dbe333a1598374b37570cd7499b2ed6c7
prerequisite-patch-id: 83a0b1ad24326ce4820eec1af98ea1bd2ca9ff1c
prerequisite-patch-id: a13b84339dbf2e022d5e5b36feff90d4910ae43c
prerequisite-patch-id: 3ab27e77113da63e8d81d2d5ec391653ac05d0a6
prerequisite-patch-id: 998f2a652d50860b819709b2d8df26e9fb4d1dba
prerequisite-patch-id: 13211b9cbfcd1bd0f0f073e228db913ff8b7c449
prerequisite-patch-id: 067f8eec5fdc87e74740e0d30d471b36d13171ab
prerequisite-patch-id: 10860b37ce50091ac6619361c83195edb3331b95
prerequisite-patch-id: 703b5df0c1a468a59b85a843ae33dfa29b93428e
prerequisite-patch-id: 0ad90dbe972de47997db7ba2535225408e9611f3
prerequisite-patch-id: 9647438b631376ae47746859edc4228d4b45b598
prerequisite-patch-id: 17a490cd1be8a3e86bbb2be33171ca4d5d144d14
prerequisite-patch-id: bdf141cf5431206dcbb70a36fd252a287e925f39
prerequisite-patch-id: 3f34b50687814697500b6840074e788d14897a59
prerequisite-patch-id: fea8cfb266126c903b8e69dc1939f81b06d76c6b
prerequisite-patch-id: 16ca8af79c404e10d79141a61fd732e2afd9b207
prerequisite-patch-id: 8976c8dd35c1f632c99d407e977d5310e47e4c56
-- 
2.42.1