2011-10-22 08:32:16 +00:00
|
|
|
# Template file for 'fftw'
|
|
|
|
pkgname=fftw
|
|
|
|
version=3.3
|
|
|
|
homepage="http://www.fftw.org/"
|
|
|
|
distfiles="${homepage}/${pkgname}-${version}.tar.gz"
|
2011-11-12 08:45:15 +00:00
|
|
|
revision=1
|
2011-10-22 08:32:16 +00:00
|
|
|
short_desc="Library for computing the discrete Fourier transform (DFT)"
|
|
|
|
maintainer="Juan RP <xtraeme@gmail.com>"
|
|
|
|
license="GPL-2"
|
|
|
|
checksum=d25a98521a13933e678ce19319d03ddc915826764e1e59abd12d172c239b6aea
|
|
|
|
long_desc="
|
|
|
|
FFTW is a free collection of fast C routines for computing the Discrete
|
|
|
|
Fourier Transform in one or more dimensions. It includes complex, real,
|
|
|
|
symmetric, and parallel transforms, and can handle arbitrary array sizes
|
|
|
|
efficiently. FFTW is typically faster than other publically-available FFT
|
|
|
|
implementations, and is even competitive with vendor-tuned libraries."
|
|
|
|
|
|
|
|
subpackages="lib${pkgname} ${pkgname}-devel"
|
|
|
|
|
|
|
|
Add_dependency build gcc-fortran
|
|
|
|
|
|
|
|
do_configure() {
|
|
|
|
local CARGS="--enable-shared --enable-threads"
|
|
|
|
|
|
|
|
# double precision
|
|
|
|
mkdir build-double
|
|
|
|
cd ${wrksrc}/build-double && \
|
|
|
|
../configure ${CONFIGURE_SHARED_ARGS} ${CARGS} --enable-sse2
|
|
|
|
|
|
|
|
# long double precission
|
|
|
|
mkdir ${wrksrc}/build-long-double
|
|
|
|
cd ${wrksrc}/build-long-double && \
|
|
|
|
../configure ${CONFIGURE_SHARED_ARGS} \
|
|
|
|
${CARGS} --enable-long-double
|
|
|
|
|
|
|
|
# single precission
|
|
|
|
mkdir ${wrksrc}/build-single
|
|
|
|
cd ${wrksrc}/build-single && \
|
|
|
|
../configure ${CONFIGURE_SHARED_ARGS} ${CARGS} \
|
|
|
|
--enable-float --enable-sse
|
|
|
|
}
|
|
|
|
|
|
|
|
do_build() {
|
|
|
|
for f in double long-double single; do
|
|
|
|
cd ${wrksrc}/build-${f} && make ${makejobs}
|
|
|
|
done
|
|
|
|
}
|
|
|
|
|
|
|
|
do_install() {
|
|
|
|
for f in double long-double single; do
|
|
|
|
cd ${wrksrc}/build-${f} && make DESTDIR=${DESTDIR} install
|
|
|
|
done
|
|
|
|
}
|