mirror of
https://code.it4i.cz/sccs/easyconfigs-it4i.git
synced 2025-04-04 06:11:36 +01:00
new file: l/LAPACK/LAPACK-3.10.0-gompi-2021a.eb
new file: m/Mmg/Mmg-5.6.0-gompi-2021a.eb new file: m/mpi4py/mpi4py-3.1.3-foss-2021a.eb new file: p/PETSc/PETSc-3.17.4-foss-2021a.eb new file: p/PETSc/webclient-3.17.0.patch new file: s/SuiteSparse/SuiteSparse-5.13.0-foss-2021a-METIS-5.1.0.eb deleted: p/PETSc/PETSc-3.17.2-foss-2021a.eb
This commit is contained in:
parent
606842a9e5
commit
29773993aa
16
l/LAPACK/LAPACK-3.10.0-gompi-2021a.eb
Normal file
16
l/LAPACK/LAPACK-3.10.0-gompi-2021a.eb
Normal file
@ -0,0 +1,16 @@
|
||||
name = 'LAPACK'
|
||||
version = '3.10.0'
|
||||
|
||||
homepage = 'https://www.netlib.org/lapack/'
|
||||
description = """LAPACK is written in Fortran90 and provides routines for solving systems of
|
||||
simultaneous linear equations, least-squares solutions of linear systems of equations, eigenvalue
|
||||
problems, and singular value problems."""
|
||||
|
||||
toolchain = {'name': 'gompi', 'version': '2021a'}
|
||||
toolchainopts = {'pic': True}
|
||||
|
||||
source_urls = ['https://github.com/Reference-LAPACK/lapack/archive/']
|
||||
sources = ['v%(version)s.tar.gz']
|
||||
checksums = ['328c1bea493a32cac5257d84157dc686cc3ab0b004e2bea22044e0a59f6f8a19']
|
||||
|
||||
moduleclass = 'numlib'
|
49
m/Mmg/Mmg-5.6.0-gompi-2021a.eb
Normal file
49
m/Mmg/Mmg-5.6.0-gompi-2021a.eb
Normal file
@ -0,0 +1,49 @@
|
||||
# IT4Innovations 2022
|
||||
# JK
|
||||
|
||||
easyblock = 'CMakeMake'
|
||||
|
||||
name = 'Mmg'
|
||||
version = '5.6.0'
|
||||
|
||||
homepage = 'https://www.mmgtools.org/'
|
||||
description = """
|
||||
Mmg is an open source software for simplicial remeshing. It provides 3 applications and 4 libraries:
|
||||
the mmg2d application and the libmmg2d library: adaptation and optimization of a two-dimensional triangulation
|
||||
and generation of a triangulation from a set of points or from given boundary edges
|
||||
the mmgs application and the libmmgs library: adaptation and optimization of a surface triangulation
|
||||
and isovalue discretization
|
||||
the mmg3d application and the libmmg3d library: adaptation and optimization of a tetrahedral mesh
|
||||
and implicit domain meshing
|
||||
the libmmg library gathering the libmmg2d, libmmgs and libmmg3d libraries
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'gompi', 'version': '2021a'}
|
||||
|
||||
source_urls = ['https://github.com/MmgTools/mmg/archive']
|
||||
sources = ['v%(version)s.tar.gz']
|
||||
patches = ['mmg-%(version)s_remove_ci_tests.patch']
|
||||
checksums = [
|
||||
'bbf9163d65bc6e0f81dd3acc5a51e4a8c47a7fdae849abc26277e01154fe2437', # v5.6.0.tar.gz
|
||||
'99de7437fb9d036c786b7f1526da93d4aa1d28e728fe7279f4c9204bbbb9f734', # mmg-5.6.0_remove_ci_tests.patch
|
||||
]
|
||||
|
||||
builddependencies = [('CMake', '3.20.1')]
|
||||
|
||||
dependencies = [('SCOTCH', '6.1.0')]
|
||||
|
||||
# CI tests require downloading of data that might not be available in the future.
|
||||
# Sticking to tests included in the source with help of patch
|
||||
configopts = '-DUSE_SCOTCH=ON -DBUILD_TESTING=ON -DONLY_VERY_SHORT_TESTS=ON '
|
||||
configopts += '-DTEST_LIBMMG2D=ON -DTEST_LIBMMG3D=ON -DTEST_LIBMMGS=ON '
|
||||
configopts += '-DLIBMMG2D_SHARED=ON -DLIBMMG3D_SHARED=ON -DLIBMMGS_SHARED=ON -DLIBMMG_SHARED=ON '
|
||||
|
||||
runtest = 'test'
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/%s_O3' % x for x in ['mmg2d', 'mmg3d', 'mmgs']] +
|
||||
['lib/lib%s.%s' % (x, y) for x in ['mmg2d', 'mmg3d', 'mmgs', 'mmg'] for y in ['a', SHLIB_EXT]],
|
||||
'dirs': ['include/mmg/%s' % x for x in ['mmg2d', 'mmg3d', 'mmgs']]
|
||||
}
|
||||
|
||||
moduleclass = 'math'
|
27
m/mpi4py/mpi4py-3.1.3-foss-2021a.eb
Normal file
27
m/mpi4py/mpi4py-3.1.3-foss-2021a.eb
Normal file
@ -0,0 +1,27 @@
|
||||
# IT4Innovations
|
||||
# JK 2022
|
||||
|
||||
easyblock = 'PythonPackage'
|
||||
|
||||
name = 'mpi4py'
|
||||
version = '3.1.3'
|
||||
|
||||
homepage = 'http://mpi4py.scipy.org/docs'
|
||||
description = """MPI for Python (mpi4py) provides bindings of the Message Passing Interface (MPI) standard for
|
||||
the Python programming language, allowing any Python program to exploit multiple processors."""
|
||||
|
||||
toolchain = {'name': 'foss', 'version': '2021a'}
|
||||
|
||||
source_urls = [PYPI_SOURCE]
|
||||
sources = [SOURCE_TAR_GZ]
|
||||
|
||||
dependencies = [
|
||||
('Python', '3.9.5'),
|
||||
]
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': [],
|
||||
'dirs': ['lib/python3.9/site-packages/mpi4py'],
|
||||
}
|
||||
|
||||
moduleclass = 'mpi'
|
@ -1,59 +0,0 @@
|
||||
# IT4Innovations
|
||||
# LK JK
|
||||
|
||||
name = 'PETSc'
|
||||
version = '3.17.2'
|
||||
|
||||
homepage = 'https://www.mcs.anl.gov/petsc'
|
||||
description = """PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the
|
||||
scalable (parallel) solution of scientific applications modeled by partial differential equations."""
|
||||
|
||||
toolchain = {'name': 'foss', 'version': '2021a'}
|
||||
import os
|
||||
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
|
||||
toolchainopts = {'openmp': True, 'usempi': True, 'optarch': 'march=core-avx2', 'pic': True}
|
||||
else:
|
||||
toolchainopts = {'openmp': True, 'usempi': True, 'pic': True}
|
||||
|
||||
source_urls = [
|
||||
'https://ftp.mcs.anl.gov/pub/petsc/release-snapshots/',
|
||||
'ftp://ftp.mcs.anl.gov/pub/petsc/release-snapshots/',
|
||||
]
|
||||
sources = [SOURCELOWER_TAR_GZ]
|
||||
patches = [
|
||||
'PETSc_ranlib-fix.patch',
|
||||
]
|
||||
checksums = [
|
||||
'2313dd1ca41bf0ace68671ea6f8d4abf90011ed899f5e1e08658d3f18478359d', # petsc-3.17.2.tar.gz
|
||||
'64cf9d5008d5e92117e65bdec5316d991b6a6b8c8ecf7ea46eb790a498266297', # PETSc_ranlib-fix.patch
|
||||
]
|
||||
|
||||
builddependencies = [('CMake', '3.20.1')]
|
||||
|
||||
dependencies = [
|
||||
('Python', '3.9.5'),
|
||||
('SciPy-bundle', '2021.05'),
|
||||
('Boost', '1.76.0'),
|
||||
('METIS', '5.1.0'),
|
||||
('SCOTCH', '6.1.0'),
|
||||
('MUMPS', '5.4.0', '-metis'),
|
||||
# ('SuiteSparse', '5.10.1', '-METIS-5.1.0'),
|
||||
('Hypre', '2.24.0'),
|
||||
]
|
||||
|
||||
# enabling --with-mpi4py seems to be totally broken, leads to make errors like:
|
||||
# No rule to make target 'mpi4py-build'
|
||||
configopts = ' CC=$CC CXX=$CXX FC=$FC F77=$F77 F90=$F90 '
|
||||
configopts += ' CFLAGS=$CFLAGS CXXFLAGS=$CXXFLAGS FFLAGS=$FFLAGS F90FLAGS=$F90FLAGS '
|
||||
configopts += ' CPPFLAGS=$CPPFLAGS LDFLAGS=$LDFLAGS '
|
||||
configopts += ' --LIBS="$LIBS -lrt" --with-mpi4py=0 '
|
||||
#configopts = '--LIBS="$LIBS -lrt" --with-mpi4py=0 --with-fortran=1 --download-scalapack '
|
||||
#configopts += '--download-parmetis --download-metis --download-mumps=yes'
|
||||
|
||||
shared_libs = 1
|
||||
|
||||
# only required when building PETSc in a SLURM job environment
|
||||
# configopts += '--with-batch=1 --known-mpi-shared-libraries=1 --known-64-bit-blas-indices=0 '
|
||||
# prebuildopts = "srun ./conftest-arch-linux2-c-opt && ./reconfigure-arch-linux2-c-opt.py && "
|
||||
|
||||
moduleclass = 'numlib'
|
86
p/PETSc/PETSc-3.17.4-foss-2021a.eb
Normal file
86
p/PETSc/PETSc-3.17.4-foss-2021a.eb
Normal file
@ -0,0 +1,86 @@
|
||||
# Updated to version 3.17.0 with significantly more modules added
|
||||
# J. Sassmannshausen ICL/UK
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'PETSc'
|
||||
version = '3.17.4'
|
||||
|
||||
homepage = 'https://www.mcs.anl.gov/petsc'
|
||||
description = """PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the
|
||||
scalable (parallel) solution of scientific applications modeled by partial differential equations.
|
||||
|
||||
This installation is build with significant amounts of modules in it compared to previous versions."""
|
||||
|
||||
toolchain = {'name': 'foss', 'version': '2021a'}
|
||||
toolchainopts = {'openmp': True, 'usempi': True, 'pic': True}
|
||||
|
||||
source_urls = [
|
||||
'https://ftp.mcs.anl.gov/pub/petsc/release-snapshots/',
|
||||
'ftp://ftp.mcs.anl.gov/pub/petsc/release-snapshots/',
|
||||
]
|
||||
sources = [SOURCELOWER_TAR_GZ]
|
||||
patches = [
|
||||
'webclient-3.17.0.patch',
|
||||
]
|
||||
checksums = [
|
||||
'99c127486722a3ffd95a268b4ceb0976cbf217926c681a9631bd7246eab8cb2a', # petsc-3.17.4.tar.gz
|
||||
'2ba253df42853385e2683dbc87dfcb66d4ce4bcd84e054efa8f466274f49bc81', # webclient-3.17.0.patch
|
||||
]
|
||||
|
||||
builddependencies = [
|
||||
('Eigen', '3.3.9'),
|
||||
('CMake', '3.20.1')
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('Python', '3.9.5'),
|
||||
('SciPy-bundle', '2021.05'),
|
||||
('Boost', '1.76.0'),
|
||||
('METIS', '5.1.0'),
|
||||
('SCOTCH', '6.1.0'),
|
||||
('MUMPS', '5.4.0', '-metis'),
|
||||
('SuiteSparse', '5.10.1', '-METIS-5.1.0'),
|
||||
('Hypre', '2.21.0'),
|
||||
('zlib', '1.2.11'),
|
||||
('BLIS', '0.8.1'),
|
||||
('Szip', '2.1.1'),
|
||||
('HDF5', '1.12.1'),
|
||||
('GMP', '6.2.1'),
|
||||
('GSL', '2.7'),
|
||||
('libjpeg-turbo', '2.0.6'),
|
||||
('libpng', '1.6.37'),
|
||||
('giflib', '5.2.1'),
|
||||
('OpenSSL', '1.1', '', True),
|
||||
('libyaml', '0.2.5'),
|
||||
('zstd', '1.4.9'),
|
||||
('Mmg', '5.6.0'),
|
||||
('MPFR', '4.1.0'),
|
||||
('googletest', '1.11.0'),
|
||||
('muParser', '2.3.3'),
|
||||
('ParMETIS', '4.0.3'),
|
||||
]
|
||||
|
||||
# enabling --with-mpi4py seems to be totally broken, leads to make errors like:
|
||||
# No rule to make target 'mpi4py-build'
|
||||
configopts = '--configModules=PETSc.Configure --optionsModule=config.compilerOptions '
|
||||
configopts += '--LIBS="$LIBS -lrt" --download-mpi4py --with-mpi4py=1 --download-petsc4py --CXXFLAGS="$CXXFLAGS '
|
||||
configopts += '-DOMPI_SKIP_MPICXX -DMPICH_SKIP_MPICXX" --with-mpi=1 --with-build-step-np=4 '
|
||||
configopts += '--CPPFLAGS="$CPPFLAGS" --F90FLAGS="$F90FLAGS" --FFLAGS="$FFLAGS" --FCFLAGS="$FCFLAGS" '
|
||||
configopts += '--with-blaslapack-lib=" -lflexiblas -lgfortran" '
|
||||
configopts += '--with-shared-libraries=1 --with-debugging=0 --with-pic=1 --with-x=0 '
|
||||
configopts += '--with-windows-graphics=0 --with-numpy=1 --with-fftw=1 --with-scalapack=1 '
|
||||
configopts += '--with-python=1 --with-boost=1 --with-metis=1 -with-ptscotch=1 --with-mumps=1 '
|
||||
configopts += '--with-hypre=1 --with-suitesparse=1 --with-hwloc=1 --with-openmp=1 --with-zlib=1 --with-blis=1 '
|
||||
configopts += '--with-hdf5=1 --with-eigen=1 --with-parmetis=1 --with-gmp=1 --with-gsl=1 --with-libjpeg=1 '
|
||||
configopts += '--with-libpng=1 --with-yaml=1 --with-zstd=1 --with-ssl=1 --with-triangle=0 --with-giflib=1 '
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['lib/libpetsc.%s' % SHLIB_EXT],
|
||||
'dirs': ['include', 'share']
|
||||
}
|
||||
|
||||
modextrapaths = {'PYTHONPATH': 'lib'}
|
||||
|
||||
moduleclass = 'numlib'
|
||||
|
69
p/PETSc/webclient-3.17.0.patch
Normal file
69
p/PETSc/webclient-3.17.0.patch
Normal file
@ -0,0 +1,69 @@
|
||||
Based on https://gitlab.com/petsc/petsc/-/merge_requests/5257
|
||||
Author: J. Sassmannshausen / ICL (UK)
|
||||
diff --git a/petsc-3.17.0.orig/config/examples/arch-ci-freebsd-cxx-cmplx-pkgs-dbg.py b/petsc-3.17.0/config/examples/arch-ci-freebsd-cxx-cmplx-pkgs-dbg.py
|
||||
index ecc3b03..6c6c354 100755
|
||||
--- a/petsc-3.17.0.orig/config/examples/arch-ci-freebsd-cxx-cmplx-pkgs-dbg.py
|
||||
+++ b/petsc-3.17.0/config/examples/arch-ci-freebsd-cxx-cmplx-pkgs-dbg.py
|
||||
@@ -36,6 +36,7 @@ configure_options = [
|
||||
'--with-mpi-f90module-visibility=0',
|
||||
'--download-kokkos=1',
|
||||
'--download-kokkos-kernels=1',
|
||||
+ '--with-ssl=1',
|
||||
]
|
||||
|
||||
if __name__ == '__main__':
|
||||
diff --git a/petsc-3.17.0.orig/config/examples/arch-ci-linux-gcc-pkgs-opt.py b/petsc-3.17.0/config/examples/arch-ci-linux-gcc-pkgs-opt.py
|
||||
index 8828156..132e3d6 100755
|
||||
--- a/petsc-3.17.0.orig/config/examples/arch-ci-linux-gcc-pkgs-opt.py
|
||||
+++ b/petsc-3.17.0/config/examples/arch-ci-linux-gcc-pkgs-opt.py
|
||||
@@ -28,6 +28,7 @@ configure_options = [
|
||||
'--download-amrex',
|
||||
'--download-hypre',
|
||||
'--download-ks',
|
||||
+ '--with-ssl=1',
|
||||
]
|
||||
|
||||
if __name__ == '__main__':
|
||||
diff --git a/petsc-3.17.0.orig/src/sys/webclient/box.c b/petsc-3.17.0/src/sys/webclient/box.c
|
||||
index d306966..eb2fac7 100644
|
||||
--- a/petsc-3.17.0.orig/src/sys/webclient/box.c
|
||||
+++ b/petsc-3.17.0/src/sys/webclient/box.c
|
||||
@@ -304,9 +304,9 @@ PetscErrorCode PetscBoxUpload(MPI_Comm comm,const char access_token[],const char
|
||||
PetscCall(PetscPushJSONValue(body,"mimeType","text.html",len));
|
||||
PetscCall(PetscStrcat(body,","));
|
||||
PetscCall(PetscPushJSONValue(body,"description","a file",len));
|
||||
- ierr = PetscStrcat(body, "}\r\n\r\n"
|
||||
- "--foo_bar_baz\r\n"
|
||||
- "Content-Type: text/html\r\n\r\n");PetscCall(ierr);
|
||||
+ PetscCall(PetscStrcat(body, "}\r\n\r\n"
|
||||
+ "--foo_bar_baz\r\n"
|
||||
+ "Content-Type: text/html\r\n\r\n"));
|
||||
PetscCall(PetscStrlen(body,&blen));
|
||||
fd = fopen (filename, "r");
|
||||
PetscCheck(fd,PETSC_COMM_SELF,PETSC_ERR_FILE_OPEN,"Unable to open file: %s",filename);
|
||||
diff --git a/petsc-3.17.0.orig/src/sys/webclient/client.c b/petsc-3.17.0/src/sys/webclient/client.c
|
||||
index dfe6b12..350cac9 100644
|
||||
--- a/petsc-3.17.0.orig/src/sys/webclient/client.c
|
||||
+++ b/petsc-3.17.0/src/sys/webclient/client.c
|
||||
@@ -123,7 +123,7 @@ static PetscErrorCode PetscHTTPBuildRequest(const char type[],const char url[],c
|
||||
|
||||
if (header) {
|
||||
PetscCall(PetscStrendswith(header,"\r\n",&flg));
|
||||
- PetscCheck(flg,PETSC_COMM_SELF,PETSC_ERR_ARG_WRONG,"header must end with \\r\");
|
||||
+ PetscCheck(flg,PETSC_COMM_SELF,PETSC_ERR_ARG_WRONG,"header must end with \\r\\n");
|
||||
}
|
||||
|
||||
PetscCall(PetscStrlen(type,&typelen));
|
||||
diff --git a/petsc-3.17.0.orig/src/sys/webclient/google.c b/petsc-3.17.0/src/sys/webclient/google.c
|
||||
index 8626b7c..c66f8cc 100644
|
||||
--- a/petsc-3.17.0.orig/src/sys/webclient/google.c
|
||||
+++ b/petsc-3.17.0/src/sys/webclient/google.c
|
||||
@@ -158,7 +158,7 @@ PetscErrorCode PetscGoogleDriveUpload(MPI_Comm comm,const char access_token[],co
|
||||
fd = fopen (filename, "r");
|
||||
PetscCheck(fd,PETSC_COMM_SELF,PETSC_ERR_FILE_OPEN,"Unable to open file: %s",filename);
|
||||
rd = fread (body+blen, sizeof (unsigned char), sb.st_size, fd);
|
||||
- PetscCheckFalse(rd != (size_t) sb.st_size,PETSC_COMM_SELF,PETSC_ERR_FILE_OPEN,"Unable to read entire file: %s %d %d",filename,(int)rd,sb.st_size);
|
||||
+ PetscCheckFalse(rd != (size_t) sb.st_size,PETSC_COMM_SELF,PETSC_ERR_FILE_OPEN,"Unable to read entire file: %s %d %d",filename,(int)rd,(int)sb.st_size);
|
||||
fclose(fd);
|
||||
body[blen + rd] = 0;
|
||||
ierr = PetscStrcat(body,"\r\n\r\n"
|
34
s/SuiteSparse/SuiteSparse-5.13.0-foss-2021a-METIS-5.1.0.eb
Normal file
34
s/SuiteSparse/SuiteSparse-5.13.0-foss-2021a-METIS-5.1.0.eb
Normal file
@ -0,0 +1,34 @@
|
||||
# IT4Innovations 2022
|
||||
# JK
|
||||
|
||||
name = 'SuiteSparse'
|
||||
version = '5.13.0'
|
||||
local_metis_ver = '5.1.0'
|
||||
versionsuffix = '-METIS-%s' % local_metis_ver
|
||||
|
||||
homepage = 'https://faculty.cse.tamu.edu/davis/suitesparse.html'
|
||||
description = """SuiteSparse is a collection of libraries manipulate sparse matrices."""
|
||||
|
||||
toolchain = {'name': 'foss', 'version': '2021a'}
|
||||
toolchainopts = {'unroll': True, 'pic': True}
|
||||
|
||||
source_urls = ['https://github.com/DrTimothyAldenDavis/SuiteSparse/archive']
|
||||
sources = ['v%(version)s.tar.gz']
|
||||
checksums = ['59c6ca2959623f0c69226cf9afb9a018d12a37fab3a8869db5f6d7f83b6b147d']
|
||||
|
||||
builddependencies = [
|
||||
('CMake', '3.20.1'),
|
||||
('M4', '1.4.18'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('METIS', local_metis_ver),
|
||||
('MPFR', '4.1.0'),
|
||||
]
|
||||
|
||||
# make sure that bin/demo can find libsuitesparseconfig.so.5 during build
|
||||
prebuildopts = "export LD_LIBRARY_PATH=%(builddir)s/SuiteSparse-%(version)s/lib:$LD_LIBRARY_PATH && "
|
||||
# remove broken symlink
|
||||
prebuildopts += "rm GraphBLAS/CUDA/test/graphblascuda_test && "
|
||||
|
||||
moduleclass = 'numlib'
|
Loading…
x
Reference in New Issue
Block a user