From af92d0c13da684bdbe1ca7f675f98ae8ab0505d6 Mon Sep 17 00:00:00 2001
From: Jakub Kropacek <jakub.kropacek@vsb.cz>
Date: Wed, 6 Oct 2021 19:33:30 +0200
Subject: [PATCH] 	modified:   o/OpenMPI/OpenMPI-4.1.1-GCC-10.3.0.eb

---
 o/OpenMPI/OpenMPI-4.1.1-GCC-10.3.0.eb | 51 +++++++++++++--------------
 1 file changed, 25 insertions(+), 26 deletions(-)

diff --git a/o/OpenMPI/OpenMPI-4.1.1-GCC-10.3.0.eb b/o/OpenMPI/OpenMPI-4.1.1-GCC-10.3.0.eb
index da12d3e4..303fcbb0 100644
--- a/o/OpenMPI/OpenMPI-4.1.1-GCC-10.3.0.eb
+++ b/o/OpenMPI/OpenMPI-4.1.1-GCC-10.3.0.eb
@@ -1,41 +1,26 @@
-# IT4Innovations
-# LK 2021
+# IT4Innovations 2021
+# LK
+
+easyblock = 'ConfigureMake'
 
 name = 'OpenMPI'
 version = '4.1.1'
 
-homepage = 'https://www.open-mpi.org/'
-description = """The Open MPI Project is an open source MPI-3 implementation."""
+homepage = 'http://www.open-mpi.org/'
+description = """The Open MPI Project is an open source MPI-2 implementation."""
 
 toolchain = {'name': 'GCC', 'version': '10.3.0'}
 
-source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
-sources = [SOURCELOWER_TAR_BZ2]
-patches = [
-    'OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch',
-    'OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch'
-]
-checksums = [
-    'e24f7a778bd11a71ad0c14587a7f5b00e68a71aa5623e2157bafee3d44c07cda',  # openmpi-4.1.1.tar.bz2
-    # OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch
-    'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e',
-    # OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch
-    '8acee6c9b2b4bf12873a39b85a58ca669de78e90d26186e52f221bb4853abc4d',
-]
-
-builddependencies = [
-    ('pkg-config', '0.29.2'),
-]
+source_urls = ['https://github.com/open-mpi/ompi/archive/refs/tags/']
+sources = ['v%(version)s.tar.gz']
 
 dependencies = [
-    ('zlib', '1.2.11'),
     ('hwloc', '2.4.1'),
-    ('libevent', '2.1.12'),
-    ('UCX', '1.10.0'),
-    ('libfabric', '1.12.1'),
-    ('PMIx', '3.2.3'),
+    ('UCX', '1.10.0',),
 ]
 
+preconfigopts = './autogen.pl && '
+
 configopts = '--enable-shared --enable-mpi-thread-multiple --with-verbs '
 configopts += '--enable-mpirun-prefix-by-default '
 configopts += '--with-hwloc=$EBROOTHWLOC '  # hwloc support
@@ -43,11 +28,25 @@ configopts += '--with-tm=/opt/pbs '  # Enable PBS
 configopts += '--enable-mpi-cxx '  # Enable building the C++ MPI bindings
 configopts += '--with-ucx=$EBROOTUCX '
 
+osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')]
+
 postinstallcmds = [
     'echo "# By default, for Open MPI 4.0 and later, infiniband ports on a device are not used by default." >> %(installdir)s/etc/openmpi-mca-params.conf',
     'echo "btl_openib_allow_ib = true" >> %(installdir)s/etc/openmpi-mca-params.conf',
 ]
 
+libs = ["mpi_mpifh", "mpi", "ompitrace", "open-pal", "open-rte"]
+sanity_check_paths = {
+    'files': [
+        "bin/%s" %
+        binfile for binfile in [
+            "ompi_info", "opal_wrapper", "orterun"]] + [
+                "lib/lib%s.%s" %
+                (libfile, SHLIB_EXT) for libfile in libs] + [
+                    "include/%s.h" %
+                    x for x in [
+                        "mpi-ext", "mpif-config", "mpif", "mpi", "mpi_portable_platform"]], 'dirs': [], }
+
 import os
 if os.environ.get("CLUSTERNAME") in ["BARBORA"]:
    modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx5_0',