# IT4Innovations
# LK 2023

easyblock = "CMakeMake"

name = "openPMD-api"
version = "0.15.2"

homepage = 'https://github.com/openPMD/openPMD-api'
description = """openPMD is an open meta-data schema that provides meaning and self-description 
for data sets in science and engineering. See the openPMD standard for details of this schema.
This library provides a reference API for openPMD data handling. Since openPMD is a schema 
(or markup) on top of portable, hierarchical file formats, this library implements various 
backends such as HDF5, ADIOS2 and JSON. Writing & reading through those backends and their 
associated files are supported for serial and MPI-parallel workflows.
"""

toolchain = {'name': 'gompi', 'version': '2020b'}

source_urls = ['https://github.com/openPMD/openPMD-api/archive/refs/tags/']
sources = ['%(version)s.tar.gz']
checksums = ['fbe3b356fe6f4589c659027c8056844692c62382e3ec53b953bed1c87e58ba13']

builddependencies = [('CMake', '3.20.1')]

dependencies = [
    ('HDF5', '1.10.7'),
    ('ADIOS2', '2.9.2'),
]

configopts = '-DopenPMD_USE_ADIOS2=ON -DopenPMD_USE_HDF5=ON '

separate_build_dir = True

sanity_check_paths = {
    'files': ['bin/openpmd-ls',  'lib/libopenPMD.so'],
    'dirs': ['bin', 'include', 'lib64']
}

moduleclass = 'tools'