From f273e7d3294026bcc8ba03310344893f5e5043bb Mon Sep 17 00:00:00 2001 From: Harmen Stoppels Date: Wed, 27 Apr 2022 11:15:48 +0200 Subject: openmpi: add toggle for rsh plm (#30251) By default `openmpi` needs `rsh` from `openssh`, which is a somewhat redundant dependency for clusters using slurm. This PR adds a toggle to allow users to disable the ssh/rsh plm altogether. --- var/spack/repos/builtin/packages/openmpi/package.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/openmpi/package.py b/var/spack/repos/builtin/packages/openmpi/package.py index f5065a1847..6cf080cc0b 100644 --- a/var/spack/repos/builtin/packages/openmpi/package.py +++ b/var/spack/repos/builtin/packages/openmpi/package.py @@ -246,6 +246,7 @@ class Openmpi(AutotoolsPackage, CudaPackage): variant('lustre', default=False, description="Lustre filesystem library support") variant('romio', default=True, description='Enable ROMIO support') + variant('rsh', default=True, description='Enable rsh (openssh) process lifecycle management') # Adding support to build a debug version of OpenMPI that activates # Memchecker, as described here: # @@ -329,7 +330,7 @@ class Openmpi(AutotoolsPackage, CudaPackage): depends_on('pmix', when='+pmix') depends_on('pmix@3.2:', when='@4.0:4 +pmix') - depends_on('openssh', type='run') + depends_on('openssh', type='run', when='+rsh') conflicts('+cxx_exceptions', when='%nvhpc', msg='nvc does not ignore -fexceptions, but errors') @@ -665,6 +666,10 @@ class Openmpi(AutotoolsPackage, CudaPackage): # uct btl doesn't work with some UCX versions so just disable config_args.append('--enable-mca-no-build=btl-uct') + # Remove ssh/rsh pml + if spec.satisfies('~rsh'): + config_args.append('--enable-mca-no-build=plm-rsh') + # some scientific packages ignore deprecated/remove symbols. Re-enable # them for now, for discussion see # https://github.com/open-mpi/ompi/issues/6114#issuecomment-446279495 -- cgit v1.2.3-70-g09d2