mirror of
https://code.it4i.cz/sccs/easyconfigs-it4i.git
synced 2025-04-04 06:11:36 +01:00
new file: a/Autoconf/Autoconf-2.72-GCCcore-14.2.0.eb
new file: a/Autotools/Autotools-20231222-GCCcore-14.2.0.eb new file: b/bzip2/bzip2-1.0.8-GCCcore-14.2.0.eb new file: c/CMake/CMake-3.30.5-GCCcore-14.2.0.eb new file: c/cURL/cURL-8.7.1-GCCcore-14.2.0.eb new file: h/hwloc/hwloc-2.10.0-GCCcore-14.2.0.eb new file: l/libarchive/libarchive-3.7.4-GCCcore-14.2.0.eb new file: n/NVHPC/NVHPC-24.3.eb new file: n/ncurses/ncurses-6.5-GCCcore-14.2.0.eb new file: n/numactl/numactl-2.0.18-GCCcore-13.3.0.eb new file: o/OpenMPI/OpenMPI-4.1.6-NVHPC-24.3.eb new file: o/OpenMPI/OpenMPI-5.0.5-GCC-14.2.0.eb new file: p/Perl/Perl-5.38.2-GCCcore-14.2.0.eb new file: p/pkgconf/pkgconf-2.2.0-GCCcore-14.2.0.eb new file: u/UCC/UCC-1.2.0-GCCcore-13.2.0.eb modified: u/UCX/UCX-1.15.0-GCCcore-13.2.0.eb new file: x/XZ/XZ-5.4.5-GCCcore-14.2.0.eb
This commit is contained in:
parent
1e69ece989
commit
65417ffe00
51
a/Autoconf/Autoconf-2.72-GCCcore-14.2.0.eb
Normal file
51
a/Autoconf/Autoconf-2.72-GCCcore-14.2.0.eb
Normal file
@ -0,0 +1,51 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'Autoconf'
|
||||
version = '2.72'
|
||||
|
||||
homepage = 'https://www.gnu.org/software/autoconf/'
|
||||
|
||||
description = """
|
||||
Autoconf is an extensible package of M4 macros that produce shell scripts
|
||||
to automatically configure software source code packages. These scripts can
|
||||
adapt the packages to many kinds of UNIX-like systems without manual user
|
||||
intervention. Autoconf creates a configuration script for a package from a
|
||||
template file that lists the operating system features that the package can
|
||||
use, in the form of M4 macro calls.
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
|
||||
|
||||
source_urls = [GNU_SOURCE]
|
||||
sources = [SOURCELOWER_TAR_GZ]
|
||||
checksums = ['afb181a76e1ee72832f6581c0eddf8df032b83e2e0239ef79ebedc4467d92d6e']
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.42'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('M4', '1.4.19'),
|
||||
# non-standard Perl modules are required,
|
||||
# see https://github.com/easybuilders/easybuild-easyconfigs/issues/1822
|
||||
('Perl', '5.38.2'),
|
||||
]
|
||||
|
||||
preconfigopts = "export PERL='/usr/bin/env perl' && "
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ["bin/%s" % x
|
||||
for x in ["autoconf", "autoheader", "autom4te", "autoreconf",
|
||||
"autoscan", "autoupdate", "ifnames"]],
|
||||
'dirs': [],
|
||||
}
|
||||
|
||||
sanity_check_commands = [
|
||||
"autoconf --help",
|
||||
"autom4te --help",
|
||||
]
|
||||
|
||||
moduleclass = 'devel'
|
27
a/Autotools/Autotools-20231222-GCCcore-14.2.0.eb
Normal file
27
a/Autotools/Autotools-20231222-GCCcore-14.2.0.eb
Normal file
@ -0,0 +1,27 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
easyblock = 'Bundle'
|
||||
|
||||
name = 'Autotools'
|
||||
version = '20231222' # date of the most recent change
|
||||
|
||||
homepage = 'https://autotools.io'
|
||||
|
||||
description = """
|
||||
This bundle collect the standard GNU build tools: Autoconf, Automake
|
||||
and libtool
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
|
||||
|
||||
dependencies = [
|
||||
('Autoconf', '2.72'), # 20231222
|
||||
('Automake', '1.16.5'), # 20211003
|
||||
('libtool', '2.4.7'), # 20220317
|
||||
]
|
||||
|
||||
# Pure bundle -- no need to specify 'binutils' used when building GCCcore
|
||||
# toolchain as build dependency
|
||||
|
||||
moduleclass = 'devel'
|
30
b/bzip2/bzip2-1.0.8-GCCcore-14.2.0.eb
Normal file
30
b/bzip2/bzip2-1.0.8-GCCcore-14.2.0.eb
Normal file
@ -0,0 +1,30 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
name = 'bzip2'
|
||||
version = '1.0.8'
|
||||
|
||||
homepage = 'https://sourceware.org/bzip2'
|
||||
description = """
|
||||
bzip2 is a freely available, patent free, high-quality data compressor. It
|
||||
typically compresses files to within 10% to 15% of the best available
|
||||
techniques (the PPM family of statistical compressors), whilst being around
|
||||
twice as fast at compression and six times faster at decompression.
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
|
||||
toolchainopts = {'pic': True}
|
||||
|
||||
source_urls = ['https://sourceware.org/pub/%(name)s/']
|
||||
sources = [SOURCE_TAR_GZ]
|
||||
patches = ['bzip2-%(version)s-pkgconfig.patch']
|
||||
checksums = [
|
||||
'ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269', # bzip2-1.0.8.tar.gz
|
||||
'9299e8ee4d014ea973777b6ea90661fe329dfa991f822add4c763ea9ddb9aab1', # bzip2-1.0.8-pkgconfig.patch
|
||||
]
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.42'),
|
||||
]
|
||||
|
||||
moduleclass = 'tools'
|
33
c/CMake/CMake-3.30.5-GCCcore-14.2.0.eb
Normal file
33
c/CMake/CMake-3.30.5-GCCcore-14.2.0.eb
Normal file
@ -0,0 +1,33 @@
|
||||
# IT4Innovatiions
|
||||
# LK 2024
|
||||
|
||||
name = 'CMake'
|
||||
version = '3.30.5'
|
||||
|
||||
homepage = 'https://www.cmake.org'
|
||||
|
||||
description = """
|
||||
CMake, the cross-platform, open-source build system. CMake is a family of
|
||||
tools designed to build, test and package software.
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
|
||||
|
||||
source_urls = ['https://www.cmake.org/files/v%(version_major_minor)s']
|
||||
sources = [SOURCELOWER_TAR_GZ]
|
||||
checksums = ['9f55e1a40508f2f29b7e065fa08c29f82c402fa0402da839fffe64a25755a86d']
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.42'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('ncurses', '6.5'),
|
||||
('zlib', '1.3.1'),
|
||||
('bzip2', '1.0.8'),
|
||||
('cURL', '8.7.1'),
|
||||
('libarchive', '3.7.4'),
|
||||
# ('OpenSSL', '3', '', SYSTEM),
|
||||
]
|
||||
|
||||
moduleclass = 'devel'
|
46
c/cURL/cURL-8.7.1-GCCcore-14.2.0.eb
Normal file
46
c/cURL/cURL-8.7.1-GCCcore-14.2.0.eb
Normal file
@ -0,0 +1,46 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'cURL'
|
||||
version = '8.7.1'
|
||||
|
||||
homepage = 'https://curl.haxx.se'
|
||||
|
||||
description = """
|
||||
libcurl is a free and easy-to-use client-side URL transfer library,
|
||||
supporting DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP,
|
||||
LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP.
|
||||
libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP
|
||||
form based upload, proxies, cookies, user+password authentication (Basic,
|
||||
Digest, NTLM, Negotiate, Kerberos), file transfer resume, http proxy tunneling
|
||||
and more.
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
|
||||
|
||||
source_urls = ['https://curl.haxx.se/download/']
|
||||
sources = [SOURCELOWER_TAR_GZ]
|
||||
checksums = ['f91249c87f68ea00cf27c44fdfa5a78423e41e71b7d408e5901a9896d905c495']
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.42'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('zlib', '1.3.1'),
|
||||
# ('OpenSSL', '3', '', SYSTEM),
|
||||
]
|
||||
|
||||
configopts = '--with-zlib '
|
||||
configopts += '--with-ssl=$EBROOTOPENSSL '
|
||||
|
||||
modextravars = {'CURL_INCLUDES': '%(installdir)s/include'}
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/curl', 'lib/libcurl.a', 'lib/libcurl.%s' % SHLIB_EXT],
|
||||
'dirs': ['lib/pkgconfig', 'include/curl'],
|
||||
}
|
||||
|
||||
moduleclass = 'tools'
|
47
h/hwloc/hwloc-2.10.0-GCCcore-14.2.0.eb
Normal file
47
h/hwloc/hwloc-2.10.0-GCCcore-14.2.0.eb
Normal file
@ -0,0 +1,47 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'hwloc'
|
||||
version = '2.10.0'
|
||||
|
||||
homepage = 'https://www.open-mpi.org/projects/hwloc/'
|
||||
|
||||
description = """
|
||||
The Portable Hardware Locality (hwloc) software package provides a portable
|
||||
abstraction (across OS, versions, architectures, ...) of the hierarchical
|
||||
topology of modern architectures, including NUMA memory nodes, sockets, shared
|
||||
caches, cores and simultaneous multithreading. It also gathers various system
|
||||
attributes such as cache and memory information as well as the locality of I/O
|
||||
devices such as network interfaces, InfiniBand HCAs or GPUs. It primarily
|
||||
aims at helping applications with gathering information about modern computing
|
||||
hardware so as to exploit it accordingly and efficiently.
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
|
||||
|
||||
source_urls = ['https://www.open-mpi.org/software/hwloc/v%(version_major_minor)s/downloads/']
|
||||
sources = [SOURCE_TAR_GZ]
|
||||
checksums = ['c7fd8a1404a9719c76aadc642864b9f77aed1dc1fc8882d6af861a9260ba240d']
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.42'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('numactl', '2.0.18'),
|
||||
('libxml2', '2.12.7'),
|
||||
('libpciaccess', '0.18.1'),
|
||||
]
|
||||
|
||||
configopts = "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev "
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/lstopo', 'include/hwloc/linux.h',
|
||||
'lib/libhwloc.%s' % SHLIB_EXT],
|
||||
'dirs': ['share/man/man3'],
|
||||
}
|
||||
sanity_check_commands = ['lstopo']
|
||||
|
||||
moduleclass = 'system'
|
38
l/libarchive/libarchive-3.7.4-GCCcore-14.2.0.eb
Normal file
38
l/libarchive/libarchive-3.7.4-GCCcore-14.2.0.eb
Normal file
@ -0,0 +1,38 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'libarchive'
|
||||
version = '3.7.4'
|
||||
|
||||
homepage = 'https://www.libarchive.org/'
|
||||
|
||||
description = """
|
||||
Multi-format archive and compression library
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
|
||||
|
||||
source_urls = ['https://www.libarchive.org/downloads/']
|
||||
sources = [SOURCE_TAR_GZ]
|
||||
checksums = [
|
||||
{'libarchive-3.7.4.tar.gz': '7875d49596286055b52439ed42f044bd8ad426aa4cc5aabd96bfe7abb971d5e8'},
|
||||
]
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.42'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('zlib', '1.3.1'),
|
||||
('XZ', '5.4.5'),
|
||||
# ('OpenSSL', '3', '', SYSTEM),
|
||||
]
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['include/archive.h', 'lib/libarchive.%s' % SHLIB_EXT],
|
||||
'dirs': ['bin', 'share/man/man3'],
|
||||
}
|
||||
|
||||
moduleclass = 'tools'
|
39
n/NVHPC/NVHPC-24.3.eb
Normal file
39
n/NVHPC/NVHPC-24.3.eb
Normal file
@ -0,0 +1,39 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
name = 'NVHPC'
|
||||
version = '24.3'
|
||||
|
||||
homepage = 'https://developer.nvidia.com/hpc-sdk/'
|
||||
description = """C, C++ and Fortran compilers included with the NVIDIA HPC SDK (previously: PGI)"""
|
||||
|
||||
toolchain = SYSTEM
|
||||
|
||||
local_tarball_tmpl = 'nvhpc_2024_%%(version_major)s%%(version_minor)s_Linux_%s_cuda_multi.tar.gz'
|
||||
# By downloading, you accept the HPC SDK Software License Agreement
|
||||
# https://docs.nvidia.com/hpc-sdk/eula/index.html
|
||||
# accept_eula = True
|
||||
source_urls = ['https://developer.download.nvidia.com/hpc-sdk/%(version)s/']
|
||||
sources = [local_tarball_tmpl % '%(arch)s']
|
||||
checksums = [
|
||||
{
|
||||
local_tarball_tmpl % 'aarch64':
|
||||
'6385847de5f8725e5c56d2abf70c90fed5490f2e71a7bd13d3f4ada8720ef036',
|
||||
local_tarball_tmpl % 'ppc64le':
|
||||
'e7330eb35e23dcd9b0b3bedc67c0d5443c4fd76b59caa894a76ecb0d17f71f43',
|
||||
local_tarball_tmpl % 'x86_64':
|
||||
'6385847de5f8725e5c56d2abf70c90fed5490f2e71a7bd13d3f4ada8720ef036',
|
||||
}
|
||||
]
|
||||
|
||||
local_gccver = '12.2.0'
|
||||
dependencies = [
|
||||
('GCCcore', local_gccver),
|
||||
('binutils', '2.39', '', ('GCCcore', local_gccver)),
|
||||
# This is necessary to avoid cases where just libnuma.so.1 is present in the system and -lnuma fails
|
||||
('numactl', '2.0.16', '', ('GCCcore', local_gccver)),
|
||||
]
|
||||
|
||||
module_add_cuda = False
|
||||
|
||||
moduleclass = 'compiler'
|
56
n/ncurses/ncurses-6.5-GCCcore-14.2.0.eb
Normal file
56
n/ncurses/ncurses-6.5-GCCcore-14.2.0.eb
Normal file
@ -0,0 +1,56 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'ncurses'
|
||||
version = '6.5'
|
||||
|
||||
homepage = 'https://www.gnu.org/software/ncurses/'
|
||||
description = """
|
||||
The Ncurses (new curses) library is a free software emulation of curses in
|
||||
System V Release 4.0, and more. It uses Terminfo format, supports pads and
|
||||
color and multiple highlights and forms characters and function-key mapping,
|
||||
and has all the other SYSV-curses enhancements over BSD Curses.
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
|
||||
toolchainopts = {'pic': True}
|
||||
|
||||
source_urls = [GNU_SOURCE]
|
||||
sources = [SOURCE_TAR_GZ]
|
||||
checksums = ['136d91bc269a9a5785e5f9e980bc76ab57428f604ce3e5a5a90cebc767971cc6']
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.42'),
|
||||
('pkgconf', '2.2.0'),
|
||||
]
|
||||
|
||||
local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks --with-versioned-syms "
|
||||
local_common_configopts += "--enable-pc-files --with-pkg-config-libdir=%(installdir)s/lib/pkgconfig "
|
||||
configopts = [
|
||||
# build ncurses: serial build in default paths with shared libraries
|
||||
local_common_configopts + "--disable-widec",
|
||||
# build ncursesw: serial with UTF-8
|
||||
local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/",
|
||||
]
|
||||
|
||||
# Symlink libtinfo to libncurses
|
||||
# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically
|
||||
postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done']
|
||||
|
||||
_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw
|
||||
_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]]
|
||||
_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo']
|
||||
_pc_names = ['form', 'menu', 'ncurses++', 'ncurses', 'panel']
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config",
|
||||
"reset", "tabs", "tic", "toe", "tput", "tset"]] +
|
||||
['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] +
|
||||
['lib/libncurses++%s.a' % x for x in _target_suffix] +
|
||||
['lib/pkgconfig/%s%s.pc' % (x, y) for x in _pc_names for y in _target_suffix],
|
||||
'dirs': ['include', 'include/ncursesw'],
|
||||
}
|
||||
|
||||
moduleclass = 'devel'
|
34
n/numactl/numactl-2.0.18-GCCcore-13.3.0.eb
Normal file
34
n/numactl/numactl-2.0.18-GCCcore-13.3.0.eb
Normal file
@ -0,0 +1,34 @@
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'numactl'
|
||||
version = '2.0.18'
|
||||
|
||||
homepage = 'https://github.com/numactl/numactl'
|
||||
|
||||
description = """
|
||||
The numactl program allows you to run your application program on specific
|
||||
cpu's and memory nodes. It does this by supplying a NUMA memory policy to
|
||||
the operating system before running your program. The libnuma library provides
|
||||
convenient ways for you to add NUMA memory policies into your own program.
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '13.3.0'}
|
||||
toolchainopts = {'pic': True}
|
||||
|
||||
source_urls = ['https://github.com/numactl/numactl/archive/']
|
||||
sources = ['v%(version)s.tar.gz']
|
||||
checksums = ['8cd6c13f3096e9c2293c1d732f56e2aa37a7ada1a98deed3fac7bd6da1aaaaf6']
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.42'),
|
||||
('Autotools', '20231222'),
|
||||
]
|
||||
|
||||
preconfigopts = "./autogen.sh && "
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/numactl', 'bin/numastat', 'lib/libnuma.%s' % SHLIB_EXT, 'lib/libnuma.a'],
|
||||
'dirs': ['share/man', 'include']
|
||||
}
|
||||
|
||||
moduleclass = 'tools'
|
109
o/OpenMPI/OpenMPI-4.1.6-NVHPC-24.3.eb
Normal file
109
o/OpenMPI/OpenMPI-4.1.6-NVHPC-24.3.eb
Normal file
@ -0,0 +1,109 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
name = 'OpenMPI'
|
||||
version = '4.1.6'
|
||||
|
||||
homepage = 'https://www.open-mpi.org/'
|
||||
description = """The Open MPI Project is an open source MPI-3 implementation."""
|
||||
|
||||
toolchain = {'name': 'NVHPC', 'version': '24.3'}
|
||||
|
||||
source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
|
||||
sources = [SOURCELOWER_TAR_BZ2]
|
||||
patches = [
|
||||
'OpenMPI-4.1.1_build-with-internal-cuda-header.patch',
|
||||
'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch',
|
||||
]
|
||||
checksums = [
|
||||
'f740994485516deb63b5311af122c265179f5328a0d857a567b85db00b11e415', # openmpi-4.1.6.tar.bz2
|
||||
# OpenMPI-4.1.1_build-with-internal-cuda-header.patch
|
||||
'63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83',
|
||||
# OpenMPI-4.1.1_opal-datatype-cuda-performance.patch
|
||||
'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e',
|
||||
]
|
||||
|
||||
builddependencies = [
|
||||
('pkgconf', '1.9.3'),
|
||||
('Perl', '5.36.0'),
|
||||
('Autotools', '20220317'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('zlib', '1.2.12'),
|
||||
('hwloc', '2.8.0'),
|
||||
('libevent', '2.1.12'),
|
||||
('UCX', '1.16.0'),
|
||||
('libfabric', '1.16.1'),
|
||||
('PMIx', '4.2.2'),
|
||||
('UCC', '1.3.0'),
|
||||
]
|
||||
|
||||
# Update configure to include changes from the "internal-cuda" patch
|
||||
# by running a subset of autogen.pl sufficient to achieve this
|
||||
# without doing the full, long-running regeneration.
|
||||
preconfigopts = ' && '.join([
|
||||
'cd config',
|
||||
'autom4te --language=m4sh opal_get_version.m4sh -o opal_get_version.sh',
|
||||
'cd ..',
|
||||
'autoconf',
|
||||
'autoheader',
|
||||
'aclocal',
|
||||
'automake',
|
||||
''
|
||||
])
|
||||
|
||||
# IT4I-specific settings
|
||||
|
||||
#configopts += '--enable-shared '
|
||||
configopts = ' --enable-mpi-thread-multiple'
|
||||
configopts += ' --with-verbs'
|
||||
configopts += ' --enable-mpirun-prefix-by-default'
|
||||
configopts += ' --with-hwloc=$EBROOTHWLOC' # hwloc support
|
||||
configopts += ' --with-slurm' # Enable slurm
|
||||
configopts += ' --enable-mpi-cxx' # Enable building the C++ MPI bindings
|
||||
configopts += ' --with-ucx=$EBROOTUCX'
|
||||
|
||||
import os
|
||||
if os.environ.get("CLUSTERNAME") in ["BARBORA"]:
|
||||
configopts += ' --with-knem=/opt/knem-1.1.4.90mlnx1'
|
||||
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
|
||||
configopts += ' --with-knem=/opt/knem-1.1.4.90mlnx3'
|
||||
|
||||
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': [], }
|
||||
|
||||
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',
|
||||
'SLURM_MPI_TYPE': 'pmix_v4',
|
||||
}
|
||||
elif os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
|
||||
modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx5_0',
|
||||
'OMPI_MCA_orte_base_help_aggregate': '0',
|
||||
'SLURM_MPI_TYPE': 'pmix_v4',
|
||||
}
|
||||
else:
|
||||
modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx4_0',
|
||||
'OMPI_MCA_oob_tcp_if_include': '10.0.0.0/8',
|
||||
'SLURM_MPI_TYPE': 'pmix_v4',
|
||||
}
|
||||
|
||||
moduleclass = 'mpi'
|
74
o/OpenMPI/OpenMPI-5.0.5-GCC-14.2.0.eb
Normal file
74
o/OpenMPI/OpenMPI-5.0.5-GCC-14.2.0.eb
Normal file
@ -0,0 +1,74 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
name = 'OpenMPI'
|
||||
version = '5.0.5'
|
||||
|
||||
homepage = 'https://www.open-mpi.org/'
|
||||
description = """The Open MPI Project is an open source MPI-3 implementation."""
|
||||
|
||||
toolchain = {'name': 'GCC', 'version': '14.2.0'}
|
||||
|
||||
source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
|
||||
sources = [SOURCELOWER_TAR_BZ2]
|
||||
checksums = [
|
||||
{'openmpi-5.0.5.tar.bz2': 'ee46ad8eeee2c3ff70772160bff877cbf38c330a0bc3b3ddc811648b3396698f'},
|
||||
]
|
||||
|
||||
builddependencies = [
|
||||
('pkgconf', '2.2.0'),
|
||||
('Perl', '5.38.2'),
|
||||
('Autotools', '20231222'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('zlib', '1.2.12'),
|
||||
('hwloc', '2.8.0'),
|
||||
('libevent', '2.1.12'),
|
||||
('UCX', '1.14.1'),
|
||||
('libfabric', '1.16.1'),
|
||||
('PMIx', '4.2.6'),
|
||||
('UCC', '1.1.0'),
|
||||
]
|
||||
|
||||
# Update configure to include changes from the "internal-cuda" patch
|
||||
# by running a subset of autogen.pl sufficient to achieve this
|
||||
# without doing the full, long-running regeneration.
|
||||
preconfigopts = ' && '.join([
|
||||
'cd config',
|
||||
'autom4te --language=m4sh opal_get_version.m4sh -o opal_get_version.sh',
|
||||
'cd ..',
|
||||
'autoconf',
|
||||
'autoheader',
|
||||
'aclocal',
|
||||
'automake',
|
||||
''
|
||||
])
|
||||
|
||||
configopts = '--enable-shared --enable-mpi-thread-multiple --with-verbs '
|
||||
configopts += '--enable-mpirun-prefix-by-default '
|
||||
configopts += '--with-hwloc=$EBROOTHWLOC ' # hwloc support
|
||||
configopts += '--with-slurm ' # Enable slurm
|
||||
configopts += '--enable-mpi-cxx ' # Enable building the C++ MPI bindings
|
||||
configopts += '--with-ucx=$EBROOTUCX '
|
||||
|
||||
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',
|
||||
'SLURM_MPI_TYPE': 'pmix_v4',
|
||||
}
|
||||
elif os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
|
||||
modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx5_0',
|
||||
'OMPI_MCA_orte_base_help_aggregate': '0',
|
||||
'SLURM_MPI_TYPE': 'pmix_v4',
|
||||
}
|
||||
else:
|
||||
modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx4_0',
|
||||
'OMPI_MCA_oob_tcp_if_include': '10.0.0.0/8',
|
||||
'SLURM_MPI_TYPE': 'pmix_v4',
|
||||
}
|
||||
|
||||
|
||||
moduleclass = 'mpi'
|
89
p/Perl/Perl-5.38.2-GCCcore-14.2.0.eb
Normal file
89
p/Perl/Perl-5.38.2-GCCcore-14.2.0.eb
Normal file
@ -0,0 +1,89 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
name = 'Perl'
|
||||
version = '5.38.2'
|
||||
|
||||
homepage = 'https://www.perl.org/'
|
||||
description = """Larry Wall's Practical Extraction and Report Language
|
||||
|
||||
Includes a small selection of extra CPAN packages for core functionality.
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
|
||||
toolchainopts = {'pic': True}
|
||||
|
||||
source_urls = ['https://www.cpan.org/src/%(version_major)s.0']
|
||||
sources = [SOURCELOWER_TAR_GZ]
|
||||
checksums = ['a0a31534451eb7b83c7d6594a497543a54d488bc90ca00f5e34762577f40655e']
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.42'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('zlib', '1.3.1'),
|
||||
]
|
||||
|
||||
# !! order of extensions is important !!
|
||||
# extensions updated on 2023-09-03
|
||||
# includes all dependencies for Autotools
|
||||
exts_list = [
|
||||
('threads', '2.21', {
|
||||
'source_tmpl': 'threads-%(version)s.tar.gz',
|
||||
'source_urls': ['https://cpan.metacpan.org/authors/id/J/JD/JDHEDDEN'],
|
||||
'checksums': ['28394c98a2bcae6f20ffb8a3d965a1c194b764c650169e2050ee38dbaa10f110'],
|
||||
}),
|
||||
('constant', '1.33', {
|
||||
'source_tmpl': 'constant-%(version)s.tar.gz',
|
||||
'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'],
|
||||
'checksums': ['79965d4130eb576670e27ca0ae6899ef0060c76da48b02b97682166882f1b504'],
|
||||
}),
|
||||
('Getopt::Long', '2.57', {
|
||||
'source_tmpl': 'Getopt-Long-%(version)s.tar.gz',
|
||||
'source_urls': ['https://cpan.metacpan.org/authors/id/J/JV/JV'],
|
||||
'checksums': ['d3791e6bf167708364ea5ad3be578dc9173a0076167160a4341c05a1e979795e'],
|
||||
}),
|
||||
('File::Path', '2.18', {
|
||||
'source_tmpl': 'File-Path-%(version)s.tar.gz',
|
||||
'source_urls': ['https://cpan.metacpan.org/authors/id/J/JK/JKEENAN/'],
|
||||
'checksums': ['980f0a17edb353df46e9cd7b357f9f5929cde0f80c45fd7a06cf7e0e8bd6addd'],
|
||||
}),
|
||||
('File::Spec', '3.75', {
|
||||
'source_tmpl': 'PathTools-%(version)s.tar.gz',
|
||||
'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'],
|
||||
'checksums': ['a558503aa6b1f8c727c0073339081a77888606aa701ada1ad62dd9d8c3f945a2'],
|
||||
}),
|
||||
('IO::File', '1.55', {
|
||||
'source_tmpl': 'IO-%(version)s.tar.gz',
|
||||
'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR/'],
|
||||
'checksums': ['0443afebb9a48f29611e9b17a017f430b51167a498fa4646c07f8dce03b6b95f'],
|
||||
}),
|
||||
('Thread::Queue', '3.13', {
|
||||
'source_tmpl': 'Thread-Queue-%(version)s.tar.gz',
|
||||
'source_urls': ['https://cpan.metacpan.org/authors/id/J/JD/JDHEDDEN'],
|
||||
'checksums': ['6ba3dacddd2fbb66822b4aa1d11a0a5273cd04c825cb3ff31c20d7037cbfdce8'],
|
||||
}),
|
||||
('Carp', '1.50', {
|
||||
'source_tmpl': 'Carp-%(version)s.tar.gz',
|
||||
'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'],
|
||||
'checksums': ['f5273b4e1a6d51b22996c48cb3a3cbc72fd456c4038f5c20b127e2d4bcbcebd9'],
|
||||
}),
|
||||
('Exporter', '5.78', {
|
||||
'source_tmpl': 'Exporter-%(version)s.tar.gz',
|
||||
'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'],
|
||||
'checksums': ['bd17e99219aa2fb6a8acb3d11deffcb588708c70fc29f346e20ea7f71d3a48f0'],
|
||||
}),
|
||||
('Text::ParseWords', '3.31', {
|
||||
'source_tmpl': 'Text-ParseWords-%(version)s.tar.gz',
|
||||
'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB/'],
|
||||
'checksums': ['2ae555ba084d75b2b8feeeb8d1a00911276815ada86bccb1452236964d5a2fc7'],
|
||||
}),
|
||||
('Data::Dumper', '2.183', {
|
||||
'source_tmpl': 'Data-Dumper-%(version)s.tar.gz',
|
||||
'source_urls': ['https://cpan.metacpan.org/authors/id/N/NW/NWCLARK/'],
|
||||
'checksums': ['e42736890b7dae1b37818d9c5efa1f1fdc52dec04f446a33a4819bf1d4ab5ad3'],
|
||||
}),
|
||||
]
|
||||
|
||||
moduleclass = 'lang'
|
34
p/pkgconf/pkgconf-2.2.0-GCCcore-14.2.0.eb
Normal file
34
p/pkgconf/pkgconf-2.2.0-GCCcore-14.2.0.eb
Normal file
@ -0,0 +1,34 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'pkgconf'
|
||||
version = '2.2.0'
|
||||
|
||||
homepage = 'https://github.com/pkgconf/pkgconf'
|
||||
|
||||
description = """pkgconf is a program which helps to configure compiler and linker flags for development libraries.
|
||||
It is similar to pkg-config from freedesktop.org."""
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
|
||||
|
||||
source_urls = ['https://distfiles.ariadne.space/pkgconf/']
|
||||
sources = [SOURCELOWER_TAR_GZ]
|
||||
checksums = ['28f8dfc279a10ef66148befa3f6eb266e5f3570316600208ed50e9781c7269d8']
|
||||
|
||||
builddependencies = [('binutils', '2.42')]
|
||||
|
||||
postinstallcmds = ["cd %(installdir)s/bin && ln -s pkgconf pkg-config"]
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/pkg-config', 'bin/pkgconf'],
|
||||
'dirs': [],
|
||||
}
|
||||
|
||||
sanity_check_commands = [
|
||||
"pkg-config --help",
|
||||
"pkgconf --help",
|
||||
]
|
||||
|
||||
moduleclass = 'devel'
|
49
u/UCC/UCC-1.2.0-GCCcore-13.2.0.eb
Normal file
49
u/UCC/UCC-1.2.0-GCCcore-13.2.0.eb
Normal file
@ -0,0 +1,49 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'UCC'
|
||||
version = '1.2.0'
|
||||
|
||||
homepage = 'https://www.openucx.org/'
|
||||
description = """UCC (Unified Collective Communication) is a collective
|
||||
communication operations API and library that is flexible, complete, and
|
||||
feature-rich for current and emerging programming models and runtimes.
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '13.2.0'}
|
||||
toolchainopts = {'pic': True}
|
||||
|
||||
source_urls = ['https://github.com/openucx/ucc/archive/refs/tags']
|
||||
sources = ['v%(version)s.tar.gz']
|
||||
patches = ['UCC-1.1.0-multiple_component_paths.patch']
|
||||
checksums = [
|
||||
{'v1.2.0.tar.gz': 'c1552797600835c0cf401b82dc89c4d27d5717f4fb805d41daca8e19f65e509d'},
|
||||
{'UCC-1.1.0-multiple_component_paths.patch': '3081d0f694331daa4a88a0fa3fb54b9a918015248ae5eb7b3157b924abd31bee'},
|
||||
]
|
||||
|
||||
if ARCH == "riscv64":
|
||||
patches += ['UCC-1.2.0_add-riscv-support.patch']
|
||||
checksums += [{'UCC-1.2.0_add-riscv-support.patch':
|
||||
'e9e2a4c206dad2367af97d92c12b796b454992cfce23984b132e9e78a07ff55b'}]
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.40'),
|
||||
('Autotools', '20220317'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('UCX', '1.15.0'),
|
||||
]
|
||||
|
||||
preconfigopts = "./autogen.sh && "
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/ucc_info'],
|
||||
'dirs': ['include', 'lib']
|
||||
}
|
||||
|
||||
#sanity_check_commands = ["ucc_info -c"]
|
||||
|
||||
moduleclass = 'lib'
|
@ -58,6 +58,6 @@ sanity_check_paths = {
|
||||
'dirs': ['include', 'lib', 'share']
|
||||
}
|
||||
|
||||
sanity_check_commands = ["ucx_info -d"]
|
||||
#sanity_check_commands = ["ucx_info -d"]
|
||||
|
||||
moduleclass = 'lib'
|
||||
|
37
x/XZ/XZ-5.4.5-GCCcore-14.2.0.eb
Normal file
37
x/XZ/XZ-5.4.5-GCCcore-14.2.0.eb
Normal file
@ -0,0 +1,37 @@
|
||||
# IT4Innovations
|
||||
# LK 2024
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'XZ'
|
||||
version = '5.4.5'
|
||||
|
||||
homepage = 'https://tukaani.org/xz/'
|
||||
description = "xz: XZ utilities"
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
|
||||
|
||||
source_urls = ['https://tukaani.org/xz/']
|
||||
sources = [SOURCELOWER_TAR_BZ2]
|
||||
checksums = ['8ccf5fff868c006f29522e386fb4c6a1b66463fbca65a4cfc3c4bd596e895e79']
|
||||
|
||||
builddependencies = [
|
||||
# use gettext built with system toolchain as build dep to avoid cyclic dependency (XZ -> gettext -> libxml2 -> XZ)
|
||||
('gettext', '0.22.5', '', SYSTEM),
|
||||
('binutils', '2.42'),
|
||||
]
|
||||
|
||||
# may become useful in non-x86 archs
|
||||
# configopts = ' --disable-assembler '
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/lzmainfo', 'bin/unxz', 'bin/xz'],
|
||||
'dirs': []
|
||||
}
|
||||
|
||||
sanity_check_commands = [
|
||||
"xz --help",
|
||||
"unxz --help",
|
||||
]
|
||||
|
||||
moduleclass = 'tools'
|
Loading…
x
Reference in New Issue
Block a user