easyconfigs-it4i/f/FFTW/FFTW-3.3.5-intel-2017.00.eb
2017-03-09 11:57:40 +01:00

35 lines
1.3 KiB
Plaintext

easyblock = 'ConfigureMake'
name = 'FFTW'
version = '3.3.5'
homepage = 'http://www.fftw.org'
description = """FFTW is a C subroutine library for computing the discrete Fourier transform (DFT)
in one or more dimensions, of arbitrary input size, and of both real and complex data."""
toolchain = {'name': 'intel', 'version': '2017.00'}
toolchainopts = {'pic': True}
sources = [SOURCELOWER_TAR_GZ]
source_urls = [homepage]
common_configopts = "--enable-threads --enable-openmp --with-pic"
# no quad precision, requires GCC v4.6 or higher
# see also http://www.fftw.org/doc/Extended-and-quadruple-precision-in-Fortran.html
configopts = [
common_configopts + " --enable-single --enable-sse2 --enable-mpi",
common_configopts + " --enable-long-double --enable-mpi",
common_configopts + " --enable-sse2 --enable-mpi --enable-avx2", # default as last
]
sanity_check_paths = {
'files': ['bin/fftw%s' % x for x in ['-wisdom', '-wisdom-to-conf', 'f-wisdom', 'l-wisdom']] +
['include/fftw3%s' % x for x in ['-mpi.f03', '-mpi.h', '.f', '.f03',
'.h', 'l-mpi.f03', 'l.f03', 'q.f03']] +
['lib/libfftw3%s%s.a' % (x, y) for x in ['', 'f', 'l'] for y in ['', '_mpi', '_omp', '_threads']],
'dirs': ['lib/pkgconfig'],
}
moduleclass = 'numlib'