Skip to content
Snippets Groups Projects
Commit 4ce49ac0 authored by Jens Henrik Goebbert's avatar Jens Henrik Goebbert
Browse files

initial commit

parent 8f4d0c8c
Branches
No related tags found
No related merge requests found
easyblock = 'CMakeMake'
name = 'ADIOS2'
version = '2.8.3'
homepage = 'https://www.olcf.ornl.gov/center-projects/adios/'
description = """The Adaptable IO System (ADIOS) provides a simple,
flexible way for scientists to describe the data in their code that may
need to be written, read, or processed outside of the running
simulation."""
toolchain = {'name': 'gompi', 'version': '2022a'}
toolchainopts = {'pic': True, 'usempi': False}
github_account = 'ornladios'
source_urls = [GITHUB_SOURCE]
sources = ['v%(version)s.tar.gz']
checksums = [
{'v2.8.3.tar.gz': '4906ab1899721c41dd918dddb039ba2848a1fb0cf84f3a563a1179b9d6ee0d9f'},
]
builddependencies = [
('CMake', '3.23.1'),
('pkgconf', '1.8.0'),
]
dependencies = [
('Python', '3.10.4'),
('SciPy-Stack', '2022a', '', ('gcccoremkl', '11.3.0-2022.1.0')),
('zlib', '1.2.12'),
('bzip2', '1.0.8'),
('Szip', '2.1.1'),
('SZ', '2.1.12.5'),
('zfp', '0.5.5'),
('Blosc', '1.21.1'),
('HDF5', '1.12.2'),
('mpi4py', '3.1.4'),
('libpng', '1.6.37'),
('ZeroMQ', '4.3.4'),
('nlohmann_json', '3.10.5'),
('pybind11', '2.9.2'),
]
separate_build_dir = True
configopts = "-DCMAKE_VERBOSE_MAKEFILE=ON "
configopts += "-DADIOS2_USE_Fortran=ON "
configopts += "-DADIOS2_USE_MPI=ON "
# Examples/Testing
configopts += "-DADIOS2_BUILD_EXAMPLES=OFF "
configopts += "-DADIOS2_BUILD_EXAMPLES_EXPERIMENTAL=OFF "
configopts += "-DADIOS2_BUILD_TESTING=OFF "
# Compression
configopts += "-DADIOS2_USE_BZip2=ON "
configopts += "-DBZIP2_DIR=${EBROOTBZIP2} "
configopts += "-DADIOS2_USE_PNG=ON "
configopts += "-DPNG_DIR=${EBROOTLIBPNG} "
configopts += "-DADIOS2_USE_SZ=ON "
configopts += "-DSZ_DIR=${EBROOTSZ} "
configopts += "-DADIOS2_USE_ZFP=ON "
configopts += "-DZFP_DIR=${EBROOTZFP} "
configopts += "-DADIOS2_USE_Blosc=ON "
configopts += "-DBLOSC_DIR=${EBROOTBLOSC} "
configopts += "-DZLIB_DIR=${EBROOTZLIB} "
configopts += "-DADIOS2_USE_MGARD=OFF "
# HDF5
configopts += "-DADIOS2_USE_HDF5=ON "
configopts += "-DHDF5_DIR=${EBROOTHDF5} "
# ZeroMQ
configopts += "-DADIOS2_USE_ZeroMQ=ON "
configopts += "-DZeroMQ_DIR=${EBROOTZEROMQ} "
# Python
configopts += "-DADIOS2_USE_Python=ON "
configopts += "-DPython_DIR=${EBROOTPYTHON} "
# System Virtual Shared Memory
configopts += "-DADIOS2_USE_SysVShMem=ON "
# Strong Staging Coupler
# https://adios2.readthedocs.io/en/latest/engines/engines.html#ssc-strong-staging-coupler
configopts += "-DADIOS2_USE_SSC=ON "
# Sustainable Staging Transport
# https://adios2.readthedocs.io/en/latest/engines/engines.html#sst-sustainable-staging-transport
configopts += "-DADIOS2_USE_SST=ON "
# Can optionally use LibFabric for RDMA transport: if -DLIBFABRIC_ROOT=<path> is set.
# DataMan
# https://adios2.readthedocs.io/en/latest/engines/engines.html#dataman-for-wide-area-network-data-staging
configopts += "-DADIOS2_USE_DataMan=ON "
# DataSpaces (mind. version 1.8)
configopts += "-DADIOS2_USE_DataSpaces=OFF "
# external libs
configopts += "-DADIOS2_USE_EXTERNAL_PYBIND11=ON "
configopts += "-Dpybind11_DIR=${EBROOTPYBIND11} "
configopts += "-DADIOS2_USE_EXTERNAL_NLOHMANN_JSON=ON "
configopts += "-Dnlohmann_json_DIR=${EBROOTNLOHMANNMINJSON} "
# more options
configopts += "-DADIOS2_USE_IME=OFF "
configopts += "-DADIOS2_USE_Profiling=OFF "
configopts += "-DADIOS2_USE_Table=OFF "
# configopts += "-DADIOS2_USE_Endian_Reverse=ON "
runtest = False
# create pkgconfig files
postinstallcmds = [
'ln -s %(installdir)s/lib64 %(installdir)s/lib',
'mkdir %(installdir)s/lib/pkgconfig',
"""echo -e "Name: adios2
Description: ADIOS2 I/O library
Version: %(version)s
Requires: bzip2, zfp, sz, libpng, blosc
Libs: $(%(installdir)s/bin/adios2-config --c-libs)
Cflags: $(%(installdir)s/bin/adios2-config --c-flags)" > %(installdir)s/lib/pkgconfig/adios2.pc""",
"""echo -e "Name: adios2_cxx
Description: ADIOS2 I/O library (C++)
Version: %(version)s
Libs: $(%(installdir)s/bin/adios2-config --cxx-libs)
Cflags: $(%(installdir)s/bin/adios2-config --cxx-flags)" > %(installdir)s/lib/pkgconfig/adios2_cxx.pc""",
"""echo -e "Name: adios2_f
Description: ADIOS2 I/O library (Fortran)
Version: %(version)s
Libs: $(%(installdir)s/bin/adios2-config --fortran-libs)
Cflags: $(%(installdir)s/bin/adios2-config --fortran-flags)" > %(installdir)s/lib/pkgconfig/adios2_f.pc""",
]
sanity_check_paths = {
'files': [
'bin/adios2-config', 'bin/bpls', 'bin/bp4dbg',
'include/adios2.h', 'include/adios2_c.h', 'include/adios2/fortran/adios2.mod',
'lib64/libadios2_core.so', 'lib64/libadios2_core_mpi.so', 'lib64/cmake/adios2/adios2-config.cmake',
'lib64/libadios2_c.so', 'lib64/libadios2_c_mpi.so', 'lib64/libadios2_cxx11.so',
'lib64/libadios2_cxx11_mpi.so', 'lib64/libadios2_fortran.so', 'lib64/libadios2_fortran_mpi.so'
],
'dirs': ['bin', 'include', 'lib']
}
# modextrapaths = {
# 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages',
# }
modextravars = {
'ADIOS2_PKGCONFIG_LIBS': 'adios2',
'ADIOS2_CXX_PKGCONFIG_LIBS': 'adios2_cxx',
'ADIOS2_FORTRAN_PKGCONFIG_LIBS': 'adios2_f',
}
moduleclass = 'data'
easyblock = 'CMakeMake'
name = 'ADIOS2'
version = '2.8.3'
homepage = 'https://www.olcf.ornl.gov/center-projects/adios/'
description = """The Adaptable IO System (ADIOS) provides a simple,
flexible way for scientists to describe the data in their code that may
need to be written, read, or processed outside of the running
simulation."""
toolchain = {'name': 'gpsmkl', 'version': '2022a'}
toolchainopts = {'pic': True, 'usempi': False}
github_account = 'ornladios'
source_urls = [GITHUB_SOURCE]
sources = ['v%(version)s.tar.gz']
checksums = [
{'v2.8.3.tar.gz': '4906ab1899721c41dd918dddb039ba2848a1fb0cf84f3a563a1179b9d6ee0d9f'},
]
builddependencies = [
('CMake', '3.23.1'),
('pkgconf', '1.8.0'),
]
dependencies = [
('Python', '3.10.4'),
('SciPy-Stack', '2022a', '', ('gcccoremkl', '11.3.0-2022.1.0')),
('zlib', '1.2.12'),
('bzip2', '1.0.8'),
('Szip', '2.1.1'),
('SZ', '2.1.12.5'),
('zfp', '0.5.5'),
('Blosc', '1.21.1'),
('HDF5', '1.12.2'),
('mpi4py', '3.1.4'),
('libpng', '1.6.37'),
('ZeroMQ', '4.3.4'),
('nlohmann_json', '3.10.5'),
('pybind11', '2.9.2'),
]
separate_build_dir = True
configopts = "-DCMAKE_VERBOSE_MAKEFILE=ON "
configopts += "-DADIOS2_USE_Fortran=ON "
configopts += "-DADIOS2_USE_MPI=ON "
# Examples/Testing
configopts += "-DADIOS2_BUILD_EXAMPLES=OFF "
configopts += "-DADIOS2_BUILD_EXAMPLES_EXPERIMENTAL=OFF "
configopts += "-DADIOS2_BUILD_TESTING=OFF "
# Compression
configopts += "-DADIOS2_USE_BZip2=ON "
configopts += "-DBZIP2_DIR=${EBROOTBZIP2} "
configopts += "-DADIOS2_USE_PNG=ON "
configopts += "-DPNG_DIR=${EBROOTLIBPNG} "
configopts += "-DADIOS2_USE_SZ=ON "
configopts += "-DSZ_DIR=${EBROOTSZ} "
configopts += "-DADIOS2_USE_ZFP=ON "
configopts += "-DZFP_DIR=${EBROOTZFP} "
configopts += "-DADIOS2_USE_Blosc=ON "
configopts += "-DBLOSC_DIR=${EBROOTBLOSC} "
configopts += "-DZLIB_DIR=${EBROOTZLIB} "
configopts += "-DADIOS2_USE_MGARD=OFF "
# HDF5
configopts += "-DADIOS2_USE_HDF5=ON "
configopts += "-DHDF5_DIR=${EBROOTHDF5} "
# ZeroMQ
configopts += "-DADIOS2_USE_ZeroMQ=ON "
configopts += "-DZeroMQ_DIR=${EBROOTZEROMQ} "
# Python
configopts += "-DADIOS2_USE_Python=ON "
configopts += "-DPython_DIR=${EBROOTPYTHON} "
# System Virtual Shared Memory
configopts += "-DADIOS2_USE_SysVShMem=ON "
# Strong Staging Coupler
# https://adios2.readthedocs.io/en/latest/engines/engines.html#ssc-strong-staging-coupler
configopts += "-DADIOS2_USE_SSC=ON "
# Sustainable Staging Transport
# https://adios2.readthedocs.io/en/latest/engines/engines.html#sst-sustainable-staging-transport
configopts += "-DADIOS2_USE_SST=ON "
# Can optionally use LibFabric for RDMA transport: if -DLIBFABRIC_ROOT=<path> is set.
# DataMan
# https://adios2.readthedocs.io/en/latest/engines/engines.html#dataman-for-wide-area-network-data-staging
configopts += "-DADIOS2_USE_DataMan=ON "
# DataSpaces (mind. version 1.8)
configopts += "-DADIOS2_USE_DataSpaces=OFF "
# external libs
configopts += "-DADIOS2_USE_EXTERNAL_PYBIND11=ON "
configopts += "-Dpybind11_DIR=${EBROOTPYBIND11} "
configopts += "-DADIOS2_USE_EXTERNAL_NLOHMANN_JSON=ON "
configopts += "-Dnlohmann_json_DIR=${EBROOTNLOHMANNMINJSON} "
# more options
configopts += "-DADIOS2_USE_IME=OFF "
configopts += "-DADIOS2_USE_Profiling=OFF "
configopts += "-DADIOS2_USE_Table=OFF "
# configopts += "-DADIOS2_USE_Endian_Reverse=ON "
runtest = False
# create pkgconfig files
postinstallcmds = [
'ln -s %(installdir)s/lib64 %(installdir)s/lib',
'mkdir %(installdir)s/lib/pkgconfig',
"""echo -e "Name: adios2
Description: ADIOS2 I/O library
Version: %(version)s
Requires: bzip2, zfp, sz, libpng, blosc
Libs: $(%(installdir)s/bin/adios2-config --c-libs)
Cflags: $(%(installdir)s/bin/adios2-config --c-flags)" > %(installdir)s/lib/pkgconfig/adios2.pc""",
"""echo -e "Name: adios2_cxx
Description: ADIOS2 I/O library (C++)
Version: %(version)s
Libs: $(%(installdir)s/bin/adios2-config --cxx-libs)
Cflags: $(%(installdir)s/bin/adios2-config --cxx-flags)" > %(installdir)s/lib/pkgconfig/adios2_cxx.pc""",
"""echo -e "Name: adios2_f
Description: ADIOS2 I/O library (Fortran)
Version: %(version)s
Libs: $(%(installdir)s/bin/adios2-config --fortran-libs)
Cflags: $(%(installdir)s/bin/adios2-config --fortran-flags)" > %(installdir)s/lib/pkgconfig/adios2_f.pc""",
]
sanity_check_paths = {
'files': [
'bin/adios2-config', 'bin/bpls', 'bin/bp4dbg',
'include/adios2.h', 'include/adios2_c.h', 'include/adios2/fortran/adios2.mod',
'lib64/libadios2_core.so', 'lib64/libadios2_core_mpi.so', 'lib64/cmake/adios2/adios2-config.cmake',
'lib64/libadios2_c.so', 'lib64/libadios2_c_mpi.so', 'lib64/libadios2_cxx11.so',
'lib64/libadios2_cxx11_mpi.so', 'lib64/libadios2_fortran.so', 'lib64/libadios2_fortran_mpi.so'
],
'dirs': ['bin', 'include', 'lib']
}
# modextrapaths = {
# 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages',
# }
modextravars = {
'ADIOS2_PKGCONFIG_LIBS': 'adios2',
'ADIOS2_CXX_PKGCONFIG_LIBS': 'adios2_cxx',
'ADIOS2_FORTRAN_PKGCONFIG_LIBS': 'adios2_f',
}
moduleclass = 'data'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment