libcxi/shs-12.0.1 (libcxi-shs-12.0.1.eb)
Install with the EasyBuild-user module:
To access module help after installation and get reminded for which stacks and partitions the module is installed, usemodule spider libcxi/shs-12.0.1
.
EasyConfig:
# Developed by Maciej Szpindler for the LUMI consortium.
# This recipe is a custom CXI provider for a custom libfabric.
easyblock = 'ConfigureMake'
name = 'libcxi'
version = 'shs-12.0.1'
homepage = 'https://github.com/HewlettPackard/shs-libcxi'
whatis = [
'Description: The CXI library provides interfaces which interact directly with CXI drivers.'
]
description = """
The CXI library provides interfaces which interact directly with CXI drivers.
CXI drivers support communication over the Cray Cassini NIC.
"""
toolchain = SYSTEM
sources = [
{
'filename': '%(name)s-%(version)s.tar.gz',
'git_config': {
'url': 'https://github.com/HewlettPackard',
'repo_name': 'shs-libcxi',
'commit': 'release/%(version)s'
},
},
{
'filename': 'cassini-headers.tar.gz',
'git_config': {
'url': 'https://github.com/HewlettPackard',
'repo_name': 'shs-cassini-headers',
'commit': 'release/%(version)s',
'clone_into': '../cassini-headers/install'
},
},
{
'filename': 'cxi-driver.tar.gz',
'git_config': {
'url': 'https://github.com/HewlettPackard',
'repo_name': 'shs-cxi-driver',
'commit': 'release/%(version)s',
'clone_into': '../cxi-driver'
},
},
]
# No checksums as they are not reproducible with the EasyBuild installation for which this
# EasyConfig was developed.
builddependencies = [
('rocm', '6.2.2', '', SYSTEM),
('libconfig', '1.7.3', '', SYSTEM),
('libuv', '1.48.0', '', SYSTEM),
('lm-sensors', '3.6.0', '', SYSTEM),
('FUSE', '2.9.9', '', SYSTEM),
]
preconfigopts = './autogen.sh && '
configopts = 'CFLAGS="-Wno-error -D_FILE_OFFSET_BITS=64 -I../cxi-driver/include" --with-udevrulesdir=%(installdir)s/lib/udev/rules.d --with-systemdsystemunitdir=%(installdir)s/lib/systemd/system '
postinstallcmds = [
'cp -r ../cxi-driver/include/linux %(installdir)s/include && cp -r ../cxi-driver/include/uapi %(installdir)s/include && cp -r ../cassini-headers/install/include/* %(installdir)s/include && cp -r ../cassini-headers/install/share %(installdir)s'
]
sanity_check_paths = {
'files': ['lib/libcxi.%s' % SHLIB_EXT,
'include/libcxi/libcxi.h'],
'dirs': ['lib'],
}
moduleclass = 'lib'