summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--var/spack/repos/builtin/packages/mvapich2/package.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/var/spack/repos/builtin/packages/mvapich2/package.py b/var/spack/repos/builtin/packages/mvapich2/package.py
index 1c4a91d777..cd9eece7a3 100644
--- a/var/spack/repos/builtin/packages/mvapich2/package.py
+++ b/var/spack/repos/builtin/packages/mvapich2/package.py
@@ -75,8 +75,8 @@ class Mvapich2(AutotoolsPackage):
description='The fabric enabled for this build',
default='psm',
values=(
- 'psm', 'sock', 'nemesisib', 'nemesis', 'mrail', 'nemesisibtcp',
- 'nemesistcpib', 'nemesisofi'
+ 'psm', 'psm2', 'sock', 'nemesisib', 'nemesis', 'mrail',
+ 'nemesisibtcp', 'nemesistcpib', 'nemesisofi'
)
)
@@ -100,12 +100,15 @@ class Mvapich2(AutotoolsPackage):
depends_on('libxml2')
depends_on('cuda', when='+cuda')
depends_on('psm', when='fabrics=psm')
+ depends_on('opa-psm2', when='fabrics=psm2')
depends_on('rdma-core', when='fabrics=mrail')
depends_on('rdma-core', when='fabrics=nemesisib')
depends_on('rdma-core', when='fabrics=nemesistcpib')
depends_on('rdma-core', when='fabrics=nemesisibtcp')
depends_on('libfabric', when='fabrics=nemesisofi')
+ conflicts('fabrics=psm2', when='@:2.1') # psm2 support was added at version 2.2
+
filter_compiler_wrappers(
'mpicc', 'mpicxx', 'mpif77', 'mpif90', 'mpifort', relative_root='bin'
)
@@ -153,6 +156,11 @@ class Mvapich2(AutotoolsPackage):
"--with-device=ch3:psm",
"--with-psm={0}".format(self.spec['psm'].prefix)
]
+ elif 'fabrics=psm2' in self.spec:
+ opts = [
+ "--with-device=ch3:psm",
+ "--with-psm2={0}".format(self.spec['opa-psm2'].prefix)
+ ]
elif 'fabrics=sock' in self.spec:
opts = ["--with-device=ch3:sock"]
elif 'fabrics=nemesistcpib' in self.spec: