easyconfigs-it4i/a/ABINIT/ABINIT-9.2.1-foss-2020a.eb
Lukáš Krupčík ec770847d2 new file: a/ABINIT/ABINIT-9.2.1-foss-2020a.eb
new file:   a/ABINIT/ABINIT-9.2.1-intel-2020a.eb
2020-11-03 14:46:21 +01:00

59 lines
1.9 KiB
Plaintext

# IT4Innovations 2020
# LK
#
easyblock = 'ConfigureMake'
name = 'ABINIT'
version = '9.2.1'
homepage = 'https://www.abinit.org/'
description = """ABINIT is a package whose main program allows one to find the total energy,
charge density and electronic structure of systems made of electrons and nuclei (molecules
and periodic solids) within Density Functional Theory (DFT), using pseudopotentials and a
planewave or wavelet basis."""
toolchain = {'name': 'foss', 'version': '2020a'}
toolchainopts = {'usempi': True, 'pic': True}
source_urls = ['https://www.abinit.org/sites/default/files/packages/']
sources = [SOURCELOWER_TAR_GZ]
checksums = ['4aa2deaeec385ff1624669a59768e1a6655f6367f8f109e69944244e000142a0']
dependencies = [
('libxc', '4.3.4'),
('netCDF-Fortran', '4.5.2'),
]
# Ensure MPI.
configopts = '--with-mpi="yes" --enable-openmp="no" --enable-mpi-io --enable-mpi-inplace '
# BLAS/Lapack
configopts += '--with-linalg-flavor="openblas" LINALG_LIBS="-L${EBROOTOPENBLAS}/lib -lopenblas" '
# FFTW3 support
configopts += '--with-fft-flavor=fftw3 FFTW3_LIBS="-L${EBROOTFFTW} -lfftw3f -lfftw3" '
# libxc support
configopts += '--with-libxc=${EBROOTLIBXC} '
# hdf5/netcdf4.
configopts += 'with_netcdf="${EBROOTNETCDF}" '
configopts += 'with_netcdf_fortran="${EBROOTNETCDFMINFORTRAN}" '
configopts += 'with_hdf5="${EBROOTHDF5}" '
# make sure --free-line-length-none is added to FCFLAGS
configopts += 'FCFLAGS="${FCFLAGS} --free-line-length-none" '
# `make check` is just executing some basic unit tests.
# In principle, one should run `make tests_v1`` to have some basic validation
# but it seems it's not possible to execute abinit at the end of the build
# due to missing dynamic libs (e.g. libxc)
runtest = "check"
sanity_check_paths = {
'files': ['bin/%s' % x for x in ['abinit', 'aim', 'cut3d', 'conducti', 'mrgddb', 'mrgscr', 'optic']],
'dirs': ['lib/pkgconfig'],
}
moduleclass = 'chem'