# $Header: /magellan-cvs/smage/fftw/fftw-2.1.5-r7.smage2,v 1.1 2008/05/31 17:48:24 niro Exp $ PNAME="fftw" PVER="2.1.5" PBUILD="r7" PCATEGORIE="sci-libs" STATE="unstable" DESCRIPTION="FTW is a C subroutine library for computing the discrete Fourier transform (DFT)." HOMEPAGE="http://www.fftw.org/" DEPEND=">= virtual/glibc" SRCFILE="${PNAME}-${PVER}.tar.gz" SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" sminclude mtools SRC_URI=( http://www.fftw.org/${SRCFILE} mirror://${PNAME}/${SRCFILE} ) # --enable-i386-hacks requires -fomit-frame-pointer to work properly export CFLAGS="${CFLAGS} -fomit-frame-pointer" export CXXFLAGS="${CFLAGS}" src_prepare() { munpack ${SRCFILE} || die mv ${SRCDIR} ${SRCDIR}-single || die munpack ${SRCFILE} || die mv ${SRCDIR} ${SRCDIR}-double || die } src_compile() { local myconf [[ ${ARCH} = i*86 ]] && myconf="--enable-i386-hacks" cd ${SRCDIR}-single mconfigure \ --enable-shared \ --enable-threads \ --enable-type-prefix \ --enable-vec-recurse \ --enable-float \ ${myconf} \ || die mmake || die cd ${SRCDIR}-double mconfigure \ --enable-shared \ --enable-threads \ --enable-type-prefix \ --enable-vec-recurse \ ${myconf} \ || die mmake || die } src_install () { cd ${SRCDIR}-single mmake DESTDIR=${BINDIR} install || die cd ${SRCDIR}-double mmake DESTDIR=${BINDIR} install || die # there's a small bug in minstalldocs, # so we move this dir back ${SRCDIR} mv ${SRCDIR}-double ${SRCDIR} || die minstalldocs AUTHORS COPYING COPYRIGHT ChangeLog NEWS README TODO || die # creating some neccessary symlinks # includes mlink dfftw.h /usr/include/fftw.h || die mlink drfftw.h /usr/include/rfftw.h || die mlink dfftw_threads.h /usr/include/fftw_threads.h || die mlink drfftw_threads.h /usr/include/rfftw_threads.h || die # libs mlink libdfftw.so /usr/$(mlibdir)/libfftw.so || die mlink libdrfftw.so /usr/$(mlibdir)/librfftw.so || die mlink libdfftw_threads.so /usr/$(mlibdir)/libfftw_threads.so || die mlink libdrfftw_threads.so /usr/$(mlibdir)/librfftw_threads.so || die # missing include minstallfile fortran/fftw_f77.i /usr/include || die }