From b41f3dbc91cbd102e9736be383911277e25abbb0 Mon Sep 17 00:00:00 2001 From: easybuild Date: Fri, 13 Jan 2023 11:50:39 +0100 Subject: [PATCH] modified: h/hwloc/hwloc-2.8.0.eb new file: l/libevent/libevent-2.1.12.eb new file: p/PMIx/PMIx-3.2.3.eb new file: p/PMIx/PMIx-4.2.2.eb new file: x/XALT/XALT-2.10.45-eb.cz new file: z/zlib/zlib-1.2.12.eb --- h/hwloc/hwloc-2.8.0.eb | 3 ++ l/libevent/libevent-2.1.12.eb | 43 +++++++++++++++++++++++ p/PMIx/PMIx-3.2.3.eb | 48 ++++++++++++++++++++++++++ p/PMIx/PMIx-4.2.2.eb | 48 ++++++++++++++++++++++++++ x/XALT/XALT-2.10.45-eb.cz | 64 +++++++++++++++++++++++++++++++++++ z/zlib/zlib-1.2.12.eb | 39 +++++++++++++++++++++ 6 files changed, 245 insertions(+) create mode 100644 l/libevent/libevent-2.1.12.eb create mode 100644 p/PMIx/PMIx-3.2.3.eb create mode 100644 p/PMIx/PMIx-4.2.2.eb create mode 100644 x/XALT/XALT-2.10.45-eb.cz create mode 100644 z/zlib/zlib-1.2.12.eb diff --git a/h/hwloc/hwloc-2.8.0.eb b/h/hwloc/hwloc-2.8.0.eb index 2df43587..639ad5fc 100644 --- a/h/hwloc/hwloc-2.8.0.eb +++ b/h/hwloc/hwloc-2.8.0.eb @@ -1,3 +1,6 @@ +# IT4Innovations 2023 +# JK + easyblock = 'ConfigureMake' name = 'hwloc' diff --git a/l/libevent/libevent-2.1.12.eb b/l/libevent/libevent-2.1.12.eb new file mode 100644 index 00000000..912b8c1a --- /dev/null +++ b/l/libevent/libevent-2.1.12.eb @@ -0,0 +1,43 @@ +# IT4Innovations 2023 +# JK + +easyblock = 'ConfigureMake' + +name = 'libevent' +version = '2.1.12' + +homepage = 'https://libevent.org/' + +description = """ + The libevent API provides a mechanism to execute a callback function when + a specific event occurs on a file descriptor or after a timeout has been + reached. Furthermore, libevent also support callbacks due to signals or + regular timeouts. +""" + +toolchain = SYSTEM +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/%(name)s/%(name)s/releases/download/release-%(version)s-stable/'] +sources = ['%(name)s-%(version)s-stable.tar.gz'] +checksums = ['92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb'] + +#builddependencies = [ +# ('binutils', '2.39'), +# ('pkgconf', '1.9.3'), +#] + +dependencies = [ + ('zlib', '1.2.12'), +# ('OpenSSL', '1.1', '', SYSTEM), +] + +osdependencies = ['openssl'] + +sanity_check_paths = { + 'files': ['bin/event_rpcgen.py', 'include/event.h', 'include/event2/event.h', + 'lib/libevent_core.%s' % SHLIB_EXT, 'lib/pkgconfig/libevent.pc'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/p/PMIx/PMIx-3.2.3.eb b/p/PMIx/PMIx-3.2.3.eb new file mode 100644 index 00000000..f5a1e30a --- /dev/null +++ b/p/PMIx/PMIx-3.2.3.eb @@ -0,0 +1,48 @@ +# IT4Innovations 2023 +# JK + +easyblock = 'ConfigureMake' + +name = 'PMIx' +version = '3.2.3' + +homepage = 'https://pmix.org/' +description = """Process Management for Exascale Environments +PMI Exascale (PMIx) represents an attempt to +provide an extended version of the PMI standard specifically designed +to support clusters up to and including exascale sizes. The overall +objective of the project is not to branch the existing pseudo-standard +definitions - in fact, PMIx fully supports both of the existing PMI-1 +and PMI-2 APIs - but rather to (a) augment and extend those APIs to +eliminate some current restrictions that impact scalability, and (b) +provide a reference implementation of the PMI-server that demonstrates +the desired level of scalability. +""" + +toolchain = SYSTEM +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openpmix/openpmix/releases/download/v%(version)s'] +sources = ['%(namelower)s-%(version)s.tar.bz2'] +checksums = ['9b835f23c2f94a193c14012ee68b3657a61c568598cdd1212a3716b32d41a135'] + +# builddependencies = [('binutils', '2.39')] + +dependencies = [ + ('zlib', '1.2.12'), + ('libevent', '2.1.12'), + ('hwloc', '2.8.0'), +] + +configopts = ' --with-libevent=$EBROOTLIBEVENT --with-zlib=$EBROOTZLIB' +configopts += ' --with-hwloc=$EBROOTHWLOC' +configopts += ' --enable-pmix-binaries' + +buildopts = 'V=1' + +sanity_check_paths = { + 'files': ['bin/pevent', 'bin/plookup', 'bin/pmix_info', 'bin/pps'], + 'dirs': ['etc', 'include', 'lib', 'share'] +} + +moduleclass = 'lib' diff --git a/p/PMIx/PMIx-4.2.2.eb b/p/PMIx/PMIx-4.2.2.eb new file mode 100644 index 00000000..3c469b2d --- /dev/null +++ b/p/PMIx/PMIx-4.2.2.eb @@ -0,0 +1,48 @@ +# IT4Innovations 2023 +# JK + +easyblock = 'ConfigureMake' + +name = 'PMIx' +version = '4.2.2' + +homepage = 'https://pmix.org/' +description = """Process Management for Exascale Environments +PMI Exascale (PMIx) represents an attempt to +provide an extended version of the PMI standard specifically designed +to support clusters up to and including exascale sizes. The overall +objective of the project is not to branch the existing pseudo-standard +definitions - in fact, PMIx fully supports both of the existing PMI-1 +and PMI-2 APIs - but rather to (a) augment and extend those APIs to +eliminate some current restrictions that impact scalability, and (b) +provide a reference implementation of the PMI-server that demonstrates +the desired level of scalability. +""" + +toolchain = SYSTEM +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openpmix/openpmix/releases/download/v%(version)s'] +sources = ['%(namelower)s-%(version)s.tar.bz2'] +checksums = ['935b2f492e4bc409017f1425a83366aa72a7039605ea187c9fac7bb1371cd73c'] + +#builddependencies = [('binutils', '2.39')] + +dependencies = [ + ('zlib', '1.2.12'), + ('libevent', '2.1.12'), + ('hwloc', '2.8.0'), +] + +configopts = ' --with-libevent=$EBROOTLIBEVENT --with-zlib=$EBROOTZLIB' +configopts += ' --with-hwloc=$EBROOTHWLOC' +configopts += ' --enable-pmix-binaries' + +buildopts = 'V=1' + +sanity_check_paths = { + 'files': ['bin/pevent', 'bin/plookup', 'bin/pmix_info', 'bin/pps'], + 'dirs': ['etc', 'include', 'lib', 'share'] +} + +moduleclass = 'lib' diff --git a/x/XALT/XALT-2.10.45-eb.cz b/x/XALT/XALT-2.10.45-eb.cz new file mode 100644 index 00000000..563f950b --- /dev/null +++ b/x/XALT/XALT-2.10.45-eb.cz @@ -0,0 +1,64 @@ +#IT4Innovations +# LK 2023 + +name = 'XALT' +version = '2.10.45' +versionsuffix = "-eb" + +homepage = 'https://github.com/xalt/xalt' +description = """XALT 2 is a tool to allow a site to track user executables + and library usage on a cluster. When installed it can tell a site what are + the top executables by Node-Hours or by the number of users or the number + of times it is run. XALT 2 also tracks library usage as well. XALT 2 can + also track package use by R, MATLAB or Python. It tracks both MPI and + non-MPI programs.""" + +toolchain = SYSTEM + +# The location of XALT configuration file must be specified via +# 'config_py' easyconfig parameter. You can edit the easyconfig file, +# or use 'eb --try-amend=config_py='. " See +# https://xalt.readthedocs.io/en/latest/030_site_filtering.html for +# more information. +config_py = "/apps/.xalt/IT4I_config.py" + +# The name of the system must be specified via the 'syshost' +# easyconfig parameter. You can edit the easyconfig file, or use 'eb +# --try-amend=syshost='. See +# https://xalt.readthedocs.io/en/latest/020_site_configuration.html +# for more information. +syshost = "env_var:CLUSTERNAME" + +# The XALT transmission method must be specified via the +# 'transmission' easyconfig parameter. You can edit the easyconfig +# file, or use 'eb --try-amend=transmission='. See +# https://xalt.readthedocs.io/en/latest/020_site_configuration.html +# for more information. +transmission = "file" + +# Additional options +local_executable_tracking = True +local_gpu_tracking = Yes +local_logging_url = None +local_mysql = False +local_scalar_sampling = True +local_static_cxx = True + +source_urls = ['https://github.com/xalt/xalt/archive/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['c10898402111b230eac1c0d3769a4b46361c97fc3415977c2199b5db3de8c547'] + +builddependencies = [ + ('cURL', '7.76.0'), + ('flex', '2.6.4'), + ('util-linux', '2.36'), +] + +osdependencies = [ + ('bc'), + ('coreutils'), + ('libelf-dev', 'elfutils-libelf-devel'), + OS_PKG_OPENSSL_DEV, +] + +moduleclass = 'lib' diff --git a/z/zlib/zlib-1.2.12.eb b/z/zlib/zlib-1.2.12.eb new file mode 100644 index 00000000..bf03e302 --- /dev/null +++ b/z/zlib/zlib-1.2.12.eb @@ -0,0 +1,39 @@ +# IT4Innovations 2023 +# JK + +easyblock = 'ConfigureMake' + +name = 'zlib' +version = '1.2.12' + +homepage = 'https://www.zlib.net/' + +description = """ + zlib is designed to be a free, general-purpose, legally unencumbered -- that + is, not covered by any patents -- lossless data-compression library for use + on virtually any computer hardware and operating system. +""" + +toolchain = SYSTEM +toolchainopts = {'pic': True} + +source_urls = ['https://zlib.net/fossils/'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['zlib-%(version)s_fix-CC-logic-in-configure.patch'] +checksums = [ + '91844808532e5ce316b3c010929493c0244f3d37593afd6de04f71821d5136d9', # zlib-1.2.12.tar.gz + 'f35eb05334a4f8d7b40b6c5610a6369f654863b5fa1a19c2507888f918025238', # zlib-1.2.12_fix-CC-logic-in-configure.patch +] + +# need to take care of $CFLAGS ourselves with dummy toolchain +# we need to add -fPIC, but should also include -O* option to avoid +# compiling with -O0 (default for GCC) +buildopts = 'CFLAGS="-O2 -fPIC"' + +sanity_check_paths = { + 'files': ['include/zconf.h', 'include/zlib.h', 'lib/libz.a', + 'lib/libz.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'lib'