diff --git a/Golden_Repo/y/YAXT/README.md b/Golden_Repo/y/YAXT/README.md new file mode 100644 index 0000000000000000000000000000000000000000..822a675453eb1d5c808dc285cfabc2b291d961da --- /dev/null +++ b/Golden_Repo/y/YAXT/README.md @@ -0,0 +1,7 @@ +# YAXT + +YAXT installation requires MPI. At JSC, it is neccessary to have an active `salloc` session and to specify a buildpath. For example on JUWELS: +``` +salloc --time=1:00:00 --nodes=1 --ntasks=16 --partition=devel -A cswmanage +eb YAXT-0.9.3.1-gpsmpi-2022a.eb --buildpath=/p/scratch/cswmanage/$USER/builddir/$SYSTEMNAME/ +``` \ No newline at end of file diff --git a/Golden_Repo/y/YAXT/YAXT-0.9.3.1-gompi-2022a.eb b/Golden_Repo/y/YAXT/YAXT-0.9.3.1-gompi-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..9dc55488ff492b6e9d873aa7d91174a753a5c907 --- /dev/null +++ b/Golden_Repo/y/YAXT/YAXT-0.9.3.1-gompi-2022a.eb @@ -0,0 +1,30 @@ +# Updated to new URL and version 0.9.3.1 + +easyblock = 'ConfigureMake' + +name = 'YAXT' +version = '0.9.3.1' + +homepage = 'https://swprojects.dkrz.de/redmine/projects/yaxt' +description = "Yet Another eXchange Tool" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'usempi': True} + +source_urls = [ + 'https://swprojects.dkrz.de/redmine/attachments/download/523/', + 'https://www.dkrz.de/redmine/attachments/download/523/', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['5cc2ffeedf1604f825f22867753b637d41507941b7a0fbbfa6ea40637a77605a'] + +configopts = 'FC="$F90" FCFLAGS="$F90FLAGS -cpp"' + +preconfigopts = 'MPI_LAUNCH="$(which srun)"' + +sanity_check_paths = { + 'files': ['include/yaxt.h', 'include/yaxt.mod', 'lib/libyaxt.a', 'lib/libyaxt.%s' % SHLIB_EXT], + 'dirs': ['include/xt'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/y/YAXT/YAXT-0.9.3.1-gpsmpi-2022a.eb b/Golden_Repo/y/YAXT/YAXT-0.9.3.1-gpsmpi-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..d26e22b76a77fb6c5953ea6e3227c7344a0b6a3f --- /dev/null +++ b/Golden_Repo/y/YAXT/YAXT-0.9.3.1-gpsmpi-2022a.eb @@ -0,0 +1,30 @@ +# Updated to new URL and version 0.9.3.1 + +easyblock = 'ConfigureMake' + +name = 'YAXT' +version = '0.9.3.1' + +homepage = 'https://swprojects.dkrz.de/redmine/projects/yaxt' +description = "Yet Another eXchange Tool" + +toolchain = {'name': 'gpsmpi', 'version': '2022a'} +toolchainopts = {'usempi': True} + +source_urls = [ + 'https://swprojects.dkrz.de/redmine/attachments/download/523/', + 'https://www.dkrz.de/redmine/attachments/download/523/', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['5cc2ffeedf1604f825f22867753b637d41507941b7a0fbbfa6ea40637a77605a'] + +configopts = 'FC="$F90" FCFLAGS="$F90FLAGS -cpp"' + +preconfigopts = 'MPI_LAUNCH="$(which srun)"' + +sanity_check_paths = { + 'files': ['include/yaxt.h', 'include/yaxt.mod', 'lib/libyaxt.a', 'lib/libyaxt.%s' % SHLIB_EXT], + 'dirs': ['include/xt'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/y/YAXT/YAXT-0.9.3.1-ipsmpi-2022a.eb b/Golden_Repo/y/YAXT/YAXT-0.9.3.1-ipsmpi-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..e9c844d99f7c661dcfcffdac4c0f6536ea3ac44d --- /dev/null +++ b/Golden_Repo/y/YAXT/YAXT-0.9.3.1-ipsmpi-2022a.eb @@ -0,0 +1,30 @@ +# Updated to new URL and version 0.9.3.1 + +easyblock = 'ConfigureMake' + +name = 'YAXT' +version = '0.9.3.1' + +homepage = 'https://swprojects.dkrz.de/redmine/projects/yaxt' +description = "Yet Another eXchange Tool" + +toolchain = {'name': 'ipsmpi', 'version': '2022a'} +toolchainopts = {'usempi': True} + +source_urls = [ + 'https://swprojects.dkrz.de/redmine/attachments/download/523/', + 'https://www.dkrz.de/redmine/attachments/download/523/', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['5cc2ffeedf1604f825f22867753b637d41507941b7a0fbbfa6ea40637a77605a'] + +configopts = 'FC="$F90" FCFLAGS="$F90FLAGS -cpp"' + +preconfigopts = 'MPI_LAUNCH="$(which srun)"' + +sanity_check_paths = { + 'files': ['include/yaxt.h', 'include/yaxt.mod', 'lib/libyaxt.a', 'lib/libyaxt.%s' % SHLIB_EXT], + 'dirs': ['include/xt'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/y/YAXT/YAXT-0.9.3.1-npsmpic-2022a.eb b/Golden_Repo/y/YAXT/YAXT-0.9.3.1-npsmpic-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..2991e4d0da5cbb6d3d57dec027c0f016af3c86ec --- /dev/null +++ b/Golden_Repo/y/YAXT/YAXT-0.9.3.1-npsmpic-2022a.eb @@ -0,0 +1,36 @@ +# Updated to new URL and version 0.9.3.1 + +easyblock = 'ConfigureMake' + +name = 'YAXT' +version = '0.9.3.1' + +homepage = 'https://swprojects.dkrz.de/redmine/projects/yaxt' +description = "Yet Another eXchange Tool" + +toolchain = {'name': 'npsmpic', 'version': '2022a'} +toolchainopts = {'usempi': True} + +source_urls = [ + 'https://swprojects.dkrz.de/redmine/attachments/download/523/', + 'https://www.dkrz.de/redmine/attachments/download/523/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + ('YAXT-%(version)s_remove_pgi-specific.patch', 1), +] +checksums = [ + {'yaxt-0.9.3.1.tar.gz': '5cc2ffeedf1604f825f22867753b637d41507941b7a0fbbfa6ea40637a77605a'}, + {'YAXT-0.9.3.1_remove_pgi-specific.patch': '1cbff4767e075636feef7b34f6c0e1498fce53399c38c14abf2fe8f09c244e9b'}, +] + +configopts = 'FC="$F90" FCFLAGS="$F90FLAGS -cpp"' + +preconfigopts = 'MPI_LAUNCH="$(which srun)"' + +sanity_check_paths = { + 'files': ['include/yaxt.h', 'include/yaxt.mod', 'lib/libyaxt.a', 'lib/libyaxt.%s' % SHLIB_EXT], + 'dirs': ['include/xt'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/y/YAXT/YAXT-0.9.3.1-nvompic-2022a.eb b/Golden_Repo/y/YAXT/YAXT-0.9.3.1-nvompic-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..29d4f831fe5c5a403a89738c5ed2ddcf5885c53d --- /dev/null +++ b/Golden_Repo/y/YAXT/YAXT-0.9.3.1-nvompic-2022a.eb @@ -0,0 +1,36 @@ +# Updated to new URL and version 0.9.3.1 + +easyblock = 'ConfigureMake' + +name = 'YAXT' +version = '0.9.3.1' + +homepage = 'https://swprojects.dkrz.de/redmine/projects/yaxt' +description = "Yet Another eXchange Tool" + +toolchain = {'name': 'nvompic', 'version': '2022a'} +toolchainopts = {'usempi': True} + +source_urls = [ + 'https://swprojects.dkrz.de/redmine/attachments/download/523/', + 'https://www.dkrz.de/redmine/attachments/download/523/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + ('YAXT-%(version)s_remove_pgi-specific.patch', 1), +] +checksums = [ + {'yaxt-0.9.3.1.tar.gz': '5cc2ffeedf1604f825f22867753b637d41507941b7a0fbbfa6ea40637a77605a'}, + {'YAXT-0.9.3.1_remove_pgi-specific.patch': '1cbff4767e075636feef7b34f6c0e1498fce53399c38c14abf2fe8f09c244e9b'}, +] + +configopts = 'FC="$F90" FCFLAGS="$F90FLAGS -cpp"' + +preconfigopts = 'MPI_LAUNCH="$(which srun)"' + +sanity_check_paths = { + 'files': ['include/yaxt.h', 'include/yaxt.mod', 'lib/libyaxt.a', 'lib/libyaxt.%s' % SHLIB_EXT], + 'dirs': ['include/xt'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/y/YAXT/YAXT-0.9.3.1_remove_pgi-specific.patch b/Golden_Repo/y/YAXT/YAXT-0.9.3.1_remove_pgi-specific.patch new file mode 100644 index 0000000000000000000000000000000000000000..3a56927032f2468415761dfab84c660963656cbc --- /dev/null +++ b/Golden_Repo/y/YAXT/YAXT-0.9.3.1_remove_pgi-specific.patch @@ -0,0 +1,42 @@ +Comment out dedicated PGI-code, as NVHPC does not support several intrinsics in the initialization phase. +Author: s.griessbach@fz-juelich.de +--- yaxt-0.9.3.1/tests/ftest_common.f90.orig 2023-02-14 17:04:33.099320000 +0100 ++++ yaxt-0.9.3.1/tests/ftest_common.f90 2023-02-14 17:03:57.795024000 +0100 +@@ -1,3 +1,4 @@ ++ + !> + !! @file ftest_common.f90 + !! +@@ -1214,21 +1215,21 @@ + ! double precision real and gfortran warns about that. For that + ! reason the below expression limits scale_val to those 1-bits + ! which can be represented in a double precision constant +-#if ! defined __PGI || __PGIC__ > 21 +- INTEGER(i8), PARAMETER :: scale_val & +- = IAND(HUGE(a), NOT(ISHFT(1_i8, BIT_SIZE(1_i8) & +- & - DIGITS(0.0_c_double)) - 1 ) ) +-#else ++ !#if defined __PGI || __PGIC__ > 21 ++ ! INTEGER(i8), PARAMETER :: scale_val & ++ ! = IAND(HUGE(a), NOT(ISHFT(1_i8, BIT_SIZE(1_i8) & ++ ! & - DIGITS(0.0_c_double)) - 1 ) ) ++ !#else + INTEGER(i8) :: scale_val +-#endif ++ !#endif + REAL(c_double) :: rand_nums(block_len), sc + n = SIZE(a) + nb = n/block_len +-#if defined __PGI && __PGIC__ <= 21 +- scale_val & +- = IAND(HUGE(a), NOT(ISHFT(1_i8, BIT_SIZE(1_i8) & +- & - DIGITS(0.0_c_double)) - 1 ) ) +-#endif ++ !#if defined __PGI && __PGIC__ <= 21 ++ ! scale_val & ++ ! = IAND(HUGE(a), NOT(ISHFT(1_i8, BIT_SIZE(1_i8) & ++ ! & - DIGITS(0.0_c_double)) - 1 ) ) ++ !#endif + + sc = REAL(scale_val, c_double) + DO j = 1, nb