Files
haikuports/sci-libs/fftw/fftw-3.3.7.recipe
2017-11-04 00:38:03 +01:00

88 lines
2.5 KiB
Bash

SUMMARY="Fast C library for 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). We believe that FFTW, which is free software, should \
become the FFT library of choice for most applications.
Our benchmarks, performed on on a variety of platforms, show that FFTW's \
performance is typically superior to that of other publicly available FFT \
software, and is even competitive with vendor-tuned codes. In contrast to \
vendor-tuned codes, however, FFTW's performance is portable: the same program \
will perform well on most architectures without modification. Hence the name, \
FFTW, which stands for the somewhat whimsical title of Fastest Fourier \
Transform in the West."
HOMEPAGE="http://www.fftw.org/"
COPYRIGHT="2003, 2007-2011 Matteo Frigo
2003, 2007-2011 Massachusetts Institute of Technology"
LICENSE="GNU GPL v2"
REVISION="1"
SOURCE_URI="http://www.fftw.org/fftw-$portVersion.tar.gz"
CHECKSUM_SHA256="3b609b7feba5230e8f6dd8d245ddbefac324c5a6ae4186947670d9ac2cd25573"
SOURCE_DIR="fftw-$portVersion"
ARCHITECTURES="x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86_gcc2 x86"
PROVIDES="
fftw$secondaryArchSuffix = $portVersion compat >= 3
lib:libfftw3$secondaryArchSuffix = 3.5.7 compat >= 3
lib:libfftw3f$secondaryArchSuffix = 3.5.7 compat >= 3
cmd:fftw_wisdom$secondaryArchSuffix
cmd:fftwf_wisdom$secondaryArchSuffix
cmd:fftw_wisdom_to_conf$secondaryArchSuffix
"
REQUIRES="
haiku$secondaryArchSuffix
"
PROVIDES_devel="
fftw${secondaryArchSuffix}_devel = $portVersion compat >= 3
devel:libfftw3$secondaryArchSuffix = 3.5.7 compat >= 3
devel:libfftw3f$secondaryArchSuffix = 3.5.7 compat >= 3
"
REQUIRES_devel="
fftw$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:awk
cmd:find
cmd:make
"
BUILD()
{
make clean && make distclean || true
# build double-precision version
runConfigure ./configure --enable-shared
make $jobArgs
make install
make clean && make distclean || true
# build float-precision version
runConfigure ./configure --enable-float --enable-shared
make $jobArgs
make install
}
INSTALL()
{
rm $libDir/libfftw*.la
prepareInstalledDevelLibs \
libfftw3 \
libfftw3f
fixPkgconfig
packageEntries devel \
$developDir
}