2011-10-22 08:32:16 +00:00
|
|
|
# Template file for 'fftw'
|
|
|
|
pkgname=fftw
|
2012-11-26 12:33:11 +00:00
|
|
|
version=3.3.3
|
2013-03-24 10:42:04 +00:00
|
|
|
revision=2
|
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"
|
2012-11-26 12:33:11 +00:00
|
|
|
homepage="http://www.fftw.org/"
|
|
|
|
distfiles="${homepage}/fftw-${version}.tar.gz"
|
|
|
|
checksum=85cdfc0a0ba10d8fa4f0f8e733aac1a5936c859832a9e3d5c0731fb5c54a97f3
|
2011-10-22 08:32:16 +00:00
|
|
|
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."
|
|
|
|
|
2012-11-26 12:33:11 +00:00
|
|
|
subpackages="libfftw fftw-devel"
|
2013-03-24 10:42:04 +00:00
|
|
|
hostmakedepends="automake gcc-fortran"
|
|
|
|
|
|
|
|
pre_configure() {
|
|
|
|
sed -e 's,AM_CONFIG_HEADER,AC_CONFIG_HEADERS,g' -i configure.ac
|
|
|
|
autoreconf -fi
|
|
|
|
}
|
2011-10-22 08:32:16 +00:00
|
|
|
|
|
|
|
do_configure() {
|
2013-03-24 10:42:04 +00:00
|
|
|
local CARGS="--enable-shared --enable-threads"
|
|
|
|
|
|
|
|
if [ "$XBPS_TARGET_MACHINE" = "i686" -o "$XBPS_TARGET_MACHINE" = "x86_64" ]; then
|
|
|
|
_sse="--enable-sse"
|
|
|
|
_sse2="--enable-sse2"
|
|
|
|
fi
|
2011-10-22 08:32:16 +00:00
|
|
|
|
|
|
|
# double precision
|
|
|
|
mkdir build-double
|
|
|
|
cd ${wrksrc}/build-double && \
|
2013-03-24 10:42:04 +00:00
|
|
|
../configure ${CONFIGURE_SHARED_ARGS} ${CARGS} ${_sse2}
|
2011-10-22 08:32:16 +00:00
|
|
|
|
|
|
|
# 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} \
|
2013-03-24 10:42:04 +00:00
|
|
|
--enable-float ${_sse}
|
2011-10-22 08:32:16 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
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
|
|
|
|
}
|