summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKai Germaschewski <kai.germaschewski@unh.edu>2021-06-28 05:33:23 -0400
committerGitHub <noreply@github.com>2021-06-28 11:33:23 +0200
commit3cfc1dbc14ee5d11e830ace8be3c9c2c4747afb1 (patch)
tree6f063433df961df5098c8e0ffd8a18ff16fcbae3
parent2970c026392354fdfc64ddbd20aad84e69a42525 (diff)
downloadspack-3cfc1dbc14ee5d11e830ace8be3c9c2c4747afb1.tar.gz
spack-3cfc1dbc14ee5d11e830ace8be3c9c2c4747afb1.tar.bz2
spack-3cfc1dbc14ee5d11e830ace8be3c9c2c4747afb1.tar.xz
spack-3cfc1dbc14ee5d11e830ace8be3c9c2c4747afb1.zip
pfunit: fix gcc10 +mpi (#23878)
Instead of refusing to build +mpi with gcc10, add what I guess is now the standard workaround, ie., `-fallow-argument-mismatch`. Getting this into pfunit's cmake-based but kinda non-standard build isi a bit ugly, but you gotta do what you gotta do...
-rw-r--r--var/spack/repos/builtin/packages/pfunit/package.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/var/spack/repos/builtin/packages/pfunit/package.py b/var/spack/repos/builtin/packages/pfunit/package.py
index 7aea55a1eb..2ffbfced64 100644
--- a/var/spack/repos/builtin/packages/pfunit/package.py
+++ b/var/spack/repos/builtin/packages/pfunit/package.py
@@ -49,7 +49,6 @@ class Pfunit(CMakePackage):
# See https://github.com/Goddard-Fortran-Ecosystem/pFUnit/pull/179
conflicts("+shared", when="@4.0.0:")
conflicts("+use_comm_world", when="~mpi")
- conflicts('+mpi', when='@:3.99.99 %gcc@10.0.0:')
patch("mpi-test.patch", when="@:3.99.99 +use_comm_world")
def patch(self):
@@ -78,6 +77,9 @@ class Pfunit(CMakePackage):
self.define_from_variant('OPENMP', 'openmp'),
'-DMAX_RANK=%s' % spec.variants['max_array_rank'].value]
+ if self.spec.satisfies('%gcc@10:'):
+ args.append('-DCMAKE_Fortran_FLAGS_DEBUG=-g -O2 -fallow-argument-mismatch')
+
if spec.satisfies('@4.0.0:'):
args.append('-DSKIP_MPI=%s' % ('YES' if '~mpi' in spec else 'NO'))
else: