diff --git a/e/EasyBuild/EasyBuild-4.1.0-develop.eb b/e/EasyBuild/EasyBuild-4.1.0-develop.eb
new file mode 100644
index 00000000..8c3b3460
--- /dev/null
+++ b/e/EasyBuild/EasyBuild-4.1.0-develop.eb
@@ -0,0 +1,47 @@
+# IT4Innovations 2020
+
+easyblock = 'EB_EasyBuildMeta'
+
+name = 'EasyBuild'
+version = '4.1.0'
+versionsuffix = '-develop'
+
+homepage = 'https://easybuilders.github.io/easybuild'
+description = """EasyBuild is a software build and installation framework
+ written in Python that allows you to install software in a structured,
+ repeatable and robust way."""
+
+toolchain = SYSTEM
+
+source_urls = [
+ # easybuild-framework
+ 'https://files.pythonhosted.org/packages/75/70/0f4c795c8c16257f35ec677fb171c968f0bd10d4c144862d045d8b869ee0/',
+ # easybuild-easyblocks
+ 'https://files.pythonhosted.org/packages/af/b5/627da5604c960ec688b64be6ac0ba09439865c9c2a45d40ed065f67132ab/',
+ # easybuild-easyconfigs
+ 'https://files.pythonhosted.org/packages/0e/03/1cf77cda33026d51e86df1092ced461ee51ab56cbfdd1d4633eddd9a36ec/',
+]
+sources = [
+ 'easybuild-framework-%(version)s.tar.gz',
+ 'easybuild-easyblocks-%(version)s.tar.gz',
+ 'easybuild-easyconfigs-%(version)s.tar.gz',
+]
+checksums = [
+ '336b1adc3ea410aabf900a07f6a55dcf316dc55658afc1d665d3565040be0641', # easybuild-framework-4.1.0.tar.gz
+ 'f6e017d703334e6008acfb9d28e97aecddef4bf04b24890f3e98b6d5cacc08bd', # easybuild-easyblocks-4.1.0.tar.gz
+ 'bfe1f630e2494eca6cbe72d1218f54e10a863c869bce34962d0c79e0b3003716', # easybuild-easyconfigs-4.1.0.tar.gz
+]
+
+# order matters a lot, to avoid having dependencies auto-resolved (--no-deps easy_install option doesn't work?)
+# EasyBuild is a (set of) Python packages, so it depends on Python
+# usually, we want to use the system Python, so no actual Python dependency is listed
+allow_system_deps = [('Python', SYS_PYTHON_VERSION)]
+
+local_pyshortver = '.'.join(SYS_PYTHON_VERSION.split('.')[:2])
+
+sanity_check_paths = {
+ 'files': ['bin/eb'],
+ 'dirs': ['lib/python%s/site-packages' % local_pyshortver],
+}
+
+moduleclass = 'tools'
diff --git a/e/EasyBuild/EasyBuild-4.1.0.eb b/e/EasyBuild/EasyBuild-4.1.0.eb
new file mode 100644
index 00000000..65b2ca29
--- /dev/null
+++ b/e/EasyBuild/EasyBuild-4.1.0.eb
@@ -0,0 +1,44 @@
+easyblock = 'EB_EasyBuildMeta'
+
+name = 'EasyBuild'
+version = '4.1.0'
+
+homepage = 'https://easybuilders.github.io/easybuild'
+description = """EasyBuild is a software build and installation framework
+ written in Python that allows you to install software in a structured,
+ repeatable and robust way."""
+
+toolchain = {'name': 'dummy', 'version': 'dummy'}
+
+source_urls = [
+ # easybuild-framework
+ 'https://files.pythonhosted.org/packages/75/70/0f4c795c8c16257f35ec677fb171c968f0bd10d4c144862d045d8b869ee0/',
+ # easybuild-easyblocks
+ 'https://files.pythonhosted.org/packages/af/b5/627da5604c960ec688b64be6ac0ba09439865c9c2a45d40ed065f67132ab/',
+ # easybuild-easyconfigs
+ 'https://files.pythonhosted.org/packages/0e/03/1cf77cda33026d51e86df1092ced461ee51ab56cbfdd1d4633eddd9a36ec/',
+]
+sources = [
+ 'easybuild-framework-%(version)s.tar.gz',
+ 'easybuild-easyblocks-%(version)s.tar.gz',
+ 'easybuild-easyconfigs-%(version)s.tar.gz',
+]
+checksums = [
+ '336b1adc3ea410aabf900a07f6a55dcf316dc55658afc1d665d3565040be0641', # easybuild-framework-4.1.0.tar.gz
+ 'f6e017d703334e6008acfb9d28e97aecddef4bf04b24890f3e98b6d5cacc08bd', # easybuild-easyblocks-4.1.0.tar.gz
+ 'bfe1f630e2494eca6cbe72d1218f54e10a863c869bce34962d0c79e0b3003716', # easybuild-easyconfigs-4.1.0.tar.gz
+]
+
+# order matters a lot, to avoid having dependencies auto-resolved (--no-deps easy_install option doesn't work?)
+# EasyBuild is a (set of) Python packages, so it depends on Python
+# usually, we want to use the system Python, so no actual Python dependency is listed
+allow_system_deps = [('Python', SYS_PYTHON_VERSION)]
+
+local_pyshortver = '.'.join(SYS_PYTHON_VERSION.split('.')[:2])
+
+sanity_check_paths = {
+ 'files': ['bin/eb'],
+ 'dirs': ['lib/python%s/site-packages' % local_pyshortver],
+}
+
+moduleclass = 'tools'
diff --git a/i/icc/icc-2020.0.166-GCC-8.3.0-2.32.eb b/i/icc/icc-2020.0.166-GCC-8.3.0-2.32.eb
deleted file mode 100644
index a02d520d..00000000
--- a/i/icc/icc-2020.0.166-GCC-8.3.0-2.32.eb
+++ /dev/null
@@ -1,39 +0,0 @@
-# IT4Innovations 2020
-
-name = 'icc'
-version = '2020.0.166'
-
-homepage = 'http://software.intel.com/en-us/intel-compilers/'
-description = "Intel C and C++ compilers"
-
-toolchain = SYSTEM
-
-source_urls = ['http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/14865/']
-sources = ['parallel_studio_xe_2020_composer_edition.tgz']
-
-local_gccver = '8.3.0'
-local_binutilsver = '2.32'
-versionsuffix = '-GCC-%s-%s' % (local_gccver, local_binutilsver)
-
-dependencies = [
- ('GCCcore', local_gccver),
- ('binutils', local_binutilsver, '', ('GCCcore', local_gccver)),
-]
-
-# list of regex for components to install
-# full list of components can be obtained from pset/mediaconfig.xml in unpacked sources
-# cfr. https://software.intel.com/en-us/articles/intel-composer-xe-2015-silent-installation-guide
-components = ['intel-comp', 'intel-ccomp', 'intel-icc', 'intel-openmp', 'intel-ipsc?_', 'intel-gdb(?!.*mic)']
-
-dontcreateinstalldir = 'True'
-
-license_file = '/apps/licenses/intel/license.lic'
-
-modextravars = {
- 'CC': 'icc',
- 'CXX': 'icpc',
- 'OPTFLAGS': '-O3 -xHost -ip',
- 'DEBUGFLAGS': '-O0 -g'
-}
-
-moduleclass = 'compiler'
diff --git a/i/iccifort/iccifort-2020.0.166-GCC-8.3.0-2.32.eb b/i/iccifort/iccifort-2020.0.166-GCC-8.3.0-2.32.eb
deleted file mode 100644
index 8e42e148..00000000
--- a/i/iccifort/iccifort-2020.0.166-GCC-8.3.0-2.32.eb
+++ /dev/null
@@ -1,29 +0,0 @@
-# IT4Innovations 2020
-
-easyblock = 'Toolchain'
-
-name = 'iccifort'
-version = '2020.0.166'
-versionsuffix = '-GCC-8.3.0-2.32'
-
-homepage = 'http://software.intel.com/en-us/intel-cluster-toolkit-local_compiler/'
-description = "Intel C, C++ & Fortran compilers"
-
-toolchain = SYSTEM
-
-dependencies = [
- ('icc', version, versionsuffix),
- ('ifort', version, versionsuffix),
-]
-
-modextravars = {
- 'CC': 'icc',
- 'CXX': 'icpc',
- 'F90': 'ifort',
- 'F77': 'ifort',
- 'FC': 'ifort',
- 'OPTFLAGS': '-O3 -xHost -ip',
- 'DEBUGFLAGS': '-O0 -g'
-}
-
-moduleclass = 'toolchain'
diff --git a/i/ifort/ifort-2020.0.166-GCC-8.3.0-2.32.eb b/i/iccifort/iccifort-2020.0.166.eb
similarity index 53%
rename from i/ifort/ifort-2020.0.166-GCC-8.3.0-2.32.eb
rename to i/iccifort/iccifort-2020.0.166.eb
index 4acb4096..d16a1a3a 100644
--- a/i/ifort/ifort-2020.0.166-GCC-8.3.0-2.32.eb
+++ b/i/iccifort/iccifort-2020.0.166.eb
@@ -1,35 +1,38 @@
# IT4Innovations 2020
-name = 'ifort'
+name = 'iccifort'
version = '2020.0.166'
-homepage = 'http://software.intel.com/en-us/intel-compilers/'
-description = "Intel Fortran local_compiler"
+homepage = 'https://software.intel.com/en-us/intel-compilers/'
+description = "Intel C, C++ & Fortran compilers"
toolchain = SYSTEM
-source_urls = ['http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/14866/']
-sources = ['parallel_studio_xe_2020_composer_edition.tgz']
+sources = ['parallel_studio_xe_%(version_major)s_composer_edition.tgz']
+patches = ['iccifort-%(version)s_no_mpi_rt_dependency.patch']
local_gccver = '8.3.0'
-local_binutilsver = '2.32'
-versionsuffix = '-GCC-%s-%s' % (local_gccver, local_binutilsver)
dependencies = [
('GCCcore', local_gccver),
- ('binutils', local_binutilsver, '', ('GCCcore', local_gccver)),
+ ('binutils', '2.32', '', ('GCCcore', local_gccver)),
]
# list of regex for components to install
# full list of components can be obtained from pset/mediaconfig.xml in unpacked sources
# cfr. https://software.intel.com/en-us/articles/intel-composer-xe-2015-silent-installation-guide
-components = ['intel-comp', 'intel-fcomp', 'intel-ifort', 'intel-openmp', 'intel-ipsf?_', 'intel-gdb(?!.*mic)']
+components = [
+ 'intel-comp', 'intel-ccomp', 'intel-fcomp', 'intel-icc', 'intel-ifort',
+ 'intel-openmp', 'intel-ipsc?_', 'intel-gdb(?!.*mic)'
+]
dontcreateinstalldir = 'True'
license_file = '/apps/licenses/intel/license.lic'
modextravars = {
+ 'CC': 'icc',
+ 'CXX': 'icpc',
'F90': 'ifort',
'F77': 'ifort',
'FC': 'ifort',
diff --git a/i/iccifort/iccifort-2020.0.166_no_mpi_rt_dependency.patch b/i/iccifort/iccifort-2020.0.166_no_mpi_rt_dependency.patch
new file mode 100644
index 00000000..18096df5
--- /dev/null
+++ b/i/iccifort/iccifort-2020.0.166_no_mpi_rt_dependency.patch
@@ -0,0 +1,13 @@
+don't install Intel MPI runtime components (mpi-rt), cfr. https://github.com/easybuilders/easybuild-easyconfigs/pull/3793
+author: Bart Oldeman (Compute Canada)
+--- parallel_studio_xe_2020_composer_edition/pset/mediaconfig.xml.orig 2019-12-02 13:01:26.000000000 -0000
++++ parallel_studio_xe_2020_composer_edition/pset/mediaconfig.xml 2019-12-19 13:27:36.293176507 -0000
+@@ -846,7 +846,7 @@
+
+ ${COMPLIB_ROOT}
+ 1575291636091
+-
++
+ Intel Fortran Compiler for Intel(R) 64
+ Intel Fortran Compiler 19.1
+ インテル(R) Fortran コンパイラー (インテル(R) 64)
diff --git a/i/iimpi/iimpi-2020a.eb b/i/iimpi/iimpi-2020a.eb
index b62203e7..1b70f432 100644
--- a/i/iimpi/iimpi-2020a.eb
+++ b/i/iimpi/iimpi-2020a.eb
@@ -11,11 +11,9 @@ description = """Intel C/C++ and Fortran compilers, alongside Intel MPI."""
toolchain = SYSTEM
local_compver = '2020.0.166'
-local_suff = '-GCC-8.3.0-2.32'
dependencies = [
- ('icc', local_compver, local_suff),
- ('ifort', local_compver, local_suff),
- ('impi', '2019.6.154', '', ('iccifort', '%s%s' % (local_compver, local_suff))),
+ ('iccifort', local_compver),
+ ('impi', '2019.6.166', '', ('iccifort', local_compver)),
]
moduleclass = 'toolchain'
diff --git a/i/imkl/imkl-2020.0.166-iimpi-2020a.eb b/i/imkl/imkl-2020.0.166-iimpi-2020a.eb
index 06adc809..42a29328 100644
--- a/i/imkl/imkl-2020.0.166-iimpi-2020a.eb
+++ b/i/imkl/imkl-2020.0.166-iimpi-2020a.eb
@@ -15,6 +15,10 @@ sources = ['l_mkl_%(version)s.tgz']
dontcreateinstalldir = 'True'
+components = ['intel-mkl']
+
+license_file = '/apps/licenses/intel/license.lic'
+
interfaces = True
postinstallcmds = [
diff --git a/i/impi/impi-2019.6.166-iccifort-2020.0.166-test.eb b/i/impi/impi-2019.6.166-iccifort-2020.0.166-test.eb
new file mode 100644
index 00000000..0f79dbba
--- /dev/null
+++ b/i/impi/impi-2019.6.166-iccifort-2020.0.166-test.eb
@@ -0,0 +1,32 @@
+# IT4Innovations 2020
+
+name = 'impi'
+version = '2019.6.166'
+versionsuffix = '-test'
+
+homepage = 'http://software.intel.com/en-us/intel-mpi-library/'
+description = "Intel MPI Library, local_compatible with MPICH ABI"
+
+toolchain = {'name': 'iccifort', 'version': '2020.0.166'}
+
+sources = ['l_mpi_%(version)s.tgz']
+
+dontcreateinstalldir = 'True'
+
+components = ['intel-mpi', 'intel-psxe', 'intel-imb']
+
+# set up all the mpi commands to default to intel compilers
+set_mpi_wrappers_all = 'True'
+
+modextravars = {
+ 'I_MPI_CC': 'icc',
+ 'I_MPI_CXX': 'icpc',
+ 'I_MPI_F77': 'ifort',
+ 'I_MPI_F90': 'ifort',
+ 'I_MPI_FC': 'ifort',
+ 'FI_SOCKETS_IFACE':'ib0',
+ 'FI_PROVIDER':'verbs',
+ 'I_MPI_FABRICS':'shm:ofi',
+}
+
+moduleclass = 'mpi'
diff --git a/i/impi/impi-2019.6.154-iccifort-2020.0.166-GCC-8.3.0-2.32.eb b/i/impi/impi-2019.6.166-iccifort-2020.0.166.eb
similarity index 77%
rename from i/impi/impi-2019.6.154-iccifort-2020.0.166-GCC-8.3.0-2.32.eb
rename to i/impi/impi-2019.6.166-iccifort-2020.0.166.eb
index b135a105..abbc7117 100644
--- a/i/impi/impi-2019.6.154-iccifort-2020.0.166-GCC-8.3.0-2.32.eb
+++ b/i/impi/impi-2019.6.166-iccifort-2020.0.166.eb
@@ -1,14 +1,13 @@
# IT4Innovations 2020
name = 'impi'
-version = '2019.6.154'
+version = '2019.6.166'
homepage = 'http://software.intel.com/en-us/intel-mpi-library/'
description = "Intel MPI Library, local_compatible with MPICH ABI"
-toolchain = {'name': 'iccifort', 'version': '2020.0.166-GCC-8.3.0-2.32'}
+toolchain = {'name': 'iccifort', 'version': '2020.0.166'}
-source_urls = ['http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/14879/']
sources = ['l_mpi_%(version)s.tgz']
dontcreateinstalldir = 'True'
@@ -27,6 +26,7 @@ modextravars = {
'FI_SOCKETS_IFACE':'ib0',
'FI_PROVIDER':'verbs',
'I_MPI_FABRICS':'shm:ofi',
+ 'I_MPI_OFI_PROVIDER':'verbs'
}
moduleclass = 'mpi'
diff --git a/i/intel/intel-2020a.eb b/i/intel/intel-2020a.eb
index c918ab46..4937cd72 100644
--- a/i/intel/intel-2020a.eb
+++ b/i/intel/intel-2020a.eb
@@ -17,9 +17,8 @@ local_gccsuff = '-GCC-%s-%s' % (local_gccver, local_binutilsver)
dependencies = [
('GCCcore', local_gccver),
('binutils', local_binutilsver, '-GCCcore-%s' % local_gccver),
- ('icc', local_compver, local_gccsuff),
- ('ifort', local_compver, local_gccsuff),
- ('impi', '2019.6.154', '', ('iccifort', '%s%s' % (local_compver, local_gccsuff))),
+ ('iccifort', local_compver),
+ ('impi', '2019.6.166', '', ('iccifort', local_compver)),
('imkl', local_compver, '', ('iimpi', version)),
]