# JH 2020

easyblock = 'MakeCp'

name = 'Yambo'
version = '4.5.2'

homepage = 'http://www.yambo-code.org'
description = """Yambo is a FORTRAN/C code for Many-Body calculations in solid state and molecular physics.
 Yambo relies on the Kohn-Sham wavefunctions generated by two DFT public codes: abinit, and PWscf."""

toolchain = {'name': 'intel', 'version': '2020a'}
toolchainopts = {'usempi': True}

source_urls = ['https://github.com/yambo-code/yambo/archive']
sources = ["%(version)s.tar.gz"]

dependencies = [
        ('netCDF-Fortran', '4.5.2'),
        ('libxc', '2.2.3'),
        ('IOTK', '1.2.2'),
]

#with_configure = True

#configopts = 'CPPFLAGS="" FCFLAGS="-nofor_main" --with-blas-libs="$LIBBLAS" '
#configopts += '--with-lapack-libs="$LIBLAPACK" --with-blacs-libs="$LIBBLACS" '
#configopts += '--with-scalapack-libs="$LIBSCALAPACK" --with-fft-libs="$LIBFFT" '
#configopts += '--with-netcdf-libs="-lnetcdff -lnetcdf" '
#configopts += '--with-hdf5-path=$EBROOTHDF5 '
#configopts += '--with-libxc-path=$EBROOTLIBXC '
#configopts += '--enable-iotk '
#onfigopts += '--with-iotk-path=$EBROOTIOTK '
#configopts += '--enable-dp --enable-memory-profile --disable-open-mp '

prebuildopts = './configure --build=x86_64-pc-linux-gnu  --host=x86_64-pc-linux-gnu CPPFLAGS="" FCFLAGS="-nofor_main" --with-blas-libs="$LIBBLAS" --with-lapack-libs="$LIBLAPACK" --with-blacs-libs="$LIBBLACS" --with-scalapack-libs="$LIBSCALAPACK" --with-fft-libs="$LIBFFT" --with-netcdf-libs="-lnetcdff -lnetcdf" --with-hdf5-path=$EBROOTHDF5 --with-libxc-path=$EBROOTLIBXC --enable-iotk --with-iotk-path=$EBROOTIOTK --enable-dp --enable-memory-profile --disable-open-mp && '

buildopts = 'all'

parallel = 1

files_to_copy = [
        (['bin/*'], 'bin'),
        (['lib/*.a'], 'lib'),
        (['include/*'], 'include'),
]

sanity_check_paths = {
    'files': ['bin/' + x for x in ['a2y', 'p2y', 'yambo', 'ypp']],
    'dirs': []
}

moduleclass = 'phys'
