From 2826dde4c22a29ecc6b73193b742438c213ec568 Mon Sep 17 00:00:00 2001
From: Damian Alvarez <d.alvarez@fz-juelich.de>
Date: Fri, 10 Feb 2023 17:19:08 +0100
Subject: [PATCH] To add psmpi 5.8.0

---
 .../p/psmpi/psmpi-5.8.0-1-GCC-11.3.0.eb       | 42 +++++++++++++++++++
 .../p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb      | 42 +++++++++++++++++++
 .../psmpi-5.8.0-1-intel-compilers-2022.1.0.eb | 42 +++++++++++++++++++
 .../p/psmpi/psmpi-5.8.0-1-GCC-11.3.0.eb       | 38 +++++++++++++++++
 .../p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb      | 38 +++++++++++++++++
 .../psmpi-5.8.0-1-intel-compilers-2022.1.0.eb | 38 +++++++++++++++++
 6 files changed, 240 insertions(+)
 create mode 100644 Golden_Repo/p/psmpi/psmpi-5.8.0-1-GCC-11.3.0.eb
 create mode 100644 Golden_Repo/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb
 create mode 100644 Golden_Repo/p/psmpi/psmpi-5.8.0-1-intel-compilers-2022.1.0.eb
 create mode 100644 Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-GCC-11.3.0.eb
 create mode 100644 Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb
 create mode 100644 Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-intel-compilers-2022.1.0.eb

diff --git a/Golden_Repo/p/psmpi/psmpi-5.8.0-1-GCC-11.3.0.eb b/Golden_Repo/p/psmpi/psmpi-5.8.0-1-GCC-11.3.0.eb
new file mode 100644
index 000000000..79dbaeab0
--- /dev/null
+++ b/Golden_Repo/p/psmpi/psmpi-5.8.0-1-GCC-11.3.0.eb
@@ -0,0 +1,42 @@
+name = 'psmpi'
+version = '5.8.0-1'
+
+homepage = 'https://github.com/ParaStation/psmpi2'
+description = """ParaStation MPI is an open source high-performance MPI 3.0 implementation,
+based on MPICH v3. It provides extra low level communication libraries and integration with
+various batch systems for tighter process control.
+"""
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+sources = [SOURCE_TAR_GZ]
+source_urls = ['https://gitlab.jsc.fz-juelich.de/ParTec/psmpi/uploads/762714c8eec01fe59239a52798a70e1c/']
+checksums = [
+    # psmpi-5.8.0-1.tar.gz
+    'bcebb42f68e062d4cf957c1ec12a8e2e50051265d38715854bafc34855ed3029',
+    # psmpi-5.5.0-1_ime.patch
+    'c2418b9511560dca197242508de9c7b6b117122912b6d3a4aa18398834f465ff',
+]
+
+dependencies = [
+    ('pscom', '5.6-default'),
+    # needed due to the inclusion of hwloc
+    ('libxml2', '2.9.13'),
+    # Including CUDA here to trigger the hook to add the gpu property, and because it is actually needed
+    ('CUDA', '11.7', '', SYSTEM)
+]
+
+patches = [
+    'psmpi-5.5.0-1_ime.patch'
+]
+
+mpich_opts = '--enable-static --with-file-system=ime+ufs+gpfs --enable-romio'
+
+preconfigopts = 'export CFLAGS="-I/opt/ddn/ime/include $CFLAGS" && '
+preconfigopts += 'export LDFLAGS="$LDFLAGS -L/opt/ddn/ime/lib -lim_client" && '
+
+threaded = False
+
+cuda = True
+
+moduleclass = 'mpi'
diff --git a/Golden_Repo/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb b/Golden_Repo/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb
new file mode 100644
index 000000000..7b3584281
--- /dev/null
+++ b/Golden_Repo/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb
@@ -0,0 +1,42 @@
+name = 'psmpi'
+version = '5.8.0-1'
+
+homepage = 'https://github.com/ParaStation/psmpi2'
+description = """ParaStation MPI is an open source high-performance MPI 3.0 implementation,
+based on MPICH v3. It provides extra low level communication libraries and integration with
+various batch systems for tighter process control.
+"""
+
+toolchain = {'name': 'NVHPC', 'version': '22.11'}
+
+sources = [SOURCE_TAR_GZ]
+source_urls = ['https://gitlab.jsc.fz-juelich.de/ParTec/psmpi/uploads/762714c8eec01fe59239a52798a70e1c/']
+checksums = [
+    # psmpi-5.8.0-1.tar.gz
+    'bcebb42f68e062d4cf957c1ec12a8e2e50051265d38715854bafc34855ed3029',
+    # psmpi-5.5.0-1_ime.patch
+    'c2418b9511560dca197242508de9c7b6b117122912b6d3a4aa18398834f465ff',
+]
+
+dependencies = [
+    ('pscom', '5.6-default'),
+    # needed due to the inclusion of hwloc
+    ('libxml2', '2.9.13'),
+    # Including CUDA here to trigger the hook to add the gpu property, and because it is actually needed
+    ('CUDA', '11.7', '', SYSTEM)
+]
+
+patches = [
+    'psmpi-5.5.0-1_ime.patch'
+]
+
+mpich_opts = '--enable-static --with-file-system=ime+ufs+gpfs --enable-romio'
+
+preconfigopts = 'export CFLAGS="-I/opt/ddn/ime/include $CFLAGS" && '
+preconfigopts += 'export LDFLAGS="$LDFLAGS -L/opt/ddn/ime/lib -lim_client" && '
+
+threaded = False
+
+cuda = True
+
+moduleclass = 'mpi'
diff --git a/Golden_Repo/p/psmpi/psmpi-5.8.0-1-intel-compilers-2022.1.0.eb b/Golden_Repo/p/psmpi/psmpi-5.8.0-1-intel-compilers-2022.1.0.eb
new file mode 100644
index 000000000..b2aa8e904
--- /dev/null
+++ b/Golden_Repo/p/psmpi/psmpi-5.8.0-1-intel-compilers-2022.1.0.eb
@@ -0,0 +1,42 @@
+name = 'psmpi'
+version = '5.8.0-1'
+
+homepage = 'https://github.com/ParaStation/psmpi2'
+description = """ParaStation MPI is an open source high-performance MPI 3.0 implementation,
+based on MPICH v3. It provides extra low level communication libraries and integration with
+various batch systems for tighter process control.
+"""
+
+toolchain = {'name': 'intel-compilers', 'version': '2022.1.0'}
+
+sources = [SOURCE_TAR_GZ]
+source_urls = ['https://gitlab.jsc.fz-juelich.de/ParTec/psmpi/uploads/762714c8eec01fe59239a52798a70e1c/']
+checksums = [
+    # psmpi-5.8.0-1.tar.gz
+    'bcebb42f68e062d4cf957c1ec12a8e2e50051265d38715854bafc34855ed3029',
+    # psmpi-5.5.0-1_ime.patch
+    'c2418b9511560dca197242508de9c7b6b117122912b6d3a4aa18398834f465ff',
+]
+
+dependencies = [
+    ('pscom', '5.6-default'),
+    # needed due to the inclusion of hwloc
+    ('libxml2', '2.9.13'),
+    # Including CUDA here to trigger the hook to add the gpu property, and because it is actually needed
+    ('CUDA', '11.7', '', SYSTEM)
+]
+
+patches = [
+    'psmpi-5.5.0-1_ime.patch'
+]
+
+mpich_opts = '--enable-static --with-file-system=ime+ufs+gpfs --enable-romio'
+
+preconfigopts = 'export CFLAGS="-I/opt/ddn/ime/include $CFLAGS" && '
+preconfigopts += 'export LDFLAGS="$LDFLAGS -L/opt/ddn/ime/lib -lim_client" && '
+
+threaded = False
+
+cuda = True
+
+moduleclass = 'mpi'
diff --git a/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-GCC-11.3.0.eb b/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-GCC-11.3.0.eb
new file mode 100644
index 000000000..d09949c27
--- /dev/null
+++ b/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-GCC-11.3.0.eb
@@ -0,0 +1,38 @@
+name = 'psmpi'
+version = '5.8.0-1'
+
+homepage = 'https://github.com/ParaStation/psmpi2'
+description = """ParaStation MPI is an open source high-performance MPI 3.0 implementation,
+based on MPICH v3. It provides extra low level communication libraries and integration with
+various batch systems for tighter process control.
+"""
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+sources = [SOURCE_TAR_GZ]
+source_urls = ['https://gitlab.jsc.fz-juelich.de/ParTec/psmpi/uploads/762714c8eec01fe59239a52798a70e1c/']
+checksums = [
+    # psmpi-5.8.0-1.tar.gz
+    'bcebb42f68e062d4cf957c1ec12a8e2e50051265d38715854bafc34855ed3029',
+]
+
+dependencies = [
+    ('pscom', '5.6-default'),
+    # needed due to the inclusion of hwloc
+    ('libxml2', '2.9.13'),
+    # Including CUDA here to trigger the hook to add the gpu property, and because it is actually needed
+    ('CUDA', '11.7', '', SYSTEM)
+]
+
+# We don't have IME in HDFML so we skip this
+# mpich_opts = '--enable-static --with-file-system=ime+ufs+gpfs --enable-romio'
+#
+# preconfigopts = 'export CFLAGS="-I/opt/ddn/ime/include $CFLAGS" && '
+# preconfigopts += 'export LDFLAGS="$LDFLAGS -L/opt/ddn/ime/lib -lim_client" && '
+mpich_opts = '--enable-static --with-file-system=ufs+gpfs --enable-romio'
+
+threaded = False
+
+cuda = True
+
+moduleclass = 'mpi'
diff --git a/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb b/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb
new file mode 100644
index 000000000..3ad1f7e18
--- /dev/null
+++ b/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb
@@ -0,0 +1,38 @@
+name = 'psmpi'
+version = '5.8.0-1'
+
+homepage = 'https://github.com/ParaStation/psmpi2'
+description = """ParaStation MPI is an open source high-performance MPI 3.0 implementation,
+based on MPICH v3. It provides extra low level communication libraries and integration with
+various batch systems for tighter process control.
+"""
+
+toolchain = {'name': 'NVHPC', 'version': '22.11'}
+
+sources = [SOURCE_TAR_GZ]
+source_urls = ['https://gitlab.jsc.fz-juelich.de/ParTec/psmpi/uploads/762714c8eec01fe59239a52798a70e1c/']
+checksums = [
+    # psmpi-5.8.0-1.tar.gz
+    'bcebb42f68e062d4cf957c1ec12a8e2e50051265d38715854bafc34855ed3029',
+]
+
+dependencies = [
+    ('pscom', '5.6-default'),
+    # needed due to the inclusion of hwloc
+    ('libxml2', '2.9.13'),
+    # Including CUDA here to trigger the hook to add the gpu property, and because it is actually needed
+    ('CUDA', '11.7', '', SYSTEM)
+]
+
+# We don't have IME in HDFML so we skip this
+# mpich_opts = '--enable-static --with-file-system=ime+ufs+gpfs --enable-romio'
+#
+# preconfigopts = 'export CFLAGS="-I/opt/ddn/ime/include $CFLAGS" && '
+# preconfigopts += 'export LDFLAGS="$LDFLAGS -L/opt/ddn/ime/lib -lim_client" && '
+mpich_opts = '--enable-static --with-file-system=ufs+gpfs --enable-romio'
+
+threaded = False
+
+cuda = True
+
+moduleclass = 'mpi'
diff --git a/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-intel-compilers-2022.1.0.eb b/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-intel-compilers-2022.1.0.eb
new file mode 100644
index 000000000..aee0894cf
--- /dev/null
+++ b/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-intel-compilers-2022.1.0.eb
@@ -0,0 +1,38 @@
+name = 'psmpi'
+version = '5.8.0-1'
+
+homepage = 'https://github.com/ParaStation/psmpi2'
+description = """ParaStation MPI is an open source high-performance MPI 3.0 implementation,
+based on MPICH v3. It provides extra low level communication libraries and integration with
+various batch systems for tighter process control.
+"""
+
+toolchain = {'name': 'intel-compilers', 'version': '2022.1.0'}
+
+sources = [SOURCE_TAR_GZ]
+source_urls = ['https://gitlab.jsc.fz-juelich.de/ParTec/psmpi/uploads/762714c8eec01fe59239a52798a70e1c/']
+checksums = [
+    # psmpi-5.8.0-1.tar.gz
+    'bcebb42f68e062d4cf957c1ec12a8e2e50051265d38715854bafc34855ed3029',
+]
+
+dependencies = [
+    ('pscom', '5.6-default'),
+    # needed due to the inclusion of hwloc
+    ('libxml2', '2.9.13'),
+    # Including CUDA here to trigger the hook to add the gpu property, and because it is actually needed
+    ('CUDA', '11.7', '', SYSTEM)
+]
+
+# We don't have IME in HDFML so we skip this
+# mpich_opts = '--enable-static --with-file-system=ime+ufs+gpfs --enable-romio'
+#
+# preconfigopts = 'export CFLAGS="-I/opt/ddn/ime/include $CFLAGS" && '
+# preconfigopts += 'export LDFLAGS="$LDFLAGS -L/opt/ddn/ime/lib -lim_client" && '
+mpich_opts = '--enable-static --with-file-system=ufs+gpfs --enable-romio'
+
+threaded = False
+
+cuda = True
+
+moduleclass = 'mpi'
-- 
GitLab