new file: c/CGAL/CGAL-5.2-gompi-2020b.eb

new file:   c/CGAL/CGAL-5.2-iimpi-2020b.eb
	new file:   g/gnuplot/gnuplot-5.4.1-GCCcore-10.2.0.eb
	new file:   h/HDF5/HDF5-1.10.7-iimpi-2020b.eb
	new file:   m/Mako/Mako-1.1.3-GCCcore-10.2.0.eb
	modified:   o/OpenFOAM/OpenFOAM-v2106-foss-2020b.eb
	new file:   o/OpenFOAM/OpenFOAM-v2106-intel-2020b.eb
	new file:   p/ParaView/ParaView-5.9.1-intel-2020b-mpi.eb
	new file:   q/Qt5/Qt5-5.14.2-GCCcore-10.2.0.eb
	new file:   s/SciPy-bundle/SciPy-bundle-2020.11-intel-2020b.eb
	modified:   s/SciPy-bundle/SciPy-bundle-2021.05-intel-2020b.eb
This commit is contained in:
Lukas Krupcik 2021-08-31 14:20:56 +02:00
parent 8827a2bbfa
commit 8db463ed41
11 changed files with 450 additions and 2 deletions

@ -0,0 +1,41 @@
# IT4Innovtions
# LK 2021
name = 'CGAL'
version = '5.2'
homepage = 'https://www.cgal.org/'
description = """The goal of the CGAL Open Source Project is to provide easy access to efficient
and reliable geometric algorithms in the form of a C++ library."""
toolchain = {'name': 'gompi', 'version': '2020b'}
toolchainopts = {'strict': True}
source_urls = ['https://github.com/CGAL/cgal/releases/download/v%(version)s/']
sources = [SOURCE_TAR_XZ]
checksums = ['744c86edb6e020ab0238f95ffeb9cf8363d98cde17ebb897d3ea93dac4145923']
builddependencies = [
('CMake', '3.18.4'),
('Eigen', '3.3.8'),
]
dependencies = [
('zlib', '1.2.11'),
('Python', '3.8.6'),
('Boost', '1.74.0'),
('MPFR', '4.1.0'),
('GMP', '6.2.0'),
('Mesa', '20.2.1'),
('libGLU', '9.0.1'),
('Qt5', '5.14.2'),
]
configopts = "-DCGAL_HEADER_ONLY=OFF "
configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include\;$EBROOTLIBGLU/include "
configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT
configopts += "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT
configopts += "-DWITH_ZLIB=ON -DWITH_MPFR=ON -DWITH_OpenGL=ON -DWITH_Eigen3=ON "
configopts += "-DWITH_GMPXX=ON -DWITH_LAPACK=ON -DWITH_BLAS=ON "
moduleclass = 'numlib'

@ -0,0 +1,41 @@
# IT4Innovtions
# LK 2021
name = 'CGAL'
version = '5.2'
homepage = 'https://www.cgal.org/'
description = """The goal of the CGAL Open Source Project is to provide easy access to efficient
and reliable geometric algorithms in the form of a C++ library."""
toolchain = {'name': 'iimpi', 'version': '2020b'}
toolchainopts = {'strict': True}
source_urls = ['https://github.com/CGAL/cgal/releases/download/v%(version)s/']
sources = [SOURCE_TAR_XZ]
checksums = ['744c86edb6e020ab0238f95ffeb9cf8363d98cde17ebb897d3ea93dac4145923']
builddependencies = [
('CMake', '3.18.4'),
('Eigen', '3.3.8'),
]
dependencies = [
('zlib', '1.2.11'),
('Python', '3.8.6'),
('Boost', '1.74.0'),
('MPFR', '4.1.0'),
('GMP', '6.2.0'),
('Mesa', '20.2.1'),
('libGLU', '9.0.1'),
('Qt5', '5.14.2'),
]
configopts = "-DCGAL_HEADER_ONLY=OFF "
configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include\;$EBROOTLIBGLU/include "
configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT
configopts += "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT
configopts += "-DWITH_ZLIB=ON -DWITH_MPFR=ON -DWITH_OpenGL=ON -DWITH_Eigen3=ON "
configopts += "-DWITH_GMPXX=ON -DWITH_LAPACK=ON -DWITH_BLAS=ON "
moduleclass = 'numlib'

@ -0,0 +1,48 @@
# IT4Innovations
# # LK 2021
easyblock = 'ConfigureMake'
name = 'gnuplot'
version = '5.4.1'
homepage = 'http://gnuplot.sourceforge.net/'
description = """Portable interactive, function plotting utility"""
toolchain = {'name': 'GCCcore', 'version': '10.2.0'}
source_urls = [('https://sourceforge.net/projects/gnuplot/files/gnuplot/%(version)s', 'download')]
sources = [SOURCE_TAR_GZ]
checksums = ['6b690485567eaeb938c26936e5e0681cf70c856d273cc2c45fabf64d8bc6590e']
builddependencies = [
('binutils', '2.35'),
('pkg-config', '0.29.2'),
('Autotools', '20200321'),
]
dependencies = [
('ncurses', '6.2'),
('cairo', '1.16.0'),
('libjpeg-turbo', '2.0.5'),
('libpng', '1.6.37'),
('libgd', '2.3.0'),
('Pango', '1.47.0'),
('libcerf', '1.14'),
('X11', '20201008'),
('Qt5', '5.14.2'),
('Lua', '5.4.2'),
]
preconfigopts = 'autoreconf && '
configopts = '--with-qt=qt5 --without-latex '
sanity_check_paths = {
'files': ['bin/gnuplot'],
'dirs': []
}
# make sure that pdf terminal type is available
sanity_check_commands = ["gnuplot -e 'set terminal pdf'"]
moduleclass = 'vis'

@ -0,0 +1,29 @@
# IT4Innovations
# LK 2021
name = 'HDF5'
version = '1.10.7'
homepage = 'https://portal.hdfgroup.org/display/support'
description = """HDF5 is a data model, library, and file format for storing and managing data.
It supports an unlimited variety of datatypes, and is designed for flexible
and efficient I/O and for high volume and complex data."""
toolchain = {'name': 'iimpi', 'version': '2020b'}
toolchainopts = {'pic': True, 'usempi': True}
source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src']
sources = [SOURCELOWER_TAR_GZ]
checksums = ['7a1a0a54371275ce2dfc5cd093775bb025c365846512961e7e5ceaecb437ef15']
# AMD/intel cpu
import os
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
prebuildopts = "echo %(builddir)s && while read i; do echo $i; sed 's|-xHost|-march=core-avx2|g' -i $i; done < <(grep xHost %(builddir)s -R | cut -d ':' -f 1 | sort -u) && "
dependencies = [
('zlib', '1.2.11'),
('Szip', '2.1.1'),
]
moduleclass = 'data'

@ -0,0 +1,29 @@
# IT4Innovations
# LK 2021
easyblock = 'PythonPackage'
name = 'Mako'
version = '1.1.3'
homepage = 'https://www.makotemplates.org'
description = """A super-fast templating language that borrows the best ideas from the existing templating languages"""
toolchain = {'name': 'GCCcore', 'version': '10.2.0'}
sources = [SOURCE_TAR_GZ]
checksums = ['8195c8c1400ceb53496064314c6736719c6f25e7479cd24c77be3d9361cddc27']
download_dep_fail = True
use_pip = True
sanity_pip_check = True
builddependencies = [('binutils', '2.35')]
multi_deps = {'Python': ['3.8.6']}
sanity_check_paths = {
'files': ['bin/mako-render'],
'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'],
}
moduleclass = 'devel'

@ -31,9 +31,9 @@ dependencies = [
# OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes)
('METIS', '5.1.0'),
('SCOTCH', '6.1.0'),
('CGAL', '3.2.1'),
('CGAL', '5.2'),
('ParaView', '5.9.1', '-mpi'),
('gnuplot', '5.4.2'),
('gnuplot', '5.4.1'),
]
builddependencies = [

@ -0,0 +1,45 @@
# IT4Innovations
# LK 2021
name = 'OpenFOAM'
version = 'v2106'
homepage = 'https://www.openfoam.com/'
description = """OpenFOAM is a free, open source CFD software package.
OpenFOAM has an extensive range of features to solve anything from complex fluid flows
involving chemical reactions, turbulence and heat transfer,
to solid dynamics and electromagnetics."""
toolchain = {'name': 'intel', 'version': '2020b'}
toolchainopts = {'cstd': 'c++11'}
source_urls = ['https://sourceforge.net/projects/openfoam/files/%(version)s/']
sources = [SOURCE_TGZ]
patches = [
('OpenFOAM-v2012-cleanup.patch', 1),
'OpenFOAM-v1906-wmake-ompi.patch',
]
checksums = [
'11e41e5b9a253ef592a8f6b79f6aded623b28308192d02cec1327078523b5a37', # OpenFOAM-v2106.tgz
'cdd2597a1ac1448e9bd33a364a8dfe17f51cc9ab5a8e0ab67cf92bba3ed9da43', # OpenFOAM-v2012-cleanup.patch
'518e27683c5c41400cfbc17b31effa50b31b25916dccbf85b18b0b955f642505', # OpenFOAM-v1906-wmake-ompi.patch
]
dependencies = [
('libreadline', '8.0'),
('ncurses', '6.2'),
# OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes)
('METIS', '5.1.0'),
('SCOTCH', '6.1.0'),
('CGAL', '5.2'),
('ParaView', '5.9.1', '-mpi'),
('gnuplot', '5.4.1'),
]
builddependencies = [
('Bison', '3.7.1'),
('CMake', '3.18.4'),
('flex', '2.6.4'),
]
moduleclass = 'cae'

@ -0,0 +1,60 @@
# IT4Innovations
# LK 2021
easyblock = 'CMakeMake'
name = 'ParaView'
version = '5.9.1'
versionsuffix = '-mpi'
homepage = "https://www.paraview.org"
description = "ParaView is a scientific parallel visualizer."
toolchain = {'name': 'intel', 'version': '2020b'}
toolchainopts = {'pic': True, 'usempi': True}
local_download_suffix = 'download.php?submit=Download&version=v%(version_major_minor)s&type=source&os=all&downloadFile='
source_urls = ['https://www.paraview.org/paraview-downloads/%s' % local_download_suffix]
sources = ["%(name)s-v%(version)s.tar.gz"]
checksums = ['efbcba00ba38c23d0ada1bde7144a8745caa308d9e1f94a4a71d8af63732266f']
dependencies = [
('Python', '3.8.6'),
('SciPy-bundle', '2020.11'),
('XZ', '5.2.5'),
('HDF5', '1.10.7'),
('netCDF', '4.7.4'),
('libGLU', '9.0.1'),
('X11', '20201008'),
('Mesa', '20.2.1'),
('Qt5', '5.14.2'),
('zlib', '1.2.11'),
('FFmpeg', '4.3.1'),
('Szip', '2.1.1'),
]
builddependencies = [('CMake', '3.18.4')]
separate_build_dir = True
# Paraview
configopts = '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON -DPARAVIEW_BUILD_SHARED_LIBS=ON '
configopts += '-DPARAVIEW_USE_MPI=ON '
configopts += '-DPARAVIEW_ENABLE_FFMPEG=ON '
configopts += '-DPARAVIEW_USE_PYTHON=ON '
configopts += '-DPython3_ROOT_DIR=$EBROOTPYTHON '
# OpenGL & Mesa
configopts += '-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s ' % SHLIB_EXT
configopts += '-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include '
sanity_check_paths = {
'files': ['bin/paraview', 'bin/pvpython'],
'dirs': ['include/paraview-%(version_major_minor)s', 'lib/python%(pyshortver)s/site-packages'],
}
sanity_check_commands = ['python -c "import paraview"']
modextrapaths = {'PYTHONPATH': ['lib64/python%(pyshortver)s/site-packages', 'lib/python%(pyshortver)s/site-packages']}
moduleclass = 'vis'

@ -0,0 +1,84 @@
# IT4Innovatins
# LK 2021
easyblock = 'EB_Qt'
name = 'Qt5'
version = '5.14.2'
homepage = 'https://qt.io/'
description = "Qt is a comprehensive cross-platform C++ application framework."
toolchain = {'name': 'GCCcore', 'version': '10.2.0'}
# disabling use of -ftree-vectorize is required to avoid compilation failures on some systems (e.g. Intel Skylake X)
toolchainopts = {'vectorize': False}
source_urls = [
'https://download.qt.io/official_releases/qt/%(version_major_minor)s/%(version)s/single/',
'https://download.qt.io/archive/qt/%(version_major_minor)s/%(version)s/single/',
'https://download.qt.io/new_archive/qt/%(version_major_minor)s/%(version)s/single/',
]
sources = ['qt-everywhere-src-%(version)s.tar.xz']
patches = [
'Qt5-5.13.1_fix-avx2.patch',
'Qt5-5.13.1_fix-qmake-libdir.patch',
'Qt5-5.14.1_fix-OF-Gentoo.patch',
'Qt5-5.14.2_fix-missing-stdint.patch',
'Qt5-5.14.2_fix-webengine-bison.patch',
'Qt5-5.14.2_fix-std-runtime_error.patch',
'Qt5-5.14.2_fix-include-math.patch',
]
checksums = [
'c6fcd53c744df89e7d3223c02838a33309bd1c291fcb6f9341505fe99f7f19fa', # qt-everywhere-src-5.14.2.tar.xz
'6f46005f056bf9e6ff3e5d012a874d18ee03b33e685941f2979c970be91a9dbc', # Qt5-5.13.1_fix-avx2.patch
'511ca9c0599ceb1989f73d8ceea9199c041512d3a26ee8c5fd870ead2c10cb63', # Qt5-5.13.1_fix-qmake-libdir.patch
'0b9defb7ce75314d85bebe07e143db7f7de316fec64c17cbd13f7eec5d2d1afa', # Qt5-5.14.1_fix-OF-Gentoo.patch
'648e2a92d5ea139543db5d01a80aa33d4721e52bb59c785490b64497b0ede4ab', # Qt5-5.14.2_fix-missing-stdint.patch
'6ace4735e35dee95d6b6c7eea3a7c46c264589a319d745310282ee724f632861', # Qt5-5.14.2_fix-webengine-bison.patch
'290d91efe8fc7c6daedf01f4a055ff30123c987d41b1832a34920ef521579f5c', # Qt5-5.14.2_fix-std-runtime_error.patch
'32c975b4ad12150f872554f1960c7108bc9c994e318988bab27e762a6c666fa2', # Qt5-5.14.2_fix-include-math.patch
]
builddependencies = [
('binutils', '2.35'),
('pkg-config', '0.29.2'),
# deps for QtWebEngine
('Bison', '3.7.1'),
('flex', '2.6.4'),
('gperf', '3.1'),
('Ninja', '1.10.1'),
# ('Python', '2.7.18'),
('re2c', '2.0.3')
]
dependencies = [
('double-conversion', '3.1.5'),
('GLib', '2.66.1'),
('PCRE2', '10.35'),
('libpng', '1.6.37'),
# deps for QtWebEngine
('X11', '20201008'),
('fontconfig', '2.13.92'),
('DBus', '1.13.18'),
('libevent', '2.1.12'),
('libGLU', '9.0.1'),
('libjpeg-turbo', '2.0.5'),
('NSS', '3.57'),
('snappy', '1.1.8'),
('JasPer', '2.0.24'),
('bzip2', '1.0.8'),
# OS dependency should be preferred if the os version is more recent then this version,
# it is nice to have an up to date openssl for security reasons
# ('OpenSSL', '1.1.1h'), # Qt5 > 5.15.0 requires OpenSSL 1.1.1
]
osdependencies = [OS_PKG_OPENSSL_DEV]
# qtgamepad needs recent kernel/libevdev (fails on RHEL 6.x)
# qtwayland fails to build on (some) Centos 7 systems
configopts = '-skip qtgamepad -skip qtwayland'
# make sure QtWebEngine component is being built & installed
check_qtwebengine = True
moduleclass = 'devel'

@ -0,0 +1,70 @@
# IT4Innovations
# LK 2021
easyblock = 'PythonBundle'
name = 'SciPy-bundle'
version = '2020.11'
homepage = 'https://python.org/'
description = "Bundle of Python packages for scientific software"
toolchain = {'name': 'intel', 'version': '2020b'}
toolchainopts = {'pic': True, 'lowopt': True}
builddependencies = [('hypothesis', '5.41.2')]
dependencies = [
('Python', '3.8.6'),
('pybind11', '2.6.0'), # required by scipy
]
use_pip = True
preconfigopts = [ 'export MKL_DEBUG_CPU_TYPE=5 && ']
exts_default_options = {'source_urls': [PYPI_SOURCE]}
# order is important!
exts_list = [
('numpy', '1.19.4', {
'source_tmpl': '%(name)s-%(version)s.zip',
'patches': [
'numpy-1.18.2-mkl.patch',
'numpy-1.19.4_disable-broken-test.patch',
],
'checksums': [
'141ec3a3300ab89c7f2b0775289954d193cc8edb621ea05f99db9cb181530512', # numpy-1.19.4.zip
'ea25ad5c0148c1398d282f0424e642fb9815a1a80f4512659b018e2adc378bcf', # numpy-1.18.2-mkl.patch
#numpy-1.19.4_disable-broken-test.patch
'9cc8bbd106ecba603254536101f53fdc200e81d43ca4800b5a84be9b645e9320',
],
}),
('scipy', '1.5.4', {
'checksums': ['4a453d5e5689de62e5d38edf40af3f17560bfd63c9c5bd228c18c1f99afa155b'],
}),
('mpi4py', '3.0.3', {
'checksums': ['012d716c8b9ed1e513fcc4b18e5af16a8791f51e6d1716baccf988ad355c5a1f'],
}),
('numexpr', '2.7.1', {
'checksums': ['b0d239d9827e1bcee08344fd05835823bc60aff97232e35a928214d03ff802b1'],
}),
('Bottleneck', '1.3.2', {
'checksums': ['20179f0b66359792ea283b69aa16366419132f3b6cf3adadc0c48e2e8118e573'],
}),
('pandas', '1.1.4', {
'checksums': ['a979d0404b135c63954dea79e6246c45dd45371a88631cdbb4877d844e6de3b6'],
# strip out use of -Werror to avoid failing compilation due to Intel compiler warning
'preinstallopts': """sed -i 's@extra_compile_args = \["-Werror"\]@extra_compile_args = []@g' setup.py && """,
}),
('mpmath', '1.1.0', {
'checksums': ['fc17abe05fbab3382b61a123c398508183406fa132e0223874578e20946499f6'],
}),
('deap', '1.3.1', {
'checksums': ['11f54493ceb54aae10dde676577ef59fc52d52f82729d5a12c90b0813c857a2f'],
}),
]
sanity_pip_check = True
moduleclass = 'lang'

@ -28,6 +28,7 @@ exts_list = [
'patches': [
'numpy-1.20.3_skip-ppc-long-complex-test.patch',
'numpy-1.20.3_xfail-test-nan.patch',
'numpy-1.18.2-mkl.patch',
],
'checksums': [
'e55185e51b18d788e49fe8305fd73ef4470596b33fc2c1ceb304566b99c71a69', # numpy-1.20.3.zip