From f289b3213db0ff3f1a4c3aeeeaf269ae22229d6d Mon Sep 17 00:00:00 2001
From: Lars Bilke <lars.bilke@ufz.de>
Date: Thu, 16 Jan 2020 15:27:03 +0100
Subject: [PATCH] Fixed OpenMPI < 4 configs.

---
 ogscm/cli.py     | 13 ++++++++++---
 requirements.txt |  1 +
 2 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/ogscm/cli.py b/ogscm/cli.py
index abee60f..b56dacc 100644
--- a/ogscm/cli.py
+++ b/ogscm/cli.py
@@ -16,6 +16,8 @@ import subprocess
 import sys
 import yaml
 
+from packaging import version
+
 import hpccm
 from hpccm import linux_distro
 from hpccm.building_blocks import packages, mlnx_ofed, knem, ucx, openmpi, \
@@ -198,12 +200,17 @@ def main():  # pragma: no cover
                     ])
             else:
                 Stage0 += ucx(cuda=False)
-                Stage0 += pmix()
                 Stage0 += slurm_pmi2(version='17.02.11')
-                mpicc = openmpi(cuda=False,
+                pmix_version = True
+                if version.parse(ompi) >= version.parse('4'):
+                    Stage0 += pmix()
+                    pmix_version = '/usr/local/pmix'
+
+                mpicc = openmpi(version=ompi,
+                                cuda=False,
                                 infiniband=False,
                                 pmi='/usr/local/slurm-pmi2',
-                                pmix='/usr/local/pmix',
+                                pmix=pmix_version,
                                 ucx='/usr/local/ucx')
 
             toolchain = mpicc.toolchain
diff --git a/requirements.txt b/requirements.txt
index b7e273a..568d4dd 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -2,3 +2,4 @@ six
 hpccm
 requests
 pyyaml
+packaging
-- 
GitLab