Merge branch 'master' of code.it4i.cz:sccs/easyconfigs-it4i

This commit is contained in:
easybuild 2022-09-19 14:32:12 +02:00
commit 0612cc5852
63 changed files with 1258 additions and 128 deletions

View File

@ -14,11 +14,7 @@ toolchain = {'name': 'GCC', 'version': '10.3.0'}
source_urls = ['https://ftp.nluug.nl/pub/graphics/blender/release/Blender3.1/']
sources = ['blender-%(version)s-linux-x64.tar.xz']
<<<<<<< HEAD
checksums = ['8cf60d0c2cbda2ad26d8ff65e54cce45']
=======
checksums = ['ced2aaabc75731c2ae0e29493d0d2db7803d2bbb70a11cd0e7f50546d465bd8c']
>>>>>>> f9b20a6876de43df220c97513f83ee10c203bb30
postinstallcmds = [
'ml CUDAcore;"nvcc" -arch=sm_80 --cubin "%(installdir)s/3.1/scripts/addons/cycles/source/kernel/device/cuda/kernel.cu" -o "%(installdir)s/3.1/scripts/addons/cycles/lib/kernel_sm_80.cubin" -m64 --ptxas-options="-v" --use_fast_math -DNVCC -I"%(installdir)s/3.1/scripts/addons/cycles/source" -DWITH_NANOVDB',

View File

@ -0,0 +1,31 @@
# IT4Innovations 2021
easyblock = 'Tarball'
name = 'Blender'
version = '3.2.2'
homepage = 'https://www.blender.org/'
description = """Blender is the free and open source 3D creation suite. It supports
the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering,
compositing and motion tracking, even video editing and game creation."""
toolchain = {'name': 'GCC', 'version': '10.3.0'}
source_urls = ['https://ftp.nluug.nl/pub/graphics/blender/release/Blender3.2/']
sources = ['blender-%(version)s-linux-x64.tar.xz']
checksums = ['1726560157d90cf2aaaeb6d25ded1783d66bff043814cd95b90fc0af1d9e018b']
postinstallcmds = [
'ml CUDAcore;"nvcc" -arch=sm_80 --cubin "%(installdir)s/3.2/scripts/addons/cycles/source/kernel/device/cuda/kernel.cu" -o "%(installdir)s/3.2/scripts/addons/cycles/lib/kernel_sm_80.cubin" -m64 --ptxas-options="-v" --use_fast_math -DNVCC -I"%(installdir)s/3.2/scripts/addons/cycles/source" -DWITH_NANOVDB',
'find %(installdir)s -executable -exec chmod +x {} \;',
]
modextrapaths = {'PATH': ''}
sanity_check_paths = {
'files': ["blender"],
'dirs': []
}
moduleclass = 'vis'

View File

@ -0,0 +1,26 @@
easyblock = 'Tarball'
name = 'bwidget'
version = '1.9.15'
homepage = 'https://core.tcl-lang.org/bwidget/home'
description = 'The BWidget Toolkit is a high-level Widget Set for Tcl/Tk built using native Tcl/Tk 8.x namespaces.'
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
source_urls = ['https://downloads.sourceforge.net/project/tcllib/BWidget/%(version)s/']
sources = [SOURCELOWER_TAR_BZ2]
checksums = ['9c4dd648fdfd31de7cb5af44b392a1916f949dd195820684d940edcd8485ac13']
builddependencies = [('binutils', '2.38')]
dependencies = [('Tk', '8.6.12')]
modextrapaths = {'TCLLIBPATH': '.'}
sanity_check_paths = {
'files': ['button.tcl'],
'dirs': ['BWman', 'demo', 'images', 'lang', 'tests'],
}
moduleclass = 'vis'

View File

@ -0,0 +1,44 @@
# IT4Innovations 2022
# JK
#16007
##
# Author: Robert Mijakovic <robert.mijakovic@lxp.lu>
##
name = 'CP2K'
version = '2022.1'
homepage = 'https://www.cp2k.org/'
description = """CP2K is a freely available (GPL) program, written in Fortran 95, to perform atomistic and molecular
simulations of solid state, liquid, molecular and biological systems. It provides a general framework for different
methods such as e.g. density functional theory (DFT) using a mixed Gaussian and plane waves approach (GPW), and
classical pair and many-body potentials. """
toolchain = {'name': 'foss', 'version': '2022a'}
toolchainopts = {'pic': True, 'openmp': True}
source_urls = ['https://github.com/cp2k/cp2k/releases/download/v%(version)s/']
sources = [SOURCELOWER_TAR_BZ2]
checksums = ['2c34f1a7972973c62d471cd35856f444f11ab22f2ff930f6ead20f3454fd228b']
# https://github.com/cp2k/cp2k/releases/download/v2022.1/cp2k-2022.1.tar.bz2
dependencies = [
('Libint', '2.7.2', '-lmax-6-cp2k'),
('libxc', '5.2.3'),
('libxsmm', '1.17'),
('FFTW', '3.3.10'),
('PLUMED', '2.8.0'),
]
builddependencies = [
('flex', '2.6.4'),
('Bison', '3.8.2'),
]
type = 'psmp'
# regression test reports handful of failures,
# we're assuming those are OK to ignore...
ignore_regtest_fails = True
moduleclass = 'chem'

View File

@ -1,26 +0,0 @@
easyblock = 'Binary'
name = 'Cordax'
version = '1.0'
versionsuffix = '-Python-%(pyver)s'
homepage = 'N/A'
description = """CORDAX is an aggregation propensity predictor based on predicted packing energies."""
toolchain = {'name': 'foss', 'version': '2020b'}
sources = ['%(namelower)s-%(version)s.tar.gz']
dependencies = [
('Python', '2.7.18'),
('matplotlib', '2.2.5', '-Python-%(pyver)s'),
('SciPy-bundle', '2020.11', '-Python-%(pyver)s'),
('scikit-learn', '0.20.4', '-Python-%(pyver)s'),
('Biopython', '1.72', '-Python-%(pyver)s'),
('FoldX', '5.0', '', True),
]
extract_sources = True
skipsteps = ['sanitycheck']
moduleclass = 'bio'

View File

@ -0,0 +1,40 @@
# IT4Innovations 2022
# JK
easyblock = 'Tarball'
name = 'Cordax'
version = '20220830'
homepage = 'https://cordax.switchlab.org/'
description = """CORDAX is an aggregation propensity predictor based on predicted packing energies."""
toolchain = {'name': 'foss', 'version': '2020b'}
sources = ['%(namelower)s-%(version)s.tar.gz']
patches = ['Cordax-20220830-set-proper-paths.patch']
checksums = [
'bc2b2e84f3df84c1ecabc774fed247998d1aeb38bade04127e47cd585130160d', # cordax-20220830.tar.gz
'df8261e08da5d4e698f8621284d22bab99a0064f27d7735933c0d15c9ed730ff', # Cordax-20220830-set-proper-paths.patch
]
dependencies = [
('Python', '2.7.18'),
('matplotlib', '2.2.5', '-Python-%(pyver)s'),
('SciPy-bundle', '2020.11', '-Python-%(pyver)s'),
('scikit-learn', '0.20.4', '-Python-%(pyver)s'),
('Biopython', '1.72', '-Python-%(pyver)s'),
('FoldX', '5.0', '', True),
]
sanity_check_paths = {
'files': ['parser.py', 'precomputed_dg.py', 'predictor.py', 'propensity.py', 'run_foldx.py',
'standalone.py', 'utils.py'],
'dirs': ['dataset', 'foldx', 'test', 'DATADIR'],
}
modextrapaths = {'PATH': ''}
modloadmsg = "Precalculated models are available at $EBROOTCORDAX/DATADIR"
moduleclass = 'bio'

View File

@ -0,0 +1,48 @@
# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
# Author: Pablo Escobar Lopez
# sciCORE - University of Basel
# SIB Swiss Institute of Bioinformatics
#
# Author: Ake Sandgren, HPC2N, Umea University
easyblock = 'ConfigureMake'
name = 'ctffind'
version = '4.1.14'
homepage = 'https://grigoriefflab.umassmed.edu/ctffind4'
description = """Program for finding CTFs of electron micrographs."""
toolchain = {'name': 'foss', 'version': '2021a'}
toolchainopts = {'openmp': True}
source_urls = ['https://grigoriefflab.umassmed.edu/sites/default/files/']
sources = [SOURCELOWER_TAR_GZ]
patches = [
'%(name)s-%(version)s_asm-fix.patch',
'%(name)s-%(version)s_void-functions.patch'
]
checksums = [
'db17b2ebeb3c3b2b3764e42b820cd50d19ccccf6956c64257bfe5d5ba6b40cb5', # ctffind-4.1.14.tar.gz
'e6d468b3f1569e2d42e077573529dbc3035a03715c436d2349ccaaab63b64f28', # ctffind-4.1.14_asm-fix.patch
'0a578328062881d86b10585f1b0efa81b7a1826baf3e7bcc5c749bba73e96d10', # ctffind-4.1.14_void-functions.patch
]
dependencies = [
('zlib', '1.2.11'),
('libjpeg-turbo', '2.0.6'),
('LibTIFF', '4.2.0'),
('GSL', '2.7'),
('wxWidgets', '3.1.5'),
]
configopts = '--enable-openmp '
parallel = 1
sanity_check_paths = {
'files': ['bin/ctffind'],
'dirs': [],
}
moduleclass = 'bio'

View File

@ -0,0 +1,25 @@
# IT4Innovations 2022
# JK
name = 'FFTW.MPI'
version = '3.3.8'
homepage = 'https://www.fftw.org'
description = """FFTW is a C subroutine library for computing the discrete Fourier transform (DFT)
in one or more dimensions, of arbitrary input size, and of both real and complex data."""
toolchain = {'name': 'NVHPC', 'version': '22.2'}
toolchainopts = {'pic': True}
source_urls = [homepage]
sources = ['fftw-%(version)s.tar.gz']
checksums = ['6113262f6e92c5bd474f2875fa1b01054c4ad5040f6b0da7c03c98821d9ae303']
dependencies = [
('FFTW', '3.3.8'),
('OpenMPI', '4.1.2', '-CUDA-11.6.0'),
]
runtest = 'check'
moduleclass = 'numlib'

View File

@ -0,0 +1,30 @@
# IT4Innovations 2022
# JK
name = 'FFTW'
version = '3.3.10'
local_amd_fftw_ver = '3.2'
versionsuffix = '-amd'
homepage = 'https://developer.amd.com/amd-aocl/fftw/'
description = """FFTW is a C subroutine library for computing the discrete Fourier transform (DFT)
in one or more dimensions, of arbitrary input size, and of both real and complex data.
AMD FFTW includes selective kernels and routines optimized for the AMD EPYC™ processor family."""
toolchain = {'name': 'NVHPC', 'version': '22.2'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/amd/amd-fftw/archive/refs/tags/']
sources = [{
'download_filename': '%s.tar.gz' % local_amd_fftw_ver,
'filename': 'amd-fftw-%s.tar.gz' % local_amd_fftw_ver,
}]
checksums = ['31cab17a93e03b5b606e88dd6116a1055b8f49542d7d0890dbfcca057087b8d0']
builddependencies = [('binutils', '2.35')]
configopts = '--enable-amd-opt'
#runtest = 'check'
moduleclass = 'numlib'

View File

@ -0,0 +1,30 @@
# IT4Innovations 2022
# JK
name = 'FFTW'
version = '3.3.8'
local_amd_fftw_ver = '2.2'
versionsuffix = '-amd'
homepage = 'https://developer.amd.com/amd-aocl/fftw/'
description = """FFTW is a C subroutine library for computing the discrete Fourier transform (DFT)
in one or more dimensions, of arbitrary input size, and of both real and complex data.
AMD FFTW includes selective kernels and routines optimized for the AMD EPYC™ processor family."""
toolchain = {'name': 'NVHPC', 'version': '22.2'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/amd/amd-fftw/archive/']
sources = [{
'download_filename': '%s.tar.gz' % local_amd_fftw_ver,
'filename': 'amd-fftw-%s.tar.gz' % local_amd_fftw_ver,
}]
checksums = ['de9d777236fb290c335860b458131678f75aa0799c641490c644c843f0e246f8']
builddependencies = [('binutils', '2.35')]
configopts = '--enable-amd-opt'
#runtest = 'check'
moduleclass = 'numlib'

View File

@ -0,0 +1,28 @@
# IT4Innovations 2022
# JK
name = 'FFTW'
version = '3.3.8'
homepage = 'http://www.fftw.org'
description = """FFTW is a C subroutine library for local_computing the discrete Fourier transform (DFT)
in one or more dimensions, of arbitrary input size, and of both real and local_complex data."""
toolchain = {'name': 'NVHPC', 'version': '22.2'}
toolchainopts = {'pic': True}
source_urls = [homepage]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['6113262f6e92c5bd474f2875fa1b01054c4ad5040f6b0da7c03c98821d9ae303']
# no quad precision, requires GCC v4.6 or higher
# see also
# http://www.fftw.org/doc/Extended-and-quadruple-precision-in-Fortran.html
with_quad_prec = False
# local_compilation fails when configuring with --enable-avx-128-fma, Intel local_compilers do not support FMA4 instructions
use_fma4 = False
runtest = 'check'
moduleclass = 'numlib'

View File

@ -6,7 +6,7 @@ easyblock = 'Binary'
name = 'FoldX'
version = '5.0'
homepage = 'http://http://foldxsuite.crg.eu/'
homepage = 'https://foldxsuite.crg.eu/'
description = """FoldX is used to provide a fast and quantitative estimation of the importance of the interactions
contributing to the stability of proteins and protein complexes."""

View File

@ -0,0 +1,31 @@
# IT4Innovations 2022
# JK
easyblock = 'ConfigureMake'
name = 'fio'
version = '3.32'
homepage = 'https://github.com/axboe/fio'
description = 'Flexible I/O tester'
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
github_account = 'axboe'
source_urls = [GITHUB_SOURCE]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['409e459840912e68be487dbbda9a7a1b3f6ddf1478e3f456f278f957ce4f7b66']
builddependencies = [
('binutils', '2.38'),
]
sanity_check_paths = {
'files': ['bin/fio'],
'dirs': ['bin', 'man', 'share'],
}
sanity_check_commands = ['fio -h']
moduleclass = 'tools'

24
g/gh/gh-2.14.7.eb Normal file
View File

@ -0,0 +1,24 @@
# IT4Innovations 2022
# JK
easyblock = 'GoPackage'
name = 'gh'
version = '2.14.7'
homepage = 'https://github.com/cli/cli'
description = """gh is GitHub on the command line."""
toolchain = SYSTEM
source_urls = ['https://github.com/cli/cli/archive']
sources = ['v%(version)s.tar.gz']
checksums = ['a1a048714d7c7b237ea05f1fb51b3f3f4cdf90a16c60fa46f1df2eb5d96ce28d']
builddependencies = [
('Go', '1.18.1'),
]
installopts = './cmd/%(namelower)s'
moduleclass = 'tools'

View File

@ -0,0 +1,43 @@
# IT4Innovations 2022
# JK
easyblock = 'MakeCp'
name = 'gpu_burn'
version = '1.1'
local_cudaversion = '11.6.0'
local_commit = 'c535b67'
versionsuffix = "-CUDA-%s" % local_cudaversion
homepage = 'http://wili.cc/blog/gpu-burn.html'
description = """Multi-GPU CUDA stress test"""
toolchain = {'name': 'NVHPC', 'version': '22.2'}
toolchainopts = {'opt': False}
source_urls = ['https://github.com/wilicc/gpu-burn/archive']
sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}]
checksums = [
'2dec738c935642395e15bd6ce71a14f8307c86661b3c8bc3826ff0272abf8f20', # gpu_burn-1.1.tar.gz
]
dependencies = [('OpenMPI', '4.1.2', versionsuffix)]
build_cmd = 'unset CFLAGS; make COMPUTE=8.0 CUDAPATH=${EBROOTCUDACORE}'
files_to_copy = ['gpu_burn', 'gpu_burn-drv.o', 'compare.ptx', 'gpu_burn-drv.cpp', 'compare.cu']
sanity_check_paths = {
'files': ['gpu_burn'],
'dirs': []
}
modluafooter = """
add_property('arch', 'gpu')
"""
modextrapaths = {'PATH': '.'}
parallel = 1
moduleclass = 'tools'

View File

@ -0,0 +1,27 @@
# IT4Innovations 2022
# LK JK
name = 'HDF5'
version = '1.12.1'
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': 'NVHPC', 'version': '22.2'}
toolchainopts = {'pic': True}
source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src']
sources = [SOURCELOWER_TAR_GZ]
checksums = ['79c66ff67e666665369396e9c90b32e238e501f345afd2234186bfb8331081ca']
configopts = '--enable-fortran --enable-fortran 2003 --enable-cxx --enable-parallel --enable-unsupported --enable-shared'
dependencies = [
('OpenMPI', '4.1.2', '-CUDA-11.6.0'),
('zlib', '1.2.11'),
('Szip', '2.1.1'),
]
moduleclass = 'data'

View File

@ -2,7 +2,7 @@
# JK
name = 'HDF5'
version = '1.13.1'
version = '1.12.2'
homepage = 'https://portal.hdfgroup.org/display/support'
description = """HDF5 is a data model, library, and file format for storing and managing data.
@ -14,7 +14,7 @@ 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 = ['051655873105112f7aeccd5f59ab21f35f7f4907f06921ae61aaf1ef1c71fd53']
checksums = ['2a89af03d56ce7502dcae18232c241281ad1773561ec00c0f0e8ee2463910f14']
import os
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:

View File

@ -2,7 +2,7 @@
# JK
name = 'HDF5'
version = '1.13.1'
version = '1.12.2'
homepage = 'https://portal.hdfgroup.org/display/support'
description = """HDF5 is a data model, library, and file format for storing and managing data.
@ -14,9 +14,10 @@ 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 = ['051655873105112f7aeccd5f59ab21f35f7f4907f06921ae61aaf1ef1c71fd53']
checksums = ['2a89af03d56ce7502dcae18232c241281ad1773561ec00c0f0e8ee2463910f14']
import os
# core-avx2 is required due to a but in fortran compiler
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
toolchainopts = {'pic': True, 'usempi': True, 'optarch': 'march=core-avx2'}
else:

View File

@ -0,0 +1,27 @@
# IT4Innovations 2022
# JK
easyblock = 'PackedBinary'
name = 'HyperQueue'
version = '0.12.0'
homepage = 'https://it4innovations.github.io/hyperqueue/'
description = """HyperQueue lets you build a computation plan consisting of a large amount of tasks
and then execute it transparently over a system like SLURM/PBS. It dynamically groups jobs into SLURM/PBS jobs
and distributes them to fully utilize allocated notes.
You thus do not have to manually aggregate your tasks into SLURM/PBS jobs."""
toolchain = SYSTEM
source_urls = ['https://github.com/It4innovations/hyperqueue/releases/download/v%(version)s/']
sources = ['hq-v%(version)s-linux-x64.tar.gz']
checksums = ['43de90b23dae2ba1534f98e9aaed439fcf32cf3c5728790445894b487b49f7ec']
sanity_check_paths = {
'files': ['hq'],
'dirs': [],
}
moduleclass = 'devel'

View File

@ -0,0 +1,111 @@
# IT4Innovations 2022
# JK
# Had to fix some arch-specifying files in the source code!
# Thomas Hoffmann, EMBL Heidelberg, structures-it@embl.de, 2021/04
easyblock = 'ConfigureMake'
name = 'IMOD'
version = '4.11.1'
homepage = 'https://bio3d.colorado.edu/imod/'
description = """IMOD is a set of image processing, modeling and display
programs used for tomographic reconstruction and for 3D reconstruction of EM
serial sections and optical sections. The package contains tools for assembling
and aligning data within multiple types and sizes of image stacks, viewing 3-D
data from any orientation, and modeling and display of the image files. IMOD
was developed primarily by David Mastronarde, Rick Gaudette, Sue Held, Jim
Kremer, Quanren Xiong, and John Heumann at the University of Colorado."""
toolchain = {'name': 'fosscuda', 'version': '2020b'}
toolchainopts = {'pic': True, 'openmp': True}
# download manually from mercurial repository and create source tarball:
# hg clone --debug http://bio3d.colorado.edu/imod/nightlyBuilds/IMOD
# get lunch ????? co to je
# cd IMOD
# hg update -r IMOD_4-11-1
# cd ..
# tar czf IMOD-4.11.1.tar.gz IMOD
sources = [SOURCE_TAR_GZ]
patches = ['IMOD-4.11.5_fix-csvtohtml-py3.patch']
checksums = [
'4a2a51641a3169d1066faa8011caa90196fa1aef71da5d93cfafcf0703f8bcc6', # IMOD-4.11.1.tar.gz
'8ba0c3cbe30d755ab3fb918688982e818795b9f7f41218bd6bf231c85bea4971', # IMOD-4.11.5_fix-csvtohtml-py3.patch
]
# can't include a valid checksum, since tarball has to be created manually
dependencies = [
('LibTIFF', '4.1.0'),
('Qt5', '5.14.2'),
('Java', '11', '', True),
('HDF5', '1.10.7'),
('Python', '3.8.6'),
]
# parallel build sometimes fails
parallel = 1
# replace hardcoded CUDA compute capabilitites in machines/rhlinux.
local_cuda_replace = 'echo %(cuda_cc_space_sep)s|sed "s/\\.//g"|'
local_cuda_replace += ' awk \'{'
local_cuda_replace += ' printf "-arch sm_"$1; '
local_cuda_replace += ' for (i=1;i<=NF; i++){printf(" -gencode=arch=compute_%s,code=sm_%s",$i,$i) } '
local_cuda_replace += ' }\''
local_cudaarch_sed = 'sed -i "s/-arch sm_35/`' + local_cuda_replace + '`/g" machines/rhlinux &&'
# modify all qmake pro files in order to pass CFLAGS
local_qmake_pass_cflags = "find -name *.pro -exec sed -i -e '$aQMAKE_CXXFLAGS += $$(CFLAGS)' {} \\; &&"
# exports required for configure and build
local_exports = 'export QTDIR=$EBROOTQT5 &&'
local_exports += 'export HDF5_DIR=$EBROOTHDF5 &&'
local_exports += 'export QMAKESPEC=$EBROOTQT5/mkspecs/`qmake -query QMAKE_SPEC` &&'
local_exports += 'export CUDA_DIR=$CUDA_HOME &&'
# readw_or_imod.f and others with gfortran10:
# Error: Type mismatch between actual argument at (1) and actual argument at (2) (INTEGER(4)/INTEGER(2))
# => set -fallow-argument-mismatch. Runs through without this option with GCC 8.3.0.
local_exports += 'export CFLAGS="$CFLAGS -fallow-argument-mismatch" &&' # required for gfortran10
preconfigopts = local_exports
preconfigopts += local_cudaarch_sed
preconfigopts += local_qmake_pass_cflags
preconfigopts += "mv pysrc/pip.py pysrc/imodpip.py &&"
preconfigopts += "sed -i 's/pip.py/imodpip.py/' pysrc/Makefile &&"
preconfigopts += "sed -i 's/from pip/from imodpip/' pysrc/* &&"
# IMOD's configure script is named setup and does not know the parameter --prefix, but -i.
# CFLAGs are passed with -flags.
configure_cmd = './setup '
configure_cmd += '-flags "$CFLAGS" ' # inject CFLAGS
configure_cmd += '-i %(installdir)s ' # set installdir
configure_cmd += ' #' # avoid passing unknown arg --prefix
prebuildopts = local_exports
# create some missing directories required for installation process:
preinstallopts = 'mkdir %(installdir)s/{man/cat1,bin,autodoc,SystemTemplate,lib/imodplug,com,html,Plugins} -p &&'
# patch hardcoded /usr/bin/python to use Python included as dependency
preinstallopts += "find pysrc -name '*.py' | xargs sed -i 's@^#!/usr/bin/python@#!/usr/bin/env python@g' && "
preinstallopts += "ls manpages/{csvtohtml,adocdefaults} | xargs sed -i 's@^#!.*/python -u@#!/usr/bin/env python@g' && "
preinstallopts += "xargs sed -i 's@^#!.*/python -u@#!/usr/bin/env python@g' html/makeqhp && "
modextravars = {
'IMOD_DIR': "%(installdir)s",
'IMOD_PLUGIN_DIR': '%(installdir)s/lib/imodplug',
'IMOD_JAVADIR': '$JAVA_HOME',
'FOR_DISABLE_STACK_TRACE': '1',
}
modloadmsg = 'Please set the environment variable $IMOD_CALIB_DIR if appropriate.'
# Observed problems with alias on a tcl based module system. Use bin/subm python script instead.
# modaliases = {
# 'subm': 'submfg $* &'
# }
sanity_check_paths = {
'files': ['VERSION', 'bin/subm'],
'dirs': ['bin', 'lib', 'com', 'autodoc', 'pylib', 'Plugins', 'man', 'SystemTemplate'],
}
moduleclass = 'vis'

View File

@ -0,0 +1,28 @@
# IT4Innovations 2022
# JK
# --include-easyblock /apps/easybuild/it4i-easyblocks/easyblocks/i/imod.py !!!
name = 'IMOD'
version = '4.11.1'
versionsuffix = '_RHEL7-64_CUDA8.0'
homepage = 'http://bio3d.colorado.edu/imod/'
description = """IMOD is a set of image processing, modeling and display
programs used for tomographic reconstruction and for 3D reconstruction of EM
serial sections and optical sections. The package contains tools for assembling
and aligning data within multiple types and sizes of image stacks, viewing 3-D
data from any orientation, and modeling and display of the image files.
"""
toolchain = SYSTEM
source_urls = ['https://bio3d.colorado.edu/imod/AMD64-RHEL5/']
sources = ['%(namelower)s_%(version)s%(versionsuffix)s.sh']
checksums = ['8fefab2c85c85d8343005b2ac352c6b7de22e00847dc0975766b0312e44be0b8']
dependencies = [
('CUDA', '11.4.1'),
('Java', '13.0.2'),
]
moduleclass = 'vis'

View File

@ -23,7 +23,8 @@ sanity_check_paths = {
postinstallcmds = [
'cp /mnt/proj3/easybuild/scripts/irods-startup.sh %(installdir)s/',
'curl -L https://docs.it4i.cz/irods1.it4i.cz.crt -o %(installdir)s/irods1.it4i.cz.crt',
'cp /mnt/proj3/easybuild/scripts/irods.it4i.cz.crt %(installdir)s/',
# 'curl -L https://docs.it4i.cz/irods1.it4i.cz.crt -o %(installdir)s/irods1.it4i.cz.crt',
]
modluafooter = 'execute{cmd="bash $EBROOTIRODSFS/irods-startup.sh", modeA={"load"}}'

View File

@ -1,22 +0,0 @@
diff -Nru libmad-0.15.1b.orig/configure libmad-0.15.1b/configure
--- libmad-0.15.1b.orig/configure 2022-08-19 11:44:53.156998000 +0200
+++ libmad-0.15.1b/configure 2022-08-19 11:45:31.855629909 +0200
@@ -19099,7 +19099,6 @@
case "$optimize" in
-O|"-O "*)
optimize="-O"
- optimize="$optimize -fforce-mem"
optimize="$optimize -fforce-addr"
: #x optimize="$optimize -finline-functions"
: #- optimize="$optimize -fstrength-reduce"
diff -Nru libmad-0.15.1b.orig/configure.ac libmad-0.15.1b/configure.ac
--- libmad-0.15.1b.orig/configure.ac 2022-08-19 11:44:53.172288000 +0200
+++ libmad-0.15.1b/configure.ac 2022-08-19 11:45:43.617447388 +0200
@@ -140,7 +140,6 @@
case "$optimize" in
-O|"-O "*)
optimize="-O"
- optimize="$optimize -fforce-mem"
optimize="$optimize -fforce-addr"
: #x optimize="$optimize -finline-functions"
: #- optimize="$optimize -fstrength-reduce"

View File

@ -1,5 +1,7 @@
# IT4Innovations 2022
# JK
# Institution: IT4Innovations National Supercomputing Center, Czech Republic
# Author: Jakub Kropacek
# License: GPLv3
# Year: 2022
easyblock = 'ConfigureMake'
@ -7,24 +9,24 @@ name = 'libmad'
version = '0.15.1b'
homepage = 'https://www.underbit.com/products/mad/'
description = """MAD is a high-quality MPEG audio decoder. It currently supports MPEG-1 and the MPEG-2 extension to lower sampling frequencies, as well as the de facto MPEG 2.5 format. All three audio layers — Layer I, Layer II, and Layer III (i.e. MP3) — are fully implemented."""
description = """MAD is a high-quality MPEG audio decoder."""
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
source_urls = ['https://sourceforge.net/projects/mad/files/libmad/%(version)s']
source_urls = ['https://sourceforge.net/projects/mad/files/%(name)s/%(version)s/']
sources = [SOURCELOWER_TAR_GZ]
patches = ['libmad-0.15.1b-GCCcore-11.3.0-remove-depreciated-gcc-options.patch']
patches = ['libmad-0.15.1b-remove-depreciated-gcc-option.patch']
checksums = [
'bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690', # libmad-0.15.1b.tar.gz
# libmad-0.15.1b-GCCcore-11.3.0-remove-depreciated-gcc-options.patch
'c7dc07f0d502e31a09ddb82b30827a71d8dfacd39053ee2107d4fc4b0470d2c3',
# libmad-0.15.1b-remove-depreciated-gcc-option.patch
'8f96a23a22ba66e62f32e20064d01f4c7f6a18ba0aab85d3be9ce63794b2c678',
]
builddependencies = [('binutils', '2.38')]
sanity_check_paths = {
'files': [],
'dirs': ["."]
'files': ['include/mad.h', 'lib/libmad.a', 'lib/libmad.la', 'lib/libmad.%s' % SHLIB_EXT],
'dirs': ['include', 'lib', 'lib64']
}
moduleclass = 'lib'

View File

@ -0,0 +1,31 @@
# IT4Innovations 2022
# JK
#16007
easyblock = 'ConfigureMake'
name = 'libxsmm'
version = '1.17'
homepage = 'https://github.com/hfp/libxsmm'
description = """LIBXSMM is a library for small dense and small sparse matrix-matrix multiplications
targeting Intel Architecture (x86)."""
toolchain = {'name': 'GCC', 'version': '11.3.0'}
source_urls = ['https://github.com/hfp/libxsmm/archive/']
sources = ['%(version)s.tar.gz']
checksums = ['8b642127880e92e8a75400125307724635ecdf4020ca4481e5efe7640451bb92']
# install both static and dynamic version
installopts = ['PREFIX=%(installdir)s', 'PREFIX=%(installdir)s STATIC=0']
skipsteps = ['configure']
maxparallel = 1
sanity_check_paths = {
'files': ['bin/libxsmm_gemm_generator', 'include/libxsmm.h', 'lib/libxsmm.a', 'lib/libxsmm.%s' % SHLIB_EXT],
'dirs': ['share']
}
moduleclass = 'math'

View File

@ -0,0 +1,69 @@
easyblock = 'PythonBundle'
name = 'matplotlib'
version = '3.5.2'
homepage = 'https://matplotlib.org'
description = """matplotlib is a python 2D plotting library which produces publication quality figures in a variety of
hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python
and ipython shell, web application servers, and six graphical user interface toolkits."""
toolchain = {'name': 'intel', 'version': '2022a'}
builddependencies = [
('pkgconf', '1.8.0'),
('cppy', '1.2.1')
]
dependencies = [
('Python', '3.10.4'),
('SciPy-bundle', '2022.05'),
('libpng', '1.6.37'),
('freetype', '2.12.1'),
('Tkinter', '%(pyver)s'),
('Pillow', '9.1.1'),
('Qhull', '2020.2')
]
use_pip = True
sanity_pip_check = True
# avoid that matplotlib downloads and builds its own copies of freetype and qhull
_fix_setup = "sed -e 's/#system_freetype = False/system_freetype = True/g' "
_fix_setup += "-e 's/#system_qhull = False/system_qhull = True/g' mplsetup.cfg.template >setup.cfg && "
_include_path = "export CPLUS_INCLUDE_PATH=$EBROOTFREETYPE/include/freetype2:${CPLUS_INCLUDE_PATH} && "
exts_list = [
('fonttools', '4.34.0', {
'modulename': 'fontTools',
'source_tmpl': SOURCE_ZIP,
'checksums': ['73d3fab85790f076d56db431bfdf9ce51b566816ff74d51e050e11ab1ffa8f8b'],
}),
('Cycler', '0.11.0', {
'modulename': 'cycler',
'source_tmpl': 'cycler-%(version)s.tar.gz',
'source_urls': ['https://pypi.python.org/packages/source/C/Cycler'],
'checksums': ['9c87405839a19696e837b3b818fed3f5f69f16f1eec1a1ad77e043dcea9c772f'],
}),
('kiwisolver', '1.4.3', {
'source_urls': ['https://pypi.python.org/packages/source/k/kiwisolver'],
'checksums': ['ab8a15c2750ae8d53e31f77a94f846d0a00772240f1c12817411fa2344351f86'],
}),
(name, version, {
'preinstallopts': _fix_setup + _include_path,
'source_urls': ['https://pypi.python.org/packages/source/m/matplotlib'],
'checksums': ['48cf850ce14fa18067f2d9e0d646763681948487a8080ec0af2686468b4607a2'],
}),
]
sanity_check_commands = [
"""python -c 'import matplotlib; matplotlib.use("Agg"); import matplotlib.pyplot' """,
"python -c 'from mpl_toolkits.mplot3d import Axes3D'",
]
# use non-interactive plotting backend as default
# see https://matplotlib.org/tutorials/introductory/usage.html#what-is-a-backend
modextravars = {'MPLBACKEND': 'Agg'}
moduleclass = 'vis'

View File

@ -1,25 +0,0 @@
# IT4Innovations 2022
# JK LK
easyblock = 'ConfigureMake'
name = 'nano'
version = '6.3'
homepage = 'http://www.nano-editor.org/'
description = """Small and friendly text editor"""
toolchain = SYSTEM
source_urls = ['https://www.nano-editor.org/dist/v6/']
sources = [SOURCE_TAR_GZ]
checksums = ['24c51bb2bddc682f95ae745c743cbceebd836549de66bdfd6af80a40333cc6a7']
dependencies = [('ncurses', '6.2')]
sanity_check_paths = {
'files': ['bin/nano'],
'dirs': [],
}
moduleclass = 'tools'

View File

@ -0,0 +1,30 @@
# IT4Innovations 2022
# JK
easyblock = 'ConfigureMake'
name = 'nano'
version = '6.4'
homepage = 'https://www.nano-editor.org/'
docurls = 'https://www.nano-editor.org/docs.php'
description = """a simple editor, inspired by Pico"""
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
source_urls = ['https://www.nano-editor.org/dist/v6/']
sources = [SOURCE_TAR_GZ]
checksums = ['85ebd9b4dba49839821d529bea16ac1acae0c9b9db2157531e40c9dffeb1b656']
builddependencies = [('binutils', '2.38')]
dependencies = [('ncurses', '6.3')]
sanity_check_paths = {
'files': ['bin/nano'],
'dirs': ['bin', 'share'],
}
sanity_check_commands = ['nano --version']
moduleclass = 'tools'

View File

@ -0,0 +1,64 @@
# IT4Innovations 2022
# JK
#16007
easyblock = 'ConfigureMake'
name = 'PLUMED'
version = '2.8.0'
homepage = 'https://www.plumed.org'
description = """PLUMED is an open source library for free energy calculations in molecular systems which
works together with some of the most popular molecular dynamics engines. Free energy calculations can be
performed as a function of many order parameters with a particular focus on biological problems, using
state of the art methods such as metadynamics, umbrella sampling and Jarzynski-equation based steered MD.
The software, written in C++, can be easily interfaced with both fortran and C/C++ codes.
"""
toolchain = {'name': 'foss', 'version': '2022a'}
toolchainopts = {'usempi': 'True'}
source_urls = ['https://github.com/plumed/plumed2/releases/download/v%(version)s/']
sources = [SOURCE_TGZ]
checksums = ['24b243c531fa83752be5e54f5f0b677164855da539bc2b2c5b00dcc9f192aa82']
builddependencies = [
('xxd', '8.2.4220'),
]
dependencies = [
('zlib', '1.2.12'),
('GSL', '2.7'),
('Python', '3.10.4'),
('SciPy-bundle', '2022.05'),
('Boost', '1.79.0'),
]
preconfigopts = 'env FC=$MPIF90 LIBS="$LIBLAPACK $LIBS" '
configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --enable-python '
configopts += '--enable-boost_graph --enable-boost_serialization '
configopts += '--enable-asmjit '
prebuildopts = 'source sourceme.sh && '
# make sure that ld.gold linker is used
# required to work around problems like "ld: BFD (GNU Binutils) 2.30 assertion fail elf.c:3564"
# (problem with intel build but maintain consistency between easyconfigs)
buildopts = 'LD_RO="ld.gold -r -o"'
# install path for PLUMED libraries must be included in $LD_LIBRARY_PATH when Python bindings get built/installed
preinstallopts = 'LD_LIBRARY_PATH="%(installdir)s/lib:$LD_LIBRARY_PATH" '
sanity_check_paths = {
'files': ['bin/plumed', 'lib/libplumedKernel.%s' % SHLIB_EXT, 'lib/libplumed.%s' % SHLIB_EXT],
'dirs': [],
}
sanity_check_commands = ["python -c 'import plumed'"]
modextrapaths = {
'PLUMED_KERNEL': 'lib/libplumedKernel.%s' % SHLIB_EXT,
'PLUMED_ROOT': 'lib/plumed',
'PYTHONPATH': 'lib/plumed/python',
}
moduleclass = 'chem'

View File

@ -0,0 +1,24 @@
# IT4Innovations 2022
# JK
easyblock = 'ConfigureMake'
name = 'QD'
version = '2.3.17'
local_gitcommit = 'a5dbb61'
homepage = 'https://github.com/scibuilder/QD'
description = "Quad Double computation package"
toolchain = {'name': 'NVHPC', 'version': '22.2'}
source_urls = ['https://github.com/scibuilder/QD/archive/']
sources = [{'download_filename': '%s.tar.gz' % local_gitcommit, 'filename': SOURCE_TAR_GZ}]
checksums = ['1e5949b7d20434193d496c28070d8f2fb6406a7688a86080dfdac57fbe730624']
sanity_check_paths = {
'files': ['lib/lib%s.a' % x for x in ['qdmod', 'qd']],
'dirs': []
}
moduleclass = 'math'

View File

@ -40,7 +40,7 @@ checksums = [
builddependencies = [('M4', '1.4.19')]
dependencies = [
('HDF5', '1.13.1'),
('HDF5', '1.12.2'),
('ELPA', '2021.11.001'),
('libxc', '5.2.3'),
]

View File

@ -15,7 +15,6 @@ toolchain = {'name': 'intel', 'version': '2022a'}
import os
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
toolchainopts = {'usempi': True, 'openmp': True, 'optarch': 'march=core-avx2', 'opt': 'O3'}
# 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 = {'usempi': True, 'openmp': True, 'opt': 'O3'}
@ -41,7 +40,7 @@ checksums = [
builddependencies = [('M4', '1.4.19')]
dependencies = [
('HDF5', '1.13.1'),
('HDF5', '1.12.2'),
('ELPA', '2021.11.001'),
('libxc', '5.2.3'),
]

View File

@ -0,0 +1,52 @@
easyblock = 'CMakeMake'
name = 'RELION'
version = '4.0_beta.2022.04.20'
_commit = '9b23e50'
homepage = 'http://www2.mrc-lmb.cam.ac.uk/relion/index.php/Main_Page'
description = """RELION (for REgularised LIkelihood OptimisatioN, pronounce rely-on) is a stand-alone computer
program that employs an empirical Bayesian approach to refinement of (multiple) 3D reconstructions or 2D class
averages in electron cryo-microscopy (cryo-EM).
"""
toolchain = {'name': 'foss', 'version': '2021a'}
toolchainopts = {'opt': True}
sources = [{
'download_filename': '%(version)s.tar.gz',
'filename': SOURCELOWER_TAR_GZ,
'git_config': {
'url': 'https://github.com/3dem',
'repo_name': '%(namelower)s',
'commit': _commit,
'keep_git_dir': True,
},
}]
checksums = ['98b053a11c9ccdd144bcee5296e29cc08a05094094b27ad34536175b5a8405c2']
# Note: no checksum(s), due to use of `git_config`
builddependencies = [('CMake', '3.20.1')]
dependencies = [
('ctffind', '4.1.14'), # required for most workloads
('tbb', '2020.3'),
# optional graphics libraries:
('Ghostscript', '9.54.0'),
('libpng', '1.6.37'),
('LibTIFF', '4.2.0'),
# GUI-specific dependencies:
('FLTK', '1.3.6'),
('X11', '20210518'),
]
local_disable_gui = False
# Useful information for non-release builds
_version_maj = version.split('_')[0]
modloadmsg = "Current version pulled from commit %s from https://github.com/3dem/relion ver%s branch" % (_commit, _version_maj)
skipsteps = ['sanitycheck']
moduleclass = 'bio'

View File

@ -0,0 +1,49 @@
# IT4Innovations 2022
# LK JK
easyblock = 'CMakeMake'
name = 'ScaLAPACK'
version = '3.0'
homepage = 'https://www.netlib.org/scalapack/'
description = """The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines
redesigned for distributed memory MIMD parallel computers."""
toolchain = {'name': 'NVHPC', 'version': '22.2'}
toolchainopts = {'pic': True}
# https://github.com/amd/scalapack/archive/3.0.tar.gz
source_urls = ['https://github.com/amd/scalapack/archive/']
sources = ['%(version)s.tar.gz']
checksums = ['6e6f3578f44a8e64518d276e7580530599ecfa8729f568303ed2590688e7096f']
builddependencies = [
('CMake', '3.18.4'),
]
dependencies = [
('OpenMPI', '4.1.2', '-CUDA-11.6.0'),
('BLIS', '3.0.1'),
('libFLAME', '5.2.0'),
]
# Config Opts based on AOCL User Guide:
# https://developer.amd.com/wp-content/resources/AOCL_User%20Guide_2.2.pdf
configopts = '-DBUILD_SHARED_LIBS=ON '
configopts += '-DBLAS_LIBRARIES="$EBROOTBLIS/lib/libblis-mt.a" '
configopts += '-DLAPACK_LIBRARIES="$EBROOTLIBFLAME/lib/libflame.a" '
configopts += '-DCMAKE_C_COMPILER=mpicc '
configopts += '-DCMAKE_Fortran_COMPILER=mpif90 '
configopts += '-DUSE_OPTIMIZED_LAPACK_BLAS=ON '
configopts += '-DUSE_F2C=ON '
configopts += '-DCMAKE_Fortran_FLAGS="-lpthread -fopenmp $DCMAKE_Fortran_FLAGS" '
sanity_check_paths = {
'files': ['lib/libscalapack.%s' % SHLIB_EXT, 'lib64/libscalapack.%s' % SHLIB_EXT],
'dirs': ["lib", "lib64"],
}
moduleclass = 'numlib'

View File

@ -1,5 +1,5 @@
# IT4Innovations 2021
# JK, LK
# Last contribution from IT4Innovations National Supercomputing Center, Czech Republic
# Jakub Kropacek, 2022
easyblock = 'ConfigureMake'
@ -9,9 +9,9 @@ version = '2.0'
homepage = 'https://sourceforge.net/projects/togl/'
description = """A Tcl/Tk widget for OpenGL rendering."""
toolchain = {'name': 'GCCcore', 'version': '10.2.0'}
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
source_urls = ['https://downloads.sourceforge.net/project/togl/Togl/2.0/']
source_urls = ['https://downloads.sourceforge.net/project/%(namelower)s/%(name)s/%(version)s/']
sources = ['%(name)s%(version)s-src.tar.gz']
patches = [
'Togl-2.0_configure.patch',
@ -23,12 +23,12 @@ checksums = [
'05db6b3ca5139f60616d074903883a3070fcfb1eb8c965b0938779b4f9a6ec6a', # Togl-2.0_decl.patch
]
builddependencies = [('binutils', '2.35')]
builddependencies = [('binutils', '2.38')]
dependencies = [
('Mesa', '20.2.1'),
('Tk', '8.6.11'),
('Tcl', '8.6.11'),
('Mesa', '22.0.3'),
('Tk', '8.6.12'),
('Tcl', '8.6.12'),
]
preconfigopts = 'export CFLAGS="$CFLAGS -DTOGL_USE_FONTS=0" && '
@ -38,12 +38,12 @@ configopts += "--with-tcl=$EBROOTTCL/lib --with-tk=$EBROOTTK/lib"
sanity_check_paths = {
'files': [],
'dirs': ['include', 'lib'],
'dirs': ['include', 'lib', 'lib/%(name)s%(version)s'],
}
modextrapaths = {
'LD_LIBRARY_PATH': 'lib/Togl2.0',
'LIBRARY_PATH': 'lib/Togl2.0',
'LD_LIBRARY_PATH': 'lib/%(name)s%(version)s',
'LIBRARY_PATH': 'lib/%(name)s%(version)s',
}
moduleclass = 'vis'

View File

@ -60,4 +60,4 @@ sanity_check_paths = {
'dirs': []
}
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -67,4 +67,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -72,4 +72,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -66,4 +66,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -68,4 +68,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -69,4 +69,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -63,4 +63,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -60,4 +60,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -66,4 +66,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -59,4 +59,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -64,4 +64,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -59,4 +59,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -49,4 +49,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -64,4 +64,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -64,4 +64,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -60,4 +60,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -68,4 +68,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -64,4 +64,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -63,4 +63,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -77,4 +77,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -75,4 +75,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -0,0 +1,65 @@
# IT4Innovations 2022
# JK
#
# Adjusts makefile.include for use within the EasyBuild environment.
--- arch/makefile.include.nvhpc_acc.orig 2022-09-02 21:28:42.393086358 +0200
+++ arch/makefile.include.nvhpc_acc 2022-09-02 21:28:48.142969028 +0200
@@ -16,8 +16,8 @@
# N.B.: you might need to change the cuda-version here
# to one that comes with your NVIDIA-HPC SDK
-FC = mpif90 -acc -gpu=cc60,cc70,cc80,cuda11.0
-FCL = mpif90 -acc -gpu=cc60,cc70,cc80,cuda11.0 -c++libs
+FC = mpif90 -acc -gpu=cc60,cc70,cc80,cuda11.6
+FCL = mpif90 -acc -gpu=cc60,cc70,cc80,cuda11.6 -c++libs
FREE = -Mfree
@@ -60,19 +60,19 @@
# Specify your NV HPC-SDK installation (mandatory)
#... first try to set it automatically
-NVROOT =$(shell which nvfortran | awk -F /compilers/bin/nvfortran '{ print $$1 }')
+#NVROOT =$(shell which nvfortran | awk -F /compilers/bin/nvfortran '{ print $$1 }')
# If the above fails, then NVROOT needs to be set manually
-#NVHPC ?= /opt/nvidia/hpc_sdk
-#NVVERSION = 21.11
-#NVROOT = $(NVHPC)/Linux_x86_64/$(NVVERSION)
+NVHPC ?= ${EBROOTNVHPC}
+NVVERSION = ${EBVERSIONNVHPC}
+NVROOT = $(NVHPC)/Linux_x86_64/$(NVVERSION)
## Improves performance when using NV HPC-SDK >=21.11 and CUDA >11.2
-#OFLAG_IN = -fast -Mwarperf
-#SOURCE_IN := nonlr.o
+OFLAG_IN = -fast -Mwarperf
+SOURCE_IN := nonlr.o
# Software emulation of quadruple precsion (mandatory)
-QD ?= $(NVROOT)/compilers/extras/qd
+QD ?= ${EBROOTQD}
LLIBS += -L$(QD)/lib -lqdmod -lqd
INCS += -I$(QD)/include/qd
@@ -88,15 +88,15 @@
LLIBS += $(SCALAPACK) $(LAPACK) $(BLAS)
# FFTW (mandatory)
-FFTW_ROOT ?= /path/to/your/fftw/installation
+FFTW_ROOT ?= ${EBROOTFFTWMPI}
LLIBS += -L$(FFTW_ROOT)/lib -lfftw3
INCS += -I$(FFTW_ROOT)/include
# HDF5-support (optional but strongly recommended)
-#CPP_OPTIONS+= -DVASP_HDF5
-#HDF5_ROOT ?= /path/to/your/hdf5/installation
-#LLIBS += -L$(HDF5_ROOT)/lib -lhdf5_fortran
-#INCS += -I$(HDF5_ROOT)/include
+CPP_OPTIONS+= -DVASP_HDF5
+HDF5_ROOT ?= ${EBROOTHDF5}
+LLIBS += -L$(HDF5_ROOT)/lib -lhdf5_fortran
+INCS += -I$(HDF5_ROOT)/include
# For the VASP-2-Wannier90 interface (optional)
#CPP_OPTIONS += -DVASP2WANNIER90

View File

@ -0,0 +1,72 @@
# IT4Innovations 2022
# JK
easyblock = 'MakeCp'
name = 'VASP'
version = '6.3.2'
local_cudaversion = '11.6.0'
versionsuffix = '-CUDA-%s' % local_cudaversion
homepage = 'https://www.vasp.at'
docurls = 'https://www.vasp.at/wiki/index.php/The_VASP_Manual'
description = """
The Vienna Ab initio Simulation Package (VASP) is a local computer program for atomic scale
materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics,
from first principles.
This is a GPU-enabled build.
To use VASP, you need an academic license from University of Vienna.
Follow the instructions at https://www.vasp.at/index.php/faqs.
Please send us the ID of your VASP license, list of authorized users for whom you require access,
and their email which is associated with your license (use only https://support.it4i.cz/rt).
We are responsible for verifying your licenses.
"""
toolchain = {'name': 'NVHPC', 'version': '22.2'}
toolchainopts = {'pic': True}
# Vasp is proprietary software, see http://www.vasp.at/index.php/faqs on
# how to get access to the code
sources = ['%(namelower)s.%(version)s.tgz']
patches = ['VASP-6.3.2-NVHPC-22.2-CUDA-11.6.0-adjust-makefile.patch']
checksums = [
'f7595221b0f9236a324ea8afe170637a578cdd5a837cc7679e7f7812f6edf25a', # vasp.6.3.2.tgz
# VASP-6.3.2-NVHPC-22.2-CUDA-11.6.0-adjust-makefile.patch
'ba944e61219684af0313fc32fd64c31a0b61919b8c3829ed4651c40d60675ed3',
]
dependencies = [
('OpenMPI', '4.1.2', versionsuffix),
('FFTW.MPI', '3.3.8'),
('imkl', '2022.1.0', '', True),
('ScaLAPACK', '3.0'),
('HDF5', '1.12.1'),
('QD', '2.3.17'),
]
prebuildopts = 'cp arch/makefile.include.nvhpc_acc ./makefile.include && '
# VASP uses LIBS as a list of folders
prebuildopts += 'unset LIBS && '
buildopts = 'std gam ncl '
parallel = 1
files_to_copy = [(['bin/vasp_std', 'bin/vasp_gam', 'bin/vasp_ncl'], 'bin')]
sanity_check_paths = {
'files': ['bin/vasp_std', 'bin/vasp_gam', 'bin/vasp_ncl'],
'dirs': []
}
modluafooter = """
add_property('state','license')
add_property('arch', 'gpu')
"""
moduleclass = 'chem'

View File

@ -93,4 +93,4 @@ sanity_check_paths = {
modluafooter = 'add_property("state","license")'
moduleclass = 'phys'
moduleclass = 'chem'

View File

@ -0,0 +1,30 @@
# IT4Innovations 2022
# JK
easyblock = 'Tarball'
name = 'vaspkit'
version = '1.3.5'
homepage = 'https://vaspkit.com/'
docurls = 'https://vaspkit.com/'
description = """VASPKIT aims at providing a powerful and user-friendly interface to perform high
throughput analysis of various material properties from the raw calculated data using the widely-used
VASP code."""
toolchain = {'name': 'foss', 'version': '2022a'}
source_urls = [SOURCEFORGE_SOURCE]
sources = ['%(namelower)s.%(version)s.linux.x64.tar.gz']
patches = ['vaspkit-1.3.5-fix-install.patch']
dependencies = [('matplotlib', '3.5.2')]
sanity_check_paths = {
'files': ["bin/vaspkit", "how_to_set_environment_variables"],
'dirs': ["bin", "utilities", "examples"],
}
modloadmsg = "Vaspkit configuration template is available at $EBROOTVASPKIT/how_to_set_environment_variables."
moduleclass = 'tools'

View File

@ -0,0 +1,42 @@
# Contribution from IT4Innovations National Supercomputing Center, Czech Republic
# Jakub Kropacek, 2022
name = 'XCrySDen'
version = '1.6.2'
homepage = "http://www.xcrysden.org/"
description = """
XCrySDen is a crystalline and molecular structure visualisation program aiming
at display of isosurfaces and contours, which can be superimposed on
crystalline structures and interactively rotated and manipulated.
"""
docurls = "http://www.xcrysden.org/Documentation.html"
toolchain = {'name': 'foss', 'version': '2022a'}
source_urls = ["http://www.xcrysden.org/download/"]
sources = [SOURCELOWER_TAR_GZ]
patches = ['XCrySDen-1.6.2-no-bwidget-tcl-download.patch']
checksums = [
'811736ee598bec1a5b427fd10e4e063a30dd7cadae96a43a50b36ce90a4f503f', # xcrysden-1.6.2.tar.gz
'e5f79c77116c6faf441d63f62bb3d22c5520163995b28e505d2168424a587bac', # XCrySDen-1.6.2-no-bwidget-tcl-download.patch
]
dependencies = [
('Togl', '2.0'),
('Mesa', '22.0.3'),
('libGLU', '9.0.2'),
('bwidget', '1.9.15'),
]
# gcc fix by Jakob Schiotz, commit 7433b19bd05d1d511ee135a92b3ba845c89814d7
prebuildopts = "export LDLIB='-ldl -Wl,--allow-multiple-definition' &&"
sanity_check_commands = [
'xcrysden --help',
# requires DISPLAY
#'xcrysden --xsf $EBROOTXCRYSDEN/share/%(namelower)s-%(version)s/examples/XSF_Files/GaAsH.xsf --print output.png \
# && rm output.png',
]
moduleclass = 'vis'

View File

@ -0,0 +1,40 @@
# Contribution from IT4Innovations National Supercomputing Center, Czech Republic
# Jakub Kropacek, 2022
name = 'XCrySDen'
version = '1.6.2'
homepage = "http://www.xcrysden.org/"
docurls = "http://www.xcrysden.org/Documentation.html"
description = """
XCrySDen is a crystalline and molecular structure visualisation program aiming at display of isosurfaces
and contours, which can be superimposed on crystalline structures and interactively rotated and manipulated.
It also possesses some tools for analysis of properties in reciprocal space such as interactive selection
of k-paths in the Brillouin zone for the band-structure plots, and visualisation of Fermi surfaces.
"""
toolchain = {'name': 'intel', 'version': '2022a'}
source_urls = ["http://www.xcrysden.org/download/"]
sources = [SOURCELOWER_TAR_GZ]
patches = ['XCrySDen-1.6.2-no-bwidget-tcl-download.patch']
checksums = [
'811736ee598bec1a5b427fd10e4e063a30dd7cadae96a43a50b36ce90a4f503f', # xcrysden-1.6.2.tar.gz
'e5f79c77116c6faf441d63f62bb3d22c5520163995b28e505d2168424a587bac', # XCrySDen-1.6.2-no-bwidget-tcl-download.patch
]
dependencies = [
('Togl', '2.0'),
('Mesa', '22.0.3'),
('libGLU', '9.0.2'),
('bwidget', '1.9.15'),
]
sanity_check_commands = [
'xcrysden --help',
# requires DISPLAY
#'xcrysden --xsf $EBROOTXCRYSDEN/share/%(namelower)s-%(version)s/examples/XSF_Files/GaAsH.xsf --print output.png \
# && rm output.png',
]
moduleclass = 'vis'

View File

@ -0,0 +1,43 @@
# IT4Innovations 2022
# JK
#16007
# Last contribution from the NIHR Biomedical Research Centre
# Guy's and St Thomas' NHS Foundation Trust and King's College London
# uploaded by J. Sassmannshausen
easyblock = 'MakeCp'
name = 'xxd'
version = '8.2.4220'
homepage = 'https://www.vim.org'
description = """xxd is part of the VIM package and this will only install xxd, not vim!
xxd converts to/from hexdumps of binary files."""
toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
source_urls = ['https://github.com/vim/vim/archive/refs/tags']
sources = ['v%(version)s.tar.gz']
checksums = [
'8b0406834b4f03af8bc6dedbf4c69977f7b9df6905182623842d7c4f3065c604', # v8.2.4220.tar.gz
]
builddependencies = [
('binutils', '2.38'),
]
start_dir = 'src/xxd'
files_to_copy = [
(['xxd'], 'bin'),
]
sanity_check_paths = {
'files': ['bin/xxd'],
'dirs': [],
}
sanity_check_commands = ["xxd -h 2>&1 | grep -A 4 '^Usage:'"]
moduleclass = 'tools'