new file: a/AOCC/AOCC-2.1.0-GCCcore-10.2.0.eb

new file:   a/AOCL/AOCL-2.1-GCCcore-10.2.0.eb
	new file:   a/AOCL/AOCL-2.2-4-GCCcore-10.2.0.eb
	new file:   g/glibc/glibc-2.30-GCCcore-10.2.0.eb
	new file:   m/make/make-4.2.1-GCCcore-10.2.0.eb
	new file:   o/OpenCoarrays/OpenCoarrays-2.9.2-gompi-2020b.eb
	new file:   o/OpenMPI/OpenMPI-4.1.1-AOCC-3.1.0.eb
	new file:   p/PETSc/PETSc-3.14.4-intel-2020b.eb
	new file:   r/R/R-4.1.0-foss-2021a.eb
This commit is contained in:
Lukas Krupcik 2021-09-27 08:35:13 +02:00
parent e40aef1f8c
commit 992a427a36
9 changed files with 3303 additions and 0 deletions

View File

@ -0,0 +1,27 @@
#
# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
#
# Author: Robert Mijakovic <robert.mijakovic@lxp.lu>
# reciPY derived from preexisting reciPy for GCCcore-9.3.0.
#
name = 'AOCC'
version = '2.1.0'
homepage = 'https://developer.amd.com/amd-aocc/'
description = "AMD Optimized C/C++ & Fortran compilers (AOCC) based on LLVM 11.0"
# Clang also depends on libstdc++ during runtime, but this dependency is
# already specified as the toolchain.
toolchain = {'name': 'GCCcore', 'version': '10.2.0'}
source_urls = ['http://developer.amd.com/wordpress/media/files/']
sources = ['aocc-compiler-%(version)s.tar']
dependencies = [
('binutils', '2.35'),
('ncurses', '6.2'),
('zlib', '1.2.11'),
('libxml2', '2.9.10'),
]
moduleclass = 'compiler'

View File

@ -0,0 +1,25 @@
# IT4Innovations
# LK 2021
name = 'AOCL'
version = '2.1'
homepage = 'https://developer.amd.com/amd-aocc/'
description = """AMD provides a free set of thoroughly optimized and threaded math routines for HPC,
scientific, engineering and related compute-intensive applications. ACML is ideal for weather modeling,
computational fluid dynamics, financial analysis, oil and gas applications and more. """
toolchain = {'name': 'GCCcore', 'version': '10.2.0'}
source_urls = ['http://developer.amd.com/wordpress/media/files/']
sources = ['aocl-linux-aocc-%(version)s.tar.gz']
dependencies = [
('binutils', '2.35'),
('ncurses', '6.2'),
('zlib', '1.2.11'),
('libxml2', '2.9.10'),
('AOCC', '2.1.0'),
]
moduleclass = 'numlib'

View File

@ -0,0 +1,25 @@
# IT4Innovations
# LK 2021
name = 'AOCL'
version = '2.2-4'
homepage = 'https://developer.amd.com/amd-aocc/'
description = """AMD provides a free set of thoroughly optimized and threaded math routines for HPC,
scientific, engineering and related compute-intensive applications. ACML is ideal for weather modeling,
computational fluid dynamics, financial analysis, oil and gas applications and more. """
toolchain = {'name': 'GCCcore', 'version': '10.2.0'}
source_urls = ['http://developer.amd.com/wordpress/media/files/']
sources = ['aocl-linux-aocc-%(version)s.tar.gz']
dependencies = [
('binutils', '2.35'),
('ncurses', '6.2'),
('zlib', '1.2.11'),
('libxml2', '2.9.10'),
('AOCC', '3.1.0'),
]
moduleclass = 'numlib'

View File

@ -0,0 +1,37 @@
# IT4Innovations
# LK 2021
easyblock = 'ConfigureMake'
name = 'glibc'
version = '2.30'
homepags = 'https://www.gnu.org/software/libc/'
description = """The GNU C Library project provides the core libraries for the GNU system and GNU/Linux systems,
as well as many other systems that use Linux as the kernel."""
toolchain = {'name': 'GCCcore', 'version': '10.2.0'}
source_urls = ['https://ftp.gnu.org/gnu/glibc/']
sources = ['glibc-%(version)s.tar.xz']
checksums = ['e2c4114e569afbe7edbc29131a43be833850ab9a459d81beb2588016d2bbb8af']
builddependencies = [
('binutils', '2.35'),
('make', '4.2.1'),
('texinfo', '6.7'),
('Bison', '3.7.1'),
('Python', '3.8.6'),
]
preconfigopts = 'mkdir obj && cd obj && CC="$CC -fuse-ld=bfd --disable-werror" '
configure_cmd_prefix = '../'
prebuildopts = "cd obj && "
preinstallopts = prebuildopts
sanity_check_paths = {
'files': ['bin/ldd', 'lib/libc.a', 'lib/libc.%s' % SHLIB_EXT],
'dirs': ['etc', 'libexec', 'include', 'sbin', 'share'],
}
moduleclass = 'lib'

View File

@ -0,0 +1,41 @@
# IT4Innovations
# LK 2021
easyblock = 'ConfigureMake'
name = 'make'
version = '4.2.1'
homepage = 'https://www.gnu.org/software/make/make.html'
description = "GNU version of make utility"
toolchain = {'name': 'GCCcore', 'version': '10.2.0'}
source_urls = [GNU_SOURCE]
sources = [SOURCE_TAR_BZ2]
patches = ['%(name)s-%(version)s_RHEL8.patch']
checksums = [
'd6e262bf3601b42d2b1e4ef8310029e1dcf20083c5446b4b7aa67081fdffc589', # make-4.2.1.tar.bz2
'ca9daea8cfdb7de55c5a973e283a5aca35fb11d9eb37cd3bd25f95557f2e6479', # make-4.2.1_RHEL8.patch
]
builddependencies = [
# needs specifically aclocal 1.15
('Automake', '1.16.2'),
('binutils', '2.35'),
('pkg-config', '0.29.2'),
]
postinstallcmds = ["cd %(installdir)s/bin && ln -s make gmake"]
sanity_check_paths = {
'files': ['bin/gmake', 'bin/make'],
'dirs': []
}
sanity_check_commands = [
"gmake --help",
"make --help",
]
moduleclass = 'devel'

View File

@ -0,0 +1,36 @@
# IT4Innovations
# LK 2021
easyblock = 'CMakeMake'
name = 'OpenCoarrays'
version = '2.9.2'
homepage = 'https://github.com/sourceryinstitute/opencoarrays'
description = """OpenCoarrays is an open-source software project that supports
the coarray Fortran (CAF) parallel programming features of the Fortran 2008
standard and several features proposed for Fortran 2015 in the draft Technical
Specification TS 18508 Additional Parallel Features in Fortran."""
toolchain = {'name': 'gompi', 'version': '2020b'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/sourceryinstitute/opencoarrays/releases/download/%(version)s']
sources = [SOURCE_TAR_GZ]
patches = ['OpenCoarrays-2.2.0-cafrun-OpenMPI-mpiexec.patch']
checksums = [
'6c200ca49808c75b0a2dfa984304643613b6bc77cc0044bee093f9afe03698f7', # OpenCoarrays-2.9.2.tar.gz
# OpenCoarrays-2.2.0-cafrun-OpenMPI-mpiexec.patch
'5d410cc78c80dfa54237f874a0627260ad0b4b2f272d8f0f9ce317375bcc796f',
]
separate_build_dir = True
builddependencies = [('CMake', '3.18.4')]
sanity_check_paths = {
'files': ['bin/caf', 'bin/cafrun', 'include/opencoarrays.mod', ('lib/libcaf_mpi.a', 'lib64/libcaf_mpi.a')],
'dirs': [],
}
moduleclass = 'mpi'

View File

@ -0,0 +1,65 @@
# IT4Innovations 2021
# LK
easyblock = 'ConfigureMake'
name = 'OpenMPI'
version = '4.1.1'
homepage = 'http://www.open-mpi.org/'
description = """The Open MPI Project is an open source MPI-2 implementation."""
toolchain = {'name': 'AOCC', 'version': '3.1.0'}
source_urls = ['https://github.com/open-mpi/ompi/archive/refs/tags/']
sources = ['v%(version)s.tar.gz']
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',
]
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',
'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'

View File

@ -0,0 +1,47 @@
name = 'PETSc'
version = '3.14.4'
homepage = 'https://www.mcs.anl.gov/petsc'
description = """PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the
scalable (parallel) solution of scientific applications modeled by partial differential equations."""
toolchain = {'name': 'intel', 'version': '2020b'}
toolchainopts = {'openmp': True, 'usempi': True, 'pic': True}
source_urls = [
'https://ftp.mcs.anl.gov/pub/petsc/release-snapshots/',
'ftp://ftp.mcs.anl.gov/pub/petsc/release-snapshots/',
]
sources = [SOURCELOWER_TAR_GZ]
patches = [
'PETSc_ranlib-fix.patch',
]
checksums = [
'2fb431434b91e054cc3a176f7cb008951088243b5dcb3efc8eec8ce589a2658e', # petsc-3.14.4.tar.gz
'64cf9d5008d5e92117e65bdec5316d991b6a6b8c8ecf7ea46eb790a498266297', # PETSc_ranlib-fix.patch
]
builddependencies = [('CMake', '3.18.4')]
dependencies = [
('Python', '3.8.6'),
('SciPy-bundle', '2020.11'),
('Boost', '1.74.0'),
('METIS', '5.1.0'),
('SCOTCH', '6.1.0'),
('MUMPS', '5.3.5', '-metis'),
('SuiteSparse', '5.8.1', '-METIS-5.1.0'),
('Hypre', '2.20.0'),
]
# enabling --with-mpi4py seems to be totally broken, leads to make errors like:
# No rule to make target 'mpi4py-build'
configopts = '--LIBS="$LIBS -lrt" --with-mpi4py=0 '
shared_libs = 1
# only required when building PETSc in a SLURM job environment
# configopts += '--with-batch=1 --known-mpi-shared-libraries=1 --known-64-bit-blas-indices=0 '
# prebuildopts = "srun ./conftest-arch-linux2-c-opt && ./reconfigure-arch-linux2-c-opt.py && "
moduleclass = 'numlib'

3000
r/R/R-4.1.0-foss-2021a.eb Normal file

File diff suppressed because it is too large Load Diff