summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/fftw/package.py
diff options
context:
space:
mode:
Diffstat (limited to 'var/spack/repos/builtin/packages/fftw/package.py')
-rw-r--r--var/spack/repos/builtin/packages/fftw/package.py19
1 files changed, 14 insertions, 5 deletions
diff --git a/var/spack/repos/builtin/packages/fftw/package.py b/var/spack/repos/builtin/packages/fftw/package.py
index f6a5e83908..583a872096 100644
--- a/var/spack/repos/builtin/packages/fftw/package.py
+++ b/var/spack/repos/builtin/packages/fftw/package.py
@@ -1,4 +1,4 @@
-# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
@@ -32,6 +32,8 @@ class FftwBase(AutotoolsPackage):
msg='Long double precision is not supported in FFTW 2')
conflicts('precision=quad', when='@2.1.5',
msg='Quad precision is not supported in FFTW 2')
+ conflicts('precision=quad', when='+mpi',
+ msg='Quad precision is not supported in MPI')
@property
def libs(self):
@@ -111,9 +113,14 @@ class FftwBase(AutotoolsPackage):
# float only
float_simd_features = ['altivec', 'sse']
- # Workaround NVIDIA compiler bug when avx512 is enabled
- if spec.satisfies('%nvhpc') and 'avx512' in simd_features:
- simd_features.remove('avx512')
+ # Workaround PGI compiler bug when avx2 is enabled
+ if spec.satisfies('%pgi') and 'avx2' in simd_features:
+ simd_features.remove('avx2')
+
+ # Workaround NVIDIA/PGI compiler bug when avx512 is enabled
+ if spec.satisfies('%nvhpc') or spec.satisfies('%pgi'):
+ if 'avx512' in simd_features:
+ simd_features.remove('avx512')
# NVIDIA compiler does not support Altivec intrinsics
if spec.satisfies('%nvhpc') and 'vsx' in simd_features:
@@ -202,6 +209,7 @@ class Fftw(FftwBase):
url = "http://www.fftw.org/fftw-3.3.4.tar.gz"
list_url = "http://www.fftw.org/download.html"
+ version('3.3.9', sha256='bf2c7ce40b04ae811af714deb512510cc2c17b9ab9d6ddcf49fe4487eea7af3d')
version('3.3.8', sha256='6113262f6e92c5bd474f2875fa1b01054c4ad5040f6b0da7c03c98821d9ae303')
version('3.3.7', sha256='3b609b7feba5230e8f6dd8d245ddbefac324c5a6ae4186947670d9ac2cd25573')
version('3.3.6-pl2', sha256='a5de35c5c824a78a058ca54278c706cdf3d4abba1c56b63531c2cb05f5d57da2')
@@ -220,7 +228,8 @@ class Fftw(FftwBase):
provides('fftw-api@2', when='@2.1.5')
provides('fftw-api@3', when='@3:')
- patch('pfft-3.3.5.patch', when="@3.3.5:+pfft_patches", level=0)
+ patch('pfft-3.3.9.patch', when="@3.3.9:+pfft_patches", level=0)
+ patch('pfft-3.3.5.patch', when="@3.3.5:3.3.8+pfft_patches", level=0)
patch('pfft-3.3.4.patch', when="@3.3.4+pfft_patches", level=0)
patch('pgi-3.3.6-pl2.patch', when="@3.3.6-pl2%pgi", level=0)
patch('intel-configure.patch', when="@3:3.3.8%intel", level=0)