summary refs log tree commit diff
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2023-02-07 10:16:33 -0500
committerJohn Ericson <John.Ericson@Obsidian.Systems>2023-02-07 15:38:16 -0500
commit49786f55e158fd4c8bc4c6f5ee96bede1250f646 (patch)
tree69f325536fd5bda188fabc7a8c13b53a1ca343dc
parent5855bcd7898dccb1b5a5fedc676e383290b0c61d (diff)
downloadnixpkgs-49786f55e158fd4c8bc4c6f5ee96bede1250f646.tar
nixpkgs-49786f55e158fd4c8bc4c6f5ee96bede1250f646.tar.gz
nixpkgs-49786f55e158fd4c8bc4c6f5ee96bede1250f646.tar.bz2
nixpkgs-49786f55e158fd4c8bc4c6f5ee96bede1250f646.tar.lz
nixpkgs-49786f55e158fd4c8bc4c6f5ee96bede1250f646.tar.xz
nixpkgs-49786f55e158fd4c8bc4c6f5ee96bede1250f646.tar.zst
nixpkgs-49786f55e158fd4c8bc4c6f5ee96bede1250f646.zip
fftw: Add `meta.pkgConfigModules` and test
Add `fftwQuad` to `all-packages.nix` too so that variant is tested.

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
-rw-r--r--pkgs/development/libraries/fftw/default.nix19
-rw-r--r--pkgs/top-level/all-packages.nix1
2 files changed, 16 insertions, 4 deletions
diff --git a/pkgs/development/libraries/fftw/default.nix b/pkgs/development/libraries/fftw/default.nix
index c5edb592620..9d83fdb4878 100644
--- a/pkgs/development/libraries/fftw/default.nix
+++ b/pkgs/development/libraries/fftw/default.nix
@@ -12,18 +12,19 @@
 , enableMpi ? false
 , mpi
 , withDoc ? stdenv.cc.isGNU
+, testers
 }:
 
 assert lib.elem precision [ "single" "double" "long-double" "quad-precision" ];
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "fftw-${precision}";
   version = "3.3.10";
 
   src = fetchurl {
     urls = [
-      "https://fftw.org/fftw-${version}.tar.gz"
-      "ftp://ftp.fftw.org/pub/fftw/fftw-${version}.tar.gz"
+      "https://fftw.org/fftw-${finalAttrs.version}.tar.gz"
+      "ftp://ftp.fftw.org/pub/fftw/fftw-${finalAttrs.version}.tar.gz"
     ];
     sha256 = "sha256-VskyVJhSzdz6/as4ILAgDHdCZ1vpIXnlnmIVs0DiZGc=";
   };
@@ -60,11 +61,21 @@ stdenv.mkDerivation rec {
 
   nativeCheckInputs = [ perl ];
 
+  passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+
   meta = with lib; {
     description = "Fastest Fourier Transform in the West library";
     homepage = "http://www.fftw.org/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.spwhitt ];
+    pkgConfigModules = [
+      {
+        "single" = "fftw3f";
+        "double" = "fftw3";
+        "long-double" = "fftw3l";
+        "quad-precision" = "fftw3q";
+      }.${precision}
+    ];
     platforms = platforms.unix;
   };
-}
+})
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index e2ff22c0ad2..7ff5ab82f3f 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -19593,6 +19593,7 @@ with pkgs;
   fftwSinglePrec = fftw.override { precision = "single"; };
   fftwFloat = fftwSinglePrec; # the configure option is just an alias
   fftwLongDouble = fftw.override { precision = "long-double"; };
+  fftwQuad = fftw.override { precision = "quad-precision"; };
   fftwMpi = fftw.override { enableMpi = true; };
 
   filter-audio = callPackage ../development/libraries/filter-audio {};