From c64298a1835d51389ad5ed46a2713ba266a5c93b Mon Sep 17 00:00:00 2001 From: Brian Van Essen Date: Wed, 22 Jun 2022 22:41:25 -0700 Subject: Enable MVAPICH2 to use the mpichversion executable to detect externals (#31245) This is an an alternative to mpiname. --- var/spack/repos/builtin/packages/mvapich2/package.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/mvapich2/package.py b/var/spack/repos/builtin/packages/mvapich2/package.py index 3da7094dc2..df71d0496c 100644 --- a/var/spack/repos/builtin/packages/mvapich2/package.py +++ b/var/spack/repos/builtin/packages/mvapich2/package.py @@ -21,7 +21,7 @@ class Mvapich2(AutotoolsPackage): maintainers = ['natshineman', 'harisubramoni', 'ndcontini'] - executables = ['^mpiname$'] + executables = ['^mpiname$', '^mpichversion$'] # Prefer the latest stable release version('2.3.7', sha256='4b6ad2c8c270e1fabcd073c49edb6bf95af93780f4a487bc48404a8ca384f34e') @@ -137,8 +137,12 @@ class Mvapich2(AutotoolsPackage): @classmethod def determine_version(cls, exe): - output = Executable(exe)('-a', output=str, error=str) - match = re.search(r'^MVAPICH2 (\S+)', output) + if exe.endswith('mpichversion'): + output = Executable(exe)(output=str, error=str) + match = re.search(r'^MVAPICH2 Version:\s*(\S+)', output) + elif exe.endswith('mpiname'): + output = Executable(exe)('-a', output=str, error=str) + match = re.search(r'^MVAPICH2 (\S+)', output) return match.group(1) if match else None @classmethod @@ -152,7 +156,10 @@ class Mvapich2(AutotoolsPackage): results = [] for exe in exes: variants = '' - output = Executable(exe)('-a', output=str, error=str) + if exe.endswith('mpichversion'): + output = Executable(exe)(output=str, error=str) + elif exe.endswith('mpiname'): + output = Executable(exe)('-a', output=str, error=str) if re.search(r'--enable-wrapper-rpath=yes', output): variants += '+wrapperrpath' -- cgit v1.2.3-70-g09d2