Add latest version of fftw

This commit is contained in:
Adam J. Stewart 2016-08-19 17:05:14 -05:00
parent c8dd1bb40b
commit f0f2c6c486
2 changed files with 17 additions and 16 deletions

View file

@ -22,8 +22,6 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
@ -33,22 +31,19 @@ class Fftw(Package):
size, and of both real and complex data (as well as of even/odd
data, i.e. the discrete cosine/sine transforms or DCT/DST). We
believe that FFTW, which is free software, should become the FFT
library of choice for most applications.
library of choice for most applications."""
"""
homepage = "http://www.fftw.org"
url = "http://www.fftw.org/fftw-3.3.4.tar.gz"
version('3.3.5', '6cc08a3b9c7ee06fdd5b9eb02e06f569')
version('3.3.4', '2edab8c06b24feeb3b82bbb3ebf3e7b3')
variant(
'float', default=True,
variant('float', default=True,
description='Produces a single precision version of the library')
variant(
'long_double', default=True,
variant('long_double', default=True,
description='Produces a long double precision version of the library')
variant(
'quad', default=False,
variant('quad', default=False,
description='Produces a quad precision version of the library '
'(works only with GCC and libquadmath)')
variant('openmp', default=False, description="Enable OpenMP support.")
@ -60,10 +55,13 @@ class Fftw(Package):
# targets are supported
def install(self, spec, prefix):
options = ['--prefix=%s' % prefix,
'--enable-shared',
'--enable-threads']
# Add support for OpenMP
options = [
'--prefix={0}'.format(prefix),
'--enable-shared',
'--enable-threads'
]
# Add support for OpenMP
if '+openmp' in spec:
# Note: Apple's Clang does not support OpenMP.
if spec.satisfies('%clang'):
@ -78,17 +76,21 @@ def install(self, spec, prefix):
configure(*options)
make()
make("check")
make("install")
if '+float' in spec:
configure('--enable-float', *options)
make()
make("check")
make("install")
if '+long_double' in spec:
configure('--enable-long-double', *options)
make()
make("check")
make("install")
if '+quad' in spec:
configure('--enable-quad-precision', *options)
make()
make("check")
make("install")

View file

@ -22,7 +22,6 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
@ -57,7 +56,7 @@ class Gromacs(Package):
depends_on('plumed+mpi', when='+plumed+mpi')
depends_on('plumed~mpi', when='+plumed~mpi')
depends_on('fftw')
depends_on('cmake', type='build')
depends_on('cmake@2.8.8:', type='build')
# TODO : add GPU support