# Template file for 'fftw'
pkgname=fftw
version=3.3.4
revision=1
hostmakedepends="libtool automake gcc-fortran"
short_desc="Library for computing the discrete Fourier transform (DFT)"
maintainer="Juan RP <xtraeme@gmail.com>"
license="GPL-2"
homepage="http://www.fftw.org/"
distfiles="${homepage}/fftw-${version}.tar.gz"
checksum=8f0cde90929bc05587c3368d2f15cd0530a60b8a9912a8e2979a72dbe5af0982

pre_configure() {
	sed -e 's,AM_CONFIG_HEADER,AC_CONFIG_HEADERS,g' -i configure.ac
	autoreconf -fi
}

do_configure() {
	local CARGS="--enable-shared --enable-threads"

	case "$XBPS_TARGET_MACHINE" in
		i686*|x86_64*) _sse="--enable-sse"; _sse2="--enable-sse2";;
	esac

	# double precision
	mkdir build-double
	cd ${wrksrc}/build-double
	../configure ${configure_args} ${CARGS} ${_sse2}

	# long double precission
	mkdir ${wrksrc}/build-long-double
	cd ${wrksrc}/build-long-double
	../configure ${configure_args} ${CARGS} --enable-long-double

	# single precission
	mkdir ${wrksrc}/build-single
	cd ${wrksrc}/build-single
	../configure ${configure_args} ${CARGS} --enable-float ${_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
}

libfftw_package() {
	short_desc+=" - runtime library"
	pkg_install() {
		vmove "usr/lib/*.so.*"
	}
}

fftw-devel_package() {
	depends="libfftw>=${version}_${revision}"
	short_desc+=" - Development files"
	pkg_install() {
		vmove usr/include
		vmove usr/lib/pkgconfig
		vmove "usr/lib/*.a"
		vmove "usr/lib/*.so"
		vmove usr/share/info
	}
}
