From 9e65728e88929be0f881094af43e347a75328184 Mon Sep 17 00:00:00 2001 From: easybuild Date: Fri, 4 Mar 2022 13:15:08 +0100 Subject: [PATCH 1/2] new file: a/Automake/Automake-1.16.4.eb new file: b/BEEF/BEEF-0.1.1-intel-2020b.eb deleted: b/Bison/Bison-3.0.4.eb new file: b/BoltzTraP2/BoltzTraP2-20.7.1-intel-2020b-Python-3.8.6.eb new file: c/CUDAcore/CUDAcore-11.6.0.eb new file: f/Forge/Forge-21.1.3.eb deleted: f/flex/flex-2.6.4.eb modified: g/GROMACS/GROMACS-2020.4-fosscuda-2020b-PLUMED-2.7.0-patch.eb deleted: m/M4/M4-1.4.17.eb deleted: m/M4/M4-1.4.18.eb new file: n/NVHPC/NVHPC-22.2.eb new file: o/Octave/Octave-6.4.0-intel-2020b-without-X11.eb new file: o/OpenMPI/OpenMPI-4.0.6-NVHPC-22.2-CUDA-11.6.0.eb new file: o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0-v2.eb new file: o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0.eb new file: o/OpenSSL/OpenSSL-1.1.eb new file: p/Python/Python-3.9.6-GCCcore-11.2.0-NetKet.eb modified: p/protobuf/protobuf-2.5.0.eb new file: s/Singularity/Singularity-3.8.6.eb new file: u/UCX/UCX-1.11.2-GCC-10.2.0-CUDA-11.6.0.eb new file: u/UCX/UCX-1.11.2-NVHPC-22.2-CUDA-11.6.0.eb new file: v/VTK/VTK-9.1.0-intel-2020b-Python-3.8.6.eb deleted: z/zlib/zlib-1.2.11.eb --- a/Automake/Automake-1.16.4.eb | 27 + ...ntel-2020.eb => BEEF-0.1.1-intel-2020a.eb} | 0 b/BEEF/BEEF-0.1.1-intel-2020b.eb | 28 ++ b/Bison/Bison-3.0.4.eb | 22 - ...tzTraP2-20.7.1-intel-2020b-Python-3.8.6.eb | 42 ++ c/CUDAcore/CUDAcore-11.6.0.eb | 21 + f/Forge/Forge-21.1.3.eb | 48 ++ f/flex/flex-2.6.4.eb | 16 - ...020.4-fosscuda-2020b-PLUMED-2.7.0-patch.eb | 4 + m/M4/M4-1.4.17.eb | 23 - m/M4/M4-1.4.18.eb | 25 - n/NVHPC/NVHPC-22.2.eb | 65 +++ .../Octave-6.4.0-intel-2020b-without-X11.eb | 40 ++ .../OpenMPI-4.0.6-NVHPC-22.2-CUDA-11.6.0.eb | 43 ++ ...OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0-v2.eb | 43 ++ .../OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0.eb | 43 ++ o/OpenSSL/OpenSSL-1.1.eb | 44 ++ .../Python-3.9.6-GCCcore-11.2.0-NetKet.eb | 470 ++++++++++++++++++ p/protobuf/protobuf-2.5.0.eb | 2 +- s/Singularity/Singularity-3.8.6.eb | 47 ++ u/UCX/UCX-1.11.2-GCC-10.2.0-CUDA-11.6.0.eb | 49 ++ u/UCX/UCX-1.11.2-NVHPC-22.2-CUDA-11.6.0.eb | 50 ++ v/VTK/VTK-9.1.0-intel-2020b-Python-3.8.6.eb | 88 ++++ z/zlib/zlib-1.2.11.eb | 31 -- 24 files changed, 1153 insertions(+), 118 deletions(-) create mode 100644 a/Automake/Automake-1.16.4.eb rename b/BEEF/{BEEF-0.1.1-intel-2020.eb => BEEF-0.1.1-intel-2020a.eb} (100%) create mode 100644 b/BEEF/BEEF-0.1.1-intel-2020b.eb delete mode 100644 b/Bison/Bison-3.0.4.eb create mode 100644 b/BoltzTraP2/BoltzTraP2-20.7.1-intel-2020b-Python-3.8.6.eb create mode 100644 c/CUDAcore/CUDAcore-11.6.0.eb create mode 100644 f/Forge/Forge-21.1.3.eb delete mode 100644 f/flex/flex-2.6.4.eb delete mode 100644 m/M4/M4-1.4.17.eb delete mode 100644 m/M4/M4-1.4.18.eb create mode 100644 n/NVHPC/NVHPC-22.2.eb create mode 100644 o/Octave/Octave-6.4.0-intel-2020b-without-X11.eb create mode 100644 o/OpenMPI/OpenMPI-4.0.6-NVHPC-22.2-CUDA-11.6.0.eb create mode 100644 o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0-v2.eb create mode 100644 o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0.eb create mode 100644 o/OpenSSL/OpenSSL-1.1.eb create mode 100644 p/Python/Python-3.9.6-GCCcore-11.2.0-NetKet.eb create mode 100644 s/Singularity/Singularity-3.8.6.eb create mode 100644 u/UCX/UCX-1.11.2-GCC-10.2.0-CUDA-11.6.0.eb create mode 100644 u/UCX/UCX-1.11.2-NVHPC-22.2-CUDA-11.6.0.eb create mode 100644 v/VTK/VTK-9.1.0-intel-2020b-Python-3.8.6.eb delete mode 100644 z/zlib/zlib-1.2.11.eb diff --git a/a/Automake/Automake-1.16.4.eb b/a/Automake/Automake-1.16.4.eb new file mode 100644 index 00000000..9ced3f11 --- /dev/null +++ b/a/Automake/Automake-1.16.4.eb @@ -0,0 +1,27 @@ +# IT4Innovations +# LK 2022 + +easyblock = 'ConfigureMake' + +name = 'Automake' +version = "1.16.4" + +homepage = 'http://www.gnu.org/software/automake/automake.html' + +description = "Automake: GNU Standards-local_compliant Makefile generator" + +toolchain = SYSTEM + +source_urls = ['https://mirror.checkdomain.de/gnu/automake/'] +sources = [SOURCELOWER_TAR_GZ] + +dependencies = [ + ('Autoconf', '2.71'), +] + +sanity_check_paths = { + 'files': ['bin/automake', 'bin/aclocal'], + 'dirs': [] +} + +moduleclass = 'devel' diff --git a/b/BEEF/BEEF-0.1.1-intel-2020.eb b/b/BEEF/BEEF-0.1.1-intel-2020a.eb similarity index 100% rename from b/BEEF/BEEF-0.1.1-intel-2020.eb rename to b/BEEF/BEEF-0.1.1-intel-2020a.eb diff --git a/b/BEEF/BEEF-0.1.1-intel-2020b.eb b/b/BEEF/BEEF-0.1.1-intel-2020b.eb new file mode 100644 index 00000000..44362de6 --- /dev/null +++ b/b/BEEF/BEEF-0.1.1-intel-2020b.eb @@ -0,0 +1,28 @@ +# IT4Innovations 2020 +# LK + +easyblock = 'ConfigureMake' + +name = 'BEEF' +version = '0.1.1' + +homepage = 'http://suncat.stanford.edu/facility/software/functional' +description = """BEEF is a library-based implementation of the Bayesian +Error Estimation Functional, suitable for linking against by Fortran- +or C-based DFT codes. A description of BEEF can be found at +http://dx.doi.org/10.1103/PhysRevB.85.235149.""" + +toolchain = {'name': 'intel', 'version': '2020b'} +toolchainopts = {'openmp': False, 'usempi': False} + +source_urls = ['https://confluence.slac.stanford.edu/download/attachments/146704476'] +sources = ['libbeef-%(version)s.tar.gz'] + +configopts = 'CC="$CC"' + +sanity_check_paths = { + 'files': ['bin/bee', 'lib/libbeef.a'], + 'dirs': [], +} + +moduleclass = 'chem' diff --git a/b/Bison/Bison-3.0.4.eb b/b/Bison/Bison-3.0.4.eb deleted file mode 100644 index 85ec31c1..00000000 --- a/b/Bison/Bison-3.0.4.eb +++ /dev/null @@ -1,22 +0,0 @@ -easyblock = 'ConfigureMake' - -name = 'Bison' -version = '3.0.4' - -homepage = 'http://www.gnu.org/software/bison' -description = """Bison is a general-purpose parser generator that converts an annotated context-free grammar -into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables.""" - -toolchain = SYSTEM - -sources = [SOURCELOWER_TAR_GZ] -source_urls = [GNU_SOURCE] - -builddependencies = [('M4', '1.4.18')] - -sanity_check_paths = { - 'files': ["bin/%s" % x for x in ["bison", "yacc"]] + ["lib/liby.a"], - 'dirs': [], -} - -moduleclass = 'lang' diff --git a/b/BoltzTraP2/BoltzTraP2-20.7.1-intel-2020b-Python-3.8.6.eb b/b/BoltzTraP2/BoltzTraP2-20.7.1-intel-2020b-Python-3.8.6.eb new file mode 100644 index 00000000..3d185d4e --- /dev/null +++ b/b/BoltzTraP2/BoltzTraP2-20.7.1-intel-2020b-Python-3.8.6.eb @@ -0,0 +1,42 @@ +# IT4Innovations 2022 +# JK + +easyblock = "PythonBundle" +name = 'BoltzTraP2' +version = '20.7.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.imc.tuwien.ac.at/index.php?id=21094' +description = """BoltzTraP2 is a modern implementation of the smoothed Fourier + interpolation algorithm for electronic bands that formed the base of the original + and widely used BoltzTraP code.""" + +toolchain = {'name': 'intel', 'version': '2020b'} + +dependencies = [ + ('Python', '3.8.6'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('matplotlib', '3.3.3'), + ('spglib-python', '1.16.0'), + ('ASE', '3.21.1'), + ('netCDF', '4.7.4'), + ('FFTW', '3.3.8', '', True), + ('VTK', '9.1.0', versionsuffix), +] + +builddependencies = [ + ('CMake', '3.18.4') +] + +options = {'modulename': 'BoltzTraP2'} + +use_pip = True +exts_default_options = {'source_urls': [PYPI_SOURCE]} +exts_list = [ + ('pyFFTW', '0.13.0'), + ('BoltzTraP2', '20.7.1'), +] + +skipsteps = ['sanitycheck'] + +moduleclass = 'python' diff --git a/c/CUDAcore/CUDAcore-11.6.0.eb b/c/CUDAcore/CUDAcore-11.6.0.eb new file mode 100644 index 00000000..89f27b6c --- /dev/null +++ b/c/CUDAcore/CUDAcore-11.6.0.eb @@ -0,0 +1,21 @@ +# IT4Innovations +# LK 2021 + +easyblock = 'EB_CUDA' + +name = 'CUDAcore' +version = '11.6.0' +local_nv_version = '510.39.01' + +homepage = 'https://developer.nvidia.com/cuda-toolkit' +description = """CUDA (formerly Compute Unified Device Architecture) is a parallel + computing platform and programming model created by NVIDIA and implemented by the + graphics processing units (GPUs) that they produce. CUDA gives developers access + to the virtual instruction set and memory of the parallel computational elements in CUDA GPUs.""" + +toolchain = SYSTEM + +source_urls = ['https://developer.download.nvidia.com/compute/cuda/%(version)s/local_installers/'] +sources = ['cuda_%%(version)s_%s_linux%%(cudaarch)s.run' % local_nv_version] + +moduleclass = 'system' diff --git a/f/Forge/Forge-21.1.3.eb b/f/Forge/Forge-21.1.3.eb new file mode 100644 index 00000000..fbd775a2 --- /dev/null +++ b/f/Forge/Forge-21.1.3.eb @@ -0,0 +1,48 @@ +# IT4Innovations 2020 +# !!! --include-easyblocks /apps/easybuild/it4i-easyblocks/easyblocks/a/allineabase.py !!! +# LK + +easyblock = 'AllineaBase' + +name = 'Forge' +version = "21.1.3" + +homepage = 'http://www.allinea.com/products/develop-allinea-forge' +description = """Allinea Forge is the local_complete toolsuite for software development +- with everything needed to debug, profile, optimize, edit and build C, C++ +and FORTRAN applications on Linux for high performance - from single threads through +to local_complex parallel HPC codes with MPI, OpenMP, threads or CUDA. +""" + +toolchain = SYSTEM + +source_urls = [ + # Use manually downloaded sources + # http://content.allinea.com/downloads/allinea-reports-latest-Redhat-6.0-x86_64.tar + # and rename it to format %(namelower)s-%(version)s.tar, so + # forge-7.0.4.tar. +] +sources = ['arm-forge-21.1.3-linux-x86_64.tar'] + +skipsteps = ['configure', 'build'] + +postinstallcmds = [ + 'ln -s /apps/licenses/Arm/Licence %(installdir)s/licences/Licence.16312', + 'ln -s /apps/licenses/PerformanceReports/Licence %(installdir)s/licences/Licence.16313', +] + +sanity_check_paths = { + 'files': [ + 'bin/ddt-client', + 'bin/map', + 'bin/ddt', + #'bin/ddt-debugger', + #'bin/ddt-debugger-ll', + #'bin/ddt-debugger-mps', + 'bin/ddt-mpirun', + 'bin/forge', + 'bin/make-profiler-libraries'], + 'dirs': ['lib'], +} + +moduleclass = 'debugger' diff --git a/f/flex/flex-2.6.4.eb b/f/flex/flex-2.6.4.eb deleted file mode 100644 index e1cf5c6c..00000000 --- a/f/flex/flex-2.6.4.eb +++ /dev/null @@ -1,16 +0,0 @@ -name = 'flex' -version = '2.6.4' - -homepage = 'http://flex.sourceforge.net/' -description = """Flex (Fast Lexical Analyzer) is a tool for generating scanners. A scanner, - sometimes called a tokenizer, is a program which recognizes lexical patterns in text.""" - -toolchain = SYSTEM -toolchainopts = {'pic': True} - -sources = [SOURCELOWER_TAR_GZ] -source_urls = ['https://sources.voidlinux.eu/flex-2.6.4/'] - -dependencies = [('Bison', '3.0.4')] - -moduleclass = 'lang' diff --git a/g/GROMACS/GROMACS-2020.4-fosscuda-2020b-PLUMED-2.7.0-patch.eb b/g/GROMACS/GROMACS-2020.4-fosscuda-2020b-PLUMED-2.7.0-patch.eb index 39cdd379..f6c2e2d6 100644 --- a/g/GROMACS/GROMACS-2020.4-fosscuda-2020b-PLUMED-2.7.0-patch.eb +++ b/g/GROMACS/GROMACS-2020.4-fosscuda-2020b-PLUMED-2.7.0-patch.eb @@ -1,6 +1,8 @@ # IT4Innovations # LK 2021 +#nvcc fatal : Unsupported gpu architecture 'compute_1' + name = 'GROMACS' version = '2020.4' versionsuffix = '-PLUMED-2.7.0-patch' @@ -56,6 +58,8 @@ dependencies = [ exts_defaultclass = 'PythonPackage' +cuda_compute_capabilities = '11.6' + exts_default_options = { 'source_urls': [PYPI_SOURCE], 'use_pip': True, diff --git a/m/M4/M4-1.4.17.eb b/m/M4/M4-1.4.17.eb deleted file mode 100644 index 13c48ebd..00000000 --- a/m/M4/M4-1.4.17.eb +++ /dev/null @@ -1,23 +0,0 @@ -easyblock = 'ConfigureMake' - -name = 'M4' -version = '1.4.17' - -homepage = 'http://www.gnu.org/software/m4/m4.html' -description = """GNU M4 is an implementation of the traditional Unix macro processor. It is mostly SVR4 local_compatible - although it has some extensions (for example, handling more than 9 positional parameters to macros). - GNU M4 also has built-in functions for including files, running shell commands, doing arithmetic, etc.""" - -toolchain = SYSTEM - -sources = [SOURCELOWER_TAR_GZ] -source_urls = [GNU_SOURCE] - -configopts = "--enable-cxx CPPFLAGS='-fgnu89-inline'" - -sanity_check_paths = { - 'files': ["bin/m4"], - 'dirs': [], -} - -moduleclass = 'devel' diff --git a/m/M4/M4-1.4.18.eb b/m/M4/M4-1.4.18.eb deleted file mode 100644 index 8622b81a..00000000 --- a/m/M4/M4-1.4.18.eb +++ /dev/null @@ -1,25 +0,0 @@ -easyblock = 'ConfigureMake' - -name = 'M4' -version = '1.4.18' - -homepage = 'http://www.gnu.org/software/m4/m4.html' -description = """GNU M4 is an implementation of the traditional Unix macro processor. It is mostly SVR4 local_compatible - although it has some extensions (for example, handling more than 9 positional parameters to macros). - GNU M4 also has built-in functions for including files, running shell commands, doing arithmetic, etc.""" - -toolchain = SYSTEM - -sources = [SOURCELOWER_TAR_GZ] -source_urls = [GNU_SOURCE] - -# '-fgnu89-inline' is required to avoid linking errors with older glibc's, -# see https://github.com/hpcugent/easybuild-easyconfigs/issues/529 -configopts = "--enable-cxx CPPFLAGS=-fgnu89-inline" - -sanity_check_paths = { - 'files': ["bin/m4"], - 'dirs': [], -} - -moduleclass = 'devel' diff --git a/n/NVHPC/NVHPC-22.2.eb b/n/NVHPC/NVHPC-22.2.eb new file mode 100644 index 00000000..76d87b78 --- /dev/null +++ b/n/NVHPC/NVHPC-22.2.eb @@ -0,0 +1,65 @@ +# IT4Innovations +# LK 2022 + +name = 'NVHPC' +version = '22.2' + +homepage = 'https://developer.nvidia.com/hpc-sdk/' +description = """C, C++ and Fortran compilers included with the NVIDIA HPC SDK (previously: PGI)""" + +toolchain = SYSTEM + +# By downloading, you accept the HPC SDK Software License Agreement (https://docs.nvidia.com/hpc-sdk/eula/index.html) +accept_eula = True +source_urls = ['https://developer.download.nvidia.com/hpc-sdk/%(version)s/'] +local_tarball_tmpl = 'nvhpc_2022_%%(version_major)s%%(version_minor)s_Linux_%s_cuda_multi.tar.gz' +sources = [local_tarball_tmpl % '%(arch)s'] + +local_gccver = '10.2.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.35', '', ('GCCcore', local_gccver)), + # This is necessary to avoid cases where just libnuma.so.1 is present in the system and -lnuma fails + ('numactl', '2.0.13', '', ('GCCcore', local_gccver)) +] + +# specify default CUDA version that should be used by NVHPC +# should match one of the CUDA versions that are included with this NVHPC version +# (see install_components/Linux_x86_64/20.7/cuda/) +# for NVHPC 20.7, those are: 11.0, 10.2, 10.1; +# this version can be tweaked from the EasyBuild command line with +# --try-amend=default_cuda_version="10.2" (for example) +default_cuda_version = '11.6' + +# NVHPC EasyBlock supports some features, which can be set via CLI or this easyconfig. +# The following list gives examples for the easyconfig +# +# NVHPC needs CUDA to work. Two options are available: 1) Use NVHPC-bundled CUDA, 2) use system CUDA +# 1) Bundled CUDA +# If no easybuild dependency to CUDA is present, the bundled CUDA is taken. A version needs to be specified with +# default_cuda_version = "11.0" +# in this easyconfig file; alternatively, it can be specified through the command line during installation with +# --try-amend=default_cuda_version="10.2" +# 2) CUDA provided via EasyBuild +# Use CUDAcore as a dependency, for example +# dependencies = [('CUDAcore', '11.0.2')] +# The parameter default_cuda_version still can be set as above. +# If not set, it will be deduced from the CUDA module (via $EBVERSIONCUDA) +# +# Define a NVHPC-default Compute Capability +# cuda_compute_capabilities = "8.0" +cuda_compute_capabilities = '7.0' #V100 GPU +# Can also be specified on the EasyBuild command line via --cuda-compute-capabilities=8.0 +# Only single values supported, not lists of values! +# +# Options to add/remove things to/from environment module (defaults shown) +# module_byo_compilers = Yes # Remove compilers from PATH (Bring-your-own compilers) +# module_nvhpc_own_mpi = False # Add NVHPC's own pre-compiled OpenMPI +# module_add_math_libs = Yes # Add NVHPC's math libraries (which should be there from CUDA anyway) +# module_add_profilers = Yes # Add NVHPC's NVIDIA Profilers +# module_add_nccl = Yes # Add NVHPC's NCCL library +# module_add_nvshmem = Yes # Add NVHPC's NVSHMEM library +# module_add_cuda = Yes # Add NVHPC's bundled CUDA + +# this bundle serves as a compiler-only toolchain, so it should be marked as compiler (important for HMNS) +moduleclass = 'compiler' diff --git a/o/Octave/Octave-6.4.0-intel-2020b-without-X11.eb b/o/Octave/Octave-6.4.0-intel-2020b-without-X11.eb new file mode 100644 index 00000000..364db05d --- /dev/null +++ b/o/Octave/Octave-6.4.0-intel-2020b-without-X11.eb @@ -0,0 +1,40 @@ +# IT4Innovations +# LK 2022 + +easyblock = 'ConfigureMake' + +name = 'Octave' +version = '6.4.0' +versionsuffix = '-without-X11' + +homepage = 'http://www.gnu.org/software/octave/' +description = """GNU Octave is a high-level interpreted language, primarily intended for numerical local_computations.""" + +toolchain = {'name': 'intel', 'version': '2020b'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] + +dependencies = [ + ('PCRE', '8.40', '', True), + ('ncurses', '6.2', '', True), +# ('libreadline', '7.0', '', True), +# ('cURL', '7.65.3', '', True), +# ('zlib', '1.2.11', '', True), + ('HDF5', '1.10.6', '-parallel'), +# ('FFTW', '3.3.8', '', True), + ('gnuplot', '5.2.8', '', True), +] + +configopts = '--disable-docs --without-opengl --without-qhull ' +#configopts += '--with-blas="$LIBBLAS" --with-lapack="$LIBLAPACK" ' +configopts += '--enable-fortran-calling-convention=gfortran --disable-readline ' + +sanity_check_paths = { + 'files': ['bin/octave'], + 'dirs': [] +} + +sanity_check_commands = [('octave', '--eval "1+2"')] + +moduleclass = 'math' diff --git a/o/OpenMPI/OpenMPI-4.0.6-NVHPC-22.2-CUDA-11.6.0.eb b/o/OpenMPI/OpenMPI-4.0.6-NVHPC-22.2-CUDA-11.6.0.eb new file mode 100644 index 00000000..e0e533b2 --- /dev/null +++ b/o/OpenMPI/OpenMPI-4.0.6-NVHPC-22.2-CUDA-11.6.0.eb @@ -0,0 +1,43 @@ +# IT4Innovations +# LK 2022 + +name = 'OpenMPI' +version = '4.0.6' +versionsuffix = '-CUDA-11.6.0' + +homepage = 'https://www.open-mpi.org/' +description = """The Open MPI Project is an open source MPI-3 implementation.""" + +toolchain = {'name': 'NVHPC', 'version': '22.2'} + +source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] +sources = [SOURCELOWER_TAR_GZ] + +dependencies = [ + ('UCX', '1.11.2', '-GCC-10.2.0-CUDA-11.6.0', True), + ('CUDAcore', '11.6.0', '', True), +] + +preconfigopts = 'export CC="pgcc -noswitcherror" && export CXX="pgc++ -noswitcherror" && export FC="pgfortran -noswitcherror" && ' + +configopts = '--enable-shared --enable-mpi-thread-multiple --with-verbs ' +configopts += '--with-hwloc=$EBROOTHWLOC ' # hwloc support +configopts += '--enable-mpirun-prefix-by-default ' +configopts += '--with-tm=/opt/pbs ' # Enable PBS +configopts += '--enable-mpi-cxx ' # Enable building the C++ MPI bindings +configopts += '--with-ucx=$EBROOTUCX ' +configopts += '--with-cuda=$EBROOTCUDACORE ' + +moduleclass = 'mpi' + +#setenv("OMPI_MCA_btl_openib_if_include", "mlx5_0") +#setenv("export OMPI_MCA_btl_openib_allow_ib", "1") +#setenv("OMPI_MCA_pml", "^ucx") +#setenv("OMPI_MCA_orte_base_help_aggregate", "0") +import os +if os.environ.get("CLUSTERNAME") in ["BARBORA"]: + modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx5_0', + 'OMPI_MCA_btl_openib_allow_ib': '1', + 'OMPI_MCA_orte_base_help_aggregate': '0', + 'OMPI_MCA_pml': '^ucx', + } diff --git a/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0-v2.eb b/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0-v2.eb new file mode 100644 index 00000000..f910e554 --- /dev/null +++ b/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0-v2.eb @@ -0,0 +1,43 @@ +# IT4Innovations +# LK 2022 + +name = 'OpenMPI' +version = '4.1.2' +versionsuffix = '-CUDA-11.6.0-v2' + +homepage = 'https://www.open-mpi.org/' +description = """The Open MPI Project is an open source MPI-3 implementation.""" + +toolchain = {'name': 'NVHPC', 'version': '22.2'} + +source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] +sources = [SOURCELOWER_TAR_GZ] + +dependencies = [ + ('UCX', '1.11.2', '-NVHPC-22.2-CUDA-11.6.0', True), + ('CUDAcore', '11.6.0', '', True), +] + +preconfigopts = 'export CC="pgcc -noswitcherror" && export CXX="pgc++ -noswitcherror" && export FC="pgfortran -noswitcherror" && ' + +configopts = '--enable-shared --enable-mpi-thread-multiple --with-verbs ' +configopts += '--with-hwloc=$EBROOTHWLOC ' # hwloc support +configopts += '--enable-mpirun-prefix-by-default ' +configopts += '--with-tm=/opt/pbs ' # Enable PBS +configopts += '--enable-mpi-cxx ' # Enable building the C++ MPI bindings +configopts += '--with-ucx=$EBROOTUCX ' +configopts += '--with-cuda=$EBROOTCUDACORE ' + +moduleclass = 'mpi' + +#setenv("OMPI_MCA_btl_openib_if_include", "mlx5_0") +#setenv("export OMPI_MCA_btl_openib_allow_ib", "1") +#setenv("OMPI_MCA_pml", "^ucx") +#setenv("OMPI_MCA_orte_base_help_aggregate", "0") +import os +if os.environ.get("CLUSTERNAME") in ["BARBORA"]: + modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx5_0', + 'OMPI_MCA_btl_openib_allow_ib': '1', + 'OMPI_MCA_orte_base_help_aggregate': '0', + 'OMPI_MCA_pml': '^ucx', + } diff --git a/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0.eb b/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0.eb new file mode 100644 index 00000000..a4ffb274 --- /dev/null +++ b/o/OpenMPI/OpenMPI-4.1.2-NVHPC-22.2-CUDA-11.6.0.eb @@ -0,0 +1,43 @@ +# IT4Innovations +# LK 2022 + +name = 'OpenMPI' +version = '4.1.2' +versionsuffix = '-CUDA-11.6.0' + +homepage = 'https://www.open-mpi.org/' +description = """The Open MPI Project is an open source MPI-3 implementation.""" + +toolchain = {'name': 'NVHPC', 'version': '22.2'} + +source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] +sources = [SOURCELOWER_TAR_GZ] + +dependencies = [ + ('UCX', '1.11.2', '-GCC-10.2.0-CUDA-11.6.0', True), + ('CUDAcore', '11.6.0', '', True), +] + +preconfigopts = 'export CC="pgcc -noswitcherror" && export CXX="pgc++ -noswitcherror" && export FC="pgfortran -noswitcherror" && ' + +configopts = '--enable-shared --enable-mpi-thread-multiple --with-verbs ' +configopts += '--with-hwloc=$EBROOTHWLOC ' # hwloc support +configopts += '--enable-mpirun-prefix-by-default ' +configopts += '--with-tm=/opt/pbs ' # Enable PBS +configopts += '--enable-mpi-cxx ' # Enable building the C++ MPI bindings +configopts += '--with-ucx=$EBROOTUCX ' +configopts += '--with-cuda=$EBROOTCUDACORE ' + +moduleclass = 'mpi' + +#setenv("OMPI_MCA_btl_openib_if_include", "mlx5_0") +#setenv("export OMPI_MCA_btl_openib_allow_ib", "1") +#setenv("OMPI_MCA_pml", "^ucx") +#setenv("OMPI_MCA_orte_base_help_aggregate", "0") +import os +if os.environ.get("CLUSTERNAME") in ["BARBORA"]: + modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx5_0', + 'OMPI_MCA_btl_openib_allow_ib': '1', + 'OMPI_MCA_orte_base_help_aggregate': '0', + 'OMPI_MCA_pml': '^ucx', + } diff --git a/o/OpenSSL/OpenSSL-1.1.eb b/o/OpenSSL/OpenSSL-1.1.eb new file mode 100644 index 00000000..0b340c4c --- /dev/null +++ b/o/OpenSSL/OpenSSL-1.1.eb @@ -0,0 +1,44 @@ +# IT4Innovations +# LK 2022 + +easyblock = 'EB_OpenSSL_wrapper' + +name = 'OpenSSL' +version = '1.1' +minimum_openssl_version = '1.1.1' + +homepage = 'https://www.openssl.org/' +description = """The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, + and Open Source toolchain implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) + protocols as well as a full-strength general purpose cryptography library. """ + +toolchain = SYSTEM +toolchainopts = {'pic': True} + +osdependencies = ['perl'] + +wrap_system_openssl = False + +builddependencies = [('pkg-config', '0.29.2')] + +# This easyconfig will wrap the OpenSSL installation in the host system. +# If the system provides the required binary, header files, and libraries for +# this version of OpenSSL, the installation directory of this module will be +# populated with symlinks to the system files. The minimum required version of +# OpenSSL can be finely controled with 'minimum_openssl_version' (defaults to +# easyconfig version). +# If the host system does not have this version of OpenSSL (or with the option +# wrap_system_openssl = False), EasyBuild will fall back to the following +# component list, which will be build and installed as usual. + +components = [ + (name, '1.1.1k', { + 'easyblock': 'EB_OpenSSL', + 'source_urls': ['https://www.openssl.org/source/'], + 'sources': [SOURCELOWER_TAR_GZ], + 'checksums': ['892a0875b9872acd04a9fde79b1f943075d5ea162415de3047c327df33fbaee5'], + 'start_dir': '%(namelower)s-%(version)s', + }), +] + +moduleclass = 'system' diff --git a/p/Python/Python-3.9.6-GCCcore-11.2.0-NetKet.eb b/p/Python/Python-3.9.6-GCCcore-11.2.0-NetKet.eb new file mode 100644 index 00000000..15cbf8e6 --- /dev/null +++ b/p/Python/Python-3.9.6-GCCcore-11.2.0-NetKet.eb @@ -0,0 +1,470 @@ +# IT4Innovations +# LK 2022 + +name = 'Python' +version = '3.9.6' +versionsuffix = '-NetKet' + +homepage = 'https://python.org/' +description = """Python is a programming language that lets you work more quickly and integrate your systems + more effectively.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.python.org/ftp/%(namelower)s/%(version)s/'] +sources = [SOURCE_TGZ] +checksums = ['d0a35182e19e416fc8eae25a3dcd4d02d4997333e4ad1f2eee6010aadc3fe866'] + +builddependencies = [ + ('UnZip', '6.0'), + ('Rust', '1.54.0'), # required for setuptools-rust, which is needed for cryptography + ('pkg-config', '0.29.2'), + ('git', '2.33.1', '-nodocs'), # required for pbr +] + +dependencies = [ + ('binutils', '2.37'), + ('bzip2', '1.0.8'), # required for bz2 package in Python stdlib + ('zlib', '1.2.11'), + ('libreadline', '8.1'), + ('ncurses', '6.2'), + ('SQLite', '3.36'), + ('XZ', '5.2.5'), + ('GMP', '6.2.1'), # required for pycrypto + ('libffi', '3.4.2'), + ('OpenSSL', '1.1', '', True), + ('CUDAcore', '11.6.0', '', True), +] + +install_pip = True + +exts_default_options = { + 'download_dep_fail': True, + 'sanity_pip_check': True, + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, +} + +# order is important! +# package versions updated 06 August 2021 +exts_list = [ + ('wheel', '0.36.2', { + 'checksums': ['e11eefd162658ea59a60a0f6c7d493a7190ea4b9a85e335b33489d9f17e0245e'], + }), + ('setuptools', '57.4.0', { + 'checksums': ['6bac238ffdf24e8806c61440e755192470352850f3419a52f26ffe0a1a64f465'], + }), + ('pip', '21.2.2', { + 'checksums': ['38e9250dfb0d7fa842492bede9259d4b3289a936ce454f7c58f059f28a94c01d'], + }), + ('nose', '1.3.7', { + 'checksums': ['f1bffef9cbc82628f6e7d7b40d7e255aefaa1adb6a1b1d26c69a8b79e6208a98'], + }), + ('blist', '1.3.6', { + 'patches': ['Python-3_9-blist-1.3.6-fix-undefined_symbol_PyObject_GC_IS_TRACKED.patch'], + 'checksums': [ + '3a12c450b001bdf895b30ae818d4d6d3f1552096b8c995f0fe0c74bef04d1fc3', # blist-1.3.6.tar.gz + # Python-3_9-blist-1.3.6-fix-undefined_symbol_PyObject_GC_IS_TRACKED.patch + '18a643d1d1565b05df7dcc9a612a86dcf7b3b352435032f6425a61b597f911d0', + ], + }), + ('paycheck', '1.0.2', { + 'checksums': ['6db7fc367c146cd59d2327ad4d2d6b0a24bc1be2d6953bb0773cbf702ee1ed34'], + }), + ('pbr', '5.6.0', { + 'checksums': ['42df03e7797b796625b1029c0400279c7c34fd7df24a7d7818a1abb5b38710dd'], + }), + ('Cython', '0.29.24', { + 'checksums': ['cdf04d07c3600860e8c2ebaad4e8f52ac3feb212453c1764a49ac08c827e8443'], + }), + ('six', '1.16.0', { + 'checksums': ['1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926'], + }), + ('toml', '0.10.2', { + 'checksums': ['b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f'], + }), + ('setuptools_scm', '6.0.1', { + 'checksums': ['d1925a69cb07e9b29416a275b9fadb009a23c148ace905b2fb220649a6c18e92'], + }), + ('python-dateutil', '2.8.2', { + 'modulename': 'dateutil', + 'checksums': ['0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86'], + }), + ('decorator', '5.0.9', { + 'checksums': ['72ecfba4320a893c53f9706bebb2d55c270c1e51a28789361aa93e4a21319ed5'], + }), + ('liac-arff', '2.5.0', { + 'modulename': 'arff', + 'checksums': ['3220d0af6487c5aa71b47579be7ad1d94f3849ff1e224af3bf05ad49a0b5c4da'], + }), + ('pycrypto', '2.6.1', { + 'modulename': 'Crypto', + 'patches': ['pycrypto-2.6.1_remove-usr-include.patch'], + 'checksums': [ + 'f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c', # pycrypto-2.6.1.tar.gz + # pycrypto-2.6.1_remove-usr-include.patch + '06c3d3bb290305e1360a023ea03f9281116c230de62382e6be9474996086712e', + ], + }), + ('ecdsa', '0.17.0', { + 'checksums': ['b9f500bb439e4153d0330610f5d26baaf18d17b8ced1bc54410d189385ea68aa'], + }), + ('ipaddress', '1.0.23', { + 'checksums': ['b7f8e0369580bb4a24d5ba1d7cc29660a4a6987763faf1d8a8046830e020e7e2'], + }), + ('asn1crypto', '1.4.0', { + 'checksums': ['f4f6e119474e58e04a2b1af817eb585b4fd72bdd89b998624712b5c99be7641c'], + }), + ('idna', '3.2', { + 'checksums': ['467fbad99067910785144ce333826c71fb0e63a425657295239737f7ecd125f3'], + }), + ('pycparser', '2.20', { + 'checksums': ['2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0'], + }), + ('cffi', '1.14.6', { + 'checksums': ['c9a875ce9d7fe32887784274dd533c57909b7b1dcadcc128a2ac21331a9765dd'], + }), + ('semantic_version', '2.8.5', { + 'checksums': ['d2cb2de0558762934679b9a104e82eca7af448c9f4974d1f3eeccff651df8a54'], + }), + ('setuptools-rust', '0.12.1', { + 'checksums': ['647009e924f0ae439c7f3e0141a184a69ad247ecb9044c511dabde232d3d570e'], + }), + ('cryptography', '3.4.7', { + 'checksums': ['3d10de8116d25649631977cb37da6cbdd2d6fa0e0281d014a5b7d337255ca713'], + # avoid that cargo uses $HOME/.cargo, which can lead to build failures if home directory is NFS mounted, + # see https://github.com/rust-lang/cargo/issues/6652 + 'preinstallopts': "export CARGO_HOME=%(builddir)s/cargo && ", + }), + ('pyasn1', '0.4.8', { + 'checksums': ['aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba'], + }), + ('PyNaCl', '1.4.0', { + 'modulename': 'nacl', + 'checksums': ['54e9a2c849c742006516ad56a88f5c74bf2ce92c9f67435187c3c5953b346505'], + }), + ('bcrypt', '3.2.0', { + 'checksums': ['5b93c1726e50a93a033c36e5ca7fdcd29a5c7395af50a6892f5d9e7c6cfbfb29'], + }), + ('paramiko', '2.7.2', { + 'checksums': ['7f36f4ba2c0d81d219f4595e35f70d56cc94f9ac40a6acdf51d6ca210ce65035'], + }), + ('pyparsing', '2.4.7', { + 'checksums': ['c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1'], + }), + ('netifaces', '0.11.0', { + 'checksums': ['043a79146eb2907edf439899f262b3dfe41717d34124298ed281139a8b93ca32'], + }), + ('netaddr', '0.8.0', { + 'checksums': ['d6cc57c7a07b1d9d2e917aa8b36ae8ce61c35ba3fcd1b83ca31c5a0ee2b5a243'], + }), + ('mock', '4.0.3', { + 'checksums': ['7d3fbbde18228f4ff2f1f119a45cdffa458b4c0dee32eb4d2bb2f82554bac7bc'], + }), + ('pytz', '2021.1', { + 'checksums': ['83a4a90894bf38e243cf052c8b58f381bfe9a7a483f6a9cab140bc7f702ac4da'], + }), + ('bitstring', '3.1.9', { + 'checksums': ['a5848a3f63111785224dca8bb4c0a75b62ecdef56a042c8d6be74b16f7e860e7'], + }), + ('appdirs', '1.4.4', { + 'checksums': ['7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41'], + }), + ('distlib', '0.3.2', { + 'source_tmpl': 'distlib-%(version)s.zip', + 'checksums': ['106fef6dc37dd8c0e2c0a60d3fca3e77460a48907f335fa28420463a6f799736'], + }), + ('filelock', '3.0.12', { + 'checksums': ['18d82244ee114f543149c66a6e0c14e9c4f8a1044b5cdaadd0f82159d6a6ff59'], + }), + ('zipp', '3.5.0', { + 'checksums': ['f5812b1e007e48cff63449a5e9f4e7ebea716b4111f9c4f9a645f91d579bf0c4'], + }), + ('typing_extensions', '3.10.0.0', { + 'checksums': ['50b6f157849174217d0656f99dc82fe932884fb250826c18350e159ec6cdf342'], + }), + ('importlib_metadata', '4.6.3', { + 'checksums': ['0645585859e9a6689c523927a5032f2ba5919f1f7d0e84bd4533312320de1ff9'], + }), + ('backports.entry_points_selectable', '1.1.0', { + 'checksums': ['988468260ec1c196dab6ae1149260e2f5472c9110334e5d51adcb77867361f6a'], + }), + ('platformdirs', '2.2.0', { + 'checksums': ['632daad3ab546bd8e6af0537d09805cec458dce201bccfe23012df73332e181e'], + }), + ('scandir', '1.10.0', { + 'checksums': ['4d4631f6062e658e9007ab3149a9b914f3548cb38bfb021c64f39a025ce578ae'], + }), + ('pathlib2', '2.3.6', { + 'checksums': ['7d8bcb5555003cdf4a8d2872c538faa3a0f5d20630cb360e518ca3b981795e5f'], + }), + ('importlib_resources', '5.2.2', { + 'checksums': ['a65882a4d0fe5fbf702273456ba2ce74fe44892c25e42e057aca526b702a6d4b'], + }), + ('virtualenv', '20.7.0', { + 'checksums': ['97066a978431ec096d163e72771df5357c5c898ffdd587048f45e0aecc228094'], + }), + ('docopt', '0.6.2', { + 'checksums': ['49b3a825280bd66b3aa83585ef59c4a8c82f2c8a522dbe754a8bc8d08c85c491'], + }), + ('joblib', '1.0.1', { + 'checksums': ['9c17567692206d2f3fb9ecf5e991084254fe631665c450b443761c4186a613f7'], + }), + ('chardet', '4.0.0', { + 'checksums': ['0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa'], + }), + ('certifi', '2021.5.30', { + 'checksums': ['2bbf76fd432960138b3ef6dda3dde0544f27cbf8546c458e60baf371917ba9ee'], + }), + ('urllib3', '1.26.6', { + 'checksums': ['f57b4c16c62fa2760b7e3d97c35b255512fb6b59a259730f36ba32ce9f8e342f'], + }), + ('charset-normalizer', '2.0.4', { + 'checksums': ['f23667ebe1084be45f6ae0538e4a5a865206544097e4e8bbcacf42cd02a348f3'], + }), + ('requests', '2.26.0', { + 'checksums': ['b8aa58f8cf793ffd8782d3d8cb19e66ef36f7aba4353eec859e74678b01b07a7'], + }), + ('xlrd', '2.0.1', { + 'checksums': ['f72f148f54442c6b056bf931dbc34f986fd0c3b0b6b5a58d013c9aef274d0c88'], + }), + ('py_expression_eval', '0.3.13', { + 'checksums': ['6e7d59d391d54a034609ce66b820e7dd68c757672d166dcc514bf7abf15ba57e'], + }), + ('tabulate', '0.8.9', { + 'checksums': ['eb1d13f25760052e8931f2ef80aaf6045a6cceb47514db8beab24cded16f13a7'], + }), + ('ujson', '4.0.2', { + 'checksums': ['c615a9e9e378a7383b756b7e7a73c38b22aeb8967a8bfbffd4741f7ffd043c4d'], + }), + ('atomicwrites', '1.4.0', { + 'checksums': ['ae70396ad1a434f9c7046fd2dd196fc04b12f9e91ffb859164193be8b6168a7a'], + }), + ('py', '1.10.0', { + 'checksums': ['21b81bda15b66ef5e1a777a21c4dcd9c20ad3efd0b3f817e7a809035269e1bd3'], + }), + ('pluggy', '0.13.1', { + 'checksums': ['15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0'], + }), + ('more-itertools', '8.8.0', { + 'checksums': ['83f0308e05477c68f56ea3a888172c78ed5d5b3c282addb67508e7ba6c8f813a'], + }), + ('attrs', '21.2.0', { + 'modulename': 'attr', + 'checksums': ['ef6aaac3ca6cd92904cdd0d83f629a15f18053ec84e6432106f7a4d04ae4f5fb'], + }), + ('backports.functools_lru_cache', '1.6.4', { + 'checksums': ['d5ed2169378b67d3c545e5600d363a923b09c456dab1593914935a68ad478271'], + }), + ('wcwidth', '0.2.5', { + 'checksums': ['c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83'], + }), + ('iniconfig', '1.1.1', { + 'checksums': ['bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32'], + }), + ('packaging', '20.9', { + 'checksums': ['5b327ac1320dc863dca72f4514ecc086f31186744b84a230374cc1fd776feae5'], + }), + ('colorama', '0.4.4', { + 'checksums': ['5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b'], + }), + ('pytest', '6.2.4', { + 'checksums': ['50bcad0a0b9c5a72c8e4e7c9855a3ad496ca6a881a3641b4260605450772c54b'], + }), + ('MarkupSafe', '2.0.1', { + 'checksums': ['594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a'], + }), + ('Jinja2', '3.0.1', { + 'checksums': ['703f484b47a6af502e743c9122595cc812b0271f661722403114f71a79d0f5a4'], + }), + ('sphinxcontrib-serializinghtml', '1.1.5', { + 'modulename': 'sphinxcontrib.serializinghtml', + 'checksums': ['aa5f6de5dfdf809ef505c4895e51ef5c9eac17d0f287933eb49ec495280b6952'], + }), + ('sphinxcontrib-websupport', '1.2.4', { + 'modulename': 'sphinxcontrib.websupport', + 'checksums': ['4edf0223a0685a7c485ae5a156b6f529ba1ee481a1417817935b20bde1956232'], + }), + ('Pygments', '2.9.0', { + 'checksums': ['a18f47b506a429f6f4b9df81bb02beab9ca21d0a5fee38ed15aef65f0545519f'], + }), + ('imagesize', '1.2.0', { + 'checksums': ['b1f6b5a4eab1f73479a50fb79fcf729514a900c341d8503d62a62dbc4127a2b1'], + }), + ('docutils', '0.17.1', { + 'checksums': ['686577d2e4c32380bb50cbb22f575ed742d58168cee37e99117a854bcd88f125'], + }), + ('snowballstemmer', '2.1.0', { + 'checksums': ['e997baa4f2e9139951b6f4c631bad912dfd3c792467e2f03d7239464af90e914'], + }), + ('alabaster', '0.7.12', { + 'checksums': ['a661d72d58e6ea8a57f7a86e37d86716863ee5e92788398526d58b26a4e4dc02'], + }), + ('sphinxcontrib-applehelp', '1.0.2', { + 'modulename': 'sphinxcontrib.applehelp', + 'checksums': ['a072735ec80e7675e3f432fcae8610ecf509c5f1869d17e2eecff44389cdbc58'], + }), + ('sphinxcontrib-devhelp', '1.0.2', { + 'modulename': 'sphinxcontrib.devhelp', + 'checksums': ['ff7f1afa7b9642e7060379360a67e9c41e8f3121f2ce9164266f61b9f4b338e4'], + }), + ('sphinxcontrib-htmlhelp', '2.0.0', { + 'modulename': 'sphinxcontrib.htmlhelp', + 'checksums': ['f5f8bb2d0d629f398bf47d0d69c07bc13b65f75a81ad9e2f71a63d4b7a2f6db2'], + }), + ('sphinxcontrib-jsmath', '1.0.1', { + 'modulename': 'sphinxcontrib.jsmath', + 'checksums': ['a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8'], + }), + ('sphinxcontrib-qthelp', '1.0.3', { + 'modulename': 'sphinxcontrib.qthelp', + 'checksums': ['4c33767ee058b70dba89a6fc5c1892c0d57a54be67ddd3e7875a18d14cba5a72'], + }), + ('Babel', '2.9.1', { + 'checksums': ['bc0c176f9f6a994582230df350aa6e05ba2ebe4b3ac317eab29d9be5d2768da0'], + }), + ('Sphinx', '4.1.2', { + 'checksums': ['3092d929cd807926d846018f2ace47ba2f3b671b309c7a89cd3306e80c826b13'], + }), + ('sphinx-bootstrap-theme', '0.7.1', { + 'checksums': ['571e43ccb76d4c6c06576aa24a826b6ebc7adac45a5b54985200128806279d08'], + }), + ('click', '8.0.1', { + 'checksums': ['8c04c11192119b1ef78ea049e0a6f0463e4c48ef00a30160c704337586f3ad7a'], + }), + ('psutil', '5.8.0', { + 'checksums': ['0c9ccb99ab76025f2f0bbecf341d4656e9c1351db8cc8a03ccd62e318ab4b5c6'], + }), + ('future', '0.18.2', { + 'checksums': ['b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d'], + }), + ('sortedcontainers', '2.4.0', { + 'checksums': ['25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88'], + }), + ('intervaltree', '3.1.0', { + 'checksums': ['902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d'], + }), + ('pytoml', '0.1.21', { + 'checksums': ['8eecf7c8d0adcff3b375b09fe403407aa9b645c499e5ab8cac670ac4a35f61e7'], + }), + ('flit-core', '3.3.0', { + 'source_tmpl': 'flit_core-%(version)s.tar.gz', + 'checksums': ['b1404accffd6504b5f24eeca9ec5d3c877f828d16825348ba81515fa084bd5f0'], + }), + ('zipfile36', '0.1.3', { + 'checksums': ['a78a8dddf4fa114f7fe73df76ffcce7538e23433b7a6a96c1c904023f122aead'], + }), + ('flit', '3.3.0', { + 'checksums': ['65fbe22aaa7f880b776b20814bd80b0afbf91d1f95b17235b608aa256325ce57'], + }), + ('regex', '2021.8.3', { + 'checksums': ['8935937dad2c9b369c3d932b0edbc52a62647c2afb2fafc0c280f14a8bf56a6a'], + }), + ('intreehooks', '1.0', { + 'checksums': ['87e600d3b16b97ed219c078681260639e77ef5a17c0e0dbdd5a302f99b4e34e1'], + }), + ('pylev', '1.4.0', { + 'checksums': ['9e77e941042ad3a4cc305dcdf2b2dec1aec2fbe3dd9015d2698ad02b173006d1'], + }), + ('pastel', '0.2.1', { + 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-any.whl', + 'checksums': ['4349225fcdf6c2bb34d483e523475de5bb04a5c10ef711263452cb37d7dd4364'], + }), + ('crashtest', '0.3.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['300f4b0825f57688b47b6d70c6a31de33512eb2fa1ac614f780939aa0cf91680'], + }), + ('clikit', '0.6.2', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['71268e074e68082306e23d7369a7b99f824a0ef926e55ba2665e911f7208489e'], + }), + ('jeepney', '0.7.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['1b5a0ea5c0e7b166b2f5895b91a08c14de8915afda4407fb5022a195224958ac'], + }), + ('SecretStorage', '3.3.1', { + 'checksums': ['fd666c51a6bf200643495a04abb261f83229dcb6fd8472ec393df7ffc8b6f195'], + }), + ('keyring', '21.2.0', { + 'modulename': False, # Doesn't work properly if HOME directory contains keys + 'checksums': ['197fd5903901030ef7b82fe247f43cfed2c157a28e7747d1cfcf4bc5e699dd03'], + }), + ('keyrings.alt', '4.1.0', { + 'modulename': False, + 'checksums': ['52ccb61d6f16c10f32f30d38cceef7811ed48e086d73e3bae86f0854352c4ab2'], + }), + ('tomlkit', '0.7.2', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['173ad840fa5d2aac140528ca1933c29791b79a374a0861a80347f42ec9328117'], + }), + ('shellingham', '1.4.0', { + 'checksums': ['4855c2458d6904829bd34c299f11fdeed7cfefbf8a2c522e4caea6cd76b3171e'], + }), + ('requests-toolbelt', '0.9.1', { + 'checksums': ['968089d4584ad4ad7c171454f0a5c6dac23971e9472521ea3b6d49d610aa6fc0'], + }), + ('pyrsistent', '0.18.0', { + 'checksums': ['773c781216f8c2900b42a7b638d5b517bb134ae1acbebe4d1e8f1f41ea60eb4b'], + }), + ('pkginfo', '1.7.1', { + 'checksums': ['e7432f81d08adec7297633191bbf0bd47faf13cd8724c3a13250e51d542635bd'], + }), + ('ptyprocess', '0.7.0', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35'], + }), + ('pexpect', '4.8.0', { + 'checksums': ['fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c'], + }), + ('jsonschema', '3.2.0', { + 'checksums': ['c8a85b28d377cc7737e46e2d9f2b4f44ee3c0e1deac6bf46ddefc7187d30797a'], + }), + ('simplejson', '3.17.3', { + 'checksums': ['da72a452bcf4349fc467a12b54ab0e63e654a571cacc44084826d52bde12b6ee'], + }), + ('webencodings', '0.5.1', { + 'checksums': ['b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923'], + }), + ('html5lib', '1.1', { + 'checksums': ['b2e5b40261e20f354d198eae92afc10d750afb487ed5e50f9c4eaf07c184146f'], + }), + ('cleo', '0.8.1', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['141cda6dc94a92343be626bb87a0b6c86ae291dfc732a57bf04310d4b4201753'], + }), + ('cachy', '0.3.0', { + 'checksums': ['186581f4ceb42a0bbe040c407da73c14092379b1e4c0e327fdb72ae4a9b269b1'], + }), + ('msgpack', '1.0.2', { + 'checksums': ['fae04496f5bc150eefad4e9571d1a76c55d021325dcd484ce45065ebbdd00984'], + }), + ('CacheControl', '0.12.6', { + 'checksums': ['be9aa45477a134aee56c8fac518627e1154df063e85f67d4f83ce0ccc23688e8'], + }), + ('lockfile', '0.12.2', { + 'checksums': ['6aed02de03cba24efabcd600b30540140634fc06cfa603822d508d5361e9f799'], + }), + ('poetry-core', '1.0.3', { + 'modulename': 'poetry.core', + 'checksums': ['2315c928249fc3207801a81868b64c66273077b26c8d8da465dccf8f488c90c5'], + }), + ('glob2', '0.7', { + 'checksums': ['85c3dbd07c8aa26d63d7aacee34fa86e9a91a3873bc30bf62ec46e531f92ab8c'], + }), + ('poetry', '1.1.7', { + 'checksums': ['3833c7b22411b8393e8e594fede94f0ef7a5260c19f51e272cce76512cffe6c8'], + }), + ('fsspec', '2021.7.0', { + 'checksums': ['792ebd3b54de0b30f1ce73f0ba0a8bcc864724f2d9f248cb8d0ece47db0cbde8'], + }), + ('threadpoolctl', '2.2.0', { + 'checksums': ['86d4b6801456d780e94681d155779058759eaef3c3564758b17b6c99db5f81cb'], + }), + ('simplegeneric', '0.8.1', { + 'source_tmpl': 'simplegeneric-%(version)s.zip', + 'checksums': ['dc972e06094b9af5b855b3df4a646395e43d1c9d0d39ed345b7393560d0b9173'], + }), +] + +moduleclass = 'lang' diff --git a/p/protobuf/protobuf-2.5.0.eb b/p/protobuf/protobuf-2.5.0.eb index df453dcb..80c32871 100644 --- a/p/protobuf/protobuf-2.5.0.eb +++ b/p/protobuf/protobuf-2.5.0.eb @@ -9,7 +9,7 @@ description = """Google Protocol Buffers""" toolchain = SYSTEM sources = [SOURCE_TAR_GZ] -source_urls = [GOOGLECODE_SOURCE] +source_urls = ['https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/protobuf/'] sanity_check_paths = { 'files': ['bin/protoc'], diff --git a/s/Singularity/Singularity-3.8.6.eb b/s/Singularity/Singularity-3.8.6.eb new file mode 100644 index 00000000..2ac592b4 --- /dev/null +++ b/s/Singularity/Singularity-3.8.6.eb @@ -0,0 +1,47 @@ +# IT4Innovations +# LK 2022 + +# Dokoncit `make install` rucne, nejde bez ROOTa !!! +# /apps/all/Singularity/3.7.0/etc/singularity/singularity.conf nv=yes !!! +# Poslat info na tomas.karasek@vsb.cz o zmene... + +easyblock = 'ConfigureMake' + +name = 'Singularity' +version = '3.8.6' + +homepage = 'https://github.com/sylabs/singularity' +description = "Singularity is an open source container platform designed to be simple, fast, and secure. Singularity is optimized for EPC and HPC workloads, allowing untrusted users to run untrusted containers in a trusted way." + +toolchain = SYSTEM + +source_urls = ['https://github.com/hpcng/singularity/releases/download/v%s/' % version] +sources = ['singularity-%(version)s.tar.gz'] + +builddependencies = [ + ('Go', '1.17.6'), +] + +dependencies = [ + ('squashfs-tools', '4.3'), +] + +osdependencies = [ + ('openssl-devel', 'libssl-dev', 'libopenssl-devel'), +] + +skipsteps = ['configure'] +prebuildopts = './mconfig --prefix=%(installdir)s && ' +buildopts = '-C ./builddir' + + +postinstallcmds = [ + 'echo "mksquashfs path = /apps/all/squashfs-tools/4.3/bin" >> %(installdir)s/etc/singularity/singularity.conf', +] + +sanity_check_paths = { + 'files': ['bin/singularity'], + 'dirs': ['bin', 'etc', 'libexec', 'var'], +} + +moduleclass = 'tools' diff --git a/u/UCX/UCX-1.11.2-GCC-10.2.0-CUDA-11.6.0.eb b/u/UCX/UCX-1.11.2-GCC-10.2.0-CUDA-11.6.0.eb new file mode 100644 index 00000000..72745620 --- /dev/null +++ b/u/UCX/UCX-1.11.2-GCC-10.2.0-CUDA-11.6.0.eb @@ -0,0 +1,49 @@ +# IT4Innovations +# LK 2022 + +easyblock = 'ConfigureMake' + +name = 'UCX' +version = '1.11.2' +versionsuffix= '-CUDA-11.6.0' + +homepage = 'http://www.openucx.org/' +description = """Unified Communication X +An open-source production grade communication framework for data centric +and high-performance applications +""" + +toolchain = {'name': 'GCC', 'version': '10.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] +sources = ['%(namelower)s-%(version)s.tar.gz'] +#patches = ['%(name)s-%(version)s.patch'] + +builddependencies = [ + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +dependencies = [ + ('numactl', '2.0.13'), + ('CUDAcore', '11.6.0', '', True), +] + +configure_cmd = "contrib/configure-release" + +configopts = '--enable-optimizations --enable-cma --enable-mt --with-verbs --with-gdrcopy=$EBROOTGDRCOPY ' +configopts += '--without-java --disable-doxygen-doc --with-cuda=$EBROOTCUDACORE ' + +buildopts = 'V=1' + +sanity_check_paths = { + 'files': ['bin/ucx_info', 'bin/ucx_perftest', 'bin/ucx_read_profile'], + 'dirs': ['include', 'lib', 'share'] +} + +#sanity_check_commands = ["ucx_info -d"] + +moduleclass = 'lib' diff --git a/u/UCX/UCX-1.11.2-NVHPC-22.2-CUDA-11.6.0.eb b/u/UCX/UCX-1.11.2-NVHPC-22.2-CUDA-11.6.0.eb new file mode 100644 index 00000000..99a9e170 --- /dev/null +++ b/u/UCX/UCX-1.11.2-NVHPC-22.2-CUDA-11.6.0.eb @@ -0,0 +1,50 @@ +# IT4Innovations +# LK 2022 + +easyblock = 'ConfigureMake' + +name = 'UCX' +version = '1.11.2' +versionsuffix= '-CUDA-11.6.0' + +homepage = 'http://www.openucx.org/' +description = """Unified Communication X +An open-source production grade communication framework for data centric +and high-performance applications +""" + +toolchain = {'name': 'NVHPC', 'version': '22.2'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] +sources = ['%(namelower)s-%(version)s.tar.gz'] +#patches = ['%(name)s-%(version)s.patch'] + +builddependencies = [ + ('binutils', '2.35'), + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +dependencies = [ + ('numactl', '2.0.13'), + ('CUDAcore', '11.6.0', '', True), +] + +configure_cmd = "contrib/configure-release" + +configopts = '--enable-optimizations --enable-cma --enable-mt --with-verbs --with-gdrcopy=$EBROOTGDRCOPY ' +configopts += '--without-java --disable-doxygen-doc --with-cuda=$EBROOTCUDACORE ' + +buildopts = 'V=1' + +sanity_check_paths = { + 'files': ['bin/ucx_info', 'bin/ucx_perftest', 'bin/ucx_read_profile'], + 'dirs': ['include', 'lib', 'share'] +} + +#sanity_check_commands = ["ucx_info -d"] + +moduleclass = 'lib' diff --git a/v/VTK/VTK-9.1.0-intel-2020b-Python-3.8.6.eb b/v/VTK/VTK-9.1.0-intel-2020b-Python-3.8.6.eb new file mode 100644 index 00000000..5795926c --- /dev/null +++ b/v/VTK/VTK-9.1.0-intel-2020b-Python-3.8.6.eb @@ -0,0 +1,88 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA +# Authors:: Fotis Georgatos +# License:: MIT/GPL +# +# This work implements a part of the HPCBIOS project and is a component of the policy: +# https://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-97.html +## + +easyblock = 'CMakeMake' + +name = 'VTK' +version = '9.1.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.vtk.org' +description = """The Visualization Toolkit (VTK) is an open-source, freely available software system for + 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several + interpreted interface layers including Tcl/Tk, Java, and Python. VTK supports a wide variety of visualization + algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques + such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation.""" + +toolchain = {'name': 'intel', 'version': '2020b'} +toolchainopts = {'usempi': True} + +source_urls = ['https://www.vtk.org/files/release/%(version_major_minor)s'] +sources = [ + SOURCE_TAR_GZ, + '%(name)sData-%(version)s.tar.gz', +] +patches = [('vtk-version.egg-info', '.')] + +builddependencies = [('CMake', '3.18.4')] + +dependencies = [ + ('Python', '3.8.6'), + ('SciPy-bundle', '2020.11'), + ('XZ', '5.2.5'), + ('libGLU', '9.0.1'), + ('X11', '20201008'), +] + +separate_build_dir = True + +# OpenGL +configopts = "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT +configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT +configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include " +# Python +configopts += "-DVTK_WRAP_PYTHON=ON -DVTK_PYTHON_VERSION=3 -DVTK_PYTHON_OPTIONAL_LINK=OFF " +# Other +configopts += "-DVTK_USE_MPI=ON " +configopts += "-DCMAKE_INSTALL_LIBDIR=lib" + +preinstallopts = "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " + +# Install a egg-info file so VTK is more python friendly, required for mayavi +local_egg_info_src = '%(builddir)s/VTK-%(version)s/vtk-version.egg-info' +local_egg_info_dest = '%(installdir)s/lib/python%(pyshortver)s/site-packages/vtk-%(version)s.egg-info' +postinstallcmds = [ + 'sed "s/#VTK_VERSION#/%%(version)s/" %s > %s' % (local_egg_info_src, local_egg_info_dest), +] + +modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']} + +local_vtk_exec = ['vtk%s-%%(version_major_minor)s' % x + for x in ['WrapJava', 'ParseJava', 'WrapPythonInit', 'WrapPython', 'WrapHierarchy']] +local_vtk_exec += ['vtkpython'] +local_vtk_libs = ['CommonCore', 'IONetCDF', 'ParallelCore', 'RenderingOpenGL2'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_vtk_exec] + ['include/vtk-%(version_major_minor)s/vtkMPI.h'] + + ['lib/libvtk%s-%%(version_major_minor)s.%s' % (l, SHLIB_EXT) for l in local_vtk_libs], + 'dirs': ['lib/python%(pyshortver)s/site-packages/', 'include/vtk-%(version_major_minor)s'], +} + +sanity_check_commands = [ + "python -c 'import %(namelower)s'", + "python -c 'import pkg_resources; pkg_resources.get_distribution(\"vtk\")'", + # make sure that VTK Python libraries link to libpython (controlled via DVTK_PYTHON_OPTIONAL_LINK=OFF), + # see https://gitlab.kitware.com/vtk/vtk/-/issues/17881 + "ldd $EBROOTVTK/lib/libvtkPythonContext2D-%%(version_major_minor)s.%s | grep /libpython" % SHLIB_EXT, +] + + +moduleclass = 'vis' diff --git a/z/zlib/zlib-1.2.11.eb b/z/zlib/zlib-1.2.11.eb deleted file mode 100644 index 33229ecd..00000000 --- a/z/zlib/zlib-1.2.11.eb +++ /dev/null @@ -1,31 +0,0 @@ -# IT4Innovations 2018 - -easyblock = 'ConfigureMake' - -name = 'zlib' -version = '1.2.11' - -homepage = 'http://www.zlib.net/' -description = """zlib is designed to be a free, general-purpose, legally unencumbered -- that is, - not covered by any patents -- lossless data-local_compression library for use on virtually any - local_computer hardware and operating system.""" - -toolchain = SYSTEM -toolchainopts = {'pic': True} - -source_urls = ['http://zlib.net/fossils'] -sources = [SOURCELOWER_TAR_GZ] - -buildopts = "CFLAGS='-fPIC'" - -sanity_check_paths = { - 'files': [ - 'include/zconf.h', - 'include/zlib.h', - 'lib/libz.a', - 'lib/libz.%s' % - SHLIB_EXT], - 'dirs': [], -} - -moduleclass = 'lib' From d22ce5028db3f1b542313fff5742c655e750afd9 Mon Sep 17 00:00:00 2001 From: Lukas Krupcik Date: Mon, 7 Mar 2022 10:59:02 +0100 Subject: [PATCH 2/2] new file: l/libnsl/libnsl-1.3.0-GCCcore-10.3.0.eb new file: q/QMCPACK/QMCPACK-3.13.0-intel-2020b-Python-3.8.6.eb --- l/libnsl/libnsl-1.3.0-GCCcore-10.3.0.eb | 33 ++++++++++ ...QMCPACK-3.13.0-intel-2020b-Python-3.8.6.eb | 61 +++++++++++++++++++ 2 files changed, 94 insertions(+) create mode 100644 l/libnsl/libnsl-1.3.0-GCCcore-10.3.0.eb create mode 100644 q/QMCPACK/QMCPACK-3.13.0-intel-2020b-Python-3.8.6.eb diff --git a/l/libnsl/libnsl-1.3.0-GCCcore-10.3.0.eb b/l/libnsl/libnsl-1.3.0-GCCcore-10.3.0.eb new file mode 100644 index 00000000..fcacc1c5 --- /dev/null +++ b/l/libnsl/libnsl-1.3.0-GCCcore-10.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'libnsl' +version = '1.3.0' + +homepage = 'https://github.com/thkukuk/libnsl' +description = """The libnsl package contains the public client interface for NIS(YP).""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +source_urls = ['https://github.com/thkukuk/%(name)s/releases/download/v%(version)s/'] +sources = [SOURCE_TAR_XZ] +checksums = ['eac3062957fa302c62eff4aed718a07bacbf9ceb0a058289f12a19bfdda3c8e2'] + +builddependencies = [ + ('binutils', '2.36.1'), +] + +dependencies = [ + ('libtirpc', '1.3.2'), +] + +# Provide a symlink for libnsl.so.1, which used to be part of glibc. +# This new version of libnsl should be backwards compatible. +postinstallcmds = ['ln -s libnsl.so %(installdir)s/lib/libnsl.so.1'] + +sanity_check_paths = { + 'files': ['include/rpcsvc/nis.h', 'include/rpcsvc/yp.h', 'lib/libnsl.a', + 'lib/libnsl.%s' % SHLIB_EXT, 'lib/libnsl.%s.1' % SHLIB_EXT], + 'dirs': ['include'] +} + +moduleclass = 'devel' diff --git a/q/QMCPACK/QMCPACK-3.13.0-intel-2020b-Python-3.8.6.eb b/q/QMCPACK/QMCPACK-3.13.0-intel-2020b-Python-3.8.6.eb new file mode 100644 index 00000000..c7257254 --- /dev/null +++ b/q/QMCPACK/QMCPACK-3.13.0-intel-2020b-Python-3.8.6.eb @@ -0,0 +1,61 @@ +# IT4Innovations 2022 +# JK + +easyblock = 'CMakeMake' + +name = 'QMCPACK' +version = '3.13.0' +versionsuffix = "-Python-%(pyver)s" + +homepage = "https://qmcpack.org/" +description = """QMCPACK, is a modern high-performance open-source Quantum Monte Carlo (QMC) simulation code. Its main applications are electronic structure calculations of molecular, quasi-2D and solid-state systems. Variational Monte Carlo (VMC), diffusion Monte Carlo (DMC) and a number of other advanced QMC algorithms are implemented. Orbital space auxiliary field QMC (AFQMC) has recently been added. By directly solving the Schrodinger equation, QMC methods offer greater accuracy than methods such as density functional theory, but at a trade-off of much greater local_computational expense. +""" + +toolchain = {'name': 'intel', 'version': '2020b'} +import os +if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: + toolchainopts = {'opt': True, 'pic': True, 'usempi': True, 'optarch': 'march=core-avx2'} + 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) &&" +else: + toolchainopts = {'opt': True, 'pic': True, 'usempi': True} + +source_urls = ['https://github.com/QMCPACK/qmcpack/archive/'] +sources = ['v%(version)s.tar.gz'] + +builddependencies = [('CMake', '3.20.1', '', True),] + +# odstran z module file GCC 9.3.0 - rovnak na intel +dependencies = [ + ('libxml2', '2.9.10'), + ('Boost', '1.74.0'), + ('HDF5', '1.10.7', '', ('iimpi', '2020b')), + ('Python', '3.8.6'), + ('h5py', '3.1.0'), + ('SciPy-bundle', '2020.11'), + ('GCC', '9.3.0', '', True), +] + +separate_build_dir = True + +configopts = ' -DENABLE_SOA=1 ' +configopts += ' -DCMAKE_C_COMPILER=mpiicc -DCMAKE_CXX_COMPILER=mpiicpc ' +configopts += ' -DHDF5_PREFER_PARALLEL=1 -DENABLE_PHDF5=1 ' +configopts += ' -DQMC_SYMLINK_TEST_FILES=0 ' +configopts += ' -DCMAKE_BUILD_TYPE=Release ' +configopts += ' -DQMC_OMP=ON ' + +# prekopiruje nexus knihovny o kterych install file tvrdi, ze nejsou potreba +# ale evidentne to bez nich nejede +preinstallopts = [ + ' mkdir -p %(installdir)s/nexus && ', + ' cp -r %(builddir)s/qmcpack-%(version)s/nexus/lib %(installdir)s/nexus/lib && ', +] + +modextrapaths = {'PYTHONPATH': 'nexus/lib'} + +sanity_check_paths = { + 'files': ['bin/qmcpack'], + 'dirs': ['bin'], +} + +moduleclass = 'phys'