-
Notifications
You must be signed in to change notification settings - Fork 683
/
ABINIT-9.6.2-foss-2022a.eb
71 lines (54 loc) · 2.12 KB
/
ABINIT-9.6.2-foss-2022a.eb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
easyblock = 'ConfigureMake'
name = 'ABINIT'
version = '9.6.2'
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': '2022a'}
toolchainopts = {'usempi': True, 'openmp': True, 'pic': True}
source_urls = ['https://www.abinit.org/sites/default/files/packages/']
sources = [SOURCELOWER_TAR_GZ]
checksums = ['b018c2ff24338a5952c5550a7e09d4c7793b62402c7aa4e09273e9a666e674fb']
builddependencies = [
('Python', '3.10.4'),
]
dependencies = [
('libxc', '5.2.3'),
('netCDF', '4.9.0'),
('netCDF-Fortran', '4.6.0'),
('HDF5', '1.12.2'),
('Wannier90', '3.1.0'),
]
# Needed due to changes in GCC10.
configopts = 'FCFLAGS="-fallow-argument-mismatch -ffree-line-length-none $FCFLAGS" '
configopts += 'FFLAGS="-fallow-argument-mismatch $FFLAGS" '
# Ensure MPI
configopts += '--with-mpi="yes" '
# Enable OpenMP
configopts += '--enable-openmp="yes" '
# BLAS/Lapack from FlexiBLAS
configopts += 'LINALG_LIBS="${LIBLAPACK_MT}" '
# FFTW
configopts += '--with-fft-flavor=fftw3 FFTW3_LIBS="-L${EBROOTFFTW} -lfftw3f -lfftw3" '
# libxc support
configopts += '--with-libxc=${EBROOTLIBXC} '
# hdf5/netcdf4 support
configopts += '--with-netcdf="${EBROOTNETCDF}" '
configopts += '--with-netcdf-fortran="${EBROOTNETCDFMINFORTRAN}" '
configopts += '--with-hdf5="${EBROOTHDF5}" '
# Wannier90
configopts += '--with-wannier90="${EBROOTWANNIER90}" '
preconfigopts = 'export WANNIER90_LIBS="-L$EBROOTWANNIER90/lib -lwannier" && '
# Enable double precision for GW calculations
configopts += '--enable-gw-dpc '
# 'make check' is just executing some basic unit tests.
# Also running 'make tests_v1' to have some basic validation
runtest = "check && make test_v1"
sanity_check_paths = {
'files': ['bin/%s' % x for x in ['abinit', 'aim', 'cut3d', 'conducti', 'mrgddb', 'mrgscr', 'optic']],
'dirs': ['lib/pkgconfig'],
}
moduleclass = 'chem'