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.
This commit is contained in:
Harmen Stoppels 2022-04-27 11:15:48 +02:00 committed by GitHub
parent 351072cd9f
commit f273e7d329
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -246,6 +246,7 @@ class Openmpi(AutotoolsPackage, CudaPackage):
variant('lustre', default=False, variant('lustre', default=False,
description="Lustre filesystem library support") description="Lustre filesystem library support")
variant('romio', default=True, description='Enable ROMIO 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 # Adding support to build a debug version of OpenMPI that activates
# Memchecker, as described here: # Memchecker, as described here:
# #
@ -329,7 +330,7 @@ class Openmpi(AutotoolsPackage, CudaPackage):
depends_on('pmix', when='+pmix') depends_on('pmix', when='+pmix')
depends_on('pmix@3.2:', when='@4.0:4 +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', conflicts('+cxx_exceptions', when='%nvhpc',
msg='nvc does not ignore -fexceptions, but errors') msg='nvc does not ignore -fexceptions, but errors')
@ -665,6 +666,10 @@ def configure_args(self):
# uct btl doesn't work with some UCX versions so just disable # uct btl doesn't work with some UCX versions so just disable
config_args.append('--enable-mca-no-build=btl-uct') 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 # some scientific packages ignore deprecated/remove symbols. Re-enable
# them for now, for discussion see # them for now, for discussion see
# https://github.com/open-mpi/ompi/issues/6114#issuecomment-446279495 # https://github.com/open-mpi/ompi/issues/6114#issuecomment-446279495