# IT4Innovations
# LK 2024

easyblock = 'ConfigureMake'

name = 'UCC'
version = '1.3.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': '12.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.3.0.tar.gz': 'b56379abe5f1c125bfa83be305d78d81a64aa271b7b5fff0ac17b86725ff3acf'},
    {'UCC-1.1.0-multiple_component_paths.patch': '3081d0f694331daa4a88a0fa3fb54b9a918015248ae5eb7b3157b924abd31bee'},
]

builddependencies = [
    ('binutils', '2.39'),
    ('Autotools', '20220317'),
]

dependencies = [
    ('UCX', '1.16.0'),
]

preconfigopts = "./autogen.sh && "

sanity_check_paths = {
    'files': ['bin/ucc_info'],
    'dirs': ['include', 'lib']
}

sanity_check_commands = ["ucc_info -c"]

moduleclass = 'lib'
