Skip to content

Commit

Permalink
Merge pull request #15938 from kosl/20220731235853_new_pr_OpenFOAMv2206
Browse files Browse the repository at this point in the history
{math,vis}[GCCcore/11.3.0] OpenFOAM v2206, ParaView v5.10.1, CGAL v4.14.3, ... w/ Python 3.10.4
  • Loading branch information
boegel authored Sep 6, 2022
2 parents c050a23 + cb3e30b commit 51fd6fc
Show file tree
Hide file tree
Showing 6 changed files with 249 additions and 0 deletions.
38 changes: 38 additions & 0 deletions easybuild/easyconfigs/c/CGAL/CGAL-4.14.3-gompi-2022a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name = 'CGAL'
version = '4.14.3'

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': '2022a'}
toolchainopts = {'strict': True}

source_urls = ['https://github.com/CGAL/cgal/releases/download/releases%2FCGAL-%(version)s']
sources = [SOURCE_TAR_XZ]
checksums = ['5bafe7abe8435beca17a1082062d363368ec1e3f0d6581bb0da8b010fb389fe4']

builddependencies = [
('CMake', '3.23.1'),
('Eigen', '3.4.0'),
]

dependencies = [
('zlib', '1.2.12'),
('Python', '3.10.4'),
('Boost', '1.79.0'),
('MPFR', '4.1.0'),
('GMP', '6.2.1'),
('Mesa', '22.0.3'),
('libGLU', '9.0.2'),
('Qt5', '5.15.5'),
]

configopts = '-DOPENGL_INCLUDE_DIR="$EBROOTMESA/include;$EBROOTLIBGLU/include" '
configopts += '-DOpenGL_GL_PREFERENCE=GLVND '
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'
44 changes: 44 additions & 0 deletions easybuild/easyconfigs/f/FFmpeg/FFmpeg-4.4.2-GCCcore-11.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
easyblock = 'ConfigureMake'

name = 'FFmpeg'
version = '4.4.2'

homepage = 'https://www.ffmpeg.org/'
description = """A complete, cross-platform solution to record, convert and stream audio and video."""

toolchain = {'name': 'GCCcore', 'version': '11.3.0'}

source_urls = ['https://ffmpeg.org/releases/']
sources = [SOURCELOWER_TAR_BZ2]
checksums = ['f98a482520c47507521a907914daa9efbc1384e0591b5afc3da18aa897de2948']

builddependencies = [
('binutils', '2.38'),
('pkgconf', '1.8.0')
]

dependencies = [
('NASM', '2.15.05'),
('zlib', '1.2.12'),
('bzip2', '1.0.8'),
('x264', '20220620'),
('LAME', '3.100'),
('x265', '3.5'),
('X11', '20220504'),
('freetype', '2.12.1'),
('fontconfig', '2.14.0'),
('FriBidi', '1.0.12'),
]

configopts = '--enable-pic --enable-shared --enable-gpl --enable-version3 --enable-nonfree --cc="$CC" --cxx="$CXX" '
configopts += '--enable-libx264 --enable-libx265 --enable-libmp3lame --enable-libfreetype --enable-fontconfig '
configopts += '--enable-libfribidi'

sanity_check_paths = {
'files': ['bin/ff%s' % x for x in ['mpeg', 'probe']] +
['lib/lib%s.%s' % (x, y) for x in ['avdevice', 'avfilter', 'avformat', 'avcodec', 'postproc',
'swresample', 'swscale', 'avutil'] for y in [SHLIB_EXT, 'a']],
'dirs': ['include']
}

moduleclass = 'vis'
38 changes: 38 additions & 0 deletions easybuild/easyconfigs/m/METIS/METIS-5.1.0-GCCcore-11.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name = 'METIS'
version = '5.1.0'

homepage = 'http://glaros.dtc.umn.edu/gkhome/metis/metis/overview'

description = """
METIS is a set of serial programs for partitioning graphs, partitioning
finite element meshes, and producing fill reducing orderings for sparse
matrices. The algorithms implemented in METIS are based on the multilevel
recursive-bisection, multilevel k-way, and multi-constraint partitioning
schemes.
"""

toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
toolchainopts = {'pic': True}

source_urls = [
'http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis',
'http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/OLD',
]
sources = [SOURCELOWER_TAR_GZ]

# We use 32bit for indices and 64bit for content
patches = ['%(name)s-%(version)s-use-doubles.patch']

checksums = [
'76faebe03f6c963127dbb73c13eab58c9a3faeae48779f049066a21c087c5db2', # source
'7e38a3ec8f2b8e3d189239bade5b28c0dd1c564485050109164fa71a6a767c67', # patch
]

builddependencies = [
('binutils', '2.38'),
('CMake', '3.23.1'),
]

configopts = ['', 'shared=1']

moduleclass = 'math'
45 changes: 45 additions & 0 deletions easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-v2206-foss-2022a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name = 'OpenFOAM'
version = 'v2206'

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': 'foss', 'version': '2022a'}
# Users have found that vectorizion caused OpenFOAM to produce some very incorrect results.
# Disabling vectorize was confirmed to fix the the known issues.
# With no test suite, sticking to known working toolchain options until proven otherwise.
toolchainopts = {'cstd': 'c++11', 'vectorize': False}

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 = [
'db95eda4afb97ca870733b2d4201ef539099d0778e3f3eca9a075d4f1a0eea46', # OpenFOAM-v2206.tgz
'cdd2597a1ac1448e9bd33a364a8dfe17f51cc9ab5a8e0ab67cf92bba3ed9da43', # OpenFOAM-v2012-cleanup.patch
'518e27683c5c41400cfbc17b31effa50b31b25916dccbf85b18b0b955f642505', # OpenFOAM-v1906-wmake-ompi.patch
]

builddependencies = [
('Bison', '3.8.2'),
('CMake', '3.23.1'),
('flex', '2.6.4'),
]

dependencies = [
('libreadline', '8.1.2'),
('ncurses', '6.3'),
# OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes)
('METIS', '5.1.0'),
('SCOTCH', '7.0.1'),
('CGAL', '4.14.3'),
('ParaView', '5.10.1', '-mpi'),
('gnuplot', '5.4.4'),
]

moduleclass = 'cae'
60 changes: 60 additions & 0 deletions easybuild/easyconfigs/p/ParaView/ParaView-5.10.1-foss-2022a-mpi.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
##
# Author: Robert Mijakovic <robert.mijakovic@lxp.lu>
##
easyblock = 'CMakeMake'

name = 'ParaView'
version = '5.10.1'
versionsuffix = '-mpi'

homepage = 'https://www.paraview.org'
description = "ParaView is a scientific parallel visualizer."

toolchain = {'name': 'foss', 'version': '2022a'}
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 = [
'59ca46a929a52d8abec107b72e19447cba3d8e64871b6fbc8e99b0f3b167db46', # ParaView-v5.10.1.tar.gz
]

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

dependencies = [
('Python', '3.10.4'),
('SciPy-bundle', '2022.05'),
('XZ', '5.2.5'),
('HDF5', '1.12.2'),
('netCDF', '4.9.0'),
('libGLU', '9.0.2'),
('X11', '20220504'),
('Mesa', '22.0.3'),
('Qt5', '5.15.5'),
('zlib', '1.2.12'),
('FFmpeg', '4.4.2'),
('Szip', '2.1.1'),
]

# 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': 'lib/python%(pyshortver)s/site-packages'}

moduleclass = 'vis'
24 changes: 24 additions & 0 deletions easybuild/easyconfigs/s/SCOTCH/SCOTCH-7.0.1-gompi-2022a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name = 'SCOTCH'
version = '7.0.1'

homepage = 'https://www.labri.fr/perso/pelegrin/scotch/'
description = """Software package and libraries for sequential and parallel graph partitioning,
static mapping, and sparse matrix block ordering, and sequential mesh and hypergraph partitioning."""

toolchain = {'name': 'gompi', 'version': '2022a'}
toolchainopts = {'pic': True}

source_urls = ['https://gitlab.inria.fr/scotch/scotch/-/archive/v%(version)s/']
sources = ['%(namelower)s-v%(version)s.tar.gz']
checksums = ['0618e9bc33c02172ea7351600fce4fccd32fe00b3359c4aabb5e415f17c06fed']

builddependencies = [
('Bison', '3.8.2'),
('flex', '2.6.4'),
]

dependencies = [
('zlib', '1.2.12'),
]

moduleclass = 'math'

0 comments on commit 51fd6fc

Please sign in to comment.