math/fftw-3-long: long double version of fftw3

git-svn-id: https://svn.macports.org/repository/macports/trunk/dports@63802 d073be05-634f-4543-b044-5fe20cf6d1d6
This commit is contained in:
Adam Mercer
2010-02-15 19:01:45 +00:00
parent cb85280a00
commit 2e05269d88
+133
View File
@@ -0,0 +1,133 @@
# $Id$
PortSystem 1.0
PortGroup muniversal 1.0
name fftw-3-long
version 3.2.2
categories math
platforms darwin
maintainers ram openmaintainer
homepage http://www.fftw.org/
distname fftw-${version}
dist_subdir fftw-3
master_sites \
${homepage} \
ftp://ftp.fftw.org/pub/fftw/ \
ftp://ftp.kusastro.kyoto-u.ac.jp/pub/src/GNU/fftw/
description \
Fast C routines to compute the Discrete Fourier Transform
long_description \
FFTW is a C subroutine library for computing the \
Discrete Fourier Transform (DFT) in one or more \
dimensions, of both real and complex data, and of \
arbitrary input size. We believe that FFTW, which is \
free software, should become the FFT library of choice \
for most applications. Our benchmarks, performed on a \
variety of platforms, show that FFTW's performance is \
typically superior to that of other publicly available \
FFT software. Moreover, FFTW's performance is portable: \
the program will perform well on most architectures \
without modification. \
This port is of fftw version 3.x, with long double support. \
It has many improvements relative to 2.x, but is not \
backwardly compatible.
checksums \
md5 b616e5c91218cc778b5aa735fefb61ae \
sha1 d43b799eedfb9408f62f9f056f5e8a645618467b \
rmd160 27af9b97072fa3a41b91b9430d093f671a1cd359
configure.args \
--enable-threads \
--enable-long-double \
--disable-fortran \
--enable-shared
configure.cflags-append \
-fno-common \
-O3 \
-fomit-frame-pointer \
-fstrict-aliasing
depends_lib \
port:fftw-3
test.run yes
test.target check
use_parallel_build yes
variant gcc42 description {create Fortran wrappers using gcc42} conflicts gcc43 gcc44 g95 {
depends_lib-append port:gcc42
configure.f77 gfortran-mp-4.2
configure.args-delete --disable-fortran
if { ${os.arch} == "i386" } {
lappend merger_configure_args(ppc) "--disable-fortran"
lappend merger_configure_args(ppc64) "--disable-fortran"
} else {
lappend merger_configure_args(i386) "--disable-fortran"
lappend merger_configure_args(x86_64) "--disable-fortran"
}
}
variant gcc43 description {create Fortran wrappers using gcc43} conflicts gcc42 gcc44 g95 {
depends_lib-append port:gcc43
configure.f77 gfortran-mp-4.3
configure.args-delete --disable-fortran
if { ${os.arch} == "i386" } {
lappend merger_configure_args(ppc) "--disable-fortran"
lappend merger_configure_args(ppc64) "--disable-fortran"
} else {
lappend merger_configure_args(i386) "--disable-fortran"
lappend merger_configure_args(x86_64) "--disable-fortran"
}
}
variant gcc44 description {create Fortran wrappers using gcc44} conflicts gcc42 gcc43 g95 {
depends_lib-append port:gcc44
configure.f77 gfortran-mp-4.4
configure.args-delete --disable-fortran
if { ${os.arch} == "i386" } {
lappend merger_configure_args(ppc) "--disable-fortran"
lappend merger_configure_args(ppc64) "--disable-fortran"
} else {
lappend merger_configure_args(i386) "--disable-fortran"
lappend merger_configure_args(x86_64) "--disable-fortran"
}
}
variant g95 description {create Fortran wrappers using f95} conflicts gcc42 gcc43 {
depends_lib-append port:g95
configure.f77 g95
configure.args-delete --disable-fortran
if { ${os.arch} == "i386" } {
lappend merger_configure_args(ppc) "--disable-fortran"
lappend merger_configure_args(ppc64) "--disable-fortran"
lappend merger_configure_args(x86_64) "--disable-fortran"
} else {
lappend merger_configure_args(i386) "--disable-fortran"
lappend merger_configure_args(ppc64) "--disable-fortran"
lappend merger_configure_args(x86_64) "--disable-fortran"
}
}
post-destroot {
file delete ${destroot}${prefix}/include/fftw3.f
file delete ${destroot}${prefix}/include/fftw3.h
file delete ${destroot}${prefix}/bin/fftw-wisdom-to-conf
file delete ${destroot}${prefix}/share/man/man1/fftw-wisdom-to-conf.1
file delete ${destroot}${prefix}/share/info/fftw3.info
file delete ${destroot}${prefix}/share/info/fftw3.info-1
file delete ${destroot}${prefix}/share/info/fftw3.info-2
file delete ${destroot}${prefix}/share/info/fftw3.info-3
file delete ${destroot}${prefix}/share/info/fftw3.info-4
file delete ${destroot}${prefix}/share/info/fftw3.info-5
}
livecheck.type regex
livecheck.url ${homepage}
livecheck.regex {FFTW (\d+(?:\.\d+)*) is the latest}