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>
This commit is contained in:
John Ericson 2023-02-07 10:16:33 -05:00
parent 5855bcd789
commit 49786f55e1
2 changed files with 16 additions and 4 deletions

View File

@ -12,18 +12,19 @@
, enableMpi ? false , enableMpi ? false
, mpi , mpi
, withDoc ? stdenv.cc.isGNU , withDoc ? stdenv.cc.isGNU
, testers
}: }:
assert lib.elem precision [ "single" "double" "long-double" "quad-precision" ]; assert lib.elem precision [ "single" "double" "long-double" "quad-precision" ];
stdenv.mkDerivation rec { stdenv.mkDerivation (finalAttrs: {
pname = "fftw-${precision}"; pname = "fftw-${precision}";
version = "3.3.10"; version = "3.3.10";
src = fetchurl { src = fetchurl {
urls = [ urls = [
"https://fftw.org/fftw-${version}.tar.gz" "https://fftw.org/fftw-${finalAttrs.version}.tar.gz"
"ftp://ftp.fftw.org/pub/fftw/fftw-${version}.tar.gz" "ftp://ftp.fftw.org/pub/fftw/fftw-${finalAttrs.version}.tar.gz"
]; ];
sha256 = "sha256-VskyVJhSzdz6/as4ILAgDHdCZ1vpIXnlnmIVs0DiZGc="; sha256 = "sha256-VskyVJhSzdz6/as4ILAgDHdCZ1vpIXnlnmIVs0DiZGc=";
}; };
@ -60,11 +61,21 @@ stdenv.mkDerivation rec {
nativeCheckInputs = [ perl ]; nativeCheckInputs = [ perl ];
passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
meta = with lib; { meta = with lib; {
description = "Fastest Fourier Transform in the West library"; description = "Fastest Fourier Transform in the West library";
homepage = "http://www.fftw.org/"; homepage = "http://www.fftw.org/";
license = licenses.gpl2Plus; license = licenses.gpl2Plus;
maintainers = [ maintainers.spwhitt ]; maintainers = [ maintainers.spwhitt ];
pkgConfigModules = [
{
"single" = "fftw3f";
"double" = "fftw3";
"long-double" = "fftw3l";
"quad-precision" = "fftw3q";
}.${precision}
];
platforms = platforms.unix; platforms = platforms.unix;
}; };
} })

View File

@ -19593,6 +19593,7 @@ with pkgs;
fftwSinglePrec = fftw.override { precision = "single"; }; fftwSinglePrec = fftw.override { precision = "single"; };
fftwFloat = fftwSinglePrec; # the configure option is just an alias fftwFloat = fftwSinglePrec; # the configure option is just an alias
fftwLongDouble = fftw.override { precision = "long-double"; }; fftwLongDouble = fftw.override { precision = "long-double"; };
fftwQuad = fftw.override { precision = "quad-precision"; };
fftwMpi = fftw.override { enableMpi = true; }; fftwMpi = fftw.override { enableMpi = true; };
filter-audio = callPackage ../development/libraries/filter-audio {}; filter-audio = callPackage ../development/libraries/filter-audio {};