From 4078c5e5374e45357a30ef1336acb34ff0fd5164 Mon Sep 17 00:00:00 2001 From: Edgar Leon <800736+eleon@users.noreply.github.com> Date: Fri, 1 Oct 2021 07:56:22 -0700 Subject: [PATCH] mpibind: add v0.7.0 and new flux variant (#26359) --- .../repos/builtin/packages/mpibind/package.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/var/spack/repos/builtin/packages/mpibind/package.py b/var/spack/repos/builtin/packages/mpibind/package.py index f448d9b952..7c023e0964 100644 --- a/var/spack/repos/builtin/packages/mpibind/package.py +++ b/var/spack/repos/builtin/packages/mpibind/package.py @@ -21,12 +21,15 @@ class Mpibind(AutotoolsPackage): # The build process uses 'git describe --tags' to get the # package version, thus we need 'get_full_repo' version('master', branch='master', get_full_repo=True) + version('0.7.0', sha256='33077e7eb50322d2bcfe87bb3ea9159c2e49f6f045cbbcd2e69e763c3bec4330') version('0.5.0', sha256='51bb27341109aeef121a8630bd56f5551c70ebfd337a459fb70ef9015d97d2b7') variant('cuda', default=False, description='Build w/support for NVIDIA GPUs.') variant('rocm', default=False, description='Build w/support for AMD GPUs.') + variant('flux', default=False, + description='Build the Flux plugin.') depends_on('autoconf', type='build') depends_on('automake', type='build') @@ -39,9 +42,20 @@ class Mpibind(AutotoolsPackage): depends_on('hwloc@2:+cuda+nvml', when='+cuda', type='link') depends_on('hwloc@2.4:+rocm+opencl', when='+rocm', type='link') + # Requiring @master temporarily while Flux adds + # FLUX_SHELL_RC_PATH to a stable version (>0.29.0). + # mpibind will require at least such version. + depends_on('flux-core@master', when='+flux', type='link') + def autoreconf(self, spec, prefix): autoreconf('--install', '--verbose', '--force') + @when('+flux') + def setup_run_environment(self, env): + """Load the mpibind plugin into Flux""" + env.prepend_path('FLUX_SHELL_RC_PATH', + join_path(self.prefix, 'share', 'mpibind')) + # To build and run the tests, make sure 'libtap' is installed # on the target system and is recognized by pkg-config. # Unfortunately, libtap is not in Spack.