From 0f9974746007038aba5bedfcc8d4e1bb26e9ca23 Mon Sep 17 00:00:00 2001 From: Lukas Krupcik Date: Tue, 28 Jun 2022 09:58:15 +0200 Subject: [PATCH] new file: y/Yambo/Yambo-5.1.0-intel-2021a.eb --- y/Yambo/Yambo-5.1.0-intel-2021a.eb | 80 ++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 y/Yambo/Yambo-5.1.0-intel-2021a.eb diff --git a/y/Yambo/Yambo-5.1.0-intel-2021a.eb b/y/Yambo/Yambo-5.1.0-intel-2021a.eb new file mode 100644 index 00000000..4d56e2d2 --- /dev/null +++ b/y/Yambo/Yambo-5.1.0-intel-2021a.eb @@ -0,0 +1,80 @@ +# IT4Innovations +# LK 2022 + +easyblock = 'MakeCp' + +name = 'Yambo' +version = '5.1.0' + +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': '2021a'} +toolchainopts = { + 'usempi': True, + 'openmp': True, +} + +local_copy_cmd_pattern = 'cp %s yambo-%(version)s/lib/archive/' + +source_urls = ['https://github.com/yambo-code/yambo/archive/refs/tags/'] +sources = [ + '%(version)s.tar.gz', # Yambo + { + 'source_urls': ['https://github.com/yambo-code/yambo-libraries/archive/'], + 'filename': '0.0.2.tar.gz', + 'extract_cmd': 'tar --strip-components=1 -xzf %s -C yambo-%(version)s/lib/yambo/', + }, + { + 'source_urls': ['https://github.com/yambo-code/yambo/files/783150/'], + 'filename': 'libxc-2.2.3.tar.gz', + 'extract_cmd': local_copy_cmd_pattern, + }, + { + 'source_urls': ['https://github.com/yambo-code/yambo/files/962173/'], + 'filename': 'iotk-y1.2.2.tar.gz', + 'extract_cmd': local_copy_cmd_pattern, + }, +] +checksums = [ + 'ce8d4af0f29e996f797a5823ee70b559dc8cc6ed5cc59eadb9a0abbe20ebf04f', # 5.1.0.tar.gz + 'cac7e4bf93e16d3cdf640d034e15854455a08dad796aece3cad5c7c491a68a59', # 0.0.2.tar.gz + '2f2b00b77a75c7fe8fe3f3ae70700cf28a09ff8d0ce791e47980ff7f9cde68e7', # libxc-2.2.3.tar.gz + 'c0a4eb19f3e885d83d7afa52eb90658fba7cb1cb6e66049866a98dcc980de543', # iotk-y1.2.2.tar.gz +] + +dependencies = [ + ('HDF5', '1.10.7'), + ('netCDF', '4.8.0'), + ('netCDF-Fortran', '4.5.3'), +] + +with_configure = True + +configopts = '--prefix=%(builddir)s/%(namelower)s-%(version)s/ ' +configopts += '--enable-open-mp --enable-hdf5-par-io ' +configopts += '--with-blas-libs="$LIBBLAS" ' +configopts += '--with-lapack-libs="$LIBLAPACK" --with-blacs-libs="$LIBBLACS" ' +configopts += '--with-scalapack-libs="$LIBSCALAPACK" ' +configopts += '--with-fft-libs="$LIBFFT" --with-fft-includedir="$FFT_INC_DIR" ' +configopts += '--with-netcdf-path="$EBROOTNETCDF" ' +configopts += '--with-netcdff-path="$EBROOTNETCDFMINFORTRAN" ' +configopts += '--with-hdf5-path="$HDF5_DIR" ' + +buildopts = 'all' + +parallel = 1 + +files_to_copy = [ + (['bin/*'], 'bin'), + (['%(builddir)s/%(namelower)s-%(version)s/lib/external/intel/mpiifort/bin/*'], 'bin') +] + +sanity_check_paths = { + 'files': ['bin/' + x for x in ['a2y', 'p2y', 'yambo', 'yambo_ph', 'ypp', 'ypp_ph', + 'iotk', 'iotk.x', 'xc-info']], + 'dirs': [] +} + +moduleclass = 'phys'