From 8657f5f3f22055db47c76418c91ff9ff9bd9c0a1 Mon Sep 17 00:00:00 2001
From: Lukas Krupcik <lukas.krupcik@vsb.cz>
Date: Mon, 1 Aug 2022 10:38:22 +0200
Subject: [PATCH] 	new file:   a/Advisor/Advisor-2021.4.0.eb 
 modified:   m/Molden/Molden-6.3-intel-2020a.eb 	new file:  
 o/ORCA/ORCA-5.0.3-OpenMPI-4.1.1-test.eb 	modified:  
 o/ORCA/ORCA-5.0.3-OpenMPI-4.1.1.eb 	new file:  
 o/ORCA/ORCA-5.0.3-gompi-2021b.eb 	new file:  
 o/OpenMPI/OpenMPI-4.1.1-GCC-10.2.0-test.eb 	modified:  
 v/VASP/VASP-5.4.4-intel-2020a.eb 	modified:  
 v/VASP/VASP-6.3.1-intel-2021b.eb

---
 a/Advisor/Advisor-2021.4.0.eb              | 39 +++++++++++++
 m/Molden/Molden-6.3-intel-2020a.eb         |  1 +
 o/ORCA/ORCA-5.0.3-OpenMPI-4.1.1-test.eb    | 37 ++++++++++++
 o/ORCA/ORCA-5.0.3-OpenMPI-4.1.1.eb         |  3 +-
 o/ORCA/ORCA-5.0.3-gompi-2021b.eb           | 35 +++++++++++
 o/OpenMPI/OpenMPI-4.1.1-GCC-10.2.0-test.eb | 67 ++++++++++++++++++++++
 v/VASP/VASP-5.4.4-intel-2020a.eb           |  1 +
 v/VASP/VASP-6.3.1-intel-2021b.eb           |  1 +
 8 files changed, 183 insertions(+), 1 deletion(-)
 create mode 100644 a/Advisor/Advisor-2021.4.0.eb
 create mode 100644 o/ORCA/ORCA-5.0.3-OpenMPI-4.1.1-test.eb
 create mode 100644 o/ORCA/ORCA-5.0.3-gompi-2021b.eb
 create mode 100644 o/OpenMPI/OpenMPI-4.1.1-GCC-10.2.0-test.eb

diff --git a/a/Advisor/Advisor-2021.4.0.eb b/a/Advisor/Advisor-2021.4.0.eb
new file mode 100644
index 00000000..e275c015
--- /dev/null
+++ b/a/Advisor/Advisor-2021.4.0.eb
@@ -0,0 +1,39 @@
+# IT4Innovations 2022
+# JK
+
+name = 'Advisor'
+version = '2021.4.0'
+
+homepage = 'https://software.intel.com/intel-advisor-xe'
+description = """Vectorization Optimization and Thread Prototyping
+ - Vectorize & thread code or performance
+ - Easy workflow + data + tips = faster code faster
+ - Prioritize, Prototype & Predict performance gain
+ """
+
+toolchain = {'name': 'GCCcore', 'version': '10.3.0'}
+
+source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/18220/']
+sources = ['l_oneapi_advisor_p_%(version)s.389_offline.sh']
+checksums = ['dd948f7312629d9975e12a57664f736b8e011de948771b4c05ad444438532be8']
+
+dependencies = [
+    ('GTK2', '2.24.33'),
+    ('Mesa', '21.1.1'),
+]
+
+dontcreateinstalldir = True
+
+sanity_check_paths = {
+    'files': ['%(namelower)s/%(version)s/bin64/advisor'],
+    'dirs': ['%(namelower)s/%(version)s/bin64',
+             '%(namelower)s/%(version)s/lib64',
+             '%(namelower)s/%(version)s/include/intel64']
+}
+
+modextrapaths = {
+    'PATH': 'advisor/latest/bin64',
+    'MANPATH': 'advisor/latest/man',
+}
+
+moduleclass = 'perf'
diff --git a/m/Molden/Molden-6.3-intel-2020a.eb b/m/Molden/Molden-6.3-intel-2020a.eb
index 8fe84c03..c47b23fb 100644
--- a/m/Molden/Molden-6.3-intel-2020a.eb
+++ b/m/Molden/Molden-6.3-intel-2020a.eb
@@ -15,6 +15,7 @@ toolchain = {'name': 'intel', 'version': '2020a'}
 
 source_urls = ['ftp://ftp.cmbi.umcn.nl/pub/molgraph/molden/']
 sources = ['%(namelower)s%(version)s.tar.gz']
+checksums = ['01b3018942397a07ad255cf1745675fc3be52096b71dc2d8b0ce71f1af09110b']
 
 dependencies = [
     ('X11', '20200222'),
diff --git a/o/ORCA/ORCA-5.0.3-OpenMPI-4.1.1-test.eb b/o/ORCA/ORCA-5.0.3-OpenMPI-4.1.1-test.eb
new file mode 100644
index 00000000..cf4b235a
--- /dev/null
+++ b/o/ORCA/ORCA-5.0.3-OpenMPI-4.1.1-test.eb
@@ -0,0 +1,37 @@
+# IT4Innovations 2021
+# LK JK
+
+easyblock = "PackedBinary"
+
+name = "ORCA"
+version = '5.0.3'
+versionsuffix = '-OpenMPI-4.1.1-test'
+
+homepage = 'http://cec.mpg.de/forum/'
+docurls = 'https://www.orcasoftware.de/tutorials_orca/'
+description = """ORCA is a flexible, efficient and easy-to-use general purpose tool for quantum chemistry
+ with specific emphasis on spectroscopic properties of open-shell molecules.
+  It features a wide variety of standard quantum chemical methods ranging from semiempirical methods to DFT to single-
+ and multireference correlated ab initio methods.
+ It can also treat environmental and relativistic effects."""
+
+toolchain = SYSTEM
+
+# Download from https://orcaforum.kofo.mpg.de
+sources = ['orca_5_0_3_linux_x86-64_openmpi411.tar.gz']
+checksums = ['4d860698816e83793a0e5889cbdf17a24c81bd0ec9af358f7dc9369abf6fca59']
+dependencies = [('OpenMPI', '4.1.1', '-test', ('GCC', '10.2.0'))]
+
+sanity_check_paths = {
+    'files': ['orca_%s%s' % (x, y) for x in ['anoint', 'casscf', 'cis', 'cpscf',
+                                             'eprnmr', 'gtoint', 'mdci', 'mp2', 'mrci', 'pc',
+                                             'rocis', 'scf', 'scfgrad', 'soc'] for y in ['', '_mpi']] +
+             ['orca_%s' % x for x in ['2mkl', 'asa', 'chelpg', 'ciprep', 'eca', 'ecplib',
+                                      'euler', 'fci', 'fitpes', 'gstep', 'loc', 'mapspc',
+                                      'md', 'mergefrag', 'ndoint', 'numfreq', 'plot',
+                                      'pltvib', 'pop', 'rel', 'vib', 'vpot']] +
+             ['orca'],
+    'dirs': [],
+}
+
+moduleclass = 'chem'
diff --git a/o/ORCA/ORCA-5.0.3-OpenMPI-4.1.1.eb b/o/ORCA/ORCA-5.0.3-OpenMPI-4.1.1.eb
index 80dcf115..b743a60f 100644
--- a/o/ORCA/ORCA-5.0.3-OpenMPI-4.1.1.eb
+++ b/o/ORCA/ORCA-5.0.3-OpenMPI-4.1.1.eb
@@ -8,6 +8,7 @@ version = '5.0.3'
 versionsuffix = '-OpenMPI-4.1.1'
 
 homepage = 'http://cec.mpg.de/forum/'
+docurls = 'https://www.orcasoftware.de/tutorials_orca/'
 description = """ORCA is a flexible, efficient and easy-to-use general purpose tool for quantum chemistry
  with specific emphasis on spectroscopic properties of open-shell molecules.
   It features a wide variety of standard quantum chemical methods ranging from semiempirical methods to DFT to single-
@@ -19,7 +20,7 @@ toolchain = SYSTEM
 # Download from https://orcaforum.kofo.mpg.de
 sources = ['orca_5_0_3_linux_x86-64_openmpi411.tar.gz']
 checksums = ['4d860698816e83793a0e5889cbdf17a24c81bd0ec9af358f7dc9369abf6fca59']
-dependencies = [('OpenMPI', '4.1.1', '-GCC-10.2.0')]
+dependencies = [('OpenMPI', '4.1.1', '-GCC-11.2.0')]
 
 sanity_check_paths = {
     'files': ['orca_%s%s' % (x, y) for x in ['anoint', 'casscf', 'cis', 'cpscf',
diff --git a/o/ORCA/ORCA-5.0.3-gompi-2021b.eb b/o/ORCA/ORCA-5.0.3-gompi-2021b.eb
new file mode 100644
index 00000000..afa45345
--- /dev/null
+++ b/o/ORCA/ORCA-5.0.3-gompi-2021b.eb
@@ -0,0 +1,35 @@
+# IT4Innovations 2022
+# JK
+
+name = 'ORCA'
+version = '5.0.3'
+
+homepage = 'https://orcaforum.kofo.mpg.de'
+description = """
+ORCA is a flexible, efficient and easy-to-use general purpose tool for quantum
+chemistry with specific emphasis on spectroscopic properties of open-shell
+molecules. It features a wide variety of standard quantum chemical methods
+ranging from semiempirical methods to DFT to single- and multireference
+correlated ab initio methods. It can also treat environmental and relativistic
+effects."""
+
+toolchain = {'name': 'gompi', 'version': '2021b'}
+
+# Static build of ORCA: download from https://orcaforum.kofo.mpg.de
+# OpenMPI is dynamically linked
+sources = ['%%(namelower)s_%s_linux_%%(orcaarch)s_openmpi411_part%s.tar.xz' % (version.replace('.', '_'), p)
+           for p in range(1, 4)]
+checksums = [
+    # orca_5_0_3_linux_x86-64_openmpi411_part1.tar.xz
+    '66c34c9e32b89aa9aa0ffc8e68d8e470b420ecdd93b60a8730ea643151bd6dcd',
+    # orca_5_0_3_linux_x86-64_openmpi411_part2.tar.xz
+    '92984684b69d1fe6bb829a6c7747c0cb194e158c76ea543e8aeeff18a028ca0e',
+    # orca_5_0_3_linux_x86-64_openmpi411_part3.tar.xz
+    '7104596a9bd47f02ec19bb89671f1be97c742f50a0fa71f9b3ac7125e9066ca0',
+]
+
+# The 5.0.2-static tarballs have redundant top-level directory names names that
+# need to be stripped away.
+unpack_options = '--strip-components=1'
+
+moduleclass = 'chem'
diff --git a/o/OpenMPI/OpenMPI-4.1.1-GCC-10.2.0-test.eb b/o/OpenMPI/OpenMPI-4.1.1-GCC-10.2.0-test.eb
new file mode 100644
index 00000000..d28eeb28
--- /dev/null
+++ b/o/OpenMPI/OpenMPI-4.1.1-GCC-10.2.0-test.eb
@@ -0,0 +1,67 @@
+# IT4Innovations 2021
+# LK
+
+easyblock = 'ConfigureMake'
+
+name = 'OpenMPI'
+version = '4.1.1'
+versionsuffix = '-test'
+
+homepage = 'http://www.open-mpi.org/'
+description = """The Open MPI Project is an open source MPI-2 implementation."""
+
+toolchain = {'name': 'GCC', 'version': '10.2.0'}
+
+source_urls = ['https://github.com/open-mpi/ompi/archive/refs/tags/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['fbddebd47b30c17dd009559157cf7edf5ee8debcf6ba576a84c979618855889f']
+
+dependencies = [
+    ('hwloc', '2.2.0'),
+    ('UCX', '1.9.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
+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',
+]
+
+local_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 local_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',
+                'OMPI_MCA_btl_tcp_if_include': '10.33.4.0/24',
+                'OMPI_MCA_orte_base_help_aggregate': '0',
+   }
+elif os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
+   modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx5_0',
+                'OMPI_MCA_orte_base_help_aggregate': '0',
+   }
+else:
+   modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx4_0',
+                'OMPI_MCA_oob_tcp_if_include': '10.0.0.0/8',
+   }
+
+moduleclass = 'mpi'
diff --git a/v/VASP/VASP-5.4.4-intel-2020a.eb b/v/VASP/VASP-5.4.4-intel-2020a.eb
index d6cc127d..d9fd327b 100644
--- a/v/VASP/VASP-5.4.4-intel-2020a.eb
+++ b/v/VASP/VASP-5.4.4-intel-2020a.eb
@@ -7,6 +7,7 @@ name = 'VASP'
 version = '5.4.4'
 
 homepage = 'http://www.vasp.at'
+docurls = 'https://www.vasp.at/wiki/index.php/The_VASP_Manual'
 description = """The Vienna Ab initio Simulation Package (VASP) is a local computer program for atomic scale
 materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics,
 from first principles.
diff --git a/v/VASP/VASP-6.3.1-intel-2021b.eb b/v/VASP/VASP-6.3.1-intel-2021b.eb
index 4f75967a..2030fcb9 100644
--- a/v/VASP/VASP-6.3.1-intel-2021b.eb
+++ b/v/VASP/VASP-6.3.1-intel-2021b.eb
@@ -7,6 +7,7 @@ name = 'VASP'
 version = '6.3.1'
 
 homepage = 'http://www.vasp.at'
+docurls = 'https://www.vasp.at/wiki/index.php/The_VASP_Manual'
 description = """The Vienna Ab initio Simulation Package (VASP) is a local computer program for atomic scale
 materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics,
 from first principles.