From 1f04f884f404c1bcf26a82fdafac8fdc1b97ace4 Mon Sep 17 00:00:00 2001 From: Ake Sandgren Date: Tue, 25 Jan 2022 13:51:26 +0100 Subject: [PATCH 001/356] adding easyconfigs: BeautifulSoup-4.10.0-GCCcore-10.3.0.eb, FACE-1.1.1-GCCcore-10.3.0.eb, FORD-6.1.6-GCCcore-10.3.0.eb, FoBiS-3.0.5-GCCcore-10.3.0.eb, forbear-1.2.0-GCCcore-10.3.0.eb, libaed2-1.3.0-GCC-10.3.0.eb, Simstrat-3.01-GCC-10.3.0.eb and patches: FACE-1.1.1_fix_fobos_src_filename.patch, forbear-1.2.0_use_external_FACE.patch, Simstrat-3.01_use_external_forbear_and_aed2.patch --- .../BeautifulSoup-4.10.0-GCCcore-10.3.0.eb | 34 ++++++ .../f/FACE/FACE-1.1.1-GCCcore-10.3.0.eb | 37 ++++++ .../FACE-1.1.1_fix_fobos_src_filename.patch | 49 ++++++++ .../f/FORD/FORD-6.1.6-GCCcore-10.3.0.eb | 52 +++++++++ .../f/FoBiS/FoBiS-3.0.5-GCCcore-10.3.0.eb | 38 +++++++ .../f/forbear/forbear-1.2.0-GCCcore-10.3.0.eb | 40 +++++++ .../forbear-1.2.0_use_external_FACE.patch | 105 ++++++++++++++++++ .../l/libaed2/libaed2-1.3.0-GCC-10.3.0.eb | 31 ++++++ .../s/Simstrat/Simstrat-3.01-GCC-10.3.0.eb | 44 ++++++++ ...t-3.01_use_external_forbear_and_aed2.patch | 99 +++++++++++++++++ 10 files changed, 529 insertions(+) create mode 100644 easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.10.0-GCCcore-10.3.0.eb create mode 100644 easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCCcore-10.3.0.eb create mode 100644 easybuild/easyconfigs/f/FACE/FACE-1.1.1_fix_fobos_src_filename.patch create mode 100644 easybuild/easyconfigs/f/FORD/FORD-6.1.6-GCCcore-10.3.0.eb create mode 100644 easybuild/easyconfigs/f/FoBiS/FoBiS-3.0.5-GCCcore-10.3.0.eb create mode 100644 easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCCcore-10.3.0.eb create mode 100644 easybuild/easyconfigs/f/forbear/forbear-1.2.0_use_external_FACE.patch create mode 100644 easybuild/easyconfigs/l/libaed2/libaed2-1.3.0-GCC-10.3.0.eb create mode 100644 easybuild/easyconfigs/s/Simstrat/Simstrat-3.01-GCC-10.3.0.eb create mode 100644 easybuild/easyconfigs/s/Simstrat/Simstrat-3.01_use_external_forbear_and_aed2.patch diff --git a/easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.10.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.10.0-GCCcore-10.3.0.eb new file mode 100644 index 00000000000..3c7c67ff170 --- /dev/null +++ b/easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.10.0-GCCcore-10.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'BeautifulSoup' +version = '4.10.0' + +homepage = 'https://www.crummy.com/software/BeautifulSoup' +description = "Beautiful Soup is a Python library designed for quick turnaround projects like screen-scraping." + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +builddependencies = [ + ('binutils', '2.36.1') +] + +dependencies = [ + ('Python', '3.9.5'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('soupsieve', '2.3.1', { + 'checksums': ['b8d49b1cd4f037c7082a9683dfa1801aa2597fb11c3a1155b7a5b94829b4f1f9'], + }), + (name, version, { + 'modulename': 'bs4', + 'source_tmpl': 'beautifulsoup4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/b/beautifulsoup4'], + 'checksums': ['c23ad23c521d818955a4151a67d81580319d4bf548d3d49f4223ae041ff98891'], + }), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCCcore-10.3.0.eb b/easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCCcore-10.3.0.eb new file mode 100644 index 00000000000..3b23657d0ed --- /dev/null +++ b/easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCCcore-10.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'MakeCp' + +name = 'FACE' +version = '1.1.1' + +homepage = 'https://github.com/szaghi/FACE' +description = """A Fortran Ansi Colors (and Styles) Environment. +A KISS pure Fortran Library for easy colorize (and stylize) strings.""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +source_urls = ['https://github.com/szaghi/FACE/releases/download/v%(version)s'] +sources = ['%(name)s-v%(version)s.tar.gz'] +patches = [ + 'FACE-1.1.1_fix_fobos_src_filename.patch', +] +checksums = [ + 'cdc75cad2b7f443ee18e4a9ea4d264bc63b069e93cda6aa3f6a15a515b1f3721', # FACE-v1.1.1.tar.gz + '9c51e758716db8a63be393a56fc3be22b3f4f4bf90f659844fe6a07bcfe16eb8', # FACE-1.1.1_fix_fobos_src_filename.patch +] + +builddependencies = [ + ('binutils', '2.36.1'), + ('FoBiS', '3.0.5'), +] + +build_cmd = 'FoBiS.py build' +buildopts = '-mode face-shared-gnu' + +files_to_copy = [(['lib/mod/*.mod'], 'include'), (['lib/libface.%s' % SHLIB_EXT], 'lib')] + +sanity_check_paths = { + 'files': ['include/face.mod', 'lib/libface.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/f/FACE/FACE-1.1.1_fix_fobos_src_filename.patch b/easybuild/easyconfigs/f/FACE/FACE-1.1.1_fix_fobos_src_filename.patch new file mode 100644 index 00000000000..92933aee308 --- /dev/null +++ b/easybuild/easyconfigs/f/FACE/FACE-1.1.1_fix_fobos_src_filename.patch @@ -0,0 +1,49 @@ +Pull in upstream fix for file name + +Åke Sandgren, 2022-01-24 + +commit 918c19faefabc7a8b35475474daa9dc98474d505 +Author: neok-m4700 +Date: Sun Jan 14 15:39:37 2018 +0100 + + consistency with source file naming + + `FoBiS.py build -tb -mode face-shared-gnu` fails without the changes proposed by this PR (no output lib nor module) + +diff --git a/fobos b/fobos +index 0ca7a8c..3f02f4b 100644 +--- a/fobos ++++ b/fobos +@@ -35,28 +35,28 @@ build_dir = exe + [face-static-gnu] + template = template-static-gnu + build_dir = lib +-target = face.f90 ++target = face.F90 + output = libface.a + mklib = static + + [face-shared-gnu] + template = template-shared-gnu + build_dir = lib +-target = face.f90 ++target = face.F90 + output = libface.so + mklib = shared + + [face-static-intel] + template = template-static-intel + build_dir = lib +-target = face.f90 ++target = face.F90 + output = libface.a + mklib = static + + [face-shared-intel] + template = template-shared-intel + build_dir = lib +-target = face.f90 ++target = face.F90 + output = libface.so + mklib = shared + diff --git a/easybuild/easyconfigs/f/FORD/FORD-6.1.6-GCCcore-10.3.0.eb b/easybuild/easyconfigs/f/FORD/FORD-6.1.6-GCCcore-10.3.0.eb new file mode 100644 index 00000000000..f85c40e8755 --- /dev/null +++ b/easybuild/easyconfigs/f/FORD/FORD-6.1.6-GCCcore-10.3.0.eb @@ -0,0 +1,52 @@ +easyblock = 'PythonBundle' + +name = 'FORD' +version = '6.1.6' + +homepage = 'https://github.com/Fortran-FOSS-Programmers/ford/wiki' +description = 'FORD is an automatic documentation generator for modern Fortran programs' + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +builddependencies = [ + ('binutils', '2.36.1'), +] + +dependencies = [ + ('Python', '3.9.5'), + ('Graphviz', '2.47.2',), + ('BeautifulSoup', '4.10.0'), + ('tqdm', '4.61.2'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('graphviz', '0.19.1', { + 'source_tmpl': '%(name)s-%(version)s.zip', + 'checksums': ['09ed0cde452d015fe77c4845a210eb642f28d245f5bc250d4b97808cb8f49078'], + }), + ('Markdown', '3.3.4', { + 'checksums': ['31b5b491868dcc87d6c24b7e3d19a0d730d59d3e46f4eea6430a321bed387a49'], + }), + ('markdown-include', '0.6.0', { + 'checksums': ['6f5d680e36f7780c7f0f61dca53ca581bd50d1b56137ddcd6353efafa0c3e4a2'], + }), + ('md-environ', '0.1.0', { + 'checksums': ['fe3c2a255af523d6f522831c699336cd71f9d543714067d93206ed35836f1793'], + }), + ('toposort', '1.7', { + 'checksums': ['ddc2182c42912a440511bd7ff5d3e6a1cabc3accbc674a3258c8c41cbfbb2125'], + }), + (name, version, { + 'checksums': ['c286206e6ce8c12f2e00f6c73e3b76dae830dce7b5b6f52a54512585fcfae12a'], + }), +] + +sanity_check_paths = { + 'files': ['bin/ford'], + 'dirs': ['bin', 'lib'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/FoBiS/FoBiS-3.0.5-GCCcore-10.3.0.eb b/easybuild/easyconfigs/f/FoBiS/FoBiS-3.0.5-GCCcore-10.3.0.eb new file mode 100644 index 00000000000..06c9257d5bf --- /dev/null +++ b/easybuild/easyconfigs/f/FoBiS/FoBiS-3.0.5-GCCcore-10.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'PythonBundle' + +name = 'FoBiS' +version = '3.0.5' + +homepage = 'https://github.com/szaghi/FoBiS' +description = "A Fortran Building System for automatic building modern Fortran projects" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +dependencies = [ + ('binutils', '2.36.1'), + ('Python', '3.9.5'), + ('BeautifulSoup', '4.10.0'), + ('FORD', '6.1.6'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('argparse', '1.4.0', { + 'checksums': ['62b089a55be1d8949cd2bc7e0df0bddb9e028faefc8c32038cc84862aefdd6e4'], + }), + ('PreForM.py', '1.1.3', { + 'modulename': 'PreForM', + 'checksums': ['420457c236801e8803f4e8b8c7e44a7b65a5becc11d5d75404da537b1e09f3a8'], + }), + ('configparser', '5.2.0', { + 'checksums': ['1b35798fdf1713f1c3139016cfcbc461f09edbf099d1fb658d4b7479fcaa3daa'], + }), + ('FoBiS.py', version, { + 'modulename': 'fobis', + 'checksums': ['ef23fde4199277abc693d539a81e0728571c349174da6b7476579f82482ab96c'], + }), +] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCCcore-10.3.0.eb new file mode 100644 index 00000000000..ef6ec74a694 --- /dev/null +++ b/easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCCcore-10.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'MakeCp' + +name = 'forbear' +version = '1.2.0' + +homepage = 'https://github.com/szaghi/forbear' +description = "A Fortran Library for building and running fancy progress bar" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +source_urls = ['https://github.com/szaghi/forbear/releases/download/v%(version)s'] +sources = ['%(name)s-v%(version)s.tar.gz'] +patches = [ + 'forbear-1.2.0_use_external_FACE.patch', +] +checksums = [ + '72b399526ea291e4d5bed121f8a812aadfe7cea59a1553eb0adf0f3bf5ce1554', # forbear-v1.2.0.tar.gz + '26a586affade31cb83fa23d86a889b28de4b3c30ca6d63946740da0320ba818d', # forbear-1.2.0_use_external_FACE.patch +] + +builddependencies = [ + ('binutils', '2.36.1'), + ('FoBiS', '3.0.5'), +] + +dependencies = [ + ('FACE', '1.1.1'), +] + +build_cmd = 'FoBiS.py build' +buildopts = '-mode shared-gnu ' + +files_to_copy = [(['shared/mod/*.mod'], 'include'), (['shared/libforbear.%s' % SHLIB_EXT], 'lib')] + +sanity_check_paths = { + 'files': ['include/forbear.mod', 'lib/libforbear.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/f/forbear/forbear-1.2.0_use_external_FACE.patch b/easybuild/easyconfigs/f/forbear/forbear-1.2.0_use_external_FACE.patch new file mode 100644 index 00000000000..fdf2967731e --- /dev/null +++ b/easybuild/easyconfigs/f/forbear/forbear-1.2.0_use_external_FACE.patch @@ -0,0 +1,105 @@ +Use external FACE build + +Åke Sandgren, 2022-01-25 +diff -ru forbear.orig/fobos forbear/fobos +--- forbear.orig/fobos 2017-06-11 14:56:47.000000000 +0200 ++++ forbear/fobos 2022-01-25 09:16:13.737587610 +0100 +@@ -17,7 +17,7 @@ + $DEBUG_PGI = -C -g -gopt -Mchkfpstk -Mchkptr -Mchkstk -Mcoff -traceback + $OPTIMIZE = -O3 + $EXDIRS = PENF/src/tests/ +- FACE/src/tests/ FACE/src/third_party/ ++# FACE/src/tests/ FACE/src/third_party/ + + # main modes + # GNU +@@ -117,6 +117,8 @@ + quiet = False + log = True + jobs = 2 ++ext_libs = face ++include = $EBROOTFACE/include + + [template-static-gnu] + compiler = gnu +@@ -130,6 +132,8 @@ + quiet = False + log = True + jobs = 2 ++ext_libs = face ++include = $EBROOTFACE/include + + [template-shared-gnu-debug] + compiler = gnu +@@ -144,6 +148,8 @@ + quiet = False + log = True + jobs = 2 ++ext_libs = face ++include = $EBROOTFACE/include + + [template-static-gnu-debug] + compiler = gnu +@@ -158,6 +164,8 @@ + quiet = False + log = True + jobs = 2 ++ext_libs = face ++include = $EBROOTFACE/include + + [template-shared-intel] + compiler = intel +@@ -171,6 +179,8 @@ + quiet = False + log = True + jobs = 2 ++ext_libs = face ++include = $EBROOTFACE/include + + [template-static-intel] + compiler = intel +@@ -184,6 +194,8 @@ + quiet = False + log = True + jobs = 2 ++ext_libs = face ++include = $EBROOTFACE/include + + [template-shared-intel-debug] + compiler = intel +@@ -198,6 +210,8 @@ + quiet = False + log = True + jobs = 2 ++ext_libs = face ++include = $EBROOTFACE/include + + [template-static-intel-debug] + compiler = intel +@@ -212,6 +226,8 @@ + quiet = False + log = True + jobs = 2 ++ext_libs = face ++include = $EBROOTFACE/include + + [template-static-pgi] + compiler = pgi +@@ -225,6 +241,8 @@ + quiet = False + log = True + jobs = 2 ++ext_libs = face ++include = $EBROOTFACE/include + + [template-static-pgi-debug] + compiler = pgi +@@ -239,6 +257,8 @@ + quiet = False + log = True + jobs = 2 ++ext_libs = face ++include = $EBROOTFACE/include + + # rules + [rule-makedoc] diff --git a/easybuild/easyconfigs/l/libaed2/libaed2-1.3.0-GCC-10.3.0.eb b/easybuild/easyconfigs/l/libaed2/libaed2-1.3.0-GCC-10.3.0.eb new file mode 100644 index 00000000000..f2f9d923062 --- /dev/null +++ b/easybuild/easyconfigs/l/libaed2/libaed2-1.3.0-GCC-10.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'MakeCp' + +name = 'libaed2' +version = '1.3.0' + +homepage = 'https://aquatic.science.uwa.edu.au/research/models/AED' +description = """libaed2 is a library of modules and algorithms for +simulation of "aquatic ecodynamics" - water quality, aquatic +biogeochemsitry, biotic habitat and aquatic ecosystem dynamics.""" + +toolchain = {'name': 'GCC', 'version': '10.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/AquaticEcoDynamics/libaed2/archive'] +sources = ['v%(version)s.tar.gz'] + +buildopts = 'OPT_FFLAGS="$FFLAGS" ' + +files_to_copy = [ + (['mod/*', 'include/*.h'], 'include'), + 'lib', +] + +maxparallel = 1 + +sanity_check_paths = { + 'files': ['lib/%(name)s.a'], + 'dirs': ['include'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/Simstrat/Simstrat-3.01-GCC-10.3.0.eb b/easybuild/easyconfigs/s/Simstrat/Simstrat-3.01-GCC-10.3.0.eb new file mode 100644 index 00000000000..bc14c143be9 --- /dev/null +++ b/easybuild/easyconfigs/s/Simstrat/Simstrat-3.01-GCC-10.3.0.eb @@ -0,0 +1,44 @@ +easyblock = 'MakeCp' + +name = 'Simstrat' +version = '3.01' + +homepage = 'http://www.eawag.ch/en/department/surf/projects/simstrat/' +description = """Simstrat is a one-dimensional physical lake model for +the simulation of stratification and mixing in deep stratified lakes.""" + +toolchain = {'name': 'GCC', 'version': '10.3.0'} + +source_urls = ['https://github.com/Eawag-AppliedSystemAnalysis/Simstrat/archive'] +sources = ['%(version)s.tar.gz'] +patches = [ + 'Simstrat-3.01_use_external_forbear_and_aed2.patch', +] +checksums = [ + 'ed504e65e11e7064d3c27643ca41785eaf1f6a8fd7a96dda5b96966ba3665c2e', # 3.01.tar.gz + # Simstrat-3.01_use_external_forbear_and_aed2.patch + 'c37ad82393c2790222bc4018831a29e0c4ddc240a3e37f7c9c613e3b944d6634', +] + +builddependencies = [ + ('FoBiS', '3.0.5'), +] + +dependencies = [ + ('forbear', '1.2.0'), + ('libaed2', '1.3.0'), +] + +prebuildopts = 'cd build && ' + +build_cmd = 'FoBiS.py build' +buildopts = '-mode release-gnu-dynamic ' + +files_to_copy = [(['build/simstrat'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/simstrat'], + 'dirs': [], +} + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/s/Simstrat/Simstrat-3.01_use_external_forbear_and_aed2.patch b/easybuild/easyconfigs/s/Simstrat/Simstrat-3.01_use_external_forbear_and_aed2.patch new file mode 100644 index 00000000000..465d0a3c380 --- /dev/null +++ b/easybuild/easyconfigs/s/Simstrat/Simstrat-3.01_use_external_forbear_and_aed2.patch @@ -0,0 +1,99 @@ +Use external forbear and aed2 libraries. + +Åke Sandgren, 2022-01-25 +diff -ru Simstrat-3.01.orig/build/fobos Simstrat-3.01/build/fobos +--- Simstrat-3.01.orig/build/fobos 2021-04-23 15:35:32.000000000 +0200 ++++ Simstrat-3.01/build/fobos 2022-01-25 09:54:07.726977196 +0100 +@@ -7,35 +7,14 @@ + lflags=-static-libgcc -static-libgfortran -static + build_dir=. + src=../src/ +-libs = ../lib/libaed2/obj/aed2_bio_utils.o +- ../lib/libaed2/obj/aed2_carbon.o +- ../lib/libaed2/obj/aed2_chlorophylla.o +- ../lib/libaed2/obj/aed2_common.o +- ../lib/libaed2/obj/aed2_core.o +- ../lib/libaed2/obj/aed2_csv_reader.o +- ../lib/libaed2/obj/aed2_dummy.o +- ../lib/libaed2/obj/aed2_nitrogen.o +- ../lib/libaed2/obj/aed2_noncohesive.o +- ../lib/libaed2/obj/aed2_organic_matter.o +- ../lib/libaed2/obj/aed2_oxygen.o +- ../lib/libaed2/obj/aed2_phosphorus.o +- ../lib/libaed2/obj/aed2_phytoplankton.o +- ../lib/libaed2/obj/aed2_sedflux.o +- ../lib/libaed2/obj/aed2_silica.o +- ../lib/libaed2/obj/aed2_totals.o +- ../lib/libaed2/obj/aed2_tracer.o +- ../lib/libaed2/obj/aed2_util.o +- ../lib/libaed2/obj/aed2_zoop_utils.o +- ../lib/libaed2/obj/aed2_zooplankton.o +- ../lib/libaed2/obj/ufz_oxygen.o +-include = ../lib/libaed2/mod/ ++include = $EBROOTLIBAED2/include $EBROOTFORBEAR/include ++ext_libs = aed2 forbear + colors=False + quiet=False + target=simstrat.f90 + output=simstrat + dependon=../lib/csv_fortran/fobos:release-gnu((direct)) + ../lib/json_fortran/fobos:release-gnu((direct)) +- ../lib/forbear/fobos:static-gnu((direct)) + log=True + + [release-gnu-dynamic] +@@ -44,12 +23,13 @@ + lflags=-dynamic-libgcc -dynamic-libgfortran -dynamic + build_dir=. + src=../src/ ++include = $EBROOTLIBAED2/include $EBROOTFORBEAR/include ++ext_libs = aed2 forbear + colors=False + quiet=False + target=simstrat.f90 + dependon=../lib/csv_fortran/fobos:release-gnu((direct)) + ../lib/json_fortran/fobos:release-gnu((direct)) +- ../lib/forbear/fobos:static-gnu((direct)) + log=True + + [release-intel] +@@ -58,6 +38,8 @@ + modsw=-module= + build_dir=. + src=../src/ ++include = $EBROOTLIBAED2/include $EBROOTFORBEAR/include ++ext_libs = aed2 forbear + colors=False + quiet=False + target=simstrat.f90 +@@ -72,13 +54,14 @@ + lflags=-static-libgcc -static-libgfortran -static + build_dir=. + src=../src/ ++include = $EBROOTLIBAED2/include $EBROOTFORBEAR/include ++ext_libs = aed2 forbear + colors=False + quiet=False + target=simstrat.f90 + output=simstrat + dependon=../lib/csv_fortran/fobos:release-gnu((direct)) + ../lib/json_fortran/fobos:release-gnu((direct)) +- ../lib/forbear/fobos:static-gnu((direct)) + log=True + + [debug-gnu-dynamic] +@@ -87,12 +70,13 @@ + lflags=-dynamic-libgcc -dynamic-libgfortran -dynamic + build_dir=. + src=../src/ ++include = $EBROOTLIBAED2/include $EBROOTFORBEAR/include ++ext_libs = aed2 forbear + colors=False + quiet=False + target=simstrat.f90 + dependon=../lib/csv_fortran/fobos:release-gnu((direct)) + ../lib/json_fortran/fobos:release-gnu((direct)) +- ../lib/forbear/fobos:static-gnu((direct)) + log=True + + [rule-makedoc] From 85fdc576f64c91987ab2d10cc1fba9f74813ba00 Mon Sep 17 00:00:00 2001 From: Ake Sandgren Date: Tue, 25 Jan 2022 14:22:17 +0100 Subject: [PATCH 002/356] Add missing checksum and remove trailing space. --- easybuild/easyconfigs/l/libaed2/libaed2-1.3.0-GCC-10.3.0.eb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/l/libaed2/libaed2-1.3.0-GCC-10.3.0.eb b/easybuild/easyconfigs/l/libaed2/libaed2-1.3.0-GCC-10.3.0.eb index f2f9d923062..9274a05f2cd 100644 --- a/easybuild/easyconfigs/l/libaed2/libaed2-1.3.0-GCC-10.3.0.eb +++ b/easybuild/easyconfigs/l/libaed2/libaed2-1.3.0-GCC-10.3.0.eb @@ -13,12 +13,13 @@ toolchainopts = {'pic': True} source_urls = ['https://github.com/AquaticEcoDynamics/libaed2/archive'] sources = ['v%(version)s.tar.gz'] +checksums = ['9152c2a5ac6da4162f73dc37c4a98e1cbd19a106195441b3d27a6df1911242f5'] buildopts = 'OPT_FFLAGS="$FFLAGS" ' files_to_copy = [ (['mod/*', 'include/*.h'], 'include'), - 'lib', + 'lib', ] maxparallel = 1 From 8d58eee940e79d90e948e193be979d15c03041ae Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Thu, 13 Oct 2022 15:31:32 +0200 Subject: [PATCH 003/356] adding easyconfigs: motif-2.3.8-GCCcore-11.3.0.eb, motif-2.3.8-GCCcore-10.2.0.eb --- .../m/motif/motif-2.3.8-GCCcore-10.2.0.eb | 40 ++++++++++++++++++ .../m/motif/motif-2.3.8-GCCcore-11.3.0.eb | 41 +++++++++++++++++++ 2 files changed, 81 insertions(+) create mode 100644 easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-10.2.0.eb create mode 100644 easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-11.3.0.eb diff --git a/easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-10.2.0.eb b/easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..63dcdcf5ab5 --- /dev/null +++ b/easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-10.2.0.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'motif' +version = '2.3.8' + +homepage = 'https://motif.ics.com/' +description = """Motif refers to both a graphical user interface (GUI) specification and the widget toolkit for building + applications that follow that specification under the X Window System on Unix and other POSIX-compliant systems. + It was the standard toolkit for the Common Desktop Environment and thus for Unix.""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['%(name)s-%(version)s.tar.gz'] +checksums = ['859b723666eeac7df018209d66045c9853b50b4218cecadb794e2359619ebce7'] + +builddependencies = [ + ('Autotools', '20200321'), + ('flex', '2.6.4'), + ('Bison', '3.7.1'), + ('util-linux', '2.36'), +] + +dependencies = [ + ('X11', '20201008'), + ('libpng', '1.6.37'), + ('freetype', '2.10.3'), + ('libjpeg-turbo', '2.0.5'), + ('bzip2', '1.0.8'), +] + +# makefile is not parallel safe +parallel = 1 + +sanity_check_paths = { + 'files': ['lib/libMrm.a', 'lib/libUil.a', 'lib/libXm.a', 'bin/mwm', 'bin/uil', 'bin/xmbind'], + 'dirs': ['include/Mrm', 'include/uil', 'include/X11', 'include/Xm'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-11.3.0.eb b/easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..8f4a300dbef --- /dev/null +++ b/easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-11.3.0.eb @@ -0,0 +1,41 @@ +easyblock = 'ConfigureMake' + +name = 'motif' +version = '2.3.8' + +homepage = 'https://motif.ics.com/' +description = """Motif refers to both a graphical user interface (GUI) specification and the widget toolkit for building + applications that follow that specification under the X Window System on Unix and other POSIX-compliant systems. + It was the standard toolkit for the Common Desktop Environment and thus for Unix.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['%(name)s-%(version)s.tar.gz'] +checksums = ['859b723666eeac7df018209d66045c9853b50b4218cecadb794e2359619ebce7'] + +builddependencies = [ + ('Autotools', '20220317'), + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('binutils', '2.38'), + ('util-linux', '2.38'), +] + +dependencies = [ + ('X11', '20220504'), + ('libpng', '1.6.37'), + ('freetype', '2.12.1'), + ('libjpeg-turbo', '2.1.3'), + ('bzip2', '1.0.8'), +] + +# makefile is not parallel safe +parallel = 1 + +sanity_check_paths = { + 'files': ['lib/libMrm.a', 'lib/libUil.a', 'lib/libXm.a', 'bin/mwm', 'bin/uil', 'bin/xmbind'], + 'dirs': ['include/Mrm', 'include/uil', 'include/X11', 'include/Xm'], +} + +moduleclass = 'vis' From 5fbc3d70eb522ff05453c781536f45a371335d16 Mon Sep 17 00:00:00 2001 From: Sebastian Achilles Date: Fri, 21 Oct 2022 10:54:44 +0200 Subject: [PATCH 004/356] adding easyconfigs: Coreutils-9.1-GCCcore-11.3.0.eb, Coreutils-9.1-GCCcore-12.2.0.eb --- .../Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb | 27 +++++++++++++++++++ .../Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb | 27 +++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb create mode 100644 easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb diff --git a/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..c17a9e2fafd --- /dev/null +++ b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = "Coreutils" +version = "9.1" + +homepage = 'https://www.gnu.org/software/coreutils/' +description = """The GNU Core Utilities are the basic file, shell and text +manipulation utilities of the GNU operating system. These are +the core utilities which are expected to exist on every +operating system. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'optarch': True, 'pic': True} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['61a1f410d78ba7e7f37a5a4f50e6d1320aca33375484a3255eddf17a38580423'] + +builddependencies = [('binutils', '2.38')] + +sanity_check_paths = { + 'files': ['bin/sort', 'bin/echo', 'bin/du', 'bin/date', 'bin/true'], + 'dirs': [] +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..d180e31a737 --- /dev/null +++ b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = "Coreutils" +version = "9.1" + +homepage = 'https://www.gnu.org/software/coreutils/' +description = """The GNU Core Utilities are the basic file, shell and text +manipulation utilities of the GNU operating system. These are +the core utilities which are expected to exist on every +operating system. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +toolchainopts = {'optarch': True, 'pic': True} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['61a1f410d78ba7e7f37a5a4f50e6d1320aca33375484a3255eddf17a38580423'] + +builddependencies = [('binutils', '2.39')] + +sanity_check_paths = { + 'files': ['bin/sort', 'bin/echo', 'bin/du', 'bin/date', 'bin/true'], + 'dirs': [] +} + +moduleclass = 'tools' From 09f76145da119c55329d42a55794316010aa2e31 Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Fri, 18 Nov 2022 18:39:40 +0100 Subject: [PATCH 005/356] Update easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-10.2.0.eb Co-authored-by: Jasper <65227842+jfgrimm@users.noreply.github.com> --- easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-10.2.0.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-10.2.0.eb b/easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-10.2.0.eb index 63dcdcf5ab5..29f68f317f9 100644 --- a/easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-10.2.0.eb @@ -18,6 +18,7 @@ builddependencies = [ ('Autotools', '20200321'), ('flex', '2.6.4'), ('Bison', '3.7.1'), + ('binutils', '2.35'), ('util-linux', '2.36'), ] From d8dea68a53dfdf34c3962dcf65652e60fa9d0d6b Mon Sep 17 00:00:00 2001 From: Sebastian Achilles Date: Fri, 25 Nov 2022 09:05:23 +0100 Subject: [PATCH 006/356] update Coreutils: add patch for older glibc version --- .../Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb | 6 ++- .../Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb | 6 ++- ...tils-9.1_avoid-syntax-error-on-glibc.patch | 43 +++++++++++++++++++ 3 files changed, 53 insertions(+), 2 deletions(-) create mode 100644 easybuild/easyconfigs/c/Coreutils/Coreutils-9.1_avoid-syntax-error-on-glibc.patch diff --git a/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb index c17a9e2fafd..bf09e2c9248 100644 --- a/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb @@ -15,7 +15,11 @@ toolchainopts = {'optarch': True, 'pic': True} source_urls = [GNU_SOURCE] sources = [SOURCELOWER_TAR_XZ] -checksums = ['61a1f410d78ba7e7f37a5a4f50e6d1320aca33375484a3255eddf17a38580423'] +patches = ['Coreutils-9.1_avoid-syntax-error-on-glibc.patch'] +checksums = [ + {'coreutils-9.1.tar.xz': '61a1f410d78ba7e7f37a5a4f50e6d1320aca33375484a3255eddf17a38580423'}, + {'Coreutils-9.1_avoid-syntax-error-on-glibc.patch': '57d081aaef10c65f34798475821e75352e57cc2248384a7f82e0960234a6b9d6'}, +] builddependencies = [('binutils', '2.38')] diff --git a/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb index d180e31a737..020674819a0 100644 --- a/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb @@ -15,7 +15,11 @@ toolchainopts = {'optarch': True, 'pic': True} source_urls = [GNU_SOURCE] sources = [SOURCELOWER_TAR_XZ] -checksums = ['61a1f410d78ba7e7f37a5a4f50e6d1320aca33375484a3255eddf17a38580423'] +patches = ['Coreutils-9.1_avoid-syntax-error-on-glibc.patch'] +checksums = [ + {'coreutils-9.1.tar.xz': '61a1f410d78ba7e7f37a5a4f50e6d1320aca33375484a3255eddf17a38580423'}, + {'Coreutils-9.1_avoid-syntax-error-on-glibc.patch': '57d081aaef10c65f34798475821e75352e57cc2248384a7f82e0960234a6b9d6'}, +] builddependencies = [('binutils', '2.39')] diff --git a/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1_avoid-syntax-error-on-glibc.patch b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1_avoid-syntax-error-on-glibc.patch new file mode 100644 index 00000000000..9a0cf753d29 --- /dev/null +++ b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1_avoid-syntax-error-on-glibc.patch @@ -0,0 +1,43 @@ +From 84863a1c4dc8cca8fb0f6f670f67779cdd2d543b Mon Sep 17 00:00:00 2001 +From: Bruno Haible +Date: Sat, 30 Apr 2022 14:09:00 +0200 +Subject: string: Avoid syntax error on glibc systems with GCC 11. + +Reported by Tom Tromey in + +and by Satadru Pramanik in +. + +* lib/string.in.h (strndup): Don't rededeclare strndup if it is defined +as a macro. +--- + ChangeLog | 10 ++++++++++ + lib/string.in.h | 4 ++-- + 2 files changed, 12 insertions(+), 2 deletions(-) + + stdlib: Fix error in C++ mode on glibc systems (regr. 2022-04-13). +diff --git a/lib/string.in.h b/lib/string.in.h +index b6840fa..33160b2 100644 +--- a/lib/string.in.h ++++ b/lib/string.in.h +@@ -583,7 +583,7 @@ _GL_FUNCDECL_RPL (strndup, char *, + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); + _GL_CXXALIAS_RPL (strndup, char *, (char const *__s, size_t __n)); + # else +-# if !@HAVE_DECL_STRNDUP@ || __GNUC__ >= 11 ++# if !@HAVE_DECL_STRNDUP@ || (__GNUC__ >= 11 && !defined strndup) + _GL_FUNCDECL_SYS (strndup, char *, + (char const *__s, size_t __n) + _GL_ARG_NONNULL ((1)) +@@ -593,7 +593,7 @@ _GL_CXXALIAS_SYS (strndup, char *, (char const *__s, size_t __n)); + # endif + _GL_CXXALIASWARN (strndup); + #else +-# if __GNUC__ >= 11 ++# if __GNUC__ >= 11 && !defined strndup + /* For -Wmismatched-dealloc: Associate strndup with free or rpl_free. */ + _GL_FUNCDECL_SYS (strndup, char *, + (char const *__s, size_t __n) +-- +cgit v1.1 + From e34acae5bf6f2fa7a62fd76ea91ff4c4b3fa337c Mon Sep 17 00:00:00 2001 From: Sebastian Achilles Date: Fri, 25 Nov 2022 09:44:57 +0100 Subject: [PATCH 007/356] update Coreutils: fix E501 line too long --- .../easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb | 3 ++- .../easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb index bf09e2c9248..7279f966bb8 100644 --- a/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb @@ -18,7 +18,8 @@ sources = [SOURCELOWER_TAR_XZ] patches = ['Coreutils-9.1_avoid-syntax-error-on-glibc.patch'] checksums = [ {'coreutils-9.1.tar.xz': '61a1f410d78ba7e7f37a5a4f50e6d1320aca33375484a3255eddf17a38580423'}, - {'Coreutils-9.1_avoid-syntax-error-on-glibc.patch': '57d081aaef10c65f34798475821e75352e57cc2248384a7f82e0960234a6b9d6'}, + {'Coreutils-9.1_avoid-syntax-error-on-glibc.patch': + '57d081aaef10c65f34798475821e75352e57cc2248384a7f82e0960234a6b9d6'}, ] builddependencies = [('binutils', '2.38')] diff --git a/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb index 020674819a0..52a1be553ba 100644 --- a/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb @@ -18,7 +18,8 @@ sources = [SOURCELOWER_TAR_XZ] patches = ['Coreutils-9.1_avoid-syntax-error-on-glibc.patch'] checksums = [ {'coreutils-9.1.tar.xz': '61a1f410d78ba7e7f37a5a4f50e6d1320aca33375484a3255eddf17a38580423'}, - {'Coreutils-9.1_avoid-syntax-error-on-glibc.patch': '57d081aaef10c65f34798475821e75352e57cc2248384a7f82e0960234a6b9d6'}, + {'Coreutils-9.1_avoid-syntax-error-on-glibc.patch': + '57d081aaef10c65f34798475821e75352e57cc2248384a7f82e0960234a6b9d6'}, ] builddependencies = [('binutils', '2.39')] From 1ec56861ffeabe53bc35e15e75d70766a710ef23 Mon Sep 17 00:00:00 2001 From: sassy Date: Wed, 22 Feb 2023 11:55:47 +0000 Subject: [PATCH 008/356] adding easyconfigs: cairomm-1.14.4-GCC-11.3.0-cairo-1.17.4.eb, cairomm-1.16.2-GCC-11.3.0-cairo-1.17.4.eb --- .../cairomm-1.14.4-GCC-11.3.0-cairo-1.17.4.eb | 39 +++++++++++++++++++ .../cairomm-1.16.2-GCC-11.3.0-cairo-1.17.4.eb | 39 +++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0-cairo-1.17.4.eb create mode 100644 easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0-cairo-1.17.4.eb diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0-cairo-1.17.4.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0-cairo-1.17.4.eb new file mode 100644 index 00000000000..a5a73baad0a --- /dev/null +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0-cairo-1.17.4.eb @@ -0,0 +1,39 @@ +# Updated to MesonNinja as the autogen.sh complained. +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'MesonNinja' + +name = 'cairomm' +version = '1.14.4' +versionsuffix = '-cairo-1.17.4' + +homepage = 'http://cairographics.org' +description = "The Cairomm package provides a C++ interface to Cairo." + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['http://cairographics.org/releases/'] +sources = [SOURCE_TAR_XZ] +checksums = ['4749d25a2b2ef67cc0c014caaf5c87fa46792fc4b3ede186fb0fc932d2055158'] + +builddependencies = [ + ('CMake', '3.24.3'), + ('Meson', '0.62.1'), + ('Ninja', '1.10.2'), +] + +dependencies = [ + ('cairo', '1.17.4'), + ('libsigc++', '2.12.0'), + ('mm-common', '1.0.5'), + ('Boost', '1.79.0'), +] + +runtest = 'ninja test' + +sanity_check_paths = { + 'files': ['lib/libcairomm-1.0.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0-cairo-1.17.4.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0-cairo-1.17.4.eb new file mode 100644 index 00000000000..ffe8ff54a20 --- /dev/null +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0-cairo-1.17.4.eb @@ -0,0 +1,39 @@ +# Updated to MesonNinja as the autogen.sh complained. +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'MesonNinja' + +name = 'cairomm' +version = '1.16.2' +versionsuffix = '-cairo-1.17.4' + +homepage = 'http://cairographics.org' +description = "The Cairomm package provides a C++ interface to Cairo." + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['http://cairographics.org/releases/'] +sources = [SOURCE_TAR_XZ] +checksums = ['6a63bf98a97dda2b0f55e34d1b5f3fb909ef8b70f9b8d382cb1ff3978e7dc13f'] + +builddependencies = [ + ('CMake', '3.24.3'), + ('Meson', '0.62.1'), + ('Ninja', '1.10.2'), +] + +dependencies = [ + ('cairo', '1.17.4'), + ('libsigc++', '3.4.0'), + ('mm-common', '1.0.5'), + ('Boost', '1.79.0'), +] + +runtest = 'ninja test' + +sanity_check_paths = { + 'files': ['lib/libcairomm-1.16.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' From a95f50fcc0a2f85055f22cb203696ee7bbd6b0cc Mon Sep 17 00:00:00 2001 From: sassy Date: Tue, 28 Feb 2023 10:26:22 +0000 Subject: [PATCH 009/356] cmake removed, versionsuffix of cairo removed --- ...-GCC-11.3.0-cairo-1.17.4.eb => cairomm-1.14.4-GCC-11.3.0.eb} | 2 -- ...-GCC-11.3.0-cairo-1.17.4.eb => cairomm-1.16.2-GCC-11.3.0.eb} | 2 -- 2 files changed, 4 deletions(-) rename easybuild/easyconfigs/c/cairomm/{cairomm-1.14.4-GCC-11.3.0-cairo-1.17.4.eb => cairomm-1.14.4-GCC-11.3.0.eb} (93%) rename easybuild/easyconfigs/c/cairomm/{cairomm-1.16.2-GCC-11.3.0-cairo-1.17.4.eb => cairomm-1.16.2-GCC-11.3.0.eb} (93%) diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0-cairo-1.17.4.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb similarity index 93% rename from easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0-cairo-1.17.4.eb rename to easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb index a5a73baad0a..4bbae3a730b 100644 --- a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0-cairo-1.17.4.eb +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb @@ -5,7 +5,6 @@ easyblock = 'MesonNinja' name = 'cairomm' version = '1.14.4' -versionsuffix = '-cairo-1.17.4' homepage = 'http://cairographics.org' description = "The Cairomm package provides a C++ interface to Cairo." @@ -17,7 +16,6 @@ sources = [SOURCE_TAR_XZ] checksums = ['4749d25a2b2ef67cc0c014caaf5c87fa46792fc4b3ede186fb0fc932d2055158'] builddependencies = [ - ('CMake', '3.24.3'), ('Meson', '0.62.1'), ('Ninja', '1.10.2'), ] diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0-cairo-1.17.4.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb similarity index 93% rename from easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0-cairo-1.17.4.eb rename to easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb index ffe8ff54a20..4d3b9b1d798 100644 --- a/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0-cairo-1.17.4.eb +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb @@ -5,7 +5,6 @@ easyblock = 'MesonNinja' name = 'cairomm' version = '1.16.2' -versionsuffix = '-cairo-1.17.4' homepage = 'http://cairographics.org' description = "The Cairomm package provides a C++ interface to Cairo." @@ -17,7 +16,6 @@ sources = [SOURCE_TAR_XZ] checksums = ['6a63bf98a97dda2b0f55e34d1b5f3fb909ef8b70f9b8d382cb1ff3978e7dc13f'] builddependencies = [ - ('CMake', '3.24.3'), ('Meson', '0.62.1'), ('Ninja', '1.10.2'), ] From 21d7f6f7dc4678362ceb93a03d26261daf23a02f Mon Sep 17 00:00:00 2001 From: sassy Date: Tue, 28 Feb 2023 11:21:48 +0000 Subject: [PATCH 010/356] libsig updated to 3.4.0 --- easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb index 4bbae3a730b..ed89cbbcb2d 100644 --- a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb @@ -22,7 +22,7 @@ builddependencies = [ dependencies = [ ('cairo', '1.17.4'), - ('libsigc++', '2.12.0'), + ('libsigc++', '3.4.0'), ('mm-common', '1.0.5'), ('Boost', '1.79.0'), ] From 61da4a3f8433fce4eaec708e234a7cf9ab37b1bc Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Tue, 30 May 2023 14:08:50 +0200 Subject: [PATCH 011/356] adding easyconfigs: Demystify-0.0.17-foss-2020b.eb --- .../Demystify/Demystify-0.0.17-foss-2020b.eb | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb diff --git a/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb b/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb new file mode 100644 index 00000000000..7e1167c2acd --- /dev/null +++ b/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'Demystify' +version = '0.0.17' + +homepage = 'https://github.com/stacs-cp/demystify' +description = """ +Demystify is a tool which allows puzzles to be expressed in a high-level +constraint programming language and uses MUSes to automatically produce +descriptions of steps in the puzzle solving.""" + +toolchain = {'name': 'foss', 'version': '2020b'} + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['93779a131aa78f7de0dffdbe8e89124836b5eb6d0e9b4bc385821845a4628f52'] + +dependencies = [ + ('Python', '3.8.6'), + ('PySAT', '0.1.7.dev1'), + ('SciPy-bundle', '2020.11'), + ('Z3', '4.8.10', '-Python-%(pyver)s'), +] + +use_pip = True +sanity_pip_check = True + +moduleclass = 'math' From b7f92d85ea82cdf1c76c705716699b19ad470b42 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Mon, 19 Jun 2023 11:48:40 +0200 Subject: [PATCH 012/356] fix version string of Z3 in Demystify v0.0.17 --- .../easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb b/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb index 7e1167c2acd..ee305c91e29 100644 --- a/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb +++ b/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb @@ -19,7 +19,7 @@ dependencies = [ ('Python', '3.8.6'), ('PySAT', '0.1.7.dev1'), ('SciPy-bundle', '2020.11'), - ('Z3', '4.8.10', '-Python-%(pyver)s'), + ('Z3', '4.8.10'), ] use_pip = True From 076a39e19c67475177c5cd3ae0b441df2c574c4a Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Mon, 19 Jun 2023 11:49:29 +0200 Subject: [PATCH 013/356] set download_dep_fail in Demystify v0.0.17 --- easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb b/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb index ee305c91e29..356c7a33d87 100644 --- a/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb +++ b/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb @@ -23,6 +23,7 @@ dependencies = [ ] use_pip = True +download_dep_fail = True sanity_pip_check = True moduleclass = 'math' From 3a5e76333a32bb97e89e0f92c049a0afcdeb34bf Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Tue, 11 Jul 2023 17:19:15 +0200 Subject: [PATCH 014/356] use Z3 with Python bindings in Demystify v0.0.17 --- .../easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb b/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb index 356c7a33d87..3a7d86ba8dc 100644 --- a/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb +++ b/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb @@ -19,7 +19,7 @@ dependencies = [ ('Python', '3.8.6'), ('PySAT', '0.1.7.dev1'), ('SciPy-bundle', '2020.11'), - ('Z3', '4.8.10'), + ('Z3', '4.8.10', '-Python-%(pyver)s'), ] use_pip = True From 6ba5425293501d803c85fc8b27786de8e13afece Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20=C3=96hman?= Date: Wed, 19 Jul 2023 13:04:28 +0200 Subject: [PATCH 015/356] Use CargoPythonBundle for timm --- .../timm-0.6.13-foss-2022a-CUDA-11.7.0.eb | 44 ++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/t/timm/timm-0.6.13-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/t/timm/timm-0.6.13-foss-2022a-CUDA-11.7.0.eb index 7cc34b4454a..736f977f3d7 100644 --- a/easybuild/easyconfigs/t/timm/timm-0.6.13-foss-2022a-CUDA-11.7.0.eb +++ b/easybuild/easyconfigs/t/timm/timm-0.6.13-foss-2022a-CUDA-11.7.0.eb @@ -1,4 +1,4 @@ -easyblock = 'PythonBundle' +easyblock = 'CargoPythonBundle' name = 'timm' version = '0.6.13' @@ -27,6 +27,48 @@ builddependencies = [ ('Rust', '1.65.0'), # for safetensors ] +crates = [ + ('autocfg', '1.1.0'), + ('bitflags', '1.3.2'), + ('cfg-if', '1.0.0'), + ('indoc', '1.0.9'), + ('itoa', '1.0.9'), + ('libc', '0.2.147'), + ('lock_api', '0.4.10'), + ('memmap2', '0.5.10'), + ('memoffset', '0.8.0'), + ('once_cell', '1.18.0'), + ('parking_lot', '0.12.1'), + ('parking_lot_core', '0.9.8'), + ('proc-macro2', '1.0.66'), + ('pyo3', '0.18.3'), + ('pyo3-build-config', '0.18.3'), + ('pyo3-ffi', '0.18.3'), + ('pyo3-macros', '0.18.3'), + ('pyo3-macros-backend', '0.18.3'), + ('quote', '1.0.31'), + ('redox_syscall', '0.3.5'), + ('ryu', '1.0.15'), + ('scopeguard', '1.2.0'), + ('serde', '1.0.171'), + ('serde_derive', '1.0.171'), + ('serde_json', '1.0.103'), + ('smallvec', '1.11.0'), + ('syn', '1.0.109'), + ('syn', '2.0.26'), + ('target-lexicon', '0.12.10'), + ('unicode-ident', '1.0.11'), + ('unindent', '0.1.11'), + ('windows-targets', '0.48.1'), + ('windows_aarch64_gnullvm', '0.48.0'), + ('windows_aarch64_msvc', '0.48.0'), + ('windows_i686_gnu', '0.48.0'), + ('windows_i686_msvc', '0.48.0'), + ('windows_x86_64_gnu', '0.48.0'), + ('windows_x86_64_gnullvm', '0.48.0'), + ('windows_x86_64_msvc', '0.48.0'), +] + use_pip = True exts_list = [ From 6fb54e2da57e4b3151126365eb05c41ad05410a2 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Tue, 5 Sep 2023 18:04:10 +0200 Subject: [PATCH 016/356] adding easyconfigs: SEACells-20230731-foss-2021a.eb --- .../SEACells/SEACells-20230731-foss-2021a.eb | 76 +++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 easybuild/easyconfigs/s/SEACells/SEACells-20230731-foss-2021a.eb diff --git a/easybuild/easyconfigs/s/SEACells/SEACells-20230731-foss-2021a.eb b/easybuild/easyconfigs/s/SEACells/SEACells-20230731-foss-2021a.eb new file mode 100644 index 00000000000..7cf0a01cbbc --- /dev/null +++ b/easybuild/easyconfigs/s/SEACells/SEACells-20230731-foss-2021a.eb @@ -0,0 +1,76 @@ +easyblock = 'PythonBundle' + +name = 'SEACells' +local_commit = 'a3486ca' +version = '20230731' + +homepage = 'https://github.com/dpeerlab/SEACells' +description = """SEACells algorithm for Inference of transcriptional and epigenomic cellular states + from single-cell genomics data""" + +toolchain = {'name': 'foss', 'version': '2021a'} + +builddependencies = [ + ('CMake', '3.20.1'), +] + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('numba', '0.53.1'), + ('scanpy', '1.8.1'), +] + +use_pip = True + +exts_list = [ + ('fcsparser', '0.2.3', { + 'checksums': ['c370f05d42898ce220cb8ea0f89988d18eaaeced063c4118cc3dcb99cbd8c17e'], + }), + ('PhenoGraph', '1.5.7', { + 'checksums': ['46b28f9e043a00deba53bb5f35dd84793669ab2bd4ce78900bf7f15f1321515a'], + }), + ('typing-extensions', '4.7.1', { + 'sources': ['typing_extensions-%(version)s.tar.gz'], + }), + ('python-utils', '3.7.0', { + 'checksums': ['1970468fff1c0adbd60b9a751e6a786223a9f0373c954571912d9cf4be49b552'], + }), + ('progressbar2', '4.2.0', { + 'checksums': ['1393922fcb64598944ad457569fbeb4b3ac189ef50b5adb9cef3284e87e394ce'], + 'modulename': 'progressbar', + }), + ('pygam', '0.8.0', { + 'checksums': ['5cae01aea8b2fede72a6da0aba1490213af54b3476745666af26bbe700479166'], + }), + ('tzlocal', '5.0.1', { + 'checksums': ['46eb99ad4bdb71f3f72b7d24f4267753e240944ecfc16f25d2719ba89827a803'], + }), + ('palantir', '1.2', { + 'preinstallopts': "sed -i '/cmake/d' setup.py && ", + 'checksums': ['2213ba7a99be62922086e30417994874c165bce1356752bbf0b4cc887b1a069e'], + }), + ('ncls', '0.0.67', { + 'checksums': ['fa3e673d60e97bb021a516287d74bb959870cf9d910ec82403b99c443d8f447e'], + }), + ('sorted-nearest', '0.0.32', { + 'sources': ['sorted_nearest-%(version)s.tar.gz'], + 'checksums': ['7ae0d8a4e10a29787e61831bac25af5c22b0bf7edb8a5efd0ab206afbb0238b4'], + }), + ('pyrle', '0.0.33', { + 'checksums': ['4c24a2e096f8dbfa4451d57ce769057e2ed6c369ee75f5dce3c4d6fa47f71a6e'], + }), + ('pyranges', '0.0.110', { + 'checksums': ['5996d22c07c490e3ad15863c63d27a225896e08700a0bcbc6e0272d071dafa5a'], + }), + (name, version, { + 'source_urls': ['https://github.com/dpeerlab/SEACells/archive/'], + 'sources': [{'download_filename': 'a3486ca.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['2e7317d975d0a0b618cbeaca95ceb61fc6abc5c8da4a7095bca763493983749e'], + 'modulename': name, + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' From 75f0d71f7c3dce0bf5bcf25644c70749ec42fadb Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Tue, 5 Sep 2023 18:33:57 +0200 Subject: [PATCH 017/356] add missing checksum for typing-extensions in SEACells easyconfig --- easybuild/easyconfigs/s/SEACells/SEACells-20230731-foss-2021a.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/s/SEACells/SEACells-20230731-foss-2021a.eb b/easybuild/easyconfigs/s/SEACells/SEACells-20230731-foss-2021a.eb index 7cf0a01cbbc..5d184b0d518 100644 --- a/easybuild/easyconfigs/s/SEACells/SEACells-20230731-foss-2021a.eb +++ b/easybuild/easyconfigs/s/SEACells/SEACells-20230731-foss-2021a.eb @@ -32,6 +32,7 @@ exts_list = [ }), ('typing-extensions', '4.7.1', { 'sources': ['typing_extensions-%(version)s.tar.gz'], + 'checksums': ['b75ddc264f0ba5615db7ba217daeb99701ad295353c45f9e95963337ceeeffb2'], }), ('python-utils', '3.7.0', { 'checksums': ['1970468fff1c0adbd60b9a751e6a786223a9f0373c954571912d9cf4be49b552'], From 3cbae9c70f123420a948da9693695346a0a01c00 Mon Sep 17 00:00:00 2001 From: Alexandre Strube Date: Fri, 15 Sep 2023 10:20:14 +0000 Subject: [PATCH 018/356] adding easyconfigs: magma-2.7.2-foss-2023a-CUDA-12.1.1.eb and patches: magma-2.7.2_allow-all-sms.patch --- .../magma-2.7.2-foss-2023a-CUDA-12.1.1.eb | 43 ++++ .../m/magma/magma-2.7.2_allow-all-sms.patch | 209 ++++++++++++++++++ 2 files changed, 252 insertions(+) create mode 100644 easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb create mode 100644 easybuild/easyconfigs/m/magma/magma-2.7.2_allow-all-sms.patch diff --git a/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..3a690766598 --- /dev/null +++ b/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,43 @@ +easyblock = 'CMakeMake' + +name = 'magma' +version = '2.7.2' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://icl.cs.utk.edu/magma/' +description = """The MAGMA project aims to develop a dense linear algebra library similar to + LAPACK but for heterogeneous/hybrid architectures, starting with current Multicore+GPU systems.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True, 'openmp': True} + +source_urls = ['https://icl.cs.utk.edu/projectsfiles/%(name)s/downloads/'] +sources = [SOURCE_TAR_GZ] +checksums = ['729bc1a70e518a7422fe7a3a54537a4741035a77be3349f66eac5c362576d560'] + +patches = ['%(name)s-2.7.2_allow-all-sms.patch'] + +builddependencies = [ + ('CMake', '3.26.3'), +] +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('UCX-CUDA', '1.14.1', versionsuffix), +] + +# default CUDA compute capabilities to use (override via --cuda-compute-capabilities) +cuda_compute_capabilities = ['5.0', '6.0', '7.0', '7.5', '8.0', '8.6', '9.0'] + +# make sure both static and shared libs are built +configopts = [ + '-DMKL_ILP64=ON \ + -DBUILD_SHARED_LIBS=%s \ + -DGPU_TARGET="%%(cuda_sm_space_sep)s" ' % local_shared for local_shared in ('ON', 'OFF') +] + +sanity_check_paths = { + 'files': ['lib/libmagma.%s' % SHLIB_EXT, 'lib/libmagma.a'], + 'dirs': ['include'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/magma/magma-2.7.2_allow-all-sms.patch b/easybuild/easyconfigs/m/magma/magma-2.7.2_allow-all-sms.patch new file mode 100644 index 00000000000..2adb8d87ffb --- /dev/null +++ b/easybuild/easyconfigs/m/magma/magma-2.7.2_allow-all-sms.patch @@ -0,0 +1,209 @@ +--- CMakeLists.txt.orig 2023-09-15 09:54:41.000000000 +0000 ++++ CMakeLists.txt 2023-09-15 10:01:07.000000000 +0000 +@@ -140,161 +140,14 @@ + + include_directories( ${CUDAToolkit_INCLUDE_DIRS} ) + +- if (GPU_TARGET MATCHES Fermi) +- set( GPU_TARGET "${GPU_TARGET} sm_20" ) +- endif() +- +- if (GPU_TARGET MATCHES Kepler) +- set( GPU_TARGET "${GPU_TARGET} sm_30 sm_35 sm_37" ) +- endif() +- +- if (GPU_TARGET MATCHES Maxwell) +- set( GPU_TARGET "${GPU_TARGET} sm_50" ) +- endif() +- +- if (GPU_TARGET MATCHES Pascal) +- set( GPU_TARGET "${GPU_TARGET} sm_60" ) +- endif() +- +- if (GPU_TARGET MATCHES Volta) +- set( GPU_TARGET "${GPU_TARGET} sm_70" ) +- endif() +- +- if (GPU_TARGET MATCHES Turing) +- set( GPU_TARGET "${GPU_TARGET} sm_75" ) +- endif() +- +- if (GPU_TARGET MATCHES Ampere) +- set( GPU_TARGET "${GPU_TARGET} sm_80" ) +- endif() +- +- if (GPU_TARGET MATCHES Hopper) +- set( GPU_TARGET "${GPU_TARGET} sm_90" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_20) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 200 ) +- endif() +- list(APPEND __cuda_architectures 20) +- message( STATUS " compile for CUDA arch 2.0 (Fermi)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_30) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 300 ) +- endif() +- list(APPEND __cuda_architectures 30) +- message( STATUS " compile for CUDA arch 3.0 (Kepler)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_35) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 300 ) +- endif() +- list(APPEND __cuda_architectures 35) +- message( STATUS " compile for CUDA arch 3.5 (Kepler)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_37) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 300 ) +- endif() +- list(APPEND __cuda_architectures 37) +- message( STATUS " compile for CUDA arch 3.7 (Kepler)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_50) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 500 ) +- endif() +- list(APPEND __cuda_architectures 50) +- message( STATUS " compile for CUDA arch 5.0 (Maxwell)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_52) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 520 ) +- endif() +- list(APPEND __cuda_architectures 52) +- message( STATUS " compile for CUDA arch 5.2 (Maxwell)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_53) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 530 ) +- endif() +- list(APPEND __cuda_architectures 53) +- message( STATUS " compile for CUDA arch 5.3 (Maxwell)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_60) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 600 ) +- endif() +- list(APPEND __cuda_architectures 60) +- message( STATUS " compile for CUDA arch 6.0 (Pascal)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_61) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 610 ) +- endif() +- list(APPEND __cuda_architectures 61) +- message( STATUS " compile for CUDA arch 6.1 (Pascal)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_62) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 620 ) +- endif() +- list(APPEND __cuda_architectures 62) +- message( STATUS " compile for CUDA arch 6.2 (Pascal)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_70) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 700 ) +- endif() +- list(APPEND __cuda_architectures 70) +- message( STATUS " compile for CUDA arch 7.0 (Volta)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_71) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 710 ) +- endif() +- list(APPEND __cuda_architectures 71) +- message( STATUS " compile for CUDA arch 7.1 (Volta)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_75) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 750 ) +- endif() +- list(APPEND __cuda_architectures 75) +- message( STATUS " compile for CUDA arch 7.5 (Turing)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_80) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 800 ) +- endif() +- list(APPEND __cuda_architectures 80) +- message( STATUS " compile for CUDA arch 8.0 (Ampere)" ) +- endif() +- +- if (GPU_TARGET MATCHES sm_90) +- if (NOT MIN_ARCH) +- set( MIN_ARCH 900 ) +- endif() +- list(APPEND __cuda_architectures 90) +- message( STATUS " compile for CUDA arch 9.0 (Hopper)" ) +- endif() +- +- if (NOT MIN_ARCH) +- message( FATAL_ERROR "GPU_TARGET must contain one or more of Fermi, Kepler, Maxwell, Pascal, Volta, Turing, Ampere, or valid sm_[0-9][0-9]" ) +- endif() ++ # NVCC options for the different cards ++ # sm_xx is binary, compute_xx is PTX for forward compatability ++ # MIN_SM/MAX_SM is lowest/highest requested version ++ # NV_SM accumulates sm_xx for all requested versions ++ # NV_COMP is compute_xx for highest requested version ++ set( MIN_SM 99 ) ++ set( MAX_SM 0 ) ++ set( NV_SM "" ) + + set(CUDA_ARCHITECTURES "${__cuda_architectures}") + +@@ -312,8 +312,34 @@ + ) + endif(COMPILER_SUPPORTS_FPIC) + +- set(MAGMA_HAVE_CUDA "1") +- set(MAGMA_CUDA_ARCH_MIN "${MIN_ARCH}") ++ string( REGEX MATCHALL "sm_[0-9][0-9]" sms "${GPU_TARGET}" ) ++ list( SORT sms ) # To make output easier to reason about ++ foreach (sm IN LISTS sms) ++ string( REPLACE "sm_" "" sm "${sm}") # Remove sm_ prefix ++ if (sm LESS MIN_SM) ++ set( MIN_SM "${sm}" ) ++ endif() ++ if (sm GREATER MAX_SM) ++ set( MAX_SM "${sm}" ) ++ endif() ++ list( APPEND NV_SM -gencode arch=compute_${sm},code=sm_${sm} ) ++ string( REGEX REPLACE "([0-9])([0-9])" "\\1.\\2" cuda_arch "${sm}" ) ++ message( STATUS " compile for CUDA arch ${cuda_arch}" ) ++ endforeach() ++ ++ if (NOT NV_SM) ++ message( FATAL_ERROR ++ "GPU_TARGET must contain one or more of " ++ "Fermi, Kepler, Maxwell, Pascal, Volta, Turing, Ampere, or valid sm_[0-9][0-9]" ++ "Was: ${GPU_TARGET}" ) ++ endif() ++ ++ set( MIN_ARCH ${MIN_SM}0 ) ++ set( NV_COMP -gencode arch=compute_${MAX_SM},code=compute_${MAX_SM} ) ++ ++ list( APPEND CUDA_NVCC_FLAGS -Xcompiler -fPIC ${NV_SM} ${NV_COMP} ${FORTRAN_CONVENTION} ) ++ add_definitions( -DMAGMA_HAVE_CUDA=1 ) ++ add_definitions( -DMAGMA_CUDA_ARCH_MIN=${MIN_ARCH} ) + message( STATUS "Define -DMAGMA_HAVE_CUDA -DMAGMA_CUDA_ARCH_MIN=${MIN_ARCH}" ) + else() + message( STATUS "Could not find CUDA" ) From ba9cd3af8f833a7f25f803ba420b7957c5dd3999 Mon Sep 17 00:00:00 2001 From: Alexandre Strube Date: Fri, 15 Sep 2023 12:24:45 +0200 Subject: [PATCH 019/356] Add checksum for patch --- .../m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb index 3a690766598..a6de0adabfc 100644 --- a/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb @@ -13,9 +13,11 @@ toolchainopts = {'pic': True, 'openmp': True} source_urls = ['https://icl.cs.utk.edu/projectsfiles/%(name)s/downloads/'] sources = [SOURCE_TAR_GZ] -checksums = ['729bc1a70e518a7422fe7a3a54537a4741035a77be3349f66eac5c362576d560'] - patches = ['%(name)s-2.7.2_allow-all-sms.patch'] +checksums = [ + {'magma-2.7.2.tar.gz': '729bc1a70e518a7422fe7a3a54537a4741035a77be3349f66eac5c362576d560'}, + {'magma-2.7.2_allow-all-sms.patch': '1fe721092d0193cad7c669bd8ffaa7c093a2547967232123ffb03460742f7b98'}, +] builddependencies = [ ('CMake', '3.26.3'), From 24b0be4f4a574dbdb4f66ea40ff89ff124a08af4 Mon Sep 17 00:00:00 2001 From: SebastianAchilles Date: Wed, 20 Sep 2023 22:44:37 +0200 Subject: [PATCH 020/356] Add description to magma-2.7.2_allow-all-sms.patch --- .../easyconfigs/m/magma/magma-2.7.2_allow-all-sms.patch | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/easybuild/easyconfigs/m/magma/magma-2.7.2_allow-all-sms.patch b/easybuild/easyconfigs/m/magma/magma-2.7.2_allow-all-sms.patch index 2adb8d87ffb..5b78a3f229e 100644 --- a/easybuild/easyconfigs/m/magma/magma-2.7.2_allow-all-sms.patch +++ b/easybuild/easyconfigs/m/magma/magma-2.7.2_allow-all-sms.patch @@ -1,3 +1,11 @@ +This allows to process any sm_xx passed to GPU_TARGET. Previously some were silently ignored +See https://bitbucket.org/icl/magma/issues/32/list-of-whitelisted-sm_-values-for-cuda-is +and https://bitbucket.org/icl/magma/pull-requests/5 + +Author: Alexander Grund (TU Dresden) +Updated to 2.6.1: micketeer@gmail.com +Updated to 2.7.2: Alexandre Strube (JSC) + --- CMakeLists.txt.orig 2023-09-15 09:54:41.000000000 +0000 +++ CMakeLists.txt 2023-09-15 10:01:07.000000000 +0000 @@ -140,161 +140,14 @@ From 1364b19a985b11a919f19c98bf005647585213b3 Mon Sep 17 00:00:00 2001 From: SebastianAchilles Date: Wed, 20 Sep 2023 22:48:03 +0200 Subject: [PATCH 021/356] Update checksum in magma-2.7.2-foss-2023a-CUDA-12.1.1.eb --- .../easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb index a6de0adabfc..19a155367dd 100644 --- a/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb @@ -16,7 +16,7 @@ sources = [SOURCE_TAR_GZ] patches = ['%(name)s-2.7.2_allow-all-sms.patch'] checksums = [ {'magma-2.7.2.tar.gz': '729bc1a70e518a7422fe7a3a54537a4741035a77be3349f66eac5c362576d560'}, - {'magma-2.7.2_allow-all-sms.patch': '1fe721092d0193cad7c669bd8ffaa7c093a2547967232123ffb03460742f7b98'}, + {'magma-2.7.2_allow-all-sms.patch': '2996485844d7e199ea57eaebf59903d3514a03536f82b655ce30de480e28b828'}, ] builddependencies = [ From e28901d867a7df20e07de1191a49fc2fe2917b60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20=C3=96hman?= Date: Thu, 19 Oct 2023 00:07:55 +0200 Subject: [PATCH 022/356] Drop MKL_ILP64 --- .../easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb index 19a155367dd..6f1484e887f 100644 --- a/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb @@ -32,8 +32,7 @@ cuda_compute_capabilities = ['5.0', '6.0', '7.0', '7.5', '8.0', '8.6', '9.0'] # make sure both static and shared libs are built configopts = [ - '-DMKL_ILP64=ON \ - -DBUILD_SHARED_LIBS=%s \ + '-DBUILD_SHARED_LIBS=%s \ -DGPU_TARGET="%%(cuda_sm_space_sep)s" ' % local_shared for local_shared in ('ON', 'OFF') ] From 5fba734d82eaa0d9f0100f1e63ff6cd1f2695618 Mon Sep 17 00:00:00 2001 From: sassy Date: Mon, 23 Oct 2023 15:16:06 +0100 Subject: [PATCH 023/356] Doxygen added --- easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb | 1 + easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb | 1 + 2 files changed, 2 insertions(+) diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb index ed89cbbcb2d..74075795c30 100644 --- a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb @@ -18,6 +18,7 @@ checksums = ['4749d25a2b2ef67cc0c014caaf5c87fa46792fc4b3ede186fb0fc932d2055158'] builddependencies = [ ('Meson', '0.62.1'), ('Ninja', '1.10.2'), + ('Doxygen', '1.9.4'), ] dependencies = [ diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb index 4d3b9b1d798..1e37a907b91 100644 --- a/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb @@ -18,6 +18,7 @@ checksums = ['6a63bf98a97dda2b0f55e34d1b5f3fb909ef8b70f9b8d382cb1ff3978e7dc13f'] builddependencies = [ ('Meson', '0.62.1'), ('Ninja', '1.10.2'), + ('Doxygen', '1.9.4'), ] dependencies = [ From 372e1134db6de5a903499593eaab92a22977fc15 Mon Sep 17 00:00:00 2001 From: sassy Date: Mon, 23 Oct 2023 16:16:47 +0100 Subject: [PATCH 024/356] M4 added --- easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb | 1 + easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb | 1 + 2 files changed, 2 insertions(+) diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb index 74075795c30..5d792e5a489 100644 --- a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb @@ -19,6 +19,7 @@ builddependencies = [ ('Meson', '0.62.1'), ('Ninja', '1.10.2'), ('Doxygen', '1.9.4'), + ('M4', '1.4.19'), ] dependencies = [ diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb index 1e37a907b91..972787a1a18 100644 --- a/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.eb @@ -19,6 +19,7 @@ builddependencies = [ ('Meson', '0.62.1'), ('Ninja', '1.10.2'), ('Doxygen', '1.9.4'), + ('M4', '1.4.19'), ] dependencies = [ From 14d6af2299da0e7fba69a5501f35e72eb65ff8c3 Mon Sep 17 00:00:00 2001 From: sassy Date: Mon, 23 Oct 2023 22:02:06 +0100 Subject: [PATCH 025/356] Graphviz-5.0.0 added to cairomm-1.14.4 --- easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb index 5d792e5a489..c2a98051b78 100644 --- a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb @@ -27,6 +27,7 @@ dependencies = [ ('libsigc++', '3.4.0'), ('mm-common', '1.0.5'), ('Boost', '1.79.0'), + ('Graphviz', '5.0.0'), ] runtest = 'ninja test' From 3d50b1f614e939baaa3c247292b8e0ae11456a8b Mon Sep 17 00:00:00 2001 From: sassy Date: Mon, 23 Oct 2023 22:50:35 +0100 Subject: [PATCH 026/356] libxslt added --- easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb index c2a98051b78..a1c2a1d16e5 100644 --- a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb @@ -28,6 +28,7 @@ dependencies = [ ('mm-common', '1.0.5'), ('Boost', '1.79.0'), ('Graphviz', '5.0.0'), + ('libxslt', '1.1.34'), ] runtest = 'ninja test' From 506bcb2cc1e838a98e6d59c7eca02d24139ec166 Mon Sep 17 00:00:00 2001 From: sassy Date: Tue, 24 Oct 2023 00:29:02 +0100 Subject: [PATCH 027/356] libsigc++ 2.12.1 used instead of not-working 3.x one --- .../easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb index a1c2a1d16e5..fae81fd8e8b 100644 --- a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb @@ -18,17 +18,16 @@ checksums = ['4749d25a2b2ef67cc0c014caaf5c87fa46792fc4b3ede186fb0fc932d2055158'] builddependencies = [ ('Meson', '0.62.1'), ('Ninja', '1.10.2'), - ('Doxygen', '1.9.4'), - ('M4', '1.4.19'), + ('pkgconf', '1.8.0'), ] dependencies = [ ('cairo', '1.17.4'), - ('libsigc++', '3.4.0'), - ('mm-common', '1.0.5'), - ('Boost', '1.79.0'), + ('libsigc++', '2.12.1'), ('Graphviz', '5.0.0'), ('libxslt', '1.1.34'), + ('mm-common', '1.0.5'), + ('Boost', '1.79.0'), ] runtest = 'ninja test' From 5e8fd96e3151c44c5a8aa398969a1c4534ce542c Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Tue, 24 Oct 2023 10:11:33 +0200 Subject: [PATCH 028/356] adding easyconfigs: PyTorch-2.0.1-foss-2022b.eb and patches: PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch, PyTorch-2.0.1_avoid-test_quantization-failures.patch, PyTorch-2.0.1_disable-test-sharding.patch, PyTorch-2.0.1_fix-numpy-compat.patch, PyTorch-2.0.1_fix-shift-ops.patch, PyTorch-2.0.1_fix-skip-decorators.patch, PyTorch-2.0.1_fix-test_memory_profiler.patch, PyTorch-2.0.1_fix-test-ops-conf.patch, PyTorch-2.0.1_fix-torch.compile-on-ppc.patch, PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch, PyTorch-2.0.1_fix-vsx-loadu.patch, PyTorch-2.0.1_no-cuda-stubs-rpath.patch, PyTorch-2.0.1_remove-test-requiring-online-access.patch, PyTorch-2.0.1_skip-diff-test-on-ppc.patch, PyTorch-2.0.1_skip-failing-gradtest.patch, PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch, PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch --- .../p/PyTorch/PyTorch-2.0.1-foss-2022b.eb | 144 ++++++++++ ...d-missing-vsx-vector-shift-functions.patch | 103 +++++++ ...0.1_avoid-test_quantization-failures.patch | 19 ++ .../PyTorch-2.0.1_disable-test-sharding.patch | 18 ++ .../PyTorch-2.0.1_fix-numpy-compat.patch | 237 ++++++++++++++++ .../PyTorch/PyTorch-2.0.1_fix-shift-ops.patch | 253 ++++++++++++++++++ .../PyTorch-2.0.1_fix-skip-decorators.patch | 122 +++++++++ .../PyTorch-2.0.1_fix-test-ops-conf.patch | 26 ++ ...Torch-2.0.1_fix-test_memory_profiler.patch | 19 ++ ...Torch-2.0.1_fix-torch.compile-on-ppc.patch | 39 +++ ...rch-2.0.1_fix-ub-in-inductor-codegen.patch | 34 +++ .../PyTorch/PyTorch-2.0.1_fix-vsx-loadu.patch | 31 +++ .../PyTorch-2.0.1_no-cuda-stubs-rpath.patch | 186 +++++++++++++ ..._remove-test-requiring-online-access.patch | 30 +++ .../PyTorch-2.0.1_skip-diff-test-on-ppc.patch | 26 ++ .../PyTorch-2.0.1_skip-failing-gradtest.patch | 16 ++ ....1_skip-test_shuffle_reproducibility.patch | 20 ++ ...0.1_skip-tests-skipped-in-subprocess.patch | 34 +++ 18 files changed, 1357 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_avoid-test_quantization-failures.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_disable-test-sharding.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-numpy-compat.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-shift-ops.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-skip-decorators.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-test-ops-conf.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-test_memory_profiler.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-torch.compile-on-ppc.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-vsx-loadu.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_no-cuda-stubs-rpath.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_remove-test-requiring-online-access.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-diff-test-on-ppc.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-failing-gradtest.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb new file mode 100644 index 00000000000..59f471b813e --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb @@ -0,0 +1,144 @@ +name = 'PyTorch' +version = '2.0.1' + +homepage = 'https://pytorch.org/' +description = """Tensors and Dynamic neural networks in Python with strong GPU acceleration. +PyTorch is a deep learning framework that puts Python first.""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +source_urls = [GITHUB_RELEASE] +sources = ['%(namelower)s-v%(version)s.tar.gz'] +patches = [ + 'PyTorch-1.7.0_disable-dev-shm-test.patch', + 'PyTorch-1.11.1_skip-test_init_from_local_shards.patch', + 'PyTorch-1.12.1_add-hypothesis-suppression.patch', + 'PyTorch-1.12.1_fix-test_cpp_extensions_jit.patch', + 'PyTorch-1.12.1_fix-TestTorch.test_to.patch', + 'PyTorch-1.12.1_skip-test_round_robin.patch', + 'PyTorch-1.13.1_fix-gcc-12-warning-in-fbgemm.patch', + 'PyTorch-1.13.1_fix-protobuf-dependency.patch', + 'PyTorch-1.13.1_fix-warning-in-test-cpp-api.patch', + 'PyTorch-1.13.1_skip-failing-singular-grad-test.patch', + 'PyTorch-1.13.1_skip-tests-without-fbgemm.patch', + 'PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch', + 'PyTorch-2.0.1_avoid-test_quantization-failures.patch', + 'PyTorch-2.0.1_disable-test-sharding.patch', + 'PyTorch-2.0.1_fix-numpy-compat.patch', + 'PyTorch-2.0.1_fix-shift-ops.patch', + 'PyTorch-2.0.1_fix-skip-decorators.patch', + 'PyTorch-2.0.1_fix-test_memory_profiler.patch', + 'PyTorch-2.0.1_fix-test-ops-conf.patch', + 'PyTorch-2.0.1_fix-torch.compile-on-ppc.patch', + 'PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch', + 'PyTorch-2.0.1_fix-vsx-loadu.patch', + 'PyTorch-2.0.1_no-cuda-stubs-rpath.patch', + 'PyTorch-2.0.1_remove-test-requiring-online-access.patch', + 'PyTorch-2.0.1_skip-diff-test-on-ppc.patch', + 'PyTorch-2.0.1_skip-failing-gradtest.patch', + 'PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch', + 'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch', +] +checksums = [ + {'pytorch-v2.0.1.tar.gz': '9c564ca440265c69400ef5fdd48bf15e28af5aa4bed84c95efaad960a6699998'}, + {'PyTorch-1.7.0_disable-dev-shm-test.patch': '622cb1eaeadc06e13128a862d9946bcc1f1edd3d02b259c56a9aecc4d5406b8a'}, + {'PyTorch-1.11.1_skip-test_init_from_local_shards.patch': + '4aeb1b0bc863d4801b0095cbce69f8794066748f0df27c6aaaf729c5ecba04b7'}, + {'PyTorch-1.12.1_add-hypothesis-suppression.patch': + 'e71ffb94ebe69f580fa70e0de84017058325fdff944866d6bd03463626edc32c'}, + {'PyTorch-1.12.1_fix-test_cpp_extensions_jit.patch': + '1efc9850c431d702e9117d4766277d3f88c5c8b3870997c9974971bce7f2ab83'}, + {'PyTorch-1.12.1_fix-TestTorch.test_to.patch': '75f27987c3f25c501e719bd2b1c70a029ae0ee28514a97fe447516aee02b1535'}, + {'PyTorch-1.12.1_skip-test_round_robin.patch': '63d4849b78605aa088fdff695637d9473ea60dee603a3ff7f788690d70c55349'}, + {'PyTorch-1.13.1_fix-gcc-12-warning-in-fbgemm.patch': + '5c7be91a6096083a0b1315efe0001537499c600f1f569953c6a2c7f4cc1d0910'}, + {'PyTorch-1.13.1_fix-protobuf-dependency.patch': + '8bd755a0cab7233a243bc65ca57c9630dfccdc9bf8c9792f0de4e07a644fcb00'}, + {'PyTorch-1.13.1_fix-warning-in-test-cpp-api.patch': + 'bdde0f2105215c95a54de64ec4b1a4520528510663174fef6d5b900eb1db3937'}, + {'PyTorch-1.13.1_skip-failing-singular-grad-test.patch': + '72688a57b2bb617665ad1a1d5e362c5111ae912c10936bb38a089c0204729f48'}, + {'PyTorch-1.13.1_skip-tests-without-fbgemm.patch': + '481e595f673baf8ae58b41697a6792b83048b0264aa79b422f48cd8c22948bb7'}, + {'PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch': + '245ee7f479f6f809b6ea52460113b2c49bbc2a550201f82bdfa0651c72b02ea8'}, + {'PyTorch-2.0.1_avoid-test_quantization-failures.patch': + '02e3f47e4ed1d7d6077e26f1ae50073dc2b20426269930b505f4aefe5d2f33cd'}, + {'PyTorch-2.0.1_disable-test-sharding.patch': 'a1ed7f21c9a269ea039a07a3d6574f885787b30ca5687143c96e096d31066cca'}, + {'PyTorch-2.0.1_fix-numpy-compat.patch': 'f3e5798193e0909a415d824f13772973200965db84476c1737824f2735f2db94'}, + {'PyTorch-2.0.1_fix-shift-ops.patch': '5ee655d5dba56d801d5618543b6ca299fa874939a3471f7b5449bfcb7f3f18c7'}, + {'PyTorch-2.0.1_fix-skip-decorators.patch': '2039012cef45446065e1a2097839fe20bb29fe3c1dcc926c3695ebf29832e920'}, + {'PyTorch-2.0.1_fix-test_memory_profiler.patch': + 'fd03117c46f59c1c62227d31c410c4cdd98fd35410976758cb9e7ec947582ddb'}, + {'PyTorch-2.0.1_fix-test-ops-conf.patch': '0f995e4f89baf3cbeb8666cbfe694666a2ef2bc53d97d6301f768b3ff9001fa4'}, + {'PyTorch-2.0.1_fix-torch.compile-on-ppc.patch': + '20f9172ae696da0c5c7b3bae6f0bf1221192cb1cbac3a44526a415087834bee7'}, + {'PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch': + '1b37194f55ae678f3657b8728dfb896c18ffe8babe90987ce468c4fa9274f357'}, + {'PyTorch-2.0.1_fix-vsx-loadu.patch': 'a0ffa61da2d47c6acd09aaf6d4791e527d8919a6f4f1aa7ed38454cdcadb1f72'}, + {'PyTorch-2.0.1_no-cuda-stubs-rpath.patch': '8902e58a762240f24cdbf0182e99ccdfc2a93492869352fcb4ca0ec7e407f83a'}, + {'PyTorch-2.0.1_remove-test-requiring-online-access.patch': + '721ab0d35ed0ff8a46cb84ced5a98c0fb8ce6143cf6cea80b1360d3d7f64f584'}, + {'PyTorch-2.0.1_skip-diff-test-on-ppc.patch': 'f6e39cd774e5663df25507a73d37ad598157c2eadb2f47ca20a537dbe4b3e14f'}, + {'PyTorch-2.0.1_skip-failing-gradtest.patch': '8030bdec6ba49b057ab232d19a7f1a5e542e47e2ec340653a246ec9ed59f8bc1'}, + {'PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch': + '7047862abc1abaff62954da59700f36d4f39fcf83167a638183b1b7f8fec78ae'}, + {'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch': + '166c134573a95230e39b9ea09ece3ad8072f39d370c9a88fb2a1e24f6aaac2b5'}, +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +builddependencies = [ + ('CMake', '3.24.3'), + ('hypothesis', '6.68.2'), + # For tests + ('pytest-rerunfailures', '12.0'), + ('pytest-shard', '0.1.2'), +] + +dependencies = [ + ('Ninja', '1.11.1'), # Required for JIT compilation of C++ extensions + ('Python', '3.10.8'), + ('protobuf', '23.0'), + ('protobuf-python', '4.23.0'), + ('pybind11', '2.10.3'), + ('SciPy-bundle', '2023.02'), + ('PyYAML', '6.0'), + ('MPFR', '4.2.0'), + ('GMP', '6.2.1'), + ('numactl', '2.0.16'), + ('FFmpeg', '5.1.2'), + ('Pillow', '9.4.0'), + ('expecttest', '0.1.3'), + ('networkx', '3.0'), + ('sympy', '1.12'), +] + +excluded_tests = { + '': [ + # This test seems to take too long on NVIDIA Ampere at least. + 'distributed/test_distributed_spawn', + # Broken on CUDA 11.6/11.7: https://github.com/pytorch/pytorch/issues/75375 + 'distributions/test_constraints', + # no xdoctest + 'doctests', + # failing on broadwell + # See https://github.com/easybuilders/easybuild-easyconfigs/issues/17712 + 'test_native_mha', + # intermittent failures on various systems + # See https://github.com/easybuilders/easybuild-easyconfigs/issues/17712 + 'distributed/rpc/test_tensorpipe_agent', + ] +} + +runtest = 'cd test && PYTHONUNBUFFERED=1 %(python)s run_test.py --continue-through-error --verbose %(excluded_tests)s' + +# Especially test_quantization has a few corner cases that are triggered by the random input values, +# those cannot be easily avoided, see https://github.com/pytorch/pytorch/issues/107030 +# So allow a low number of tests to fail as the tests "usually" succeed +max_failed_tests = 2 + +tests = ['PyTorch-check-cpp-extension.py'] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch new file mode 100644 index 00000000000..57e334c908f --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch @@ -0,0 +1,103 @@ +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h +index 7c300c8087c..84c84286740 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h +@@ -348,6 +348,7 @@ Vectorized inline minimum( + return a.minimum(b); + } + ++DEFINE_SHIFT_FUNCS(int16_t) + + } // namespace + } // namespace vec +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h +index c98ab6215e6..e1e86d3b53a 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h +@@ -279,6 +279,8 @@ Vectorized inline minimum( + return a.minimum(b); + } + ++DEFINE_SHIFT_FUNCS(int32_t) ++ + } // namespace + } // namespace vec + } // namespace at +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h +index a4171026a2b..70613d90443 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h +@@ -231,6 +231,8 @@ Vectorized inline minimum( + return a.minimum(b); + } + ++DEFINE_SHIFT_FUNCS(int64_t) ++ + } // namespace + } // namespace vec + } // namespace at +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vsx_helpers.h b/aten/src/ATen/cpu/vec/vec256/vsx/vsx_helpers.h +index dab38458184..52032cdd817 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vsx_helpers.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vsx_helpers.h +@@ -2,6 +2,7 @@ + #include + #include + #include ++#include + + using vbool8 = __attribute__((altivec(vector__))) __attribute__((altivec(bool__))) char; + using vbool16 = __attribute__((altivec(vector__))) __attribute__((altivec(bool__))) short; +@@ -18,6 +19,11 @@ using vuint64 = __attribute__((altivec(vector__))) unsigned long long; + using vfloat32 = __attribute__((altivec(vector__))) float; + using vfloat64 = __attribute__((altivec(vector__))) double; + ++inline auto make_vuint(vint8 v){ return reinterpret_cast(v); } ++inline auto make_vuint(vint16 v){ return reinterpret_cast(v); } ++inline auto make_vuint(vint32 v){ return reinterpret_cast(v); } ++inline auto make_vuint(vint64 v){ return reinterpret_cast(v); } ++ + #if !defined(vec_float) + C10_ALWAYS_INLINE vfloat32 vec_float(const vint32& vec_in) { + vfloat32 vec_out; +@@ -448,6 +454,40 @@ const vfloat64 vd_imag_half = vfloat64{0.0, 0.5}; + const vfloat64 vd_sqrt2_2 = vfloat64{0.70710678118654757, 0.70710678118654757}; + const vfloat64 vd_pi_2 = vfloat64{M_PI / 2.0, 0.0}; + ++template ++Vectorized VsxShiftRightArith(const Vectorized& a, const Vectorized& b) { ++ const Vectorized max_shift(sizeof(T) * CHAR_BIT - std::is_signed_v); ++ const auto mask = (b < Vectorized(0)) | (b >= max_shift); ++ const auto shift = Vectorized::blendv(b, max_shift, mask); ++ return Vectorized{ ++ vec_sra(a.vec0(), make_vuint(shift.vec0())), ++ vec_sra(a.vec1(), make_vuint(shift.vec1()))}; ++} ++ ++template ++Vectorized VsxShiftLeftArith(const Vectorized& a, const Vectorized& b) { ++ const Vectorized max_shift(sizeof(T) * CHAR_BIT); ++ const auto mask = (b < Vectorized(0)) | (b >= max_shift); ++ Vectorized ret( ++ vec_sl(a.vec0(), make_vuint(b.vec0())), ++ vec_sl(a.vec1(), make_vuint(b.vec1()))); ++ return Vectorized::blendv(ret, Vectorized(0), mask); ++} ++ ++#define DEFINE_SHIFT_FUNCS(operand_type) \ ++ template <> \ ++ Vectorized C10_ALWAYS_INLINE operator>>( \ ++ const Vectorized& a, \ ++ const Vectorized& b) { \ ++ return VsxShiftRightArith(a, b); \ ++ } \ ++ template <> \ ++ Vectorized C10_ALWAYS_INLINE operator<<( \ ++ const Vectorized& a, \ ++ const Vectorized& b) { \ ++ return VsxShiftLeftArith(a, b); \ ++ } \ ++ + } // namespace + } // namespace vec + } // namespace at diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_avoid-test_quantization-failures.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_avoid-test_quantization-failures.patch new file mode 100644 index 00000000000..01a7e098c41 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_avoid-test_quantization-failures.patch @@ -0,0 +1,19 @@ +The quantized values returned by hypothesis as test inputs might still cause overflows. +Hence reduce their maximum value by a factor that should fix most such cases. +See e.g. https://github.com/pytorch/pytorch/issues/111471 + +Author: Alexander Grund (TU Dresden) + +diff --git a/torch/testing/_internal/hypothesis_utils.py b/torch/testing/_internal/hypothesis_utils.py +index 15e7b4512a4..67df4d74e9d 100644 +--- a/torch/testing/_internal/hypothesis_utils.py ++++ b/torch/testing/_internal/hypothesis_utils.py +@@ -36,6 +36,8 @@ _ENFORCED_ZERO_POINT = defaultdict(lambda: None, { + def _get_valid_min_max(qparams): + scale, zero_point, quantized_type = qparams + adjustment = 1 + torch.finfo(torch.float).eps ++ # provide some leeway for scaling values without overflowing long ++ adjustment *= 1e4 + _long_type_info = torch.iinfo(torch.long) + long_min, long_max = _long_type_info.min / adjustment, _long_type_info.max / adjustment + # make sure intermediate results are within the range of long diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_disable-test-sharding.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_disable-test-sharding.patch new file mode 100644 index 00000000000..525d9fda1dc --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_disable-test-sharding.patch @@ -0,0 +1,18 @@ +Our error checking doesn't work well with the parallel/sharded pytorch test. +As the overall gain is low, disable it and always run the full test suite in a single process. + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/run_test.py b/test/run_test.py +index 9619cb2626e..ddfb200148f 100755 +--- a/test/run_test.py ++++ b/test/run_test.py +@@ -815,7 +815,7 @@ def run_test_ops(test_module, test_directory, options): + ] + default_unittest_args.extend(rerun_options) + +- if 'slow-gradcheck' in os.getenv("BUILD_ENVIRONMENT", ""): ++ if True: + extra_unittest_args = default_unittest_args.copy() + # there are a lot of tests that take up a lot of space in slowgrad check, so don't bother parallelizing + # it's also on periodic so we don't care about TTS as much diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-numpy-compat.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-numpy-compat.patch new file mode 100644 index 00000000000..99b3cc6b770 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-numpy-compat.patch @@ -0,0 +1,237 @@ +From ae1ed277563a1ac887faef4370ad9933c883ab9e Mon Sep 17 00:00:00 2001 +From: Omkar Salpekar +Date: Wed, 21 Jun 2023 18:16:40 +0000 +Subject: [PATCH] [codemod][numpy] replace np.str with str (#103931) + +Summary: +`np.str` is removed from numpy 1.20.0. It was an alias to builtin `str` and it's safe to do the replacement. + +The whole changes is mechanical, generated using the following onliner: +``` +fbgr -sl 'np\.str\b' | xargs perl -pi -e 's,\bnp\.str\b,str,g' +``` + +Test Plan: sandcastle + +Differential Revision: D46586144 + +Pull Request resolved: https://github.com/pytorch/pytorch/pull/103931 +Approved by: https://github.com/huydhn +--- + caffe2/python/core.py | 2 +- + caffe2/python/hypothesis_test.py | 4 ++-- + caffe2/python/layer_model_helper.py | 2 +- + caffe2/python/operator_test/adagrad_test_helper.py | 2 +- + caffe2/python/operator_test/cast_op_test.py | 2 +- + caffe2/python/operator_test/detectron_keypoints.py | 4 ++-- + caffe2/python/operator_test/tile_op_test.py | 6 +++--- + caffe2/python/schema.py | 2 +- + caffe2/python/schema_test.py | 4 ++-- + caffe2/python/utils.py | 6 +++--- + .../examples/maml_omniglot/support/omniglot_loaders.py | 4 ++-- + test/quantization/core/test_quantized_op.py | 4 ++-- + 12 files changed, 21 insertions(+), 21 deletions(-) + +diff --git a/caffe2/python/core.py b/caffe2/python/core.py +index d9f97b6121fdd2..e69af5c0a482b1 100644 +--- a/caffe2/python/core.py ++++ b/caffe2/python/core.py +@@ -1636,7 +1636,7 @@ def do_set(operator): + return do_set(self.GivenTensorIntFill) + elif array.dtype == np.int64: + return do_set(self.GivenTensorInt64Fill) +- elif array.dtype == np.str: ++ elif array.dtype == str: + return do_set(self.GivenTensorStringFill) + elif array.dtype == np.bool: + return do_set(self.GivenTensorBoolFill) +diff --git a/caffe2/python/hypothesis_test.py b/caffe2/python/hypothesis_test.py +index 02200f8cf74f18..cb5d00064b6eda 100644 +--- a/caffe2/python/hypothesis_test.py ++++ b/caffe2/python/hypothesis_test.py +@@ -1629,8 +1629,8 @@ def test_tt_sls_layer(self, gc, dc): + c0 = np.ones([10, 1, 2, 16]).astype(np.float32) + c1 = np.ones([10, 16, 2, 16]).astype(np.float32) + c2 = np.ones([10, 16, 2, 1]).astype(np.float32) +- # index = np.array([0, 1, 2, 1, 4], dtype=np.int) +- # lengths = np.array([3, 2], dtype=np.int) ++ # index = np.array([0, 1, 2, 1, 4], dtype=int) ++ # lengths = np.array([3, 2], dtype=int) + index = np.array([0, 1, 2, 1, 4], np.int64) + lengths = np.array([3, 2], np.int32) + +diff --git a/caffe2/python/layer_model_helper.py b/caffe2/python/layer_model_helper.py +index 9a8e237e302143..f21b47e57c653a 100644 +--- a/caffe2/python/layer_model_helper.py ++++ b/caffe2/python/layer_model_helper.py +@@ -148,7 +148,7 @@ def _get_global_constant_initializer_op( + op_name = 'GivenTensorIntFill' + elif array.dtype == np.int64: + op_name = 'GivenTensorInt64Fill' +- elif array.dtype == np.str: ++ elif array.dtype == str: + op_name = 'GivenTensorStringFill' + elif array.dtype == np.bool: + op_name = 'GivenTensorBoolFill' +diff --git a/caffe2/python/operator_test/adagrad_test_helper.py b/caffe2/python/operator_test/adagrad_test_helper.py +index 08caf22b266178..1fd017c4d2ac5c 100644 +--- a/caffe2/python/operator_test/adagrad_test_helper.py ++++ b/caffe2/python/operator_test/adagrad_test_helper.py +@@ -98,7 +98,7 @@ def adagrad_sparse_test_helper( + # Create an indexing array containing values that are lists of indices, + # which index into grad + if grad.size == 0: +- indices = np.empty(shape=(0,), dtype=np.int) ++ indices = np.empty(shape=(0,), dtype=int) + else: + indices = np.random.choice( + np.arange(grad.shape[0]), +diff --git a/caffe2/python/operator_test/cast_op_test.py b/caffe2/python/operator_test/cast_op_test.py +index bf2a210086e691..95540a6121bcac 100644 +--- a/caffe2/python/operator_test/cast_op_test.py ++++ b/caffe2/python/operator_test/cast_op_test.py +@@ -37,7 +37,7 @@ def test_cast_int_to_string(self, data, gc, dc): + 'Cast', 'data', 'data_cast', to=core.DataType.STRING) + + def ref(data): +- ret = data.astype(dtype=np.str) ++ ret = data.astype(dtype=str) + # the string blob will be fetched as object, we feed and re-fetch + # to mimic this. + with hu.temp_workspace('tmp_ref_int_to_string'): +diff --git a/caffe2/python/operator_test/detectron_keypoints.py b/caffe2/python/operator_test/detectron_keypoints.py +index 1abff0675993ff..319e8b5bbffd5e 100644 +--- a/caffe2/python/operator_test/detectron_keypoints.py ++++ b/caffe2/python/operator_test/detectron_keypoints.py +@@ -32,8 +32,8 @@ def heatmaps_to_keypoints(maps, rois): + heights = rois[:, 3] - rois[:, 1] + widths = np.maximum(widths, 1) + heights = np.maximum(heights, 1) +- widths_ceil = np.ceil(widths).astype(np.int) +- heights_ceil = np.ceil(heights).astype(np.int) ++ widths_ceil = np.ceil(widths).astype(int) ++ heights_ceil = np.ceil(heights).astype(int) + + num_keypoints = np.maximum(maps.shape[1], _NUM_KEYPOINTS) + +diff --git a/caffe2/python/operator_test/tile_op_test.py b/caffe2/python/operator_test/tile_op_test.py +index d39dfeee0ad72a..fbb424fe058ccb 100644 +--- a/caffe2/python/operator_test/tile_op_test.py ++++ b/caffe2/python/operator_test/tile_op_test.py +@@ -32,7 +32,7 @@ def test_tile(self, M, K, N, tiles, axis, gc, dc): + ) + + def tile_ref(X, tiles, axis): +- dims = np.asarray([1, 1, 1], dtype=np.int) ++ dims = np.asarray([1, 1, 1], dtype=int) + dims[axis] = tiles + tiled_data = np.tile(X, dims) + return (tiled_data,) +@@ -61,7 +61,7 @@ def test_tile_grad(self, M, N, tiles, gc, dc): + ) + + def tile_ref(X, tiles, axis): +- dims = np.asarray([1, 1], dtype=np.int) ++ dims = np.asarray([1, 1], dtype=int) + dims[axis] = tiles + tiled_data = np.tile(X, dims) + return (tiled_data,) +@@ -99,7 +99,7 @@ def test_tilewinput(self, M, K, N, tiles, axis, gc, dc): + ) + + def tile_ref(X, tiles, axis): +- dims = np.asarray([1, 1, 1], dtype=np.int) ++ dims = np.asarray([1, 1, 1], dtype=int) + dims[axis] = tiles + tiled_data = np.tile(X, dims) + return (tiled_data,) +diff --git a/caffe2/python/schema.py b/caffe2/python/schema.py +index ab6ec29372e2ff..ecbcb2287dddea 100644 +--- a/caffe2/python/schema.py ++++ b/caffe2/python/schema.py +@@ -1252,7 +1252,7 @@ def InitEmptyRecord(net, schema_or_record, enforce_types=False): + + + _DATA_TYPE_FOR_DTYPE = [ +- (np.str, core.DataType.STRING), ++ (str, core.DataType.STRING), + (np.float16, core.DataType.FLOAT16), + (np.float32, core.DataType.FLOAT), + (np.float64, core.DataType.DOUBLE), +diff --git a/caffe2/python/schema_test.py b/caffe2/python/schema_test.py +index 8f3ed4415fd4f5..2f3eaf38dc138d 100644 +--- a/caffe2/python/schema_test.py ++++ b/caffe2/python/schema_test.py +@@ -94,12 +94,12 @@ def testTuple(self): + s = schema.Tuple(np.int32, str, np.float32) + s2 = schema.Struct( + ('field_0', schema.Scalar(dtype=np.int32)), +- ('field_1', schema.Scalar(dtype=np.str)), ++ ('field_1', schema.Scalar(dtype=str)), + ('field_2', schema.Scalar(dtype=np.float32)) + ) + self.assertEqual(s, s2) + self.assertEqual(s[0], schema.Scalar(dtype=np.int32)) +- self.assertEqual(s[1], schema.Scalar(dtype=np.str)) ++ self.assertEqual(s[1], schema.Scalar(dtype=str)) + self.assertEqual(s[2], schema.Scalar(dtype=np.float32)) + self.assertEqual( + s[2, 0], +diff --git a/caffe2/python/utils.py b/caffe2/python/utils.py +index 02a77e74681a93..8c82faee33a4c3 100644 +--- a/caffe2/python/utils.py ++++ b/caffe2/python/utils.py +@@ -67,7 +67,7 @@ def Caffe2TensorToNumpyArray(tensor): + tensor.int64_data, dtype=np.int64).reshape(tensor.dims) + elif tensor.data_type == caffe2_pb2.TensorProto.INT32: + return np.asarray( +- tensor.int32_data, dtype=np.int).reshape(tensor.dims) # pb.INT32=>np.int use int32_data ++ tensor.int32_data, dtype=int).reshape(tensor.dims) # pb.INT32=>int use int32_data + elif tensor.data_type == caffe2_pb2.TensorProto.INT16: + return np.asarray( + tensor.int32_data, dtype=np.int16).reshape(tensor.dims) # pb.INT16=>np.int16 use int32_data +@@ -100,9 +100,9 @@ def NumpyArrayToCaffe2Tensor(arr, name=None): + elif arr.dtype == np.int64: + tensor.data_type = caffe2_pb2.TensorProto.INT64 + tensor.int64_data.extend(list(arr.flatten().astype(np.int64))) +- elif arr.dtype == np.int or arr.dtype == np.int32: ++ elif arr.dtype == int or arr.dtype == np.int32: + tensor.data_type = caffe2_pb2.TensorProto.INT32 +- tensor.int32_data.extend(arr.flatten().astype(np.int).tolist()) ++ tensor.int32_data.extend(arr.flatten().astype(int).tolist()) + elif arr.dtype == np.int16: + tensor.data_type = caffe2_pb2.TensorProto.INT16 + tensor.int32_data.extend(list(arr.flatten().astype(np.int16))) # np.int16=>pb.INT16 use int32_data +diff --git a/functorch/examples/maml_omniglot/support/omniglot_loaders.py b/functorch/examples/maml_omniglot/support/omniglot_loaders.py +index cac99b2dfbb2aa..ce636ecca0b1b2 100644 +--- a/functorch/examples/maml_omniglot/support/omniglot_loaders.py ++++ b/functorch/examples/maml_omniglot/support/omniglot_loaders.py +@@ -271,10 +271,10 @@ def load_data_cache(self, data_pack): + + # [b, setsz, 1, 84, 84] + x_spts = np.array(x_spts).astype(np.float32).reshape(self.batchsz, setsz, 1, self.resize, self.resize) +- y_spts = np.array(y_spts).astype(np.int).reshape(self.batchsz, setsz) ++ y_spts = np.array(y_spts).astype(int).reshape(self.batchsz, setsz) + # [b, qrysz, 1, 84, 84] + x_qrys = np.array(x_qrys).astype(np.float32).reshape(self.batchsz, querysz, 1, self.resize, self.resize) +- y_qrys = np.array(y_qrys).astype(np.int).reshape(self.batchsz, querysz) ++ y_qrys = np.array(y_qrys).astype(int).reshape(self.batchsz, querysz) + + x_spts, y_spts, x_qrys, y_qrys = [ + torch.from_numpy(z).to(self.device) for z in +diff --git a/test/quantization/core/test_quantized_op.py b/test/quantization/core/test_quantized_op.py +index 252d7b92f77ebb..232150a0ba34a6 100644 +--- a/test/quantization/core/test_quantized_op.py ++++ b/test/quantization/core/test_quantized_op.py +@@ -3840,9 +3840,9 @@ def test_qlinear_with_input_q_dq_qweight_dq_output_fp32( + # xnnpack forces W_zp to 0 when using symmetric quantization + # ONEDNN only supports symmetric quantization of weight + if dtype == torch.qint8 or qengine_is_onednn(): +- W_zps = np.zeros(output_channels).astype(np.int) ++ W_zps = np.zeros(output_channels).astype(int) + else: +- W_zps = np.round(np.random.rand(output_channels) * 100 - 50).astype(np.int) ++ W_zps = np.round(np.random.rand(output_channels) * 100 - 50).astype(int) + # when using symmetric quantization + # special restriction for xnnpack fully connected op weight + # [-127, 127] instead of [-128, 127] diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-shift-ops.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-shift-ops.patch new file mode 100644 index 00000000000..f63f3cf4c5f --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-shift-ops.patch @@ -0,0 +1,253 @@ +From d64fb24ee4a71d8cfe175cafc73c5f90fb26c9ac Mon Sep 17 00:00:00 2001 +From: BJ Hargrave +Date: Tue, 14 Mar 2023 15:30:41 -0400 +Subject: [PATCH 1/2] Fix operator>> for int64 vector in vec256 + +There is no vector instruction for shift right arithmetic for int64. +The operator>> implementation emulates this through other vector +instructions. It has been fixed to properly handle out-of-limit +shift values so that shift values <0 and >64 are set to 64 which +results in a value of -1 for negative inputs and 0 for non-negative +inputs (sign preserving). + +Fixes https://github.com/pytorch/pytorch/issues/70904 + +Signed-off-by: BJ Hargrave +--- + aten/src/ATen/cpu/vec/vec256/vec256_int.h | 16 +++++++++++----- + 1 file changed, 11 insertions(+), 5 deletions(-) + +diff --git a/aten/src/ATen/cpu/vec/vec256/vec256_int.h b/aten/src/ATen/cpu/vec/vec256/vec256_int.h +index 81e9d687d10a7b..784514f49e1d48 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vec256_int.h ++++ b/aten/src/ATen/cpu/vec/vec256/vec256_int.h +@@ -1481,16 +1481,22 @@ Vectorized inline operator<<(const Vectorized& a, const Vector + + template <> + Vectorized inline operator>>(const Vectorized& a, const Vectorized& b) { +- // No vector instruction for right shifting int64_t, so emulating it ++ // No vector instruction for right arithmetic shifting int64_t, so emulating it + // instead. + ++ // Clamp the shift values such that shift values < 0 and > 64 are changed to 64 ++ // which results in -1 for negative input and 0 for non-negative input. ++ __m256i zero = _mm256_set1_epi64x(0); ++ __m256i max_shift = _mm256_set1_epi64x(64); ++ __m256i mask = _mm256_or_si256(_mm256_cmpgt_epi64(zero, b), _mm256_cmpgt_epi64(b, max_shift)); ++ __m256i shift = _mm256_blendv_epi8(b, max_shift, mask); + // Shift the number logically to the right, thus filling the most + // significant bits with 0s. Then, replace these bits with the sign + // bit. +- __m256i sign_bits = _mm256_cmpgt_epi64(_mm256_set1_epi64x(0), a); +- __m256i b_inv_mod_64 = _mm256_sub_epi64(_mm256_set1_epi64x(64), b); +- __m256i sign_ext = _mm256_sllv_epi64(sign_bits, b_inv_mod_64); +- __m256i c = _mm256_srlv_epi64(a, b); ++ __m256i sign_bits = _mm256_cmpgt_epi64(zero, a); ++ __m256i sign_shift = _mm256_sub_epi64(max_shift, shift); ++ __m256i sign_ext = _mm256_sllv_epi64(sign_bits, sign_shift); ++ __m256i c = _mm256_srlv_epi64(a, shift); + c = _mm256_or_si256(c, sign_ext); + + return c; + +From 734e2cea43ee782d756f04bc21c625b8fdd36d31 Mon Sep 17 00:00:00 2001 +From: BJ Hargrave +Date: Mon, 13 Mar 2023 10:56:00 -0400 +Subject: [PATCH 2/2] Fix CPU bitwise shifts for out-of-limit shift values + +Negative shift values and positive shift values greater than the +bit size of the dtype (limit 0..bits) now yield expected results +which are consistent with numpy. + +Left shift with an out-of-limit shift value result in a value of 0. +Right shift with an out-of-limit shift value results in a value of -1 +for negative inputs and 0 for non-negative inputs (sign preserving). + +Fixes https://github.com/pytorch/pytorch/issues/70904 + +Signed-off-by: BJ Hargrave +--- + aten/src/ATen/cpu/vec/vec_base.h | 18 ++++++++-- + aten/src/ATen/native/cpu/BinaryOpsKernel.cpp | 9 +++++ + test/functorch/test_vmap.py | 12 ------- + test/test_binary_ufuncs.py | 37 ++++++++++++++++++++ + 4 files changed, 62 insertions(+), 14 deletions(-) + +diff --git a/aten/src/ATen/cpu/vec/vec_base.h b/aten/src/ATen/cpu/vec/vec_base.h +index cb0e37054b4d32..8f006ae0f6634f 100644 +--- a/aten/src/ATen/cpu/vec/vec_base.h ++++ b/aten/src/ATen/cpu/vec/vec_base.h +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -803,17 +804,30 @@ inline Vectorized operator~(const Vectorized& a) { + } + + template Vectorized inline operator<<(const Vectorized &a, const Vectorized &b) { ++ constexpr T max_shift = sizeof(T) * CHAR_BIT; + Vectorized c; + for (int i = 0; i != Vectorized::size(); i++) { +- c[i] = a[i] << b[i]; ++ T shift = b[i]; ++ if ((static_cast>(shift) < 0) || (shift >= max_shift)) { ++ c[i] = 0; ++ } else { ++ c[i] = static_cast>(a[i]) << shift; ++ } + } + return c; + } + + template Vectorized inline operator>>(const Vectorized &a, const Vectorized &b) { ++ // right shift value to retain sign bit for signed and no bits for unsigned ++ constexpr T max_shift = sizeof(T) * CHAR_BIT - std::is_signed_v; + Vectorized c; + for (int i = 0; i != Vectorized::size(); i++) { +- c[i] = a[i] >> b[i]; ++ T shift = b[i]; ++ if ((static_cast>(shift) < 0) || (shift >= max_shift)) { ++ c[i] = a[i] >> max_shift; ++ } else { ++ c[i] = a[i] >> shift; ++ } + } + return c; + } +diff --git a/aten/src/ATen/native/cpu/BinaryOpsKernel.cpp b/aten/src/ATen/native/cpu/BinaryOpsKernel.cpp +index d0393aaf18bf8b..d2d0892d8ea956 100644 +--- a/aten/src/ATen/native/cpu/BinaryOpsKernel.cpp ++++ b/aten/src/ATen/native/cpu/BinaryOpsKernel.cpp +@@ -316,6 +316,10 @@ void lshift_kernel(TensorIteratorBase& iter) { + AT_DISPATCH_INTEGRAL_TYPES(iter.dtype(), "lshift_cpu", [&]() { + cpu_kernel_vec(iter, + [](scalar_t a, scalar_t b) -> scalar_t { ++ constexpr scalar_t max_shift = sizeof(scalar_t) * CHAR_BIT; ++ if ((static_cast>(b) < 0) || (b >= max_shift)) { ++ return 0; ++ } + return static_cast>(a) << b; + }, + [](Vectorized a, Vectorized b) { +@@ -385,6 +389,11 @@ void rshift_kernel(TensorIteratorBase& iter) { + AT_DISPATCH_INTEGRAL_TYPES(iter.dtype(), "rshift_cpu", [&]() { + cpu_kernel_vec(iter, + [](scalar_t a, scalar_t b) -> scalar_t { ++ // right shift value to retain sign bit for signed and no bits for unsigned ++ constexpr scalar_t max_shift = sizeof(scalar_t) * CHAR_BIT - std::is_signed_v; ++ if ((static_cast>(b) < 0) || (b >= max_shift)) { ++ return a >> max_shift; ++ } + return a >> b; + }, + [](Vectorized a, Vectorized b) { +diff --git a/test/functorch/test_vmap.py b/test/functorch/test_vmap.py +index a5fb144f881880..5c352cf8fdf6f0 100644 +--- a/test/functorch/test_vmap.py ++++ b/test/functorch/test_vmap.py +@@ -27,8 +27,6 @@ + instantiate_parametrized_tests, + subtest, + TEST_WITH_UBSAN, +- IS_MACOS, +- IS_X86 + ) + from torch.testing._internal.common_device_type import \ + toleranceOverride, tol +@@ -46,7 +44,6 @@ + compute_quantities_for_vmap_test, + is_valid_inplace_sample_input, + decorate, +- expectedFailureIf + ) + import types + from collections import namedtuple +@@ -3572,10 +3569,6 @@ def test(): + xfail('addcdiv'), + xfail('addcmul'), + xfail('clamp'), +- # AssertionError: Tensor-likes are not equal! +- xfail('bitwise_left_shift', device_type='cpu'), +- decorate('bitwise_right_shift', device_type='cpu', +- decorator=expectedFailureIf(not (IS_MACOS and IS_X86))), + + # UBSAN: runtime error: shift exponent -1 is negative + decorate('bitwise_left_shift', decorator=unittest.skipIf(TEST_WITH_UBSAN, "Fails with above error")), +@@ -3734,11 +3727,6 @@ def test_vmap_exhaustive(self, device, dtype, op): + xfail('linalg.lu', ''), + skip('linalg.ldl_solve', ''), + skip('_softmax_backward_data'), +- # AssertionError: Tensor-likes are not equal! +- # Issue: https://github.com/pytorch/pytorch/issues/70904 +- xfail('bitwise_left_shift', device_type='cpu'), +- decorate('bitwise_right_shift', device_type='cpu', +- decorator=expectedFailureIf(not (IS_MACOS and IS_X86))), + # UBSAN: runtime error: shift exponent -1 is negative + decorate('bitwise_left_shift', decorator=unittest.skipIf(TEST_WITH_UBSAN, "Fails with above error")), + decorate('bitwise_right_shift', decorator=unittest.skipIf(TEST_WITH_UBSAN, "Fails with above error")), +diff --git a/test/test_binary_ufuncs.py b/test/test_binary_ufuncs.py +index 52d7c7a4ffcb00..bf3e4d43494932 100644 +--- a/test/test_binary_ufuncs.py ++++ b/test/test_binary_ufuncs.py +@@ -4,6 +4,7 @@ + import numpy as np + + import itertools ++from itertools import chain + from itertools import product + import math + import random +@@ -53,6 +54,7 @@ + floating_types_and, + floating_and_complex_types, + get_all_math_dtypes, ++ get_all_int_dtypes, + ) + from torch.testing._internal.common_methods_invocations import ( + binary_ufuncs, +@@ -3139,6 +3141,41 @@ def test_signed_shift(self, device, dtype): + self.assertEqual(a >> 1, expected_r) + self.compare_with_numpy(lambda x: x >> 1, lambda x: np.right_shift(x, 1), a) + ++ @onlyCPU ++ @dtypes(*get_all_int_dtypes()) ++ def test_shift_limits(self, device, dtype): ++ "Ensure that CPU integer bit shifting works as expected with out-of-limits shift values." ++ # Issue #70904 ++ iinfo = torch.iinfo(dtype) ++ bits = iinfo.bits ++ low = iinfo.min ++ high = iinfo.max ++ exact_dtype = dtype != torch.uint8 # numpy changes dtype from uint8 to int16 for some out-of-limits shift values ++ for input in ( ++ torch.tensor([-1, 0, 1], device=device, dtype=dtype), # small for non-vectorized operation ++ torch.tensor([low, high], device=device, dtype=dtype), # small for non-vectorized operation ++ make_tensor((64, 64, 64), low=low, high=high, device=device, dtype=dtype), # large for vectorized operation ++ ): ++ shift_left_expected = torch.zeros_like(input) ++ shift_right_expected = torch.clamp(input, -1, 0) ++ for shift in chain(range(-100, -1), range(bits, 100)): ++ shift_left = input << shift ++ self.assertEqual(shift_left, shift_left_expected, msg=f"<< {shift}") ++ self.compare_with_numpy( ++ lambda x: x << shift, ++ lambda x: np.left_shift(x, shift), ++ input, ++ exact_dtype=exact_dtype, msg=f"<< {shift}" ++ ) ++ shift_right = input >> shift ++ self.assertEqual(shift_right, shift_right_expected, msg=f">> {shift}") ++ self.compare_with_numpy( ++ lambda x: x >> shift, ++ lambda x: np.right_shift(x, shift), ++ input, ++ exact_dtype=exact_dtype, msg=f">> {shift}" ++ ) ++ + @onlyNativeDeviceTypes + @dtypes( + *list( diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-skip-decorators.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-skip-decorators.patch new file mode 100644 index 00000000000..101849f4dbf --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-skip-decorators.patch @@ -0,0 +1,122 @@ +The decorators are implemented to run when the function is called which is after +the test `setup` method spawned subprocesses which may use NCCL to sync failing when there are +not enough GPUs available. +So replace the custom code by calls to the `unittest` skip decorators. +See hhttps://github.com/pytorch/pytorch/pull/109491 + +Author: Alexander Grund (TU Dresden) + +diff --git a/torch/testing/_internal/common_distributed.py b/torch/testing/_internal/common_distributed.py +index 400aa80fdca..80a7375cfe1 100644 +--- a/torch/testing/_internal/common_distributed.py ++++ b/torch/testing/_internal/common_distributed.py +@@ -134,17 +134,7 @@ def skip_if_odd_worldsize(func): + + + def require_n_gpus_for_nccl_backend(n, backend): +- def decorator(func): +- @wraps(func) +- def wrapper(*args, **kwargs): +- if backend == "nccl" and torch.cuda.device_count() < n: +- sys.exit(TEST_SKIPS[f"multi-gpu-{n}"].exit_code) +- else: +- return func(*args, **kwargs) +- +- return wrapper +- +- return decorator ++ return skip_if_lt_x_gpu(n) if backend == "nccl" else unittest.skipIf(False, None) + + + def import_transformers_or_skip(): +@@ -167,32 +157,7 @@ def import_transformers_or_skip(): + + + def skip_if_lt_x_gpu(x): +- def decorator(func): +- @wraps(func) +- def wrapper(*args, **kwargs): +- if torch.cuda.is_available() and torch.cuda.device_count() >= x: +- return func(*args, **kwargs) +- sys.exit(TEST_SKIPS[f"multi-gpu-{x}"].exit_code) +- +- return wrapper +- +- return decorator +- +- +-# This decorator helps avoiding initializing cuda while testing other backends +-def nccl_skip_if_lt_x_gpu(backend, x): +- def decorator(func): +- @wraps(func) +- def wrapper(*args, **kwargs): +- if backend != "nccl": +- return func(*args, **kwargs) +- if torch.cuda.is_available() and torch.cuda.device_count() >= x: +- return func(*args, **kwargs) +- sys.exit(TEST_SKIPS[f"multi-gpu-{x}"].exit_code) +- +- return wrapper +- +- return decorator ++ return unittest.skipIf(torch.cuda.device_count() < x, TEST_SKIPS[f"multi-gpu-{x}"].message) + + + def verify_ddp_error_logged(model_DDP, err_substr): +diff --git a/torch/testing/_internal/distributed/distributed_test.py b/torch/testing/_internal/distributed/distributed_test.py +index eb5130f2963..25839618308 100644 +--- a/torch/testing/_internal/distributed/distributed_test.py ++++ b/torch/testing/_internal/distributed/distributed_test.py +@@ -56,7 +56,6 @@ from torch.testing._internal.common_distributed import ( + skip_if_small_worldsize, + skip_if_odd_worldsize, + skip_if_lt_x_gpu, +- nccl_skip_if_lt_x_gpu, + skip_if_no_gpu, + require_n_gpus_for_nccl_backend, + requires_nccl_version, +@@ -4960,7 +4959,7 @@ class DistributedTest: + BACKEND != "mpi" and BACKEND != "nccl" and BACKEND != "gloo", + "get_future is only supported on mpi, nccl and gloo", + ) +- @nccl_skip_if_lt_x_gpu(BACKEND, 2) ++ @require_n_gpus_for_nccl_backend(2, BACKEND) + def test_accumulate_gradients_no_sync(self): + """ + Runs _test_accumulate_gradients_no_sync using default inputs +@@ -4971,7 +4970,7 @@ class DistributedTest: + BACKEND != "mpi" and BACKEND != "nccl" and BACKEND != "gloo", + "get_future is only supported on mpi, nccl and gloo", + ) +- @nccl_skip_if_lt_x_gpu(BACKEND, 2) ++ @require_n_gpus_for_nccl_backend(2, BACKEND) + def test_accumulate_gradients_no_sync_grad_is_view(self): + """ + Runs _test_accumulate_gradients_no_sync using default inputs +@@ -4982,7 +4981,7 @@ class DistributedTest: + BACKEND != "mpi" and BACKEND != "nccl" and BACKEND != "gloo", + "get_future is only supported on mpi, nccl and gloo", + ) +- @nccl_skip_if_lt_x_gpu(BACKEND, 2) ++ @require_n_gpus_for_nccl_backend(2, BACKEND) + def test_accumulate_gradients_no_sync_allreduce_hook(self): + """ + Runs multiple iterations on _test_accumulate_gradients_no_sync +@@ -5010,7 +5009,7 @@ class DistributedTest: + BACKEND != "mpi" and BACKEND != "nccl" and BACKEND != "gloo", + "get_future is only supported on mpi, nccl and gloo", + ) +- @nccl_skip_if_lt_x_gpu(BACKEND, 2) ++ @require_n_gpus_for_nccl_backend(2, BACKEND) + def test_accumulate_gradients_no_sync_allreduce_with_then_hook(self): + """ + Runs multiple iterations on _test_accumulate_gradients_no_sync using allreduce +@@ -5044,7 +5043,7 @@ class DistributedTest: + BACKEND != "mpi" and BACKEND != "nccl" and BACKEND != "gloo", + "get_future is only supported on mpi, nccl and gloo", + ) +- @nccl_skip_if_lt_x_gpu(BACKEND, 2) ++ @require_n_gpus_for_nccl_backend(2, BACKEND) + def test_get_future(self): + def mult(fut): + return [t * 3 for t in fut.wait()] diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-test-ops-conf.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-test-ops-conf.patch new file mode 100644 index 00000000000..6f3977c99a4 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-test-ops-conf.patch @@ -0,0 +1,26 @@ +From 8581301957b0018a32433f85163535709bc9d332 Mon Sep 17 00:00:00 2001 +From: Masaki Kozuki +Date: Fri, 7 Oct 2022 21:25:07 -0700 +Subject: [PATCH] try using a different group name + +ref: +https://github.com/pytorch/pytorch/issues/85923#issuecomment-1272220271 + +Signed-off-by: Masaki Kozuki +--- + test/conftest.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/conftest.py b/test/conftest.py +index e5af19b760a..c9755322d16 100644 +--- a/test/conftest.py ++++ b/test/conftest.py +@@ -18,7 +18,7 @@ xml_key = StashKey["LogXMLReruns"]() + + + def pytest_addoption(parser: Parser) -> None: +- group = parser.getgroup("terminal reporting") ++ group = parser.getgroup("terminal reporting functorch") + group.addoption( + "--junit-xml-reruns", + action="store", diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-test_memory_profiler.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-test_memory_profiler.patch new file mode 100644 index 00000000000..b11903a6de3 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-test_memory_profiler.patch @@ -0,0 +1,19 @@ +The test seems to be too sensitive and may fail due to a small temporary allocation. +Increase the filter size to make it pass. +See https://github.com/pytorch/pytorch/issues/109592 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/profiler/test_memory_profiler.py b/test/profiler/test_memory_profiler.py +index 70b21b6b610..176fe153638 100644 +--- a/test/profiler/test_memory_profiler.py ++++ b/test/profiler/test_memory_profiler.py +@@ -1480,7 +1480,7 @@ class TestMemoryProfilerE2E(TestCase): + + # We generally don't care about tiny allocations during memory + # profiling and they add a lot of noise to the unit test. +- if size >= 256 ++ if size >= 1024 + ] + + self.assertExpectedInline( diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-torch.compile-on-ppc.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-torch.compile-on-ppc.patch new file mode 100644 index 00000000000..0b064c8b4c7 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-torch.compile-on-ppc.patch @@ -0,0 +1,39 @@ +commit 9942a14e96c539cb0195475d2cd660dcdc274123 +Author: Nisanth M P +Date: Fri Jul 14 04:09:14 2023 +0000 + + Fix torch.compile g++ flag error on ppc64le (#104956) + + g++ flag -march is not recognised on ppc64le. So adding a check for platform machine to be ppc64le and using -mcpu flag instead. Other architectures will still use -march flag + + This fixes the torch.compile feature failure on ppc64le + + Pull Request resolved: https://github.com/pytorch/pytorch/pull/104956 + Approved by: https://github.com/jgong5, https://github.com/jansel + +diff --git a/torch/_inductor/codecache.py b/torch/_inductor/codecache.py +--- a/torch/_inductor/codecache.py ++++ b/torch/_inductor/codecache.py +@@ -7,6 +7,7 @@ import json + import logging + import multiprocessing + import os ++import platform + import re + import shutil + import signal +@@ -378,7 +379,14 @@ def optimization_flags(): + # Also, `-march=native` is unrecognized option on M1 + base_flags += " -Xclang -fopenmp" + else: +- base_flags += " -march=native -fopenmp" ++ if platform.machine() == "ppc64le": ++ base_flags += " -mcpu=native" ++ else: ++ base_flags += " -march=native" ++ ++ # Internal cannot find libgomp.so ++ if not config.is_fbcode(): ++ base_flags += " -fopenmp" + return base_flags + diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch new file mode 100644 index 00000000000..5651f8fbbcf --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch @@ -0,0 +1,34 @@ +Casting negative floats to unsigned integers is undefined behavior so results vary between +different invocations and platforms. +This causes failures on e.g. PPC with test_comprehensive_byte in inductor/test_torchinductor_opinfo +See https://github.com/pytorch/pytorch/issues/110077 + +Fix by using `c10::convert` which handles that case. + +Author: Alexander Grund (TU Dresden) + +diff --git a/torch/_inductor/codegen/cpp.py b/torch/_inductor/codegen/cpp.py +index de6a32421c1..d16ae4cd91c 100644 +--- a/torch/_inductor/codegen/cpp.py ++++ b/torch/_inductor/codegen/cpp.py +@@ -577,7 +577,7 @@ class CppOverrides(OpOverrides): + @staticmethod + def to_dtype(x, dtype): + assert dtype in DTYPE_TO_CPP, f"{dtype} missing from {__name__}.DTYPE_TO_CPP" +- return f"static_cast<{DTYPE_TO_CPP[dtype]}>({x})" ++ return f"c10::convert<{DTYPE_TO_CPP[dtype]}>({x})" + + @staticmethod + def abs(x): +diff --git a/torch/_inductor/codegen/cpp_prefix.h b/torch/_inductor/codegen/cpp_prefix.h +index e0dba663144..9e17e481a89 100644 +--- a/torch/_inductor/codegen/cpp_prefix.h ++++ b/torch/_inductor/codegen/cpp_prefix.h +@@ -12,6 +12,7 @@ + #endif + #include + #include ++#include + + typedef at::Half half; + typedef at::BFloat16 bfloat16; diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-vsx-loadu.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-vsx-loadu.patch new file mode 100644 index 00000000000..5d8afb76fe5 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_fix-vsx-loadu.patch @@ -0,0 +1,31 @@ +Fix access to unitialized memory on PPC +See https://github.com/pytorch/pytorch/issues/32502 & https://github.com/pytorch/pytorch/pull/109487 + +Author: Alexander Grund (TU Dresden) + +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_qint8_vsx.h b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_qint8_vsx.h +index 806f6731abb..648ed06afa6 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_qint8_vsx.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_qint8_vsx.h +@@ -91,7 +91,7 @@ struct Vectorized { + vec_vsx_ld(offset0, reinterpret_cast(ptr)), + vec_vsx_ld(offset16, reinterpret_cast(ptr))}; + } +- __at_align__ value_type tmp_values[size()]; ++ __at_align__ value_type tmp_values[size()] = {}; + std::memcpy(tmp_values, ptr, std::min(count, size()) * sizeof(value_type)); + return {vec_vsx_ld(offset0, tmp_values), vec_vsx_ld(offset16, tmp_values)}; + } +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_quint8_vsx.h b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_quint8_vsx.h +index 891c56b53ec..db3698804a7 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_quint8_vsx.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_quint8_vsx.h +@@ -94,7 +94,7 @@ struct Vectorized { + vec_vsx_ld(offset0, reinterpret_cast(ptr)), + vec_vsx_ld(offset16, reinterpret_cast(ptr))}; + } +- __at_align__ value_type tmp_values[size()]; ++ __at_align__ value_type tmp_values[size()] = {}; + std::memcpy(tmp_values, ptr, std::min(count, size()) * sizeof(value_type)); + return {vec_vsx_ld(offset0, tmp_values), vec_vsx_ld(offset16, tmp_values)}; + } diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_no-cuda-stubs-rpath.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_no-cuda-stubs-rpath.patch new file mode 100644 index 00000000000..df699c5517e --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_no-cuda-stubs-rpath.patch @@ -0,0 +1,186 @@ +# PyTorch's CMAKE configuration by default sets RUNPATH on libraries if they link other libraries +# that are outside the build tree, which is done because of the CMAKE config on +# https://github.com/pytorch/pytorch/blob/v1.10.0/cmake/Dependencies.cmake#L10. +# This provides problems, since the cuda stubs library path then also gets added to the RUNPATH. +# As a result, at runtime, the stub version of things like libcuda.so.1 gets picked up, instead of the real drivers +# See https://github.com/easybuilders/easybuild-easyconfigs/issues/14359 +# This line https://github.com/pytorch/pytorch/blob/v1.10.0/cmake/Dependencies.cmake#L16 +# Makes sure that any path that is linked, is also added to the RUNPATH. +# This has been reported upstream in https://github.com/pytorch/pytorch/issues/35418 +# and a fix was attempted in https://github.com/pytorch/pytorch/pull/37737 but it was reverted +# +# This EasyBuild patch changes behavior for the libraries that were failing, i.e. the ones in this list: +# https://github.com/easybuilders/easybuild-easyconfigs/issues/14359#issuecomment-970479904 +# This is done by setting INSTALL_RPATH_USE_LINK_PATH to false, and instead, specifying the RPATH +# explicitely by defining INSTALL_RPATH, but only adding directories that do not match to the "stubs" regex +# +# Original patch: Caspar van Leeuwen +# Updated: Alexander Grund (TU Dresden) +# +# See https://github.com/pytorch/pytorch/pull/87593 + +diff --git a/caffe2/CMakeLists.txt b/caffe2/CMakeLists.txt +index 221e3f32b29..c3f24060f6a 100644 +--- a/caffe2/CMakeLists.txt ++++ b/caffe2/CMakeLists.txt +@@ -627,14 +627,13 @@ endif() + if(USE_CUDA) + list(APPEND Caffe2_GPU_CU_SRCS ${Caffe2_GPU_HIP_JIT_FUSERS_SRCS}) + add_library(caffe2_nvrtc SHARED ${ATen_NVRTC_STUB_SRCS}) ++ include(${Torch_SOURCE_DIR}/cmake/LinkCudaLibraries.cmake) ++ link_cuda_libraries(caffe2_nvrtc ${CUDA_NVRTC} ${CUDA_CUDA_LIB} ${CUDA_NVRTC_LIB}) + if(MSVC) + # Delay load nvcuda.dll so we can import torch compiled with cuda on a CPU-only machine +- set(DELAY_LOAD_FLAGS "-DELAYLOAD:nvcuda.dll;delayimp.lib") +- else() +- set(DELAY_LOAD_FLAGS "") ++ target_link_libraries(caffe2_nvrtc "-DELAYLOAD:nvcuda.dll;delayimp.lib") + endif() + +- target_link_libraries(caffe2_nvrtc ${CUDA_NVRTC} ${CUDA_CUDA_LIB} ${CUDA_NVRTC_LIB} ${DELAY_LOAD_FLAGS}) + target_include_directories(caffe2_nvrtc PRIVATE ${CUDA_INCLUDE_DIRS}) + install(TARGETS caffe2_nvrtc DESTINATION "${TORCH_INSTALL_LIB_DIR}") + if(USE_NCCL) +diff --git a/cmake/LinkCudaLibraries.cmake b/cmake/LinkCudaLibraries.cmake +new file mode 100644 +index 00000000000..005914ccc6f +--- /dev/null ++++ b/cmake/LinkCudaLibraries.cmake +@@ -0,0 +1,33 @@ ++# Link CUDA libraries to the given target, i.e.: `target_link_libraries(target )` ++# ++# Additionally makes sure CUDA stub libs don't end up being in RPath ++# ++# Example: link_cuda_libraries(mytarget PRIVATE ${CUDA_LIBRARIES}) ++function(link_cuda_libraries target) ++ set(libs ${ARGN}) ++ set(install_rpath "$ORIGIN") ++ set(filtered FALSE) ++ foreach(lib IN LISTS libs) ++ # CUDA stub libs are in form /prefix/lib/stubs/libcuda.so ++ # So extract the name of the parent folder, to check against "stubs" ++ # And the parent path which we need to add to the INSTALL_RPATH for non-stubs ++ get_filename_component(parent_path "${lib}" DIRECTORY) ++ get_filename_component(parent_name "${parent_path}" NAME) ++ if(parent_name STREQUAL "stubs") ++ message(STATUS "Filtering ${lib} from being set in ${target}'s RPATH, " ++ "because it appears to point to the CUDA stubs directory.") ++ set(filtered TRUE) ++ elseif(parent_path) ++ list(APPEND install_rpath ${parent_path}) ++ endif() ++ endforeach() ++ ++ # Regular link command ++ target_link_libraries(${target} ${libs}) ++ # Manually set INSTALL_RPATH when there were any stub libs ++ if(filtered) ++ list(REMOVE_DUPLICATES install_rpath) ++ set_target_properties(${target} PROPERTIES INSTALL_RPATH_USE_LINK_PATH FALSE) ++ set_target_properties(${target} PROPERTIES INSTALL_RPATH "${install_rpath}") ++ endif() ++endfunction() +diff --git a/test/cpp/api/CMakeLists.txt b/test/cpp/api/CMakeLists.txt +index 6b801a07318..6ac92870479 100644 +--- a/test/cpp/api/CMakeLists.txt ++++ b/test/cpp/api/CMakeLists.txt +@@ -54,7 +54,8 @@ if(NOT MSVC) + endif() + + if(USE_CUDA) +- target_link_libraries(test_api PRIVATE ++ include(${Torch_SOURCE_DIR}/cmake/LinkCudaLibraries.cmake) ++ link_cuda_libraries(test_api PRIVATE + ${CUDA_LIBRARIES} + ${CUDA_NVRTC_LIB} + ${CUDA_CUDA_LIB} +diff --git a/test/cpp/dist_autograd/CMakeLists.txt b/test/cpp/dist_autograd/CMakeLists.txt +index 9969c63e16d..356ba5be55c 100644 +--- a/test/cpp/dist_autograd/CMakeLists.txt ++++ b/test/cpp/dist_autograd/CMakeLists.txt +@@ -10,7 +10,8 @@ if(USE_DISTRIBUTED AND NOT WIN32) + target_link_libraries(test_dist_autograd PRIVATE torch gtest) + + if(USE_CUDA) +- target_link_libraries(test_dist_autograd PRIVATE ++ include(${Torch_SOURCE_DIR}/cmake/LinkCudaLibraries.cmake) ++ link_cuda_libraries(test_dist_autograd PRIVATE + ${CUDA_LIBRARIES} + ${CUDA_NVRTC_LIB} + ${CUDA_CUDA_LIB} +diff --git a/test/cpp/jit/CMakeLists.txt b/test/cpp/jit/CMakeLists.txt +index 2376f1bc43b..30fbb99fa6d 100644 +--- a/test/cpp/jit/CMakeLists.txt ++++ b/test/cpp/jit/CMakeLists.txt +@@ -139,7 +139,8 @@ if(LINUX) + endif() + + if(USE_CUDA) +- target_link_libraries(test_jit PRIVATE ++ include(${Torch_SOURCE_DIR}/cmake/LinkCudaLibraries.cmake) ++ link_cuda_libraries(test_jit PRIVATE + ${CUDA_LIBRARIES} + ${CUDA_NVRTC_LIB} + ${CUDA_CUDA_LIB} +diff --git a/test/cpp/rpc/CMakeLists.txt b/test/cpp/rpc/CMakeLists.txt +index 3997f8753e5..21fddbc645d 100644 +--- a/test/cpp/rpc/CMakeLists.txt ++++ b/test/cpp/rpc/CMakeLists.txt +@@ -33,7 +33,8 @@ target_include_directories( + target_link_libraries(test_cpp_rpc PRIVATE ${TORCH_RPC_TEST_DEPENDENCY_LIBS}) + + if(USE_CUDA) +- target_link_libraries(test_cpp_rpc PRIVATE ++ include(${Torch_SOURCE_DIR}/cmake/LinkCudaLibraries.cmake) ++ link_cuda_libraries(test_cpp_rpc PRIVATE + ${CUDA_LIBRARIES} + ${CUDA_NVRTC_LIB} + ${CUDA_CUDA_LIB} +diff --git a/test/cpp/tensorexpr/CMakeLists.txt b/test/cpp/tensorexpr/CMakeLists.txt +index 7dff70630d3..ecb83005492 100644 +--- a/test/cpp/tensorexpr/CMakeLists.txt ++++ b/test/cpp/tensorexpr/CMakeLists.txt +@@ -57,14 +57,15 @@ if(USE_PTHREADPOOL) + target_link_libraries(test_tensorexpr PRIVATE pthreadpool_interface) + endif() + if(USE_CUDA) +- target_link_libraries(test_tensorexpr PRIVATE ++ include(${Torch_SOURCE_DIR}/cmake/LinkCudaLibraries.cmake) ++ link_cuda_libraries(test_tensorexpr PRIVATE + ${CUDA_LIBRARIES} + ${CUDA_NVRTC_LIB} + ${CUDA_CUDA_LIB} + ${TORCH_CUDA_LIBRARIES}) + target_compile_definitions(test_tensorexpr PRIVATE USE_CUDA) + +- target_link_libraries(tutorial_tensorexpr PRIVATE ++ link_cuda_libraries(tutorial_tensorexpr PRIVATE + ${CUDA_LIBRARIES} + ${CUDA_NVRTC_LIB} + ${CUDA_CUDA_LIB} +diff --git a/test/test_torch.py b/test/test_torch.py +index c86535e22c0..6859311d806 100644 +--- a/test/test_torch.py ++++ b/test/test_torch.py +@@ -8833,6 +8833,21 @@ def add_neg_dim_tests(): + assert not hasattr(TestTorch, test_name), "Duplicated test name: " + test_name + setattr(TestTorch, test_name, make_neg_dim_test(name, tensor_arg, arg_constr, types, extra_dim)) + ++class TestRPATH(TestCase): ++ @unittest.skipIf(not sys.platform.startswith('linux'), "linux-only test") ++ def test_rpath(self): ++ """ ++ Make sure RPATH (or RUNPATH) in nvrtc does not contain a cuda stubs directory ++ issue gh-35418 ++ """ ++ libdir = os.path.join(os.path.dirname(torch._C.__file__), 'lib') ++ caffe2_nvrtc = os.path.join(libdir, 'libcaffe2_nvrtc.so') ++ if os.path.exists(caffe2_nvrtc): ++ output = subprocess.check_output(['objdump', '-x', caffe2_nvrtc]) ++ for line in output.split(b'\n'): ++ if b'RPATH' in line or b'RUNPATH' in line: ++ self.assertFalse(b'stubs' in line) ++ + # TODO: these empy classes are temporarily instantiated for XLA compatibility + # once XLA updates their test suite it should be removed + class TestViewOps(TestCase): diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_remove-test-requiring-online-access.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_remove-test-requiring-online-access.patch new file mode 100644 index 00000000000..4022d01c852 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_remove-test-requiring-online-access.patch @@ -0,0 +1,30 @@ +This downloads a Perl file from a Github repo which may fail in: + + File "test/test_cuda.py", line 4632, in test_memory_snapshot + torch.cuda.memory._save_segment_usage(f.name) + File "/torch/cuda/memory.py", line 610, in _save_segment_usage + f.write(_segments(snapshot)) + File "/torch/cuda/_memory_viz.py", line 60, in segments + return format_flamegraph(f.getvalue()) + File "/torch/cuda/_memory_viz.py", line 21, in format_flamegraph + urllib.request.urlretrieve( + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/test_cuda.py b/test/test_cuda.py +index 7f2693b52c5..4bff69e5cad 100644 +--- a/test/test_cuda.py ++++ b/test/test_cuda.py +@@ -4993,12 +4993,6 @@ class TestCudaComm(TestCase): + found_it = True + self.assertTrue(found_it) + +- if not IS_WINDOWS: +- with tempfile.NamedTemporaryFile() as f: +- torch.cuda.memory._save_segment_usage(f.name) +- with open(f.name, 'r') as f2: +- self.assertTrue('test_cuda.py' in f2.read()) +- + del x + torch.cuda.empty_cache() + ss = torch.cuda.memory._snapshot() diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-diff-test-on-ppc.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-diff-test-on-ppc.patch new file mode 100644 index 00000000000..41d0da2eb03 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-diff-test-on-ppc.patch @@ -0,0 +1,26 @@ +The workaround for over/underflow isn't implemented for PPC yet. +So skip the test. +See https://github.com/pytorch/pytorch/issues/109870 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/test_binary_ufuncs.py b/test/test_binary_ufuncs.py +index 57fc1b76f18..06c129e007a 100644 +--- a/test/test_binary_ufuncs.py ++++ b/test/test_binary_ufuncs.py +@@ -27,6 +27,7 @@ from torch.testing._internal.common_utils import ( + numpy_to_torch_dtype_dict, + TEST_SCIPY, + set_default_dtype, ++ IS_PPC, + ) + from torch.testing._internal.common_device_type import ( + expectedFailureMeta, +@@ -1091,6 +1092,7 @@ class TestBinaryUfuncs(TestCase): + ) + + @dtypes(*complex_types()) ++ @skipIf(IS_PPC, "Vectorized div fails on PPC: #109870") + def test_complex_div_underflow_overflow(self, device, dtype): + # test to make sure the complex division does not produce underflow or overflow + # in the intermediate of its calculations diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-failing-gradtest.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-failing-gradtest.patch new file mode 100644 index 00000000000..19d427b3049 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-failing-gradtest.patch @@ -0,0 +1,16 @@ +test_fn_grad_linalg_det_singular_cpu_float64 fails not only on macos + +Author: Alexander Grund (TU Dresden) + +diff --git a/torch/testing/_internal/opinfo/definitions/linalg.py b/torch/testing/_internal/opinfo/definitions/linalg.py +index 616c8cf42f4..3a07d19df46 100644 +--- a/torch/testing/_internal/opinfo/definitions/linalg.py ++++ b/torch/testing/_internal/opinfo/definitions/linalg.py +@@ -1135,7 +1135,6 @@ op_db: List[OpInfo] = [ + "test_fn_grad", + device_type="cpu", + dtypes=(torch.float64,), +- active_if=IS_MACOS, + ), + DecorateInfo( + unittest.skip("Gradients are incorrect on macos"), diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch new file mode 100644 index 00000000000..f02e5d3ab0d --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch @@ -0,0 +1,20 @@ +The test fails on some systems with +> RuntimeError: Too many open files. Communication with the workers is no longer possible. +> Please increase the limit using `ulimit -n` in the shell or change the sharing strategy by calling `torch.multiprocessing.set_sharing_strategy('file_system')` at the beginning of your code + +So just skip it. + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/test_dataloader.py b/test/test_dataloader.py +index 39d91876f0b..aff47063344 100644 +--- a/test/test_dataloader.py ++++ b/test/test_dataloader.py +@@ -1542,6 +1542,7 @@ except RuntimeError as e: + def test_shuffle_batch(self): + self._test_shuffle(self._get_data_loader(self.dataset, batch_size=2, shuffle=True)) + ++ @unittest.skip("May cause 'Too many open files' error due to potential `ulimit -n` restrictions") + def test_shuffle_reproducibility(self): + for fn in ( + lambda: DataLoader(self.dataset, shuffle=True, num_workers=0, generator=torch.Generator().manual_seed(42)), diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch new file mode 100644 index 00000000000..8e80dec749f --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch @@ -0,0 +1,34 @@ +Use unittest.skip to skip tests skipped by subprocesses as otherwise skipped tests +marked as expectedFailure may succeed unexpectatly failing the testsuite. +E.g.: +> INFO:torch.testing._internal.common_distributed:Thread 0 skipping test > for following reason: PyTorch is built without MKL support +> INFO:torch.testing._internal.common_distributed:Thread 1 skipping test > for following reason: PyTorch is built without MKL support +> INFO:torch.testing._internal.common_distributed:Skipping > on sandcastle for the following reason: Test skipped at subprocess level, look at subprocess log for skip reason +> u +> ... +> FAILED (unexpected successes=1) + +Author: Alexander Grund (TU Dresden) + +diff --git a/torch/testing/_internal/common_distributed.py b/torch/testing/_internal/common_distributed.py +index 400aa80fdca..afea4a8f89f 100644 +--- a/torch/testing/_internal/common_distributed.py ++++ b/torch/testing/_internal/common_distributed.py +@@ -828,7 +828,7 @@ class MultiProcessTestCase(TestCase): + ) + for skip in TEST_SKIPS.values(): + if first_process.exitcode == skip.exit_code: +- if IS_SANDCASTLE: ++ if False: + # Don't use unittest.skip to skip the test on sandcastle + # since it creates tasks for skipped tests assuming there + # is some follow-up needed. Instead just "pass" the test +@@ -1123,7 +1123,7 @@ class MultiThreadedTestCase(TestCase): + if skip_code > 0: + for skip in TEST_SKIPS.values(): + if skip_code == skip.exit_code: +- if IS_SANDCASTLE: ++ if False: + # "pass" the test with an appropriate message. + logger.info( + f"Skipping {fn} on sandcastle for the following reason: {skip.message}" From 24c85cba46cb7a2c9b89511b3eb0ec11dc69804b Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Thu, 26 Oct 2023 11:13:52 +0200 Subject: [PATCH 029/356] Workaround test_torchinductor_opinfo failure --- .../p/PyTorch/PyTorch-2.0.1-foss-2022b.eb | 3 +++ ...success_in_test_torchinductor_opinfo.patch | 22 +++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_ignore_unexpected_success_in_test_torchinductor_opinfo.patch diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb index 59f471b813e..763167da5cc 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb @@ -32,6 +32,7 @@ patches = [ 'PyTorch-2.0.1_fix-torch.compile-on-ppc.patch', 'PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch', 'PyTorch-2.0.1_fix-vsx-loadu.patch', + 'PyTorch-2.0.1_ignore_unexpected_success_in_test_torchinductor_opinfo.patch', 'PyTorch-2.0.1_no-cuda-stubs-rpath.patch', 'PyTorch-2.0.1_remove-test-requiring-online-access.patch', 'PyTorch-2.0.1_skip-diff-test-on-ppc.patch', @@ -76,6 +77,8 @@ checksums = [ {'PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch': '1b37194f55ae678f3657b8728dfb896c18ffe8babe90987ce468c4fa9274f357'}, {'PyTorch-2.0.1_fix-vsx-loadu.patch': 'a0ffa61da2d47c6acd09aaf6d4791e527d8919a6f4f1aa7ed38454cdcadb1f72'}, + {'PyTorch-2.0.1_ignore_unexpected_success_in_test_torchinductor_opinfo.patch': + '57e2985a5b7085c2786e4b0c4a5f0c81f6b2ae9d5804bbd552b06e8b1570f4c4'}, {'PyTorch-2.0.1_no-cuda-stubs-rpath.patch': '8902e58a762240f24cdbf0182e99ccdfc2a93492869352fcb4ca0ec7e407f83a'}, {'PyTorch-2.0.1_remove-test-requiring-online-access.patch': '721ab0d35ed0ff8a46cb84ced5a98c0fb8ce6143cf6cea80b1360d3d7f64f584'}, diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_ignore_unexpected_success_in_test_torchinductor_opinfo.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_ignore_unexpected_success_in_test_torchinductor_opinfo.patch new file mode 100644 index 00000000000..db8aa200deb --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_ignore_unexpected_success_in_test_torchinductor_opinfo.patch @@ -0,0 +1,22 @@ +Some tests may succeed although they are not expected to. E.g.: +> FAILED inductor/test_torchinductor_opinfo.py::TestInductorOpInfoCPU::test_comprehensive_index_add_cpu_float16 - RuntimeError: unexpected success index_add, torch.float16, cpu +> FAILED inductor/test_torchinductor_opinfo.py::TestInductorOpInfoCPU::test_comprehensive_scatter_add_cpu_float16 - RuntimeError: unexpected success scatter_add, torch.float16, cpu +> FAILED inductor/test_torchinductor_opinfo.py::TestInductorOpInfoCPU::test_comprehensive_scatter_reduce_sum_cpu_float16 - RuntimeError: unexpected success scatter_reduce.sum, torch.float16, cpu + +Disable that unexpected success check. + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/inductor/test_torchinductor_opinfo.py b/test/inductor/test_torchinductor_opinfo.py +index d91a27684ba..1e6d247c8d4 100644 +--- a/test/inductor/test_torchinductor_opinfo.py ++++ b/test/inductor/test_torchinductor_opinfo.py +@@ -66,7 +66,7 @@ _ops = partial( + TestExpect = Enum("TestExpect", ("SUCCESS", "XFAILURE", "SKIP")) + + COLLECT_EXPECT = os.getenv("PYTORCH_COLLECT_EXPECT", "0") == "1" +-FAIL_ON_SUCCESS = os.getenv("PYTORCH_FAIL_ON_SUCCESS", "1") == "1" ++FAIL_ON_SUCCESS = False + ALL_SAMPLES = os.getenv("PYTORCH_ALL_SAMPLES", "0") == "1" + START = os.getenv("PYTORCH_TEST_RANGE_START", None) + END = os.getenv("PYTORCH_TEST_RANGE_END", None) From f3f159a89e7c1b24a92ed302bf22f26163d1a0c6 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Thu, 26 Oct 2023 13:02:57 +0200 Subject: [PATCH 030/356] remove numa configure option from hwloc 2.5+ --- easybuild/easyconfigs/h/hwloc/hwloc-2.5.0-GCCcore-11.2.0.eb | 3 +-- easybuild/easyconfigs/h/hwloc/hwloc-2.7.1-GCCcore-11.3.0.eb | 3 +-- easybuild/easyconfigs/h/hwloc/hwloc-2.8.0-GCCcore-12.2.0.eb | 3 +-- easybuild/easyconfigs/h/hwloc/hwloc-2.9.1-GCCcore-12.3.0.eb | 3 +-- easybuild/easyconfigs/h/hwloc/hwloc-2.9.2-GCCcore-13.2.0.eb | 3 +-- 5 files changed, 5 insertions(+), 10 deletions(-) diff --git a/easybuild/easyconfigs/h/hwloc/hwloc-2.5.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/h/hwloc/hwloc-2.5.0-GCCcore-11.2.0.eb index 8f1e093450f..273bef65c43 100644 --- a/easybuild/easyconfigs/h/hwloc/hwloc-2.5.0-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/h/hwloc/hwloc-2.5.0-GCCcore-11.2.0.eb @@ -35,8 +35,7 @@ dependencies = [ ('libpciaccess', '0.16'), ] -configopts = "--enable-libnuma=$EBROOTNUMACTL " -configopts += "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev " +configopts = "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev " sanity_check_paths = { 'files': ['bin/lstopo', 'include/hwloc/linux.h', diff --git a/easybuild/easyconfigs/h/hwloc/hwloc-2.7.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/h/hwloc/hwloc-2.7.1-GCCcore-11.3.0.eb index 6b7a745c08c..15cba2b35a9 100644 --- a/easybuild/easyconfigs/h/hwloc/hwloc-2.7.1-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/h/hwloc/hwloc-2.7.1-GCCcore-11.3.0.eb @@ -32,8 +32,7 @@ dependencies = [ ('libpciaccess', '0.16'), ] -configopts = "--enable-libnuma=$EBROOTNUMACTL " -configopts += "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev " +configopts = "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev " sanity_check_paths = { 'files': ['bin/lstopo', 'include/hwloc/linux.h', diff --git a/easybuild/easyconfigs/h/hwloc/hwloc-2.8.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/h/hwloc/hwloc-2.8.0-GCCcore-12.2.0.eb index f6483901c2b..e1493dc0953 100644 --- a/easybuild/easyconfigs/h/hwloc/hwloc-2.8.0-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/h/hwloc/hwloc-2.8.0-GCCcore-12.2.0.eb @@ -32,8 +32,7 @@ dependencies = [ ('libpciaccess', '0.17'), ] -configopts = "--enable-libnuma=$EBROOTNUMACTL " -configopts += "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev " +configopts = "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev " sanity_check_paths = { 'files': ['bin/lstopo', 'include/hwloc/linux.h', diff --git a/easybuild/easyconfigs/h/hwloc/hwloc-2.9.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/h/hwloc/hwloc-2.9.1-GCCcore-12.3.0.eb index f3d054d78d2..f454c0bc263 100644 --- a/easybuild/easyconfigs/h/hwloc/hwloc-2.9.1-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/h/hwloc/hwloc-2.9.1-GCCcore-12.3.0.eb @@ -32,8 +32,7 @@ dependencies = [ ('libpciaccess', '0.17'), ] -configopts = "--enable-libnuma=$EBROOTNUMACTL " -configopts += "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev " +configopts = "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev " sanity_check_paths = { 'files': ['bin/lstopo', 'include/hwloc/linux.h', diff --git a/easybuild/easyconfigs/h/hwloc/hwloc-2.9.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/h/hwloc/hwloc-2.9.2-GCCcore-13.2.0.eb index 274d96ba85d..e0816fd2d78 100644 --- a/easybuild/easyconfigs/h/hwloc/hwloc-2.9.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/h/hwloc/hwloc-2.9.2-GCCcore-13.2.0.eb @@ -32,8 +32,7 @@ dependencies = [ ('libpciaccess', '0.17'), ] -configopts = "--enable-libnuma=$EBROOTNUMACTL " -configopts += "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev " +configopts = "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev " sanity_check_paths = { 'files': ['bin/lstopo', 'include/hwloc/linux.h', From c110b159cbbe40bdf1a66c7f590c030c177e3350 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Thu, 26 Oct 2023 14:02:55 +0200 Subject: [PATCH 031/356] Add patch description --- easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb | 2 +- ...Torch-2.0.1_add-missing-vsx-vector-shift-functions.patch | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb index 763167da5cc..6f869d07be5 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb @@ -62,7 +62,7 @@ checksums = [ {'PyTorch-1.13.1_skip-tests-without-fbgemm.patch': '481e595f673baf8ae58b41697a6792b83048b0264aa79b422f48cd8c22948bb7'}, {'PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch': - '245ee7f479f6f809b6ea52460113b2c49bbc2a550201f82bdfa0651c72b02ea8'}, + 'da44961d6c204403ba0c4b88cedccf06a7a3d24f29c4398545f96efae7a45c95'}, {'PyTorch-2.0.1_avoid-test_quantization-failures.patch': '02e3f47e4ed1d7d6077e26f1ae50073dc2b20426269930b505f4aefe5d2f33cd'}, {'PyTorch-2.0.1_disable-test-sharding.patch': 'a1ed7f21c9a269ea039a07a3d6574f885787b30ca5687143c96e096d31066cca'}, diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch index 57e334c908f..0f30c6b98c5 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch @@ -1,3 +1,9 @@ +The `Vectorized` class template specializations for VSX are missing the +left and right shift operators. +Add a backported version of the fixed operators of https://github.com/pytorch/pytorch/pull/109886 + +Author: Alexander Grund (TU Dresden) + diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h index 7c300c8087c..84c84286740 100644 --- a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h From 75eb561c3c2803b925942b81f11e444628f79bcc Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Wed, 1 Nov 2023 17:02:29 +0100 Subject: [PATCH 032/356] Workaround GCC12 destructor bug --- .../p/PyTorch/PyTorch-2.0.1-foss-2022b.eb | 3 + ...round-gcc12-destructor-exception-bug.patch | 118 ++++++++++++++++++ 2 files changed, 121 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_workaround-gcc12-destructor-exception-bug.patch diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb index 6f869d07be5..318e4aacd4f 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb @@ -39,6 +39,7 @@ patches = [ 'PyTorch-2.0.1_skip-failing-gradtest.patch', 'PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch', 'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch', + 'PyTorch-2.0.1_workaround-gcc12-destructor-exception-bug.patch', ] checksums = [ {'pytorch-v2.0.1.tar.gz': '9c564ca440265c69400ef5fdd48bf15e28af5aa4bed84c95efaad960a6699998'}, @@ -88,6 +89,8 @@ checksums = [ '7047862abc1abaff62954da59700f36d4f39fcf83167a638183b1b7f8fec78ae'}, {'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch': '166c134573a95230e39b9ea09ece3ad8072f39d370c9a88fb2a1e24f6aaac2b5'}, + {'PyTorch-2.0.1_workaround-gcc12-destructor-exception-bug.patch': + '198f2244b7415958f96a2c248bab33491a95454091889824d98b0d4a55f114f3'}, ] osdependencies = [OS_PKG_IBVERBS_DEV] diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_workaround-gcc12-destructor-exception-bug.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_workaround-gcc12-destructor-exception-bug.patch new file mode 100644 index 00000000000..cff643d4138 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_workaround-gcc12-destructor-exception-bug.patch @@ -0,0 +1,118 @@ +GCC 12 introduced a regression that may cause it to call the destructor twice on an object. +See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112301 +This is visible in e.g. `test_cpp_extensions_jit.py -k test_warning` +See also https://github.com/pytorch/pytorch/issues/112383 + +Workaround this by trying to avoid the throwing PyWarningHandler destructor. +Author: Alexander Grund (TU Dresden) + +diff --git a/torch/csrc/Exceptions.cpp b/torch/csrc/Exceptions.cpp +index 788f6782730..31d358528e3 100644 +--- a/torch/csrc/Exceptions.cpp ++++ b/torch/csrc/Exceptions.cpp +@@ -246,6 +246,10 @@ PyObject* map_warning_to_python_type(const c10::Warning& warning) { + /// NOLINTNEXTLINE(bugprone-exception-escape) + PyWarningHandler::~PyWarningHandler() noexcept(false) { + c10::WarningUtils::set_warning_handler(prev_handler_); ++ process_warnings(); ++} ++ ++void PyWarningHandler::process_warnings() { + auto& warning_buffer = internal_handler_.warning_buffer_; + + if (!warning_buffer.empty()) { +diff --git a/torch/csrc/Exceptions.h b/torch/csrc/Exceptions.h +index 7c448ddc67f..9779b21bcb7 100644 +--- a/torch/csrc/Exceptions.h ++++ b/torch/csrc/Exceptions.h +@@ -117,6 +117,13 @@ static inline void PyErr_SetString(PyObject* type, const std::string& message) { + retstmnt; \ + } + ++/** To be called inside a HANDLE_TH_ERRORS..END_HANDLE_TH_ERRORS_* block ++ * before returning a value / where no further warnings can occur. ++ * Avoids throwing an error in the destructor which triggers a bug in GCC 12+ ++ * See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112301 ++ */ ++#define FLUSH_TH_ERRORS __enforce_warning_buffer.process_warnings(); ++ + #define END_HANDLE_TH_ERRORS_PYBIND \ + } \ + catch (...) { \ +@@ -372,6 +379,9 @@ struct PyWarningHandler { + in_exception_ = true; + } + ++ // Trigger processing of warnings ++ TORCH_API void process_warnings(); ++ + private: + InternalHandler internal_handler_; + at::WarningHandler* prev_handler_; +@@ -379,26 +389,40 @@ struct PyWarningHandler { + }; + + namespace detail { ++ ++template ++struct conditional_gil_scoped_release: pybind11::gil_scoped_release{}; ++ ++template<> ++struct conditional_gil_scoped_release{ ++ conditional_gil_scoped_release() { ++ // suppress `unused variable` error messages at call sites ++ (void) (this != (this + 1)); ++ } ++}; ++ + template + using Arg = typename invoke_traits::template arg::type; + +-template ++template + auto wrap_pybind_function_impl_( + Func&& f, + std::index_sequence, +- bool release_gil) { ++ std::bool_constant) { + using result_type = typename invoke_traits::result_type; + namespace py = pybind11; + + // f=f is needed to handle function references on older compilers +- return [f = std::forward(f), +- release_gil](Arg... args) -> result_type { ++ return [f = std::forward(f)](Arg... args) -> result_type { + HANDLE_TH_ERRORS +- if (release_gil) { +- py::gil_scoped_release no_gil; +- return c10::guts::invoke(f, std::forward>(args)...); ++ conditional_gil_scoped_release no_gil; ++ if constexpr (std::is_void_v) { ++ c10::guts::invoke(f, std::forward>(args)...); ++ FLUSH_TH_ERRORS + } else { +- return c10::guts::invoke(f, std::forward>(args)...); ++ auto res = c10::guts::invoke(f, std::forward>(args)...); ++ FLUSH_TH_ERRORS ++ return res; + } + END_HANDLE_TH_ERRORS_PYBIND + }; +@@ -411,7 +435,7 @@ template + auto wrap_pybind_function(Func&& f) { + using traits = invoke_traits; + return torch::detail::wrap_pybind_function_impl_( +- std::forward(f), std::make_index_sequence{}, false); ++ std::forward(f), std::make_index_sequence{}, std::false_type{}); + } + + // Wrap a function with TH error, warning handling and releases the GIL. +@@ -420,7 +444,7 @@ template + auto wrap_pybind_function_no_gil(Func&& f) { + using traits = invoke_traits; + return torch::detail::wrap_pybind_function_impl_( +- std::forward(f), std::make_index_sequence{}, true); ++ std::forward(f), std::make_index_sequence{}, std::true_type{}); + } + + } // namespace torch From 0c6ee78e6ab121aeb6cb666b861008c49129bcc8 Mon Sep 17 00:00:00 2001 From: Joachim Hein Date: Tue, 7 Nov 2023 11:31:51 +0100 Subject: [PATCH 033/356] Easyconfig added for DeepLabCut in foss/2022a --- ...DeepLabCut-2.3.6-foss-2022a-CUDA-11.7.0.eb | 74 +++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 easybuild/easyconfigs/d/DeepLabCut/DeepLabCut-2.3.6-foss-2022a-CUDA-11.7.0.eb diff --git a/easybuild/easyconfigs/d/DeepLabCut/DeepLabCut-2.3.6-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/d/DeepLabCut/DeepLabCut-2.3.6-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..abd16842cec --- /dev/null +++ b/easybuild/easyconfigs/d/DeepLabCut/DeepLabCut-2.3.6-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,74 @@ +# Loosely based on PR #7680 +# J. Sassmannshausen (Imperial College London/UK) +# upgrade to version 2.3.6: J Hein, (LUNARC, Lund University, Sweden) + +easyblock = 'PythonBundle' + +name = 'DeepLabCut' +version = '2.3.6' +versionsuffix = '-CUDA-%(cudaver)s' +local_version = '%(versionsuffix)s-contrib' + +homepage = 'http://www.mousemotorlab.org/deeplabcut' +description = "Markerless tracking of user-defined features with deep learning" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'pic': True} + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('TensorFlow', '2.9.1', versionsuffix), + ('PyTorch', '1.12.0', versionsuffix), + ('scikit-image', '0.19.3'), + ('matplotlib', '3.5.2'), + ('numba', '0.56.4'), + ('scikit-learn', '1.1.2'), + ('FFmpeg', '4.4.2'), + ('PyZMQ', '24.0.1'), + ('tqdm', '4.64.0'), + ('imageio', '2.22.2'), + ('statsmodels', '0.13.1'), + ('PyTables', '3.8.0'), + ('ruamel.yaml', '0.17.21'), + ('imgaug', '0.4.0', versionsuffix), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('dlclibrary', '0.0.4', { + 'checksums': ['2b4ca078dc9cddb2a1f30d42cbc9d5c0e849e0f93f2b6781ca478baed0a829b8'], + }), + ('filterpy', '1.4.5', { + 'sources': ['%(name)s-%(version)s.zip'], + 'checksums': ['4f2a4d39e4ea601b9ab42b2db08b5918a9538c168cff1c6895ae26646f3d73b1'], + }), + ('huggingface-hub', '0.17.3', { + 'sources': ['huggingface_hub-%(version)s.tar.gz'], + 'checksums': ['40439632b211311f788964602bf8b0d9d6b7a2314fba4e8d67b2ce3ecea0e3fd'], + }), + ('imageio-ffmpeg', '0.4.9', { + 'checksums': ['39bcd1660118ef360fa4047456501071364661aa9d9021d3d26c58f1ee2081f5'], + }), + ('msgpack-numpy', '0.4.8', { + 'sources': ['msgpack-numpy-0.4.8.tar.gz'], + 'checksums': ['c667d3180513422f9c7545be5eec5d296dcbb357e06f72ed39cc683797556e69'], + }), + ('tensorpack', '0.11', { + 'checksums': ['022b610e416e62e3575424cd08e60af27808a5fb6914294615391caf582cbd4f'], + }), + ('tf_slim', '1.1.0', { + 'source_urls': ['https://github.com/google-research/tf-slim/archive'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['964cde4b7728a408dcd5c841ab6b93d95137ab4b60db28b10400f86286bfeb8b'], + }), + (name, version, { + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'checksums': ['c4479f05b3c917a6198c1abbb6ea0ac580ce4b02fe1d068e0215b1984aa8e385'], + }), +] + + +moduleclass = 'lib' From 5fa0641a00b326468a1546d990a067f37797d8ba Mon Sep 17 00:00:00 2001 From: Sebastian Achilles Date: Tue, 7 Nov 2023 17:12:30 +0100 Subject: [PATCH 034/356] adding easyconfigs: R-bundle-CRAN-2023.11-foss-2023a.eb and patches: HWxtest-1.1.9_add-fcommon.patch, liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch --- .../HWxtest-1.1.9_add-fcommon.patch | 21 + .../R-bundle-CRAN-2023.11-foss-2023a.eb | 3399 +++++++++++++++++ ...dSVM-1.2.4-fix_ppc_and_aarch64_build.patch | 49 + 3 files changed, 3469 insertions(+) create mode 100644 easybuild/easyconfigs/r/R-bundle-CRAN/HWxtest-1.1.9_add-fcommon.patch create mode 100644 easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb create mode 100644 easybuild/easyconfigs/r/R-bundle-CRAN/liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/HWxtest-1.1.9_add-fcommon.patch b/easybuild/easyconfigs/r/R-bundle-CRAN/HWxtest-1.1.9_add-fcommon.patch new file mode 100644 index 00000000000..a4e41eea63e --- /dev/null +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/HWxtest-1.1.9_add-fcommon.patch @@ -0,0 +1,21 @@ +fix "multiple definition" errors by adding -fcommon compiler options, +see https://www.gnu.org/software/gcc/gcc-10/porting_to.html + +author: Kenneth Hoste (HPC-UGent) + +diff -ruN HWxtest.orig/MD5 HWxtest/MD5 +--- HWxtest.orig/MD5 2020-11-08 21:15:03.612622261 +0100 ++++ HWxtest/MD5 2020-11-08 21:13:24.278691443 +0100 +@@ -40,6 +40,7 @@ + 4657a2011dc5363ed1cfd1d29a7040d5 *src/HWmtest.c + 08ec52ea231752fbb2bb11a529107806 *src/HWxcount.c + 23598383650c211dd18d54bded68b9bd *src/HWxtest.c ++8b6d9aec8b8cef60d1b245e0f290bfed *src/Makevars + 886a6d855fb0b59e565b919a1ff69eb0 *vignettes/HWxtest.Rmd + fcf857c5f98963f740c5c2f95e33ccc9 *vignettes/HWxtest.md + b93f768037a75ec9edd60ca89fd4c1db *vignettes/bibHW.txt +diff -ruN HWxtest.orig/src/Makevars HWxtest/src/Makevars +--- HWxtest.orig/src/Makevars 1970-01-01 01:00:00.000000000 +0100 ++++ HWxtest/src/Makevars 2020-11-08 21:15:51.340615023 +0100 +@@ -0,0 +1 @@ ++PKG_CFLAGS = -fcommon diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb new file mode 100644 index 00000000000..8421d82323d --- /dev/null +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb @@ -0,0 +1,3399 @@ +easyblock = 'Bundle' + +name = 'R-bundle-CRAN' +version = '2023.11' + +homepage = 'https://www.r-project.org/' +description = "Bundle of R packages from CRAN" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('pkgconf', '1.9.5'), + ('Xvfb', '21.1.8'), + ('Autotools', '20220317'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('R', '4.3.2'), + ('X11', '20230603'), + ('Mesa', '23.1.4'), + ('libGLU', '9.0.3'), + ('cairo', '1.17.8'), + ('libreadline', '8.2'), + ('ncurses', '6.4'), + ('bzip2', '1.0.8'), + ('XZ', '5.4.2'), + ('zlib', '1.2.13'), + ('SQLite', '3.42.0'), + ('PCRE2', '10.42'), + ('libpng', '1.6.39'), # for plotting in R + ('libjpeg-turbo', '2.1.5.1'), # for plottting in R + ('LibTIFF', '4.5.0'), + ('Java', '11', '', SYSTEM), + ('Tk', '8.6.13'), # for tcltk + ('cURL', '8.0.1'), # for RCurl + ('libxml2', '2.11.4'), # for XML + ('GMP', '6.2.1'), # for igraph + ('NLopt', '2.7.1'), # for nlopt + ('FFTW', '3.3.10'), # for fftw + ('libsndfile', '1.2.2'), # for seewave + ('ICU', '73.2'), # for rJava & gdsfmt + ('HDF5', '1.14.0'), # for hdf5r + ('UDUNITS', '2.2.28'), # for units + ('GSL', '2.7'), # for RcppGSL + ('ImageMagick', '7.1.1-15'), + ('GLPK', '5.0'), # for Rglpk + ('nodejs', '18.17.1'), # for V8 (required by rstan) + ('GDAL', '3.7.1'), # for sf + ('MPFR', '4.2.0'), # for Rmpfr + ('PostgreSQL', '16.0'), # for RPostgreSQL + ('libgit2', '1.7.1'), + ('OpenSSL', '1.1', '', SYSTEM), +] + +# Some R extensions (mclust, quantreg, waveslim for example) require the math library (-lm) to avoid undefined symbols. +# Adding it to FLIBS makes sure it is present when needed. +preconfigopts = 'export FLIBS="$FLIBS -lm" && ' + +configopts = "--with-pic --enable-threads --enable-R-shlib" +# some recommended packages may fail in a parallel build (e.g. Matrix), and +# we're installing them anyway below +configopts += " --with-recommended-packages=no" + +# specify that at least EasyBuild v3.5.0 is required, +# since we rely on the updated easyblock for R to configure correctly w.r.t. BLAS/LAPACK +easybuild_version = '3.5.0' + +exts_defaultclass = 'RPackage' + +exts_default_options = { + 'source_urls': [ + 'https://cran.r-project.org/src/contrib/Archive/%(name)s', # package archive + 'https://cran.r-project.org/src/contrib/', # current version of packages + 'https://cran.freestatistics.org/src/contrib', # mirror alternative for current packages + ], + 'source_tmpl': '%(name)s_%(version)s.tar.gz', +} + +# !! order of packages is important !! +# packages updated on 5th November 2023 +exts_list = [ + ('abind', '1.4-5', { + 'checksums': ['3a3ace5afbcb86e56889efcebf3bf5c3bb042a282ba7cc4412d450bb246a3f2c'], + }), + ('magic', '1.6-1', { + 'checksums': ['ca79ec7ae92b736cb128556c081abf547f49956c326e053a76579889cbcb7976'], + }), + ('RcppProgress', '0.4.2', { + 'checksums': ['b1624b21b7aeb1dafb30f092b2a4bef4c3504efd2d6b00b2cdf55dc9df194b48'], + }), + ('lpSolve', '5.6.19', { + 'checksums': ['49d5b49e64c6eba2bc4cea80eb615df21a2d0188b1bbffa05052dc978c94581b'], + }), + ('linprog', '0.9-4', { + 'checksums': ['81a6aa2fdc075f12dc912794d0554f87705a8b872b99c89a90a69ee9ada864b4'], + }), + ('geometry', '0.4.7', { + 'checksums': ['96204205f51b4d63c2e7a7b00365def27d131f3c9ec66db56b510046e5d2013b'], + }), + ('bit', '4.0.5', { + 'checksums': ['f0f2536a8874b6a30b80baefbc68cb21f0ffbf51f3877bda8038c3f9f354bfbc'], + }), + ('filehash', '2.4-5', { + 'checksums': ['3b1ee2794dd61e525ee44db16611c65957691d77bb26ae481eba988bb55da22c'], + }), + ('ff', '4.0.9', { + 'checksums': ['722053271987a0c9673c3ff9e7968bbab47979d529a2fe6bb1a3179408ee3c4f'], + }), + ('bnlearn', '4.9', { + 'checksums': ['5159ab0e4b4785ce830726284bdd52d8e1e444a34109b657d022c07b14449227'], + }), + ('bootstrap', '2019.6', { + 'checksums': ['5252fdfeb944cf1fae35016d35f9333b1bd1fc8c6d4a14e33901160e21968694'], + }), + ('combinat', '0.0-8', { + 'checksums': ['1513cf6b6ed74865bfdd9f8ca58feae12b62f38965d1a32c6130bef810ca30c1'], + }), + ('deal', '1.2-42', { + 'checksums': ['a17f452a94fc3964c939c5b147ad6d4f326a0990493519d376d6700cf733a134'], + }), + ('fdrtool', '1.2.17', { + 'checksums': ['3452601adbead9be4820794e3af2666f710fdf9b801186df565b80b43629c5dd'], + }), + ('formatR', '1.14', { + 'checksums': ['4ebaab2c3f8527871655246b62abd060bc75dae1cec7f962ca4752b8080f474c'], + }), + ('gtools', '3.9.4', { + 'checksums': ['59cf8b194fe98b1cc05dbb4d686810a1068f59d8b402b731548a898ece85f111'], + }), + ('gdata', '3.0.0', { + 'checksums': ['a456b9921765a705fe8e51780dfbbc6ca005abc948b2f80effeccd468601b17f'], + }), + ('GSA', '1.03.2', { + 'checksums': ['177d6059fc645d3d8883806d2dea1c5dfc68efdada9aadde8a96b6d57acf35b8'], + }), + ('infotheo', '1.2.0.1', { + 'checksums': ['c0fb8ec97ad3a49f231c4c993b5eee70c6a61c8c30dc4a46197867e4763a29d4'], + }), + ('lars', '1.3', { + 'checksums': ['c69e6a8da6a3344c0915dd1fd4c78fec5cdf50c62cf6297476e9bb7dc10b549d'], + }), + ('lazy', '1.2-18', { + 'checksums': ['99441bcae2dfbf450eee91f3ec969d416c225f671ac54459c50536916890f00a'], + }), + ('kernlab', '0.9-32', { + 'checksums': ['654ef34e343deb4d2c4c139a44e5397d6e38876088ce1c53c7deb087935d6fdc'], + }), + ('markdown', '1.11', { + 'checksums': ['47fc61755a952ce9716c12de2daf7940fcf306747bd47ad31dd364bbccca5f14'], + }), + ('mlbench', '2.1-3.1', { + 'checksums': ['7afec6d58968ab526ea642e1df39bead2f479c14486b0a62032c999ba73d5cf0'], + }), + ('NLP', '0.2-1', { + 'checksums': ['05eaa453ad2757311c073fd30093c738b20a977c5089031eb454345a1d01f2b6'], + }), + ('mclust', '6.0.0', { + 'checksums': ['de7c306ecba1ef0f4e4a56c748ce08149417496b711beefb032d561a4c28122a'], + }), + ('RANN', '2.6.1', { + 'checksums': ['b299c3dfb7be17aa41e66eff5674fddd2992fb6dd3b10bc59ffbf0c401697182'], + }), + ('rmeta', '3.0', { + 'checksums': ['b9f9d405935cffcd7a5697ff13b033f9725de45f4dc7b059fd68a7536eb76b6e'], + }), + ('MASS', '7.3-60', { + 'checksums': ['b802410feab01464d112b27b3501176eb8e68511d4ba9d052ac4db1f2a72f0c2'], + }), + ('lattice', '0.22-5', { + 'checksums': ['ba1fbe5e18a133507dca9851b7f933002bdb6d1f3ea5f410a0a441103b6da5f1'], + }), + ('nlme', '3.1-163', { + 'checksums': ['7d46ff4c4fb7fda8df6129b28cd2aa7d32e814eac87dae8ea9fa7560593c128a'], + }), + ('segmented', '1.6-4', { + 'checksums': ['472c08ae3eb1c4e784aba45f3e745b0e946bef77c26fbb9f103fd35e1a349191'], + }), + ('som', '0.3-5.1', { + 'checksums': ['a6f4c0e5b36656b7a8ea144b057e3d7642a8b71972da387a7133f3dd65507fb9'], + }), + ('SuppDists', '1.1-9.7', { + 'checksums': ['6b5527e2635c0ff762eb7af8154704c85e66d7f79a9524089a5c98dfa94dab08'], + }), + ('stabledist', '0.7-1', { + 'checksums': ['06c5704d3a3c179fa389675c537c39a006867bc6e4f23dd7e406476ed2c88a69'], + }), + ('survivalROC', '1.0.3.1', { + 'checksums': ['8174afebaf239dfda979c8c7e1e219624576d577c983ae787fbd2785b4ccd15c'], + }), + ('pspline', '1.0-19', { + 'checksums': ['ba55bf193f1df9785a0e13b7ef727d5fd2415b318cd6a26b48a2db490c4dfe40'], + }), + ('timeDate', '4022.108', { + 'checksums': ['a5949b4fe2f6bdff751fc0793df8e3150cc25c078d48a28c066c10a6c4bfceef'], + }), + ('longmemo', '1.1-2', { + 'checksums': ['7964e982287427dd58f98e1144e468ae0cbd572d25a4bea6ca9ae9c7522f3207'], + }), + ('ADGofTest', '0.3', { + 'checksums': ['9cd9313954f6ecd82480d373f6c5371ca84ab33e3f5c39d972d35cfcf1096846'], + }), + ('pixmap', '0.4-12', { + 'checksums': ['893ba894d4348ba05e6edf9c1b4fd201191816b444a214f7a6b2c0a79b0a2aec'], + }), + ('sp', '2.1-1', { + 'checksums': ['2d34cde2a8d5c7876425f99d9d3b24ae192430d316bd2a397a62b52412b1405b'], + }), + ('hms', '1.1.3', { + 'checksums': ['e626f4c60af46efd53ea631b316a103e089470d8fd63c0e0c0efb99364990282'], + }), + ('progress', '1.2.2', { + 'checksums': ['b4a4d8ed55db99394b036a29a0fb20b5dd2a91c211a1d651c52a1023cc58ff35'], + }), + ('RcppArmadillo', '0.12.6.6.0', { + 'checksums': ['d35eb191c5a14e5a95498f43dff3984763ac3fecaf4016c12926f6031e753e9c'], + }), + ('ade4', '1.7-22', { + 'checksums': ['007df54e83a2a6cb8d6da8006f0aace011e7eaa7744dc5f8230ac2c002b393b4'], + }), + ('AlgDesign', '1.2.1', { + 'checksums': ['5989626c526bd7c3d9bdda326c962056879be03392065a0b7ddb9b8cf9309d05'], + }), + ('BH', '1.81.0-1', { + 'checksums': ['f51c8badd6f181e06353314e1d15a6ec1495cc498ee74b6fa4ea8aba6e97ff64'], + }), + ('Matrix', '1.6-1.1', { + 'checksums': ['331eb1f1fe9441d4224d8551072443596001b50e8c15618f59cb938b46ee8cc2'], + }), + ('Brobdingnag', '1.2-9', { + 'checksums': ['f9012d250bc2a0f47815d6a7c06df2d4ddf3d8bab2d3b75e8cdefd964d20e91e'], + }), + ('corpcor', '1.6.10', { + 'checksums': ['71a04c503c93ec95ddde09abe8c7ddeb36175b7da76365a14b27066383e10e09'], + }), + ('longitudinal', '1.1.13', { + 'checksums': ['57f04a0f387c1cc30d2feb945dc3ed35d2a304d94d21d3bc2cac8c92571fdc10'], + }), + ('backports', '1.4.1', { + 'checksums': ['845c3c59fbb05e5a892c4231b955a0afdd331d82b7cc815bcff0672023242474'], + }), + ('checkmate', '2.3.0', { + 'checksums': ['88721b851e489da0acf88a9d598c847eca22255d7afb86fcaa06f378768b81d4'], + }), + ('cubature', '2.1.0', { + 'checksums': ['5d82785609611200d5bea069b93b0bf75bafec808f7eeef7b052eb516f273665'], + }), + ('DEoptimR', '1.1-3', { + 'checksums': ['8dd8a61b07b02022493d7021dc62ef2c4dc2d596cff897846713c5f8dd784694'], + }), + ('fastmatch', '1.1-4', { + 'checksums': ['9a914cac9c1ea2984bd44eebe421e1636504907a8064ae26347fe3ec2b9bd56b'], + }), + ('iterators', '1.0.14', { + 'checksums': ['cef3075a0930e1408c764e4da56bbadd4f7d14315809df8f38dd51f80ccc677b'], + }), + ('maps', '3.4.1.1', { + 'checksums': ['d39d467537c336d20c4b501d36a421dd3e8309c9d1bdcf9b4a7abe994242851a'], + }), + ('nnls', '1.5', { + 'checksums': ['cd70feb286f86f6dead75da693a8f67c9bd3b91eb738e6e6ac659e3b8c7a3452'], + }), + ('sendmailR', '1.4-0', { + 'checksums': ['5b8b91fc13f6b07b9fc5a2cf7591cf760fad47c5ea17d87a2891898c506454ad'], + }), + ('dotCall64', '1.1-0', { + 'checksums': ['3484e32d5b2ff6e1b74963cc81e8dcb5c3dab0e1b1a5905898606cb6851370c5'], + }), + ('spam', '2.10-0', { + 'checksums': ['719c86a23801ecf051ffd8291912ee3567af4010e74af470fbf09e274728ac79'], + }), + ('subplex', '1.8', { + 'checksums': ['3bc31d8990380c9f790c9c7d84cb2e39f4945eff934eddfa1196d597465be5a5'], + }), + ('logspline', '2.1.21', { + 'checksums': ['8e3a3cf11f3261f010092aa657d938a69b604818afc123151c7d3e24e0980b77'], + }), + ('ncbit', '2013.03.29.1', { + 'checksums': ['847f570c035d849e775c1cb922d2775e6c535971eb4429cf62904319fd126504'], + }), + ('permute', '0.9-7', { + 'checksums': ['eff88ffb579aaeb994e9f8609b776b2d9d9d56bc2879ddf180e3a2ad19f48dc0'], + }), + ('plotrix', '3.8-3', { + 'checksums': ['b961d3b59ba0850e4c198b57fcceb1735c1c10d5ddcda0ecd6c2c731f114bc05'], + }), + ('randomForest', '4.7-1.1', { + 'checksums': ['f59ea87534480edbcd6baf53d7ec57e8c69f4532c2d2528eacfd48924efa2cd6'], + }), + ('scatterplot3d', '0.3-44', { + 'checksums': ['1c9c08348c3ed925f59df40cb73accc9e1a169ccfb1e8571f105f40fa98e6ec2'], + }), + ('SparseM', '1.81', { + 'checksums': ['bd838f381ace680fa38508ff70b3d83cb9ffa28ac1ab568509249bca53c34b33'], + }), + ('tripack', '1.3-9.1', { + 'checksums': ['7f82f8d63741c468767acc6fb35281bd9903f6c3c52e8fada60a6ae317511fbe'], + }), + ('irace', '3.5', { + 'checksums': ['d9928644a5a7e94838558d73afaaee8a914fd26fe68f691ad103331632060bf4'], + }), + ('rJava', '1.0-6', { + 'checksums': ['e290d0493317a5d6c452793e92baa914e37ef03faef19b2e436329b4ec8658c6'], + }), + ('RColorBrewer', '1.1-3', { + 'checksums': ['4f42f5423c45688b39f492c7892d93f37b4541831c8ffb140364d2bd89031ac0'], + }), + ('png', '0.1-8', { + 'checksums': ['5a36fabb6d62ba2533d3fc4cececd07891942cfb76fe689ec0d550d08762f61c'], + }), + ('jpeg', '0.1-10', { + 'checksums': ['c8d9f609c3088f91ec4853d6cc0e66511038a465811dea79ca6a0c09519178ca'], + }), + ('deldir', '1.0-9', { + 'checksums': ['127a24ec3aa7e41e441d5b2f5654f3b59fbe47bf61ba8038d81a6110c8670687'], + }), + ('RcppEigen', '0.3.3.9.4', { + 'checksums': ['41eabb8d034ffae0fcfcf23ca92b8f0fba5aec8f1ba108d922e19db7e10d5fb9'], + }), + ('interp', '1.1-4', { + 'checksums': ['4f7b5d388132a4d76e8635e2a7c4fa0d705df2b49e7d108faa16ce2236e34d06'], + }), + ('latticeExtra', '0.6-30', { + 'checksums': ['c550a76913624818482bf237d48883c58e368ba356ced8ed5e76146672279eed'], + }), + ('plyr', '1.8.9', { + 'checksums': ['15b5e7f711d53bf41b8687923983b8ef424563aa2f74c5195feb5b1df1aee103'], + }), + ('gtable', '0.3.4', { + 'checksums': ['7032039371a4ec1bde9d3e4b7dae450dcc9aab50bb0e6287ab26a1b0199c7977'], + }), + ('reshape2', '1.4.4', { + 'checksums': ['d88dcf9e2530fa9695fc57d0c78adfc5e361305fe8919fe09410b17da5ca12d8'], + }), + ('dichromat', '2.0-0.1', { + 'checksums': ['a10578e9ad8a581bd8fe0d8a8370051f3cdcf12c7d282f3af2a18dacda566081'], + }), + ('colorspace', '2.1-0', { + 'checksums': ['04078abb6b54119c90dc7085d62916bf292ccb163e213f9ea70567d1be82614c'], + }), + ('munsell', '0.5.0', { + 'checksums': ['d0f3a9fb30e2b5d411fa61db56d4be5733a2621c0edf017d090bdfa5e377e199'], + }), + ('labeling', '0.4.3', { + 'checksums': ['c62f4fc2cc74377d7055903c5f1913b7295f7587456fe468592738a483e264f2'], + }), + ('viridisLite', '0.4.2', { + 'checksums': ['893f111d31deccd2cc959bc9db7ba2ce9020a2dd1b9c1c009587e449c4cce1a1'], + }), + ('farver', '2.1.1', { + 'checksums': ['0dcfda6ca743f465372790bcff1bcbc6a7145fdac1c682b021f654e8c6c996ce'], + }), + ('scales', '1.2.1', { + 'checksums': ['59453e6dbdafee93dfb101e4d86048a62a12898134259d3ef02d65aeec57ed08'], + }), + ('zeallot', '0.1.0', { + 'checksums': ['439f1213c97c8ddef9a1e1499bdf81c2940859f78b76bc86ba476cebd88ba1e9'], + }), + ('assertthat', '0.2.1', { + 'checksums': ['85cf7fcc4753a8c86da9a6f454e46c2a58ffc70c4f47cac4d3e3bcefda2a9e9f'], + }), + ('lazyeval', '0.2.2', { + 'checksums': ['d6904112a21056222cfcd5eb8175a78aa063afe648a562d9c42c6b960a8820d4'], + }), + ('mgcv', '1.9-0', { + 'checksums': ['b2b10078c1f8b2ce3cadcca405496eedacc8d4632ee4357e17632cae1b043b70'], + }), + ('isoband', '0.2.7', { + 'checksums': ['7693223343b45b86de2b5b638ff148f0dafa6d7b1237e822c5272902f79cdf61'], + }), + ('ggplot2', '3.4.4', { + 'checksums': ['2d76ec065d3e604d019506f45b3b713ae20f38e47dbebfb5ba1648b47fe63e46'], + }), + ('pROC', '1.18.5', { + 'checksums': ['5593c841a6df5a2f2d209d0c14401971eb9427092ed9c3ac2059273807b42c89'], + }), + ('quadprog', '1.5-8', { + 'checksums': ['22128dd6b08d3516c44ff89276719ad4fe46b36b23fdd585274fa3a93e7a49cd'], + }), + ('BB', '2019.10-1', { + 'checksums': ['04d0b6ce6e5f070b109478a6005653dbe78613bb4e3ea4903203d851b5d3c94d'], + }), + ('data.table', '1.14.8', { + 'checksums': ['14b2ce5367df9c9bb58f373555066f5dcb629c156149b5565de36d69557139fd'], + }), + ('BBmisc', '1.13', { + 'checksums': ['1145dcf9fed15e7beeaa4a5c7075d8a8badd17c8246838cd63e40cd9551e4405'], + }), + ('fail', '1.3', { + 'checksums': ['ede8aa2a9f2371aff5874cd030ac625adb35c33954835b54ab4abf7aeb34d56d'], + }), + ('rlecuyer', '0.3-7', { + 'checksums': ['65ac447e809fa3f427fec58de7f615b5ccd6f1493fd03758fe7ceca5b911bf3c'], + }), + ('snow', '0.4-4', { + 'checksums': ['84587f46f222a96f3e2fde10ad6ec6ddbd878f4e917cd926d632f61a87db13c9'], + }), + ('tree', '1.0-43', { + 'checksums': ['9b0a996d013cce4f457abdbdc54bd2f8f4dbe4ef0b33e0a53925509c509d5287'], + }), + ('pls', '2.8-2', { + 'checksums': ['24424c3961cd52e6c72e3e46c4f2718da8b8b50ee2837110b8d508e8f721f2b8'], + }), + ('class', '7.3-22', { + 'checksums': ['b6994164e93843fcc7e08dfdc8c8b4af6a5a10ef7153d2e72a6855342508d15c'], + }), + ('proxy', '0.4-27', { + 'checksums': ['249991a4c4d70ad139e93f3a24e17f161ad1ec854951813ea192daf79478563f'], + }), + ('e1071', '1.7-13', { + 'checksums': ['da94e191af6e69aa0f9e3250d4b823674cc869339d914f761ebf2824177b6b2f'], + }), + ('nnet', '7.3-19', { + 'checksums': ['a9241f469270d3b03bbab7dc0d3c6a06a84010af16ba82fd3bd6660b35382ce7'], + }), + ('minqa', '1.2.6', { + 'checksums': ['51a7b8850e5f2fee79e8f460b9d9eca4221d9702087cca5fab5851ad3d594110'], + }), + ('MatrixModels', '0.5-2', { + 'checksums': ['1c06dbbc969eac965c75b0f4cf295d2895429917fa4ba727e5525fb1beabe32a'], + }), + ('matrixStats', '1.0.0', { + 'checksums': ['94876850e60ed16b50bf303cdfe4dd747ad2c28cae07bdc471a093eac23bad6f'], + }), + ('codetools', '0.2-19', { + 'checksums': ['c4b7e567c87f33dad85de92f79641e5e5b5deede6d19a9dfa47133d191782dab'], + }), + ('foreach', '1.5.2', { + 'checksums': ['56338d8753f9f68f262cf532fd8a6d0fe25a71a2ff0107f3ce378feb926bafe4'], + }), + ('ModelMetrics', '1.2.2.2', { + 'checksums': ['5e06f1926aebca5654e1329c66ef19b04058376b2277ebb16e3bf8c208d73457'], + }), + ('generics', '0.1.3', { + 'checksums': ['75046163bfa8b8a4f4214c1b689e796207f6447182f2e5062cf570302387d053'], + }), + ('tidyselect', '1.2.0', { + 'checksums': ['538d26b727e37d618e2efd3b00836048f103112a03e6994bf07a02392e269e3b'], + }), + ('dplyr', '1.1.3', { + 'checksums': ['6843a247db0fcbba6cbffc869efbdfb25247ee6cf2fbdc36fae7e36cccfe1742'], + }), + ('gower', '1.0.1', { + 'checksums': ['296a9d8e5efa8c3a8cc6b92cf38880915753afdef30281629af9dc8eae8315fc'], + }), + ('rpart', '4.1.21', { + 'checksums': ['e77c1c675b211705be18181913a97b67379ccae699c1406acf7814ad8a45622b'], + }), + ('survival', '3.5-7', { + 'checksums': ['d50e2dd32add39f0d148c17ec301eeff1ba9b74d9f9674324a9acd5ef234272e'], + }), + ('KernSmooth', '2.23-22', { + 'checksums': ['76e044904606cab79c9edf4eae3ad63ac9d91a2962b44e063075b4b40e8574e9'], + }), + ('globals', '0.16.2', { + 'checksums': ['682c26a95fa6c4e76a3a875be1a3192fc5b88e036c80dfa3b256add0336d770a'], + }), + ('listenv', '0.9.0', { + 'checksums': ['352841e04f0725d361b78cfdc75e00511f740d97237dd651ea86aa5484674887'], + }), + ('parallelly', '1.36.0', { + 'checksums': ['b9c0a29155944aae8fdb4cab00c521c7ed16af250450dd2a3dd69d5661427c88'], + }), + ('future', '1.33.0', { + 'checksums': ['4228eb9b35ce4b56bf4168977661fed4f83bb36131b2dc7120b2898d8747935b'], + }), + ('future.apply', '1.11.0', { + 'checksums': ['317b30ceb9b5b03eabaf367d52b8fbcbfeabce1da2ee1000ca1eec5adb4b01e8'], + }), + ('progressr', '0.14.0', { + 'checksums': ['9a2899f879a5577f043be99c18d52bfe4d655cc52a96cae834e8a301b36258af'], + }), + ('numDeriv', '2016.8-1.1', { + 'checksums': ['d8c4d19ff9aeb31b0c628bd4a16378e51c1c9a3813b525469a31fe89af00b345'], + }), + ('SQUAREM', '2021.1', { + 'checksums': ['66e5e18ca29903e4950750bbd810f0f9df85811ee4195ce0a86d939ba8183a58'], + }), + ('lava', '1.7.3', { + 'checksums': ['4e087df1350b05c3d0403597a1ad97f4b0e183047d5d8636a62143f26bd86a08'], + }), + ('shape', '1.4.6', { + 'checksums': ['b9103e5ed05c223c8147dbe3b87a0d73184697343634a353a2ae722f7ace0b7b'], + }), + ('diagram', '1.6.5', { + 'checksums': ['e9c03e7712e0282c5d9f2b760bafe2aac9e99a9723578d9e6369d60301f574e4'], + }), + ('prodlim', '2023.08.28', { + 'checksums': ['8002229f38bbe42e26b88ac542d9c028a9dbe8fd3b80af7552060bec3a555de8'], + }), + ('ipred', '0.9-14', { + 'checksums': ['81c83dc847d09c3db52ef15e36cd4dac38c50eead1008ddd458b9e89d7528f35'], + }), + ('timechange', '0.2.0', { + 'checksums': ['3d602008052123daef94a5c3f5154c5461b4ec0432ab70c37273d7ddd252f7f1'], + }), + ('lubridate', '1.9.3', { + 'checksums': ['2b6e1406d231b0a14d60b99cc406d159fea5465a5694725ad25343f12cf37fff'], + }), + ('tidyr', '1.3.0', { + 'checksums': ['8d532b9366fdd3ec9827b51830e559a49d073425007c766025f0e603964e0a9d'], + }), + ('hardhat', '1.3.0', { + 'checksums': ['fe9ff009e2ba6dd4d70cbb541430f88d85c0a28d6a1c2772e4910c79b81fe82e'], + }), + ('tzdb', '0.4.0', { + 'checksums': ['4253c66041bdddfd463c98183bf0052fbcacdb7c5cff9eadbb858b3dcf9d3a23'], + }), + ('clock', '0.7.0', { + 'checksums': ['54e57a3b3f8c308d67536e2a75d48f3493cf7fe821bfa4da9159b4fb2ceca874'], + }), + ('recipes', '1.0.8', { + 'checksums': ['d3d20824b36e1195ed072b632c3be89714c335f56c0a2e942386fdadcd78a00d'], + }), + ('caret', '6.0-94', { + 'checksums': ['2715e83ca260bb739cd926a55b0d2da1e3f6308b17b56862466e738d930d29a8'], + }), + ('conquer', '1.3.3', { + 'checksums': ['a2c6155ed74af0e2a279145843ec5229ae2f3707aa25169ae030c520aa97deba'], + }), + ('quantreg', '5.97', { + 'checksums': ['87e7de5776dee936ef0809dcc9ac2e0d51a7580368e6defa12ec21276a676da1'], + }), + ('robustbase', '0.99-0', { + 'checksums': ['437d422eec29c4345ea65efa6b2c7c21944059a79643d74f4187e06db6e35077'], + }), + ('zoo', '1.8-12', { + 'checksums': ['e6c3862668f9e3422bced3b6fba485c76a1e91b48f5d6153822d6a61863b2fb8'], + }), + ('lmtest', '0.9-40', { + 'checksums': ['64400d4d6cc635316531042971f1783539686e9015c76f5741c07304fa14d997'], + }), + ('vcd', '1.4-11', { + 'checksums': ['7a54e855689e1429d46e0d4d7a956f96b0ad2fd0c7084fa023902c55849e0932'], + }), + ('snowfall', '1.84-6.2', { + 'checksums': ['9b467ab2b992455c6e1aeabe375c5694761fa1cf8aaf4f003ca47102b656353b'], + }), + ('bindr', '0.1.1', { + 'checksums': ['7c785ca77ceb3ab9282148bcecf64d1857d35f5b800531d49483622fe67505d0'], + }), + ('plogr', '0.2.0', { + 'checksums': ['0e63ba2e1f624005fe25c67cdd403636a912e063d682eca07f2f1d65e9870d29'], + }), + ('bindrcpp', '0.2.2', { + 'checksums': ['48130709eba9d133679a0e959e49a7b14acbce4f47c1e15c4ab46bd9e48ae467'], + }), + ('tmvnsim', '1.0-2', { + 'checksums': ['97f63d0bab3b240cc7bdbe6e6e74e90ad25a4382a345ee51a26fe3959edeba0f'], + }), + ('mnormt', '2.1.1', { + 'checksums': ['95fca70378af0afd5a388982ba5528f5b27e02157eeb9940a0a9762d11511308'], + }), + ('foreign', '0.8-85', { + 'checksums': ['9079d20a1807122f3a6b5a72737d76eb4c011dd35d7099dfbf6171e84e52ecab'], + }), + ('psych', '2.3.9', { + 'checksums': ['04c2e81c161792aae9de458b15a373577569629c1b0a897e973bf4b3bd2019b1'], + }), + ('broom', '1.0.5', { + 'checksums': ['9d77ddee9ee32ffefdacddcb35adc0ac83035537c4e5ef5cfbd2f8bbd909d991'], + }), + ('nloptr', '2.0.3', { + 'checksums': ['7b26ac1246fd1bd890817b0c3a145456c11aec98458b8518de863650b99616d7'], + }), + ('boot', '1.3-28.1', { + 'checksums': ['d4cde76fcc8ccc7ffa329de69147b66a6a93a10188e89342fd18207b1d02ff53'], + }), + ('statmod', '1.5.0', { + 'checksums': ['d61c3ef9b09d55b42e038f8d767fa483ebbdec2a9c7172b1b0ccda0ae0016ec9'], + }), + ('lme4', '1.1-35.1', { + 'checksums': ['e4a411396f68bf93751dfd01c8cd431e2d4658340186c47d164ebb2b840afb5b'], + }), + ('ucminf', '1.2.0', { + 'checksums': ['5add8f84aeb0910a7ebf796c9514d4a3998606c3e45fe97e55d84f000a1d6df4'], + }), + ('ordinal', '2022.11-16', { + 'checksums': ['5488ad1dfa531a09d017d68d7393d376c8bc49cceeaa6a3e5f7d57b99168d493'], + }), + ('jomo', '2.7-6', { + 'checksums': ['3ffa2a5521d4969fe77b23cd3ab201afdf8db3f8f708b1276c33083c01d7e2da'], + }), + ('bit64', '4.0.5', { + 'checksums': ['25df6826ea5e93241c4874cad4fa8dadc87a40f4ff74c9107aa12a9e033e1578'], + }), + ('vroom', '1.6.4', { + 'checksums': ['8d46f96b2621409838a5d0bfa86a70146cc31f375bf3c8f66b64bbdcc62ae24d'], + }), + ('readr', '2.1.4', { + 'checksums': ['98144fa48c4fa61ef8c73ede8f87a2d2c5c44e9502b7875b266eb79984fbeb0d'], + }), + ('forcats', '1.0.0', { + 'checksums': ['c5bb157909d92e1e1a427c0dc5cb358ea00a43a14918a9088fa4f6630962254e'], + }), + ('haven', '2.5.3', { + 'checksums': ['9a5999afad09f0cf80515241b2ff19a0c480658c4bd3810638ad52762e04b7e3'], + }), + ('pan', '1.9', { + 'checksums': ['e37e184c3c1b7a34f54dd95335e6bc730fd5716d2d2dc20c24279401aa673c52'], + }), + ('mitml', '0.4-5', { + 'checksums': ['056aec823187cc3793640d8a5e74d74093bae74260a975ceb098a83a52e2eeeb'], + }), + ('glmnet', '4.1-8', { + 'checksums': ['1ddbe5ce07076d1bdf58b0202ebd0ceac8eeb4796c5175681adb9e58c30ddcfe'], + }), + ('mice', '3.16.0', { + 'checksums': ['29f0285185a540337e9dde2357690c82d174f115be701ee2f0a7083173a44040'], + }), + ('urca', '1.3-3', { + 'checksums': ['43baa8b6735f8325a69e6a43686f4fecd77a0eb7f60da25b4fc5c51b9271e9f1'], + }), + ('fracdiff', '1.5-2', { + 'checksums': ['ac5f881330287f5bc68b5cdce4fb74156a95356ffb875ee171538bc44200f437'], + }), + ('operator.tools', '1.6.3', { + 'checksums': ['e5b74018fb75bfa02820dec4b822312f1640422f01d9fec1b58d880ffb798dec'], + }), + ('formula.tools', '1.7.1', { + 'checksums': ['4fe0e72d9d96f2398e86cbd8536d0c84de38e5583d4ff7dcd73f415ddd8ca395'], + }), + ('logistf', '1.26.0', { + 'checksums': ['f916e568c8c64fc48695c72214439267c02310c6c68d3ffea5708ec00e80190b'], + }), + ('akima', '0.6-3.4', { + 'checksums': ['95657592a81d2e3628cb054b60127827ae64e65c58b77d059aa510bc6781ad3e'], + }), + ('bitops', '1.0-7', { + 'checksums': ['e9b5fc92c39f94a10cd0e13f3d6e2a9c17b75ea01467077a51d47a5f708517c4'], + }), + ('crosstalk', '1.2.0', { + 'checksums': ['4237baab35cd246a8a98fb9cf4ce53b6ddbc31d00742ded4edea0479613d1ea0'], + }), + ('plotly', '4.10.3', { + 'checksums': ['8b7a6c26443088c8aae4624e01cf726a91fee875c2e60b6c439375d1adaa5d8f'], + }), + ('mixtools', '2.0.0', { + 'checksums': ['854e7482230b9a5dde61bab191b78e06aa8f9b0cdfe3c03e046afa133b317e0d'], + }), + ('cluster', '2.1.4', { + 'checksums': ['c6f10ceca29a176ba833f24ebf71fd451629052c2338398ba286df5689d6f5b6'], + }), + ('gclus', '1.3.2', { + 'checksums': ['9cc61cdff206c11213e73afca3d570a7234250cf6044a9202c2589932278e0b3'], + }), + ('coda', '0.19-4', { + 'checksums': ['422d3cfd34797a3631e9c4812431940599c0ca4bb9937797bed07b7b1d6fe58f'], + }), + ('doMC', '1.3.8', { + 'checksums': ['b2186f851448251ae6af5d14b9e3e7f9221f90887e5f8de6a68c91caf16619a3'], + }), + ('DBI', '1.1.3', { + 'checksums': ['38bb33753da5bddb78893a5228a5d269dae3bf16f21dc5d9853ac9c24d31428d'], + }), + ('gam', '1.22-2', { + 'checksums': ['fe737f45229448b98b4fe2c0a3193d4cd2de43a1415f1fa25e4ec4c5a0ca02fa'], + }), + ('gamlss.data', '6.0-2', { + 'checksums': ['dbb3b6f855540928ccdbda497f8d552144895e34565799e8b595e704096db71e'], + }), + ('gamlss.dist', '6.1-1', { + 'checksums': ['d2db3a7658799c2ef212aa18cb75a3ecf4f73faf8c13dfdc3c14b21ae0129069'], + }), + ('gamlss', '5.4-20', { + 'checksums': ['a60c1e20e173f909a0df344016e64381e45a098b60f07f80fd2802bfba086873'], + }), + ('gamlss.tr', '5.1-7', { + 'checksums': ['8f9975bceaf8000b1d39317daf490e59c8385b5291326ed6a2630be11dae3137'], + }), + ('hwriter', '1.3.2.1', { + 'checksums': ['ed2fa254ab27cf65d397e181339976fc3261dfb4f6b600fea8c5689620dab6f3'], + }), + ('xts', '0.13.1', { + 'checksums': ['2c3907c6d0162e48d1898647105bbb32cfe0cb005788481a64ee675a941d825d'], + }), + ('TTR', '0.24.3', { + 'checksums': ['4d9aef32647664be5cf965b05f21ed62cde9425fa87c21530852e05ef7aaba87'], + }), + ('quantmod', '0.4.25', { + 'checksums': ['3f1896d45fbd4daea438fd2824bf4c91aba1a6729d93d20e6a0e60d2a0f95b32'], + }), + ('mvtnorm', '1.2-3', { + 'checksums': ['2adadc5df5e5303d51c9b0c1881930f51ff84bfb9b1a9754354e012f982bc6c7'], + }), + ('pcaPP', '2.0-3', { + 'checksums': ['1aac554f039753bf9d026090e47d66b82bf3f1f75479ed0adefa3f7bbb55d603'], + }), + ('pscl', '1.5.5.1', { + 'checksums': ['611367c3d34c78f2d4db79e630e38d7a5df8296bd7e72d258f6a115fbbe78d5b'], + }), + ('blob', '1.2.4', { + 'checksums': ['d08922ebc4147d930fe4762b1b289935217308c6d3fcaa5ae028ce3f5cf2728f'], + }), + ('RSQLite', '2.3.3', { + 'checksums': ['32b1d0ca464da2b61c1e7a11e979c35516a954ee94352285d9f451c630942c44'], + }), + ('BatchJobs', '1.9', { + 'checksums': ['5da9c381df461320ed4033523bad1ee97f88a4670d2714fec32be92964115c77'], + }), + ('sandwich', '3.0-2', { + 'checksums': ['6e30b6b554eb19430a60c45a8132fb7918ddb0013577bf6a62caeb163bdfe2b4'], + }), + ('sfsmisc', '1.1-16', { + 'checksums': ['511b4a661e3cfec540eb3d08f67b715f3cda398eb135a011b9be84305c11436c'], + }), + ('spatial', '7.3-17', { + 'checksums': ['f1003ed8cff2a47169a4787c8be46e8c2c501cc06c8b1e5f97bf62507e5f5dd7'], + }), + ('VGAM', '1.1-9', { + 'checksums': ['d4d411b020acaec32777c89e2b2265449e6855794442b2c4c51bcd9288b1afd0'], + }), + ('waveslim', '1.8.4', { + 'checksums': ['408eeea72a218ef3458f0934ff556733cacf1a63ddaa52491abcc1fce6ed2094'], + }), + ('profileModel', '0.6.1', { + 'checksums': ['91dc25e81f52506593f5c8d80a6131510b14525262f65b4ac10ae0cad0b2a506'], + }), + ('brglm', '0.7.2', { + 'checksums': ['56098d2ce238478e7a27cacc4cdec0bc65f287fe746b38fbb1edda20c1675023'], + }), + ('deSolve', '1.38', { + 'checksums': ['a0b4fe5c46ae560a3f36eb31e474b08ed85a928e86ae52dd59457409de188969'], + }), + ('tseriesChaos', '0.1-13.1', { + 'checksums': ['23cb5fea56409a305e02a523ff8b7642ec383942d415c9cffdc92208dacfd961'], + }), + ('tseries', '0.10-54', { + 'checksums': ['c3ca3263b58a22dd9f613b0be34a6f401caa9c88f0609c0b4e825f1efab4d028'], + }), + ('fastICA', '1.2-3', { + 'checksums': ['e9ef82644cb64bb49ae3b7b6e0885f4fb2dc08ae030f8c76fe8dd8507b658950'], + }), + ('R.methodsS3', '1.8.2', { + 'checksums': ['822d5e61dad4c91e8883be2b38d7b89f87492046d0fe345704eb5d2658927c2e'], + }), + ('R.oo', '1.25.0', { + 'checksums': ['b8b19061774918ee7d9d4330c16c0ea505f7cd02d01343df1e8b2e4fb847beef'], + }), + ('cgdsr', '1.3.0', { + 'checksums': ['4aa2a3564cee2449c3ff39ab2ad631deb165d4c78b8107e0ff77a9095340cc1f'], + }), + ('R.utils', '2.12.2', { + 'checksums': ['fe3cf1aa8641540634e96990294d0202d4d94ec79ce73aaf78e4eda30fcb8836'], + }), + ('R.matlab', '3.7.0', { + 'checksums': ['d713522268a1206555610938350137ea022e07e27fa9cdd73c02fae8d1a43dda'], + }), + ('gridExtra', '2.3', { + 'checksums': ['81b60ce6f237ec308555471ae0119158b115463df696d2eca9b177ded8988e3b'], + }), + ('gbm', '2.1.8.1', { + 'checksums': ['8d2456124552658ee9500707c4e9992cf42cb88705008c32ea258efb4f2be80b'], + }), + ('Formula', '1.2-5', { + 'checksums': ['86254674600d64e18b65d52f42d7ebfc217c8e1945cb63ac06da22cbf04d355c'], + }), + ('acepack', '1.4.2', { + 'checksums': ['5bffcd12b783f372bb6c50e35317744ac31597c91b6433442a7b0dce2f66ac91'], + }), + ('proto', '1.0.0', { + 'checksums': ['9294d9a3b2b680bb6fac17000bfc97453d77c87ef68cfd609b4c4eb6d11d04d1'], + }), + ('chron', '2.3-61', { + 'checksums': ['a096957625a0438075b3486322ee07c753c7c4ba3efcd04a3ac92476d6c43b9b'], + }), + ('viridis', '0.6.4', { + 'checksums': ['0ba2a88bc38ff8be4d074ed2bc17fd9d746e96ed4dec03fa079d96a06541d6dc'], + }), + ('htmlTable', '2.4.2', { + 'checksums': ['6a83dd6172c13cad4a74f2660db94565814aaf8500237e2c418216be6db7360d'], + }), + ('Hmisc', '5.1-1', { + 'checksums': ['4971efa6d89d0002d688d160f9abca0185c5a9aa3ecc79f598a91a258db04a51'], + }), + ('fastcluster', '1.2.3', { + 'checksums': ['1f229129e1cddc78c7bb5ecc90c4d28ed810ee68cf210004c7cdfa12cfaf2a01'], + }), + ('registry', '0.5-1', { + 'checksums': ['dfea36edb0a703ec57e111016789b47a1ba21d9c8ff30672555c81327a3372cc'], + }), + ('bibtex', '0.5.1', { + 'checksums': ['f3c1a0a4e666c4addd73ff13ce8ce073d73d10ebca36d333328ade8a0b493ed1'], + }), + ('pkgmaker', '0.32.10', { + 'checksums': ['972b0473a64408ccc4841fa3f09a567cc32811e69c3c7e42a2f391a5eb2e2933'], + }), + ('rngtools', '1.5.2', { + 'checksums': ['7f8c76ca4c7851b69a86e27be09b02ddc86357f0388659ef8787634682e8a74d'], + }), + ('doParallel', '1.0.17', { + 'checksums': ['b96a25ad105a654d70c7b4ca27290dc9967bc47f4668b2763927a886b178abd7'], + }), + ('gridBase', '0.4-7', { + 'checksums': ['be8718d24cd10f6e323dce91b15fc40ed88bccaa26acf3192d5e38fe33e15f26'], + }), + ('irlba', '2.3.5.1', { + 'checksums': ['2cfe6384fef91c223a9920895ce89496f990d1450d731e44309fdbec2bb5c5cf'], + }), + ('igraph', '1.5.1', { + 'checksums': ['add90a1e77ad4a5d95641f0556553e3f1d1c4443cb2d5afb70171efd278ab14a'], + }), + ('GeneNet', '1.2.16', { + 'checksums': ['c1e98073ccdaa18f4952630bfe4fc0617106eeaf7ed94d347cb2773bd48333e4'], + }), + ('ape', '5.7-1', { + 'checksums': ['8b09c71218d8aa629e43bc807b433a4e30a61847d91b2810e31c366f0fe5057a'], + }), + ('RJSONIO', '1.3-1.8', { + 'checksums': ['f6f0576d3c7852b16295dfc897feebca064fe5dd29cdce7592f94c56823553f5'], + }), + ('caTools', '1.18.2', { + 'checksums': ['75d61115afec754b053ed1732cc034f2aeb27b13e6e1932aa0f26bf590cf0293'], + }), + ('gplots', '3.1.3', { + 'checksums': ['9f853b9e205264d087e61e8825f797ce36c9eb585b187dab794563613a526716'], + }), + ('ROCR', '1.0-11', { + 'checksums': ['57385a773220a3aaef5b221a68b2d9c2a94794d4f9e9fc3c1eb9521767debb2a'], + }), + ('rjson', '0.2.21', { + 'checksums': ['982b56d35ccc0c7db0b20c1d3eab5f5f47c620309646fdc278ff1cc3433ea2e2'], + }), + ('seqinr', '4.2-30', { + 'checksums': ['faf8fe533867eeef57fddfa6592e19d5984954d0670c6c7dbeab6411d55fee4b'], + }), + ('LearnBayes', '2.15.1', { + 'checksums': ['9b110858456523ca0b2a63f22013c4e1fbda6674b9d84dc1f4de8bffc5260532'], + }), + ('gmodels', '2.18.1.1', { + 'checksums': ['da7d48021b7cd2fd8a7cd8d0bb9658b12342a32698a13877b25ca94aa03f1e95'], + }), + ('expm', '0.999-7', { + 'checksums': ['28f249b914b8dd33eee16663fc793e57afd0e301e16067bf9f27fa8e591ba0f1'], + }), + ('terra', '1.7-55', { + 'checksums': ['7000bdfd8591be64921cf841ef29b2aad74661781865f29e1540e57a7d7231ec'], + }), + ('raster', '3.6-26', { + 'checksums': ['c65777225a46ada699e70098f54c60cf191d15e454fac9440aca439a4dbd5592'], + }), + ('spData', '2.3.0', { + 'checksums': ['4b2c1f597049f2c78a7e2b7538c067e2b57e2f12291d19210b1eef702664848b'], + }), + ('units', '0.8-4', { + 'checksums': ['499da1891e6167af42f501894444dcc9f5d8195017456bb6aca8aeec3515c7fc'], + }), + ('classInt', '0.4-10', { + 'checksums': ['c3561eafbc493ac02840191d4f1e4d2ef437ca8eb20f41fc5eca28f00ee42b8b'], + }), + ('vegan', '2.6-4', { + 'checksums': ['5d8ad4bebe79ae2bbd840a34100cf54c62f089c66ea484a542a201afcba21d06'], + }), + ('rncl', '0.8.7', { + 'checksums': ['1d876e4f5f2b8a24cc3ea1002c29eedbc0ca96011b0fa15b085e5b75cfc7993a'], + }), + ('XML', '3.99-0.15', { + 'checksums': ['98a14694670a8a1d9a03e184ec60203180fb8eca9fb3da086693b01ed7003b3e'], + }), + ('reshape', '0.8.9', { + 'checksums': ['791178b3b5f30c166ebf5910a5ab1c67b54e7023b10b6c2e2ddd1cc02a1e4048'], + }), + ('triebeard', '0.4.1', { + 'checksums': ['192f2fef6341e43bd56ef4f9841e813e07be990f4ffcf38c5606259630efe0f7'], + }), + ('urltools', '1.7.3', { + 'checksums': ['6020355c1b16a9e3956674e5dea9ac5c035c8eb3eb6bbdd841a2b5528cafa313'], + }), + ('httpcode', '0.3.0', { + 'checksums': ['593a030a4f94c3df8c15576837c17344701bac023ae108783d0f06c476062f76'], + }), + ('crul', '1.4.0', { + 'checksums': ['8e50415e415702402473caf622d86b89ddc881f6e5d888079a4818a8807ac9a2'], + }), + ('bold', '1.3.0', { + 'checksums': ['0ead11d4386c4c0cd578d3a956f809db2001e387e449a431b4ad503f3da38f5f'], + }), + ('rredlist', '0.7.1', { + 'checksums': ['92a10c37a211dc19b41b93f9ceb13d7ce1c3d3a7290cbba4c1688d944353ae85'], + }), + ('rentrez', '1.2.3', { + 'checksums': ['fb256597ebe7780e38bef9c4c2626b3feacd60c7a5a29fc6a218cf0d8d132f74'], + }), + ('rotl', '3.1.0', { + 'checksums': ['12baeef897c835d20a4d84cf058a3d3d09b89202f7ec0325140cb7754ab5635c'], + }), + ('solrium', '1.2.0', { + 'checksums': ['7ec64199497cc69f542fded955b709fc548cf8e2734c9db0f4a99a0ea67ca49b'], + }), + ('ritis', '1.0.0', { + 'checksums': ['327b221872408b1f0fe0cce953685535b66d2fa5d6cac628e1142a26e4856136'], + }), + ('worrms', '0.4.3', { + 'checksums': ['32b918f921a318078712ce6647e1b19cd7a9c550df8c37cb3d839277431fb9ad'], + }), + ('natserv', '1.0.0', { + 'checksums': ['30f90f938e963191ef19b1433db1e265f67d8efe29c92a1d3603c3dc9a03d5c8'], + }), + ('WikipediR', '1.5.0', { + 'checksums': ['f8d0e6f04fb65f7ad9c1c068852a6a8b699ffe8d39edf1f3fa07d32d087e8ff0'], + }), + ('ratelimitr', '0.4.1', { + 'checksums': ['2b21e4574521c5336feeb3041eaf096bde7857b140049cdeb6ec97dc652aa71b'], + }), + ('rex', '1.2.1', { + 'checksums': ['af42e649c06e4bbdba94d5a1870a7e8347903571c90cd5e5ca40f52307a3bfd6'], + }), + ('WikidataQueryServiceR', '1.0.0', { + 'checksums': ['0e14eec8471a72227f800b41b331cfc49a94b4d4f49e68936448ebbae0b281ae'], + }), + ('pbapply', '1.7-2', { + 'checksums': ['aeed8c8c308c7e3827daf10b01b8ed4b88c1d68cea57d72d67c600c0ce0dae13'], + }), + ('WikidataR', '2.3.3', { + 'checksums': ['3da74b0584b8141a1b61b4d8f58e53c0e46524d811b1642bcc01fb7fd6180888'], + }), + ('wikitaxa', '0.4.0', { + 'checksums': ['ba872853af59fdc8f1121d6e205f15e5bf4f2ec5ad68cd5755a423fa783bf7fc'], + }), + ('phangorn', '2.11.1', { + 'checksums': ['10096ecae03e118aa4dbc60d9866175fad4849c948e004cf10c3868e3feed420'], + }), + ('uuid', '1.1-1', { + 'checksums': ['1611240eb706e6f53400b25c9cf792ad90f151b72ed0918a1e756997f7abb716'], + }), + ('conditionz', '0.1.0', { + 'checksums': ['ccd81e4f2534d29cddf44cf697f76ff01417cbeb22001a93477edc61cdd35646'], + }), + ('taxize', '0.9.100', { + 'checksums': ['e2e578fc45eb5d1306332892c67535fa4bc32d63129532df2c6cde393993cd29'], + }), + ('RNeXML', '2.4.11', { + 'checksums': ['246913cbb0e816401bb8e37dda20646202547f5cc8379c9dadf832f61d6cfd46'], + }), + ('phylobase', '0.8.10', { + 'checksums': ['5a44380ff49bab333a56f6f96157324ade8afb4af0730e013194c4badb0bf94b'], + }), + ('magick', '2.8.1', { + 'checksums': ['d8fcd10e1817d42796102e85df05bb45fc8ced4c721b06fac37e61b6792b458e'], + }), + ('animation', '2.7', { + 'checksums': ['88418f1b04ec785963bad492f30eb48b05914e9e5d88c7eef705d949cbd7e469'], + }), + ('bigmemory.sri', '0.1.6', { + 'checksums': ['3bfa6ac966ce0ea93283f5856a853d0ee5ff85aedd7a7d1ca8a93d0aa642860c'], + }), + ('bigmemory', '4.6.1', { + 'checksums': ['b56e157c87ed6c4fc69d4cb9c697ae9a2001726e776e41aa7c48b35327b65141'], + }), + ('calibrate', '1.7.7', { + 'checksums': ['713b09b415c954e1ef5216088acd40621b0546c45afbb8c2c6f118ecb5cd6fa6'], + }), + ('clusterGeneration', '1.3.8', { + 'checksums': ['0f842256582ab41bcd00ee08ea6d7e231ff362fe0156a53347873e9636f73a70'], + }), + ('dismo', '1.3-14', { + 'checksums': ['67a0f2e95562dd2aa612d52dfffab86985b52591a5ed7891b58b26667b394cd7'], + }), + ('extrafontdb', '1.0', { + 'checksums': ['faa1bafee5d4fbc24d03ed237f29f1179964ebac6e3a46ac25b0eceda020b684'], + }), + ('Rttf2pt1', '1.3.12', { + 'checksums': ['0b4b7a303990369a6944de817b6bd220b400942fcabf42c04fb5b56f1b40a583'], + }), + ('extrafont', '0.19', { + 'checksums': ['4e8f90152df13fc5dee573222a26b4d66553493fdf6af1c7777e59521ccdab8d'], + }), + ('fields', '15.2', { + 'checksums': ['1f270f2331522ef93e04a8b199dfab17995ac02aaa0a68eeca90fef55f6cad3d'], + }), + ('shapefiles', '0.7.2', { + 'checksums': ['4bfa4094c1052c1b1918b1670798f8b4e53f771cfdf9cb8c04bd00a856674d0f'], + }), + ('fossil', '0.4.0', { + 'checksums': ['37c082fa15ebae89db99d6071b2bb2cad6a97a0405e9b4ef77f62a8f6ad274c1'], + }), + ('optimParallel', '1.0-2', { + 'checksums': ['0f9bc62c23d9005130f2892bf5eaecf308fa48a727bdd5e19b7dcd1d95f30a9d'], + }), + ('phytools', '1.9-16', { + 'checksums': ['1b800b722a17679998efff40ab26adb127f61fcd57ea486ec1e129f34c79b29c'], + }), + ('geiger', '2.0.11', { + 'checksums': ['dcc5a0a988439110078867e0aaf09b048e27db7f02e4cbdfe35783611fde3f69'], + }), + ('webshot', '0.5.5', { + 'checksums': ['d675913ccac80e0af8ee396f95a24124eae6c42d80aed9f47f7a88218ecbb913'], + }), + ('shinyjs', '2.1.0', { + 'checksums': ['7ec20cbf1b1fd7a32d85a56dfc0df8b5f67c828d241da400a21d893cb37ea9c5'], + }), + ('manipulateWidget', '0.11.1', { + 'checksums': ['5b73728d7d6dcc32f32d861375074cd65112c03a01e4ee4fa94e21b063fdefb6'], + }), + ('rgl', '1.2.1', { + 'checksums': ['d12a3f35527f260f8d393ae842c7705df5656669a72907f78aa64a363c6dcb9b'], + }), + ('Rtsne', '0.16', { + 'checksums': ['52a05adc826c28212e97d11c54eba3fec45d14eb52039c0f47f62a8e338ffbd5'], + }), + ('labdsv', '2.1-0', { + 'checksums': ['99da92515e9aa49ea7f3df7e301ef714c57054a3838139cd3fd798531d625cd1'], + }), + ('stabs', '0.6-4', { + 'checksums': ['f8507337789f668e421a6ee7b11dd5ea331bf8bff0f9702dd1b93f46c2f3c1d9'], + }), + ('modeltools', '0.2-23', { + 'checksums': ['6b3e8d5af1a039db5c178498dbf354ed1c5627a8cea9229726644053443210ef'], + }), + ('strucchange', '1.5-3', { + 'checksums': ['cac6b4028f68cc8d39202377161d0f7f72ea229b552a5c35769053ab89f90f86'], + }), + ('TH.data', '1.1-2', { + 'checksums': ['47f94eb57b6fcef42efa30824c1356bf10529c4b94b0d0acdb787b434dddde73'], + }), + ('multcomp', '1.4-25', { + 'checksums': ['9dfa7821a699e7b6fc99f2b8bf6bc5fecf6e3d83ece814882b5c8ed8faffd282'], + }), + ('libcoin', '1.0-10', { + 'checksums': ['3023e0495d0789765bdf04c0ef0990a57b48fefa322c55f20e250d2d70d67eaf'], + }), + ('coin', '1.4-3', { + 'checksums': ['8a6302dbf3ef570cd9f69ce7b6cd3d3b928dc776f840bbd767af132e0080b974'], + }), + ('party', '1.3-13', { + 'checksums': ['def05e7f0c59f1b1ecf0ab3929cff75ae8c2691aaf52292cad4371281b897e7b'], + }), + ('inum', '1.0-5', { + 'checksums': ['e696b7e0b31b3bbf405112e60691b6a72fedcaa02e08ee517c59f6bf9cd36bbd'], + }), + ('partykit', '1.2-20', { + 'checksums': ['63509aa3ed2d7417ad284c037cef66bc837fdb7a97967957e79b9fee8ed2e0da'], + }), + ('mboost', '2.9-8', { + 'checksums': ['d64c6bc630f9279ae5a672e86b296e947ab304df9e22a6af518a7d5a627fd1cb'], + }), + ('msm', '1.7', { + 'checksums': ['7f89f8e47966919e49ef8dfe1f9c82ac6553b2f404bb03840da5f42e73dd0db0'], + }), + ('nor1mix', '1.3-0', { + 'checksums': ['9ce4ee92f889a4a4041b5ea1ff09396780785a9f12ac46f40647f74a37e327a0'], + }), + ('np', '0.60-17', { + 'checksums': ['d97957cb234ec2e570fc2d02d305eadff3d71939484b3d1054ed8b67a3427f36'], + }), + ('polynom', '1.4-1', { + 'checksums': ['bc1edb7bb16c8b299103f80a52ab8c5fc200cd07a9056578c1f672e9f5019278'], + }), + ('polspline', '1.1.24', { + 'checksums': ['6641c3666727841d291e3bbeda548ca422e4f04e7ba92e806486ca741c3a5455'], + }), + ('rms', '6.7-1', { + 'checksums': ['1f836c12973b39c42230005767e94b075fb6767e6b8c9714476de9fe515a3da5'], + }), + ('RWekajars', '3.9.3-2', { + 'checksums': ['16e6b019aab1646f89c5203f0d6fc1cb800129e5169b15aaef30fd6236f5da1a'], + }), + ('RWeka', '0.4-46', { + 'checksums': ['660555781703c19b994c9dcfc9e7d8312c30b02539f38cd3948bfc33d9f94b67'], + }), + ('slam', '0.1-50', { + 'checksums': ['7899bf3266c204ecccefc1878f96940b117d4503af128f4fbc50fc409163f8bd'], + }), + ('tm', '0.7-11', { + 'checksums': ['9aab8b8493df4c62cff8adbba53be72295673ba8c546cdb129cdc52aabeae742'], + }), + ('leaps', '3.1', { + 'checksums': ['3d7c3a102ce68433ecf167ece96a7ebb4207729e4defd0ac8fc00e7003f5c3b6'], + }), + ('cNORM', '3.0.4', { + 'checksums': ['d766bfd86f8a871b972b9b9cd952fa2e5bb7c0fe6903b3f2c15eccf4612a17e2'], + }), + ('weights', '1.0.4', { + 'checksums': ['efbe65e8a9d05824a86095d45ed62ce24d82101d4ca3b94828d443e08e83ccba'], + }), + ('TraMineR', '2.2-8', { + 'checksums': ['052b905c067fb1fd71ed8a4f02ccf94579b344bc9e4d8153f5a7e4b520c2e762'], + }), + ('chemometrics', '1.4.4', { + 'checksums': ['fd0edb1ebe321ff7677d0a668d7dfc79a7cd55f408a53d1f13db4cf6347aa881'], + }), + ('FNN', '1.1.3.2', { + 'checksums': ['d701a13487979ebb07a071f4cc83fcf4daea5832d1f3923bce1e0d671dfe0e87'], + }), + ('miscTools', '0.6-28', { + 'checksums': ['bd4c2f2120948af538f9874df1ac745ff162817d0e53756f52f863eb4f593b21'], + }), + ('maxLik', '1.5-2', { + 'checksums': ['7cee05be0624b6a76911fa7b0d66f3e1b78460e0c55ed8bc904ce1e8af7bb15d'], + }), + ('gbRd', '0.4-11', { + 'checksums': ['0251f6dd6ca987a74acc4765838b858f1edb08b71dbad9e563669b58783ea91b'], + }), + ('rbibutils', '2.2.16', { + 'checksums': ['9c7c0fba47f63b1749005311c7174b40e72d95c863a67b736a84b8ff375a2aaf'], + }), + ('Rdpack', '2.5', { + 'checksums': ['4d4db2e1431feb9bd785eced8b44ca5af37b866992ec17dc28b605aee8e0c877'], + }), + ('dfidx', '0.0-5', { + 'checksums': ['37521940b35d62773a4d127c94148aadf207f400a686f2212a22d96e53086a0a'], + }), + ('mlogit', '1.1-1', { + 'checksums': ['6f3ea97db410be929a3078422f3d354d2f17855a21bbdc7c2c09d901e233d143'], + }), + ('getopt', '1.20.4', { + 'checksums': ['87d36cbe6dba41dbc1d78d845210266cdd08c7440d977d738a6e45db14221e8b'], + }), + ('gsalib', '2.2.1', { + 'checksums': ['3da3a4b959142a0d694a843e39143bfce82a6de197c6cc92650a28ac05f3bf90'], + }), + ('optparse', '1.7.3', { + 'checksums': ['6287e1af051d4a65037900ce7b30bd962039450dd4eab63b6f2491eace6a07ed'], + }), + ('labelled', '2.12.0', { + 'checksums': ['fe043c2cd910e692c98bf7c79d20d0d8b9e27431eb26c266d863f1956b80d2b8'], + }), + ('R.cache', '0.16.0', { + 'checksums': ['7853409161571a790e0383f64f99e4eae43201a0ed7146d2baf157741a509291'], + }), + ('styler', '1.10.2', { + 'checksums': ['a6c055310f4be6f3c5d11314938cb592594a869bf9c9fa7fce588a53794f7b10'], + }), + ('questionr', '0.7.8', { + 'checksums': ['af72e59fe652c6063282a7e5b0f487993b9361cc9ed052a632d64a5a6db76ba9'], + }), + ('klaR', '1.7-2', { + 'checksums': ['8035c3edb8257973184ad5a2109fc7c77c32da913cb9dd0c2f1c373e6fccbd61'], + }), + ('neuRosim', '0.2-14', { + 'checksums': ['7fc264bb86f1edd7b39a2472330bbabb34eb6dfb722db016a6ee60444ebfafd9'], + }), + ('locfit', '1.5-9.8', { + 'checksums': ['0d0a9bfb32e50e8f8f97de771f91b17db1db7c5be35027f2d7840a7293e11de3'], + }), + ('GGally', '2.1.2', { + 'checksums': ['30352f36bf061bc98bdd5fa373ea0f23d007040bd908c7c018c8e627e0fb28e5'], + }), + ('beanplot', '1.3.1', { + 'checksums': ['49158aee3449108fd857ef43fb777f55a2b975b350a4a710788996ad19dd15ad'], + }), + ('clValid', '0.7', { + 'checksums': ['037da469891462021eb177f9c9e18caefa8532f08c68fb576fae1668a1f451a1'], + }), + ('DiscriMiner', '0.1-29', { + 'checksums': ['5aab7671086ef9940e030324651976456f0e84dab35edb7048693ade885228c6'], + }), + ('ellipse', '0.5.0', { + 'checksums': ['cde8553973ce2cc04324318b3df13890d585987171fedfe2efbf1430f82cc2f3'], + }), + ('pbkrtest', '0.5.2', { + 'checksums': ['8e79adf035a0fcf3c82145ad55847497379e009f7be880ba3007ebeb2e69b6e3'], + }), + ('carData', '3.0-5', { + 'checksums': ['02e77159b33e3afb8cd9cfab11cf5a996a93175f924b07d991ce44bc6e16451a'], + }), + ('maptools', '1.1-8', { + 'checksums': ['5e8579e3f559161935f1dde622ece703eefa2a28a677ce553d7f27611e66e0f7'], + }), + ('openxlsx', '4.2.5.2', { + 'checksums': ['ee7089e7e5832ef22ee0d0eebf7cca5096ce23afb2bcdb58700be62526fc9b67'], + }), + ('rematch', '2.0.0', { + 'checksums': ['15daf7bf2907aef8503635bc8631fce9fd75248a1fc2496825588c4bdf785c26'], + }), + ('cellranger', '1.1.0', { + 'checksums': ['5d38f288c752bbb9cea6ff830b8388bdd65a8571fd82d8d96064586bd588cf99'], + }), + ('readxl', '1.4.3', { + 'checksums': ['7efebbcdefeb8523633db62b3eeb6ea2e4e81e3d010d8b2adb134011c09a5948'], + }), + ('writexl', '1.4.2', { + 'checksums': ['8f75633eb2b6349a07db347d5b6bf40781a8dab63b6cb858849a616e9b629027'], + }), + ('rio', '1.0.1', { + 'checksums': ['754c137c5588870f75665d0acc149f0ef28250edc057d5d4ac6fa25ba9547bee'], + }), + ('car', '3.1-2', { + 'checksums': ['89263491977ac8e9406b2f4b1638bf06c7ddd1b0e0e3ecda4be61420474674c8'], + }), + ('flashClust', '1.01-2', { + 'checksums': ['48a7849bb86530465ff3fbfac1c273f0df4b846e67d5eee87187d250c8bf9450'], + }), + ('ggrepel', '0.9.4', { + 'checksums': ['81abb47270593709587480ffbc88dce3d3f695bd6f1164729311b37c50d7cf3e'], + }), + ('DT', '0.30', { + 'checksums': ['2f1a53e32a9b493efc9041758810c6a744ebb17ad7a942b376389b7e95ff698e'], + }), + ('estimability', '1.4.1', { + 'checksums': ['c65aaf1e452f3947013d3ce05ae674d48492081f615a942592dc91db780f1124'], + }), + ('emmeans', '1.8.9', { + 'checksums': ['8a0cf0a1fd1d69fe7642644181b943bcf38db6cb1cbbb8b2282e7a1b11d2ffc6'], + }), + ('multcompView', '0.1-9', { + 'checksums': ['1f3993e9d51f3c7a711a881b6a20081a85ffab60c27828ceb3640a6b4c887397'], + }), + ('FactoMineR', '2.9', { + 'checksums': ['882698d399a641c80f63ffae69c334fc5306238fb8592e9b760e17d4621f5230'], + }), + ('flexclust', '1.4-1', { + 'checksums': ['d67977df059e622832358069509f8968d506074320a45d34bfd21c65f898538d'], + }), + ('flexmix', '2.3-19', { + 'checksums': ['adf5a40cbb6d45e3652c1666cb3ccdb9654e501fd685c091cad0686e62bc12e9'], + }), + ('prabclus', '2.3-3', { + 'checksums': ['005d000a9ac357e670de26e5b8fc4ddb1617351275fa43bf6d2e88b8774358c1'], + }), + ('diptest', '0.76-0', { + 'checksums': ['508a5ebb161519cd0fcd156dc047b51becb216d545d62c6522496463f94ec280'], + }), + ('trimcluster', '0.1-5', { + 'checksums': ['9239f20e4a06ac2fa89e5d5d89b23a45c8c534a7264d89bede8a35d43dda518b'], + }), + ('fpc', '2.2-10', { + 'checksums': ['99b4548f2eca1a092a31bc2fa4e4bd1d6b50fdfacf3218588c879ceec99147d2'], + }), + ('BiasedUrn', '2.0.11', { + 'checksums': ['6295f1a12cd9d425cc03ec05a993fba04f539007c1754f23d7043a585b9e7537'], + }), + ('TeachingDemos', '2.12', { + 'checksums': ['3e75405ce1affa406d6df85e06f96381412bc7a2810b25d8c81bfe64c4698644'], + }), + ('kohonen', '3.0.12', { + 'checksums': ['40944b916aa228d90862301beb9d93a521e6d98ba23c147d1bd9dded04ef0ca1'], + }), + ('base64', '2.0.1', { + 'checksums': ['4d22687c0195c2049e0af2c613b1ebcb908037010ad6e550bf47d69e842535f1'], + }), + ('doRNG', '1.8.6', { + 'checksums': ['5032ade083f1f9841ac2e8d4426faa07f189c25c0c338fa155c5dadbe5507de2'], + }), + ('nleqslv', '3.3.4', { + 'checksums': ['2783e7525bcd155dd8cedf5a41b7db65cd1fa0e095cd937371448316f3930fcf'], + }), + ('Deriv', '4.1.3', { + 'checksums': ['dbdbf5ed8babf706373ae33a937d013c46110a490aa821bcd158a70f761d0f8c'], + }), + ('RGCCA', '3.0.2', { + 'checksums': ['c965e9d106f0954ce940314e4d5d3f8f0f57b7fc5c5c8cbe913e43a9a3953f83'], + }), + ('pheatmap', '1.0.12', { + 'checksums': ['579d96ee0417203b85417780eca921969cda3acc210c859bf9dfeff11539b0c1'], + }), + ('pvclust', '2.2-0', { + 'checksums': ['7892853bacd413b5a921006429641ad308a344ca171b3081c15e4c522a8b0201'], + }), + ('RCircos', '1.2.2', { + 'checksums': ['5bbdc3baff2d22a8922685af02b2af07541a1bcf1914abd9c166850b4c550afc'], + }), + ('lambda.r', '1.2.4', { + 'checksums': ['d252fee39065326c6d9f45ad798076522cec05e73b8905c1b30f95a61f7801d6'], + }), + ('futile.options', '1.0.1', { + 'checksums': ['7a9cc974e09598077b242a1069f7fbf4fa7f85ffe25067f6c4c32314ef532570'], + }), + ('futile.logger', '1.4.3', { + 'checksums': ['5e8b32d65f77a86d17d90fd8690fc085aa0612df8018e4d6d6c1a60fa65776e4'], + }), + ('VennDiagram', '1.7.3', { + 'checksums': ['e7c2475f7613241787e6c85bd03315e4fd88413ccbbb735959756a8c2eeb8c46'], + }), + ('xlsxjars', '0.6.1', { + 'checksums': ['37c1517f95f8bca6e3514429394d2457b9e62383305eba288416fb53ab2e6ae6'], + }), + ('xlsx', '0.6.5', { + 'checksums': ['378c5ed475a3d7631ea1ea13e0a69d619c1a52260922abda42818752dbb32107'], + }), + ('uroot', '2.1-2', { + 'checksums': ['bd7fd9e35928d09d0e8fae9e4359a2b2bca6e6865b278436319e2f91db0e4b37'], + }), + ('forecast', '8.21.1', { + 'checksums': ['811eace27c7f6e99e1048b8f2522e67bb3620471c5431e0ef83c396612dc8127'], + }), + ('fma', '2.5', { + 'checksums': ['400dea4d2b6e73ed686d901fbab1b4f930dfcdd67fbd0bb3abc34a707656cf78'], + }), + ('expsmooth', '2.3', { + 'checksums': ['ac7da36347f983d6ec71715daefd2797fe2fc505c019f4965cff9f77ce79982a'], + }), + ('fpp', '0.5', { + 'checksums': ['9c87dd8591b8a87327cae7a03fd362a5492495a96609e5845ccbeefb96e916cb'], + }), + ('tensor', '1.5', { + 'checksums': ['e1dec23e3913a82e2c79e76313911db9050fb82711a0da227f94fc6df2d3aea6'], + }), + ('polyclip', '1.10-6', { + 'checksums': ['3c2f13edabdd9cd2612a60afec9ba447b3dd5a4109dd066d7870411d032f8b63'], + }), + ('goftest', '1.2-3', { + 'checksums': ['3a5f74b6ae7ece5b294781ae57782abe12375d61789c55ff5e92e4aacf347f19'], + }), + ('spatstat.utils', '3.0-4', { + 'checksums': ['5d418e39e0e20a14d44779fcde17caea9bf8075f1647baa59342e824b40f3cc4'], + }), + ('spatstat.data', '3.0-3', { + 'checksums': ['7642c0e41e905a287f9f319a4169d82bf41349cbc406e9c6d107a89f8d11ad3b'], + }), + ('spatstat.geom', '3.2-7', { + 'checksums': ['be9819b3abde9714629a06bc8d741c7a7f8352fb8f72d92b3156b48f422a688e'], + }), + ('spatstat.sparse', '3.0-3', { + 'checksums': ['6bbc4e42ae71eece63e8c3e390068a84eeeb6cd4f6bdb555d8815aa2ed988d69'], + }), + ('spatstat.random', '3.2-1', { + 'checksums': ['925421aeb7befa88a1f28d2bfa113630099b5edb75e04b04d3b0ed9bb1af31dc'], + }), + ('spatstat.core', '2.4-4', { + 'checksums': ['e38c39efe8b14d6e8fdbee8dd870b90c52f78ea571ab7988fd3685f48347d13b'], + }), + ('spatstat.explore', '3.2-5', { + 'checksums': ['4c0715a12af4f5691c493545ab7f6cad790e36a79f5354c0c57356c80fa27c14'], + }), + ('spatstat.model', '3.2-8', { + 'checksums': ['8d5c73abbd5e8fff4246d4ee3a5229cc1d774fb7fc4e69b26f08e720927703f4'], + }), + ('spatstat.linnet', '3.1-3', { + 'checksums': ['78649210eca810deae5bce0edbe85dd790cafe48f37318178d25a7cb58a172f9'], + }), + ('spatstat', '3.0-7', { + 'checksums': ['33779f4a4f881e98c4fa2f8faac8d3a8eb2d45149992cde77fb3a83a62b6cec0'], + }), + ('pracma', '2.4.2', { + 'checksums': ['1d50337fdfd9a8d704a64f01dae5d52b9a2bd6d872fdaa4a6685b8d3bde89c16'], + }), + ('RCurl', '1.98-1.13', { + 'checksums': ['05a52f6329b4ea91dc92ae23b2528b99d654532c8291712bd591521d6eacf306'], + }), + ('bio3d', '2.4-4', { + 'checksums': ['5654eac10d33e4235ef89292e3b99006d8812b6bfaaa3d6fb540312160fd9de9'], + }), + ('AUC', '0.3.2', { + 'checksums': ['836b25b654a82f6ab69b86be95acc22a214da0ad06d71eab787ae1ebe721ae1f'], + }), + ('interpretR', '0.2.5', { + 'checksums': ['dd8fa4a6b07d8a43b980e1df2f112c1915f93ca9d53cae0f0307a8ce00946c23'], + }), + ('cvAUC', '1.1.4', { + 'checksums': ['48b4a3c34e9beb63239e9c7372dd125fe87648262ad5490e0bee2a1f14285ed4'], + }), + ('SuperLearner', '2.0-28.1', { + 'checksums': ['752f11b99816f8d61c1ff411ea4d5bec5509f2a655d250e58baa48e8a0266ba6'], + }), + ('mediation', '4.5.0', { + 'checksums': ['210206618787c395a67689be268283df044deec7199d9860ed95218ef1e60845'], + }), + ('CVST', '0.2-3', { + 'checksums': ['efa296230395f323c2a398a7b386e3a88e75a5b9b645307459d0b7c14d03f32d'], + }), + ('DRR', '0.0.4', { + 'checksums': ['93e365a4907e301ae01f7d943e6bdcda71ef23c51a4759ba3c94bcf842d4e0f8'], + }), + ('dimRed', '0.2.6', { + 'checksums': ['9a7eb14781f01a12e26e7b26a91c8edaca7d824b9c1ffe74c81837098d9bf417'], + }), + ('ddalpha', '1.3.13', { + 'checksums': ['e4a60a4e0950a3587db2a2d5958ab4fbe07b2548f7c3d4795912fe45c77a4eae'], + }), + ('RcppRoll', '0.3.0', { + 'checksums': ['cbff2096443a8a38a6f1dabf8c90b9e14a43d2196b412b5bfe5390393f743f6b'], + }), + ('rlist', '0.4.6.2', { + 'checksums': ['ebde658d897c8a27a90ebb892b9e2bad15e2ad75557a7352fb08cbb5604e0997'], + }), + ('ConsRank', '2.1.3', { + 'checksums': ['7ef9fd405d2f01a9b31fccbbfe0bdb1fd3dcbec6654f553db3ef3a21ffc92d6c'], + }), + ('adabag', '5.0', { + 'checksums': ['ec58756fda2e64753d21e28d9e27ed34f28020045b199a58dcea06a3e2c3d60e'], + }), + ('parallelMap', '1.5.1', { + 'checksums': ['c108a634a335ed47b0018f532a52b032487e239c5061f939ba32355dfefde7e1'], + }), + ('ParamHelpers', '1.14.1', { + 'checksums': ['0450ff8489b0d4d0842130f6a9713ede97da936d7909c43d43587bf2d5a01a21'], + }), + ('ggvis', '0.4.8', { + 'checksums': ['3d5480a0b97a57c26b595785f826b13d7695dab1f1dd8fcf5d7964fa8546a26a'], + }), + ('mlr', '2.19.1', { + 'checksums': ['9d52afd54d9d5746e798134d5675818cee65caa53d7eaf317d46ba88d5865202'], + }), + ('unbalanced', '2.0', { + 'checksums': ['9be32b1ce9d972f1abfff2fbe18f5bb5ba9c3f4fb1282063dc410b82ad4d1ea2'], + }), + ('RSNNS', '0.4-16', { + 'checksums': ['1a215fdb04a39e94eb3c21a9e66dff76f089d3310cb585cdfba5a66253a232d8'], + }), + ('abc.data', '1.0', { + 'checksums': ['b242f43c3d05de2e8962d25181c6b1bb6ca1852d4838868ae6241ca890b161af'], + }), + ('abc', '2.2.1', { + 'checksums': ['db52a397a204a0040ec1368ae217cf7b0d8e99e2567927dbe3ae89f93d1de598'], + }), + ('lhs', '1.1.6', { + 'checksums': ['e37fce44efe6a371677ba2f72f9e1e48270a0fdc60872d05def89270586cd23f'], + }), + ('tensorA', '0.36.2', { + 'checksums': ['8e8947566bd3b65a54de4269df1abaa3d49cf5bfd2a963c3274a524c8a819ca7'], + }), + ('EasyABC', '1.5.2', { + 'checksums': ['326c92e003866728729dc61473f168c3663106b1229e8513abd7ce520c18689c'], + }), + ('git2r', '0.32.0', { + 'checksums': ['1b5d254c0c684a56751d26d482823d0006964eb1f55c558f365d037f5e984671'], + }), + ('clisymbols', '1.2.0', { + 'checksums': ['0649f2ce39541820daee3ed408d765eddf83db5db639b493561f4e5fbf88efe0'], + }), + ('covr', '3.6.3', { + 'checksums': ['c0ce1846a4d12cd7d365ed1844c221cd8a40f50ea2c6d7d87f27c3e7deffa29e'], + }), + ('Rook', '1.2', { + 'checksums': ['c79ae4b5164daffd4e7cf74bd23c1b08a3948bf343dfe9570d57f39cbf8e5f62'], + }), + ('Cairo', '1.6-1', { + 'checksums': ['e64dcfc4d7081f909c947643ff08241e14a4e6e68bf9c8459c6d64ede0c23714'], + }), + ('RMTstat', '0.3.1', { + 'checksums': ['bb4827d76106f5377044cd2b230208881eb714cae65f512f4b95988d9b162ae4'], + }), + ('Lmoments', '1.3-1', { + 'checksums': ['7c9d489a08f93fa5877e2f233ab9732e0d1b2761596b3f6ac91f2295e41a865d'], + }), + ('distillery', '1.2-1', { + 'checksums': ['4b88f0b34e472b9134ad403fb32283424f1883a5943e52c55f1fe05995efb5fa'], + }), + ('extRemes', '2.1-3', { + 'checksums': ['e1ccf0dd542502eb9775682ff64ed358fce4aec271b98cd746e58fbfcf093c40'], + }), + ('tkrplot', '0.0-27', { + 'checksums': ['c99211919414400b0f579e1354407f2e154cfe85533d324bcf9c68172c2772a5'], + }), + ('misc3d', '0.9-1', { + 'checksums': ['a07bbb0de153e806cd79675ed478d2d9221cff825654f59a71a9cf61f4293d65'], + }), + ('multicool', '0.1-12', { + 'checksums': ['487d28d9c3c606be0cf56e2d8f8b0d79fb71949c68886ea9251fbb1c01664a36'], + }), + ('plot3D', '1.4', { + 'checksums': ['d04a45197646fb36bc38870c1c2351cb56b912bd772b1ebfa25eaeef35fda9c0'], + }), + ('plot3Drgl', '1.0.4', { + 'checksums': ['6d87a9a32aba3aa64f751268cabd14dbd3e0eca2bd5f0a4b11366cd1e2f51bdd'], + }), + ('OceanView', '1.0.6', { + 'checksums': ['2c5165975d6c49fdc83a892cb0406584928dd44000c9774fffc00fbd2fec86f3'], + }), + ('ks', '1.14.1', { + 'checksums': ['4543f53af412c368d7dedd1bf30c411290de3f37a5d5f77226112e8315dec76d'], + }), + ('logcondens', '2.1.8', { + 'checksums': ['f139206e47d1077ffcb39248450c1d7ce2ac892cb9264dd0e1ace92532162a00'], + }), + ('Iso', '0.0-21', { + 'checksums': ['b6842ae1c7b629ebb63355f50bb2e5d96e5696fa59590807ac6028b6dce28fa6'], + }), + ('penalized', '0.9-52', { + 'checksums': ['d8e38e6c4e993c74998ca8f986b4e11e09c0b9971103e1d5c7ebdee75f6d6a21'], + }), + ('clusterRepro', '0.9', { + 'checksums': ['940d84529ff429b315cf4ad25700f93e1156ccacee7b6c38e4bdfbe2d4c6f868'], + }), + ('data.tree', '1.0.0', { + 'checksums': ['40674c90a5bd00f5185db9adbd221c6f1114043e69095249f5fa8b3044af3f5e'], + }), + ('influenceR', '0.1.5', { + 'checksums': ['8164e4820f769032fab97c9ca486d33e83309641fcc4875065d8f5a43b20f58c'], + }), + ('visNetwork', '2.1.2', { + 'checksums': ['47c99d42fc89e6ae929257b2648d998c5ffed60dff97ad7e47613f5a0c1ddc84'], + }), + ('downloader', '0.4', { + 'checksums': ['1890e75b028775154023f2135cafb3e3eed0fe908138ab4f7eff1fc1b47dafab'], + }), + ('DiagrammeR', '1.0.10', { + 'checksums': ['72f6a89708ae15277acbbab2dded5f461b6bdc9c5893112860fb34c8df3ff890'], + }), + ('randomForestSRC', '3.2.2', { + 'checksums': ['0b39ed80b5a86ab902e707b3910ca24051331003a26cfd6f81db52faf38157cb'], + }), + ('sm', '2.2-5.7.1', { + 'checksums': ['ea0cc32eb14f6c18beba0bede66ed37bc5341bd3f76c1a7ae56d7254693e1457'], + }), + ('pbivnorm', '0.6.0', { + 'checksums': ['07c37d507cb8f8d2d9ae51a9a6d44dfbebd8a53e93c242c4378eaddfb1cc5f16'], + }), + ('lavaan', '0.6-16', { + 'checksums': ['1def927393a2681b0a61f67b4d92ff05530bf75fab51e5c434140b32c7d70a94'], + }), + ('matrixcalc', '1.0-6', { + 'checksums': ['0bc7d2f11f62d8b1969474defe27c924a243ccba0c856d585f317f6caa07f326'], + }), + ('arm', '1.13-1', { + 'checksums': ['c02da290c1b9699b958431865fcedce94f00ccc80da5c0aa50ed1c3fb56de937'], + }), + ('mi', '1.1', { + 'checksums': ['4d7a9790dbdc675605d70755af9aa80c21a279be5a5d712b22d77465772cc785'], + }), + ('servr', '0.27', { + 'checksums': ['01c23c56bbe483486b9daac831953ce1d5d1814966b9044c03c69884065458c5'], + }), + ('rgexf', '0.16.2', { + 'checksums': ['6ee052b0de99d0c7492366b991d345a51b3d0cc890d10a68b8670e1bd4fc8201'], + }), + ('sem', '3.1-15', { + 'checksums': ['ad023b00e6e8eb20d107039caf1008c4b05104c7c69709e59c66fbddbf381316'], + }), + ('statnet.common', '4.9.0', { + 'checksums': ['a485dc6e363a993d87336fbd1027adb1cd7b9103447fd63904cae4dc3bfc2dd7'], + }), + ('network', '1.18.1', { + 'checksums': ['c80d70352967d8480cfa801f2a31bfe130e2ad4dbf2c07b0046e57f3013cd243'], + }), + ('rle', '0.9.2', { + 'checksums': ['803cbe310af6e882e27be61d37d660dbe5910ac1ee1eff61a480bcf724a04f69'], + }), + ('sna', '2.7-1', { + 'checksums': ['60daf217c15b6fa335804600dc1e6eb73594b6e794faa4f82a2275c4d8570ae3'], + }), + ('glasso', '1.11', { + 'checksums': ['4c37844b26f55985184a734e16b8fe880b192e3d2763614b0ab3f99b4530e30a'], + }), + ('huge', '1.3.5', { + 'checksums': ['9240866e2f773cd0ac8a02514871149d2babaa162a49e151eab9591ad42984ea'], + }), + ('d3Network', '0.5.2.1', { + 'checksums': ['5c798dc0c87c6d574abb7c1f1903346e6b0fec8adfd1df7aef5e4f9e7e3a09be'], + }), + ('BDgraph', '2.72', { + 'checksums': ['7cf9cc1bccf2a56b518c88030e00e88217f571afcb250aa95c3bd2771a8b83cd'], + }), + ('graphlayouts', '1.0.2', { + 'checksums': ['55c95490bc0625ea2fc187f58dc20ee4df325cc93b7987da5d0d5dc96692e0d5'], + }), + ('tweenr', '2.0.2', { + 'checksums': ['64bbfded418d4880e3636f434571c20303d2f66be6950d64583a864fbb661ff3'], + }), + ('ggforce', '0.4.1', { + 'checksums': ['b44219fb63c45fa003c64bca323452f16dcace635204bc0127d3244c0f451873'], + }), + ('tidygraph', '1.2.3', { + 'checksums': ['b09c06b12583ae57edd1ec01e61a0e1b7a4b82358361fb28a6046dbece475687'], + }), + ('ggraph', '2.1.0', { + 'checksums': ['686fdb22dc4f613273fb755ec42399a208b4d10348eecd1a217afd4612245c1f'], + }), + ('qgraph', '1.9.8', { + 'checksums': ['14a81d64f37614a05445408babbb2da5bc53886def8b0c2e4101b06e8b4c01d4'], + }), + ('HWxtest', '1.1.9', { + 'patches': ['HWxtest-1.1.9_add-fcommon.patch'], + 'checksums': [ + {'HWxtest_1.1.9.tar.gz': 'a37309bed4a99212ca104561239d834088217e6c5e5e136ff022544c706f25e6'}, + {'HWxtest-1.1.9_add-fcommon.patch': '4ce08c35035dbcc4edf092cdb405ae32c21c05b3786c15c0aa4bfe13bd81f451'}, + ], + }), + ('diveRsity', '1.9.90', { + 'checksums': ['b8f49cdbfbd82805206ad293fcb2dad65b962fb5523059a3e3aecaedf5c0ee86'], + }), + ('doSNOW', '1.0.20', { + 'checksums': ['917cabed166aa2d1ec291691c17e1e3d344e858543e1682e3a442cc0c504bbb8'], + }), + ('geepack', '1.3.9', { + 'checksums': ['a106fdf99a7070243c412f0117f0f4e3954b2bae81266fba272e9c85040dcde7'], + }), + ('biom', '0.3.12', { + 'checksums': ['4ad17f7811c7346dc4923bd6596a007c177eebb1944a9f46e5674afcc5fdd5a1'], + }), + ('pim', '2.0.2', { + 'checksums': ['1195dbdbd67348dfef4b6fc34fcec643da685ebe58d34bbe049ab121aca9944f'], + }), + ('minpack.lm', '1.2-4', { + 'checksums': ['e30fa4fe353cf00d266839d3c5db83ec9548a660f31d447ad9a69f556d56e731'], + }), + ('rootSolve', '1.8.2.4', { + 'checksums': ['e16a317ea494192e0a5668a18f7eb99675f8edf3b3095861d213bc2590ad385d'], + }), + ('FME', '1.3.6.3', { + 'checksums': ['83c4c28ad4f9197610be40fb66f1025f438a46e4085d64b736e83a0ab71e36a1'], + }), + ('bmp', '0.3', { + 'checksums': ['bdf790249b932e80bc3a188a288fef079d218856cf64ffb88428d915423ea649'], + }), + ('tiff', '0.1-11', { + 'checksums': ['b8c3ea15114d972f8140541c7b01f5ce2e5322af1f63c1a083aaf766fd3eec75'], + }), + ('readbitmap', '0.1.5', { + 'checksums': ['737d7d585eb33de2c200da64d16781e3c9522400fe2af352e1460c6a402a0291'], + }), + ('imager', '0.45.2', { + 'checksums': ['49848bcb03dd3fc3605799893d39986b521921faaa5647815274eb204bb9bf56'], + }), + ('signal', '0.7-7', { + 'checksums': ['67a015c46d67de7548c3adb83a1b22524de75501a861d91668c3c2ea761a4e61'], + }), + ('tuneR', '1.4.5', { + 'checksums': ['f5d20d2dfa0e5ea08465d9fd57675ced3e20aa55b8904a32265766ca2ab252fb'], + }), + ('pastecs', '1.3.21', { + 'checksums': ['8c1ef2affe88627f0b23295aa5edb758b8fd6089ef09f60f37c46445128b8d7c'], + }), + ('audio', '0.1-11', { + 'checksums': ['1052f6335be4df4b2e145c077d82e781eaf6658f3ed4821033b07e57bb4ce17c'], + }), + ('fftw', '1.0-7', { + 'checksums': ['f69f63467b84e107f3e0b18d1f034a37140545e6f50e6be3b887df2b4eec3a1e'], + }), + ('seewave', '2.2.3', { + 'checksums': ['1f897af809e8e5f9d515d788f4b5ea14ba27b2b554a3ab8024d78f42ac46848d'], + }), + ('gsw', '1.1-1', { + 'checksums': ['d2a21dbcc3b285163d9cf1bc649a3de1bb1e713c64e4cb6cbc3e613c43f4dd82'], + }), + ('wk', '0.9.0', { + 'checksums': ['10fba9d5d24e9942c1b9cfdaf2a862d023f7d5a8d7c350f22483723d6e7bb9da'], + }), + ('s2', '1.1.4', { + 'checksums': ['be0b4925eaade52cf85b1cb6e851430bd4fe6ca30722dffcc3f9107e7a4e404c'], + }), + ('sf', '1.0-14', { + 'checksums': ['8b535648d537a1a95920c938e43692c1dfaac8d293ff3f506334001352c339f7'], + }), + ('oce', '1.8-1', { + 'checksums': ['22910a5a88b43ae60f12f3d4d4627777c54910c0fef71fa5c537e24af39fde67'], + }), + ('ineq', '0.2-13', { + 'checksums': ['e0876403f59a3dfc2ea7ffc0d965416e1ecfdecf154e5856e5f54800b3efda25'], + }), + ('soundecology', '1.3.3', { + 'checksums': ['276164d5eb92c78726c647be16232d2443acbf7061371ddde2672b4fdb7a069a'], + }), + ('memuse', '4.2-3', { + 'checksums': ['906fdff665e2aed0e98ee3181233a5c62bd521abfce6ab1cb215c71c95d12620'], + }), + ('pinfsc50', '1.2.0', { + 'checksums': ['ed1fe214b9261feef8abfbf724c2bd9070d68e99a6ea95208aff2c57bbef8794'], + }), + ('vcfR', '1.14.0', { + 'checksums': ['8576dbd2e5a707dabc20acbbea3fe18b6a783910e622423ac203609a386204cb'], + }), + ('glmmML', '1.1.5', { + 'checksums': ['17d13d90eaea3ba3477ac2453ea5ced8d2cc20b2d00d097003e4f3b2ad79dde9'], + }), + ('cowplot', '1.1.1', { + 'checksums': ['c7dce625b456dffc59ba100c816e16226048d12fdd29a7335dc1f6f6e12eed48'], + }), + ('tsne', '0.1-3.1', { + 'checksums': ['14abc65bc0a3f3ed63c04dda19620e483a21d1f5f33feb74aba9f3221434d888'], + }), + ('sn', '2.1.1', { + 'checksums': ['f9f6b56d91dc7cb18dc8308d0875b9648c90b268d1aaf8f4c5164ff016df22bd'], + }), + ('tclust', '1.5-4', { + 'checksums': ['2b55da5e351c5054c9627f57a43084518a138a1d8097e35a364db0eff63471a8'], + }), + ('ranger', '0.15.1', { + 'checksums': ['4d65d9ee7c5f2704a0e303a27222c02aa53e49f3c28dc0b4451371e37ada2b2e'], + }), + ('hexbin', '1.28.3', { + 'checksums': ['0eb33511c1a4ff29dda8b89fee420ea7041033f981c7f16484c9f504d749de5f'], + }), + ('lobstr', '1.1.2', { + 'checksums': ['9bc533ed7e8f816097a03acfbca33308c9940ba26d02674f4ba06311cf3a1718'], + }), + ('pryr', '0.1.6', { + 'checksums': ['68c1a30a42808eb01a64d31e521d21f2fd5a88dd2c14d05b4b7986d27a177704'], + }), + ('moments', '0.14.1', { + 'checksums': ['2ed2b84802da132ae0cf826a65de5bfa85042b82e086be844002fe1ce270d864'], + }), + ('laeken', '0.5.2', { + 'checksums': ['22790f7157f23eb0b7b0b89e2ea53478fb3c0d15b5be8ad11525d3e6d5626cdc'], + }), + ('VIM', '6.2.2', { + 'checksums': ['afa7492c54508c46eff39ac66fa4b05627e0044253ebe4a61b2a78d459f715e4'], + }), + ('smoother', '1.1', { + 'checksums': ['91b55b82f805cfa1deedacc0a4e844a2132aa59df593f3b05676954cf70a195b'], + }), + ('dynamicTreeCut', '1.63-1', { + 'checksums': ['831307f64eddd68dcf01bbe2963be99e5cde65a636a13ce9de229777285e4db9'], + }), + ('beeswarm', '0.4.0', { + 'checksums': ['51f4339bf4080a2be84bb49a844c636625657fbed994abeaa42aead916c3d504'], + }), + ('vipor', '0.4.5', { + 'checksums': ['7d19251ac37639d6a0fed2d30f1af4e578785677df5e53dcdb2a22771a604f84'], + }), + ('ggbeeswarm', '0.7.2', { + 'checksums': ['fd7ca265bb892dde514d5f8d6a853fb8b32d7a673b05e9c8b50544a523299ce5'], + }), + ('shinydashboard', '0.7.2', { + 'checksums': ['a56ee48572649830cd8d82f1caa2099411461e19e19223cbad36a375299f3843'], + }), + ('rrcov', '1.7-4', { + 'checksums': ['6341eddc590fe11fb8545aa9084f5d99cd93415a599022ba63f1af890617754a'], + }), + ('WriteXLS', '6.4.0', { + 'checksums': ['644b90a82683c668b6e05bb4f940111a42cd634f63a5b559351e8cd4274a19b7'], + }), + ('bst', '0.3-24', { + 'checksums': ['64d96e13551d35ec32aabaa733bec86dbe8c9ca3f976a34ebbf1f49bb63e49f4'], + }), + ('pamr', '1.56.1', { + 'checksums': ['d0e527f2336ee4beee91eefb2a8f0dfa96413d9b5a5841d6fc7ff821e67c9779'], + }), + ('WeightSVM', '1.7-11', { + 'checksums': ['498f2d1d8329b7309b373c18afcdad8ed9d3d54169f310de3264a65364406e69'], + }), + ('mpath', '0.4-2.23', { + 'checksums': ['1608215dd7826dde0cb7c8890375568d286270024d52f01cb12c9402c817ed99'], + }), + ('timereg', '2.0.5', { + 'checksums': ['a0d1ddeaf6962c7f48e213430ec838cf8e880a6c41571e4c2e864d070f84f7ef'], + }), + ('peperr', '1.5', { + 'checksums': ['f7f9b3140bd8f0d00b7cacd55e9626e2333eb91ab0173e8f21237803045b8500'], + }), + ('heatmap3', '1.1.9', { + 'checksums': ['594c33947b2be2cc8a592075f41a0df2398c892add7d63a15c613a5eeb8fdb69'], + }), + ('GlobalOptions', '0.1.2', { + 'checksums': ['47890699668cfa9900a829c51f8a32e02a7a7764ad07cfac972aad66f839753e'], + }), + ('circlize', '0.4.15', { + 'checksums': ['d602d55313fe7c675109153d6ed3b99bdba5292e1deefed71d5a21e0db595cc7'], + }), + ('GetoptLong', '1.0.5', { + 'checksums': ['8c237986ed3dfb72d956ad865ef7768644eebf144675ad66140acfd1aca9d701'], + }), + ('dendextend', '1.17.1', { + 'checksums': ['87e96e119e7236b4f5df1c6f1b0d4d4e12aab606a2142e039f56d8ec71f9e521'], + }), + ('RInside', '0.2.18', { + 'checksums': ['805014f0f0a364633e0e3c59100665a089bc455dec80b24f04aaec96466cb736'], + }), + ('limSolve', '1.5.7', { + 'checksums': ['047766ff01171c67763f50103c4cfa97c37300e01dd84b0b2410e979e39c58f1'], + }), + ('dbplyr', '2.4.0', { + 'checksums': ['9154f35771fa818456c6c6ec566699f2e1e7569aaa48209de80b44274240f1e7'], + }), + ('modelr', '0.1.11', { + 'checksums': ['94ebd506e9ccf3bf25318be6a182f8f89c3669a77b41864a0b9dbcc1d4337bd3'], + }), + ('debugme', '1.1.0', { + 'checksums': ['4dae0e2450d6689a6eab560e36f8a7c63853abbab64994028220b8fd4b793ab1'], + }), + ('reprex', '2.0.2', { + 'checksums': ['a85b16e26112364a65c886efea050df08c17aadf1411fd14ec27d9ef13e87092'], + }), + ('selectr', '0.4-2', { + 'checksums': ['5588aed05f3f5ee63c0d29953ef53da5dac7afccfdd04b7b22ef24e1e3b0c127'], + }), + ('rvest', '1.0.3', { + 'checksums': ['a465ef7391afaa3c26eebe8c61db02314ac04c4d8de5aa53f090716763d21c1e'], + }), + ('dtplyr', '1.3.1', { + 'checksums': ['a5a9689a640b8bd1274519af220c33deaa3919654acac4ebdff1ff365cc8d6e5'], + }), + ('gargle', '1.5.2', { + 'checksums': ['4a5beb046eb50a168b4baf5d1fcd8ac20d698e7fcb6b6ef46a436ded5b039001'], + }), + ('googledrive', '2.1.1', { + 'checksums': ['0b8b4f74ba3630b0347249a32a80bc5fc2e8b63ad2952702f30162bd2d38fb82'], + }), + ('ids', '1.0.1', { + 'checksums': ['b6212a186063c23116c5cbd3cca65dbb8977dd737261e4526ebee8f64852cfe8'], + }), + ('googlesheets4', '1.1.1', { + 'checksums': ['c5cc63348c54b9de8492e7b12b249245746ea1ff33e306f12431f4fc9386fccf'], + }), + ('conflicted', '1.2.0', { + 'checksums': ['c99b86bb52da3e7d1f4d96d70c77304d0434db5bd906edd8d743e89ac9223088'], + }), + ('tidyverse', '2.0.0', { + 'checksums': ['3d3c2d135056333247d309d1c2cc98cc0d87e2c781f4c6fbceab28d28c0728e5'], + }), + ('R.rsp', '0.45.0', { + 'checksums': ['a58046d448b2fca15fb1bf5b5eec4da37b29175270c07e46d740066537435da4'], + }), + ('gdistance', '1.6.4', { + 'checksums': ['6af5fd3ea7e256f34d705d4817bb88056037ce1d68adfeb28d61c4a640d8992b'], + }), + ('vioplot', '0.4.0', { + 'checksums': ['5729b483e3a4f7c81d2cc22c8bc5211b64e289734e9da5b5696c4974067867b5'], + }), + ('emulator', '1.2-21', { + 'checksums': ['9b50b2c1e673dbc5e846a4fa72e8bd03434add9f659bde6d7b0c4f1bbd713346'], + }), + ('gmm', '1.8', { + 'checksums': ['7099fc5c6a9069924392995a726190e8d62f6e55375ef356084b0c73346d85d8'], + }), + ('tmvtnorm', '1.5', { + 'checksums': ['1c7a606bdce4319a6fdb4180fef499c293df3412d8583e296869521ece5460fe'], + }), + ('IDPmisc', '1.1.20', { + 'checksums': ['bcb9cd7b8097e5089d1936286ef310ac2030ea7791350df706382ba470afc67f'], + }), + ('gap.datasets', '0.0.6', { + 'checksums': ['1e14b06fac203016555ddca323225ccf18d784609dbf9bdfff423e6dccd297cb'], + }), + ('gap', '1.5-3', { + 'checksums': ['6e19f9d822460867fcb97fe917730ce0f87218893a6a7edae42caaa401b452ce'], + }), + ('qrnn', '2.1', { + 'checksums': ['4f597c9b1437388716db232bf4a33ad5afeca6aa261aaed6eb1cf6938fde8aa6'], + }), + ('TMB', '1.9.6', { + 'checksums': ['00da066f99fbd07910b17ff26207c73c26935a23d71cb5efabf10922755603ea'], + }), + ('glmmTMB', '1.1.8', { + 'checksums': ['4248f6c37a2f82543bc0160c71d6d409ff742a4b1b29b417a42f34460489bd14'], + }), + ('gmp', '0.7-2', { + 'checksums': ['7c9528b484197d13e69e91f8a1c9957729997b9e71e44ebebbf173a587042d8b'], + }), + ('ROI', '1.0-1', { + 'checksums': ['d4ff143304f1422ecc455eb1a00896530193c1a227ed7f3e9da2baa95d921616'], + }), + ('Rglpk', '0.6-5', { + 'checksums': ['aaeffc005a8febfe3422c8ae1347d5e17ea84320b959358670bb1083d6b57ca1'], + }), + ('ROI.plugin.glpk', '1.0-0', { + 'checksums': ['b361b0d4222d74b21432cdc6990762affecdbcec8fd6bbdb13b78b59cb04b444'], + }), + ('spaMM', '4.4.0', { + 'checksums': ['ff7299662dfa60b73f8792242a7480332468c9248f337b89c38dc95388762731'], + }), + ('qgam', '1.3.4', { + 'checksums': ['7633120a48a85ab73f7e1bc8b02c98319285c2abd05f9d13d25339d7aaaacacb'], + }), + ('DHARMa', '0.4.6', { + 'checksums': ['32fd3d5cd354ff6b5457599d7fb870b94c7d86401a47c7c553bca26f782a4b73'], + }), + ('mvnfast', '0.2.8', { + 'checksums': ['8871e0ce54b87afc556fd94ca77c3db72dcbb8c245558287e0fe342e30eec9a0'], + }), + ('bridgesampling', '1.1-2', { + 'checksums': ['54ecd39aa2e36d4d521d3d36425f9fe56a3f8547df6048c814c5931d790f3e6b'], + }), + ('BayesianTools', '0.1.8', { + 'checksums': ['f543bdd6b61ec7fd31a7e4040bd7835341d9079243fa4eb0cd5e684e5e39bdd1'], + }), + ('gomms', '1.0', { + 'checksums': ['52828c6fe9b78d66bde5474e45ff153efdb153f2bd9f0e52a20a668e842f2dc5'], + }), + ('feather', '0.3.5', { + 'checksums': ['50ff06d5e24d38b5d5d62f84582861bd353b82363e37623f95529b520504adbf'], + }), + ('dummies', '1.5.6', { + 'checksums': ['7551bc2df0830b98c53582cac32145d5ce21f5a61d97e2bb69fd848e3323c805'], + }), + ('SimSeq', '1.4.0', { + 'checksums': ['5ab9d4fe2cb1b7634432ff125a9e04d2f574fed06246a93859f8004e10790f19'], + }), + ('uniqueAtomMat', '0.1-3-2', { + 'checksums': ['f7024e73274e1e76a870ce5e26bd58f76e8f6df0aa9775c631b861d83f4f53d7'], + }), + ('PoissonSeq', '1.1.2', { + 'checksums': ['6f3dc30ad22e33e4fcfa37b3427c093d591c02f1b89a014d85e63203f6031dc2'], + }), + ('aod', '1.3.2', { + 'checksums': ['9b85be7b12b31ac076f2456853a5b18d8a79ce2b86d00055264529a0cd28515c'], + }), + ('cghFLasso', '0.2-1', { + 'checksums': ['6e697959b35a3ceb2baa1542ef81f0335006a5a9c937f0173c6483979cb4302c'], + }), + ('svd', '0.5.4.1', { + 'checksums': ['6b0e6f3dfda216882e7bddb2bddf206dbb081147b77c368476333a8f55d9962b'], + }), + ('Rssa', '1.0.5', { + 'checksums': ['475819636afb330a4467722b0a664fa54d6114d782b681f681ccb123f3be522d'], + }), + ('JBTools', '0.7.2.9', { + 'checksums': ['b33cfa17339df7113176ad1832cbb0533acf5d25c36b95e888f561d586c5d62f'], + }), + ('RUnit', '0.4.32', { + 'checksums': ['23a393059989000734898685d0d5509ece219879713eb09083f7707f167f81f1'], + }), + ('DistributionUtils', '0.6-1', { + 'checksums': ['31e79eaa8871b0b9fb8ac63a3fbd852f9ed3047bc584c233ac030b50e1b963d7'], + }), + ('gapfill', '0.9.6-1', { + 'checksums': ['22f04755873e34a9077bb1b1de8d16f5bc56cb8c395c4f797f9ad0b209b1b996'], + }), + ('gee', '4.13-25', { + 'checksums': ['e140881e2febe793a24086a2d179062b9995db901257d678f85d220441400e89'], + }), + ('Matching', '4.10-14', { + 'checksums': ['bfb4286a5da29dcfcc4ddee6299e2d91c0de177720b060b8946fd16f32f6a6b0'], + }), + ('chk', '0.9.1', { + 'checksums': ['f9b43dcf1002c6244dc87965f21dff6e65256eb634b826deb7b5cdfc26f505a7'], + }), + ('MatchIt', '4.5.5', { + 'checksums': ['ae39cafdd3a52487e3ebff1b49642f516cf64321fea90fa57ce3d545a259859e'], + }), + ('RItools', '0.3-3', { + 'checksums': ['2a08e2d2ea3abf5fad89c65fdba1d78dd5f4bd12f980436964fe535554d331d5'], + }), + ('mitools', '2.4', { + 'checksums': ['f204f3774e29d79810f579f128de892539518f2cbe6ed237e08c8e7283155d30'], + }), + ('survey', '4.2-1', { + 'checksums': ['cc3c61e132fb20bed98fa59a8254335a588780a5f4eeb51fab7489390aadf150'], + }), + ('rlemon', '0.2.1', { + 'checksums': ['4a18fa034f197c68daf48daf25c0e41f1b8acbe71d030c6bc1f55e3062a10375'], + }), + ('optmatch', '0.10.6', { + 'checksums': ['2b7661567fdfbdb39dae3779b4b7dea2b9eb759d3117311b3a7936b10cce1d35'], + }), + ('SPAtest', '3.1.2', { + 'checksums': ['b3d74ed2b0a6475a9966dd50eb5d363d0b2985636271dfbf82f0472b8d22b9f4'], + }), + ('RSpectra', '0.16-1', { + 'checksums': ['cba5d3403d6a7d0e27abf6279fbfea6e0d0fe36b28c688bbadb8eafb3841329a'], + }), + ('SKAT', '2.2.5', { + 'checksums': ['1441fa46b6a78a060007442fb8cb8c87753bdc2b1ea2dc24ff951ac3fef651f4'], + }), + ('GillespieSSA', '0.6.2', { + 'checksums': ['f4233b4a44c7d4b9e3459b1efa9a8087a602ef93806b4d70eadbb537b67567c2'], + }), + ('startupmsg', '0.9.6', { + 'checksums': ['1d60ff13bb260630f797bde66a377a5d4cd65d78ae81a3936dc4374572ec786e'], + }), + ('distr', '2.9.2', { + 'checksums': ['b52a817ed66b75defb009e2f946472ab87f693f63c43638e86b5482cd39a2e30'], + }), + ('distrEx', '2.9.0', { + 'checksums': ['087d1847ad400141b5e0fd0858ef3e5c698b3018d7e2d33087be601a5740fb35'], + }), + ('minerva', '1.5.10', { + 'checksums': ['2f26353d8fcc989ac698c4e45bb683801b1a7bb60b14903d05a4d73c629c590f'], + }), + ('RcppTOML', '0.2.2', { + 'checksums': ['371391f9ca82221e76a424082ea9ebc5ea2c50f14e8408469b09d7dc3e6f63aa'], + }), + ('here', '1.0.1', { + 'checksums': ['08ed908033420d3d665c87248b3a14d1b6e2b37844bf736be620578c20ca346b'], + }), + ('reticulate', '1.34.0', { + 'checksums': ['8d0d8922cd811153836e95354357615968b005a4d0d4c5734441953c526e4206'], + }), + ('umap', '0.2.10.0', { + 'checksums': ['8d4786929345e8980bb8be8bb4b6300a679bba03a5984eed59e5e00c626b6ea9'], + }), + ('KODAMA', '2.4', { + 'checksums': ['78f2ea3596f3697fc06a080947e82a54c5270ed90f86916b91902e5db6ec85e7'], + }), + ('locfdr', '1.1-8', { + 'checksums': ['42d6e12593ae6d541e6813a140b92591dabeb1df94432a515507fc2eee9a54b9'], + }), + ('ica', '1.0-3', { + 'checksums': ['474d3530b16b76a1bf1a1114d24092678ea7215fa57c6fdcee6333f1e768b865'], + }), + ('dtw', '1.23-1', { + 'checksums': ['6ed6a3b52be673ce2617b8d48723c7c488c95aab88fe2912d7e00507838e826d'], + }), + ('SDMTools', '1.1-221.2', { + 'checksums': ['f0dd8c5f98d2f2c012536fa56d8f7a58aaf0c11cbe3527e66d4ee3194f6a6cf7'], + }), + ('ggridges', '0.5.4', { + 'checksums': ['2bf71c2034804cec637e6748dc51d8cadad01d3ea4d14ace754327f082e8d851'], + }), + ('TFisher', '0.2.0', { + 'checksums': ['bd9b7484d6fba0165841596275b446f85ba446d40e92f3b9cb37381a3827e76f'], + }), + ('lsei', '1.3-0', { + 'checksums': ['6289058f652989ca8a5ad6fa324ce1762cc9e36c42559c00929b70f762066ab6'], + }), + ('npsurv', '0.5-0', { + 'checksums': ['bc87db76e7017e178c2832a684fcd49c42e20054644b21b586413d26c8821dc6'], + }), + ('fitdistrplus', '1.1-11', { + 'checksums': ['26274f2b710b2417a8bca314d400abf320d4ccf0387ad082743056699501b53d'], + }), + ('hdf5r', '1.3.8', { + 'installopts': '--configure-args="--with-hdf5=$EBROOTHDF5/bin/h5pcc"', + 'preinstallopts': "unset LIBS && ", + 'checksums': ['b53281e2cf57447965849748e972de2f7fe8df0cee3538ef5813c33c7ed2302b'], + }), + ('DTRreg', '1.7', { + 'checksums': ['f0fad2244d960cec8fc33d9a1078df359ceb0aadff980ce6149aa9f01c62223b'], + }), + ('pulsar', '0.3.11', { + 'checksums': ['ee82ef25b2be4bbac713c34bca85d8ea1fa0e32eb8c800dad7256e145fc79393'], + }), + ('bayesm', '3.1-6', { + 'checksums': ['17d72b9cdc090845f98e7a04640380d0baef8bc23d1487c8f64dc192fdb93cb5'], + }), + ('gsl', '2.1-8', { + 'checksums': ['f33609bf485abd190e65ff5d0fdab438b759294c47b921d983d89d6f053a2d95'], + }), + ('energy', '1.7-11', { + 'checksums': ['c29f8fb000c979d2504f6f6d3a99c773004f77d58793e7e2a5766155272b6511'], + }), + ('compositions', '2.0-6', { + 'checksums': ['45d374ebfdcc2c9f6cc738d196caf83a2297ed2aefe2cc99007fcbeb78a61c34'], + }), + ('clustree', '0.5.0', { + 'checksums': ['a87f65dc0489af77807ed27de67e905699f21f50bcfba6a84353b9a846a84ac1'], + }), + ('tweedie', '2.3.5', { + 'checksums': ['983c745fee5a780d46e8dd04c2eb1c10cb2e222d3679654f0d6934d3db7b1c3e'], + }), + ('RcppGSL', '0.3.13', { + 'checksums': ['fe5e73bc119c6424e1a40b6fea17417a7bba93e81dbe9b7cf86dde9b8e8d93e7'], + }), + ('mvabund', '4.2.1', { + 'checksums': ['ed6946c95609443584081100cd38624d2309f7f5d210fd4b8ec12ad25bd27a06'], + }), + ('fishMod', '0.29', { + 'checksums': ['5989e49ca6d6b2c5d514655e61f75b019528a8c975f0d6056143f17dc4277a5d'], + }), + ('alabama', '2023.1.0', { + 'checksums': ['925f67c72d9cdb677105377777bd09e9b56a61573bea7e3f69e0a49595c7bf1c'], + }), + ('gllvm', '1.4.3', { + 'checksums': ['63b77040e9cf2694882d1d80a3bc3030b3a348819ea38e6728417e4c5de07ecc'], + }), + ('grpreg', '3.4.0', { + 'checksums': ['fd57d20baf63d2cc5821998bca5c3fdcbe46c933c9553caa492911b12654d6ad'], + }), + ('trust', '0.1-8', { + 'checksums': ['952e348b62aec35988b103fd152329662cb6a451538f184549252fbf49d7dcac'], + }), + ('lpSolveAPI', '5.5.2.0-17.10', { + 'checksums': ['4cb7ef25d32c1dace99455d5858bac0c57acca29e3a8e206b36e231e13da10b9'], + }), + ('ergm', '4.5.0', { + 'checksums': ['3372c7bd35b640518d65a62615cb7029652a65fe2851748847f1c16b657b6351'], + }), + ('networkLite', '1.0.5', { + 'checksums': ['aaab55d4f8f0b330fe7c1ecbab3c44746c52c2fda99c53c6b46042bb8775718b'], + }), + ('networkDynamic', '0.11.3', { + 'checksums': ['2c664fd0d85c0cdc099480d67a18e6afbb0cc1036963b6664a8a756874648e5b'], + }), + ('ergm.multi', '0.2.0', { + 'checksums': ['13e27ba59b087f09cfb3dc6fccaa360e4ae0159f13e7a20d2c3306b5fe74fb5a'], + }), + ('tergm', '4.2.0', { + 'checksums': ['dcf5a26cc2c4d165766706af08f8ea4f36e328158f5b682490c2a351f7fbda69'], + }), + ('ergm.count', '4.1.1', { + 'checksums': ['446893614ad8b41aa39c37c2bf45a167f575536bb6778b8ad1fbcddb7b934932'], + }), + ('tsna', '0.3.5', { + 'checksums': ['4ee2f773d573f0f4bd93131156fdccf01d7f1a3f725eff3e885021098c6bff65'], + }), + ('statnet', '2019.6', { + 'checksums': ['0903e1a81ed1b6289359cefd12da1424c92456d19e062c3f74197b69e536b29d'], + }), + ('aggregation', '1.0.1', { + 'checksums': ['86f88a02479ddc8506bafb154117ebc3b1a4a44fa308e0193c8c315109302f49'], + }), + ('ComICS', '1.0.4', { + 'checksums': ['0af7901215876f95f309d7da6e633c38e4d7faf04112dd6fd343bc15fc593a2f'], + }), + ('dtangle', '2.0.9', { + 'checksums': ['c375068c1877c2e8cdc5601cfd5a9c821645c3dff90ddef64817f788f372e179'], + }), + ('mcmc', '0.9-7', { + 'checksums': ['b7c4d3d5f9364c67a4a3cd49296a61c315ad9bd49324a22deccbacb314aa8260'], + }), + ('MCMCpack', '1.6-3', { + 'checksums': ['cb14ba20690b31fd813b05565484c866425f072a5ad99a5cbf1da63588958db3'], + }), + ('shinythemes', '1.2.0', { + 'checksums': ['37d68569ce838c7da9f0ea7e2b162ecf38fba2ae448a4888b6dd29c4bb5b2963'], + }), + ('csSAM', '1.2.4', { + 'checksums': ['3d6442ad8c41fa84633cbbc275cd67e88490a160927a5c55d29da55a36e148d7'], + }), + ('bridgedist', '0.1.2', { + 'checksums': ['7210c97fc864e78ea8502067359d642bbd95bf2df30d33da193fc5c004e45baf'], + }), + ('asnipe', '1.1.17', { + 'checksums': ['e7b4010fa1adf27534420db2971dae3c63190920a4323c86fd586842e22d9b07'], + }), + ('liquidSVM', '1.2.4', { + # Don't add optimization flags by liquidSVM which may not be known e.g. on PPC + 'patches': ['liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch'], + 'preinstallopts': 'LIQUIDSVM_TARGET="empty"', + 'checksums': [ + {'liquidSVM_1.2.4.tar.gz': '15a9c7f2930e2ed3f4c5bcd9b042884ea580d2b2e52e1c68041600c196046aba'}, + {'liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch': + '46b09e441c3b59af535f20d8db0dee7f1d6a7ddd511175d252115b53cb8b86f8'}, + ], + }), + ('oddsratio', '2.0.1', { + 'checksums': ['2097e7a8bf623379d55652de5dce4946d05163e85d30df50dc19055962bf60b5'], + }), + ('mltools', '0.3.5', { + 'checksums': ['7093ffceccdf5d4c3f045d8c8143deaa8ab79935cc6d5463973ffc7d3812bb10'], + }), + ('h2o', '3.42.0.2', { + 'checksums': ['9aae531f4eb3ed90b5d3e31a9030ba0ca7c6bdc6e3c84aec2a5c4e3eb562929b'], + }), + ('mlegp', '3.1.9', { + 'checksums': ['63296d17a162fdce0958b10f45cb7d5dab4b3ee29340528d33cedcae08a040b3'], + }), + ('itertools', '0.1-3', { + 'checksums': ['b69b0781318e175532ad2d4f2840553bade9637e04de215b581704b5635c45d3'], + }), + ('missForest', '1.5', { + 'checksums': ['417055a03b02ad8359cf1bdc8f89d49531a3a8ee2c98edf90c8a01432f44838d'], + }), + ('bartMachineJARs', '1.2.1', { + 'checksums': ['9f7a20acf4aec249e16f83d81f5ec796aa718deb1b8bc24393fc0421eb8ce1c0'], + }), + ('bartMachine', '1.3.4.1', { + 'checksums': ['3b0a5250f5425a8efe460adcb58ea1342f1d845ae3a8db29dbf4806653884b89'], + }), + ('lqa', '1.0-3', { + 'checksums': ['3889675dc4c8cbafeefe118f4f20c3bd3789d4875bb725933571f9991a133990'], + }), + ('PresenceAbsence', '1.1.11', { + 'checksums': ['c63a6453783865b7c69c580a09a769e99390dd8b2e0f63e48fbfc86da3bee4b7'], + }), + ('GUTS', '1.2.5', { + 'checksums': ['9d983a566daa07d3e0036fe7011efe94f29e31a611493ba16bd316b61730a7b7'], + }), + ('GenSA', '1.1.10.1', { + 'checksums': ['9093384941b5626aae2acf4835b591875193a6000d1f0b212abeaf682652949b'], + }), + ('parsedate', '1.3.1', { + 'checksums': ['1fc31ab9813b61680abf4f4c2705b8f484d56d1d3ef256df84b342b628b6d1b1'], + }), + ('circular', '0.5-0', { + 'checksums': ['4bf4da5de29e555d1a7ae7ea64f8a5dda037e5c423f1078944f0bbb6eb9a7b92'], + }), + ('cobs', '1.3-5', { + 'checksums': ['7fae7da8f940975d544120c836e2d3b874f9b0cbab9631851ce986709f51c611'], + }), + ('resample', '0.6', { + 'checksums': ['1b958009b18c92a47971847c782af76952ea4e85d5f1e3e1e70fa35c67b95265'], + }), + ('MIIVsem', '0.5.8', { + 'checksums': ['a908f51e1598290d25864c358d57201bd50c1c40775d4d0405cbc8077bee61e1'], + }), + ('medflex', '0.6-10', { + 'checksums': ['bd89a8fe939f3becd71a9dab30fe27fa43c96572d8309d2c1a70633117d4cb33'], + }), + ('Rserve', '1.8-11', { + 'checksums': ['9dfb1d68493f8cee5d2e12a1bfa604404834e11809f4c908d65b9100a9af1b85'], + }), + ('spls', '2.2-3', { + 'checksums': ['bbd693da80487eef2939c37aba199f6d811ec289828c763d9416a05fa202ab2e'], + }), + ('Boruta', '8.0.0', { + 'checksums': ['38e75b1ebc8b2d1c54b3373a42529b819c7b4773fd4932f57bc9701d1e3e3dc7'], + }), + ('dr', '3.0.10', { + 'checksums': ['ce523c1bdb62a9dda30afc12b1dd96975cc34695c61913012236f3b80e24bf36'], + }), + ('CovSel', '1.2.1', { + 'checksums': ['b375d00cc567e125ff106b4357654f43bba3abcadeed2238b6dea4b7a68fda09'], + }), + ('tmle', '2.0.0', { + 'checksums': ['8693cab745d426260227d522d9113078d720b1ac0eb0931a47fa8f74aab82fa7'], + }), + ('ctmle', '0.1.2', { + 'checksums': ['e3fa0722cd87aa0e0b209c2dddf3fc44c6d09993f1e66a6c43285fe950948161'], + }), + ('BayesPen', '1.0', { + 'checksums': ['772df9ae12cd8a3da1d5b7d1f1629602c7693f0eb03945784df2809e2bb061b0'], + }), + ('inline', '0.3.19', { + 'checksums': ['0ee9309bb7dab0b97761ddd18381aa12bd7d54678ccd7bec00784e831f4c99d5'], + }), + ('BMA', '3.18.17', { + 'checksums': ['6d8c514fa179f8a48c2105b551a8a08e28ea4375d06150a4b8ab4ccda577daf5'], + }), + ('BCEE', '1.3.2', { + 'checksums': ['f0e0a6a4eb11213073aa2f0cd6c76d87e8b3965124d8ca509538eb3c128533a0'], + }), + ('bacr', '1.0.1', { + 'checksums': ['c847272e2c03fd08ed79b3b739f57fe881af77404b6fd087caa0c398c90ef993'], + }), + ('clue', '0.3-65', { + 'checksums': ['bdf8fdd35fb2b1c65d09766da79d930fa664a00aa497f03b636400eecb623ef8'], + }), + ('bdsmatrix', '1.3-6', { + 'checksums': ['f9c871d54378408902931792b3dbf8bda863d6aa67af6a0472a6ec1c420760bc'], + }), + ('fftwtools', '0.9-11', { + 'checksums': ['f1f0c9a9086c7b2f72c5fb0334717cc917213a004eaef8448eab4940c9852c7f'], + }), + ('imagerExtra', '1.3.2', { + 'checksums': ['0ebfa1eabb89459d774630ab73c7a97a93b9481ea5afc55482975475acebd5b8'], + }), + ('MALDIquant', '1.22.1', { + 'checksums': ['0a52a55dbe76a7e7ca50c5555fea4381eeda0c215c66e420d8dc9bfd2992411c'], + }), + ('threejs', '0.3.3', { + 'checksums': ['76c759c8b20fb34f4f7a01cbd1b961296e1f19f4df6dded69aae7f1bca80219c'], + }), + ('LaplacesDemon', '16.1.6', { + 'checksums': ['57b53882fd7a195b38bbdbbf0b17745405eb3159b1b42f7f11ce80c78ab94eb7'], + }), + ('rda', '1.2-1', { + 'checksums': ['37038a9131c9133519f5e64fa1a86dbe28b21f519cf6528503234648a139ae9a'], + }), + ('sampling', '2.10', { + 'checksums': ['fdec976ec0abfb5c690049d76f89ebcb8ab3650e2eb28a5b54c3984d17372775'], + }), + ('lda', '1.4.2', { + 'checksums': ['5606a1e1bc24706988853528023f7a004c725791ae1a7309f1aea2fc6681240f'], + }), + ('jiebaRD', '0.1', { + 'checksums': ['045ee670f5378fe325a45b40fd55136b355cbb225e088cb229f512c51abb4df1'], + }), + ('jiebaR', '0.11', { + 'checksums': ['adde8b0b21c01ec344735d49cd33929511086719c99f8e10dce4ca9479276623'], + }), + ('hdm', '0.3.1', { + 'checksums': ['ba087565e9e0a8ea30a6095919141895fd76b7f3c05a03e60e9e24e602732bce'], + }), + ('abe', '3.0.1', { + 'checksums': ['66d2e9ac78ba64b7d27b22b647fc00378ea832f868e51c18df50d6fffb8029b8'], + }), + ('SignifReg', '4.3', { + 'checksums': ['f755808fcb618582acb862729b20e267d9c2214f22e6e7a0c8d29073d8faa7b8'], + }), + ('bbmle', '1.0.25', { + 'checksums': ['86a8c69902fbf6caf337f9bc532afe89dc2a59dd24287a2423d781797010b255'], + }), + ('emdbook', '1.3.13', { + 'checksums': ['26044b7ea1b42304b4dfde48afa94dd487acf979da4db2bf670ba41222083c19'], + }), + ('SOAR', '0.99-11', { + 'checksums': ['d5a0fba3664087308ce5295a1d57d10bad149eb9771b4fe67478deae4b7f68d8'], + }), + ('rasterVis', '0.51.6', { + 'checksums': ['61bd0d19d045b50c6764f3a7c95ce1e734af9e5f964449825d002afe02109489'], + }), + ('tictoc', '1.2', { + 'checksums': ['f05ea4b4142a90b0dc5d10356be3748625ef86bbd0e4399c56455654165ff20c'], + }), + ('ISOcodes', '2022.09.29', { + 'checksums': ['4bae4fdf661a1c29694f9702240b84c933518ef70e66312cbaddaf35562d4fe5'], + }), + ('stopwords', '2.3', { + 'checksums': ['c5ec1c6ab1bad1786d87d7823d4b63abc94d2fd84ed7d8e985906e96fb6321b2'], + }), + ('janeaustenr', '1.0.0', { + 'checksums': ['b4c32ee1395ee4a8efe714c535c0fe578b0dbf5f3bb85b41fa5cc87569b8e8aa'], + }), + ('SnowballC', '0.7.1', { + 'checksums': ['753cf13f3206751662c03b1cf39bce9e680024f6d9f8503b836a83797181c034'], + }), + ('tokenizers', '0.3.0', { + 'checksums': ['24571e4642a1a2d9f4f4c7a363b514eece74788d59c09012a5190ee718a91c29'], + }), + ('hunspell', '3.0.3', { + 'checksums': ['fdaa1473a62dff2a5923b9bd958d87e546069ca22ce113f44e88c761338442f3'], + }), + ('topicmodels', '0.2-14', { + 'checksums': ['acd40ff8ea973692bd9e9acf175afc5c74ccf54b93297a0a054c15caa44b5cc9'], + }), + ('tidytext', '0.4.1', { + 'checksums': ['526750a2cc8ac7b65be1093f4c9186aa27f0a22f00023a6d6b3b878e1310c815'], + }), + ('splitstackshape', '1.4.8', { + 'checksums': ['656032c3f1e3dd5b8a3ee19ffcae617e07104c0e342fc3da4d863637a770fe56'], + }), + ('grImport2', '0.3-1', { + 'checksums': ['216a1a5bb18c7a7dfb13c6c162228c6c81c45408f04d7784b6e60ae6cd4745d2'], + }), + ('preseqR', '4.0.0', { + 'checksums': ['0143db473fb9a811f9cf582a348226a5763e62d9857ce3ef4ec41412abb559bc'], + }), + ('idr', '1.3', { + 'checksums': ['6b3910dc48495439cd01828f8999823864a6712f73560ee3e6c903065c67d1e4'], + }), + ('entropy', '1.3.1', { + 'checksums': ['6f5a89f5ce0e90cbed1695b81259326c976e7a8f538157e223ee5f63b54412b8'], + }), + ('kedd', '1.0.3', { + 'checksums': ['38760abd8c8e8f69ad85ca7992803060acc44ce68358de1763bd2415fdf83c9f'], + }), + ('HiddenMarkov', '1.8-13', { + 'checksums': ['7186d23e561818f3e1f01376a4fb2af9ccee775ce5afc1e3175f3b07a81db515'], + }), + ('lmerTest', '3.1-3', { + 'checksums': ['35aa75e9f5f2871398ff56a482b013e6828135ef04916ced7d1d7e35257ea8fd'], + }), + ('loo', '2.6.0', { + 'checksums': ['66da60fdf53a62cbc93797fa696a4cc43bce77f1721dd4bc1a58d25b3f981210'], + }), + ('RcppParallel', '5.1.7', { + 'checksums': ['f9c30eb9ce1abffc590825d513d6d28dcbe970e36032dd7521febf04e905b29c'], + }), + ('StanHeaders', '2.26.28', { + 'checksums': ['938a8d96d3a64357b5fee73eea2923a2a2292a062ff516ea8c720756ec7e3de8'], + }), + ('V8', '4.4.0', { + 'installopts': '--configure-vars="INCLUDE_DIR=$CPATH LIB_DIR=$LIBRARY_PATH"', + 'preinstallopts': "export CPATH=$EBROOTNODEJS/include/node:$CPATH && ", + 'checksums': ['635bc20fb90206c357b0eba53d8af0789783241d300f0190fce9d6d0614c8f46'], + }), + ('QuickJSR', '1.0.7', { + 'checksums': ['3161c243fed64ea215084b44141bea9ee416fa1ef3910aeb78abe55f3d3e9893'], + }), + ('rstan', '2.32.3', { + 'checksums': ['a29d9e1abf6d7c7b5ce98e10e60f14f18bad076aff4c7affa4b6263945ba549d'], + }), + ('Rborist', '0.3-5', { + 'checksums': ['30cf41ae646e53ef5e4be0c924eca9c783ccec9e771aeba1429f801009be8abc'], + }), + ('VSURF', '1.2.0', { + 'checksums': ['c027b1e19762f1eaf4a559c2592f3530210fefd21ee3d7c787c73b776c683393'], + }), + ('mRMRe', '2.1.2.1', { + 'checksums': ['d53c392e82a437005b71d0e8b97350d0237608fffafe087700fe7f6770167fd9'], + }), + ('dHSIC', '2.1', { + 'checksums': ['94c86473790cf69f11c68ed8ba9d6ae98218c7c69b7a9a093f235d175cf83db0'], + }), + ('ggsci', '3.0.0', { + 'checksums': ['8901316516d78f82a2a8685d93ba479424bcfd8cb5e28a28adbd50e68964e129'], + }), + ('ggsignif', '0.6.4', { + 'checksums': ['112051af425a0c0f2998ce187dacad066bc16f55af01e3e7b76d62ff6954b20a'], + }), + ('corrplot', '0.92', { + 'checksums': ['e8c09f963f9c4837036c439ebfe00fa3a6e462ccbb786d2cf90850ddcd9428bd'], + }), + ('rstatix', '0.7.2', { + 'checksums': ['e0c6f5ab1d9c5d84713defabc5d149aad3d55944cffdb903cc128b694e5221a1'], + }), + ('ggfan', '0.1.3', { + 'checksums': ['5c888b203ecf5e3dc7a317a790ca059c733002fbca4b4bc1a4f62b7ded5f70dc'], + }), + ('ggpubr', '0.6.0', { + 'checksums': ['2e6ec5d8151991d17ef8832259cf545fa0d1a50b326ba8c1c4657700171df774'], + }), + ('yaImpute', '1.0-33', { + 'checksums': ['58595262eb1bc9ffeeadca78664c418ea24b4e894744890c00252c5ebd02512c'], + }), + ('intrinsicDimension', '1.2.0', { + 'checksums': ['6cc9180a83aa0d123f1e420136bb959c0d5877867fa170b79536f5ee22106a32'], + }), + ('patchwork', '1.1.3', { + 'checksums': ['e976424f4bd88e075f2ca6836db2aa1eb5fa7ad6a20ad0a34a4d5047d59ad71e'], + }), + ('leiden', '0.4.3', { + 'checksums': ['6a464b4b860e621749b3b701bb7ceb07e23c1a36be241c3e13b18105eb980938'], + }), + ('sctransform', '0.4.1', { + 'checksums': ['5f6be7f8be543e4c32c8007207b603a750881459370b7bb5afd63e8c8fabf171'], + }), + ('packrat', '0.9.2', { + 'checksums': ['69df5943257e6c4d06f3d907241b668b53dedece72158ca935260b8b8e1672d7'], + }), + ('colourpicker', '1.3.0', { + 'checksums': ['c7f2618cd1ae1f7ac15aee072c648e6494dfff6714e13dc7cd1da993d1102510'], + }), + ('ggExtra', '0.10.1', { + 'checksums': ['6879edfe8e3905a2c299cbd18777422223ad30042bc6e20614ca5109a75de82c'], + }), + ('findpython', '1.0.8', { + 'checksums': ['0f8a90cbafd4949c0333a86808383a358fb7ec3268953d8a4887d5d22264cdb7'], + }), + ('argparse', '2.2.2', { + 'checksums': ['b62c9bf5e6ca35fb7a2e614a916815c04cbf6c6db3f89f99b4df76470a4a856d'], + }), + ('intergraph', '2.0-3', { + 'checksums': ['354640a8ac4a1186e6d229b6c25f0535be3e456c13b1e7224a1632d3a346a7e8'], + }), + ('ggnetwork', '0.5.12', { + 'checksums': ['74368662c1a225cdefc8addf606b398f14dafeff03faac56c15aa5e14819e9cd'], + }), + ('qqman', '0.1.9', { + 'checksums': ['3f6a931771d375174b78f220471ddd601def9b5c69631931b0992ebbc8c5bc13'], + }), + ('rstantools', '2.3.1.1', { + 'checksums': ['f260ee54c11461d0f80f447e6fa6909337ede09806cd48f4a89ae9d59804e22e'], + }), + ('distributional', '0.3.2', { + 'checksums': ['c883d633398233aee5a8ca6b587687f765bdfe0732a84e4961e7f71ac0d008f8'], + }), + ('posterior', '1.5.0', { + 'checksums': ['4a10307fcae321f2cd4ca7871504a0c6c9152b8473dc9a033721e8dcda18e2de'], + }), + ('bayesplot', '1.10.0', { + 'checksums': ['bb4cb92b1ae4cf8ae5f4b5cb092aba34af3d820d137e1f2265cca8f3e85113ff'], + }), + ('dygraphs', '1.1.1.6', { + 'checksums': ['c3d331f30012e721a048e04639f60ea738cd7e54e4f930ac9849b95f0f005208'], + }), + ('renv', '1.0.3', { + 'checksums': ['985a1432144a662d34af4b55a3e38c4fc030551ba077f68541af91a1a70f5eb4'], + }), + ('rsconnect', '1.1.1', { + 'checksums': ['77bce6f08ed376be1028b05db3526bb4587aa024d86b9117ab30af177c5608ed'], + }), + ('shinystan', '2.6.0', { + 'checksums': ['a084856a2d66d8744f2c72e3e19ca35e600a508ed7ef1f7ebed8c7fc0738d529'], + }), + ('optimx', '2023-10.21', { + 'checksums': ['0d732d5604c26af59cfb95b80ed4e226c9c10422e2d82a6cc06b92f9ba6a44b5'], + }), + ('gamm4', '0.2-6', { + 'checksums': ['57c5b66582b2adc32f6a3bb6a259f5b95198e283a96d966a6007e8e48b380c89'], + }), + ('memisc', '0.99.31.6', { + 'checksums': ['52336b4ffc6e60c3ed10ccc7417231582b0d2e4c5c3b2184396a7d3ca9c1d96e'], + }), + ('mclogit', '0.9.6', { + 'checksums': ['9adc5f6d8649960abe009c30d9b4c448ff7d174c455a594cbf104a33d5a36f69'], + }), + ('projpred', '2.7.0', { + 'checksums': ['b9e8336c1da7eea958e8aca8ecdb9e2aea1a3d9a3032bb288914db0fd69ecd37'], + }), + ('brms', '2.20.4', { + 'checksums': ['00a6f3ea690c4e6b3e645e0a366d8a93c9bd51151b9376d01011ab95e332072f'], + }), + ('drgee', '1.1.10', { + 'checksums': ['e684f07f7dfec922380d4202922c11094f859721f77b31ff38b0d35d0f42c743'], + }), + ('stdReg', '3.4.1', { + 'checksums': ['285335dbe29b6898641e1151ab2f06acf76c6f4d6fbeadd66d151c25d7e38a74'], + }), + ('mcmcse', '1.5-0', { + 'checksums': ['4a820dc22c48efd32b7f9d1e1b897b4b3f165cd64b2ff85ba7029621cf9e7463'], + }), + ('copCAR', '2.0-4', { + 'checksums': ['8b4ed53c58a665f70e48bdca689a992a81d5ecb5a6051ca7361d3870e13c77f3'], + }), + ('batchmeans', '1.0-4', { + 'checksums': ['8694573009d9070a76007281407d3314da78902e122a9d8aec1f819d3bbe562c'], + }), + ('ngspatial', '1.2-2', { + 'checksums': ['3fa79e45d3a502a58c1454593ec83dfc73144e92b34c14f617a6126557dd0d26'], + }), + ('BIGL', '1.8.0', { + 'checksums': ['52a3eace87d73e3088d2eacc37c1840ca0436f6060498cc2520a2d9f9955dff3'], + }), + ('drugCombo', '1.2.1', { + 'checksums': ['9a605c655c159604033558d757711e6d83d33dfc286c1280f722d4cb7d130f80'], + }), + ('betareg', '3.1-4', { + 'checksums': ['5106986096a68b2b516215968158589b71969ce7912879253d6e930355a18101'], + }), + ('unmarked', '1.3.2', { + 'checksums': ['a1d21619c8627419e09646cc12e09457c0ea8989caf2e674d032e59b310cf883'], + }), + ('maxlike', '0.1-10', { + 'checksums': ['0c0af4c44140e6037b6b9700013fe2b87f750b4af41b7646b37e16bd7feb5133'], + }), + ('coxme', '2.2-18.1', { + 'checksums': ['aef691d74ee75095c43d7b6ab27e01641382cfb349a8eefad972c745ac0531f5'], + }), + ('AICcmodavg', '2.3-2', { + 'checksums': ['899e5edb0858c218184d01b7de32dee991090c6593ee60669767b96b7037f353'], + }), + ('pacman', '0.5.1', { + 'checksums': ['9ec9a72a15eda5b8f727adc877a07c4b36f8372fe7ed80a1bc6c2068dab3ef7c'], + }), + ('spaa', '0.2.2', { + 'checksums': ['a5a54454d4a7af473ce797875f849bd893005cb04325bf3e0dbddb19fe8d7198'], + }), + ('maxnet', '0.1.4', { + 'checksums': ['fd21e5ecf3c1ac00ef1bbe79fab4cdd62789e0c4c45f126f1b64bda667238216'], + }), + ('oai', '0.4.0', { + 'checksums': ['f540de066de5538e303cd535cbd2e771b40474bc2c6e8d08a4894a868543ee33'], + }), + ('wellknown', '0.7.4', { + 'checksums': ['483e6fc43edf09ed583e74ce5ca7e2d7838ef8a32291e06d774c37546eed1a34'], + }), + ('rgbif', '3.7.8', { + 'checksums': ['c0d3b84ce6fbbadf007c16ea93c3037faf451736d8ced5b0b9f529b53685b1a3'], + }), + ('rgdal', '1.6-7', { + 'checksums': ['555cedfdadb05db90b061d4b056f96d8b7010c00ea54bc6c1bbcc7684fadae33'], + }), + ('rgeos', '0.6-4', { + 'checksums': ['9d03c4de96fd3fad55ff8d1ff8113dcaaa00f15d9d0588e54c9f91751bcede11'], + }), + ('mapproj', '1.2.11', { + 'checksums': ['db2d201cc939de26717566066bf44225a967ccde6fc34731af845f03c086347d'], + }), + ('rbison', '1.0.0', { + 'checksums': ['9957e5f85ce68f5dd0ddc3c4b2b3c9d2f52d6f37587e1022ab8a44863534a83c'], + }), + ('rebird', '1.3.0', { + 'checksums': ['b238d3f246aa0249145894e1f3a90f46902f6615fc2f23b24c99bb5feecc55d3'], + }), + ('rvertnet', '0.8.2', { + 'checksums': ['2de9a3ec33a213c7592b49cca1d510a25aef0625369376d9b1b4e5d0da519226'], + }), + ('ridigbio', '0.3.7', { + 'checksums': ['af2a90a8a90fbede4cf2178b758f00cc13066f4d0bd87dac8d156809050a6d59'], + }), + ('spocc', '1.2.2', { + 'checksums': ['af4b398dc02522629b9fee697ccf640b7654330419a8f94cb5d1c7d17c8784fc'], + }), + ('spThin', '0.2.0', { + 'checksums': ['2e997afb79a2a990eded34c71afaac83986669cfa9ac51b15ae3f2b558902048'], + }), + ('RPostgreSQL', '0.7-5', { + 'checksums': ['6b5401ee55bd948ae7bc84520d789ceb422533a7d5e5bd6e10e3b54447f29fa1'], + }), + ('fasterize', '1.0.5', { + 'checksums': ['d44f101aec29aee285c4c7b578e26d11b6add423336ace90a7c22e07cfc1c3b4'], + }), + ('BIEN', '1.2.6', { + 'checksums': ['fa7a25d89f26c10686fb4ab4d0aa704beb50dc44b173ff56abe4ab3e5991f99f'], + }), + ('rangeModelMetadata', '0.1.5', { + 'checksums': ['289620500522d489aafbb03c85f68182ef0a6701fed5f9d09b55fae337e2647b'], + }), + ('ENMeval', '2.0.4', { + 'checksums': ['6d9f3c460fa7ab3131cede904fcb9280cf69f4fdd43f67115a3abcb8ed5b64d1'], + }), + ('plotmo', '3.6.2', { + 'checksums': ['cde33a8ec558b12d8e11d7d0531e73f6678a25ee589b79897d2fc425a3fd353c'], + }), + ('earth', '5.3.2', { + 'checksums': ['c844d75edf9a2706a911bb05ed4287aad9acf6f3fed357e037763a300eac0bea'], + }), + ('mda', '0.5-4', { + 'checksums': ['f25f7f28807d0fa478b1b55eb9d026ebc30577d9d5ff288f9abfe1f3fdb8a759'], + }), + ('xgboost', '1.7.5.1', { + 'checksums': ['4ec0833f206f84e5983e9f373ea64903bec488f751fba6f75a6f4702b1c965bc'], + }), + ('biomod2', '4.2-4', { + 'checksums': ['c28163075df90a90fc1939e9ff24d40bace7de611ff7ddfe027e0ff980e7c64f'], + }), + ('poLCA', '1.6.0.1', { + 'checksums': ['ed8c60a42bff0402c9ba2f9ce1422dd171e711c1a64498c4d96010ddb29f6b16'], + }), + ('PermAlgo', '1.2', { + 'checksums': ['aa2c774d6c6dcfeec882c1936e8723ef49bd36030fb10c17ca60bb9d4a519443'], + }), + ('coxed', '0.3.3', { + 'checksums': ['d0d6cb8fea9516b3c63b34d0d81f3804c18a07f97a83e51555575c8ed4c75626'], + }), + ('testit', '0.13', { + 'checksums': ['90d47168ab6bdbd1274b600b457626ac07697ce09792c92b2043be5f5b678d80'], + }), + ('NISTunits', '1.0.1', { + 'checksums': ['eaccd68db5c73d6a089ce5b323cdd51bc6a6a58ce467987158ba8c9be6a0a94e'], + }), + ('celestial', '1.4.6', { + 'checksums': ['9f647f41465ac65b254717698f1978871c378ad8e6ccaa693abf579437069abe'], + }), + ('RPMM', '1.25', { + 'checksums': ['f04a524b13918062616beda50c4e759ce2719ce14150a0e677d07132086c88c8'], + }), + ('RefFreeEWAS', '2.2', { + 'checksums': ['de2812f166caabf6ea01c0533402e5cd9d8a525a2a7583e4757decf22319caab'], + }), + ('wordcloud', '2.6', { + 'checksums': ['53716954430acd4f164bfd8eacd7068a908ee3358293ded6cd992d53b7f72649'], + }), + ('JADE', '2.0-4', { + 'checksums': ['d4b3d65a33cae454d3ab13343bceabfb3f6b8004ac64ae7bd86dee92a1cd2055'], + }), + ('awsMethods', '1.1-1', { + 'checksums': ['50934dc20cf4e015f1304a89de6703fed27e7bd54c6b9fc9fb253cdf2ecb7541'], + }), + ('aws', '2.5-3', { + 'checksums': ['154ed68785de8c4a02db1916dfe50862cf544865901936e864207ada777e5108'], + }), + ('ruv', '0.9.7.1', { + 'checksums': ['a0c54e56ba3d8f6ae178ae4d0e417a79295abf5dcb68bbae26c4b874734d98d8'], + }), + ('mhsmm', '0.4.21', { + 'checksums': ['293544afb194934b1d58cf88c6f8c372f537745514b6e428cf83ae62e87d2bba'], + }), + ('dbarts', '0.9-23', { + 'checksums': ['e1ac65fd89c321895d4f0e77d9cd8dcda5f1103485008afd4e19e6c9137557a3'], + }), + ('proftools', '0.99-3', { + 'checksums': ['e034eb1531af54013143da3e15229e1d4c2260f8eb79c93846014db3bdefb724'], + }), + ('NCmisc', '1.2.0', { + 'checksums': ['26fcfbc79810f23a28389a5ce5519e6ddc2470c5e924ba8cf4dd19a1b0fd9f83'], + }), + ('reader', '1.0.6', { + 'checksums': ['905c7c5a1b035ac8213fc533fa26e511abfeea40bd22e3edfde42a49074e88f4'], + }), + ('gnumeric', '0.7-10', { + 'checksums': ['f6fcd9012f2fa777127c86ba520d8dc834f4ea746a6e29623edd072479191c75'], + }), + ('tcltk2', '1.2-11', { + 'checksums': ['ad183ae3b7190501504a0589e0b3be480f04267303e3384fef00987446a37dc5'], + }), + ('readODS', '2.1.0', { + 'checksums': ['3f3e557ac7cadeda4759c51f866ce9a942cb21a2b3dd24e55a082fc7d300d7fe'], + }), + ('nortest', '1.0-4', { + 'checksums': ['a3850a048181d5d059c1e74903437569873b430c915b709808237d71fee5209f'], + }), + ('EnvStats', '2.8.1', { + 'checksums': ['12952b9eaa64b7bdbaaa5c6b7acb3aa1028ddfa4e5de7ddfea54f900c452d6a6'], + }), + ('outliers', '0.15', { + 'checksums': ['cc31d7f2faefd2c3a27f8ce78c7e67d3b321dcd6690292fad2468125e5e635fb'], + }), + # elementR is too old and doesn't work anymore with other extensions, such as gdata and readODS + # ('elementR', '1.3.7', { + # 'checksums': ['4275f88f372a2efe96ccd0afc20f4f12be92f28c7db35c68b80bb0ffb2c2ab07'], + # }), + ('gWidgets2', '1.0-9', { + 'checksums': ['d4d9ef7b2788efeb8209aa8dd610af4cd86286392fbdf9ea70bcfeafda95d4c5'], + }), + ('gWidgets2tcltk', '1.0-8', { + # need to run installation via xvfb-run to avoid problems on headless systems: + # no DISPLAY variable so Tk is not available + # [tcl] invalid command name "font" + 'preinstallopts': "xvfb-run ", + # skip 'import' check with library(gWidgets2tcltk), since it also fails on headless systems... + 'modulename': False, + 'checksums': ['10399cc636eeeb5484c3379970c37c56df10d979bf866a35b66d0c75b7222c0a'], + }), + ('mgsub', '1.7.3', { + 'checksums': ['c9ae2560fe2690bedc5248af3fc89e7ef2bc6c147d46ced28f9824584c3791d5'], + }), + ('ie2misc', '0.9.1', { + 'checksums': ['f1db0c66c8fa05e99c4059c1799abc3eb7effd7113baf03f38d26853ac05c425'], + }), + ('assertive.base', '0.0-9', { + 'checksums': ['4bf0910b0eaa507e0e11c3c43c316b524500c548d307eb045d6f89047e6ba01e'], + }), + ('assertive.properties', '0.0-5', { + 'checksums': ['b68954f53082561f0242682611bf3373e0bf30d8ac2256d82474edc5f992f4dd'], + }), + ('assertive.types', '0.0-3', { + 'checksums': ['ab6db2eb926e7bc885f2043fab679330aa336d07755375282d89bf9f9d0cb87f'], + }), + ('assertive.numbers', '0.0-2', { + 'checksums': ['bae18c0b9e5b960a20636e127eb738ecd8a266e5fc29d8bc5ca712498cd68349'], + }), + ('assertive.strings', '0.0-3', { + 'checksums': ['d541d608a01640347d661cc9a67af8202904142031a20caa270f1c83d0ccd258'], + }), + ('assertive.datetimes', '0.0-3', { + 'checksums': ['014e2162f5a8d95138ed8330f7477e71c908a29341697c09a1b7198b7e012d94'], + }), + ('assertive.files', '0.0-2', { + 'checksums': ['be6adda6f18a0427449249e44c2deff4444a123244b16fe82c92f15d24faee0a'], + }), + ('assertive.sets', '0.0-3', { + 'checksums': ['876975a16ed911ea1ad12da284111c6eada6abfc0118585033abc0edb5801bb3'], + }), + ('assertive.matrices', '0.0-2', { + 'checksums': ['3462a7a7e11d7cc24180330d48cc3067cf92eab1699b3e4813deec66d99f5e9b'], + }), + ('assertive.models', '0.0-2', { + 'checksums': ['b9a6d8786f352d53371dbe8c5f2f2a62a7866e30313f268e69626d5c3691c42e'], + }), + ('assertive.data', '0.0-3', { + 'checksums': ['5a00fb48ad870d9b3c872ce3d6aa20a7948687a980f49fe945b455339e789b01'], + }), + ('assertive.data.uk', '0.0-2', { + 'checksums': ['ab48dab6977e8f43d6fffb33228d158865f68dde7026d123c693d77339dcf2bb'], + }), + ('assertive.data.us', '0.0-2', { + 'checksums': ['180e64dfe6339d25dd27d7fe9e77619ef697ef6e5bb6a3cf4fb732a681bdfaad'], + }), + ('assertive.reflection', '0.0-5', { + 'checksums': ['c2ca9b27cdddb9b9876351afd2ebfaf0fbe72c636cd12aa2af5d64e33fbf34bd'], + }), + ('assertive.code', '0.0-4', { + 'checksums': ['2f820474ed20e06f65b284962c87cd1e85220a11cc7fcde09716f0eee5821387'], + }), + ('assertive', '0.3-6', { + 'checksums': ['c403169e83c433b65e911f7fd640b378e2a4a4765a36063584b8458168a4ea0a'], + }), + ('rdrop2', '0.8.2.1', { + 'checksums': ['b9add765fe8e7c966f0d36eef939a9e38f253958bd2a3c656b890cbb0366300b'], + }), + ('Exact', '3.2', { + 'checksums': ['53b4e20cbb57615970c572fc4e7a780a510bde8b5deadec3880095f6e17a6328'], + }), + ('lmom', '3.0', { + 'checksums': ['4b0ae8638a63b45ddedfd65c15e3206d34e947a2b5d31e9aa8c55446d69a0291'], + }), + ('gld', '2.6.6', { + 'checksums': ['ea23e9781207b5d47ed04e4d5758d9652cab5d1eedcf9fbc9c2ee4d3babffdc4'], + }), + ('DescTools', '0.99.50', { + 'checksums': ['1b9cf09de7c7625c30d2daca92b4f798476f10907d531267e773d379f6828eab'], + }), + ('orthopolynom', '1.0-6.1', { + 'checksums': ['ec4a6ed266532f2f6d37a4ca6bd1b74c1df28a8c2caeab60e5d6af15bdbfe2c5'], + }), + ('gaussquad', '1.0-3', { + 'checksums': ['a3337ce52bc53435cb4565a38bf48b72b384be397d2e86bb66f62973004dc810'], + }), + ('nlsem', '0.8-1', { + 'checksums': ['0674ec2a1ae7e50b08ee1b156674c2f2100258b14d6a9068f7dd6ad1ee128377'], + }), + ('tableone', '0.13.2', { + 'checksums': ['b1cf15579abd4240e24435d2d9aad255c839d2a0293e28cb2eef0c808c4727af'], + }), + ('jstable', '1.1.2', { + 'checksums': ['e9f6a4eab1be75fab63d9de5cc496b1812e2ec2d3e1d6a006ae6a9a6d2fd29ab'], + }), + ('RCAL', '2.0', { + 'checksums': ['10f5f938a8322d8737159e1e49ce9d12419a5130699b8a19c6ca53d6508da8cc'], + }), + ('stargazer', '5.2.3', { + 'checksums': ['208e9b48a11cf56ce142731c204f3d2bcb5b68719f84309a36362cd925414265'], + }), + ('sensemakr', '0.1.4', { + 'checksums': ['6a1354f05392fa9343b90f69a54022c995651fb3c3d05cb08fa088ef52258caf'], + }), + ('CompQuadForm', '1.4.3', { + 'checksums': ['042fc56c800dd8f5f47a017e2efa832caf74f0602824abf7099898d9708660c4'], + }), + ('nonnest2', '0.5-6', { + 'checksums': ['b59144f50fb264fd0d40ee770bf25047bf0f37fa154620d8fe0a91c0065061e8'], + }), + ('blavaan', '0.5-2', { + 'checksums': ['f3523ab082a0db524719c32ddc3397a7798ba146766356ac134c3973acc40758'], + }), + ('mathjaxr', '1.6-0', { + 'checksums': ['ecc47607111b788d84789459af7f4f9102719f98640b7a23bd5a4eb1a6d3c179'], + }), + ('metadat', '1.2-0', { + 'checksums': ['f0cce5e30c3d256eaf5a41e4f52ffc7108e195016a4b99409e0ab4c2ef58f5b8'], + }), + ('metafor', '4.4-0', { + 'checksums': ['62aca0c70b44205e885cf55f6cfb56c37efff74bdef79dbabd727d629d3087d4'], + }), + ('RNifti', '1.5.0', { + 'checksums': ['32e4dfd35643932e0f2021b22cfc26cedff51dff13b940d9a3abe6282bf5e905'], + }), + ('oro.nifti', '0.11.4', { + 'checksums': ['efe4f5d2c2e37ff6c3e9250f54ef775e4d452c1334f781f22f219ed53148b606'], + }), + ('fmri', '1.9.12', { + 'checksums': ['d8b55f8867bb0487d1a8241b340099c41d990ae5aa49768b2dc0f9db58af65b3'], + }), + ('linkcomm', '1.0-14', { + 'checksums': ['36f1557c65d862fc87635eedfad77f18a5deb66da00895e50e2d5eac0f23b597'], + }), + ('rnetcarto', '0.2.6', { + 'checksums': ['4f28ae62748654cb6f90e1ffa17b05bb8b89eb6a20262d9c5d39cb862f71dc91'], + }), + ('DEoptim', '2.2-8', { + 'checksums': ['631eabdcf26ec25a759651f699db1971beca3ae193c7fbd1c63a78248fdbf54c'], + }), + ('optextras', '2019-12.4', { + 'checksums': ['59006383860826be502ea8757e39ed94338f04d246c4fc398a088e004d8b13eb'], + }), + ('setRNG', '2022.4-1', { + 'checksums': ['61c06e6bd6b43c295472c6990266fe87ca41e57db04d3460e756a35ef24e0824'], + }), + ('Rvmmin', '2018-4.17.1', { + 'checksums': ['55000ac4ff57d42f172c46c7d6b0a603da3b65866d6440d6b32bac4d2b81814e'], + }), + ('Rcgmin', '2022-4.30', { + 'checksums': ['2684b8e7fb970da2afbc00e482031cf4447416249d04c4c1740400ad112fb911'], + }), + ('optimr', '2019-12.16', { + 'checksums': ['73b1ed560ffd74599517e8baa4c5b293aa062e9c8d50219a3a24b63e72fa7c00'], + }), + ('DMCfun', '2.0.2', { + 'checksums': ['430cbc18f17db11a7941e6a8274a0eefbb8a6b0bdac8800970530d60d5881fde'], + }), + ('miceadds', '3.16-18', { + 'checksums': ['dbc56cd2b20aaaaa69ea28c15cfd61d48d072fe9c0dc8e392c81a569e280cf75'], + }), + ('visdat', '0.6.0', { + 'checksums': ['104acdbb9d41167b861ab24de0e1e1e14f61c1b476bac112fcbc6e47c157e598'], + }), + ('UpSetR', '1.4.0', { + 'checksums': ['351e5fee64204cf77fd378cf2a2c0456cc19d4d98a2fd5f3dac74b69a505f100'], + }), + ('norm', '1.0-11.1', { + 'checksums': ['c2ffe6c30fc203337bde49ef630a740141604d8e648c558e58c20116c47963bc'], + }), + ('naniar', '1.0.0', { + 'checksums': ['c2eda97de603e2daf4c1c5d12f9c9a65635910833a3c669e08e344e90d9394f4'], + }), + ('stringdist', '0.9.10', { + 'checksums': ['6fd42e0b7ff25843ca7f45acf9a183facfe14a6cde2dc7a97ef7126ab0f06ce8'], + }), + ('image.binarization', '0.1.3', { + 'checksums': ['ecc844bdd9bf15b88ce1e1afc8321c177bdc8ec32618c22102b1e8b02b36e00e'], + }), + ('lassosum', '0.4.5', { + 'source_urls': ['https://github.com/tshmak/%(name)s/releases/download/v%(version)s/'], + 'sources': ['%(name)s_%(version)s.tar.gz'], + 'checksums': ['18c0d0b5022bcf81a9bf1b3b6647da3e080f221828b473ea2a45a9bf98474fbc'], + }), + ('lslx', '0.6.11', { + 'checksums': ['373cfb1e79174b568dac254fab02d99bf79b830218bf18f0cc592af6fef853d6'], + }), + ('truncnorm', '1.0-9', { + 'checksums': ['5156acc4d63243bf95326d6285b0ba3cdf710697d67c233a12ae56f3d87ec708'], + }), + ('Rsolnp', '1.16', { + 'checksums': ['3142776062beb8e2b45cdbc4fe6e5446b6d33505253d79f2890fe4178d9cf670'], + }), + ('regsem', '1.9.5', { + 'checksums': ['7392bd644efe82f96da0df470a962de398f1d0162273cba1ff31c2ecd7f17a53'], + }), + ('semPLS', '1.0-10', { + 'checksums': ['cb587ccfdaf970f426dc7146035c7e010b1c51c17bf4fc089fd796eda58db460'], + }), + ('GxEScanR', '2.0.2', { + 'checksums': ['6d42fd15d83dd1491405b282d26fa472f9f9902a9dc68836d6a48b459ada6a4c'], + }), + ('admisc', '0.33', { + 'checksums': ['3911bea32326bfc2e19d4f47d05e8ad7260da36fa2ae0bfde03540195081dbaa'], + }), + ('polycor', '0.8-1', { + 'checksums': ['f05f53e0b5c992de0e5b4c6b2e998148cf83310358821e1bba180d81face0509'], + }), + ('multipol', '1.0-9', { + 'checksums': ['4ec305565c214872705f7d5ea4928c8761750663d664a77f1676d81a1ca0c632'], + }), + ('symmoments', '1.2.1', { + 'checksums': ['9a6be1f8fe44f6ab5a1790e870fd8b18de1686a48a14a9fca2d035bfb5458672'], + }), + ('rngWELL', '0.10-9', { + 'checksums': ['9969cc10be6d18155d2b2de93381c52e7f720c2b1b3f2554fa8bfa84ceb7cacb'], + }), + ('randtoolbox', '2.0.4', { + 'checksums': ['94da14953e4ffc7981d7a9398622082c4eda3bd9d912d1437b527d949da39e4b'], + }), + ('TruncatedNormal', '2.2.2', { + 'checksums': ['aef567e8962a64d1afbdfd98ab8f385f32966c3c42acb54ee20f02dceab18e15'], + }), + ('cSEM', '0.5.0', { + 'checksums': ['25ae115520aab7d916da9ded1f87b8519c4e15101c4adef2284c51eb03d81728'], + }), + ('cubelyr', '1.0.2', { + 'checksums': ['18b10f1fe561305a1e115a438460264b88b301b3e8c086b931500a798be39b94'], + }), + ('furrr', '0.3.1', { + 'checksums': ['0d91735e2e9be759b1ab148d115c2c7429b79740514778828e5dab631dc0e48b'], + }), + ('broom.mixed', '0.2.9.4', { + 'checksums': ['7631cd29316a32050b9e72057754e053d7f9064a75900bb7e69b29ebca6c60b2'], + }), + ('DiceKriging', '1.6.0', { + 'checksums': ['ab5d1332809f2bb16d156ed234b102eb9fbd6de792e4291f9f6ea4652215cb49'], + }), + ('grf', '2.3.1', { + 'checksums': ['151878724a99d516fe3824299274f194e6c67c4bacc6f4cba9adfd64bc5b1c7c'], + }), + ('twang', '2.5', { + 'checksums': ['fc355527c57e4f6e0f60d26d7c690c4475fcd5fb165d125fea7cc6b9fafc4ce5'], + }), + ('neuralnet', '1.44.2', { + 'checksums': ['5f66cd255db633322c0bd158b9320cac5ceff2d56f93e4864a0540f936028826'], + }), + ('PCAmatchR', '0.3.3', { + 'checksums': ['5dc9d8bb4c0020b5e51a53a4fa71afa9adc6b907ea618b231f5cfc2877a49779'], + }), + ('origami', '1.0.7', { + 'checksums': ['b44034541ac358e0686682684c40e9a1de8d78c7913e56e4d3dbe41a2a55c62c'], + }), + ('hal9001', '0.4.3', { + 'checksums': ['f2489e7a0a16db6dc65da8ce13bfb7f0854e6f303c9ec05f6158d46c66b6588c'], + }), + ('cobalt', '4.5.1', { + 'checksums': ['799b68805033a92900c5a884862a315670b0379ed8fc8c3f3c20c61e402c27c0'], + }), + ('CBPS', '0.23', { + 'checksums': ['ed8fe09b642db459a516bdeb03a49e718a7d5ad915cbf82400029508efe9b32d'], + }), + ('SBdecomp', '1.2', { + 'checksums': ['0be4e1c9e8bed87fd1712e62346a97148a1a295ff56981e832921cc390006e5c'], + }), + ('naturalsort', '0.1.3', { + 'checksums': ['cd38a9c5f323f61459e6096cdbf4493851d40497baf671af4f8dfe9a7c00e857'], + }), + ('lwgeom', '0.2-13', { + 'checksums': ['f0822888c029af48bf0238e3d20d82d3c75018e7e63728765a6220a6a0151c67'], + }), + ('finalfit', '1.0.6', { + 'checksums': ['c12be933408b0a8ec4962ebe5e9b404ef99a0b1eafccf7f646627458f4af4b9a'], + }), + ('broom.helpers', '1.14.0', { + 'checksums': ['cdc12f35bfed5d3da55ac7c7e09974584c8e4cb7a2147429c53b7b1176c76a93'], + }), + ('bigD', '0.2.0', { + 'checksums': ['bca9eb0c9a231b159b97650884b1a7a490bc3bf4edef11cc12db06fb15c6ff5f'], + }), + ('juicyjuice', '0.1.0', { + 'checksums': ['64f5418b2a4794b47f0525baaf101beb4f1374ea22f38d7d604f5118bdb6e12a'], + }), + ('reactR', '0.5.0', { + 'checksums': ['e79e3f37c2f28ae70c912efe203dbca35094ce017e497421c049e1221817f192'], + }), + ('reactable', '0.4.4', { + 'checksums': ['b4aae6be2dd85aaa5226067415e501abc139e99499bc62c539630eeafdaf6af2'], + }), + ('gt', '0.10.0', { + 'checksums': ['708a5f303ea131babd35e4ee5ce28dd30376001714eabcc967615f608fc76e3e'], + }), + ('gtsummary', '1.7.2', { + 'checksums': ['ddc225f1c3a629b47bce85b64229d2a99c46c7bf22b88a6bb6cc728e76d34b0a'], + }), + ('ncdf4', '1.21', { + 'checksums': ['2f5ae7def382c595c66b6ed0ea0529f8337108eb73de39939f9762f3fb21b30d'], + }), + ('geex', '1.1.1', { + 'checksums': ['a1aebb9f73ba8dfe26ee3dc7b0725ccb814b3db5358ba17e417bdfc7eb3e4143'], + }), + ('momentfit', '0.5', { + 'checksums': ['5f68e90545f123790d6ba149a21f07d1885361e4ca748cc93fb13bc443f7c720'], + }), + ('StatMatch', '1.4.1', { + 'checksums': ['0c5479c444cb831d21b6305fc4cdcdf2653723ff08a31427dc2b236ca4f25bc5'], + }), + ('stars', '0.6-4', { + 'checksums': ['424a4cfde4c3524f8bd44a1090c8d725662af8cc636f785d951d4aa45c130d57'], + }), + ('rapidjsonr', '1.2.0', { + 'checksums': ['62c94fcdcf5d0fbdfa2f6168affe526bf547c37c16d94e2e1b78d7bf608eed1f'], + }), + ('jsonify', '1.2.2', { + 'checksums': ['3745e962592f021a3deaed8b2f6b99c4f7181f28e095300a96d1c2b08af4af2f'], + }), + ('geometries', '0.2.3', { + 'checksums': ['642fd7b5b98be3197616b38c5eb7e59f93859ad327800ab8af65b8d5b18a9e77'], + }), + ('sfheaders', '0.4.3', { + 'checksums': ['a3a11b7297de2c85405fbdfcb6b47462cb053b727ef7a8d9ec9bd5977a8e4348'], + }), + ('geojsonsf', '2.0.3', { + 'checksums': ['275ca14672d982e6a95884515f49d8a0aad14f3be62ea01b675a91b0bffb46d1'], + }), + ('leaflet.providers', '2.0.0', { + 'checksums': ['c5ceeadc8088c9840a8249f0347501cdba0119be97219a01ea2050d1dd4a8666'], + }), + ('leaflet', '2.2.0', { + 'checksums': ['b801ef8d78c94a7337858499f0ed9e6088f08f40fa841603368dee0a17bd1f4c'], + }), + ('leafsync', '0.1.0', { + 'checksums': ['7d8fd8dbbbf66417cf32575f14c0fe68199762ecf1c036c7905c7c5ff859d75c'], + }), + ('leafem', '0.2.3', { + 'checksums': ['defd5baa4383da4182e97d41145c7a9633a987de05c465eb99a7a452fbf375e3'], + }), + ('widgetframe', '0.3.1', { + 'checksums': ['44089a2cf8b0941a6f3da55da36353e2f44653ca58bfec7960ee5b71ea380d48'], + }), + ('tmaptools', '3.1-1', { + 'checksums': ['fd89cb0d7fb44e0a5dd5311fa3e75a729746bf2e8e158d5ec423e5963f1b542d'], + }), + ('tmap', '3.3-4', { + 'checksums': ['c966bcd61c21a9609144f2de89da1601e734ee2c6903f08bf624b217944faaf7'], + }), + ('collapse', '2.0.3', { + 'checksums': ['fb8cea81b281bd40d8eccff777c998f7c5915d624623db4132044c9271c7c49b'], + }), + ('genoPlotR', '0.8.11', { + 'checksums': ['f127f7fe8b19c899ecfdf98bf69d2e18926afb593a72fc40097acca66d401607'], + }), + ('VineCopula', '2.5.0', { + 'checksums': ['51b99e6fe0a1f4c32c860fc24b0164f0ade5d81aee7235e0ef5b5256e2115b68'], + }), + ('Rmpfr', '0.9-3', { + 'checksums': ['828dbdc98e28a9f7beb0d9bec251a7387b54908753314d75c1400754560cf641'], + }), + ('scam', '1.2-14', { + 'checksums': ['cc5086aaab35d0e1969760af191ed7e76f97b65a26a9be623ac8cf0c45a93771'], + }), + ('copula', '1.1-2', { + 'checksums': ['88f9454d25e4dcdf53d8ca5156daf48e664769f5e13b1e835ed64f37251587d3'], + }), + ('evd', '2.3-6.1', { + 'checksums': ['662c592d3f5c5693dbf1c673d1137c4a60a347e330b71be1f3933f201d2c8971'], + }), + ('ismev', '1.42', { + 'checksums': ['0d57fbeca83bd478e84fcff795967d51d8448c629abe7adc6c4c18c7fb8bf1a5'], + }), + ('GJRM', '0.2-6.4', { + 'checksums': ['365a49ac4cc9dc6fb88953214b0e97b019cd1a1a8529c0ef640711c3bb8eec57'], + }), + ('penfa', '0.1.1', { + 'checksums': ['a22a8ac3d4a040c77e50ddc92328c1989eae536d79fe56013e9372ba27c114e5'], + }), + ('kde1d', '1.0.5', { + 'checksums': ['b5fab76a394a7819deee10afdff39ac64fccdb844735adfe51c92043016f2468'], + }), + ('RcppThread', '2.1.6', { + 'checksums': ['e9470c5e29e5e07ac5360d165ec96effad9115c03833b25c3acd8cd6809a27a5'], + }), + ('wdm', '0.2.4', { + 'checksums': ['e2d19c04ea2fb9394cc2b61899c7fd21ae7c6d5825bfdcb74822c7243cd335d3'], + }), + ('rvinecopulib', '0.6.3.1.1', { + 'checksums': ['df95d007552e7fa30aefad90a86acf5e14f6fe1e363ed4c71a74d501a08cbf32'], + }), + ('PearsonDS', '1.3.0', { + 'checksums': ['d37f1c38ca0ad457cff6c3e21d1b0c0d5e0d06832c5de3ee11d72b93803b57b5'], + }), + ('covsim', '1.0.0', { + 'checksums': ['3788e91ee7f7fd44b290feb22185637493e8301a64f9511ca80e1ed361c3f44f'], + }), + ('semTools', '0.5-6', { + 'checksums': ['f522ce3c02ac580ad49af7a7278141dae39fdfaeccc7d1379faf1266ce9fcaf2'], + }), + ('GPArotation', '2023.8-1', { + 'checksums': ['e445d479e477e2d42daac1d7f7db0daf6628aac6b3f8a2d51dbb95b4ad1ecfeb'], + }), + ('dcurver', '0.9.2', { + 'checksums': ['cc6c55090d3607910515981ea0c7221e40e7a29e0da0c5a5f42c3847012290ec'], + }), + ('mirt', '1.41', { + 'checksums': ['d01b2d2e8caf0f1569f1db9138839e698e17c46020dfaaab8a5496f649c6a863'], + }), + ('rpf', '1.0.14', { + 'checksums': ['e4bb090a810ec4e70a23547f95e1e07ce0229e38fbbbbe22abfad98e9b33f796'], + }), + ('OpenMx', '2.21.8', { + 'checksums': ['bfe13368360434ab5804496bb7f28053f75669b6b264e0e679261a3e705a74ef'], + }), + ('matlab', '1.0.4', { + 'checksums': ['1988a2220703444a575f2bad4eb090a0da71478599eb53081dd7237b7ec216ea'], + }), + ('FactorCopula', '0.9.3', { + 'checksums': ['df1675bb96431417cdbb9000ab80e15e12d82c8ed9809eeb3d7fe7b4855178d3'], + }), + ('rpact', '3.4.0', { + 'checksums': ['447e142f53437c070ad11b04a7d549207635114312147f358249be0d49b83674'], + }), + ('ldbounds', '2.0.1', { + 'checksums': ['1a23d56a619eff18eaf8a3538da8da47dfbeddddc8922047457de92e3e01aa1d'], + }), + ('catlearn', '1.0', { + 'checksums': ['c6ef66257b8a6968599876f53bd431b5d836f125b32cdb829b53fb972ffeffaf'], + }), + ('MetaUtility', '2.1.2', { + 'checksums': ['e38c21588c239aa8926e64d916aa0f3b04108c2992f0e801095e4c7920b9ad5d'], + }), + ('EValue', '4.1.3', { + 'checksums': ['52a8d4df8ddc80eddf7c2f6684ed6f0fd71f3bd1bfc096ed07cfe875a367e446'], + }), + ('dagitty', '0.3-1', { + 'checksums': ['7d44b5d259ec3fef776a7e3fcb21d1c379f930d6ae9ae5fbfff54494ad78e8a8'], + }), + ('ggdag', '0.2.10', { + 'checksums': ['66cdb226f63f44268fed0ef596d8849f8b70cd92cec20eb305db52a3bd1fc9ee'], + }), + ('simex', '1.8', { + 'checksums': ['80c7841196b9377a9367eb6960ad80ca0bf8de511b8b18a0031bfbe7bde289a0'], + }), + ('hash', '2.2.6.3', { + 'checksums': ['8a030b5be9c6494b44af9d8cd7a966cc94a41ae0aaecb553fc36de4762749110'], + }), + ('nabor', '0.5.0', { + 'checksums': ['47938dcc987279281c13abfd667660bf1b3b76af116136a27eb066ee1a4b43da'], + }), + ('RhpcBLASctl', '0.23-42', { + 'checksums': ['5c889d5b69e264060b9f1f0383c447f594855b8afc15b7d76d39e4d62b946615'], + }), + ('harmony', '1.1.0', { + 'checksums': ['7bcdd5cb7e99e791e0aa11aa3e5316cbdb884270a3528f8a5fe5b8410169c167'], + }), + ('apcluster', '1.4.11', { + 'checksums': ['4497da8766802cb18a5729ddb629368a17a967436d696941deb4b21da73e3333'], + }), + ('DataCombine', '0.2.21', { + 'checksums': ['352b235612e2cf8234b3ab5f9aa6f7a394b006b98d24e315940ccc65c4218b47'], + }), + ('docstring', '1.0.0', { + 'checksums': ['14528bc85bbb299fb8fe1a7116034f8df49ae0c26fb299376185b5d56176e5a7'], + }), + ('gdalUtils', '2.0.3.2', { + 'checksums': ['4c6faabee2db8a87b7ea0f8e67e9fce3c5db7f4be353d7d86ea559507cbb2a4f'], + }), + ('openair', '2.18-0', { + 'checksums': ['e06febbe421a6493dff0a3c05b894bb1fffdfb1c4fed576288974f5dae597cc3'], + }), + ('pdp', '0.8.1', { + 'checksums': ['e23db66e5d575337d5c8fd664ccd0548cc85da2aca6613d90ce187be1dca376c'], + }), + ('date', '1.2-42', { + 'checksums': ['5a913f960a0071cf9db05df4de03055a21a1c243b3bdbf846375537a664bcb74'], + }), + ('cmprsk', '2.2-11', { + 'checksums': ['844027cb2c162cf7ef97034d01237ad7b81aa192fe302250d22d2c5528110e14'], + }), + ('mets', '1.3.2', { + 'checksums': ['1a8bd1678c92650c0637b69b807bfb43df4210806518d56c650967c72f3e21d8'], + }), + ('Publish', '2023.01.17', { + 'checksums': ['436cc2bf5cdca1b3fdf892c9d35227f01740f1a4b335ff7b42a37e12c0115953'], + }), + ('riskRegression', '2023.09.08', { + 'checksums': ['e4f08d4ebc19ce6ddb2c1cd9a52191d34f9b57da9498c52db416ef4216985f21'], + }), + ('pec', '2023.04.12', { + 'checksums': ['6552fe9843b0b59bfd97c0db70c1ac5b0291184b498a796803b9dca0dc70ef95'], + }), + ('pammtools', '0.5.92', { + 'checksums': ['ccf9d930521af76d441d82bf08b89e125f237f81df1f50a8152c13c9bf73e401'], + }), + ('relsurv', '2.2-9', { + 'checksums': ['e966435c16c0978d1314867c3b9fbd7170ae7450d60e676d06cc7f8ca3d74d78'], + }), + ('mstate', '0.3.2', { + 'checksums': ['3c473dff6854e31cdbdaf79f8fe7eaf97119b01a581874a894b283555afe8d14'], + }), + ('microbenchmark', '1.4.10', { + 'checksums': ['04cc41be72708dce8d31ff1cb105d88cc9f167250ea00fe9a165c99204b9b481'], + }), + ('prettyGraphs', '2.1.6', { + 'checksums': ['fece08924fc7ed05ec419afa14a2216a2bb23d9da5ed3fc61472d6e45be7577a'], + }), + ('ExPosition', '2.8.23', { + 'checksums': ['0510bc51b1c8c883ff3652a5ed56242f91c2b7b7cf3100755436bffa1e002475'], + }), + ('alluvial', '0.1-2', { + 'checksums': ['77b6dc4651b33b03aaaf1e09a35f9c3536e5fddac2eda34f5a34e0ae33cf2e0d'], + }), + ('SNFtool', '2.3.1', { + 'checksums': ['982fe7c57f52c0c272b8cb5863dc5d50623b368e24ff6e27fc8b17acc0101f16'], + }), + ('BayesLogit', '2.1', { + 'checksums': ['3a423f68339ed1bf25e21be53b1fd68452ed7807b17c36239fba759dc6fc6b70'], + }), + ('Hmsc', '3.0-13', { + 'checksums': ['cbef4706aa09e93030243cee3ae4e62b02160d96981020f5a385751eade4f88d'], + }), + ('MonteCarlo', '1.0.6', { + 'checksums': ['f21aecfba957bbea9576b09f75b1f7c7621637a04532a8fed2c6bb8ffc1a98cb'], + }), + ('chkptstanr', '0.1.1', { + 'checksums': ['433b29d597d7ea6c21ed652782a7bf2d766f9223a3b7bfed235c8fe7fffd175c'], + }), + ('MLmetrics', '1.1.1', { + 'checksums': ['777f1b76b16837387b830e2b65304ede234b9299d17efd09c7fd403356122118'], + }), + ('elliptic', '1.4-0', { + 'checksums': ['b65729b1a1c7a84a5b1a59bfc893a2d35106853eaadcae31cda5c9ee3c500bb6'], + }), + ('contfrac', '1.1-12', { + 'checksums': ['95bfc5e970513416c080486a1cd8dfd9f8d59fb691b02ef6ccbe0ce1ed61056b'], + }), + ('hypergeo', '1.2-13', { + 'checksums': ['6d5b78353aad1d13091ccbeb340867dad7b9eb00d0e2185286dc7e13848f4d8e'], + }), + ('rtdists', '0.11-5', { + 'checksums': ['97cf2ea758aa02b1dfaeef5032c6e50570777552aa771ed9a86df048b7871eed'], + }), + ('AMAPVox', '1.0.1', { + 'checksums': ['00310dd6bce81849e799326efdf49fdc89633d53411d2a89b01586180d5ed4f1'], + }), + ('LCFdata', '2.0', { + 'checksums': ['b58f4d93b9023dd1ba2db96a59ddfc058397085933d8de4cdb38ee064d5e7bf4'], + }), + ('LMERConvenienceFunctions', '3.0', { + 'checksums': ['eb430de9fbf836173f716960d60afc2de91de7f986471f406c3ca9027142e849'], + }), + ('HGNChelper', '0.8.1', { + 'checksums': ['aa3f0b3a8691ed93d63bec8f36d2954c6fcfd0b8b3efc705379248544c999363'], + }), + ('logger', '0.2.2', { + 'checksums': ['4f1be7d4381f2fc591f19fdbfb8f3cccbf26c9fdbae104612f6e6d5762a97e22'], + }), + ('parallelDist', '0.2.6', { + 'checksums': ['30c6b3b85cf78c04a7dcd17ea7ed64356971f6ce48d15794078a18c53b249e06'], + }), + ('roptim', '0.1.6', { + 'checksums': ['7ef0c2a2ddb3703efaabf337fa0026485875d5ffb35ba3ef5d60eb0c62c30686'], + }), + ('yulab.utils', '0.1.0', { + 'checksums': ['ef4fa9fc7e5fd458f84e0337cd08fd66961cb18be4508c59aa480d715e1fba10'], + }), + ('ggfun', '0.1.3', { + 'checksums': ['89232ea73b7bcf3262ce4f66c7f6d05b00c5c79927c9c16d3ba8f816332669ca'], + }), + ('gridGraphics', '0.5-1', { + 'checksums': ['29086e94e63891884c933b186b35511aac2a2f9c56967a72e4050e2980e7da8b'], + }), + ('ggplotify', '0.1.2', { + 'checksums': ['01bae5759e14e211bddb04413e094ba31399b513989894ea08602d202f990e87'], + }), + ('aplot', '0.2.2', { + 'checksums': ['c7f163fb0010e3a2d742f79d5a220cbfa5be2a40ae577ac56c422f2f59fe8b24'], + }), + ('tidytree', '0.4.5', { + 'checksums': ['d2708e5ff068102262eb3bc0577e34522263d70ed1e291ef196c931b51c89472'], + }), + ('ggvenn', '0.1.10', { + 'checksums': ['cde116f117266cca27d8cd20205512e602c23514db6d97caaa950b9b21fa873e'], + }), + ('scatterpie', '0.2.1', { + 'checksums': ['8b5ac54273f1d4a988e2ee8d3d8c863dc4e6307fe1bddd3019fc13bffd64d971'], + }), + ('shadowtext', '0.1.2', { + 'checksums': ['253c4e737dbb302aa0729e5074e84cbfde2a73bfd7a0fd2c74b557cb728bae7d'], + }), + ('random', '0.2.6', { + 'checksums': ['2b59f9bce0c3ebf8215ab42dffaf9a1c7eea7468964063215a8d422af953b069'], + }), + ('R2WinBUGS', '2.1-21', { + 'checksums': ['fa86cb5140f5dfce29f9517b94d6d08c316ddcffa4aa3085945b84d34910134d'], + }), + ('aricode', '1.0.3', { + 'checksums': ['10a739353feb4f552496d3a51d436088c92edbd241f80f7c33ee5f278de1d90a'], + }), + ('DepthProc', '2.1.5', { + 'checksums': ['e6b0afd54bb20e25a6bf5402c771848db20e9c844f0fc990ecc3d1078b9eee44'], + }), + ('dbscan', '1.1-11', { + 'checksums': ['f0498e67e612629340a2758fbe747c4d9d4ca648f002230a03499cb73735e62f'], + }), + ('ggh4x', '0.2.6', { + 'checksums': ['eb7929b4c3167dce644b13d655144b2893e320072e7a998f07c37c4f7d9b2b3b'], + }), + ('ComplexUpset', '1.3.3', { + 'checksums': ['5b2f99b4a38648641c7d31fc57f201a93e5bc1b85442a0b9726f72c166d964ea'], + }), + ('proxyC', '0.3.4', { + 'checksums': ['f39d1d3d34b4e26694e3916002ea370b2f4e745c0992e718bb024ed03a2b78ea'], + }), + ('changepoint', '2.2.4', { + 'checksums': ['ac636fde7610137385dde1e3d8a22a2ff856a8d5c917c7ad1a5cc49f98b8649b'], + }), + ('geeM', '0.10.1', { + 'checksums': ['fe76a32981b55835095041e777d1cf2e9ce43edb8d9488db56279f7cb6f43fe5'], + }), + ('ggstance', '0.3.6', { + 'checksums': ['cd9ad4fb83c583009ee45371c7d02d32b33d06238d3f0162b3ba9851e27a6372'], + }), + ('mosaicCore', '0.9.4.0', { + 'checksums': ['e25605d787d274eedd3de8584283c20204bcb7b94f4a409461304ce7cd867d6c'], + }), + ('ggformula', '0.10.4', { + 'checksums': ['b26d478e7e38bd9ec51777c14a7e0fef41e2c2742ca202532f0f44dc00d6a91d'], + }), + ('kinship2', '1.9.6', { + 'checksums': ['0150bd5974c2a19885f6ff2e99f3c1f6361054a0910dcfc9dd26a8e0cd73bbf6'], + }), + ('MESS', '0.5.12', { + 'checksums': ['41e07993e67a8aab52d9d4d07a06d654186ac8a8db9b740763ed5d481f01dcf7'], + }), + ('smoof', '1.6.0.3', { + 'checksums': ['af8664b152876c545f6545528de6e05a289d0714103fac7afc52960a9a855fb1'], + }), + ('mlrMBO', '1.1.5.1', { + 'checksums': ['0cf26e5e9b180d15b932541cf081a552703a60edf762aafca9933c24ea91dc99'], + }), + ('emoa', '0.5-0.2', { + 'checksums': ['d9e8bd286c4578be76a3dc7a1110bbb751eb8d0e451143273f0ced09878a243b'], + }), + ('webutils', '1.1', { + 'checksums': ['33e2b408d2b9ca12e158e0007d4a55a3ace6838341ad944344de2ceb806e4699'], + }), + ('swagger', '3.33.1', { + 'checksums': ['528369b04c6142112e05ee8b950ca1c01b3e390a4515eacb0fa17db98bafafd1'], + }), + ('varhandle', '2.0.6', { + 'checksums': ['4e7afd3ef77343c61508b0465b588751dc089c264faabf7bed60e9f4d9e1c577'], + }), + ('dlm', '1.1-6', { + 'checksums': ['89dd4130ea3a5213244c66b313fed0a74cdcc96d3e70285b14cf3fe5f354ae57'], + }), + ('PMA', '1.2-2', { + 'checksums': ['34f2a4236b5c9793cfea2c6367c61146687c277749dbbff0524425a8f335bdb9'], + }), + ('unikn', '0.9.0', { + 'checksums': ['5480f568bd182a96ac6b613347a659b3a506ff540713021692712f0b91c31c10'], + }), + ('ppcor', '1.1', { + 'checksums': ['6a78f0c4d9caa17ab0252c5d351c2371e4ffb9047ebd13964877018dd6142bf5'], + }), + ('berryFunctions', '1.22.0', { + 'checksums': ['8d8578d746e8e4f7a1deb0b1d49ff8603c5e51504d5fe549bcba54f20fe9d498'], + }), + ('cld2', '1.2.4', { + 'checksums': ['79e04de836812a980406a540c0f022926ba71c2bf5294ad5eaa437a9c33e615b'], + }), + ('crfsuite', '0.4.2', { + 'checksums': ['d5f6379a2bb7fd585fde5945189a6a69e1ef33664fe86828d646f5f4505f8d96'], + }), + ('doc2vec', '0.2.0', { + 'checksums': ['db3853685072554402434ea699d703e01ac7818044cf47a2ee7d0e1040858908'], + }), + ('fastDummies', '1.7.3', { + 'checksums': ['cf6a182f778711b69460b00575babfa573f1578166d83ae2ed932db5fa15a06a'], + }), + ('quanteda', '3.3.1', { + 'checksums': ['628542307d7ac45d4996fbc993a43ed5efcca73d97735ca74a10ccea401d4166'], + }), + ('ISOweek', '0.6-2', { + 'checksums': ['b58a37b61ee772ea2704d510e9fce69dea4dd641b45124d566242825df4530b8'], + }), + ('sentometrics', '1.0.0', { + 'checksums': ['b5c238bb72f36331cb1ed63b581a9a2a73cefc96f80bf770b0e064a89fe31b1b'], + }), + ('tau', '0.0-24', { + 'checksums': ['f08d9fc92ed11ec01f7da12ccf98862e36ef8bb69d5e42584a08b46cea6917e1'], + }), + ('textcat', '1.0-8', { + 'checksums': ['cb650147576bae9c78381524831c9fcc85c76177274672098aac1860aa39749e'], + }), + ('textplot', '0.2.2', { + 'checksums': ['6e99a204b4be2ccd317978eda900b923e0e0a0f34217405777a0eb5fcc80e2a9'], + }), + ('udpipe', '0.8.11', { + 'checksums': ['522900de24d1f0f4f15e6b26df5521ac6efaf63c5fcfc35171a78275b3633233'], + }), + ('word2vec', '0.4.0', { + 'checksums': ['38c6934ad7c601d6de7fa44a1ecf911ef34609b5c32b67da12a0814124036a91'], + }), + ('epitools', '0.5-10.1', { + 'checksums': ['b418854de1fcedd126f3bf19dc27e8a71ee6efae5371098ab64a53a2d51d164b'], + }), + ('RBesT', '1.7-2', { + 'checksums': ['bde8008b5fc8f0023bdd84b3a14a7425aecf1edcdf79480dac861895de4a9a9b'], + }), + ('svglite', '2.1.2', { + 'checksums': ['c2c163e17de8174408062b969a1fc298aa1dba957dc0acc1c898384bb76c0030'], + }), + ('rARPACK', '0.11-0', { + 'checksums': ['c33401e2e31d272d485ce2ed22e7fe43ac641fd7c0a45a9b848d3ad60df1028a'], + }), + ('FKSUM', '1.0.1', { + 'checksums': ['6de23f5b7692f627b0b8e9575a612e77e166c16c28acab31d5ea0a27d7afe829'], + }), + ('warp', '0.2.1', { + 'checksums': ['020ad590de099661aa62b4d5e51499a2ac91c41c61db2dbc71c3f4a3df2c46be'], + }), + ('slider', '0.3.1', { + 'checksums': ['200a26795fadb2058e3976af7a697dde7f120645279cfe2580b8c0d6c0a429b0'], + }), + ('rsample', '1.2.0', { + 'checksums': ['e0c9b7060e0037f4213a5faad73f5910cf97bf93ecba93d35301cbc88cf45eed'], + }), + ('haldensify', '0.2.3', { + 'checksums': ['fc0ee1d5bce54520bad6a1ce1cce5074eead6c8573dc4ce502c48a244d7f341c'], + }), + ('Polychrome', '1.5.1', { + 'checksums': ['6fe7da62459d7b94b1a8516a4626971cf35b76331f46e36798b05d29aa00d143'], + }), + ('shinycssloaders', '1.0.0', { + 'checksums': ['744641836a4cede2bb47caff1b600bff2c3e450dfccd2af4fab0413a8ea87d64'], + }), + ('princurve', '2.1.6', { + 'checksums': ['0216332390eb27013b6ba62232782156dfc99ca640087fcaff53d2be9218f373'], + }), + ('ECOSolveR', '0.5.5', { + 'checksums': ['2594ed1602b2fe159cc9aff3475e9cba7c1927b496c3daeabc1c0d227943ecc7'], + }), + ('scs', '3.2.4', { + 'checksums': ['c3f39874bf4532fa8c2f2e2c41533ba4fe20b61cf6dfc6314407dc981621298f'], + }), + ('osqp', '0.6.3.2', { + 'checksums': ['18543b329a42be0f419dff4aa42f4401c2afb18f46276ce359853494dd803244'], + }), + ('CVXR', '1.0-11', { + 'checksums': ['e92a9638f35f4909e2a29c3b7106081e3dae7ff88b14bb6466b87fbdc80b972a'], + }), + ('tabletools', '0.1.0', { + 'source_urls': ['https://github.com/JMLuther/%(name)s/archive/'], + 'sources': [{'download_filename': 'cc961c5.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['667a4270456d28188734ce31411326130a94e085490ced84096c984789bb174a'], + }), + ('officer', '0.6.3', { + 'checksums': ['e51754029240d66fb1c8e6d524c63a275f6fafa19a22fef90d90c8ceb982777c'], + }), + ('gfonts', '0.2.0', { + 'checksums': ['72e2eead5280b45aadbbd9385971d65e9866fd659270b1c3c1eb98330f024aa6'], + }), + ('fontBitstreamVera', '0.1.1', { + 'checksums': ['3298b3dd95605bdda0c5fce5594c9bedde6aa63d89b216d5c83c6c092b6d375a'], + }), + ('fontLiberation', '0.1.0', { + 'checksums': ['acdea423e005873aa509e280074a3cef4796e4f7e9d77b3945d77b451ea039f0'], + }), + ('fontquiver', '0.2.1', { + 'checksums': ['95871814c2d55c03ee15a54e29aadfb840c791e1430f94127d9e1dc8608a6363'], + }), + ('gdtools', '0.3.4', { + 'checksums': ['aad743033fba0b48aa05867df4bc9643802fa82542b559579105e8a0659aaa02'], + }), + ('flextable', '0.9.4', { + 'checksums': ['55ad11660325cf470cedf532df774f99748583eb53c0162e2dede8e1c3539ab6'], + }), + ('ridge', '3.3', { + 'checksums': ['5c2daecf6f97aa099ef5fa54f8448518c4f2ed6e44dd29fc60621a70721c60f5'], + }), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch b/easybuild/easyconfigs/r/R-bundle-CRAN/liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch new file mode 100644 index 00000000000..56af45097b7 --- /dev/null +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch @@ -0,0 +1,49 @@ +The code requires C++11 but nvcc is not passed any flag for it, do that to avoid 'error: identifier "__ieee128" is undefined' on PPC +Use uppercase __PPC64__ to detect PPC 64bit (defined by GCC) +Use lowercase __aarch64__ to detect aarch64 (defined by GCC) +diff -aur liquidSVM-orig/MD5 liquidSVM/MD5 +--- liquidSVM-orig/MD5 2020-02-20 15:51:17.387058566 +0100 ++++ liquidSVM/MD5 2020-02-20 16:48:06.042078399 +0100 +@@ -66,7 +66,7 @@ + e0ea06f050a2ae8ed2f2e401d968f0ce *man/test.liquidSVM.Rd + 8874fc45419e3174bf06013d887f6582 *man/trainSVMs.Rd + 4cf2abf7c6d415a4a8cd7f5dee2df959 *man/write.liquidData.Rd +-854c1eecccd169acdb80b03ad6d768dc *src/Makevars.in ++8c4346267f7b7f649ff27fb5288d4e23 *src/Makevars.in + e6d47b428caa2cc55798b431cb5e504f *src/kernel_calculator.cpp + 13af8529f5c2bccd4ea03288e9adf908 *src/kernel_calculator.h + dc2c86cbe61e7b7c5dd433f9fa41fac6 *src/liquidSVM.cpp +@@ -155,7 +155,7 @@ + 8b39ec05680bf3416bc1de3ad92f043f *src/sources/shared/system_support/cuda_simple_vector_operations.h + 806ca83732bff4b1b89adfc3494e90da *src/sources/shared/system_support/full_64bit_support.h + dfb08cdb449d490d86dd33bee186aac5 *src/sources/shared/system_support/memory_allocation.cpp +-aec0000be577e69e88c040b641d6818a *src/sources/shared/system_support/memory_allocation.h ++f0231e65bd627116f1b5ebcc45ab1e66 *src/sources/shared/system_support/memory_allocation.h + 683d4ee517b1c760dc410c69c5508ce2 *src/sources/shared/system_support/memory_allocation.ins.cpp + cbd209324ad752e19be10d8975d65e2f *src/sources/shared/system_support/os_specifics.h + 54e8583d2e8e269ff2b6d7a79d57cbd5 *src/sources/shared/system_support/parallel_control.cpp +diff -aur liquidSVM-orig/src/Makevars.in liquidSVM/src/Makevars.in +--- liquidSVM-orig/src/Makevars.in 2020-02-20 15:51:17.377058962 +0100 ++++ liquidSVM/src/Makevars.in 2020-02-20 16:47:44.042949538 +0100 +@@ -39,7 +39,7 @@ + # The architecure flag can be set to higher values, if the hardware supports this. + # The value below should be safe for essentially all non stone-age systems. + +-NVCCFLAGS= -arch sm_30 -L$(CUDA_LIB_PATH) -DCOMPILE_WITH_CUDA__ -U__SSE2__ -U__AVX__ ++NVCCFLAGS= -arch sm_30 -L$(CUDA_LIB_PATH) -DCOMPILE_WITH_CUDA__ -U__SSE2__ -U__AVX__ -std=c++11 + + + #----------- CUDA related flags for GCC ---------------------------------------------------- +diff -aur liquidSVM-orig/src/sources/shared/system_support/memory_allocation.h liquidSVM/src/sources/shared/system_support/memory_allocation.h +--- liquidSVM-orig/src/sources/shared/system_support/memory_allocation.h 2020-02-20 15:51:17.377058962 +0100 ++++ liquidSVM/src/sources/shared/system_support/memory_allocation.h 2020-02-20 15:56:04.905673381 +0100 +@@ -42,7 +42,7 @@ + + // Check for GCC + #if __GNUC__ +- #if __x86_64__ || __ppc64__ ++ #if __x86_64__ || __ppc64__ || __PPC64__ || __aarch64__ + #define SYSTEM_WITH_64BIT + #else + #define SYSTEM_WITH_32BIT + From 59d21337f8a9b045e5c81c0a6fedab24edcf6031 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Tue, 7 Nov 2023 18:13:03 +0100 Subject: [PATCH 035/356] adding easyconfigs: FDS-6.8.0-intel-2022b.eb --- .../f/FDS/FDS-6.8.0-intel-2022b.eb | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 easybuild/easyconfigs/f/FDS/FDS-6.8.0-intel-2022b.eb diff --git a/easybuild/easyconfigs/f/FDS/FDS-6.8.0-intel-2022b.eb b/easybuild/easyconfigs/f/FDS/FDS-6.8.0-intel-2022b.eb new file mode 100644 index 00000000000..a8d35e94b26 --- /dev/null +++ b/easybuild/easyconfigs/f/FDS/FDS-6.8.0-intel-2022b.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'FDS' +version = '6.8.0' + +homepage = 'https://pages.nist.gov/fds-smv' +description = """Fire Dynamics Simulator (FDS) is a large-eddy simulation (LES) code for low-speed flows, + with an emphasis on smoke and heat transport from fires.""" + +toolchain = {'name': 'intel', 'version': '2022b'} +toolchainopts = {'pic': True, 'usempi': True, 'openmp': True} + +source_urls = ['https://github.com/firemodels/fds/archive/'] +sources = ['FDS-%(version)s.tar.gz'] +checksums = ['d8213d706bb36300ca5fdc9a7884fa4610e2820338de23212dd19de75d8e0704'] + +unpack_options = '--strip-components=1' + +start_dir = 'Build' + +# just run make in the install dir +skipsteps = ['configure', 'install'] +buildininstalldir = True + +buildopts = 'impi_intel_linux_openmp &&' +buildopts += 'cd %(installdir)s/Build && ln -s fds_impi_intel_linux_openmp fds' + +modextrapaths = {'PATH': 'Build'} + +sanity_check_paths = { + 'files': ['Build/fds'], + 'dirs': [], +} + +sanity_check_commands = [ + "fds 2>&1 | grep 'MPI Enabled;'", + "fds 2>&1 | grep 'OpenMP Enabled;'", +] + +moduleclass = 'phys' From 9094e493a6c83a3e80effd4d3a408af78d79f175 Mon Sep 17 00:00:00 2001 From: Sebastian Achilles Date: Wed, 8 Nov 2023 08:37:58 +0100 Subject: [PATCH 036/356] update OpenMx in R-bundle-CRAN 2023.11 --- .../r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb index 8421d82323d..786c88814f8 100644 --- a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb @@ -3023,8 +3023,8 @@ exts_list = [ ('rpf', '1.0.14', { 'checksums': ['e4bb090a810ec4e70a23547f95e1e07ce0229e38fbbbbe22abfad98e9b33f796'], }), - ('OpenMx', '2.21.8', { - 'checksums': ['bfe13368360434ab5804496bb7f28053f75669b6b264e0e679261a3e705a74ef'], + ('OpenMx', '2.21.10', { + 'checksums': ['d513227ca7a60faf1b16e9be64864401914482aac9a326676fe1d052632c94ce'], }), ('matlab', '1.0.4', { 'checksums': ['1988a2220703444a575f2bad4eb090a0da71478599eb53081dd7237b7ec216ea'], From 74599ba64d0253ab16b61d33b394354122da8600 Mon Sep 17 00:00:00 2001 From: Sebastian Achilles Date: Wed, 8 Nov 2023 14:28:53 +0100 Subject: [PATCH 037/356] update R-bundle-CRAN 2023.11 --- .../R-bundle-CRAN-2023.11-foss-2023a.eb | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb index 786c88814f8..f87304d4c51 100644 --- a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb @@ -77,6 +77,12 @@ exts_default_options = { 'source_tmpl': '%(name)s_%(version)s.tar.gz', } +# check whether correct version is installed in extension filter +# (some versions in this bundle may be newer than the ones provided by R) +local_ext_version_check = "pkgver = packageVersion('%(ext_name)s'); if (pkgver != '%(ext_version)s') " +local_stop_msg = "stop('%(ext_name)s %(ext_version)s not installed, found ', pkgver, ' instead')" +exts_filter = ("R -q --no-save", "%s { %s }" % (local_ext_version_check, local_stop_msg)) + # !! order of packages is important !! # packages updated on 5th November 2023 exts_list = [ @@ -3396,4 +3402,11 @@ exts_list = [ }), ] +modextrapaths = {'R_LIBS_SITE': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': ['abind', 'base64', 'calibrate'], +} + moduleclass = 'lang' From f3891805aad23cdd5643b097b659b0d46afa5c2a Mon Sep 17 00:00:00 2001 From: Joachim Hein Date: Wed, 8 Nov 2023 16:04:09 +0100 Subject: [PATCH 038/356] Upgrade to TensorFlow 2.11.0 --- .../d/DeepLabCut/DeepLabCut-2.3.6-foss-2022a-CUDA-11.7.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/d/DeepLabCut/DeepLabCut-2.3.6-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/d/DeepLabCut/DeepLabCut-2.3.6-foss-2022a-CUDA-11.7.0.eb index abd16842cec..cec8160a27c 100644 --- a/easybuild/easyconfigs/d/DeepLabCut/DeepLabCut-2.3.6-foss-2022a-CUDA-11.7.0.eb +++ b/easybuild/easyconfigs/d/DeepLabCut/DeepLabCut-2.3.6-foss-2022a-CUDA-11.7.0.eb @@ -18,7 +18,7 @@ toolchainopts = {'pic': True} dependencies = [ ('CUDA', '11.7.0', '', SYSTEM), ('Python', '3.10.4'), - ('TensorFlow', '2.9.1', versionsuffix), + ('TensorFlow', '2.11.0', versionsuffix), ('PyTorch', '1.12.0', versionsuffix), ('scikit-image', '0.19.3'), ('matplotlib', '3.5.2'), From 15558592d3045d0697c6279dd98431be42b4b3bd Mon Sep 17 00:00:00 2001 From: Chia-Jung Hsu Date: Wed, 8 Nov 2023 16:11:36 +0100 Subject: [PATCH 039/356] Support customizing cmake_options --- .../easyconfigs/s/SuiteSparse/SuiteSparse-7.1.0-foss-2023a.eb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/s/SuiteSparse/SuiteSparse-7.1.0-foss-2023a.eb b/easybuild/easyconfigs/s/SuiteSparse/SuiteSparse-7.1.0-foss-2023a.eb index 765f6e99944..359a382e7ff 100644 --- a/easybuild/easyconfigs/s/SuiteSparse/SuiteSparse-7.1.0-foss-2023a.eb +++ b/easybuild/easyconfigs/s/SuiteSparse/SuiteSparse-7.1.0-foss-2023a.eb @@ -20,6 +20,7 @@ dependencies = [ ('MPFR', '4.2.0'), ] -prebuildopts = 'CMAKE_OPTIONS="-DCMAKE_INSTALL_PREFIX=%(installdir)s -DBLA_VENDOR=FlexiBLAS"' +# uncomment the next row if need customization +# cmake_options = '' moduleclass = 'numlib' From 259e4d4b7994604dfd1dec8422e7d54cb56db3c0 Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Tue, 7 Nov 2023 17:47:45 +0100 Subject: [PATCH 040/356] adding easyconfigs: f90nml-1.4.4-GCCcore-10.2.0.eb, f90nml-1.4.4-GCCcore-12.2.0.eb --- .../f/f90nml/f90nml-1.4.4-GCCcore-10.2.0.eb | 27 +++++++++++++++++++ .../f/f90nml/f90nml-1.4.4-GCCcore-12.2.0.eb | 27 +++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-10.2.0.eb create mode 100644 easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-12.2.0.eb diff --git a/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-10.2.0.eb b/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..5aff63728f9 --- /dev/null +++ b/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-10.2.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'f90nml' +version = '1.4.4' + +homepage = 'https://github.com/marshallward/f90nml' +description = """A Python module and command line tool for parsing + Fortran namelist files""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['65e8e135779895245238cbf6be5b1b80d6c2b8c9350c9cdce6183a31bdfd7622'] + +builddependencies = [ + ('binutils', '2.35'), +] +dependencies = [ + ('Python', '3.8.6'), + ('PyYAML', '5.3.1') +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-12.2.0.eb b/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..b554f52d3e9 --- /dev/null +++ b/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-12.2.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'f90nml' +version = '1.4.4' + +homepage = 'https://github.com/marshallward/f90nml' +description = """A Python module and command line tool for parsing + Fortran namelist files""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['65e8e135779895245238cbf6be5b1b80d6c2b8c9350c9cdce6183a31bdfd7622'] + +builddependencies = [ + ('binutils', '2.39'), +] +dependencies = [ + ('Python', '3.10.8'), + ('PyYAML', '6.0') +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'tools' From 87d9d702eb8a7e100fc4864d2d884ae8e1368145 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Mon, 6 Nov 2023 17:16:06 +0100 Subject: [PATCH 041/356] Disable bogus warning --- .../p/PyTorch/PyTorch-2.0.1-foss-2022b.eb | 2 ++ .../PyTorch-2.0.1_disable-gcc12-warning.patch | 32 +++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_disable-gcc12-warning.patch diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb index 318e4aacd4f..27e6fe2c084 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb @@ -23,6 +23,7 @@ patches = [ 'PyTorch-1.13.1_skip-tests-without-fbgemm.patch', 'PyTorch-2.0.1_add-missing-vsx-vector-shift-functions.patch', 'PyTorch-2.0.1_avoid-test_quantization-failures.patch', + 'PyTorch-2.0.1_disable-gcc12-warning.patch', 'PyTorch-2.0.1_disable-test-sharding.patch', 'PyTorch-2.0.1_fix-numpy-compat.patch', 'PyTorch-2.0.1_fix-shift-ops.patch', @@ -66,6 +67,7 @@ checksums = [ 'da44961d6c204403ba0c4b88cedccf06a7a3d24f29c4398545f96efae7a45c95'}, {'PyTorch-2.0.1_avoid-test_quantization-failures.patch': '02e3f47e4ed1d7d6077e26f1ae50073dc2b20426269930b505f4aefe5d2f33cd'}, + {'PyTorch-2.0.1_disable-gcc12-warning.patch': 'f558dfc8f7cdcdc74c4c58ef7e8fe6d67870aec6386ac0d923f1b745d108eec7'}, {'PyTorch-2.0.1_disable-test-sharding.patch': 'a1ed7f21c9a269ea039a07a3d6574f885787b30ca5687143c96e096d31066cca'}, {'PyTorch-2.0.1_fix-numpy-compat.patch': 'f3e5798193e0909a415d824f13772973200965db84476c1737824f2735f2db94'}, {'PyTorch-2.0.1_fix-shift-ops.patch': '5ee655d5dba56d801d5618543b6ca299fa874939a3471f7b5449bfcb7f3f18c7'}, diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_disable-gcc12-warning.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_disable-gcc12-warning.patch new file mode 100644 index 00000000000..e3091daf27a --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_disable-gcc12-warning.patch @@ -0,0 +1,32 @@ +GCC 12 has a false positive warning when compiled for some architectures, e.g. Intel Sapphire Rapids. +See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112370 + +Suppress this warning such that the build doesn't error. + +Author: Alexander Grund (TU Dresden) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 471fc8a8d3d..5eb7b432630 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -557,6 +557,7 @@ string(APPEND CMAKE_CUDA_FLAGS " -Xfatbin -compress-all") + if(NOT MSVC) + string(APPEND CMAKE_CUDA_FLAGS_DEBUG " -g -lineinfo --source-in-ptx") + string(APPEND CMAKE_CUDA_FLAGS_RELWITHDEBINFO " -g -lineinfo --source-in-ptx") ++ append_cxx_flag_if_supported("-Wno-free-nonheap-object" CMAKE_CXX_FLAGS) + endif(NOT MSVC) + + # Set INTERN_BUILD_MOBILE for all mobile builds. Components that are not +diff --git a/cmake/public/utils.cmake b/cmake/public/utils.cmake +index 60cca5383dd..76c02d7479f 100644 +--- a/cmake/public/utils.cmake ++++ b/cmake/public/utils.cmake +@@ -548,6 +548,8 @@ function(torch_update_find_cuda_flags) + endif() + endfunction() + ++include(CheckCXXCompilerFlag) ++ + ############################################################################## + # CHeck if given flag is supported and append it to provided outputvar + # Also define HAS_UPPER_CASE_FLAG_NAME variable From fd201e8290d03db47d8238f818a7907448bf90fe Mon Sep 17 00:00:00 2001 From: Jakob Schiotz Date: Fri, 10 Nov 2023 09:40:43 +0100 Subject: [PATCH 042/356] adding easyconfigs: numba-0.58.1-foss-2023a.eb, LLVM-14.0.3-GCCcore-12.3.0.eb and patches: llvmlite-0.41.1_static-linking-of-LLVM.patch --- .../l/LLVM/LLVM-14.0.3-GCCcore-12.3.0.eb | 40 ++++++++++++++ ...vmlite-0.41.1_static-linking-of-LLVM.patch | 22 ++++++++ .../n/numba/numba-0.58.1-foss-2023a.eb | 55 +++++++++++++++++++ 3 files changed, 117 insertions(+) create mode 100644 easybuild/easyconfigs/l/LLVM/LLVM-14.0.3-GCCcore-12.3.0.eb create mode 100644 easybuild/easyconfigs/n/numba/llvmlite-0.41.1_static-linking-of-LLVM.patch create mode 100644 easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb diff --git a/easybuild/easyconfigs/l/LLVM/LLVM-14.0.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.3-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..09088210f91 --- /dev/null +++ b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.3-GCCcore-12.3.0.eb @@ -0,0 +1,40 @@ +name = 'LLVM' +version = '14.0.3' + +homepage = "https://llvm.org/" +description = """The LLVM Core libraries provide a modern source- and target-independent + optimizer, along with code generation support for many popular CPUs + (as well as some less common ones!) These libraries are built around a well + specified code representation known as the LLVM intermediate representation + ("LLVM IR"). The LLVM Core libraries are well documented, and it is + particularly easy to invent your own language (or port an existing compiler) + to use LLVM as an optimizer and code generator.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +toolchainopts = {'cstd': 'gnu++11', 'pic': True} + +source_urls = ['https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s/'] +sources = ['llvm-%(version)s.src.tar.xz'] +checksums = ['1e09e8c26e1b67bc94a128b62e9b9c24b70c697a2436a479c9e5eedc4ae29654'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), + ('Python', '3.11.3'), +] + +dependencies = [ + ('ncurses', '6.4'), + ('zlib', '1.2.13'), +] + +build_shared_libs = True + +sanity_check_paths = { + 'files': ['bin/llvm-ar', 'bin/FileCheck'], + 'dirs': ['include/llvm', 'include/llvm-c'], +} + +sanity_check_commands = ["llvm-ar --help"] + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/n/numba/llvmlite-0.41.1_static-linking-of-LLVM.patch b/easybuild/easyconfigs/n/numba/llvmlite-0.41.1_static-linking-of-LLVM.patch new file mode 100644 index 00000000000..9ead7b37820 --- /dev/null +++ b/easybuild/easyconfigs/n/numba/llvmlite-0.41.1_static-linking-of-LLVM.patch @@ -0,0 +1,22 @@ +Link llvmlite statically to LLVM. This allows us to use the version of LLVM that is +officially supported by llvmlite (14.0.3) instead of the one that is default in the toolchain +(for 2023a, that is LLVM 16.0.6). This is a pragmatic solution that is much easier than patching +llvmlite to work with a different version of LLVM. + +Author: Jakob Schiotz, Techn. Univ. Denmark +Email: schiotz@fysik.dtu.dk +Date: 10. November 2023 + +diff --git a/ffi/build.py b/ffi/build.py +index f4f8c69..189a0e9 100755 +--- a/ffi/build.py ++++ b/ffi/build.py +@@ -174,7 +174,7 @@ def main_posix(kind, library_ext): + raise RuntimeError(msg) + + # Get LLVM information for building +- libs = run_llvm_config(llvm_config, "--system-libs --libs all".split()) ++ libs = run_llvm_config(llvm_config, "--link-static --system-libs --libs all".split()) + # Normalize whitespace (trim newlines) + os.environ['LLVM_LIBS'] = ' '.join(libs.split()) + diff --git a/easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb b/easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb new file mode 100644 index 00000000000..d6beae0bc5d --- /dev/null +++ b/easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb @@ -0,0 +1,55 @@ +easyblock = 'PythonBundle' + +name = 'numba' +version = '0.58.1' + +homepage = 'https://numba.pydata.org/' +description = """Numba is an Open Source NumPy-aware optimizing compiler for +Python sponsored by Continuum Analytics, Inc. It uses the remarkable LLVM +compiler infrastructure to compile Python syntax to machine code.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('LLVM', '14.0.3'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +use_pip = True +sanity_pip_check = True + +local_llvmlite_preinstallopts = "export LLVM_CONFIG=${EBROOTLLVM}/bin/llvm-config && " + +exts_list = [ + ('llvmlite', '0.41.1', { + 'patches': ['llvmlite-0.41.1_static-linking-of-LLVM.patch'], + 'preinstallopts': "export LLVM_CONFIG=${EBROOTLLVM}/bin/llvm-config && ", + 'checksums': [ + {'llvmlite-0.41.1.tar.gz': 'f19f767a018e6ec89608e1f6b13348fa2fcde657151137cb64e56d48598a92db'}, + {'llvmlite-0.41.1_static-linking-of-LLVM.patch': + '0cb1fbe13db4ce8b697305229b6b6d79671a3ec5b93e95b4e059033ca626b43e'}, + ], + }), + (name, version, { + 'checksums': ['487ded0633efccd9ca3a46364b40006dbdaca0f95e99b8b83e778d1195ebcbaa'], + }), +] + +fix_python_shebang_for = ['bin/*'] + +sanity_check_paths = { + 'files': ['bin/numba'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -m llvmlite.tests", + "numba --help", +] + +moduleclass = 'lang' From c564011ae4280907971ceef92568fd7a27ed57ca Mon Sep 17 00:00:00 2001 From: Jakob Schiotz Date: Fri, 10 Nov 2023 09:54:19 +0100 Subject: [PATCH 043/356] Remove superfluous local variable (--inject-checksums moved the preinstallopts stuff around). --- easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb | 2 -- 1 file changed, 2 deletions(-) diff --git a/easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb b/easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb index d6beae0bc5d..233c86071ab 100644 --- a/easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb +++ b/easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb @@ -23,8 +23,6 @@ dependencies = [ use_pip = True sanity_pip_check = True -local_llvmlite_preinstallopts = "export LLVM_CONFIG=${EBROOTLLVM}/bin/llvm-config && " - exts_list = [ ('llvmlite', '0.41.1', { 'patches': ['llvmlite-0.41.1_static-linking-of-LLVM.patch'], From 610d20fcaba5368423a8d9421e39b9ba268fa45a Mon Sep 17 00:00:00 2001 From: Jakob Schiotz Date: Fri, 10 Nov 2023 15:45:38 +0100 Subject: [PATCH 044/356] Make special LLVM module with llvmlite specific patches applied. --- ...0.eb => LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb} | 14 +++++++++++--- .../easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb | 2 +- 2 files changed, 12 insertions(+), 4 deletions(-) rename easybuild/easyconfigs/l/LLVM/{LLVM-14.0.3-GCCcore-12.3.0.eb => LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb} (76%) diff --git a/easybuild/easyconfigs/l/LLVM/LLVM-14.0.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb similarity index 76% rename from easybuild/easyconfigs/l/LLVM/LLVM-14.0.3-GCCcore-12.3.0.eb rename to easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb index 09088210f91..2f9a5d05bc9 100644 --- a/easybuild/easyconfigs/l/LLVM/LLVM-14.0.3-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb @@ -1,5 +1,6 @@ name = 'LLVM' -version = '14.0.3' +version = '14.0.6' +versionsuffix = '-llvmlite' homepage = "https://llvm.org/" description = """The LLVM Core libraries provide a modern source- and target-independent @@ -13,9 +14,16 @@ description = """The LLVM Core libraries provide a modern source- and target-ind toolchain = {'name': 'GCCcore', 'version': '12.3.0'} toolchainopts = {'cstd': 'gnu++11', 'pic': True} -source_urls = ['https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s/'] +source_urls = [ + 'https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s/', + 'https://github.com/numba/llvmlite/raw/v0.41.1/conda-recipes/', + ] sources = ['llvm-%(version)s.src.tar.xz'] -checksums = ['1e09e8c26e1b67bc94a128b62e9b9c24b70c697a2436a479c9e5eedc4ae29654'] +patches = [ + 'llvm14-remove-use-of-clonefile.patch', + 'llvm14-clear-gotoffsetmap.patch', + 'llvm14-svml.patch', +] builddependencies = [ ('binutils', '2.40'), diff --git a/easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb b/easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb index 233c86071ab..f07c3608f25 100644 --- a/easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb +++ b/easybuild/easyconfigs/n/numba/numba-0.58.1-foss-2023a.eb @@ -12,7 +12,7 @@ toolchain = {'name': 'foss', 'version': '2023a'} toolchainopts = {'pic': True} builddependencies = [ - ('LLVM', '14.0.3'), + ('LLVM', '14.0.6', '-llvmlite'), ] dependencies = [ From ee7d33ed3f95056449308c9ed7456f25b73ca2a3 Mon Sep 17 00:00:00 2001 From: Jakob Schiotz Date: Fri, 10 Nov 2023 16:00:22 +0100 Subject: [PATCH 045/356] Add the forgotten checksums. --- .../l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb index 2f9a5d05bc9..6034a8bc8ed 100644 --- a/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb +++ b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb @@ -24,6 +24,12 @@ patches = [ 'llvm14-clear-gotoffsetmap.patch', 'llvm14-svml.patch', ] +checksums = [ + {'llvm-14.0.6.src.tar.xz': '050922ecaaca5781fdf6631ea92bc715183f202f9d2f15147226f023414f619a'}, + {'llvm14-remove-use-of-clonefile.patch': 'fd246e62292c6c7ad6ab4fa7626b7176f40b8141ec4cd78e811fea26bd29a1f1'}, + {'llvm14-clear-gotoffsetmap.patch': '690c96dcbd0a81e11d87f02e740c4ef34a0c578be741aaa6559cc00a5349fabf'}, + {'llvm14-svml.patch': '59df18ea4af3479de42ecbc1c524d4106f4a55f23335a64c0f0d5433daaba1b7'}, +] builddependencies = [ ('binutils', '2.40'), From b9b15e0a541ca0d09beb312d1a2a7cdb6fb71473 Mon Sep 17 00:00:00 2001 From: Jakob Schiotz Date: Fri, 10 Nov 2023 16:22:52 +0100 Subject: [PATCH 046/356] Fix bad indentation. --- .../easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb index 6034a8bc8ed..fe8f2a38ca2 100644 --- a/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb +++ b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb @@ -17,7 +17,7 @@ toolchainopts = {'cstd': 'gnu++11', 'pic': True} source_urls = [ 'https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s/', 'https://github.com/numba/llvmlite/raw/v0.41.1/conda-recipes/', - ] +] sources = ['llvm-%(version)s.src.tar.xz'] patches = [ 'llvm14-remove-use-of-clonefile.patch', From 2b83a3d2e81b4670a7754f41d1b29c564fc17922 Mon Sep 17 00:00:00 2001 From: Jakob Schiotz Date: Sat, 11 Nov 2023 09:36:55 +0100 Subject: [PATCH 047/356] Add patch files to EasyBuild instead of downloading (works, but test suite complains). --- .../LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb | 22 +- .../LLVM/LLVM-14.0.6-clear-gotoffsetmap.patch | 31 + .../easyconfigs/l/LLVM/LLVM-14.0.6-svml.patch | 2194 +++++++++++++++++ 3 files changed, 2236 insertions(+), 11 deletions(-) create mode 100644 easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-clear-gotoffsetmap.patch create mode 100644 easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-svml.patch diff --git a/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb index fe8f2a38ca2..6ece6bfc09b 100644 --- a/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb +++ b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-GCCcore-12.3.0-llvmlite.eb @@ -9,26 +9,26 @@ description = """The LLVM Core libraries provide a modern source- and target-ind specified code representation known as the LLVM intermediate representation ("LLVM IR"). The LLVM Core libraries are well documented, and it is particularly easy to invent your own language (or port an existing compiler) - to use LLVM as an optimizer and code generator.""" + to use LLVM as an optimizer and code generator. + + This version include patches for llvmlite / numba.""" toolchain = {'name': 'GCCcore', 'version': '12.3.0'} toolchainopts = {'cstd': 'gnu++11', 'pic': True} -source_urls = [ - 'https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s/', - 'https://github.com/numba/llvmlite/raw/v0.41.1/conda-recipes/', -] +source_urls = ['https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s/'] sources = ['llvm-%(version)s.src.tar.xz'] + +# Patches from https://github.com/numba/llvmlite/raw/v0.41.1/conda-recipes/ but +# renamed to follow EasyBuild conventions. patches = [ - 'llvm14-remove-use-of-clonefile.patch', - 'llvm14-clear-gotoffsetmap.patch', - 'llvm14-svml.patch', + 'LLVM-14.0.6-clear-gotoffsetmap.patch', + 'LLVM-14.0.6-svml.patch', ] checksums = [ {'llvm-14.0.6.src.tar.xz': '050922ecaaca5781fdf6631ea92bc715183f202f9d2f15147226f023414f619a'}, - {'llvm14-remove-use-of-clonefile.patch': 'fd246e62292c6c7ad6ab4fa7626b7176f40b8141ec4cd78e811fea26bd29a1f1'}, - {'llvm14-clear-gotoffsetmap.patch': '690c96dcbd0a81e11d87f02e740c4ef34a0c578be741aaa6559cc00a5349fabf'}, - {'llvm14-svml.patch': '59df18ea4af3479de42ecbc1c524d4106f4a55f23335a64c0f0d5433daaba1b7'}, + {'LLVM-14.0.6-clear-gotoffsetmap.patch': '690c96dcbd0a81e11d87f02e740c4ef34a0c578be741aaa6559cc00a5349fabf'}, + {'LLVM-14.0.6-svml.patch': '59df18ea4af3479de42ecbc1c524d4106f4a55f23335a64c0f0d5433daaba1b7'}, ] builddependencies = [ diff --git a/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-clear-gotoffsetmap.patch b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-clear-gotoffsetmap.patch new file mode 100644 index 00000000000..239f4ab20c1 --- /dev/null +++ b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-clear-gotoffsetmap.patch @@ -0,0 +1,31 @@ +From 322c79fff224389b4df9f24ac22965867007c2fa Mon Sep 17 00:00:00 2001 +From: Graham Markall +Date: Mon, 13 Mar 2023 21:35:11 +0000 +Subject: [PATCH] RuntimeDyldELF: Clear the GOTOffsetMap when finalizing the + load + +This needs resetting so that stale entries are not left behind when the +GOT section and index are reset. + +See llvm/llvm#61402: RuntimeDyldELF doesn't clear GOTOffsetMap in +finalizeLoad(), leading to invalid GOT relocations on AArch64 - +https://github.com/llvm/llvm-project/issues/61402. +--- + llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/llvm-14.0.6.src/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp b/llvm-14.0.6.src/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp +index f92618afdff6..eb3c27a9406a 100644 +--- a/llvm-14.0.6.src/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp ++++ b/llvm-14.0.6.src/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp +@@ -2345,6 +2345,7 @@ Error RuntimeDyldELF::finalizeLoad(const ObjectFile &Obj, + } + } + ++ GOTOffsetMap.clear(); + GOTSectionID = 0; + CurrentGOTIndex = 0; + +-- +2.34.1 + diff --git a/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-svml.patch b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-svml.patch new file mode 100644 index 00000000000..c753d3f5971 --- /dev/null +++ b/easybuild/easyconfigs/l/LLVM/LLVM-14.0.6-svml.patch @@ -0,0 +1,2194 @@ +From 9de32f5474f1f78990b399214bdbb6c21f8f098e Mon Sep 17 00:00:00 2001 +From: Ivan Butygin +Date: Sun, 24 Jul 2022 20:31:29 +0200 +Subject: [PATCH] Fixes vectorizer and extends SVML support + +Fixes vectorizer and extends SVML support +Patch was updated to fix SVML calling convention issues uncovered by llvm 10. +In previous versions of patch SVML calling convention was selected based on +compilation settings. So if you try to call 256bit vector function from avx512 +code function will be called with avx512 cc which is incorrect. To fix this +SVML cc was separated into 3 different cc for 128, 256 and 512bit vector lengths +which are selected based on actual input vector length. + +Original patch merged several fixes: + +1. https://reviews.llvm.org/D47188 patch fixes the problem with improper calls +to SVML library as it has non-standard calling conventions. So accordingly it +has SVML calling conventions definitions and code to set CC to the vectorized +calls. As SVML provides several implementations for the math functions we also +took into consideration fast attribute and select more fast implementation in +such case. This work is based on original Matt Masten's work. +Author: Denis Nagorny + +2. https://reviews.llvm.org/D53035 patch implements support to legalize SVML +calls by breaking down the illegal vector call instruction into multiple legal +vector call instructions during code generation. Currently the vectorizer does +not check legality of the generated SVML (or any VECLIB) call instructions, and +this can lead to potential problems even during vector type legalization. This +patch addresses this issue by adding a legality check during code generation and +replaces the illegal SVML call with corresponding legalized instructions. +(RFC: http://lists.llvm.org/pipermail/llvm-dev/2018-June/124357.html) +Author: Karthik Senthil + +diff --git a/llvm-14.0.6.src/include/llvm/Analysis/TargetLibraryInfo.h b/llvm-14.0.6.src/include/llvm/Analysis/TargetLibraryInfo.h +index 17d1e3f770c14..110ff08189867 100644 +--- a/llvm-14.0.6.src/include/llvm/Analysis/TargetLibraryInfo.h ++++ b/llvm-14.0.6.src/include/llvm/Analysis/TargetLibraryInfo.h +@@ -39,6 +39,12 @@ struct VecDesc { + NotLibFunc + }; + ++enum SVMLAccuracy { ++ SVML_DEFAULT, ++ SVML_HA, ++ SVML_EP ++}; ++ + /// Implementation of the target library information. + /// + /// This class constructs tables that hold the target library information and +@@ -157,7 +163,7 @@ class TargetLibraryInfoImpl { + /// Return true if the function F has a vector equivalent with vectorization + /// factor VF. + bool isFunctionVectorizable(StringRef F, const ElementCount &VF) const { +- return !getVectorizedFunction(F, VF).empty(); ++ return !getVectorizedFunction(F, VF, false).empty(); + } + + /// Return true if the function F has a vector equivalent with any +@@ -166,7 +172,10 @@ class TargetLibraryInfoImpl { + + /// Return the name of the equivalent of F, vectorized with factor VF. If no + /// such mapping exists, return the empty string. +- StringRef getVectorizedFunction(StringRef F, const ElementCount &VF) const; ++ std::string getVectorizedFunction(StringRef F, const ElementCount &VF, bool IsFast) const; ++ ++ Optional getVectorizedFunctionCallingConv( ++ StringRef F, const FunctionType &FTy, const DataLayout &DL) const; + + /// Set to true iff i32 parameters to library functions should have signext + /// or zeroext attributes if they correspond to C-level int or unsigned int, +@@ -326,8 +335,13 @@ class TargetLibraryInfo { + bool isFunctionVectorizable(StringRef F) const { + return Impl->isFunctionVectorizable(F); + } +- StringRef getVectorizedFunction(StringRef F, const ElementCount &VF) const { +- return Impl->getVectorizedFunction(F, VF); ++ std::string getVectorizedFunction(StringRef F, const ElementCount &VF, bool IsFast) const { ++ return Impl->getVectorizedFunction(F, VF, IsFast); ++ } ++ ++ Optional getVectorizedFunctionCallingConv( ++ StringRef F, const FunctionType &FTy, const DataLayout &DL) const { ++ return Impl->getVectorizedFunctionCallingConv(F, FTy, DL); + } + + /// Tests if the function is both available and a candidate for optimized code +diff --git a/llvm-14.0.6.src/include/llvm/AsmParser/LLToken.h b/llvm-14.0.6.src/include/llvm/AsmParser/LLToken.h +index 78ebb35e0ea4d..3ffb57db8b18b 100644 +--- a/llvm-14.0.6.src/include/llvm/AsmParser/LLToken.h ++++ b/llvm-14.0.6.src/include/llvm/AsmParser/LLToken.h +@@ -133,6 +133,9 @@ enum Kind { + kw_fastcc, + kw_coldcc, + kw_intel_ocl_bicc, ++ kw_intel_svmlcc128, ++ kw_intel_svmlcc256, ++ kw_intel_svmlcc512, + kw_cfguard_checkcc, + kw_x86_stdcallcc, + kw_x86_fastcallcc, +diff --git a/llvm-14.0.6.src/include/llvm/IR/CMakeLists.txt b/llvm-14.0.6.src/include/llvm/IR/CMakeLists.txt +index 0498fc269b634..23bb3de41bc1a 100644 +--- a/llvm-14.0.6.src/include/llvm/IR/CMakeLists.txt ++++ b/llvm-14.0.6.src/include/llvm/IR/CMakeLists.txt +@@ -20,3 +20,7 @@ tablegen(LLVM IntrinsicsX86.h -gen-intrinsic-enums -intrinsic-prefix=x86) + tablegen(LLVM IntrinsicsXCore.h -gen-intrinsic-enums -intrinsic-prefix=xcore) + tablegen(LLVM IntrinsicsVE.h -gen-intrinsic-enums -intrinsic-prefix=ve) + add_public_tablegen_target(intrinsics_gen) ++ ++set(LLVM_TARGET_DEFINITIONS SVML.td) ++tablegen(LLVM SVML.inc -gen-svml) ++add_public_tablegen_target(svml_gen) +diff --git a/llvm-14.0.6.src/include/llvm/IR/CallingConv.h b/llvm-14.0.6.src/include/llvm/IR/CallingConv.h +index fd28542465225..096eea1a8e19b 100644 +--- a/llvm-14.0.6.src/include/llvm/IR/CallingConv.h ++++ b/llvm-14.0.6.src/include/llvm/IR/CallingConv.h +@@ -252,6 +252,11 @@ namespace CallingConv { + /// M68k_INTR - Calling convention used for M68k interrupt routines. + M68k_INTR = 101, + ++ /// Intel_SVML - Calling conventions for Intel Short Math Vector Library ++ Intel_SVML128 = 102, ++ Intel_SVML256 = 103, ++ Intel_SVML512 = 104, ++ + /// The highest possible calling convention ID. Must be some 2^k - 1. + MaxID = 1023 + }; +diff --git a/llvm-14.0.6.src/include/llvm/IR/SVML.td b/llvm-14.0.6.src/include/llvm/IR/SVML.td +new file mode 100644 +index 0000000000000..5af710404c9d9 +--- /dev/null ++++ b/llvm-14.0.6.src/include/llvm/IR/SVML.td +@@ -0,0 +1,62 @@ ++//===-- Intel_SVML.td - Defines SVML call variants ---------*- tablegen -*-===// ++// ++// The LLVM Compiler Infrastructure ++// ++// This file is distributed under the University of Illinois Open Source ++// License. See LICENSE.TXT for details. ++// ++//===----------------------------------------------------------------------===// ++// ++// This file is used by TableGen to define the different typs of SVML function ++// variants used with -fveclib=SVML. ++// ++//===----------------------------------------------------------------------===// ++ ++class SvmlVariant; ++ ++def sin : SvmlVariant; ++def cos : SvmlVariant; ++def pow : SvmlVariant; ++def exp : SvmlVariant; ++def log : SvmlVariant; ++def acos : SvmlVariant; ++def acosh : SvmlVariant; ++def asin : SvmlVariant; ++def asinh : SvmlVariant; ++def atan2 : SvmlVariant; ++def atan : SvmlVariant; ++def atanh : SvmlVariant; ++def cbrt : SvmlVariant; ++def cdfnorm : SvmlVariant; ++def cdfnorminv : SvmlVariant; ++def cosd : SvmlVariant; ++def cosh : SvmlVariant; ++def erf : SvmlVariant; ++def erfc : SvmlVariant; ++def erfcinv : SvmlVariant; ++def erfinv : SvmlVariant; ++def exp10 : SvmlVariant; ++def exp2 : SvmlVariant; ++def expm1 : SvmlVariant; ++def hypot : SvmlVariant; ++def invsqrt : SvmlVariant; ++def log10 : SvmlVariant; ++def log1p : SvmlVariant; ++def log2 : SvmlVariant; ++def sind : SvmlVariant; ++def sinh : SvmlVariant; ++def sqrt : SvmlVariant; ++def tan : SvmlVariant; ++def tanh : SvmlVariant; ++ ++// TODO: SVML does not currently provide _ha and _ep variants of these fucnctions. ++// We should call the default variant of these functions in all cases instead. ++ ++// def nearbyint : SvmlVariant; ++// def logb : SvmlVariant; ++// def floor : SvmlVariant; ++// def fmod : SvmlVariant; ++// def ceil : SvmlVariant; ++// def trunc : SvmlVariant; ++// def rint : SvmlVariant; ++// def round : SvmlVariant; +diff --git a/llvm-14.0.6.src/lib/Analysis/CMakeLists.txt b/llvm-14.0.6.src/lib/Analysis/CMakeLists.txt +index aec84124129f4..98286e166fbe2 100644 +--- a/llvm-14.0.6.src/lib/Analysis/CMakeLists.txt ++++ b/llvm-14.0.6.src/lib/Analysis/CMakeLists.txt +@@ -150,6 +150,7 @@ add_llvm_component_library(LLVMAnalysis + DEPENDS + intrinsics_gen + ${MLDeps} ++ svml_gen + + LINK_LIBS + ${MLLinkDeps} +diff --git a/llvm-14.0.6.src/lib/Analysis/TargetLibraryInfo.cpp b/llvm-14.0.6.src/lib/Analysis/TargetLibraryInfo.cpp +index 02923c2c7eb14..83abde28a62a4 100644 +--- a/llvm-14.0.6.src/lib/Analysis/TargetLibraryInfo.cpp ++++ b/llvm-14.0.6.src/lib/Analysis/TargetLibraryInfo.cpp +@@ -110,6 +110,11 @@ bool TargetLibraryInfoImpl::isCallingConvCCompatible(Function *F) { + F->getFunctionType()); + } + ++static std::string svmlMangle(StringRef FnName, const bool IsFast) { ++ std::string FullName = FnName.str(); ++ return IsFast ? FullName : FullName + "_ha"; ++} ++ + /// Initialize the set of available library functions based on the specified + /// target triple. This should be carefully written so that a missing target + /// triple gets a sane set of defaults. +@@ -1876,8 +1881,9 @@ void TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib( + } + case SVML: { + const VecDesc VecFuncs[] = { +- #define TLI_DEFINE_SVML_VECFUNCS +- #include "llvm/Analysis/VecFuncs.def" ++ #define GET_SVML_VARIANTS ++ #include "llvm/IR/SVML.inc" ++ #undef GET_SVML_VARIANTS + }; + addVectorizableFunctions(VecFuncs); + break; +@@ -1897,20 +1903,51 @@ bool TargetLibraryInfoImpl::isFunctionVectorizable(StringRef funcName) const { + return I != VectorDescs.end() && StringRef(I->ScalarFnName) == funcName; + } + +-StringRef +-TargetLibraryInfoImpl::getVectorizedFunction(StringRef F, +- const ElementCount &VF) const { ++std::string TargetLibraryInfoImpl::getVectorizedFunction(StringRef F, ++ const ElementCount &VF, ++ bool IsFast) const { ++ bool FromSVML = ClVectorLibrary == SVML; + F = sanitizeFunctionName(F); + if (F.empty()) +- return F; ++ return F.str(); + std::vector::const_iterator I = + llvm::lower_bound(VectorDescs, F, compareWithScalarFnName); + while (I != VectorDescs.end() && StringRef(I->ScalarFnName) == F) { +- if (I->VectorizationFactor == VF) +- return I->VectorFnName; ++ if (I->VectorizationFactor == VF) { ++ if (FromSVML) { ++ return svmlMangle(I->VectorFnName, IsFast); ++ } ++ return I->VectorFnName.str(); ++ } + ++I; + } +- return StringRef(); ++ return std::string(); ++} ++ ++static CallingConv::ID getSVMLCallingConv(const DataLayout &DL, const FunctionType &FType) ++{ ++ assert(isa(FType.getReturnType())); ++ auto *VecCallRetType = cast(FType.getReturnType()); ++ auto TypeBitWidth = DL.getTypeSizeInBits(VecCallRetType); ++ if (TypeBitWidth == 128) { ++ return CallingConv::Intel_SVML128; ++ } else if (TypeBitWidth == 256) { ++ return CallingConv::Intel_SVML256; ++ } else if (TypeBitWidth == 512) { ++ return CallingConv::Intel_SVML512; ++ } else { ++ llvm_unreachable("Invalid vector width"); ++ } ++ return 0; // not reachable ++} ++ ++Optional ++TargetLibraryInfoImpl::getVectorizedFunctionCallingConv( ++ StringRef F, const FunctionType &FTy, const DataLayout &DL) const { ++ if (F.startswith("__svml")) { ++ return getSVMLCallingConv(DL, FTy); ++ } ++ return {}; + } + + TargetLibraryInfo TargetLibraryAnalysis::run(const Function &F, +diff --git a/llvm-14.0.6.src/lib/AsmParser/LLLexer.cpp b/llvm-14.0.6.src/lib/AsmParser/LLLexer.cpp +index e3bf41c9721b6..4f9dccd4e0724 100644 +--- a/llvm-14.0.6.src/lib/AsmParser/LLLexer.cpp ++++ b/llvm-14.0.6.src/lib/AsmParser/LLLexer.cpp +@@ -603,6 +603,9 @@ lltok::Kind LLLexer::LexIdentifier() { + KEYWORD(spir_kernel); + KEYWORD(spir_func); + KEYWORD(intel_ocl_bicc); ++ KEYWORD(intel_svmlcc128); ++ KEYWORD(intel_svmlcc256); ++ KEYWORD(intel_svmlcc512); + KEYWORD(x86_64_sysvcc); + KEYWORD(win64cc); + KEYWORD(x86_regcallcc); +diff --git a/llvm-14.0.6.src/lib/AsmParser/LLParser.cpp b/llvm-14.0.6.src/lib/AsmParser/LLParser.cpp +index 432ec151cf8ae..3bd6ee61024b8 100644 +--- a/llvm-14.0.6.src/lib/AsmParser/LLParser.cpp ++++ b/llvm-14.0.6.src/lib/AsmParser/LLParser.cpp +@@ -1781,6 +1781,9 @@ void LLParser::parseOptionalDLLStorageClass(unsigned &Res) { + /// ::= 'ccc' + /// ::= 'fastcc' + /// ::= 'intel_ocl_bicc' ++/// ::= 'intel_svmlcc128' ++/// ::= 'intel_svmlcc256' ++/// ::= 'intel_svmlcc512' + /// ::= 'coldcc' + /// ::= 'cfguard_checkcc' + /// ::= 'x86_stdcallcc' +@@ -1850,6 +1853,9 @@ bool LLParser::parseOptionalCallingConv(unsigned &CC) { + case lltok::kw_spir_kernel: CC = CallingConv::SPIR_KERNEL; break; + case lltok::kw_spir_func: CC = CallingConv::SPIR_FUNC; break; + case lltok::kw_intel_ocl_bicc: CC = CallingConv::Intel_OCL_BI; break; ++ case lltok::kw_intel_svmlcc128:CC = CallingConv::Intel_SVML128; break; ++ case lltok::kw_intel_svmlcc256:CC = CallingConv::Intel_SVML256; break; ++ case lltok::kw_intel_svmlcc512:CC = CallingConv::Intel_SVML512; break; + case lltok::kw_x86_64_sysvcc: CC = CallingConv::X86_64_SysV; break; + case lltok::kw_win64cc: CC = CallingConv::Win64; break; + case lltok::kw_webkit_jscc: CC = CallingConv::WebKit_JS; break; +diff --git a/llvm-14.0.6.src/lib/CodeGen/ReplaceWithVeclib.cpp b/llvm-14.0.6.src/lib/CodeGen/ReplaceWithVeclib.cpp +index 0ff045fa787e8..175651949ef85 100644 +--- a/llvm-14.0.6.src/lib/CodeGen/ReplaceWithVeclib.cpp ++++ b/llvm-14.0.6.src/lib/CodeGen/ReplaceWithVeclib.cpp +@@ -157,7 +157,7 @@ static bool replaceWithCallToVeclib(const TargetLibraryInfo &TLI, + // and the exact vector width of the call operands in the + // TargetLibraryInfo. + const std::string TLIName = +- std::string(TLI.getVectorizedFunction(ScalarName, VF)); ++ std::string(TLI.getVectorizedFunction(ScalarName, VF, CI.getFastMathFlags().isFast())); + + LLVM_DEBUG(dbgs() << DEBUG_TYPE << ": Looking up TLI mapping for `" + << ScalarName << "` and vector width " << VF << ".\n"); +diff --git a/llvm-14.0.6.src/lib/IR/AsmWriter.cpp b/llvm-14.0.6.src/lib/IR/AsmWriter.cpp +index 179754e275b03..c4e95752c97e8 100644 +--- a/llvm-14.0.6.src/lib/IR/AsmWriter.cpp ++++ b/llvm-14.0.6.src/lib/IR/AsmWriter.cpp +@@ -306,6 +306,9 @@ static void PrintCallingConv(unsigned cc, raw_ostream &Out) { + case CallingConv::X86_RegCall: Out << "x86_regcallcc"; break; + case CallingConv::X86_VectorCall:Out << "x86_vectorcallcc"; break; + case CallingConv::Intel_OCL_BI: Out << "intel_ocl_bicc"; break; ++ case CallingConv::Intel_SVML128: Out << "intel_svmlcc128"; break; ++ case CallingConv::Intel_SVML256: Out << "intel_svmlcc256"; break; ++ case CallingConv::Intel_SVML512: Out << "intel_svmlcc512"; break; + case CallingConv::ARM_APCS: Out << "arm_apcscc"; break; + case CallingConv::ARM_AAPCS: Out << "arm_aapcscc"; break; + case CallingConv::ARM_AAPCS_VFP: Out << "arm_aapcs_vfpcc"; break; +diff --git a/llvm-14.0.6.src/lib/IR/Verifier.cpp b/llvm-14.0.6.src/lib/IR/Verifier.cpp +index 989d01e2e3950..bae7382a36e13 100644 +--- a/llvm-14.0.6.src/lib/IR/Verifier.cpp ++++ b/llvm-14.0.6.src/lib/IR/Verifier.cpp +@@ -2457,6 +2457,9 @@ void Verifier::visitFunction(const Function &F) { + case CallingConv::Fast: + case CallingConv::Cold: + case CallingConv::Intel_OCL_BI: ++ case CallingConv::Intel_SVML128: ++ case CallingConv::Intel_SVML256: ++ case CallingConv::Intel_SVML512: + case CallingConv::PTX_Kernel: + case CallingConv::PTX_Device: + Assert(!F.isVarArg(), "Calling convention does not support varargs or " +diff --git a/llvm-14.0.6.src/lib/Target/X86/X86CallingConv.td b/llvm-14.0.6.src/lib/Target/X86/X86CallingConv.td +index 4dd8a6cdd8982..12e65521215e4 100644 +--- a/llvm-14.0.6.src/lib/Target/X86/X86CallingConv.td ++++ b/llvm-14.0.6.src/lib/Target/X86/X86CallingConv.td +@@ -498,6 +498,21 @@ def RetCC_X86_64 : CallingConv<[ + CCDelegateTo + ]>; + ++// Intel_SVML return-value convention. ++def RetCC_Intel_SVML : CallingConv<[ ++ // Vector types are returned in XMM0,XMM1 ++ CCIfType<[v4f32, v2f64], ++ CCAssignToReg<[XMM0,XMM1]>>, ++ ++ // 256-bit FP vectors ++ CCIfType<[v8f32, v4f64], ++ CCAssignToReg<[YMM0,YMM1]>>, ++ ++ // 512-bit FP vectors ++ CCIfType<[v16f32, v8f64], ++ CCAssignToReg<[ZMM0,ZMM1]>> ++]>; ++ + // This is the return-value convention used for the entire X86 backend. + let Entry = 1 in + def RetCC_X86 : CallingConv<[ +@@ -505,6 +520,10 @@ def RetCC_X86 : CallingConv<[ + // Check if this is the Intel OpenCL built-ins calling convention + CCIfCC<"CallingConv::Intel_OCL_BI", CCDelegateTo>, + ++ CCIfCC<"CallingConv::Intel_SVML128", CCDelegateTo>, ++ CCIfCC<"CallingConv::Intel_SVML256", CCDelegateTo>, ++ CCIfCC<"CallingConv::Intel_SVML512", CCDelegateTo>, ++ + CCIfSubtarget<"is64Bit()", CCDelegateTo>, + CCDelegateTo + ]>; +@@ -1064,6 +1083,30 @@ def CC_Intel_OCL_BI : CallingConv<[ + CCDelegateTo + ]>; + ++// X86-64 Intel Short Vector Math Library calling convention. ++def CC_Intel_SVML : CallingConv<[ ++ ++ // The SSE vector arguments are passed in XMM registers. ++ CCIfType<[v4f32, v2f64], ++ CCAssignToReg<[XMM0, XMM1, XMM2]>>, ++ ++ // The 256-bit vector arguments are passed in YMM registers. ++ CCIfType<[v8f32, v4f64], ++ CCAssignToReg<[YMM0, YMM1, YMM2]>>, ++ ++ // The 512-bit vector arguments are passed in ZMM registers. ++ CCIfType<[v16f32, v8f64], ++ CCAssignToReg<[ZMM0, ZMM1, ZMM2]>> ++]>; ++ ++def CC_X86_32_Intr : CallingConv<[ ++ CCAssignToStack<4, 4> ++]>; ++ ++def CC_X86_64_Intr : CallingConv<[ ++ CCAssignToStack<8, 8> ++]>; ++ + //===----------------------------------------------------------------------===// + // X86 Root Argument Calling Conventions + //===----------------------------------------------------------------------===// +@@ -1115,6 +1158,9 @@ def CC_X86_64 : CallingConv<[ + let Entry = 1 in + def CC_X86 : CallingConv<[ + CCIfCC<"CallingConv::Intel_OCL_BI", CCDelegateTo>, ++ CCIfCC<"CallingConv::Intel_SVML128", CCDelegateTo>, ++ CCIfCC<"CallingConv::Intel_SVML256", CCDelegateTo>, ++ CCIfCC<"CallingConv::Intel_SVML512", CCDelegateTo>, + CCIfSubtarget<"is64Bit()", CCDelegateTo>, + CCDelegateTo + ]>; +@@ -1227,3 +1273,27 @@ def CSR_SysV64_RegCall_NoSSE : CalleeSavedRegs<(add RBX, RBP, + (sequence "R%u", 12, 15))>; + def CSR_SysV64_RegCall : CalleeSavedRegs<(add CSR_SysV64_RegCall_NoSSE, + (sequence "XMM%u", 8, 15))>; ++ ++// SVML calling convention ++def CSR_32_Intel_SVML : CalleeSavedRegs<(add CSR_32_RegCall_NoSSE)>; ++def CSR_32_Intel_SVML_AVX512 : CalleeSavedRegs<(add CSR_32_Intel_SVML, ++ K4, K5, K6, K7)>; ++ ++def CSR_64_Intel_SVML_NoSSE : CalleeSavedRegs<(add RBX, RSI, RDI, RBP, RSP, R12, R13, R14, R15)>; ++ ++def CSR_64_Intel_SVML : CalleeSavedRegs<(add CSR_64_Intel_SVML_NoSSE, ++ (sequence "XMM%u", 8, 15))>; ++def CSR_Win64_Intel_SVML : CalleeSavedRegs<(add CSR_64_Intel_SVML_NoSSE, ++ (sequence "XMM%u", 6, 15))>; ++ ++def CSR_64_Intel_SVML_AVX : CalleeSavedRegs<(add CSR_64_Intel_SVML_NoSSE, ++ (sequence "YMM%u", 8, 15))>; ++def CSR_Win64_Intel_SVML_AVX : CalleeSavedRegs<(add CSR_64_Intel_SVML_NoSSE, ++ (sequence "YMM%u", 6, 15))>; ++ ++def CSR_64_Intel_SVML_AVX512 : CalleeSavedRegs<(add CSR_64_Intel_SVML_NoSSE, ++ (sequence "ZMM%u", 16, 31), ++ K4, K5, K6, K7)>; ++def CSR_Win64_Intel_SVML_AVX512 : CalleeSavedRegs<(add CSR_64_Intel_SVML_NoSSE, ++ (sequence "ZMM%u", 6, 21), ++ K4, K5, K6, K7)>; +diff --git a/llvm-14.0.6.src/lib/Target/X86/X86ISelLowering.cpp b/llvm-14.0.6.src/lib/Target/X86/X86ISelLowering.cpp +index 8bb7e81e19bbd..1780ce3fc6467 100644 +--- a/llvm-14.0.6.src/lib/Target/X86/X86ISelLowering.cpp ++++ b/llvm-14.0.6.src/lib/Target/X86/X86ISelLowering.cpp +@@ -3788,7 +3788,8 @@ void VarArgsLoweringHelper::forwardMustTailParameters(SDValue &Chain) { + // FIXME: Only some x86_32 calling conventions support AVX512. + if (Subtarget.useAVX512Regs() && + (is64Bit() || (CallConv == CallingConv::X86_VectorCall || +- CallConv == CallingConv::Intel_OCL_BI))) ++ CallConv == CallingConv::Intel_OCL_BI || ++ CallConv == CallingConv::Intel_SVML512))) + VecVT = MVT::v16f32; + else if (Subtarget.hasAVX()) + VecVT = MVT::v8f32; +diff --git a/llvm-14.0.6.src/lib/Target/X86/X86RegisterInfo.cpp b/llvm-14.0.6.src/lib/Target/X86/X86RegisterInfo.cpp +index 130cb61cdde24..9eec3b25ca9f2 100644 +--- a/llvm-14.0.6.src/lib/Target/X86/X86RegisterInfo.cpp ++++ b/llvm-14.0.6.src/lib/Target/X86/X86RegisterInfo.cpp +@@ -272,6 +272,42 @@ X86RegisterInfo::getRegPressureLimit(const TargetRegisterClass *RC, + } + } + ++namespace { ++std::pair getSVMLRegMaskAndSaveList( ++ bool Is64Bit, bool IsWin64, CallingConv::ID CC) { ++ assert(CC >= CallingConv::Intel_SVML128 && CC <= CallingConv::Intel_SVML512); ++ unsigned Abi = CC - CallingConv::Intel_SVML128 ; // 0 - 128, 1 - 256, 2 - 512 ++ ++ const std::pair Abi64[] = { ++ std::make_pair(CSR_64_Intel_SVML_RegMask, CSR_64_Intel_SVML_SaveList), ++ std::make_pair(CSR_64_Intel_SVML_AVX_RegMask, CSR_64_Intel_SVML_AVX_SaveList), ++ std::make_pair(CSR_64_Intel_SVML_AVX512_RegMask, CSR_64_Intel_SVML_AVX512_SaveList), ++ }; ++ ++ const std::pair AbiWin64[] = { ++ std::make_pair(CSR_Win64_Intel_SVML_RegMask, CSR_Win64_Intel_SVML_SaveList), ++ std::make_pair(CSR_Win64_Intel_SVML_AVX_RegMask, CSR_Win64_Intel_SVML_AVX_SaveList), ++ std::make_pair(CSR_Win64_Intel_SVML_AVX512_RegMask, CSR_Win64_Intel_SVML_AVX512_SaveList), ++ }; ++ ++ const std::pair Abi32[] = { ++ std::make_pair(CSR_32_Intel_SVML_RegMask, CSR_32_Intel_SVML_SaveList), ++ std::make_pair(CSR_32_Intel_SVML_RegMask, CSR_32_Intel_SVML_SaveList), ++ std::make_pair(CSR_32_Intel_SVML_AVX512_RegMask, CSR_32_Intel_SVML_AVX512_SaveList), ++ }; ++ ++ if (Is64Bit) { ++ if (IsWin64) { ++ return AbiWin64[Abi]; ++ } else { ++ return Abi64[Abi]; ++ } ++ } else { ++ return Abi32[Abi]; ++ } ++} ++} ++ + const MCPhysReg * + X86RegisterInfo::getCalleeSavedRegs(const MachineFunction *MF) const { + assert(MF && "MachineFunction required"); +@@ -327,6 +363,11 @@ X86RegisterInfo::getCalleeSavedRegs(const MachineFunction *MF) const { + return CSR_64_Intel_OCL_BI_SaveList; + break; + } ++ case CallingConv::Intel_SVML128: ++ case CallingConv::Intel_SVML256: ++ case CallingConv::Intel_SVML512: { ++ return getSVMLRegMaskAndSaveList(Is64Bit, IsWin64, CC).second; ++ } + case CallingConv::HHVM: + return CSR_64_HHVM_SaveList; + case CallingConv::X86_RegCall: +@@ -449,6 +490,11 @@ X86RegisterInfo::getCallPreservedMask(const MachineFunction &MF, + return CSR_64_Intel_OCL_BI_RegMask; + break; + } ++ case CallingConv::Intel_SVML128: ++ case CallingConv::Intel_SVML256: ++ case CallingConv::Intel_SVML512: { ++ return getSVMLRegMaskAndSaveList(Is64Bit, IsWin64, CC).first; ++ } + case CallingConv::HHVM: + return CSR_64_HHVM_RegMask; + case CallingConv::X86_RegCall: +diff --git a/llvm-14.0.6.src/lib/Target/X86/X86Subtarget.h b/llvm-14.0.6.src/lib/Target/X86/X86Subtarget.h +index 5d773f0c57dfb..6bdf5bc6f3fe9 100644 +--- a/llvm-14.0.6.src/lib/Target/X86/X86Subtarget.h ++++ b/llvm-14.0.6.src/lib/Target/X86/X86Subtarget.h +@@ -916,6 +916,9 @@ class X86Subtarget final : public X86GenSubtargetInfo { + case CallingConv::X86_ThisCall: + case CallingConv::X86_VectorCall: + case CallingConv::Intel_OCL_BI: ++ case CallingConv::Intel_SVML128: ++ case CallingConv::Intel_SVML256: ++ case CallingConv::Intel_SVML512: + return isTargetWin64(); + // This convention allows using the Win64 convention on other targets. + case CallingConv::Win64: +diff --git a/llvm-14.0.6.src/lib/Transforms/Utils/InjectTLIMappings.cpp b/llvm-14.0.6.src/lib/Transforms/Utils/InjectTLIMappings.cpp +index 047bf5569ded3..59897785f156c 100644 +--- a/llvm-14.0.6.src/lib/Transforms/Utils/InjectTLIMappings.cpp ++++ b/llvm-14.0.6.src/lib/Transforms/Utils/InjectTLIMappings.cpp +@@ -92,7 +92,7 @@ static void addMappingsFromTLI(const TargetLibraryInfo &TLI, CallInst &CI) { + + auto AddVariantDecl = [&](const ElementCount &VF) { + const std::string TLIName = +- std::string(TLI.getVectorizedFunction(ScalarName, VF)); ++ std::string(TLI.getVectorizedFunction(ScalarName, VF, CI.getFastMathFlags().isFast())); + if (!TLIName.empty()) { + std::string MangledName = + VFABI::mangleTLIVectorName(TLIName, ScalarName, CI.arg_size(), VF); +diff --git a/llvm-14.0.6.src/lib/Transforms/Vectorize/LoopVectorize.cpp b/llvm-14.0.6.src/lib/Transforms/Vectorize/LoopVectorize.cpp +index 46ff0994e04e7..f472af5e1a835 100644 +--- a/llvm-14.0.6.src/lib/Transforms/Vectorize/LoopVectorize.cpp ++++ b/llvm-14.0.6.src/lib/Transforms/Vectorize/LoopVectorize.cpp +@@ -712,6 +712,27 @@ class InnerLoopVectorizer { + virtual void printDebugTracesAtStart(){}; + virtual void printDebugTracesAtEnd(){}; + ++ /// Check legality of given SVML call instruction \p VecCall generated for ++ /// scalar call \p Call. If illegal then the appropriate legal instruction ++ /// is returned. ++ Value *legalizeSVMLCall(CallInst *VecCall, CallInst *Call); ++ ++ /// Returns the legal VF for a call instruction \p CI using TTI information ++ /// and vector type. ++ ElementCount getLegalVFForCall(CallInst *CI); ++ ++ /// Partially vectorize a given call \p Call by breaking it down into multiple ++ /// calls of \p LegalCall, decided by the variant VF \p LegalVF. ++ Value *partialVectorizeCall(CallInst *Call, CallInst *LegalCall, ++ unsigned LegalVF); ++ ++ /// Generate shufflevector instruction for a vector value \p V based on the ++ /// current \p Part and a smaller VF \p LegalVF. ++ Value *generateShuffleValue(Value *V, unsigned LegalVF, unsigned Part); ++ ++ /// Combine partially vectorized calls stored in \p CallResults. ++ Value *combinePartialVecCalls(SmallVectorImpl &CallResults); ++ + /// The original loop. + Loop *OrigLoop; + +@@ -4596,6 +4617,17 @@ static bool mayDivideByZero(Instruction &I) { + return !CInt || CInt->isZero(); + } + ++static void setVectorFunctionCallingConv(CallInst &CI, const DataLayout &DL, ++ const TargetLibraryInfo &TLI) { ++ Function *VectorF = CI.getCalledFunction(); ++ FunctionType *FTy = VectorF->getFunctionType(); ++ StringRef VFName = VectorF->getName(); ++ auto CC = TLI.getVectorizedFunctionCallingConv(VFName, *FTy, DL); ++ if (CC) { ++ CI.setCallingConv(*CC); ++ } ++} ++ + void InnerLoopVectorizer::widenCallInstruction(CallInst &I, VPValue *Def, + VPUser &ArgOperands, + VPTransformState &State) { +@@ -4664,9 +4696,246 @@ void InnerLoopVectorizer::widenCallInstruction(CallInst &I, VPValue *Def, + if (isa(V)) + V->copyFastMathFlags(CI); + ++ const DataLayout &DL = V->getModule()->getDataLayout(); ++ setVectorFunctionCallingConv(*V, DL, *TLI); ++ ++ // Perform legalization of SVML call instruction only if original call ++ // was not Intrinsic ++ if (!UseVectorIntrinsic && ++ (V->getCalledFunction()->getName()).startswith("__svml")) { ++ // assert((V->getCalledFunction()->getName()).startswith("__svml")); ++ LLVM_DEBUG(dbgs() << "LV(SVML): Vector call inst:"; V->dump()); ++ auto *LegalV = cast(legalizeSVMLCall(V, CI)); ++ LLVM_DEBUG(dbgs() << "LV: Completed SVML legalization.\n LegalV: "; ++ LegalV->dump()); ++ State.set(Def, LegalV, Part); ++ addMetadata(LegalV, &I); ++ } else { + State.set(Def, V, Part); + addMetadata(V, &I); ++ } ++ } ++} ++ ++//===----------------------------------------------------------------------===// ++// Implementation of functions for SVML vector call legalization. ++//===----------------------------------------------------------------------===// ++// ++// Unlike other VECLIBs, SVML needs to be used with target-legal ++// vector types. Otherwise, link failures and/or runtime failures ++// will occur. A motivating example could be - ++// ++// double *a; ++// float *b; ++// #pragma clang loop vectorize_width(8) ++// for(i = 0; i < N; ++i) { ++// a[i] = sin(i); // Legal SVML VF must be 4 or below on AVX ++// b[i] = cosf(i); // VF can be 8 on AVX since 8 floats can fit in YMM ++// } ++// ++// Current implementation of vector code generation in LV is ++// driven based on a single VF (in InnerLoopVectorizer::VF). This ++// inhibits the flexibility of adjusting/choosing different VF ++// for different instructions. ++// ++// Due to this limitation it is much more straightforward to ++// first generate the illegal sin8 (svml_sin8 for SVML vector ++// library) call and then legalize it than trying to avoid ++// generating illegal code from the beginning. ++// ++// A solution for this problem is to check legality of the ++// call instruction right after generating it in vectorizer and ++// if it is illegal we split the call arguments and issue multiple ++// calls to match the legal VF. This is demonstrated currently for ++// the SVML vector library calls (non-intrinsic version only). ++// ++// Future directions and extensions: ++// 1) This legalization example shows us that a good direction ++// for the VPlan framework would be to model the vector call ++// instructions in a way that legal VF for each call is chosen ++// correctly within vectorizer and illegal code generation is ++// avoided. ++// 2) This logic can also be extended to general vector functions ++// i.e. legalization OpenMP decalre simd functions. The ++// requirements needed for this will be documented soon. ++ ++Value *InnerLoopVectorizer::legalizeSVMLCall(CallInst *VecCall, ++ CallInst *Call) { ++ ElementCount LegalVF = getLegalVFForCall(VecCall); ++ ++ assert(LegalVF.getKnownMinValue() > 1 && ++ "Legal VF for SVML call must be greater than 1 to vectorize"); ++ ++ if (LegalVF == VF) ++ return VecCall; ++ else if (LegalVF.getKnownMinValue() > VF.getKnownMinValue()) ++ // TODO: handle case when we are underfilling vectors ++ return VecCall; ++ ++ // Legal VF for this SVML call is smaller than chosen VF, break it down into ++ // smaller call instructions ++ ++ // Convert args, types and return type to match legal VF ++ SmallVector NewTys; ++ SmallVector NewArgs; ++ ++ for (Value *ArgOperand : Call->args()) { ++ Type *Ty = ToVectorTy(ArgOperand->getType(), LegalVF); ++ NewTys.push_back(Ty); ++ NewArgs.push_back(UndefValue::get(Ty)); + } ++ ++ // Construct legal vector function ++ const VFShape Shape = ++ VFShape::get(*Call, LegalVF /*EC*/, false /*HasGlobalPred*/); ++ Function *LegalVectorF = VFDatabase(*Call).getVectorizedFunction(Shape); ++ assert(LegalVectorF != nullptr && "Can't create legal vector function."); ++ ++ LLVM_DEBUG(dbgs() << "LV(SVML): LegalVectorF: "; LegalVectorF->dump()); ++ ++ SmallVector OpBundles; ++ Call->getOperandBundlesAsDefs(OpBundles); ++ auto LegalV = std::unique_ptr(CallInst::Create(LegalVectorF, NewArgs, OpBundles)); ++ ++ if (isa(LegalV)) ++ LegalV->copyFastMathFlags(Call); ++ ++ const DataLayout &DL = VecCall->getModule()->getDataLayout(); ++ // Set SVML calling conventions ++ setVectorFunctionCallingConv(*LegalV, DL, *TLI); ++ ++ LLVM_DEBUG(dbgs() << "LV(SVML): LegalV: "; LegalV->dump()); ++ ++ Value *LegalizedCall = partialVectorizeCall(VecCall, LegalV.get(), LegalVF.getKnownMinValue()); ++ ++ LLVM_DEBUG(dbgs() << "LV(SVML): LegalizedCall: "; LegalizedCall->dump()); ++ ++ // Remove the illegal call from Builder ++ VecCall->eraseFromParent(); ++ ++ return LegalizedCall; ++} ++ ++ElementCount InnerLoopVectorizer::getLegalVFForCall(CallInst *CI) { ++ const DataLayout DL = CI->getModule()->getDataLayout(); ++ FunctionType *CallFT = CI->getFunctionType(); ++ // All functions that need legalization should have a vector return type. ++ // This is true for all SVML functions that are currently supported. ++ assert(isa(CallFT->getReturnType()) && ++ "Return type of call that needs legalization is not a vector."); ++ auto *VecCallRetType = cast(CallFT->getReturnType()); ++ Type *ElemType = VecCallRetType->getElementType(); ++ ++ unsigned TypeBitWidth = DL.getTypeSizeInBits(ElemType); ++ unsigned VectorBitWidth = TTI->getRegisterBitWidth(TargetTransformInfo::RGK_FixedWidthVector); ++ unsigned LegalVF = VectorBitWidth / TypeBitWidth; ++ ++ LLVM_DEBUG(dbgs() << "LV(SVML): Type Bit Width: " << TypeBitWidth << "\n"); ++ LLVM_DEBUG(dbgs() << "LV(SVML): Current VL: " << VF << "\n"); ++ LLVM_DEBUG(dbgs() << "LV(SVML): Vector Bit Width: " << VectorBitWidth ++ << "\n"); ++ LLVM_DEBUG(dbgs() << "LV(SVML): Legal Target VL: " << LegalVF << "\n"); ++ ++ return ElementCount::getFixed(LegalVF); ++} ++ ++// Partial vectorization of a call instruction is achieved by making clones of ++// \p LegalCall and overwriting its argument operands with shufflevector ++// equivalent decided based on \p LegalVF and current Part being filled. ++Value *InnerLoopVectorizer::partialVectorizeCall(CallInst *Call, ++ CallInst *LegalCall, ++ unsigned LegalVF) { ++ unsigned NumParts = VF.getKnownMinValue() / LegalVF; ++ LLVM_DEBUG(dbgs() << "LV(SVML): NumParts: " << NumParts << "\n"); ++ SmallVector CallResults; ++ ++ for (unsigned Part = 0; Part < NumParts; ++Part) { ++ auto *ClonedCall = cast(LegalCall->clone()); ++ ++ // Update the arg operand of cloned call to shufflevector ++ for (unsigned i = 0, ie = Call->arg_size(); i != ie; ++i) { ++ auto *NewOp = generateShuffleValue(Call->getArgOperand(i), LegalVF, Part); ++ ClonedCall->setArgOperand(i, NewOp); ++ } ++ ++ LLVM_DEBUG(dbgs() << "LV(SVML): ClonedCall: "; ClonedCall->dump()); ++ ++ auto *PartialVecCall = Builder.Insert(ClonedCall); ++ CallResults.push_back(PartialVecCall); ++ } ++ ++ return combinePartialVecCalls(CallResults); ++} ++ ++Value *InnerLoopVectorizer::generateShuffleValue(Value *V, unsigned LegalVF, ++ unsigned Part) { ++ // Example: ++ // Consider the following vector code - ++ // %1 = sitofp <4 x i32> %0 to <4 x double> ++ // %2 = call <4 x double> @__svml_sin4(<4 x double> %1) ++ // ++ // If the LegalVF is 2, we partially vectorize the sin4 call by invoking ++ // generateShuffleValue on the operand %1 ++ // If Part = 1, output value is - ++ // %shuffle = shufflevector <4 x double> %1, <4 x double> undef, <2 x i32> ++ // and if Part = 2, output is - ++ // %shuffle7 =shufflevector <4 x double> %1, <4 x double> undef, <2 x i32> ++ ++ assert(isa(V->getType()) && ++ "Cannot generate shuffles for non-vector values."); ++ SmallVector ShuffleMask; ++ Value *Undef = UndefValue::get(V->getType()); ++ ++ unsigned ElemIdx = Part * LegalVF; ++ ++ for (unsigned K = 0; K < LegalVF; K++) ++ ShuffleMask.push_back(static_cast(ElemIdx + K)); ++ ++ auto *ShuffleInst = ++ Builder.CreateShuffleVector(V, Undef, ShuffleMask, "shuffle"); ++ ++ return ShuffleInst; ++} ++ ++// Results of the calls executed by smaller legal call instructions must be ++// combined to match the original VF for later use. This is done by constructing ++// shufflevector instructions in a cumulative fashion. ++Value *InnerLoopVectorizer::combinePartialVecCalls( ++ SmallVectorImpl &CallResults) { ++ assert(isa(CallResults[0]->getType()) && ++ "Cannot combine calls with non-vector results."); ++ auto *CallType = cast(CallResults[0]->getType()); ++ ++ Value *CombinedShuffle; ++ unsigned NumElems = CallType->getElementCount().getKnownMinValue() * 2; ++ unsigned NumRegs = CallResults.size(); ++ ++ assert(NumRegs >= 2 && isPowerOf2_32(NumRegs) && ++ "Number of partial vector calls to combine must be a power of 2 " ++ "(atleast 2^1)"); ++ ++ while (NumRegs > 1) { ++ for (unsigned I = 0; I < NumRegs; I += 2) { ++ SmallVector ShuffleMask; ++ for (unsigned J = 0; J < NumElems; J++) ++ ShuffleMask.push_back(static_cast(J)); ++ ++ CombinedShuffle = Builder.CreateShuffleVector( ++ CallResults[I], CallResults[I + 1], ShuffleMask, "combined"); ++ LLVM_DEBUG(dbgs() << "LV(SVML): CombinedShuffle:"; ++ CombinedShuffle->dump()); ++ CallResults.push_back(CombinedShuffle); ++ } ++ ++ SmallVector::iterator Start = CallResults.begin(); ++ SmallVector::iterator End = Start + NumRegs; ++ CallResults.erase(Start, End); ++ ++ NumElems *= 2; ++ NumRegs /= 2; ++ } ++ ++ return CombinedShuffle; + } + + void LoopVectorizationCostModel::collectLoopScalars(ElementCount VF) { +diff --git a/llvm-14.0.6.src/lib/Transforms/Vectorize/SLPVectorizer.cpp b/llvm-14.0.6.src/lib/Transforms/Vectorize/SLPVectorizer.cpp +index 644372483edde..342f018b92184 100644 +--- a/llvm-14.0.6.src/lib/Transforms/Vectorize/SLPVectorizer.cpp ++++ b/llvm-14.0.6.src/lib/Transforms/Vectorize/SLPVectorizer.cpp +@@ -6322,6 +6322,17 @@ Value *BoUpSLP::vectorizeTree(ArrayRef VL) { + return Vec; + } + ++static void setVectorFunctionCallingConv(CallInst &CI, const DataLayout &DL, ++ const TargetLibraryInfo &TLI) { ++ Function *VectorF = CI.getCalledFunction(); ++ FunctionType *FTy = VectorF->getFunctionType(); ++ StringRef VFName = VectorF->getName(); ++ auto CC = TLI.getVectorizedFunctionCallingConv(VFName, *FTy, DL); ++ if (CC) { ++ CI.setCallingConv(*CC); ++ } ++} ++ + Value *BoUpSLP::vectorizeTree(TreeEntry *E) { + IRBuilder<>::InsertPointGuard Guard(Builder); + +@@ -6794,7 +6805,12 @@ Value *BoUpSLP::vectorizeTree(TreeEntry *E) { + + SmallVector OpBundles; + CI->getOperandBundlesAsDefs(OpBundles); +- Value *V = Builder.CreateCall(CF, OpVecs, OpBundles); ++ ++ CallInst *NewCall = Builder.CreateCall(CF, OpVecs, OpBundles); ++ const DataLayout &DL = NewCall->getModule()->getDataLayout(); ++ setVectorFunctionCallingConv(*NewCall, DL, *TLI); ++ ++ Value *V = NewCall; + + // The scalar argument uses an in-tree scalar so we add the new vectorized + // call to ExternalUses list to make sure that an extract will be +diff --git a/llvm-14.0.6.src/test/CodeGen/Generic/replace-intrinsics-with-veclib.ll b/llvm-14.0.6.src/test/CodeGen/Generic/replace-intrinsics-with-veclib.ll +index df8b7c498bd00..63a36549f18fd 100644 +--- a/llvm-14.0.6.src/test/CodeGen/Generic/replace-intrinsics-with-veclib.ll ++++ b/llvm-14.0.6.src/test/CodeGen/Generic/replace-intrinsics-with-veclib.ll +@@ -10,7 +10,7 @@ target triple = "x86_64-unknown-linux-gnu" + define <4 x double> @exp_v4(<4 x double> %in) { + ; SVML-LABEL: define {{[^@]+}}@exp_v4 + ; SVML-SAME: (<4 x double> [[IN:%.*]]) { +-; SVML-NEXT: [[TMP1:%.*]] = call <4 x double> @__svml_exp4(<4 x double> [[IN]]) ++; SVML-NEXT: [[TMP1:%.*]] = call <4 x double> @__svml_exp4_ha(<4 x double> [[IN]]) + ; SVML-NEXT: ret <4 x double> [[TMP1]] + ; + ; LIBMVEC-X86-LABEL: define {{[^@]+}}@exp_v4 +@@ -37,7 +37,7 @@ declare <4 x double> @llvm.exp.v4f64(<4 x double>) #0 + define <4 x float> @exp_f32(<4 x float> %in) { + ; SVML-LABEL: define {{[^@]+}}@exp_f32 + ; SVML-SAME: (<4 x float> [[IN:%.*]]) { +-; SVML-NEXT: [[TMP1:%.*]] = call <4 x float> @__svml_expf4(<4 x float> [[IN]]) ++; SVML-NEXT: [[TMP1:%.*]] = call <4 x float> @__svml_expf4_ha(<4 x float> [[IN]]) + ; SVML-NEXT: ret <4 x float> [[TMP1]] + ; + ; LIBMVEC-X86-LABEL: define {{[^@]+}}@exp_f32 +diff --git a/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-calls-finite.ll b/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-calls-finite.ll +index a6e191c3d6923..d6e2e11106949 100644 +--- a/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-calls-finite.ll ++++ b/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-calls-finite.ll +@@ -39,7 +39,8 @@ for.end: ; preds = %for.body + declare double @__exp_finite(double) #0 + + ; CHECK-LABEL: @exp_f64 +-; CHECK: <4 x double> @__svml_exp4 ++; CHECK: <2 x double> @__svml_exp2 ++; CHECK: <2 x double> @__svml_exp2 + ; CHECK: ret + define void @exp_f64(double* nocapture %varray) { + entry: +@@ -99,7 +100,8 @@ for.end: ; preds = %for.body + declare double @__log_finite(double) #0 + + ; CHECK-LABEL: @log_f64 +-; CHECK: <4 x double> @__svml_log4 ++; CHECK: <2 x double> @__svml_log2 ++; CHECK: <2 x double> @__svml_log2 + ; CHECK: ret + define void @log_f64(double* nocapture %varray) { + entry: +@@ -159,7 +161,8 @@ for.end: ; preds = %for.body + declare double @__pow_finite(double, double) #0 + + ; CHECK-LABEL: @pow_f64 +-; CHECK: <4 x double> @__svml_pow4 ++; CHECK: <2 x double> @__svml_pow2 ++; CHECK: <2 x double> @__svml_pow2 + ; CHECK: ret + define void @pow_f64(double* nocapture %varray, double* nocapture readonly %exp) { + entry: +@@ -190,7 +193,8 @@ declare float @__exp2f_finite(float) #0 + + define void @exp2f_finite(float* nocapture %varray) { + ; CHECK-LABEL: @exp2f_finite( +-; CHECK: call <4 x float> @__svml_exp2f4(<4 x float> %{{.*}}) ++; CHECK: call intel_svmlcc128 <4 x float> @__svml_exp2f4_ha(<4 x float> %{{.*}}) ++; CHECK: call intel_svmlcc128 <4 x float> @__svml_exp2f4_ha(<4 x float> %{{.*}}) + ; CHECK: ret void + ; + entry: +@@ -219,7 +223,8 @@ declare double @__exp2_finite(double) #0 + + define void @exp2_finite(double* nocapture %varray) { + ; CHECK-LABEL: @exp2_finite( +-; CHECK: call <4 x double> @__svml_exp24(<4 x double> {{.*}}) ++; CHECK: call intel_svmlcc128 <2 x double> @__svml_exp22_ha(<2 x double> {{.*}}) ++; CHECK: call intel_svmlcc128 <2 x double> @__svml_exp22_ha(<2 x double> {{.*}}) + ; CHECK: ret void + ; + entry: +@@ -276,7 +281,8 @@ for.end: ; preds = %for.body + declare double @__log2_finite(double) #0 + + ; CHECK-LABEL: @log2_f64 +-; CHECK: <4 x double> @__svml_log24 ++; CHECK: <2 x double> @__svml_log22 ++; CHECK: <2 x double> @__svml_log22 + ; CHECK: ret + define void @log2_f64(double* nocapture %varray) { + entry: +@@ -333,7 +339,8 @@ for.end: ; preds = %for.body + declare double @__log10_finite(double) #0 + + ; CHECK-LABEL: @log10_f64 +-; CHECK: <4 x double> @__svml_log104 ++; CHECK: <2 x double> @__svml_log102 ++; CHECK: <2 x double> @__svml_log102 + ; CHECK: ret + define void @log10_f64(double* nocapture %varray) { + entry: +@@ -390,7 +397,8 @@ for.end: ; preds = %for.body + declare double @__sqrt_finite(double) #0 + + ; CHECK-LABEL: @sqrt_f64 +-; CHECK: <4 x double> @__svml_sqrt4 ++; CHECK: <2 x double> @__svml_sqrt2 ++; CHECK: <2 x double> @__svml_sqrt2 + ; CHECK: ret + define void @sqrt_f64(double* nocapture %varray) { + entry: +diff --git a/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-calls.ll b/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-calls.ll +index 42c280df6ad02..088bbdcf1aa4a 100644 +--- a/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-calls.ll ++++ b/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-calls.ll +@@ -48,7 +48,7 @@ declare float @llvm.exp2.f32(float) #0 + + define void @sin_f64(double* nocapture %varray) { + ; CHECK-LABEL: @sin_f64( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_sin4(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_sin4_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -71,7 +71,7 @@ for.end: + + define void @sin_f32(float* nocapture %varray) { + ; CHECK-LABEL: @sin_f32( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_sinf4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_sinf4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -94,7 +94,7 @@ for.end: + + define void @sin_f64_intrinsic(double* nocapture %varray) { + ; CHECK-LABEL: @sin_f64_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_sin4(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_sin4_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -117,7 +117,7 @@ for.end: + + define void @sin_f32_intrinsic(float* nocapture %varray) { + ; CHECK-LABEL: @sin_f32_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_sinf4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_sinf4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -140,7 +140,7 @@ for.end: + + define void @cos_f64(double* nocapture %varray) { + ; CHECK-LABEL: @cos_f64( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_cos4(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_cos4_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -163,7 +163,7 @@ for.end: + + define void @cos_f32(float* nocapture %varray) { + ; CHECK-LABEL: @cos_f32( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_cosf4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_cosf4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -186,7 +186,7 @@ for.end: + + define void @cos_f64_intrinsic(double* nocapture %varray) { + ; CHECK-LABEL: @cos_f64_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_cos4(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_cos4_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -209,7 +209,7 @@ for.end: + + define void @cos_f32_intrinsic(float* nocapture %varray) { + ; CHECK-LABEL: @cos_f32_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_cosf4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_cosf4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -232,7 +232,7 @@ for.end: + + define void @pow_f64(double* nocapture %varray, double* nocapture readonly %exp) { + ; CHECK-LABEL: @pow_f64( +-; CHECK: [[TMP8:%.*]] = call <4 x double> @__svml_pow4(<4 x double> [[TMP4:%.*]], <4 x double> [[WIDE_LOAD:%.*]]) ++; CHECK: [[TMP8:%.*]] = call intel_svmlcc256 <4 x double> @__svml_pow4_ha(<4 x double> [[TMP4:%.*]], <4 x double> [[WIDE_LOAD:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -257,7 +257,7 @@ for.end: + + define void @pow_f64_intrinsic(double* nocapture %varray, double* nocapture readonly %exp) { + ; CHECK-LABEL: @pow_f64_intrinsic( +-; CHECK: [[TMP8:%.*]] = call <4 x double> @__svml_pow4(<4 x double> [[TMP4:%.*]], <4 x double> [[WIDE_LOAD:%.*]]) ++; CHECK: [[TMP8:%.*]] = call intel_svmlcc256 <4 x double> @__svml_pow4_ha(<4 x double> [[TMP4:%.*]], <4 x double> [[WIDE_LOAD:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -282,7 +282,7 @@ for.end: + + define void @pow_f32(float* nocapture %varray, float* nocapture readonly %exp) { + ; CHECK-LABEL: @pow_f32( +-; CHECK: [[TMP8:%.*]] = call <4 x float> @__svml_powf4(<4 x float> [[TMP4:%.*]], <4 x float> [[WIDE_LOAD:%.*]]) ++; CHECK: [[TMP8:%.*]] = call intel_svmlcc128 <4 x float> @__svml_powf4_ha(<4 x float> [[TMP4:%.*]], <4 x float> [[WIDE_LOAD:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -307,7 +307,7 @@ for.end: + + define void @pow_f32_intrinsic(float* nocapture %varray, float* nocapture readonly %exp) { + ; CHECK-LABEL: @pow_f32_intrinsic( +-; CHECK: [[TMP8:%.*]] = call <4 x float> @__svml_powf4(<4 x float> [[TMP4:%.*]], <4 x float> [[WIDE_LOAD:%.*]]) ++; CHECK: [[TMP8:%.*]] = call intel_svmlcc128 <4 x float> @__svml_powf4_ha(<4 x float> [[TMP4:%.*]], <4 x float> [[WIDE_LOAD:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -332,7 +332,7 @@ for.end: + + define void @exp_f64(double* nocapture %varray) { + ; CHECK-LABEL: @exp_f64( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_exp4(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_exp4_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -355,7 +355,7 @@ for.end: + + define void @exp_f32(float* nocapture %varray) { + ; CHECK-LABEL: @exp_f32( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_expf4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_expf4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -378,7 +378,7 @@ for.end: + + define void @exp_f64_intrinsic(double* nocapture %varray) { + ; CHECK-LABEL: @exp_f64_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_exp4(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_exp4_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -401,7 +401,7 @@ for.end: + + define void @exp_f32_intrinsic(float* nocapture %varray) { + ; CHECK-LABEL: @exp_f32_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_expf4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_expf4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -424,7 +424,7 @@ for.end: + + define void @log_f64(double* nocapture %varray) { + ; CHECK-LABEL: @log_f64( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_log4(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_log4_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -447,7 +447,7 @@ for.end: + + define void @log_f32(float* nocapture %varray) { + ; CHECK-LABEL: @log_f32( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_logf4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_logf4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -470,7 +470,7 @@ for.end: + + define void @log_f64_intrinsic(double* nocapture %varray) { + ; CHECK-LABEL: @log_f64_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_log4(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_log4_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -493,7 +493,7 @@ for.end: + + define void @log_f32_intrinsic(float* nocapture %varray) { + ; CHECK-LABEL: @log_f32_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_logf4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_logf4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -516,7 +516,7 @@ for.end: + + define void @log2_f64(double* nocapture %varray) { + ; CHECK-LABEL: @log2_f64( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_log24(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_log24_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -539,7 +539,7 @@ for.end: + + define void @log2_f32(float* nocapture %varray) { + ; CHECK-LABEL: @log2_f32( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_log2f4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_log2f4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -562,7 +562,7 @@ for.end: + + define void @log2_f64_intrinsic(double* nocapture %varray) { + ; CHECK-LABEL: @log2_f64_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_log24(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_log24_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -585,7 +585,7 @@ for.end: + + define void @log2_f32_intrinsic(float* nocapture %varray) { + ; CHECK-LABEL: @log2_f32_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_log2f4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_log2f4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -608,7 +608,7 @@ for.end: + + define void @log10_f64(double* nocapture %varray) { + ; CHECK-LABEL: @log10_f64( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_log104(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_log104_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -631,7 +631,7 @@ for.end: + + define void @log10_f32(float* nocapture %varray) { + ; CHECK-LABEL: @log10_f32( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_log10f4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_log10f4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -654,7 +654,7 @@ for.end: + + define void @log10_f64_intrinsic(double* nocapture %varray) { + ; CHECK-LABEL: @log10_f64_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_log104(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_log104_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -677,7 +677,7 @@ for.end: + + define void @log10_f32_intrinsic(float* nocapture %varray) { + ; CHECK-LABEL: @log10_f32_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_log10f4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_log10f4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -700,7 +700,7 @@ for.end: + + define void @sqrt_f64(double* nocapture %varray) { + ; CHECK-LABEL: @sqrt_f64( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_sqrt4(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_sqrt4_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -723,7 +723,7 @@ for.end: + + define void @sqrt_f32(float* nocapture %varray) { + ; CHECK-LABEL: @sqrt_f32( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_sqrtf4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_sqrtf4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -746,7 +746,7 @@ for.end: + + define void @exp2_f64(double* nocapture %varray) { + ; CHECK-LABEL: @exp2_f64( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_exp24(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_exp24_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -769,7 +769,7 @@ for.end: + + define void @exp2_f32(float* nocapture %varray) { + ; CHECK-LABEL: @exp2_f32( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_exp2f4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_exp2f4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -792,7 +792,7 @@ for.end: + + define void @exp2_f64_intrinsic(double* nocapture %varray) { + ; CHECK-LABEL: @exp2_f64_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x double> @__svml_exp24(<4 x double> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc256 <4 x double> @__svml_exp24_ha(<4 x double> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -815,7 +815,7 @@ for.end: + + define void @exp2_f32_intrinsic(float* nocapture %varray) { + ; CHECK-LABEL: @exp2_f32_intrinsic( +-; CHECK: [[TMP5:%.*]] = call <4 x float> @__svml_exp2f4(<4 x float> [[TMP4:%.*]]) ++; CHECK: [[TMP5:%.*]] = call intel_svmlcc128 <4 x float> @__svml_exp2f4_ha(<4 x float> [[TMP4:%.*]]) + ; CHECK: ret void + ; + entry: +@@ -836,4 +836,44 @@ for.end: + ret void + } + ++; CHECK-LABEL: @atan2_finite ++; CHECK: intel_svmlcc256 <4 x double> @__svml_atan24( ++; CHECK: intel_svmlcc256 <4 x double> @__svml_atan24( ++; CHECK: ret ++ ++declare double @__atan2_finite(double, double) local_unnamed_addr #0 ++ ++define void @atan2_finite([100 x double]* nocapture %varray) local_unnamed_addr #0 { ++entry: ++ br label %for.cond1.preheader ++ ++for.cond1.preheader: ; preds = %for.inc7, %entry ++ %indvars.iv19 = phi i64 [ 0, %entry ], [ %indvars.iv.next20, %for.inc7 ] ++ %0 = trunc i64 %indvars.iv19 to i32 ++ %conv = sitofp i32 %0 to double ++ br label %for.body3 ++ ++for.body3: ; preds = %for.body3, %for.cond1.preheader ++ %indvars.iv = phi i64 [ 0, %for.cond1.preheader ], [ %indvars.iv.next, %for.body3 ] ++ %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 ++ %1 = trunc i64 %indvars.iv.next to i32 ++ %conv4 = sitofp i32 %1 to double ++ %call = tail call fast double @__atan2_finite(double %conv, double %conv4) ++ %arrayidx6 = getelementptr inbounds [100 x double], [100 x double]* %varray, i64 %indvars.iv19, i64 %indvars.iv ++ store double %call, double* %arrayidx6, align 8 ++ %exitcond = icmp eq i64 %indvars.iv.next, 100 ++ br i1 %exitcond, label %for.inc7, label %for.body3, !llvm.loop !5 ++ ++for.inc7: ; preds = %for.body3 ++ %indvars.iv.next20 = add nuw nsw i64 %indvars.iv19, 1 ++ %exitcond21 = icmp eq i64 %indvars.iv.next20, 100 ++ br i1 %exitcond21, label %for.end9, label %for.cond1.preheader ++ ++for.end9: ; preds = %for.inc7 ++ ret void ++} ++ + attributes #0 = { nounwind readnone } ++!5 = distinct !{!5, !6, !7} ++!6 = !{!"llvm.loop.vectorize.width", i32 8} ++!7 = !{!"llvm.loop.vectorize.enable", i1 true} +diff --git a/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-legal-calls.ll b/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-legal-calls.ll +new file mode 100644 +index 0000000000000..326c763994343 +--- /dev/null ++++ b/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-legal-calls.ll +@@ -0,0 +1,513 @@ ++; Check legalization of SVML calls, including intrinsic versions (like @llvm..). ++ ++; RUN: opt -vector-library=SVML -inject-tli-mappings -loop-vectorize -force-vector-width=8 -force-vector-interleave=1 -mattr=avx -S < %s | FileCheck %s ++ ++target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ++target triple = "x86_64-unknown-linux-gnu" ++ ++declare double @sin(double) #0 ++declare float @sinf(float) #0 ++declare double @llvm.sin.f64(double) #0 ++declare float @llvm.sin.f32(float) #0 ++ ++declare double @cos(double) #0 ++declare float @cosf(float) #0 ++declare double @llvm.cos.f64(double) #0 ++declare float @llvm.cos.f32(float) #0 ++ ++declare double @pow(double, double) #0 ++declare float @powf(float, float) #0 ++declare double @llvm.pow.f64(double, double) #0 ++declare float @llvm.pow.f32(float, float) #0 ++ ++declare double @exp(double) #0 ++declare float @expf(float) #0 ++declare double @llvm.exp.f64(double) #0 ++declare float @llvm.exp.f32(float) #0 ++ ++declare double @log(double) #0 ++declare float @logf(float) #0 ++declare double @llvm.log.f64(double) #0 ++declare float @llvm.log.f32(float) #0 ++ ++ ++define void @sin_f64(double* nocapture %varray) { ++; CHECK-LABEL: @sin_f64( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <4 x double> @__svml_sin4_ha(<4 x double> [[TMP2:%.*]]) ++; CHECK: [[TMP3:%.*]] = call intel_svmlcc256 <4 x double> @__svml_sin4_ha(<4 x double> [[TMP4:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to double ++ %call = tail call double @sin(double %conv) ++ %arrayidx = getelementptr inbounds double, double* %varray, i64 %iv ++ store double %call, double* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @sin_f32(float* nocapture %varray) { ++; CHECK-LABEL: @sin_f32( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <8 x float> @__svml_sinf8_ha(<8 x float> [[TMP2:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to float ++ %call = tail call float @sinf(float %conv) ++ %arrayidx = getelementptr inbounds float, float* %varray, i64 %iv ++ store float %call, float* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @sin_f64_intrinsic(double* nocapture %varray) { ++; CHECK-LABEL: @sin_f64_intrinsic( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <4 x double> @__svml_sin4_ha(<4 x double> [[TMP2:%.*]]) ++; CHECK: [[TMP3:%.*]] = call intel_svmlcc256 <4 x double> @__svml_sin4_ha(<4 x double> [[TMP4:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to double ++ %call = tail call double @llvm.sin.f64(double %conv) ++ %arrayidx = getelementptr inbounds double, double* %varray, i64 %iv ++ store double %call, double* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @sin_f32_intrinsic(float* nocapture %varray) { ++; CHECK-LABEL: @sin_f32_intrinsic( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <8 x float> @__svml_sinf8_ha(<8 x float> [[TMP2:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to float ++ %call = tail call float @llvm.sin.f32(float %conv) ++ %arrayidx = getelementptr inbounds float, float* %varray, i64 %iv ++ store float %call, float* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @cos_f64(double* nocapture %varray) { ++; CHECK-LABEL: @cos_f64( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <4 x double> @__svml_cos4_ha(<4 x double> [[TMP2:%.*]]) ++; CHECK: [[TMP3:%.*]] = call intel_svmlcc256 <4 x double> @__svml_cos4_ha(<4 x double> [[TMP4:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to double ++ %call = tail call double @cos(double %conv) ++ %arrayidx = getelementptr inbounds double, double* %varray, i64 %iv ++ store double %call, double* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @cos_f32(float* nocapture %varray) { ++; CHECK-LABEL: @cos_f32( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <8 x float> @__svml_cosf8_ha(<8 x float> [[TMP2:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to float ++ %call = tail call float @cosf(float %conv) ++ %arrayidx = getelementptr inbounds float, float* %varray, i64 %iv ++ store float %call, float* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @cos_f64_intrinsic(double* nocapture %varray) { ++; CHECK-LABEL: @cos_f64_intrinsic( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <4 x double> @__svml_cos4_ha(<4 x double> [[TMP2:%.*]]) ++; CHECK: [[TMP3:%.*]] = call intel_svmlcc256 <4 x double> @__svml_cos4_ha(<4 x double> [[TMP4:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to double ++ %call = tail call double @llvm.cos.f64(double %conv) ++ %arrayidx = getelementptr inbounds double, double* %varray, i64 %iv ++ store double %call, double* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @cos_f32_intrinsic(float* nocapture %varray) { ++; CHECK-LABEL: @cos_f32_intrinsic( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <8 x float> @__svml_cosf8_ha(<8 x float> [[TMP2:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to float ++ %call = tail call float @llvm.cos.f32(float %conv) ++ %arrayidx = getelementptr inbounds float, float* %varray, i64 %iv ++ store float %call, float* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @pow_f64(double* nocapture %varray, double* nocapture readonly %exp) { ++; CHECK-LABEL: @pow_f64( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <4 x double> @__svml_pow4_ha(<4 x double> [[TMP2:%.*]], <4 x double> [[TMP3:%.*]]) ++; CHECK: [[TMP4:%.*]] = call intel_svmlcc256 <4 x double> @__svml_pow4_ha(<4 x double> [[TMP5:%.*]], <4 x double> [[TMP6:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to double ++ %arrayidx = getelementptr inbounds double, double* %exp, i64 %iv ++ %tmp1 = load double, double* %arrayidx, align 4 ++ %tmp2 = tail call double @pow(double %conv, double %tmp1) ++ %arrayidx2 = getelementptr inbounds double, double* %varray, i64 %iv ++ store double %tmp2, double* %arrayidx2, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @pow_f64_intrinsic(double* nocapture %varray, double* nocapture readonly %exp) { ++; CHECK-LABEL: @pow_f64_intrinsic( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <4 x double> @__svml_pow4_ha(<4 x double> [[TMP2:%.*]], <4 x double> [[TMP3:%.*]]) ++; CHECK: [[TMP4:%.*]] = call intel_svmlcc256 <4 x double> @__svml_pow4_ha(<4 x double> [[TMP5:%.*]], <4 x double> [[TMP6:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to double ++ %arrayidx = getelementptr inbounds double, double* %exp, i64 %iv ++ %tmp1 = load double, double* %arrayidx, align 4 ++ %tmp2 = tail call double @llvm.pow.f64(double %conv, double %tmp1) ++ %arrayidx2 = getelementptr inbounds double, double* %varray, i64 %iv ++ store double %tmp2, double* %arrayidx2, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @pow_f32(float* nocapture %varray, float* nocapture readonly %exp) { ++; CHECK-LABEL: @pow_f32( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <8 x float> @__svml_powf8_ha(<8 x float> [[TMP2:%.*]], <8 x float> [[WIDE_LOAD:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to float ++ %arrayidx = getelementptr inbounds float, float* %exp, i64 %iv ++ %tmp1 = load float, float* %arrayidx, align 4 ++ %tmp2 = tail call float @powf(float %conv, float %tmp1) ++ %arrayidx2 = getelementptr inbounds float, float* %varray, i64 %iv ++ store float %tmp2, float* %arrayidx2, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @pow_f32_intrinsic(float* nocapture %varray, float* nocapture readonly %exp) { ++; CHECK-LABEL: @pow_f32_intrinsic( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <8 x float> @__svml_powf8_ha(<8 x float> [[TMP2:%.*]], <8 x float> [[TMP3:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to float ++ %arrayidx = getelementptr inbounds float, float* %exp, i64 %iv ++ %tmp1 = load float, float* %arrayidx, align 4 ++ %tmp2 = tail call float @llvm.pow.f32(float %conv, float %tmp1) ++ %arrayidx2 = getelementptr inbounds float, float* %varray, i64 %iv ++ store float %tmp2, float* %arrayidx2, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @exp_f64(double* nocapture %varray) { ++; CHECK-LABEL: @exp_f64( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <4 x double> @__svml_exp4_ha(<4 x double> [[TMP2:%.*]]) ++; CHECK: [[TMP3:%.*]] = call intel_svmlcc256 <4 x double> @__svml_exp4_ha(<4 x double> [[TMP4:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to double ++ %call = tail call double @exp(double %conv) ++ %arrayidx = getelementptr inbounds double, double* %varray, i64 %iv ++ store double %call, double* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @exp_f32(float* nocapture %varray) { ++; CHECK-LABEL: @exp_f32( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <8 x float> @__svml_expf8_ha(<8 x float> [[TMP2:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to float ++ %call = tail call float @expf(float %conv) ++ %arrayidx = getelementptr inbounds float, float* %varray, i64 %iv ++ store float %call, float* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @exp_f64_intrinsic(double* nocapture %varray) { ++; CHECK-LABEL: @exp_f64_intrinsic( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <4 x double> @__svml_exp4_ha(<4 x double> [[TMP2:%.*]]) ++; CHECK: [[TMP3:%.*]] = call intel_svmlcc256 <4 x double> @__svml_exp4_ha(<4 x double> [[TMP4:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to double ++ %call = tail call double @llvm.exp.f64(double %conv) ++ %arrayidx = getelementptr inbounds double, double* %varray, i64 %iv ++ store double %call, double* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @exp_f32_intrinsic(float* nocapture %varray) { ++; CHECK-LABEL: @exp_f32_intrinsic( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <8 x float> @__svml_expf8_ha(<8 x float> [[TMP2:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to float ++ %call = tail call float @llvm.exp.f32(float %conv) ++ %arrayidx = getelementptr inbounds float, float* %varray, i64 %iv ++ store float %call, float* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @log_f64(double* nocapture %varray) { ++; CHECK-LABEL: @log_f64( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <4 x double> @__svml_log4_ha(<4 x double> [[TMP2:%.*]]) ++; CHECK: [[TMP3:%.*]] = call intel_svmlcc256 <4 x double> @__svml_log4_ha(<4 x double> [[TMP4:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to double ++ %call = tail call double @log(double %conv) ++ %arrayidx = getelementptr inbounds double, double* %varray, i64 %iv ++ store double %call, double* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @log_f32(float* nocapture %varray) { ++; CHECK-LABEL: @log_f32( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <8 x float> @__svml_logf8_ha(<8 x float> [[TMP2:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to float ++ %call = tail call float @logf(float %conv) ++ %arrayidx = getelementptr inbounds float, float* %varray, i64 %iv ++ store float %call, float* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @log_f64_intrinsic(double* nocapture %varray) { ++; CHECK-LABEL: @log_f64_intrinsic( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <4 x double> @__svml_log4_ha(<4 x double> [[TMP2:%.*]]) ++; CHECK: [[TMP3:%.*]] = call intel_svmlcc256 <4 x double> @__svml_log4_ha(<4 x double> [[TMP4:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to double ++ %call = tail call double @llvm.log.f64(double %conv) ++ %arrayidx = getelementptr inbounds double, double* %varray, i64 %iv ++ store double %call, double* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++define void @log_f32_intrinsic(float* nocapture %varray) { ++; CHECK-LABEL: @log_f32_intrinsic( ++; CHECK: [[TMP1:%.*]] = call intel_svmlcc256 <8 x float> @__svml_logf8_ha(<8 x float> [[TMP2:%.*]]) ++; CHECK: ret void ++; ++entry: ++ br label %for.body ++ ++for.body: ++ %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ] ++ %tmp = trunc i64 %iv to i32 ++ %conv = sitofp i32 %tmp to float ++ %call = tail call float @llvm.log.f32(float %conv) ++ %arrayidx = getelementptr inbounds float, float* %varray, i64 %iv ++ store float %call, float* %arrayidx, align 4 ++ %iv.next = add nuw nsw i64 %iv, 1 ++ %exitcond = icmp eq i64 %iv.next, 1000 ++ br i1 %exitcond, label %for.end, label %for.body ++ ++for.end: ++ ret void ++} ++ ++attributes #0 = { nounwind readnone } ++ +diff --git a/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-legal-codegen.ll b/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-legal-codegen.ll +new file mode 100644 +index 0000000000000..9422653445dc2 +--- /dev/null ++++ b/llvm-14.0.6.src/test/Transforms/LoopVectorize/X86/svml-legal-codegen.ll +@@ -0,0 +1,61 @@ ++; Check that vector codegen splits illegal sin8 call to two sin4 calls on AVX for double datatype. ++; The C code used to generate this test: ++ ++; #include ++; ++; void foo(double *a, int N){ ++; int i; ++; #pragma clang loop vectorize_width(8) ++; for (i=0;i [[I0:%.*]] to <8 x double> ++; CHECK-NEXT: [[S1:%shuffle.*]] = shufflevector <8 x double> [[I1]], <8 x double> undef, <4 x i32> ++; CHECK-NEXT: [[I2:%.*]] = call fast intel_svmlcc256 <4 x double> @__svml_sin4(<4 x double> [[S1]]) ++; CHECK-NEXT: [[S2:%shuffle.*]] = shufflevector <8 x double> [[I1]], <8 x double> undef, <4 x i32> ++; CHECK-NEXT: [[I3:%.*]] = call fast intel_svmlcc256 <4 x double> @__svml_sin4(<4 x double> [[S2]]) ++; CHECK-NEXT: [[comb:%combined.*]] = shufflevector <4 x double> [[I2]], <4 x double> [[I3]], <8 x i32> ++; CHECK: store <8 x double> [[comb]], <8 x double>* [[TMP:%.*]], align 8 ++ ++ ++target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" ++target triple = "x86_64-unknown-linux-gnu" ++ ++; Function Attrs: nounwind uwtable ++define dso_local void @foo(double* nocapture %a, i32 %N) local_unnamed_addr #0 { ++entry: ++ %cmp5 = icmp sgt i32 %N, 0 ++ br i1 %cmp5, label %for.body.preheader, label %for.end ++ ++for.body.preheader: ; preds = %entry ++ %wide.trip.count = zext i32 %N to i64 ++ br label %for.body ++ ++for.body: ; preds = %for.body, %for.body.preheader ++ %indvars.iv = phi i64 [ 0, %for.body.preheader ], [ %indvars.iv.next, %for.body ] ++ %0 = trunc i64 %indvars.iv to i32 ++ %conv = sitofp i32 %0 to double ++ %call = tail call fast double @sin(double %conv) #2 ++ %arrayidx = getelementptr inbounds double, double* %a, i64 %indvars.iv ++ store double %call, double* %arrayidx, align 8, !tbaa !2 ++ %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 ++ %exitcond = icmp eq i64 %indvars.iv.next, %wide.trip.count ++ br i1 %exitcond, label %for.end, label %for.body, !llvm.loop !6 ++ ++for.end: ; preds = %for.body, %entry ++ ret void ++} ++ ++; Function Attrs: nounwind ++declare dso_local double @sin(double) local_unnamed_addr #1 ++ ++!2 = !{!3, !3, i64 0} ++!3 = !{!"double", !4, i64 0} ++!4 = !{!"omnipotent char", !5, i64 0} ++!5 = !{!"Simple C/C++ TBAA"} ++!6 = distinct !{!6, !7} ++!7 = !{!"llvm.loop.vectorize.width", i32 8} +diff --git a/llvm-14.0.6.src/test/Transforms/Util/add-TLI-mappings.ll b/llvm-14.0.6.src/test/Transforms/Util/add-TLI-mappings.ll +index e8c83c4d9bd1f..615fdc29176a2 100644 +--- a/llvm-14.0.6.src/test/Transforms/Util/add-TLI-mappings.ll ++++ b/llvm-14.0.6.src/test/Transforms/Util/add-TLI-mappings.ll +@@ -12,12 +12,12 @@ target triple = "x86_64-unknown-linux-gnu" + + ; COMMON-LABEL: @llvm.compiler.used = appending global + ; SVML-SAME: [6 x i8*] [ +-; SVML-SAME: i8* bitcast (<2 x double> (<2 x double>)* @__svml_sin2 to i8*), +-; SVML-SAME: i8* bitcast (<4 x double> (<4 x double>)* @__svml_sin4 to i8*), +-; SVML-SAME: i8* bitcast (<8 x double> (<8 x double>)* @__svml_sin8 to i8*), +-; SVML-SAME: i8* bitcast (<4 x float> (<4 x float>)* @__svml_log10f4 to i8*), +-; SVML-SAME: i8* bitcast (<8 x float> (<8 x float>)* @__svml_log10f8 to i8*), +-; SVML-SAME: i8* bitcast (<16 x float> (<16 x float>)* @__svml_log10f16 to i8*) ++; SVML-SAME: i8* bitcast (<2 x double> (<2 x double>)* @__svml_sin2_ha to i8*), ++; SVML-SAME: i8* bitcast (<4 x double> (<4 x double>)* @__svml_sin4_ha to i8*), ++; SVML-SAME: i8* bitcast (<8 x double> (<8 x double>)* @__svml_sin8_ha to i8*), ++; SVML-SAME: i8* bitcast (<4 x float> (<4 x float>)* @__svml_log10f4_ha to i8*), ++; SVML-SAME: i8* bitcast (<8 x float> (<8 x float>)* @__svml_log10f8_ha to i8*), ++; SVML-SAME: i8* bitcast (<16 x float> (<16 x float>)* @__svml_log10f16_ha to i8*) + ; MASSV-SAME: [2 x i8*] [ + ; MASSV-SAME: i8* bitcast (<2 x double> (<2 x double>)* @__sind2 to i8*), + ; MASSV-SAME: i8* bitcast (<4 x float> (<4 x float>)* @__log10f4 to i8*) +@@ -59,9 +59,9 @@ declare float @llvm.log10.f32(float) #0 + attributes #0 = { nounwind readnone } + + ; SVML: attributes #[[SIN]] = { "vector-function-abi-variant"= +-; SVML-SAME: "_ZGV_LLVM_N2v_sin(__svml_sin2), +-; SVML-SAME: _ZGV_LLVM_N4v_sin(__svml_sin4), +-; SVML-SAME: _ZGV_LLVM_N8v_sin(__svml_sin8)" } ++; SVML-SAME: "_ZGV_LLVM_N2v_sin(__svml_sin2_ha), ++; SVML-SAME: _ZGV_LLVM_N4v_sin(__svml_sin4_ha), ++; SVML-SAME: _ZGV_LLVM_N8v_sin(__svml_sin8_ha)" } + + ; MASSV: attributes #[[SIN]] = { "vector-function-abi-variant"= + ; MASSV-SAME: "_ZGV_LLVM_N2v_sin(__sind2)" } +diff --git a/llvm-14.0.6.src/utils/TableGen/CMakeLists.txt b/llvm-14.0.6.src/utils/TableGen/CMakeLists.txt +index 97df6a55d1b59..199e0285c9e5d 100644 +--- a/llvm-14.0.6.src/utils/TableGen/CMakeLists.txt ++++ b/llvm-14.0.6.src/utils/TableGen/CMakeLists.txt +@@ -47,6 +47,7 @@ add_tablegen(llvm-tblgen LLVM + SearchableTableEmitter.cpp + SubtargetEmitter.cpp + SubtargetFeatureInfo.cpp ++ SVMLEmitter.cpp + TableGen.cpp + Types.cpp + X86DisassemblerTables.cpp +diff --git a/llvm-14.0.6.src/utils/TableGen/SVMLEmitter.cpp b/llvm-14.0.6.src/utils/TableGen/SVMLEmitter.cpp +new file mode 100644 +index 0000000000000..a5aeea48db28b +--- /dev/null ++++ b/llvm-14.0.6.src/utils/TableGen/SVMLEmitter.cpp +@@ -0,0 +1,110 @@ ++//===------ SVMLEmitter.cpp - Generate SVML function variants -------------===// ++// ++// The LLVM Compiler Infrastructure ++// ++// This file is distributed under the University of Illinois Open Source ++// License. See LICENSE.TXT for details. ++// ++//===----------------------------------------------------------------------===// ++// ++// This tablegen backend emits the scalar to svml function map for TLI. ++// ++//===----------------------------------------------------------------------===// ++ ++#include "CodeGenTarget.h" ++#include "llvm/Support/Format.h" ++#include "llvm/TableGen/Error.h" ++#include "llvm/TableGen/Record.h" ++#include "llvm/TableGen/TableGenBackend.h" ++#include ++#include ++ ++using namespace llvm; ++ ++#define DEBUG_TYPE "SVMLVariants" ++#include "llvm/Support/Debug.h" ++ ++namespace { ++ ++class SVMLVariantsEmitter { ++ ++ RecordKeeper &Records; ++ ++private: ++ void emitSVMLVariants(raw_ostream &OS); ++ ++public: ++ SVMLVariantsEmitter(RecordKeeper &R) : Records(R) {} ++ ++ void run(raw_ostream &OS); ++}; ++} // End anonymous namespace ++ ++/// \brief Emit the set of SVML variant function names. ++// The default is to emit the high accuracy SVML variants until a mechanism is ++// introduced to allow a selection of different variants through precision ++// requirements specified by the user. This code generates mappings to svml ++// that are in the scalar form of llvm intrinsics, math library calls, or the ++// finite variants of math library calls. ++void SVMLVariantsEmitter::emitSVMLVariants(raw_ostream &OS) { ++ ++ const unsigned MinSinglePrecVL = 4; ++ const unsigned MaxSinglePrecVL = 16; ++ const unsigned MinDoublePrecVL = 2; ++ const unsigned MaxDoublePrecVL = 8; ++ ++ OS << "#ifdef GET_SVML_VARIANTS\n"; ++ ++ for (const auto &D : Records.getAllDerivedDefinitions("SvmlVariant")) { ++ StringRef SvmlVariantNameStr = D->getName(); ++ // Single Precision SVML ++ for (unsigned VL = MinSinglePrecVL; VL <= MaxSinglePrecVL; VL *= 2) { ++ // Emit the scalar math library function to svml function entry. ++ OS << "{\"" << SvmlVariantNameStr << "f" << "\", "; ++ OS << "\"" << "__svml_" << SvmlVariantNameStr << "f" << VL << "\", " ++ << "ElementCount::getFixed(" << VL << ")},\n"; ++ ++ // Emit the scalar intrinsic to svml function entry. ++ OS << "{\"" << "llvm." << SvmlVariantNameStr << ".f32" << "\", "; ++ OS << "\"" << "__svml_" << SvmlVariantNameStr << "f" << VL << "\", " ++ << "ElementCount::getFixed(" << VL << ")},\n"; ++ ++ // Emit the finite math library function to svml function entry. ++ OS << "{\"__" << SvmlVariantNameStr << "f_finite" << "\", "; ++ OS << "\"" << "__svml_" << SvmlVariantNameStr << "f" << VL << "\", " ++ << "ElementCount::getFixed(" << VL << ")},\n"; ++ } ++ ++ // Double Precision SVML ++ for (unsigned VL = MinDoublePrecVL; VL <= MaxDoublePrecVL; VL *= 2) { ++ // Emit the scalar math library function to svml function entry. ++ OS << "{\"" << SvmlVariantNameStr << "\", "; ++ OS << "\"" << "__svml_" << SvmlVariantNameStr << VL << "\", " << "ElementCount::getFixed(" << VL ++ << ")},\n"; ++ ++ // Emit the scalar intrinsic to svml function entry. ++ OS << "{\"" << "llvm." << SvmlVariantNameStr << ".f64" << "\", "; ++ OS << "\"" << "__svml_" << SvmlVariantNameStr << VL << "\", " << "ElementCount::getFixed(" << VL ++ << ")},\n"; ++ ++ // Emit the finite math library function to svml function entry. ++ OS << "{\"__" << SvmlVariantNameStr << "_finite" << "\", "; ++ OS << "\"" << "__svml_" << SvmlVariantNameStr << VL << "\", " ++ << "ElementCount::getFixed(" << VL << ")},\n"; ++ } ++ } ++ ++ OS << "#endif // GET_SVML_VARIANTS\n\n"; ++} ++ ++void SVMLVariantsEmitter::run(raw_ostream &OS) { ++ emitSVMLVariants(OS); ++} ++ ++namespace llvm { ++ ++void EmitSVMLVariants(RecordKeeper &RK, raw_ostream &OS) { ++ SVMLVariantsEmitter(RK).run(OS); ++} ++ ++} // End llvm namespace +diff --git a/llvm-14.0.6.src/utils/TableGen/TableGen.cpp b/llvm-14.0.6.src/utils/TableGen/TableGen.cpp +index 2d4a45f889be6..603d0c223b33a 100644 +--- a/llvm-14.0.6.src/utils/TableGen/TableGen.cpp ++++ b/llvm-14.0.6.src/utils/TableGen/TableGen.cpp +@@ -57,6 +57,7 @@ enum ActionType { + GenAutomata, + GenDirectivesEnumDecl, + GenDirectivesEnumImpl, ++ GenSVMLVariants, + }; + + namespace llvm { +@@ -138,7 +139,9 @@ cl::opt Action( + clEnumValN(GenDirectivesEnumDecl, "gen-directive-decl", + "Generate directive related declaration code (header file)"), + clEnumValN(GenDirectivesEnumImpl, "gen-directive-impl", +- "Generate directive related implementation code"))); ++ "Generate directive related implementation code"), ++ clEnumValN(GenSVMLVariants, "gen-svml", ++ "Generate SVML variant function names"))); + + cl::OptionCategory PrintEnumsCat("Options for -print-enums"); + cl::opt Class("class", cl::desc("Print Enum list for this class"), +@@ -272,6 +275,9 @@ bool LLVMTableGenMain(raw_ostream &OS, RecordKeeper &Records) { + case GenDirectivesEnumImpl: + EmitDirectivesImpl(Records, OS); + break; ++ case GenSVMLVariants: ++ EmitSVMLVariants(Records, OS); ++ break; + } + + return false; +diff --git a/llvm-14.0.6.src/utils/TableGen/TableGenBackends.h b/llvm-14.0.6.src/utils/TableGen/TableGenBackends.h +index 71db8dc77b052..86c3a3068c2dc 100644 +--- a/llvm-14.0.6.src/utils/TableGen/TableGenBackends.h ++++ b/llvm-14.0.6.src/utils/TableGen/TableGenBackends.h +@@ -93,6 +93,7 @@ void EmitExegesis(RecordKeeper &RK, raw_ostream &OS); + void EmitAutomata(RecordKeeper &RK, raw_ostream &OS); + void EmitDirectivesDecl(RecordKeeper &RK, raw_ostream &OS); + void EmitDirectivesImpl(RecordKeeper &RK, raw_ostream &OS); ++void EmitSVMLVariants(RecordKeeper &RK, raw_ostream &OS); + + } // End llvm namespace + +diff --git a/llvm-14.0.6.src/utils/vim/syntax/llvm.vim b/llvm-14.0.6.src/utils/vim/syntax/llvm.vim +index 205db16b7d8cd..2572ab5a59e1b 100644 +--- a/llvm-14.0.6.src/utils/vim/syntax/llvm.vim ++++ b/llvm-14.0.6.src/utils/vim/syntax/llvm.vim +@@ -104,6 +104,7 @@ syn keyword llvmKeyword + \ inreg + \ intel_ocl_bicc + \ inteldialect ++ \ intel_svmlcc + \ internal + \ jumptable + \ linkonce From 57d633d419140ccb983cd507602775f2b7e1c2f9 Mon Sep 17 00:00:00 2001 From: Leonard Nielsen Date: Thu, 16 Nov 2023 15:42:08 +0100 Subject: [PATCH 048/356] Build for new WIEN2k versions, include easybuild-easyblocks/pull/3035 --- .../w/WIEN2k/WIEN2k-23.2-intel-2021b.eb | 80 +++++++++++++++++++ .../WIEN2k-23.2_fix_libxc_for_lapw0_mpi.patch | 30 +++++++ ...k-23.2_fix_system_stderr_redirection.patch | 29 +++++++ 3 files changed, 139 insertions(+) create mode 100644 easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb create mode 100644 easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2_fix_libxc_for_lapw0_mpi.patch create mode 100644 easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2_fix_system_stderr_redirection.patch diff --git a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb new file mode 100644 index 00000000000..a40da29ea43 --- /dev/null +++ b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb @@ -0,0 +1,80 @@ +name = 'WIEN2k' +version = '23.2' + +homepage = 'http://www.wien2k.at/' +description = """The program package WIEN2k allows to perform electronic structure calculations of solids +using density functional theory (DFT). It is based on the full-potential (linearized) augmented plane-wave +((L)APW) + local orbitals (lo) method, one among the most accurate schemes for band structure calculations. +WIEN2k is an all-electron scheme including relativistic effects and has many features.""" + +toolchain = {'name': 'intel', 'version': '2021b'} + +sources = ['%(name)s_%(version)s.tar'] +patches = [ + '%(name)s-%(version)s_fix_libxc_for_lapw0_mpi.patch', + '%(name)s-%(version)s_fix_system_stderr_redirection.patch', +] +#checksums = [ +# '32590778440a9280322bf2dc0d63f4f42a9fc48814fa6b8b7ee2d199c94bed11', # WIEN2k_21.1.tar +# '1cc480a4824d9185ad5918dfc68c47bcb7826114626c8133d573be901bbdca84', # WIEN2k-21.1_fix_libxc_for_lapw0_mpi.patch + # WIEN2k-21.1_fix_system_stderr_redirection.patch +# 'cdba467b0b6f2b310c2e1e2a3e6cabe75f8fd15ee0f7c14f8ef80c7e48073bdd', +#] + +download_instructions = """ +WIEN2k can be ordered at http://susi.theochem.tuwien.ac.at/index.html. +""" + +builddependencies = [ + ('tcsh', '6.24.01') +] + +dependencies = [ + ('Python', '3.9.6'), + ('Perl', '5.34.0'), + ('DFT-D3', '3.2.0'), + ('ELPA', '2021.05.001'), + ('FFTW', '3.3.10'), + ('libxc', '5.1.6'), +] + +osdependencies = [ + ('glibc-devel', 'libc6-dev'), # required for libpthread.a +] + +# remote = 'pbsssh' +# If using a Slurm batch system it is highly recommended to use +# 'srun -n_NP_ _EXEC_' for wien_mpirun +wien_mpirun = 'mpirun -np _NP_ _EXEC_' +use_remote = False +mpi_remote = False +wien_granularity = True +taskset = 'no' + +# Change as needed, these are the defaults +# nmatmax = 19000 +# nume = 6000 + +fix_perl_shebang_for = [ + 'iniel_pressure_in2reader.pl_lapw', + 'iniel_pressure_reader.pl_lapw', + 'setrmt_lapw', + 'elast_setup_input.pl_lapw', + 'bashtime2csh.pl_lapw', +] + +tests = [ + # test case 1: NaCl +# ('NaCl', '-b', '-i 3', [r'^:DIS.*0.1', r'^:ENE.*-1248.14']), + # test case 2: TiO2 + ('TiO2', + '-b -numk 1000 -rkmax 7.5', + '-in1ef -cc 0.00001 -fc 0.5 -i 100', + [ + r'^:ENE.*-4018.07', + r'^:FGL001.*\s+[0.]+\s+[0.]+\s+[0.]+\s+total forces', + r'^:FGL002.*15.*total forces', + ]), +] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2_fix_libxc_for_lapw0_mpi.patch b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2_fix_libxc_for_lapw0_mpi.patch new file mode 100644 index 00000000000..473da9ef378 --- /dev/null +++ b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2_fix_libxc_for_lapw0_mpi.patch @@ -0,0 +1,30 @@ +The Makefile.orig lapw0 is not updated according to how the Makefile works. +That causes a build failure for lapw0_mpi with libxc + +Åke Sandgren, 20210910 +diff -ru wien2k.orig/SRC_lapw0/Makefile.orig wien2k/SRC_lapw0/Makefile.orig +--- wien2k.orig/SRC_lapw0/Makefile.orig 2021-03-13 09:40:10.023772496 +0100 ++++ wien2k/SRC_lapw0/Makefile.orig 2021-09-10 14:53:07.875144996 +0200 +@@ -55,7 +55,9 @@ + #-------------- loader options ------------- + LDFLAGS = _LDFLAGS_ + R_LIBS = $(FFTW_LIBS) _R_LIBS_ $(LIBXC_LIBS) ++RR_LIBS = $(FFTW_LIBS) $(R_LIBS) $(LIBXC_LIBS) + RP_LIBS = $(FFTW_PLIBS) _RP_LIBS_ ++RPP_LIBS = $(FFTW_PLIBS) $(FFTW_LIBS) $(RP_LIBS) $(LIBXC_LIBS) + + ############################################################################### + # End of user defined variables # +@@ -128,10 +130,10 @@ + #.............................................................................. + + $(S_EXEC): $(OBJS) +- $(FORT) -o $(S_EXEC) $(OBJS) $(LDFLAGS) $(R_LIBS) ++ $(FORT) -o $(S_EXEC) $(OBJS) $(LDFLAGS) $(RR_LIBS) + + $(P_EXEC): $(OBJS) +- $(FORT) -o $(P_EXEC) $(OBJS) $(LDFLAGS) $(RP_LIBS) ++ $(FORT) -o $(P_EXEC) $(OBJS) $(LDFLAGS) $(RPP_LIBS) + + # sequential + keep_s_files: diff --git a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2_fix_system_stderr_redirection.patch b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2_fix_system_stderr_redirection.patch new file mode 100644 index 00000000000..23b08d93cfb --- /dev/null +++ b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2_fix_system_stderr_redirection.patch @@ -0,0 +1,29 @@ +--- SRC_Globals/W2kinit.F.orig 2023-11-08 17:54:06.183370012 +0100 ++++ SRC_Globals/W2kinit.F 2023-11-08 18:29:21.436975434 +0100 +@@ -403,7 +403,7 @@ + logical AVX512, AVX2, AVX, SSE + integer istat, system + AVX512=.false.; AVX2=.false.; AVX=.false.; SSE=.false. +- istat=system('ls /proc/cpuinfo > /dev/null') ++ istat=system('test -f /proc/cpuinfo') + if(istat.ne.0.and.myid.eq.0) then + print*, "Could not read your /proc/cpuinfo. The default kernel of your ELPA installation" + print*, "will be used." +@@ -413,13 +413,13 @@ + !_REAL print*, " ELPA_DEFAULT_real_kernel" + !_COMPLEX print*, " ELPA_DEFAULT_complex_kernel" + else +- istat=system('grep -i avx512 /proc/cpuinfo > /dev/null') ++ istat=system('grep -qi avx512 /proc/cpuinfo') + if(istat.eq.0) AVX512=.true. +- istat=system('grep -i avx2 /proc/cpuinfo > /dev/null') ++ istat=system('grep -qi avx2 /proc/cpuinfo') + if(istat.eq.0) AVX2=.true. +- istat=system('grep -i avx /proc/cpuinfo > /dev/null') ++ istat=system('grep -qi avx /proc/cpuinfo') + if(istat.eq.0) AVX=.true. +- istat=system('grep -i sse /proc/cpuinfo > /dev/null') ++ istat=system('grep -qi sse /proc/cpuinfo') + if(istat.eq.0) SSE=.true. + endif + return From 741ae8083a0f291146bd610a63d31a04f02f8e43 Mon Sep 17 00:00:00 2001 From: Leonard Nielsen <55690238+lcniel@users.noreply.github.com> Date: Thu, 16 Nov 2023 16:56:56 +0100 Subject: [PATCH 049/356] Update WIEN2k-23.2-intel-2021b.eb --- .../easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb index a40da29ea43..4e4c6e0714a 100644 --- a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb +++ b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb @@ -14,21 +14,11 @@ patches = [ '%(name)s-%(version)s_fix_libxc_for_lapw0_mpi.patch', '%(name)s-%(version)s_fix_system_stderr_redirection.patch', ] -#checksums = [ -# '32590778440a9280322bf2dc0d63f4f42a9fc48814fa6b8b7ee2d199c94bed11', # WIEN2k_21.1.tar -# '1cc480a4824d9185ad5918dfc68c47bcb7826114626c8133d573be901bbdca84', # WIEN2k-21.1_fix_libxc_for_lapw0_mpi.patch - # WIEN2k-21.1_fix_system_stderr_redirection.patch -# 'cdba467b0b6f2b310c2e1e2a3e6cabe75f8fd15ee0f7c14f8ef80c7e48073bdd', -#] download_instructions = """ WIEN2k can be ordered at http://susi.theochem.tuwien.ac.at/index.html. """ -builddependencies = [ - ('tcsh', '6.24.01') -] - dependencies = [ ('Python', '3.9.6'), ('Perl', '5.34.0'), @@ -39,7 +29,8 @@ dependencies = [ ] osdependencies = [ - ('glibc-devel', 'libc6-dev'), # required for libpthread.a + ('glibc-devel', 'libc6-dev'), # required for libpthread. + ('tcsh', '6.24.01') ] # remote = 'pbsssh' From 41802cbe4d3a521772e7c89bcd44e4935b985493 Mon Sep 17 00:00:00 2001 From: Leonard Nielsen <55690238+lcniel@users.noreply.github.com> Date: Thu, 16 Nov 2023 17:42:19 +0100 Subject: [PATCH 050/356] Update WIEN2k-23.2-intel-2021b.eb --- easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb index 4e4c6e0714a..2067f8abc66 100644 --- a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb +++ b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb @@ -56,13 +56,13 @@ fix_perl_shebang_for = [ tests = [ # test case 1: NaCl -# ('NaCl', '-b', '-i 3', [r'^:DIS.*0.1', r'^:ENE.*-1248.14']), + ('NaCl', '-b', '-i 3', [r'^:DIS.*0.1', r'^:ENE.*-1248.1']), # test case 2: TiO2 ('TiO2', '-b -numk 1000 -rkmax 7.5', '-in1ef -cc 0.00001 -fc 0.5 -i 100', [ - r'^:ENE.*-4018.07', + r'^:ENE.*-4018.0', r'^:FGL001.*\s+[0.]+\s+[0.]+\s+[0.]+\s+total forces', r'^:FGL002.*15.*total forces', ]), From 1d2f6d3a6d09d2944bfbbe8e428bffcf75212f0d Mon Sep 17 00:00:00 2001 From: Leonard Nielsen <55690238+lcniel@users.noreply.github.com> Date: Thu, 16 Nov 2023 18:36:21 +0100 Subject: [PATCH 051/356] Update WIEN2k-23.2-intel-2021b.eb --- easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb index 2067f8abc66..cc8aed4ffbd 100644 --- a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb +++ b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb @@ -56,7 +56,7 @@ fix_perl_shebang_for = [ tests = [ # test case 1: NaCl - ('NaCl', '-b', '-i 3', [r'^:DIS.*0.1', r'^:ENE.*-1248.1']), + ('NaCl', '-b', '-i 100', [r'^:DIS.*0.1', r'^:ENE.*-1248.1']), # test case 2: TiO2 ('TiO2', '-b -numk 1000 -rkmax 7.5', From d38218f8b594150fadbd81608af7f8b6cb0790eb Mon Sep 17 00:00:00 2001 From: Sebastian Achilles Date: Thu, 16 Nov 2023 20:42:42 +0100 Subject: [PATCH 052/356] adding easyconfigs: UCX-CUDA-1.15.0-GCCcore-13.2.0-CUDA-12.3.0.eb --- ...-CUDA-1.15.0-GCCcore-13.2.0-CUDA-12.3.0.eb | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 easybuild/easyconfigs/u/UCX-CUDA/UCX-CUDA-1.15.0-GCCcore-13.2.0-CUDA-12.3.0.eb diff --git a/easybuild/easyconfigs/u/UCX-CUDA/UCX-CUDA-1.15.0-GCCcore-13.2.0-CUDA-12.3.0.eb b/easybuild/easyconfigs/u/UCX-CUDA/UCX-CUDA-1.15.0-GCCcore-13.2.0-CUDA-12.3.0.eb new file mode 100644 index 00000000000..c292b853f63 --- /dev/null +++ b/easybuild/easyconfigs/u/UCX-CUDA/UCX-CUDA-1.15.0-GCCcore-13.2.0-CUDA-12.3.0.eb @@ -0,0 +1,41 @@ +easyblock = 'EB_UCX_Plugins' + +name = 'UCX-CUDA' +version = '1.15.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'http://www.openucx.org/' +description = """Unified Communication X +An open-source production grade communication framework for data centric +and high-performance applications + +This module adds the UCX CUDA support. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] +sources = [{'filename': 'ucx-%(version)s.tar.gz', 'alt_location': 'UCX'}] +patches = ['%(name)s-1.11.0_link_against_existing_UCX_libs.patch'] +checksums = [ + {'ucx-1.15.0.tar.gz': '4b202087076bc1c98f9249144f0c277a8ea88ad4ca6f404f94baa9cb3aebda6d'}, + {'UCX-CUDA-1.11.0_link_against_existing_UCX_libs.patch': + '457187fa020e526609ba91e7750c9941d57bd57d60d6eed317b40ad8824aca93'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('Autotools', '20220317'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('zlib', '1.2.13'), + ('UCX', version), + ('CUDA', '12.3.0', '', SYSTEM), + ('GDRCopy', '2.4'), +] + + +moduleclass = 'lib' From f4b48c9dde535b3ea7ae523e65dec280b220a80a Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Fri, 17 Nov 2023 12:56:38 +0100 Subject: [PATCH 053/356] Remove patch with workaround for bug fixed in GCCcore --- .../p/PyTorch/PyTorch-2.0.1-foss-2022b.eb | 3 - ...round-gcc12-destructor-exception-bug.patch | 118 ------------------ 2 files changed, 121 deletions(-) delete mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_workaround-gcc12-destructor-exception-bug.patch diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb index 27e6fe2c084..f36fdeb52a1 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb @@ -40,7 +40,6 @@ patches = [ 'PyTorch-2.0.1_skip-failing-gradtest.patch', 'PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch', 'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch', - 'PyTorch-2.0.1_workaround-gcc12-destructor-exception-bug.patch', ] checksums = [ {'pytorch-v2.0.1.tar.gz': '9c564ca440265c69400ef5fdd48bf15e28af5aa4bed84c95efaad960a6699998'}, @@ -91,8 +90,6 @@ checksums = [ '7047862abc1abaff62954da59700f36d4f39fcf83167a638183b1b7f8fec78ae'}, {'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch': '166c134573a95230e39b9ea09ece3ad8072f39d370c9a88fb2a1e24f6aaac2b5'}, - {'PyTorch-2.0.1_workaround-gcc12-destructor-exception-bug.patch': - '198f2244b7415958f96a2c248bab33491a95454091889824d98b0d4a55f114f3'}, ] osdependencies = [OS_PKG_IBVERBS_DEV] diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_workaround-gcc12-destructor-exception-bug.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_workaround-gcc12-destructor-exception-bug.patch deleted file mode 100644 index cff643d4138..00000000000 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_workaround-gcc12-destructor-exception-bug.patch +++ /dev/null @@ -1,118 +0,0 @@ -GCC 12 introduced a regression that may cause it to call the destructor twice on an object. -See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112301 -This is visible in e.g. `test_cpp_extensions_jit.py -k test_warning` -See also https://github.com/pytorch/pytorch/issues/112383 - -Workaround this by trying to avoid the throwing PyWarningHandler destructor. -Author: Alexander Grund (TU Dresden) - -diff --git a/torch/csrc/Exceptions.cpp b/torch/csrc/Exceptions.cpp -index 788f6782730..31d358528e3 100644 ---- a/torch/csrc/Exceptions.cpp -+++ b/torch/csrc/Exceptions.cpp -@@ -246,6 +246,10 @@ PyObject* map_warning_to_python_type(const c10::Warning& warning) { - /// NOLINTNEXTLINE(bugprone-exception-escape) - PyWarningHandler::~PyWarningHandler() noexcept(false) { - c10::WarningUtils::set_warning_handler(prev_handler_); -+ process_warnings(); -+} -+ -+void PyWarningHandler::process_warnings() { - auto& warning_buffer = internal_handler_.warning_buffer_; - - if (!warning_buffer.empty()) { -diff --git a/torch/csrc/Exceptions.h b/torch/csrc/Exceptions.h -index 7c448ddc67f..9779b21bcb7 100644 ---- a/torch/csrc/Exceptions.h -+++ b/torch/csrc/Exceptions.h -@@ -117,6 +117,13 @@ static inline void PyErr_SetString(PyObject* type, const std::string& message) { - retstmnt; \ - } - -+/** To be called inside a HANDLE_TH_ERRORS..END_HANDLE_TH_ERRORS_* block -+ * before returning a value / where no further warnings can occur. -+ * Avoids throwing an error in the destructor which triggers a bug in GCC 12+ -+ * See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112301 -+ */ -+#define FLUSH_TH_ERRORS __enforce_warning_buffer.process_warnings(); -+ - #define END_HANDLE_TH_ERRORS_PYBIND \ - } \ - catch (...) { \ -@@ -372,6 +379,9 @@ struct PyWarningHandler { - in_exception_ = true; - } - -+ // Trigger processing of warnings -+ TORCH_API void process_warnings(); -+ - private: - InternalHandler internal_handler_; - at::WarningHandler* prev_handler_; -@@ -379,26 +389,40 @@ struct PyWarningHandler { - }; - - namespace detail { -+ -+template -+struct conditional_gil_scoped_release: pybind11::gil_scoped_release{}; -+ -+template<> -+struct conditional_gil_scoped_release{ -+ conditional_gil_scoped_release() { -+ // suppress `unused variable` error messages at call sites -+ (void) (this != (this + 1)); -+ } -+}; -+ - template - using Arg = typename invoke_traits::template arg::type; - --template -+template - auto wrap_pybind_function_impl_( - Func&& f, - std::index_sequence, -- bool release_gil) { -+ std::bool_constant) { - using result_type = typename invoke_traits::result_type; - namespace py = pybind11; - - // f=f is needed to handle function references on older compilers -- return [f = std::forward(f), -- release_gil](Arg... args) -> result_type { -+ return [f = std::forward(f)](Arg... args) -> result_type { - HANDLE_TH_ERRORS -- if (release_gil) { -- py::gil_scoped_release no_gil; -- return c10::guts::invoke(f, std::forward>(args)...); -+ conditional_gil_scoped_release no_gil; -+ if constexpr (std::is_void_v) { -+ c10::guts::invoke(f, std::forward>(args)...); -+ FLUSH_TH_ERRORS - } else { -- return c10::guts::invoke(f, std::forward>(args)...); -+ auto res = c10::guts::invoke(f, std::forward>(args)...); -+ FLUSH_TH_ERRORS -+ return res; - } - END_HANDLE_TH_ERRORS_PYBIND - }; -@@ -411,7 +435,7 @@ template - auto wrap_pybind_function(Func&& f) { - using traits = invoke_traits; - return torch::detail::wrap_pybind_function_impl_( -- std::forward(f), std::make_index_sequence{}, false); -+ std::forward(f), std::make_index_sequence{}, std::false_type{}); - } - - // Wrap a function with TH error, warning handling and releases the GIL. -@@ -420,7 +444,7 @@ template - auto wrap_pybind_function_no_gil(Func&& f) { - using traits = invoke_traits; - return torch::detail::wrap_pybind_function_impl_( -- std::forward(f), std::make_index_sequence{}, true); -+ std::forward(f), std::make_index_sequence{}, std::true_type{}); - } - - } // namespace torch From 52ac3bbbf224f24ee206ba3d6776677966ca7206 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 17 Nov 2023 19:34:28 +0100 Subject: [PATCH 054/356] adding easyconfigs: PFFT-20181230-gompi-2022a.eb --- .../p/PFFT/PFFT-20181230-gompi-2022a.eb | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 easybuild/easyconfigs/p/PFFT/PFFT-20181230-gompi-2022a.eb diff --git a/easybuild/easyconfigs/p/PFFT/PFFT-20181230-gompi-2022a.eb b/easybuild/easyconfigs/p/PFFT/PFFT-20181230-gompi-2022a.eb new file mode 100644 index 00000000000..7a65a1e88b5 --- /dev/null +++ b/easybuild/easyconfigs/p/PFFT/PFFT-20181230-gompi-2022a.eb @@ -0,0 +1,39 @@ +easyblock = 'ConfigureMake' + +name = 'PFFT' +version = '20181230' +_commit = 'e4cfcf9902d0ef82cb49ec722040932b6b598c71' + +homepage = 'https://www-user.tu-chemnitz.de/~potts/workgroup/pippig/software.php.en#pfft' +description = """PFFT is a software library for computing massively parallel, fast Fourier +transformations on distributed memory architectures. PFFT can be understood as +a generalization of FFTW-MPI to multidimensional data decomposition. The +library is written in C and MPI. A Fortran interface is also available. Support +for hybrid parallelization based on OpenMP and MPI is under development.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'usempi': True} + +github_account = 'mpip' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': '%s.tar.gz' % _commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['672ae09009bb8b7ee9b9106f3fa7b87cecf8c935f206e83f7875d27a725f0e9a'] + +builddependencies = [ + ('Autotools', '20220317'), +] + +dependencies = [ + ('FFTW', '3.3.10'), + ('FFTW.MPI', '3.3.10'), +] + +preconfigopts = 'autoreconf -i -f &&' + +sanity_check_paths = { + 'files': ['lib/libpfft.a', 'lib/libpfft.la', 'lib/libpfft.%s' % SHLIB_EXT] + + ['include/pfft.f', 'include/pfft.f03', 'include/pfft.h', 'include/pfftl.f03'], + 'dirs': ['lib/pkgconfig'], +} + +moduleclass = 'numlib' From e9641fa577d84f4351e26b42a50a61aa84f4cd4c Mon Sep 17 00:00:00 2001 From: deniskristak Date: Sat, 18 Nov 2023 22:27:57 +0100 Subject: [PATCH 055/356] adding easyconfigs: bcbio-gff-0.7.0-foss-2022b.eb, hifiasm-0.19.7-GCCcore-12.2.0.eb, MitoHiFi-3.2-foss-2022b.eb --- .../b/bcbio-gff/bcbio-gff-0.7.0-foss-2022b.eb | 42 ++++++++++ .../hifiasm/hifiasm-0.19.7-GCCcore-12.2.0.eb | 42 ++++++++++ .../m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb | 77 +++++++++++++++++++ 3 files changed, 161 insertions(+) create mode 100644 easybuild/easyconfigs/b/bcbio-gff/bcbio-gff-0.7.0-foss-2022b.eb create mode 100644 easybuild/easyconfigs/h/hifiasm/hifiasm-0.19.7-GCCcore-12.2.0.eb create mode 100644 easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb diff --git a/easybuild/easyconfigs/b/bcbio-gff/bcbio-gff-0.7.0-foss-2022b.eb b/easybuild/easyconfigs/b/bcbio-gff/bcbio-gff-0.7.0-foss-2022b.eb new file mode 100644 index 00000000000..bcac0a939b6 --- /dev/null +++ b/easybuild/easyconfigs/b/bcbio-gff/bcbio-gff-0.7.0-foss-2022b.eb @@ -0,0 +1,42 @@ +# Contribution by +# DeepThought, Flinders University +# Updated to v0.6.7 +# R.QIAO + +easyblock = 'PythonPackage' + +name = 'bcbio-gff' +version = '0.7.0' + +homepage = 'https://github.com/chapmanb/bcbb/tree/master/gff' + +description = """ +Read and write Generic Feature Format (GFF) with Biopython integration. +""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +sources = ['%(name)s-%(version)s.tar.gz'] +checksums = ['f7b3922ee274106f8716703f41f05a1795aa9d73e903f4e481995ed8f5f65d2d'] + +dependencies = [ + ('Python', '3.10.8'), + ('SciPy-bundle', '2023.02'), + ('Biopython', '1.81'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +local_bcbiogffroot = 'lib/python%(pyshortver)s/site-packages' +local_targets = ['GFFOutput.py', 'GFFParser.py'] + +sanity_check_paths = { + 'files': [local_bcbiogffroot + '/BCBio/GFF/%s' % x for x in local_targets], + 'dirs': [local_bcbiogffroot], +} + +options = {'modulename': 'BCBio.GFF'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/hifiasm/hifiasm-0.19.7-GCCcore-12.2.0.eb b/easybuild/easyconfigs/h/hifiasm/hifiasm-0.19.7-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..fe7164b4a35 --- /dev/null +++ b/easybuild/easyconfigs/h/hifiasm/hifiasm-0.19.7-GCCcore-12.2.0.eb @@ -0,0 +1,42 @@ +# Author: Jasper Grimm (UoY) +# Update: Sebastien Moretti (SIB) + +easyblock = 'MakeCp' + +name = 'hifiasm' +version = '0.19.7' + +homepage = 'https://github.com/chhylp123/hifiasm' +description = """Hifiasm: a haplotype-resolved assembler for accurate Hifi reads.""" +# software_license = 'LicenseMIT' + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +github_account = 'chhylp123' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['16d6127c7efb2d450630f25402a05e7d691b411465b304950d84d8afd53d5ee6'] + +builddependencies = [ + ('binutils', '2.39'), +] + +dependencies = [ + ('zlib', '1.2.12'), +] + +buildopts = 'CC="$CC" CXX="$CXX" CPPFLAGS="$CPPFLAGS"' + +files_to_copy = [ + ([name], 'bin'), + (['*.h'], 'include/hifiasm'), + 'LICENSE', 'README.md', +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} +sanity_check_commands = ["%(name)s -h"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb b/easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb new file mode 100644 index 00000000000..00b5b2cb51d --- /dev/null +++ b/easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb @@ -0,0 +1,77 @@ +easyblock = 'PythonBundle' + +name = 'MitoHiFi' +version = '3.2' + +homepage = 'https://github.com/marcelauliano/MitoHiFi' +description = "MitoHiFi is a Python workflow that assembles mitogenomes from Pacbio HiFi reads" + +toolchain = {'name': 'foss', 'version': '2022b'} + +dependencies = [ + ('Python', '3.10.8'), + ('SciPy-bundle', '2023.02'), # for pandas + ('SAMtools', '1.17'), + ('CD-HIT', '4.8.1'), + ('minimap2', '2.26'), + ('hifiasm', '0.19.7'), + ('MAFFT', '7.505', '-with-extensions'), + ('Biopython', '1.81'), + ('matplotlib', '3.7.0'), + ('BEDTools', '2.30.0'), + ('Pillow', '9.4.0'), + ('bcbio-gff', '0.7.0'), + # ('MitoFinder', '1.4.1'), + ('BLAST+', '2.14.0'), +] + +# https://github.com/RemiAllio/MitoFinder +# MitoFinder=v1.4.0 + +use_pip = True + +exts_list = [ + ('dna-features-viewer', '3.1.2', { + 'sources': ['dna_features_viewer-%(version)s.tar.gz'], + 'checksums': ['b8b2b7657e2a9f165edd6f68fb679abfa0c2fdeb887cbd04c22b514997f52d12'], + }), + ('mitos', '2.1.3', { + 'checksums': ['0a5bee0882a957457426baaa36655d968fbd36523e3fb06d96e2401f9f9bd285'], + 'preinstallopts': """sed -i 's|biopython==1.73|biopython|' setup.py && """, + }), + (name, version, { + 'easyblock': 'Tarball', + 'modulename': False, + 'source_urls': ['https://github.com/marcelauliano/MitoHiFi/archive/'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['68f1eb69a54288d58ac920885aac82d4beae744e54023f409623125c084d5430'], + # TODO: patch wasn't applied without any error message (workaround in postinstallcmds) + # 'patches': ['MitoHiFi-%(version)s-use_mitos_annotation.patch'], + }), +] + +postinstallcmds = [ + 'sed -i "s|# Set log message format|args.mitos = True|" %(installdir)s/MitoHiFi-%(version)s/src/mitohifi.py', + "mkdir -p %(installdir)s/bin", + "cp %(installdir)s/MitoHiFi-%(version)s/src/* %(installdir)s/bin/ ", + "chmod a+x %(installdir)s/bin/* ", +] + +fix_python_shebang_for = ['bin/*'] + +sanity_check_paths = { + 'files': ['bin/mitohifi.py'], + 'dirs': [], +} + +local_test_cmd = 'findMitoReference.py --species "Deilephila porcellus" ' +local_test_cmd += '--outfolder %(installdir)s/MitoHiFi-%(version)s/out --min_length 14000' + +sanity_check_commands = [ + "mitohifi.py -h", + local_test_cmd +] + +sanity_pip_check = True + +moduleclass = 'bio' From 03a98c97c50bb6133e616da104e9e0a535ddbef7 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann Date: Mon, 20 Nov 2023 13:02:13 +0100 Subject: [PATCH 056/356] {vis}[GCCcore/12.2.0] PyQt5 v5.15.7 w/ Python 3.10.8 --- .../p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb | 121 ++++++++++++++++++ ....15.7_sip-5.5.0_add_py_ssize_t_clean.patch | 44 +++++++ 2 files changed, 165 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb create mode 100644 easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch diff --git a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..e54ef7109b1 --- /dev/null +++ b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb @@ -0,0 +1,121 @@ +easyblock = 'Bundle' + +name = 'PyQt5' +version = '5.15.7' + +homepage = 'https://www.riverbankcomputing.com/software/pyqt' +description = """PyQt5 is a set of Python bindings for v5 of the Qt application framework from The Qt Company. +This bundle includes PyQtWebEngine, a set of Python bindings for The Qt Company’s Qt WebEngine framework.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +toolchainopts = {'cstd': 'c++11'} + +builddependencies = [ + ('binutils', '2.39'), + ('flex', '2.6.4'), # req. for PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch + ('Bison', '3.8.2'), # req. for PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch +] +dependencies = [ + ('Python', '3.10.8'), + ('Qt5', '5.15.7'), +] + +default_easyblock = 'PythonPackage' + +local_sipdir = '%(installdir)s/share/sip' + +local_pylibdir = '%(installdir)s/lib/python%(pyshortver)s/site-packages' + +local_pyqt5_sip_install = "sip-install --verbose --target-dir " + local_pylibdir + " " +local_pyqt5_sip_install += "--confirm-license --no-designer-plugin --no-qml-plugin " + +local_pyqtweb_configopts = "configure.py --verbose --destdir=%s/PyQt5 " % local_pylibdir +local_pyqtweb_configopts += "--apidir=%(installdir)s/qsci " +local_pyqtweb_configopts += "--pyqt-sipdir=%s " % local_sipdir +local_pyqtweb_configopts += "--sipdir=%s " % local_sipdir +local_pyqtweb_configopts += "--no-stubs --no-dist-info" + +local_pyqt_configopts = "configure.py --verbose --destdir=%s " % local_pylibdir +local_pyqt_configopts += "--no-stubs " +local_pyqt_configopts += "--confirm-license --no-designer-plugin --no-qml-plugin " +# prevent installing pyrcc5 and other tools into $EBROOTPYTHON/bin: +local_pyqt_configopts += "--bindir=%(installdir)s/bin " +local_pyqt_configopts += "--sipdir=%s " % local_sipdir + +local_setup_env = "export PATH=%(installdir)s/bin:$PATH && " +local_setup_env += "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " +local_sipver = '5.5.0' +loca_sip_rebuildparser = 'flex -o code_generator/lexer.c code_generator/metasrc/lexer.l &&' +loca_sip_rebuildparser += 'bison -y -d -o code_generator/parser.c code_generator/metasrc/parser.y &&' +components = [ + ('SIP', local_sipver, { + 'source_urls': [PYPI_SOURCE], + 'sources': [SOURCELOWER_TAR_GZ], + 'start_dir': 'sip-%s' % local_sipver, + 'use_pip': True, + 'options': {'modulename': 'PyQt5.sip'}, + 'patches': ['PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch'], + 'preinstallopts': loca_sip_rebuildparser # req. for PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch + + }), + ('PyQt-builder', '1.11.0', { + 'source_urls': [PYPI_SOURCE], + 'sources': [SOURCE_TAR_GZ], + 'start_dir': 'PyQt-builder-%(version)s', + 'use_pip': True, + }), + ('PyQt5_sip', '12.11.0', { + 'source_urls': [PYPI_SOURCE], + 'sources': [SOURCE_TAR_GZ], + 'start_dir': 'PyQt5_sip-%(version)s', + 'use_pip': True, + }), + (name, version, { + 'source_urls': [PYPI_SOURCE], + 'sources': [SOURCE_TAR_GZ], + 'easyblock': 'ConfigureMakePythonPackage', + 'start_dir': '%(name)s-%(version)s', + 'preconfigopts': local_setup_env, + 'configopts': local_pyqt_configopts + }), + ('PyQtWebEngine', '5.15.6', { + 'source_urls': [PYPI_SOURCE], + 'sources': [SOURCE_TAR_GZ], + 'easyblock': 'ConfigureMakePythonPackage', + 'start_dir': '%(name)s-%(version)s', + 'preconfigopts': local_setup_env, + 'configopts': local_pyqtweb_configopts, + 'options': {'modulename': 'PyQt5.QtWebEngine'}, + }), +] + +checksums = [{ + 'sip-5.5.0.tar.gz': '5d024c419b30fea8a6de8c71a560c7ab0bc3c221fbfb14d55a5b865bd58eaac5', + 'PyQt-builder-1.11.0.tar.gz': '40f6df88c00e6aa9ac9a8bc5688f9fe2a4bd56c06cdb0a0b00ce8955ec34ffe5', + 'PyQt5_sip-12.11.0.tar.gz': 'b4710fd85b57edef716cc55fae45bfd5bfac6fc7ba91036f1dcc3f331ca0eb39', + 'PyQt5-5.15.7.tar.gz': '755121a52b3a08cb07275c10ebb96576d36e320e572591db16cfdbc558101594', + 'PyQtWebEngine-5.15.6.tar.gz': 'ae241ef2a61c782939c58b52c2aea53ad99b30f3934c8358d5e0a6ebb3fd0721', + 'PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch': 'f828b1cf81e8bfea676f7aa1e428102aade5acf520aedd85e7de08b0b2226a5d', +}] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in [ + 'pyrcc5', 'pyuic5', 'pylupdate5', 'pyqt-bundle', 'sip-build', 'sip-install', 'sip5']], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -c 'import PyQt5.QtCore'", + "sip5 --help", + "pyuic5 --help", + "pylupdate5 -version 2>&1 | grep 'pylupdate5 v%(version)s'", + "pyrcc5 -version 2>&1 | grep 'pyrcc5 v%(version)s'", + "pip check", +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', + 'QT_INSTALL_DATA': 'qsci', +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch new file mode 100644 index 00000000000..4f5fa9f06ba --- /dev/null +++ b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch @@ -0,0 +1,44 @@ +# Thomas Hoffmann, EMBL Heidelberg, structures-it@embl.de, 2023/11 +# add py_ssize_t_clean to the sip4 parser +# acc to https://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1828544.html +diff -ru sip-5.5.0/code_generator/metasrc/lexer.l sip-5.5.0_add_py_ssize_t_clean/code_generator/metasrc/lexer.l +--- sip-5.5.0/code_generator/metasrc/lexer.l 2020-11-23 14:21:33.000000000 +0100 ++++ sip-5.5.0_add_py_ssize_t_clean/code_generator/metasrc/lexer.l 2023-11-20 12:30:35.030063970 +0100 +@@ -167,6 +167,7 @@ + timestamp {return TK_TIMESTAMP;} + type {return TK_TYPE;} + use_argument_names {return TK_USEARGNAMES;} ++py_ssize_t_clean {return TK_PYSSIZETCLEAN;} + use_limited_api {return TK_USELIMITEDAPI;} + all_raise_py_exception {return TK_ALLRAISEPYEXC;} + call_super_init {return TK_CALLSUPERINIT;} +diff -ru sip-5.5.0/code_generator/metasrc/parser.y sip-5.5.0_add_py_ssize_t_clean/code_generator/metasrc/parser.y +--- sip-5.5.0/code_generator/metasrc/parser.y 2020-11-23 14:21:33.000000000 +0100 ++++ sip-5.5.0_add_py_ssize_t_clean/code_generator/metasrc/parser.y 2023-11-20 12:30:35.030063970 +0100 +@@ -373,6 +373,7 @@ + %token TK_TIMESTAMP + %token TK_TYPE + %token TK_USEARGNAMES ++%token TK_PYSSIZETCLEAN + %token TK_USELIMITEDAPI + %token TK_ALLRAISEPYEXC + %token TK_CALLSUPERINIT +@@ -1843,6 +1844,18 @@ + $$.use_limited_api = FALSE; + $$.all_raise_py_exc = FALSE; + $$.call_super_init = -1; ++ $$.def_error_handler = NULL; ++ } ++ | TK_PYSSIZETCLEAN '=' bool_value { ++ $$.token = TK_PYSSIZETCLEAN; ++ ++ $$.c_module = FALSE; ++ $$.kwargs = defaultKwArgs; ++ $$.name = NULL; ++ $$.use_arg_names = FALSE; ++ $$.use_limited_api = FALSE; ++ $$.all_raise_py_exc = FALSE; ++ $$.call_super_init = -1; + $$.def_error_handler = NULL; + } + | TK_USELIMITEDAPI '=' bool_value { From c4a7cbb77fbea16b32b53bd64ca17925bb9a028b Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann Date: Mon, 20 Nov 2023 13:35:08 +0100 Subject: [PATCH 057/356] fix style --- .../easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb index e54ef7109b1..23fc0af07ff 100644 --- a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb @@ -45,8 +45,8 @@ local_pyqt_configopts += "--sipdir=%s " % local_sipdir local_setup_env = "export PATH=%(installdir)s/bin:$PATH && " local_setup_env += "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " local_sipver = '5.5.0' -loca_sip_rebuildparser = 'flex -o code_generator/lexer.c code_generator/metasrc/lexer.l &&' -loca_sip_rebuildparser += 'bison -y -d -o code_generator/parser.c code_generator/metasrc/parser.y &&' +loca_sip_rebuildparser = 'flex -o code_generator/lexer.c code_generator/metasrc/lexer.l &&' +loca_sip_rebuildparser += 'bison -y -d -o code_generator/parser.c code_generator/metasrc/parser.y &&' components = [ ('SIP', local_sipver, { 'source_urls': [PYPI_SOURCE], @@ -55,7 +55,7 @@ components = [ 'use_pip': True, 'options': {'modulename': 'PyQt5.sip'}, 'patches': ['PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch'], - 'preinstallopts': loca_sip_rebuildparser # req. for PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch + 'preinstallopts': loca_sip_rebuildparser # req. for PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch }), ('PyQt-builder', '1.11.0', { @@ -95,7 +95,8 @@ checksums = [{ 'PyQt5_sip-12.11.0.tar.gz': 'b4710fd85b57edef716cc55fae45bfd5bfac6fc7ba91036f1dcc3f331ca0eb39', 'PyQt5-5.15.7.tar.gz': '755121a52b3a08cb07275c10ebb96576d36e320e572591db16cfdbc558101594', 'PyQtWebEngine-5.15.6.tar.gz': 'ae241ef2a61c782939c58b52c2aea53ad99b30f3934c8358d5e0a6ebb3fd0721', - 'PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch': 'f828b1cf81e8bfea676f7aa1e428102aade5acf520aedd85e7de08b0b2226a5d', + 'PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch': + 'f828b1cf81e8bfea676f7aa1e428102aade5acf520aedd85e7de08b0b2226a5d', }] sanity_check_paths = { From debc332c7e18984dbcf3a5eccbed82d1c2e00b5d Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann Date: Mon, 20 Nov 2023 14:19:12 +0100 Subject: [PATCH 058/356] fix typo --- .../easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb index 23fc0af07ff..a2e634ed08a 100644 --- a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb @@ -45,8 +45,8 @@ local_pyqt_configopts += "--sipdir=%s " % local_sipdir local_setup_env = "export PATH=%(installdir)s/bin:$PATH && " local_setup_env += "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " local_sipver = '5.5.0' -loca_sip_rebuildparser = 'flex -o code_generator/lexer.c code_generator/metasrc/lexer.l &&' -loca_sip_rebuildparser += 'bison -y -d -o code_generator/parser.c code_generator/metasrc/parser.y &&' +local_sip_rebuildparser = 'flex -o code_generator/lexer.c code_generator/metasrc/lexer.l &&' +local_sip_rebuildparser += 'bison -y -d -o code_generator/parser.c code_generator/metasrc/parser.y &&' components = [ ('SIP', local_sipver, { 'source_urls': [PYPI_SOURCE], @@ -55,7 +55,7 @@ components = [ 'use_pip': True, 'options': {'modulename': 'PyQt5.sip'}, 'patches': ['PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch'], - 'preinstallopts': loca_sip_rebuildparser # req. for PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch + 'preinstallopts': local_sip_rebuildparser # req. for PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch }), ('PyQt-builder', '1.11.0', { From 7076685b371b692f5fc186ef49651142225b1dc3 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann Date: Mon, 20 Nov 2023 14:59:17 +0100 Subject: [PATCH 059/356] checksums --- .../p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb | 23 ++++++++----------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb index a2e634ed08a..0987fcacdf5 100644 --- a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb @@ -55,20 +55,25 @@ components = [ 'use_pip': True, 'options': {'modulename': 'PyQt5.sip'}, 'patches': ['PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch'], - 'preinstallopts': local_sip_rebuildparser # req. for PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch - + 'preinstallopts': local_sip_rebuildparser, # req. for PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch + 'checksums': [ + '5d024c419b30fea8a6de8c71a560c7ab0bc3c221fbfb14d55a5b865bd58eaac5', + 'f828b1cf81e8bfea676f7aa1e428102aade5acf520aedd85e7de08b0b2226a5d' + ], }), ('PyQt-builder', '1.11.0', { 'source_urls': [PYPI_SOURCE], 'sources': [SOURCE_TAR_GZ], 'start_dir': 'PyQt-builder-%(version)s', 'use_pip': True, + 'checksums': ['40f6df88c00e6aa9ac9a8bc5688f9fe2a4bd56c06cdb0a0b00ce8955ec34ffe5'], }), ('PyQt5_sip', '12.11.0', { 'source_urls': [PYPI_SOURCE], 'sources': [SOURCE_TAR_GZ], 'start_dir': 'PyQt5_sip-%(version)s', 'use_pip': True, + 'checksums': ['b4710fd85b57edef716cc55fae45bfd5bfac6fc7ba91036f1dcc3f331ca0eb39'], }), (name, version, { 'source_urls': [PYPI_SOURCE], @@ -76,7 +81,8 @@ components = [ 'easyblock': 'ConfigureMakePythonPackage', 'start_dir': '%(name)s-%(version)s', 'preconfigopts': local_setup_env, - 'configopts': local_pyqt_configopts + 'configopts': local_pyqt_configopts, + 'checksums': ['755121a52b3a08cb07275c10ebb96576d36e320e572591db16cfdbc558101594'], }), ('PyQtWebEngine', '5.15.6', { 'source_urls': [PYPI_SOURCE], @@ -86,19 +92,10 @@ components = [ 'preconfigopts': local_setup_env, 'configopts': local_pyqtweb_configopts, 'options': {'modulename': 'PyQt5.QtWebEngine'}, + 'checksums': ['ae241ef2a61c782939c58b52c2aea53ad99b30f3934c8358d5e0a6ebb3fd0721'], }), ] -checksums = [{ - 'sip-5.5.0.tar.gz': '5d024c419b30fea8a6de8c71a560c7ab0bc3c221fbfb14d55a5b865bd58eaac5', - 'PyQt-builder-1.11.0.tar.gz': '40f6df88c00e6aa9ac9a8bc5688f9fe2a4bd56c06cdb0a0b00ce8955ec34ffe5', - 'PyQt5_sip-12.11.0.tar.gz': 'b4710fd85b57edef716cc55fae45bfd5bfac6fc7ba91036f1dcc3f331ca0eb39', - 'PyQt5-5.15.7.tar.gz': '755121a52b3a08cb07275c10ebb96576d36e320e572591db16cfdbc558101594', - 'PyQtWebEngine-5.15.6.tar.gz': 'ae241ef2a61c782939c58b52c2aea53ad99b30f3934c8358d5e0a6ebb3fd0721', - 'PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch': - 'f828b1cf81e8bfea676f7aa1e428102aade5acf520aedd85e7de08b0b2226a5d', -}] - sanity_check_paths = { 'files': ['bin/%s' % x for x in [ 'pyrcc5', 'pyuic5', 'pylupdate5', 'pyqt-bundle', 'sip-build', 'sip-install', 'sip5']], From c060f72ca93812ee016fe07b2dd80f105fb12a63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dvo=C5=99=C3=A1=C4=8Dek=20Josef?= Date: Tue, 21 Nov 2023 16:49:03 +0100 Subject: [PATCH 060/356] adding easyconfigs: BeautifulSoup-4.12.2-GCCcore-13.2.0.eb, jedi-0.19.1-GCCcore-13.2.0.eb, lxml-4.9.3-GCCcore-13.2.0.eb, IPython-8.17.2-GCCcore-13.2.0.eb --- .../BeautifulSoup-4.12.2-GCCcore-13.2.0.eb | 35 ++++++++ .../IPython/IPython-8.17.2-GCCcore-13.2.0.eb | 79 +++++++++++++++++++ .../j/jedi/jedi-0.19.1-GCCcore-13.2.0.eb | 37 +++++++++ .../l/lxml/lxml-4.9.3-GCCcore-13.2.0.eb | 28 +++++++ 4 files changed, 179 insertions(+) create mode 100644 easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.12.2-GCCcore-13.2.0.eb create mode 100644 easybuild/easyconfigs/i/IPython/IPython-8.17.2-GCCcore-13.2.0.eb create mode 100644 easybuild/easyconfigs/j/jedi/jedi-0.19.1-GCCcore-13.2.0.eb create mode 100644 easybuild/easyconfigs/l/lxml/lxml-4.9.3-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.12.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.12.2-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..4aeb23721ad --- /dev/null +++ b/easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.12.2-GCCcore-13.2.0.eb @@ -0,0 +1,35 @@ +easyblock = 'PythonBundle' + +name = 'BeautifulSoup' +version = '4.12.2' + +homepage = 'https://www.crummy.com/software/BeautifulSoup' +description = "Beautiful Soup is a Python library designed for quick turnaround projects like screen-scraping." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40') +] + +dependencies = [ + ('Python', '3.11.5'), + ('hatchling', '1.18.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('soupsieve', '2.5', { + 'checksums': ['5663d5a7b3bfaeee0bc4372e7fc48f9cff4940b3eec54a6451cc5299f1097690'], + }), + (name, version, { + 'modulename': 'bs4', + 'source_tmpl': 'beautifulsoup4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/b/beautifulsoup4'], + 'checksums': ['492bbc69dca35d12daac71c4db1bfff0c876c00ef4a2ffacce226d4638eb72da'], + }), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/i/IPython/IPython-8.17.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/i/IPython/IPython-8.17.2-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..5f2ddc9094c --- /dev/null +++ b/easybuild/easyconfigs/i/IPython/IPython-8.17.2-GCCcore-13.2.0.eb @@ -0,0 +1,79 @@ +easyblock = 'PythonBundle' + +name = 'IPython' +version = '8.17.2' + +homepage = 'https://ipython.org/index.html' +description = """IPython provides a rich architecture for interactive computing with: + Powerful interactive shells (terminal and Qt-based). + A browser-based notebook with support for code, text, mathematical expressions, inline plots and other rich media. + Support for interactive data visualization and use of GUI toolkits. + Flexible, embeddable interpreters to load into your own projects. + Easy to use, high performance tools for parallel computing.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('ZeroMQ', '4.3.5'), + ('lxml', '4.9.3'), + ('BeautifulSoup','4.12.2'), + ('jedi','0.19.1') +] + +sanity_pip_check = True +use_pip = True + +# for the matplotlib-inline required extention we avoid the import sanity check +# as it will fail without matplotlib in the environment, but ipython devs prefer not to make +# matplotlib a required dep (https://github.com/ipython/matplotlib-inline/issues/4) +# we follow the same convention and we not set matplotlib as dependency + +exts_list = [ + ('traitlets', '5.13.0', { + 'checksums': ['9b232b9430c8f57288c1024b34a8f0251ddcc47268927367a0dd3eeaca40deb5'], + }), + ('pure_eval', '0.2.2', { + 'checksums': ['2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3'], + }), + ('executing', '2.0.1', { + 'checksums': ['35afe2ce3affba8ee97f2d69927fa823b08b472b7b994e36a52a964b93d16147'], + }), + ('asttokens', '2.4.1', { + 'checksums': ['b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0'], + }), + ('stack_data', '0.6.3', { + 'checksums': ['836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9'], + }), + ('prompt_toolkit', '3.0.41', { + 'checksums': ['941367d97fc815548822aa26c2a269fdc4eb21e9ec05fc5d447cf09bad5d75f0'], + }), + ('pickleshare', '0.7.5', { + 'checksums': ['87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca'], + }), + ('matplotlib-inline', '0.1.6', { + 'modulename': False, + 'checksums': ['f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304'], + }), + ('backcall', '0.2.0', { + 'checksums': ['5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e'], + }), + ('ipython', version, { + 'modulename': 'IPython', + 'checksums': ['126bb57e1895594bb0d91ea3090bbd39384f6fe87c3d57fd558d0670f50339bb'], + }), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(name)s'], +} + +sanity_check_commands = ['%(namelower)s -h'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/jedi/jedi-0.19.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/j/jedi/jedi-0.19.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..eca3a2e905d --- /dev/null +++ b/easybuild/easyconfigs/j/jedi/jedi-0.19.1-GCCcore-13.2.0.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'jedi' +version = "0.19.1" + +homepage = 'https://github.com/davidhalter/jedi' +description = """ + Jedi - an awesome autocompletion, static analysis and refactoring library for Python. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), +] +dependencies = [ + ('Python', '3.11.5'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('parso', '0.8.3', { + 'checksums': ['8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0'], + }), + (name, version, { + 'checksums': ['cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python3.11/site-packages/jedi'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/l/lxml/lxml-4.9.3-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/lxml/lxml-4.9.3-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..b462b36a685 --- /dev/null +++ b/easybuild/easyconfigs/l/lxml/lxml-4.9.3-GCCcore-13.2.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'lxml' +version = '4.9.3' + +homepage = 'https://lxml.de/' +description = """The lxml XML toolkit is a Pythonic binding for the C libraries libxml2 and libxslt.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['48628bd53a426c9eb9bc066a923acaa0878d1e86129fd5359aee99285f4eed9c'] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('libxml2', '2.11.5'), + ('libxslt', '1.1.38'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'lib' From 69fa2e6d1cf9ebab2fbfd2a8cb431d4cc054e30c Mon Sep 17 00:00:00 2001 From: jose_d Date: Tue, 21 Nov 2023 17:04:58 +0100 Subject: [PATCH 061/356] codestyle fix --- .../easyconfigs/i/IPython/IPython-8.17.2-GCCcore-13.2.0.eb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/i/IPython/IPython-8.17.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/i/IPython/IPython-8.17.2-GCCcore-13.2.0.eb index 5f2ddc9094c..d0cfdfb2d8c 100644 --- a/easybuild/easyconfigs/i/IPython/IPython-8.17.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/i/IPython/IPython-8.17.2-GCCcore-13.2.0.eb @@ -22,8 +22,8 @@ dependencies = [ ('Python-bundle-PyPI', '2023.10'), ('ZeroMQ', '4.3.5'), ('lxml', '4.9.3'), - ('BeautifulSoup','4.12.2'), - ('jedi','0.19.1') + ('BeautifulSoup', '4.12.2'), + ('jedi', '0.19.1') ] sanity_pip_check = True From fe8d3102a545008b850247d3f9bee9ff5501c033 Mon Sep 17 00:00:00 2001 From: Jun Tang Date: Tue, 21 Nov 2023 21:16:34 +0000 Subject: [PATCH 062/356] disable tree-vectorize to reduce number of numerical errors for lapack-test --- .../o/OpenBLAS/OpenBLAS-0.3.21-GCC-12.2.0.eb | 4 +++ ...-0.3.21_disable-tree-vectorize-cmake.patch | 26 +++++++++++++++++ ...S-0.3.21_disable-tree-vectorize-make.patch | 28 +++++++++++++++++++ 3 files changed, 58 insertions(+) create mode 100644 easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-cmake.patch create mode 100644 easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-make.patch diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21-GCC-12.2.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21-GCC-12.2.0.eb index 7e7d8c4b75f..083a42b7b69 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21-GCC-12.2.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21-GCC-12.2.0.eb @@ -21,6 +21,8 @@ patches = [ 'OpenBLAS-0.3.21_fix-order-vectorization.patch', 'OpenBLAS-0.3.21-GCC-12.2.0_disable-fma-in-cscal-zscal.patch', 'OpenBLAS-0.3.21_avoid-crash-in-zdot.patch', + 'OpenBLAS-0.3.21_disable-tree-vectorize-cmake.patch', + 'OpenBLAS-0.3.21_disable-tree-vectorize-make.patch', ] checksums = [ {'v0.3.21.tar.gz': 'f36ba3d7a60e7c8bcc54cd9aaa9b1223dd42eaf02c811791c37e8ca707c241ca'}, @@ -36,6 +38,8 @@ checksums = [ {'OpenBLAS-0.3.21-GCC-12.2.0_disable-fma-in-cscal-zscal.patch': '9784e93567d100960a4c34d86e215bd7aa70bb28b0bc2c6bf1b22c6a05d56003'}, {'OpenBLAS-0.3.21_avoid-crash-in-zdot.patch': '3dac2c1ec896df574f1b37cde81a16f24550b7f1eb81fbfacb0c4449b0dc7894'}, + {'OpenBLAS-0.3.21_disable-tree-vectorize-cmake.patch': 'd8fca9d3956e45d6b9e588159675aa198b6d02534b09e3e797fbf8aee824aed7'}, + {'OpenBLAS-0.3.21_disable-tree-vectorize-make.patch': '3040e30f752107111b23064b8b25514719d46daed7445ad4bca89d2f66ecf95a'}, ] builddependencies = [ diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-cmake.patch b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-cmake.patch new file mode 100644 index 00000000000..93e00ff90e6 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-cmake.patch @@ -0,0 +1,26 @@ +From 32566bfb44067e0c0459e94b53c9457613539eeb Mon Sep 17 00:00:00 2001 +From: Martin Kroeker +Date: Thu, 13 Oct 2022 14:04:25 +0200 +Subject: [PATCH] Disable the gfortran tree vectorizer for netlib LAPACK + +--- + cmake/lapack.cmake | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/cmake/lapack.cmake b/cmake/lapack.cmake +index f8a27f5d4..3b221d420 100644 +--- a/cmake/lapack.cmake ++++ b/cmake/lapack.cmake +@@ -999,6 +999,9 @@ endforeach () + + if (NOT C_LAPACK) + set_source_files_properties(${LA_SOURCES} PROPERTIES COMPILE_FLAGS "${LAPACK_FFLAGS}") ++ if (${F_COMPILER} STREQUAL "GFORTRAN") ++ set_source_files_properties(${LA_SOURCES} PROPERTIES COMPILE_FLAGS "${LAPACK_FFLAGS} -fno-tree-vectorize") ++ endif() + else () + set_source_files_properties(${LA_SOURCES} PROPERTIES COMPILE_FLAGS "${LAPACK_CFLAGS}") + endif () +-- +2.25.1 + diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-make.patch b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-make.patch new file mode 100644 index 00000000000..663bd546074 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-make.patch @@ -0,0 +1,28 @@ +From 57809526c430ef0a07f5c5c39dce20c6d73a1f35 Mon Sep 17 00:00:00 2001 +From: Martin Kroeker +Date: Thu, 13 Oct 2022 09:12:23 +0200 +Subject: [PATCH] Disable the gfortran tree vectorizer for lapack-netlib + +--- + Makefile | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/Makefile b/Makefile +index 289f0eca5..56af9847e 100644 +--- a/Makefile ++++ b/Makefile +@@ -278,7 +278,11 @@ prof_lapack : lapack_prebuild + lapack_prebuild : + ifeq ($(NO_LAPACK), $(filter 0,$(NO_LAPACK))) + -@echo "FC = $(FC)" > $(NETLIB_LAPACK_DIR)/make.inc ++ifeq ($(F_COMPILER), GFORTRAN) ++ -@echo "override FFLAGS = $(LAPACK_FFLAGS) -fno-tree-vectorize" >> $(NETLIB_LAPACK_DIR)/make.inc ++else + -@echo "override FFLAGS = $(LAPACK_FFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc ++endif + -@echo "FFLAGS_DRV = $(LAPACK_FFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc + -@echo "POPTS = $(LAPACK_FPFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc + -@echo "FFLAGS_NOOPT = -O0 $(LAPACK_NOOPT)" >> $(NETLIB_LAPACK_DIR)/make.inc +-- +2.25.1 + From 142bc873b84310384ae505c9346cc6bffa929870 Mon Sep 17 00:00:00 2001 From: sassy Date: Wed, 22 Nov 2023 10:07:50 +0000 Subject: [PATCH 063/356] adding easyconfigs: json-fortran-8.3.0-intel-compilers-2022.1.0.eb, mctc-lib-0.3.1-intel-compilers-2022.1.0.eb, mstore-0.2.0-intel-compilers-2022.1.0.eb --- ...-fortran-8.3.0-intel-compilers-2022.1.0.eb | 31 ++++++++++++++ ...mctc-lib-0.3.1-intel-compilers-2022.1.0.eb | 41 +++++++++++++++++++ .../mstore-0.2.0-intel-compilers-2022.1.0.eb | 37 +++++++++++++++++ 3 files changed, 109 insertions(+) create mode 100644 easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.1.0.eb create mode 100644 easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-intel-compilers-2022.1.0.eb create mode 100644 easybuild/easyconfigs/m/mstore/mstore-0.2.0-intel-compilers-2022.1.0.eb diff --git a/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.1.0.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.1.0.eb new file mode 100644 index 00000000000..b7db841c2dd --- /dev/null +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.1.0.eb @@ -0,0 +1,31 @@ +# J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeMake' + +name = 'json-fortran' +version = '8.3.0' + +homepage = 'https://github.com/jacobwilliams/json-fortran' +description = "JSON-Fortran: A Modern Fortran JSON API" + +toolchain = {'name': 'intel-compilers', 'version': '2022.1.0'} + +source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['5fe9ad709a726416cec986886503e0526419742e288c4e43f63c1c22026d1e8a'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.24.3'), +] + +configopts = '-DUSE_GNU_INSTALL_CONVENTION=TRUE' + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libjsonfortran.a', 'lib/libjsonfortran.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-intel-compilers-2022.1.0.eb b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-intel-compilers-2022.1.0.eb new file mode 100644 index 00000000000..e996074a626 --- /dev/null +++ b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-intel-compilers-2022.1.0.eb @@ -0,0 +1,41 @@ +easyblock = 'CMakeMake' + +name = 'mctc-lib' +version = '0.3.1' + +homepage = 'https://grimme-lab.github.io/mctc-lib' +description = """Common tool chain for working with molecular structure data in various +applications. This library provides a unified way to perform operations on +molecular structure data, like reading and writing to common geometry file +formats.""" + +toolchain = {'name': 'intel-compilers', 'version': '2022.1.0'} +toolchainopts = {'pic': True} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['03dc8ccba37413da70e55a07cef8e8de53bce33f5bb52c1f8db5fec326abe083'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.24.3'), +] + +dependencies = [ + ('json-fortran', '8.3.0'), +] + +configopts = ['-DBUILD_SHARED_LIBS=ON', '-DBUILD_SHARED_LIBS=OFF'] + +sanity_check_paths = { + 'files': ['bin/mctc-convert', 'lib/libmctc-lib.%s' % SHLIB_EXT], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["mctc-convert --help"] + +# run suite of tests with ctest +runtest = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/mstore/mstore-0.2.0-intel-compilers-2022.1.0.eb b/easybuild/easyconfigs/m/mstore/mstore-0.2.0-intel-compilers-2022.1.0.eb new file mode 100644 index 00000000000..fb04f173ae1 --- /dev/null +++ b/easybuild/easyconfigs/m/mstore/mstore-0.2.0-intel-compilers-2022.1.0.eb @@ -0,0 +1,37 @@ +# J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeMake' + +name = 'mstore' +version = '0.2.0' + +homepage = 'https://github.com/grimme-lab/mstore' +description = """Molecular structure store for testing""" + +toolchain = {'name': 'intel-compilers', 'version': '2022.1.0'} +toolchainopts = {'pic': True} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['95edba88afbc8013f57f4c818a97c0500cc40b158bed11234c061b2b6d7e480d'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.24.3'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), +] + +configopts = '-DBUILD_SHARED_LIBS=ON' + +sanity_check_paths = { + 'files': ['bin/mstore-fortranize', 'bin/mstore-info', 'lib/libmstore.%s' % SHLIB_EXT], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["mstore-info --help"] + +moduleclass = 'chem' From 95463f59ec5ec8186a1b992791692bbedac5ae51 Mon Sep 17 00:00:00 2001 From: sassy Date: Wed, 22 Nov 2023 12:44:48 +0000 Subject: [PATCH 064/356] Sanity check improved --- .../m/mctc-lib/mctc-lib-0.3.1-intel-compilers-2022.1.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-intel-compilers-2022.1.0.eb b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-intel-compilers-2022.1.0.eb index e996074a626..3b10964597e 100644 --- a/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-intel-compilers-2022.1.0.eb +++ b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-intel-compilers-2022.1.0.eb @@ -29,7 +29,7 @@ dependencies = [ configopts = ['-DBUILD_SHARED_LIBS=ON', '-DBUILD_SHARED_LIBS=OFF'] sanity_check_paths = { - 'files': ['bin/mctc-convert', 'lib/libmctc-lib.%s' % SHLIB_EXT], + 'files': ['bin/mctc-convert', 'lib/libmctc-lib.a', 'lib/libmctc-lib.%s' % SHLIB_EXT], 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], } From bd90e5132d91325323db1d26e982638ab5c1a68c Mon Sep 17 00:00:00 2001 From: sassy Date: Wed, 22 Nov 2023 12:58:08 +0000 Subject: [PATCH 065/356] adding easyconfigs: iimkl-2022a.eb --- easybuild/easyconfigs/i/iimkl/iimkl-2022a.eb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 easybuild/easyconfigs/i/iimkl/iimkl-2022a.eb diff --git a/easybuild/easyconfigs/i/iimkl/iimkl-2022a.eb b/easybuild/easyconfigs/i/iimkl/iimkl-2022a.eb new file mode 100644 index 00000000000..39d917dbeb9 --- /dev/null +++ b/easybuild/easyconfigs/i/iimkl/iimkl-2022a.eb @@ -0,0 +1,18 @@ +# This is an easyconfig file for EasyBuild, see http://easybuilders.github.io/easybuild +easyblock = 'Toolchain' + +name = 'iimkl' +version = '2022a' + +homepage = 'https://software.intel.com/en-us/intel-cluster-toolkit-compiler/' +description = """Intel C/C++ and Fortran compilers, alongside Intel Math Kernel Library (MKL).""" + +toolchain = SYSTEM + +local_comp_ver = '2022.1.0' +dependencies = [ + ('intel-compilers', local_comp_ver), + ('imkl', local_comp_ver, '', SYSTEM), +] + +moduleclass = 'toolchain' From b081394713de226f4928ce36be319f092dcf9496 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann Date: Wed, 22 Nov 2023 15:41:23 +0100 Subject: [PATCH 066/356] {ai}[foss/2022a] pytorch-3dunet v1.6.0 w/ CUDA 11.7.0 --- ...rch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb diff --git a/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..30a11ee9960 --- /dev/null +++ b/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,56 @@ +# Thomas Hoffmann, EMBL Heidelberg, structures-it@embl.de, 2023/11 +easyblock = 'PythonBundle' + +name = 'pytorch-3dunet' +version = '1.6.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/wolny/pytorch-3dunet' +description = """ +PyTorch implementation of 3D U-Net and its variants: + - UNet3D: Standard 3D U-Net based on 3D U-Net: Learning Dense Volumetric Segmentation from Sparse Annotation + - ResidualUNet3D: Residual 3D U-Net based on Superhuman Accuracy on the SNEMI3D + Connectomics Challenge + - ResidualUNetSE3D: Similar to ResidualUNet3D with the addition of Squeeze and + Excitation blocks based on Deep Learning Semantic Segmentation for High- + Resolution Medical Volumes. Original squeeze and excite paper: Squeeze-and- + Excitation Networks +The code allows for training the U-Net for both: semantic segmentation (binary +and multi-class) and regression problems (e.g. de-noising, learning +deconvolutions). +""" +toolchain = {'name': 'foss', 'version': '2022a'} + +builddependencies = [ + ('pkgconf', '1.8.0'), + ('cppy', '1.2.1') +] + +dependencies = [ + ('Python', '3.10.4'), + ('PyTorch', '1.12.0', versionsuffix), + ('CUDA', '11.7.0', '', SYSTEM), + ('h5py', '3.7.0'), + ('tensorboard', '2.10.0'), + ('scikit-image', '0.19.3') +] + +use_pip = True +sanity_pip_check = True + +github_account = 'wolny' +exts_list = [ + (name, version, { + 'modulename': 'pytorch3dunet', + 'source_urls': [GITHUB_SOURCE], + 'sources': '%(version)s.tar.gz', + 'checksums': ['5323eb8a31ad95c17a3e3d83e3de08b0d3cdd0841b28687aa41039355706b659'], + }), +] + +sanity_check_commands = [ + "train3dunet --help", + "predict3dunet --help" +] + +moduleclass = 'ai' From e24a81ac8a37aa5e64e4680b430bfc452c2af393 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann Date: Wed, 22 Nov 2023 16:01:05 +0100 Subject: [PATCH 067/356] fix src --- .../pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb index 30a11ee9960..e0ca7a4f166 100644 --- a/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb +++ b/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb @@ -43,7 +43,7 @@ exts_list = [ (name, version, { 'modulename': 'pytorch3dunet', 'source_urls': [GITHUB_SOURCE], - 'sources': '%(version)s.tar.gz', + 'sources': ['%(version)s.tar.gz'], 'checksums': ['5323eb8a31ad95c17a3e3d83e3de08b0d3cdd0841b28687aa41039355706b659'], }), ] From 5e67ca569549f51718da85cdeddb7bc446180b15 Mon Sep 17 00:00:00 2001 From: ocaisa Date: Wed, 22 Nov 2023 16:31:19 +0100 Subject: [PATCH 068/356] Add fortran modules to sanity check --- .../json-fortran-8.3.0-intel-compilers-2022.1.0.eb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.1.0.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.1.0.eb index b7db841c2dd..ad4f0350f35 100644 --- a/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.1.0.eb +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.1.0.eb @@ -24,7 +24,8 @@ configopts = '-DUSE_GNU_INSTALL_CONVENTION=TRUE' runtest = 'check' sanity_check_paths = { - 'files': ['lib/libjsonfortran.a', 'lib/libjsonfortran.%s' % SHLIB_EXT], + 'files': ['lib/libjsonfortran.a', 'lib/libjsonfortran.%s' % SHLIB_EXT, + 'include/json_module.mod', 'include/json_parameters.mod'], 'dirs': ['include'], } From c955de5d7bae0e363369cfe7b675c031e65c5cad Mon Sep 17 00:00:00 2001 From: "A.H. Kole" Date: Wed, 22 Nov 2023 16:39:51 +0100 Subject: [PATCH 069/356] Add missing description to patch file for flook --- easybuild/easyconfigs/f/flook/flook-0.8.1-GCC-11.3.0.eb | 2 +- easybuild/easyconfigs/f/flook/flook-0.8.1_flook.pc.in.patch | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/f/flook/flook-0.8.1-GCC-11.3.0.eb b/easybuild/easyconfigs/f/flook/flook-0.8.1-GCC-11.3.0.eb index aeab9ee569a..bf12e82517f 100644 --- a/easybuild/easyconfigs/f/flook/flook-0.8.1-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/f/flook/flook-0.8.1-GCC-11.3.0.eb @@ -15,7 +15,7 @@ patches = [ checksums = [ {'flook-0.8.1.tar.gz': 'beb15b8cb57b7a2facc7a5094326aaa877fda4fe35f8aabac023232c2e12d97e'}, {'flook-0.8.1_setup.make': '6df3f53faa8a8fe61534ded997c5e748d0327c13b18972fbbf49eacbda30d6e0'}, - {'flook-0.8.1_flook.pc.in.patch': '1aa3635d83f0f9bad2ef2f9457183aefa94c8f07e66d3ef31e8897190752b42c'}, + {'flook-0.8.1_flook.pc.in.patch': '73ff61d8bc224c32cb285313615a465c0ce0a6b34e22ef5cf08291a27cee8796'}, ] dependencies = [('Lua', '5.4.4')] diff --git a/easybuild/easyconfigs/f/flook/flook-0.8.1_flook.pc.in.patch b/easybuild/easyconfigs/f/flook/flook-0.8.1_flook.pc.in.patch index 86e8375df05..485caf113fa 100644 --- a/easybuild/easyconfigs/f/flook/flook-0.8.1_flook.pc.in.patch +++ b/easybuild/easyconfigs/f/flook/flook-0.8.1_flook.pc.in.patch @@ -1,3 +1,6 @@ +Patch to fix missing link libraries in pkgconfig +for correctly linking with external Lua. +author: Arnold H. Kole (Utrecht University) diff --git a/flook.pc.in b/flook.pc.in index 680b5e0..b46f8ad 100644 --- a/flook.pc.in From bab7cdc551afe24df275c72694ead6326ff542a2 Mon Sep 17 00:00:00 2001 From: Ake Sandgren Date: Thu, 23 Nov 2023 10:58:19 +0100 Subject: [PATCH 070/356] adding easyconfigs: tiny-cuda-nn-1.6-foss-2022a-CUDA-11.7.0.eb, CUTLASS-2.11.0-foss-2022a-CUDA-11.7.0.eb and patches: tiny-cuda-nn-1.6_use_external_fmt+cutlass.patch --- .../CUTLASS-2.11.0-foss-2022a-CUDA-11.7.0.eb | 44 ++++++++++++ ...tiny-cuda-nn-1.6-foss-2022a-CUDA-11.7.0.eb | 55 +++++++++++++++ ...cuda-nn-1.6_use_external_fmt+cutlass.patch | 67 +++++++++++++++++++ 3 files changed, 166 insertions(+) create mode 100644 easybuild/easyconfigs/c/CUTLASS/CUTLASS-2.11.0-foss-2022a-CUDA-11.7.0.eb create mode 100644 easybuild/easyconfigs/t/tiny-cuda-nn/tiny-cuda-nn-1.6-foss-2022a-CUDA-11.7.0.eb create mode 100644 easybuild/easyconfigs/t/tiny-cuda-nn/tiny-cuda-nn-1.6_use_external_fmt+cutlass.patch diff --git a/easybuild/easyconfigs/c/CUTLASS/CUTLASS-2.11.0-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/c/CUTLASS/CUTLASS-2.11.0-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..da5432a165c --- /dev/null +++ b/easybuild/easyconfigs/c/CUTLASS/CUTLASS-2.11.0-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,44 @@ +easyblock = 'CMakeMake' + +name = 'CUTLASS' +version = '2.11.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/NVIDIA/cutlass' +description = """CUTLASS is a collection of CUDA C++ template +abstractions for implementing high-performance matrix-matrix +multiplication (GEMM) and related computations at all levels and scales +within CUDA. It incorporates strategies for hierarchical decomposition +and data movement similar to those used to implement cuBLAS and cuDNN. +CUTLASS decomposes these "moving parts" into reusable, modular software +components abstracted by C++ template classes. Primitives for different +levels of a conceptual parallelization hierarchy can be specialized and +tuned via custom tiling sizes, data types, and other algorithmic policy. +The resulting flexibility simplifies their use as building blocks within +custom kernels and applications.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +github_account = 'NVIDIA' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['b4394f1e080b63cfc54163069334096324c1262dfc66e67099880005d51b8af9'] + +builddependencies = [ + ('CMake', '3.24.3'), + ('Python', '3.10.4'), +] + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('cuDNN', '8.4.1.50', versionsuffix, SYSTEM), +] + +configopts = "-DCUTLASS_ENABLE_CUBLAS=1 -DCUTLASS_ENABLE_CUDNN=1 " + +sanity_check_paths = { + 'files': ['include/cutlass/cutlass.h', 'lib/libcutlass.%s' % SHLIB_EXT], + 'dirs': ['lib/cmake'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/tiny-cuda-nn/tiny-cuda-nn-1.6-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/t/tiny-cuda-nn/tiny-cuda-nn-1.6-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..d38b5962f49 --- /dev/null +++ b/easybuild/easyconfigs/t/tiny-cuda-nn/tiny-cuda-nn-1.6-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,55 @@ +easyblock = 'PythonPackage' + +name = 'tiny-cuda-nn' +version = '1.6' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/NVlabs/tiny-cuda-nn' +description = """is a small, self-contained framework for training and +querying neural networks. Most notably, it contains a lightning fast +"fully fused" multi-layer perceptron (technical paper), a versatile +multiresolution hash encoding (technical paper), as well as support for +various other input encodings, losses, and optimizers.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +github_account = 'NVlabs' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + '%(name)s-%(version)s_use_external_fmt+cutlass.patch', +] +checksums = [ + {'v1.6.tar.gz': '490c944b58af1b376bfaaa3695f86d16eef81c3f903b67acdbd4d08612b099c5'}, + {'tiny-cuda-nn-1.6_use_external_fmt+cutlass.patch': + 'ef01a927d6efe9c23cc83173a6fbebe3f597747c6d545a450f4928ed5971959f'}, +] + +builddependencies = [ + ('Ninja', '1.10.2'), + ('fmt', '9.1.0'), + ('CUTLASS', '2.11.0', versionsuffix), # tiny-cuda-nn is not compatible with CUTLASS 3.x yet +] + +dependencies = [ + ('Python', '3.10.4'), + ('CUDA', '11.7.0', '', SYSTEM), + ('PyTorch', '1.12.1', versionsuffix), +] + +start_dir = 'bindings/torch' + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +# Even though CMake isn't a dependency the template value is still available +preinstallopts = 'export TCNN_CUDA_ARCHITECTURES="%(cuda_cc_cmake)s" && ' + +options = {'modulename': 'tinycudann'} + +sanity_check_commands = [ + 'python -c "from tinycudann.modules import _C;"', +] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/t/tiny-cuda-nn/tiny-cuda-nn-1.6_use_external_fmt+cutlass.patch b/easybuild/easyconfigs/t/tiny-cuda-nn/tiny-cuda-nn-1.6_use_external_fmt+cutlass.patch new file mode 100644 index 00000000000..cfe7171ed17 --- /dev/null +++ b/easybuild/easyconfigs/t/tiny-cuda-nn/tiny-cuda-nn-1.6_use_external_fmt+cutlass.patch @@ -0,0 +1,67 @@ +Use external fmt and CUTLASS + +Åke Sandgren, 2023-11-23 +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 600bc41..c1bfba9 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -44,14 +44,6 @@ if (NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) + set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "RelWithDebInfo") + endif() + +-if (NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/dependencies/cutlass/CMakeLists.txt") +- message(FATAL_ERROR +- "Some tiny-cuda-nn dependencies are missing. " +- "If you forgot the \"--recursive\" flag when cloning this project, " +- "this can be fixed by calling \"git submodule update --init --recursive\"." +- ) +-endif() +- + if (APPLE) + set(CMAKE_MACOSX_RPATH ON) + endif() +@@ -187,7 +179,6 @@ find_library( + ) + + set(BUILD_SHARED_LIBS OFF) +-add_subdirectory("dependencies/fmt") + + ############################################################################### + # tiny-cuda-nn library, samples, and benchmarks +@@ -225,9 +216,6 @@ target_compile_options(tiny-cuda-nn PUBLIC $<$:${CUDA_NVC + target_include_directories(tiny-cuda-nn PUBLIC + "include" + "dependencies" +- "dependencies/cutlass/include" +- "dependencies/cutlass/tools/util/include" +- "dependencies/fmt/include" + ) + target_link_libraries(tiny-cuda-nn PUBLIC ${CUDA_LIBRARIES} cuda cublas fmt) + +diff --git a/bindings/torch/setup.py b/bindings/torch/setup.py +index 351a2ed..5a2886f 100644 +--- a/bindings/torch/setup.py ++++ b/bindings/torch/setup.py +@@ -89,8 +89,6 @@ bindings_dir = os.path.dirname(__file__) + root_dir = os.path.abspath(os.path.join(bindings_dir, "../..")) + source_files = [ + "tinycudann/bindings.cpp", +- "../../dependencies/fmt/src/format.cc", +- "../../dependencies/fmt/src/os.cc", + "../../src/cpp_api.cu", + "../../src/common.cu", + "../../src/common_device.cu", +@@ -115,12 +113,9 @@ ext = CUDAExtension( + include_dirs=[ + "%s/include" % root_dir, + "%s/dependencies" % root_dir, +- "%s/dependencies/cutlass/include" % root_dir, +- "%s/dependencies/cutlass/tools/util/include" % root_dir, +- "%s/dependencies/fmt/include" % root_dir, + ], + extra_compile_args={"cxx": cflags, "nvcc": nvcc_flags}, +- libraries=["cuda", "cudadevrt", "cudart_static"], ++ libraries=["cuda", "cudadevrt", "cudart_static", "fmt"], + ) + ext_modules = [ext] + From e7e57f1f29550086e6460230fc6a2150aba4cf90 Mon Sep 17 00:00:00 2001 From: Ake Sandgren Date: Thu, 23 Nov 2023 13:11:31 +0100 Subject: [PATCH 071/356] Only enable CUDA archs requested by cuda-compute-capabilities --- .../c/CUTLASS/CUTLASS-2.11.0-foss-2022a-CUDA-11.7.0.eb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/c/CUTLASS/CUTLASS-2.11.0-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/c/CUTLASS/CUTLASS-2.11.0-foss-2022a-CUDA-11.7.0.eb index da5432a165c..f534333fec7 100644 --- a/easybuild/easyconfigs/c/CUTLASS/CUTLASS-2.11.0-foss-2022a-CUDA-11.7.0.eb +++ b/easybuild/easyconfigs/c/CUTLASS/CUTLASS-2.11.0-foss-2022a-CUDA-11.7.0.eb @@ -34,7 +34,12 @@ dependencies = [ ('cuDNN', '8.4.1.50', versionsuffix, SYSTEM), ] -configopts = "-DCUTLASS_ENABLE_CUBLAS=1 -DCUTLASS_ENABLE_CUDNN=1 " +_copts = [ + '-DCUTLASS_NVCC_ARCHS="%(cuda_cc_cmake)s"', + '-DCUTLASS_ENABLE_CUBLAS=1', + '-DCUTLASS_ENABLE_CUDNN=1', +] +configopts = ' '.join(_copts) sanity_check_paths = { 'files': ['include/cutlass/cutlass.h', 'lib/libcutlass.%s' % SHLIB_EXT], From 67c6c0528f340c2384c862c0c48450792ebc24b1 Mon Sep 17 00:00:00 2001 From: Samuel Moors Date: Thu, 23 Nov 2023 16:20:46 +0100 Subject: [PATCH 072/356] add versionsuffix -param to reaxff and add -sim variant --- ....3.0.eb => ReaxFF-2.0-GCC-11.3.0-param.eb} | 5 ++- .../r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb | 38 +++++++++++++++++++ 2 files changed, 41 insertions(+), 2 deletions(-) rename easybuild/easyconfigs/r/ReaxFF/{ReaxFF-2.0-GCC-11.3.0.eb => ReaxFF-2.0-GCC-11.3.0-param.eb} (81%) create mode 100644 easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb diff --git a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0.eb b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb similarity index 81% rename from easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0.eb rename to easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb index a3082257b1f..10819dfd8b3 100644 --- a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb @@ -2,17 +2,18 @@ easyblock = 'MakeCp' name = 'ReaxFF' version = '2.0' +versionsuffix = '-param' homepage = 'https://www.engr.psu.edu/adri/ReaxffManual.aspx' description = """ -REAXFF Reactive force field program +parameter generation code for the REAXFF Reactive force field program """ toolchain = {'name': 'GCC', 'version': '11.3.0'} sources = [SOURCE_TAR_GZ] -checksums = ['a62829d25b6eb5c311206a89a892e1de6fd3ee33cae40489901bb9f50d53f4d2'] +checksums = [None] download_instructions = """ Register at https://www.engr.psu.edu/adri/Home.aspx and follow instructions diff --git a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb new file mode 100644 index 00000000000..31631b7a6db --- /dev/null +++ b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb @@ -0,0 +1,38 @@ +easyblock = 'MakeCp' + +name = 'ReaxFF' +version = '2.0' +versionsuffix = '-sim' + +homepage = 'https://www.engr.psu.edu/adri/ReaxffManual.aspx' + +description = """ +simulation code of the REAXFF Reactive force field program +""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +sources = ['ReaxFF-2.0-sim.zip'] +checksums = [None] + +download_instructions = """ +Register at https://www.engr.psu.edu/adri/Home.aspx and follow instructions +""" + +start_dir = 'src' + +prebuildopts = r"sed -ie 's/^\(\s\)gcc /\1gfortran /g' makefile && " # noqa: W605 +prebuildopts += 'rm *.o && ' + +buildopts = 'SUFFIX="-c -O3 -std=legacy"' + +files_to_copy = [ + (['reac'], 'bin'), +] + +sanity_check_paths = { + 'files': ['bin/reac'], + 'dirs': [], +} + +moduleclass = 'chem' From 5eda9c0b354b3e423378ddf446862ae66c3b11f4 Mon Sep 17 00:00:00 2001 From: Samuel Moors Date: Thu, 23 Nov 2023 17:15:14 +0100 Subject: [PATCH 073/356] fix sources --- easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb | 2 +- easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb index 10819dfd8b3..4a5888f01b6 100644 --- a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb +++ b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb @@ -12,7 +12,7 @@ parameter generation code for the REAXFF Reactive force field program toolchain = {'name': 'GCC', 'version': '11.3.0'} -sources = [SOURCE_TAR_GZ] +sources = ['%(name)s-param-%(version)s.tar.gz'] checksums = [None] download_instructions = """ diff --git a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb index 31631b7a6db..e4aeb7b0b08 100644 --- a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb +++ b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb @@ -12,7 +12,7 @@ simulation code of the REAXFF Reactive force field program toolchain = {'name': 'GCC', 'version': '11.3.0'} -sources = ['ReaxFF-2.0-sim.zip'] +sources = ['%(name)s-sim-%(version)s.zip'] checksums = [None] download_instructions = """ From fa5ec1e4e5396a6840b357f83aed1786a0d0a7de Mon Sep 17 00:00:00 2001 From: Vital-IT Date: Fri, 24 Nov 2023 10:58:04 +0100 Subject: [PATCH 074/356] Fix Unicode --- .../s/SMRT-Link/SMRT-Link-12.0.0.177059-cli-tools-only.eb | 8 ++++---- .../s/SMRT-Link/SMRT-Link-5.1.0.26412-cli-tools-only.eb | 2 +- .../s/SMRT-Link/SMRT-Link-6.0.0.47841-cli-tools-only.eb | 8 ++++---- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/easybuild/easyconfigs/s/SMRT-Link/SMRT-Link-12.0.0.177059-cli-tools-only.eb b/easybuild/easyconfigs/s/SMRT-Link/SMRT-Link-12.0.0.177059-cli-tools-only.eb index 3169b1073f5..0aca88b8fe6 100644 --- a/easybuild/easyconfigs/s/SMRT-Link/SMRT-Link-12.0.0.177059-cli-tools-only.eb +++ b/easybuild/easyconfigs/s/SMRT-Link/SMRT-Link-12.0.0.177059-cli-tools-only.eb @@ -1,7 +1,7 @@ # This file is an EasyBuild reciPY as per https://easybuilders.github.io/easybuild/ # Author: Pablo Escobar Lopez # sciCORE - University of Basel -# SIB Swiss Institute of Bioinformatics +# SIB Swiss Institute of Bioinformatics easyblock = 'Binary' @@ -10,9 +10,9 @@ version = "12.0.0.177059" versionsuffix = '-cli-tools-only' homepage = 'https://www.pacb.com/support/software-downloads/' -description = """PacBio’s open-source SMRT Analysis software suite is designed for use with Single Molecule, - Real-Time (SMRT) Sequencing data. You can analyze, visualize, and manage your data through an intuitive GUI - or command-line interface. You can also integrate SMRT Analysis in your existing data workflow through +description = """PacBio's open-source SMRT Analysis software suite is designed for use with Single Molecule, + Real-Time (SMRT) Sequencing data. You can analyze, visualize, and manage your data through an intuitive GUI + or command-line interface. You can also integrate SMRT Analysis in your existing data workflow through the extensive set of APIs provided""" toolchain = SYSTEM diff --git a/easybuild/easyconfigs/s/SMRT-Link/SMRT-Link-5.1.0.26412-cli-tools-only.eb b/easybuild/easyconfigs/s/SMRT-Link/SMRT-Link-5.1.0.26412-cli-tools-only.eb index 31ee46ea3af..9011162749b 100644 --- a/easybuild/easyconfigs/s/SMRT-Link/SMRT-Link-5.1.0.26412-cli-tools-only.eb +++ b/easybuild/easyconfigs/s/SMRT-Link/SMRT-Link-5.1.0.26412-cli-tools-only.eb @@ -10,7 +10,7 @@ version = '5.1.0.26412' versionsuffix = '-cli-tools-only' homepage = 'https://www.pacb.com/support/software-downloads/' -description = """PacBio’s open-source SMRT Analysis software suite is designed for use with Single Molecule, +description = """PacBio's open-source SMRT Analysis software suite is designed for use with Single Molecule, Real-Time (SMRT) Sequencing data. You can analyze, visualize, and manage your data through an intuitive GUI or command-line interface. You can also integrate SMRT Analysis in your existing data workflow through the extensive set of APIs provided""" diff --git a/easybuild/easyconfigs/s/SMRT-Link/SMRT-Link-6.0.0.47841-cli-tools-only.eb b/easybuild/easyconfigs/s/SMRT-Link/SMRT-Link-6.0.0.47841-cli-tools-only.eb index ac28bf1d4f0..e107ae7fc61 100644 --- a/easybuild/easyconfigs/s/SMRT-Link/SMRT-Link-6.0.0.47841-cli-tools-only.eb +++ b/easybuild/easyconfigs/s/SMRT-Link/SMRT-Link-6.0.0.47841-cli-tools-only.eb @@ -1,7 +1,7 @@ # This file is an EasyBuild reciPY as per https://easybuilders.github.io/easybuild/ # Author: Pablo Escobar Lopez # sciCORE - University of Basel -# SIB Swiss Institute of Bioinformatics +# SIB Swiss Institute of Bioinformatics easyblock = 'Binary' @@ -10,9 +10,9 @@ version = "6.0.0.47841" versionsuffix = '-cli-tools-only' homepage = 'https://www.pacb.com/support/software-downloads/' -description = """PacBio’s open-source SMRT Analysis software suite is designed for use with Single Molecule, - Real-Time (SMRT) Sequencing data. You can analyze, visualize, and manage your data through an intuitive GUI - or command-line interface. You can also integrate SMRT Analysis in your existing data workflow through +description = """PacBio's open-source SMRT Analysis software suite is designed for use with Single Molecule, + Real-Time (SMRT) Sequencing data. You can analyze, visualize, and manage your data through an intuitive GUI + or command-line interface. You can also integrate SMRT Analysis in your existing data workflow through the extensive set of APIs provided""" toolchain = SYSTEM From 57bdc84b9aa0aac14ba82b9c5b935a4d615f875c Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Sat, 25 Nov 2023 11:16:27 +0100 Subject: [PATCH 075/356] adding easyconfigs: python-xxhash-2.0.2-GCCcore-10.2.0.eb --- .../python-xxhash-2.0.2-GCCcore-10.2.0.eb | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 easybuild/easyconfigs/p/python-xxhash/python-xxhash-2.0.2-GCCcore-10.2.0.eb diff --git a/easybuild/easyconfigs/p/python-xxhash/python-xxhash-2.0.2-GCCcore-10.2.0.eb b/easybuild/easyconfigs/p/python-xxhash/python-xxhash-2.0.2-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..e094054b20e --- /dev/null +++ b/easybuild/easyconfigs/p/python-xxhash/python-xxhash-2.0.2-GCCcore-10.2.0.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +name = 'python-xxhash' +version = '2.0.2' + +homepage = 'https://github.com/ifduyue/python-xxhash' +description = """Python bindings for xxHash. xxHash is an extremely fast +non-cryptographic hash algorithm, working at RAM speed limit.""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +builddependencies = [ + ('binutils', '2.35'), +] + +dependencies = [ + ('Python', '3.8.6'), + ('xxHash', '0.8.1'), +] + +use_pip = True + +exts_list = [ + ('xxhash', version, { + 'preinstallopts': 'XXHASH_LINK_SO=1', + 'checksums': ['b7bead8cf6210eadf9cecf356e17af794f57c0939a3d420a00d87ea652f87b49'], + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' From 39e70d5563e0ac4ef0c7d78aadf24c09f9f0729e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20=C3=96hman?= Date: Mon, 27 Nov 2023 12:45:03 +0000 Subject: [PATCH 076/356] adding easyconfigs: XCrySDen-1.6.2-intel-2021b.eb --- .../t/Togl/Togl-2.0-GCCcore-11.2.0.eb | 49 +++++++++++++++++++ .../x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb | 40 +++++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 easybuild/easyconfigs/t/Togl/Togl-2.0-GCCcore-11.2.0.eb create mode 100644 easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb diff --git a/easybuild/easyconfigs/t/Togl/Togl-2.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/t/Togl/Togl-2.0-GCCcore-11.2.0.eb new file mode 100644 index 00000000000..613a304992d --- /dev/null +++ b/easybuild/easyconfigs/t/Togl/Togl-2.0-GCCcore-11.2.0.eb @@ -0,0 +1,49 @@ +# Last contribution from IT4Innovations National Supercomputing Center, Czech Republic +# Jakub Kropacek, 2022 + +easyblock = 'ConfigureMake' + +name = 'Togl' +version = '2.0' + +homepage = 'https://sourceforge.net/projects/togl/' +description = """A Tcl/Tk widget for OpenGL rendering.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://downloads.sourceforge.net/project/%(namelower)s/%(name)s/%(version)s/'] +sources = ['%(name)s%(version)s-src.tar.gz'] +patches = [ + 'Togl-2.0_configure.patch', + 'Togl-2.0_decl.patch', +] +checksums = [ + 'b7d4a90bbad3aca618d505ee99e7fd8fb04c829f63231dda2360f557ba3f7610', # Togl2.0-src.tar.gz + 'da97f36b60cd107444cd92453809135b14dc1e8775146b3ba0731da8002e6f9f', # Togl-2.0_configure.patch + '05db6b3ca5139f60616d074903883a3070fcfb1eb8c965b0938779b4f9a6ec6a', # Togl-2.0_decl.patch +] + +builddependencies = [('binutils', '2.37')] + +dependencies = [ + ('Mesa', '21.1.7'), + ('Tk', '8.6.11'), + ('Tcl', '8.6.11'), +] + +preconfigopts = 'export CFLAGS="$CFLAGS -DTOGL_USE_FONTS=0" && ' + +configopts = "--prefix=%(installdir)s --exec-prefix=%(installdir)s " +configopts += "--with-tcl=$EBROOTTCL/lib --with-tk=$EBROOTTK/lib" + +sanity_check_paths = { + 'files': [], + 'dirs': ['include', 'lib', 'lib/%(name)s%(version)s'], +} + +modextrapaths = { + 'LD_LIBRARY_PATH': 'lib/%(name)s%(version)s', + 'LIBRARY_PATH': 'lib/%(name)s%(version)s', +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb new file mode 100644 index 00000000000..1efe81bd188 --- /dev/null +++ b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb @@ -0,0 +1,40 @@ +# Contribution from IT4Innovations National Supercomputing Center, Czech Republic +# Jakub Kropacek, 2022 + +name = 'XCrySDen' +version = '1.6.2' + +homepage = "http://www.xcrysden.org/" +docurls = "http://www.xcrysden.org/Documentation.html" +description = """ +XCrySDen is a crystalline and molecular structure visualisation program aiming at display of isosurfaces +and contours, which can be superimposed on crystalline structures and interactively rotated and manipulated. +It also possesses some tools for analysis of properties in reciprocal space such as interactive selection +of k-paths in the Brillouin zone for the band-structure plots, and visualisation of Fermi surfaces. +""" + +toolchain = {'name': 'intel', 'version': '2021b'} + +source_urls = ["http://www.xcrysden.org/download/"] +sources = [SOURCELOWER_TAR_GZ] +patches = ['XCrySDen-1.6.2-no-bwidget-tcl-download.patch'] +checksums = [ + '811736ee598bec1a5b427fd10e4e063a30dd7cadae96a43a50b36ce90a4f503f', # xcrysden-1.6.2.tar.gz + 'e5f79c77116c6faf441d63f62bb3d22c5520163995b28e505d2168424a587bac', # XCrySDen-1.6.2-no-bwidget-tcl-download.patch +] + +dependencies = [ + ('Togl', '2.0'), + ('Mesa', '21.1.7'), + ('libGLU', '9.0.2'), + ('bwidget', '1.9.15'), +] + +sanity_check_commands = [ + 'xcrysden --help', + # requires DISPLAY + # 'xcrysden --xsf $EBROOTXCRYSDEN/share/%(namelower)s-%(version)s/examples/XSF_Files/GaAsH.xsf --print output.png \ + # && rm output.png', +] + +moduleclass = 'vis' From 0a30199b0ffda1cfb308de5cd0c0ee787949ea04 Mon Sep 17 00:00:00 2001 From: Leonard Nielsen <55690238+lcniel@users.noreply.github.com> Date: Mon, 27 Nov 2023 13:59:11 +0100 Subject: [PATCH 077/356] Update WIEN2k-23.2_fix_system_stderr_redirection.patch --- .../w/WIEN2k/WIEN2k-23.2_fix_system_stderr_redirection.patch | 2 ++ 1 file changed, 2 insertions(+) diff --git a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2_fix_system_stderr_redirection.patch b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2_fix_system_stderr_redirection.patch index 23b08d93cfb..4c0a3adaeef 100644 --- a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2_fix_system_stderr_redirection.patch +++ b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2_fix_system_stderr_redirection.patch @@ -1,3 +1,5 @@ +This fix removes the assumption that tcsh is being used to run the software. + --- SRC_Globals/W2kinit.F.orig 2023-11-08 17:54:06.183370012 +0100 +++ SRC_Globals/W2kinit.F 2023-11-08 18:29:21.436975434 +0100 @@ -403,7 +403,7 @@ From bc197a8db5f1c0778e7b5fca1c2010f2d33fcf31 Mon Sep 17 00:00:00 2001 From: Leonard Nielsen <55690238+lcniel@users.noreply.github.com> Date: Mon, 27 Nov 2023 14:06:04 +0100 Subject: [PATCH 078/356] Update WIEN2k-23.2-intel-2021b.eb --- easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb index cc8aed4ffbd..256edac8785 100644 --- a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb +++ b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb @@ -14,6 +14,13 @@ patches = [ '%(name)s-%(version)s_fix_libxc_for_lapw0_mpi.patch', '%(name)s-%(version)s_fix_system_stderr_redirection.patch', ] +checksums = [ + '3a71565a4fb114a2f9af9a1710bd3160781a7566bb2746bef1ba8af372b4d7b0', # WIEN2k_23.2.tar + '1cc480a4824d9185ad5918dfc68c47bcb7826114626c8133d573be901bbdca84', # WIEN2k-23.2_fix_libxc_for_lapw0_mpi.patch + 'eb3f987b1f839b9f10c315d3f7a57e181e46bc98bec3a18e5b9942689b75fcc7', + # WIEN2k-23.2_fix_system_stderr_redirection.patch +] + download_instructions = """ WIEN2k can be ordered at http://susi.theochem.tuwien.ac.at/index.html. From f26e0451a7fecd00d71477b48a32efbf6305e695 Mon Sep 17 00:00:00 2001 From: Bart Oldeman Date: Mon, 27 Nov 2023 13:12:52 +0000 Subject: [PATCH 079/356] adding easyconfigs: imkl-2024.0.0.eb, imkl-FFTW-2024.0.0-iimpi-2023.11.eb, intel-2023.11.eb --- .../imkl-FFTW-2024.0.0-iimpi-2023.11.eb | 11 ++++++++++ easybuild/easyconfigs/i/imkl/imkl-2024.0.0.eb | 18 +++++++++++++++ .../easyconfigs/i/intel/intel-2023.11.eb | 22 +++++++++++++++++++ 3 files changed, 51 insertions(+) create mode 100644 easybuild/easyconfigs/i/imkl-FFTW/imkl-FFTW-2024.0.0-iimpi-2023.11.eb create mode 100644 easybuild/easyconfigs/i/imkl/imkl-2024.0.0.eb create mode 100644 easybuild/easyconfigs/i/intel/intel-2023.11.eb diff --git a/easybuild/easyconfigs/i/imkl-FFTW/imkl-FFTW-2024.0.0-iimpi-2023.11.eb b/easybuild/easyconfigs/i/imkl-FFTW/imkl-FFTW-2024.0.0-iimpi-2023.11.eb new file mode 100644 index 00000000000..9bbc1b2f5c3 --- /dev/null +++ b/easybuild/easyconfigs/i/imkl-FFTW/imkl-FFTW-2024.0.0-iimpi-2023.11.eb @@ -0,0 +1,11 @@ +name = 'imkl-FFTW' +version = '2024.0.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onemkl.html' +description = "FFTW interfaces using Intel oneAPI Math Kernel Library" + +toolchain = {'name': 'iimpi', 'version': '2023.11'} + +dependencies = [('imkl', version, '', SYSTEM)] + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/i/imkl/imkl-2024.0.0.eb b/easybuild/easyconfigs/i/imkl/imkl-2024.0.0.eb new file mode 100644 index 00000000000..5ba9d3b884a --- /dev/null +++ b/easybuild/easyconfigs/i/imkl/imkl-2024.0.0.eb @@ -0,0 +1,18 @@ +name = 'imkl' +version = '2024.0.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onemkl.html' +description = "Intel oneAPI Math Kernel Library" + +toolchain = SYSTEM + +# see https://software.intel.com/content/www/us/en/develop/articles/oneapi-standalone-components.html +source_urls = ['https://registrationcenter-download.intel.com/akdlm/IRC_NAS/86d6a4c1-c998-4c6b-9fff-ca004e9f7455'] +sources = ['l_onemkl_p_%(version)s.49673_offline.sh'] +checksums = ['2a3be7d01d75ba8cc3059f9a32ae72e5bfc93e68e72e94e79d7fa6ea2f7814de'] + +interfaces = False + +installopts = "--download-cache=%(builddir)s/cache --download-dir=%(builddir)s/download --log-dir=%(builddir)s/log" + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/i/intel/intel-2023.11.eb b/easybuild/easyconfigs/i/intel/intel-2023.11.eb new file mode 100644 index 00000000000..88f7db5e4ab --- /dev/null +++ b/easybuild/easyconfigs/i/intel/intel-2023.11.eb @@ -0,0 +1,22 @@ +easyblock = 'Toolchain' + +name = 'intel' +version = '2023.11' + +homepage = 'https://easybuild.readthedocs.io/en/master/Common-toolchains.html#intel-toolchain' +description = "Compiler toolchain including Intel compilers, Intel MPI and Intel Math Kernel Library (MKL)." + +toolchain = SYSTEM + +local_comp_ver = '2024.0.0' +local_gccver = '13.2.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.40', '', ('GCCcore', local_gccver)), + ('intel-compilers', local_comp_ver), + ('impi', '2021.11.0', '', ('intel-compilers', local_comp_ver)), + ('imkl', '2024.0.0', '', SYSTEM), + ('imkl-FFTW', '2024.0.0', '', ('iimpi', version)), +] + +moduleclass = 'toolchain' From 33028ae52cd25a14cbec28e9b7c14f023b1b2503 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20=C3=96hman?= Date: Tue, 28 Nov 2023 10:03:15 +0000 Subject: [PATCH 080/356] Fix bugged use of namelower in extension name --- .../easyconfigs/i/IPython/IPython-8.14.0-GCCcore-12.3.0.eb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/i/IPython/IPython-8.14.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/i/IPython/IPython-8.14.0-GCCcore-12.3.0.eb index 109a9704214..762f95fabdd 100644 --- a/easybuild/easyconfigs/i/IPython/IPython-8.14.0-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/i/IPython/IPython-8.14.0-GCCcore-12.3.0.eb @@ -67,14 +67,14 @@ exts_list = [ ('backcall', '0.2.0', { 'checksums': ['5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e'] }), - ('%(namelower)s', '%(version)s', { + ('ipython', version, { 'modulename': 'IPython', 'checksums': ['1d197b907b6ba441b692c48cf2a3a2de280dc0ac91a3405b39349a50272ca0a1'] }), ] sanity_check_paths = { - 'files': ['bin/%(namelower)s'], + 'files': ['bin/ipython'], 'dirs': ['lib/python%(pyshortver)s/site-packages/%(name)s'], } From e90eec9fbae55c3197f0e2ea34c9486102cab400 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Tue, 28 Nov 2023 15:09:53 +0100 Subject: [PATCH 081/356] fix code style in PFFT-20181230-gompi-2022a.eb --- easybuild/easyconfigs/p/PFFT/PFFT-20181230-gompi-2022a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/p/PFFT/PFFT-20181230-gompi-2022a.eb b/easybuild/easyconfigs/p/PFFT/PFFT-20181230-gompi-2022a.eb index 7a65a1e88b5..07ac613932c 100644 --- a/easybuild/easyconfigs/p/PFFT/PFFT-20181230-gompi-2022a.eb +++ b/easybuild/easyconfigs/p/PFFT/PFFT-20181230-gompi-2022a.eb @@ -32,7 +32,7 @@ preconfigopts = 'autoreconf -i -f &&' sanity_check_paths = { 'files': ['lib/libpfft.a', 'lib/libpfft.la', 'lib/libpfft.%s' % SHLIB_EXT] + - ['include/pfft.f', 'include/pfft.f03', 'include/pfft.h', 'include/pfftl.f03'], + ['include/pfft.f', 'include/pfft.f03', 'include/pfft.h', 'include/pfftl.f03'], 'dirs': ['lib/pkgconfig'], } From b3dc2b08df1eb2fd98f2adabd96af74c56c332a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20=C3=96hman?= Date: Wed, 29 Nov 2023 17:02:45 +0000 Subject: [PATCH 082/356] adding easyconfigs: COMSOL-6.2.0.290.eb --- .../easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb diff --git a/easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb b/easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb new file mode 100644 index 00000000000..0798c1ae344 --- /dev/null +++ b/easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb @@ -0,0 +1,24 @@ +name = 'COMSOL' +version = '6.2.0.290' + +homepage = 'https://www.comsol.se/' +description = """ +COMSOL Multiphysics is a general-purpose software platform, based on +advanced numerical methods, for modeling and simulating physics-based +problems. +""" + +toolchain = SYSTEM + +# Note: sources from COMSOL are often named poorly. You can view the exact version in the "ver" file inside the iso: +# 7z x COMSOL-*.iso ver; cat ver +sources = ['COMSOL-%(version)s.iso'] +checksums = ['a90744cb29379a871ca53a0f525a0c378155f5facb3cb5e4dd540ccfc7f4eeec'] + +download_instructions = 'Obtain from comsol.se' + +osdependencies = [('p7zip-plugins', 'p7zip-full'), 'csh'] # for extracting iso-files + +# license_file = 'license.dat' # or LMCOMSOL_LICENSE_FILE + +moduleclass = 'phys' From 68cc70c241384fc8213053a62c68e7b709474719 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20=C3=96hman?= Date: Wed, 29 Nov 2023 17:19:09 +0000 Subject: [PATCH 083/356] Use new EB_COMSOL_LICENSE_FILE syntax --- easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb b/easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb index 0798c1ae344..110b990ec4c 100644 --- a/easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb +++ b/easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb @@ -19,6 +19,6 @@ download_instructions = 'Obtain from comsol.se' osdependencies = [('p7zip-plugins', 'p7zip-full'), 'csh'] # for extracting iso-files -# license_file = 'license.dat' # or LMCOMSOL_LICENSE_FILE +# license_file = 'license.dat' # or EB_COMSOL_LICENSE_FILE moduleclass = 'phys' From 2d44b803b22a86997a080efb29883bb22e43a2f8 Mon Sep 17 00:00:00 2001 From: sassy Date: Wed, 29 Nov 2023 21:49:47 +0000 Subject: [PATCH 084/356] cairomm/1.14.4 removed as obsolete --- .../c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb | 40 ------------------- 1 file changed, 40 deletions(-) delete mode 100644 easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb diff --git a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb b/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb deleted file mode 100644 index fae81fd8e8b..00000000000 --- a/easybuild/easyconfigs/c/cairomm/cairomm-1.14.4-GCC-11.3.0.eb +++ /dev/null @@ -1,40 +0,0 @@ -# Updated to MesonNinja as the autogen.sh complained. -# Author: J. Sassmannshausen (Imperial College London/UK) - -easyblock = 'MesonNinja' - -name = 'cairomm' -version = '1.14.4' - -homepage = 'http://cairographics.org' -description = "The Cairomm package provides a C++ interface to Cairo." - -toolchain = {'name': 'GCC', 'version': '11.3.0'} - -source_urls = ['http://cairographics.org/releases/'] -sources = [SOURCE_TAR_XZ] -checksums = ['4749d25a2b2ef67cc0c014caaf5c87fa46792fc4b3ede186fb0fc932d2055158'] - -builddependencies = [ - ('Meson', '0.62.1'), - ('Ninja', '1.10.2'), - ('pkgconf', '1.8.0'), -] - -dependencies = [ - ('cairo', '1.17.4'), - ('libsigc++', '2.12.1'), - ('Graphviz', '5.0.0'), - ('libxslt', '1.1.34'), - ('mm-common', '1.0.5'), - ('Boost', '1.79.0'), -] - -runtest = 'ninja test' - -sanity_check_paths = { - 'files': ['lib/libcairomm-1.0.%s' % SHLIB_EXT], - 'dirs': [], -} - -moduleclass = 'vis' From e4a65d4e19bbf6099d8b54e5dbd108b8d617f705 Mon Sep 17 00:00:00 2001 From: Sebastian Achilles Date: Wed, 29 Nov 2023 23:39:50 +0100 Subject: [PATCH 085/356] update PostgreSQL dependency to 16.1 --- .../r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb index f87304d4c51..e0011b1d517 100644 --- a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb @@ -48,7 +48,7 @@ dependencies = [ ('nodejs', '18.17.1'), # for V8 (required by rstan) ('GDAL', '3.7.1'), # for sf ('MPFR', '4.2.0'), # for Rmpfr - ('PostgreSQL', '16.0'), # for RPostgreSQL + ('PostgreSQL', '16.1'), # for RPostgreSQL ('libgit2', '1.7.1'), ('OpenSSL', '1.1', '', SYSTEM), ] From f021ddffd1f0812272576887217483f9ff0f779f Mon Sep 17 00:00:00 2001 From: Richard Top Date: Thu, 30 Nov 2023 23:48:26 +0000 Subject: [PATCH 086/356] adding easyconfigs: BiasAdjustCXX-1.9.1-foss-2021b.eb --- .../BiasAdjustCXX-1.9.1-foss-2021b.eb | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb diff --git a/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb new file mode 100644 index 00000000000..eb198f441bd --- /dev/null +++ b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb @@ -0,0 +1,34 @@ +easyblock = 'CMakeMake' + +name = 'BiasAdjustCXX' +version = '1.9.1' + +homepage = "https://biasadjustcxx.readthedocs.io/en/latest/" + +description = """ +BiasAdjustCXX command-line tool for the application of fast and efficient bias corrections in climatic research +""" + +# Note: A compiler bug(?) in template deduction prevents newer versions of icpc to compile this software. +toolchain = {'name': 'foss', 'version': '2021b'} + +source_urls = ['https://github.com/btschwertfeger/BiasAdjustCXX/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['9f2988d0b1676c57037cdb5cbb4e313b31c4fc08a1ea8a55ea5eccc5a2bc5861'] + +dependencies = [ + ('netCDF', '4.8.1'), + ('CDO', '2.0.5'), + ('NCO', '5.0.3'), +] + +preconfigopts = 'CXXFLAGS="$CXXFLAGS -lnetcdf " ' + +sanity_check_paths = { + 'files': ['bin/BiasAdjustCXX'], + 'dirs': [] +} + +sanity_check_commands = ['cpio --help'] + +moduleclass = 'geo' From c525e11577592ce0e5caa5adf8979962ead0349c Mon Sep 17 00:00:00 2001 From: TopRichard <121792457+TopRichard@users.noreply.github.com> Date: Fri, 1 Dec 2023 00:50:52 +0100 Subject: [PATCH 087/356] Update BiasAdjustCXX-1.9.1-foss-2021b.eb --- .../b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb index eb198f441bd..28a8af9446e 100644 --- a/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb +++ b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb @@ -29,6 +29,6 @@ sanity_check_paths = { 'dirs': [] } -sanity_check_commands = ['cpio --help'] +sanity_check_commands = ['BiasAdjustCXX --help'] moduleclass = 'geo' From eb04b89a5e332cbc1555a04d00597e104835c551 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20=C3=96hman?= Date: Fri, 1 Dec 2023 15:52:23 +0000 Subject: [PATCH 088/356] adding easyconfigs: CPLEX-22.1.1.eb --- easybuild/easyconfigs/c/CPLEX/CPLEX-22.1.1.eb | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 easybuild/easyconfigs/c/CPLEX/CPLEX-22.1.1.eb diff --git a/easybuild/easyconfigs/c/CPLEX/CPLEX-22.1.1.eb b/easybuild/easyconfigs/c/CPLEX/CPLEX-22.1.1.eb new file mode 100644 index 00000000000..d8ce07a928a --- /dev/null +++ b/easybuild/easyconfigs/c/CPLEX/CPLEX-22.1.1.eb @@ -0,0 +1,23 @@ +name = 'CPLEX' +version = '22.1.1' + +homepage = 'https://www.ibm.com/analytics/cplex-optimizer' +description = """IBM ILOG CPLEX Optimizer's mathematical programming technology enables + analytical decision support for improving efficiency, + reducing costs, and increasing profitability.""" + +toolchain = SYSTEM + +sources = ['cplex_studio%s.linux_x86_64.bin' % ''.join(version.split('.'))] +checksums = ['ab6d3f0953fdb3cbd43854452357955ef96db8b751c0866de3572fc47a0df542'] + +download_instructions = """ +1. Visit https://www.ibm.com/products/ilog-cplex-optimization-studio +2. Sign up and download the Academic Edition +""" + +dependencies = [ + ('Java', '11', '', SYSTEM), +] + +moduleclass = 'math' From bdb75b917e0b846fc2297a0c5c9526c892c559e5 Mon Sep 17 00:00:00 2001 From: Richard Top Date: Sat, 2 Dec 2023 11:11:41 +0000 Subject: [PATCH 089/356] adding easyconfigs: BAGEL-1.2.2-foss-2023a.eb --- .../b/BAGEL/BAGEL-1.2.2-foss-2023a.eb | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb diff --git a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb new file mode 100644 index 00000000000..4e31208e140 --- /dev/null +++ b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb @@ -0,0 +1,45 @@ +easyblock = 'ConfigureMake' + +name = 'BAGEL' +version = '1.2.2' + +homepage = "http://www.nubakery.org" + +description = """ +BAGEL (Brilliantly Advanced General Electronic-structure Library) +is a parallel electronic-structure program. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/nubakery/bagel/archive/'] +sources = ['v%(version)s.tar.gz'] + +patches = ['%(name)s-%(version)s.patch'] + +checksums = [ + {'v1.2.2.tar.gz': 'b9ef9ad5ad9b836b5393badb5a3e5b162d6ff32da497f69d05ef9e4d091b558a'}, + {'BAGEL-1.2.2.patch': '022dfba90d3e98eb1b419223a27ad16a6f0e8d3ef3a35483ad33024a979b69fd'}, +] + +builddependencies = [ + ('Autotools', '20220317'), +] + +dependencies = [ + ('Boost', '1.82.0'), + ('libxc', '6.2.2'), +] + +preconfigopts = './autogen.sh && ' +preconfigopts += 'CXXFLAGS="$CXXFLAGS -DNDEBUG " ' +preconfigopts += 'CXXFLAGS="$CXXFLAGS -lflexiblas " ' + +configopts = ' --with-boost=$BOOST_ROOT --with-libxc --with-mpi=openmpi ' + +sanity_check_paths = { + 'files': ['bin/BAGEL', 'lib/libbagel.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'phys' From 078a7c53790fa7fb943e8c32ce9db81f42fa50c8 Mon Sep 17 00:00:00 2001 From: TopRichard <121792457+TopRichard@users.noreply.github.com> Date: Sat, 2 Dec 2023 18:44:38 +0100 Subject: [PATCH 090/356] Update easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb Co-authored-by: Jasper Grimm <65227842+jfgrimm@users.noreply.github.com> --- .../b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb index 28a8af9446e..97bb6b62ad4 100644 --- a/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb +++ b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb @@ -16,6 +16,10 @@ source_urls = ['https://github.com/btschwertfeger/BiasAdjustCXX/archive/refs/tag sources = ['v%(version)s.tar.gz'] checksums = ['9f2988d0b1676c57037cdb5cbb4e313b31c4fc08a1ea8a55ea5eccc5a2bc5861'] +builddependencies = [ + ('CMake', '3.22.1'), +] + dependencies = [ ('netCDF', '4.8.1'), ('CDO', '2.0.5'), From 56a09f95866db48101cabda2bb5e57335dfd0ca7 Mon Sep 17 00:00:00 2001 From: Richard Top Date: Sat, 2 Dec 2023 17:54:43 +0000 Subject: [PATCH 091/356] missing patch file --- .../easyconfigs/b/BAGEL/BAGEL-1.2.2.patch | 88 +++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch diff --git a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch new file mode 100644 index 00000000000..7b90228b4a0 --- /dev/null +++ b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch @@ -0,0 +1,88 @@ +diff -ruN bagel-1.2.2/src/molecule/shell_base.cc bagel-1.2.2.orig/src/molecule/shell_base.cc +--- bagel-1.2.2/src/molecule/shell_base.cc 2023-12-02 11:23:16.000000000 +0100 ++++ bagel-1.2.2.orig/src/molecule/shell_base.cc 2023-12-02 11:23:59.000000000 +0100 +@@ -23,6 +23,7 @@ + // + + ++#include + #include + #include + +diff -ruN bagel-1.2.2/src/molecule/shellecp.cc bagel-1.2.2.orig/src/molecule/shellecp.cc +--- bagel-1.2.2/src/molecule/shellecp.cc 2023-12-02 11:23:16.000000000 +0100 ++++ bagel-1.2.2.orig/src/molecule/shellecp.cc 2023-12-02 11:23:59.000000000 +0100 +@@ -22,7 +22,7 @@ + // along with this program. If not, see . + // + +- ++#include + #include + #include + +diff -ruN bagel-1.2.2/src/util/input/input.cc bagel-1.2.2.orig/src/util/input/input.cc +--- bagel-1.2.2/src/util/input/input.cc 2023-12-02 11:23:17.000000000 +0100 ++++ bagel-1.2.2.orig/src/util/input/input.cc 2023-12-02 11:24:05.000000000 +0100 +@@ -24,6 +24,7 @@ + + #include + #include ++#include + #include + #include + #include +diff -ruN bagel-1.2.2/src/util/math/btas_interface.cc bagel-1.2.2.orig/src/util/math/btas_interface.cc +--- bagel-1.2.2/src/util/math/btas_interface.cc 2023-12-02 11:23:17.000000000 +0100 ++++ bagel-1.2.2.orig/src/util/math/btas_interface.cc 2023-12-02 11:24:06.000000000 +0100 +@@ -22,6 +22,7 @@ + // along with this program. If not, see . + // + ++#include + #include + #include + +diff -ruN bagel-1.2.2/src/util/math/sphharmonics.cc bagel-1.2.2.orig/src/util/math/sphharmonics.cc +--- bagel-1.2.2/src/util/math/sphharmonics.cc 2023-12-02 11:23:17.000000000 +0100 ++++ bagel-1.2.2.orig/src/util/math/sphharmonics.cc 2023-12-02 11:24:06.000000000 +0100 +@@ -82,7 +82,7 @@ + if (am > l) + throw runtime_error ("SphHarmonics.ylm: |m| > l"); + +- const double plm = legendre.compute(l, am, cth); ++ const double plm = ::legendre.compute(l, am, cth); + double fact = 1.0; + for (int i = 1; i <= 2*am; ++i) + fact *= l - am + i; +@@ -109,8 +109,8 @@ + const double cth = cos(theta_); + const int am = abs(m); + +- const double plm = legendre.compute(l, am, cth); +- ++ const double plm = ::legendre.compute(l, am, cth); ++ + double coef0 = 1.0; + for (unsigned int i = l + am; i > (l - am); i--) coef0 *= i; + const double coef = sqrt((2*l+1)/(4.0*pi__*coef0)); +@@ -133,7 +133,7 @@ + throw runtime_error ("SphHarmonics.zlm: |m| > l"); + const double cth = cos(theta_); + +- const double plm = legendre.compute(l, am, cth); ++ const double plm = ::legendre.compute(l, am, cth); + + double coef0 = 1.0; + for (unsigned int i = l + am; i > (l - am); i--) coef0 *= i; +diff -ruN bagel-1.2.2/src/util/serialization.h bagel-1.2.2.orig/src/util/serialization.h +--- bagel-1.2.2/src/util/serialization.h 2023-12-02 11:23:17.000000000 +0100 ++++ bagel-1.2.2.orig/src/util/serialization.h 2023-12-02 11:24:06.000000000 +0100 +@@ -33,6 +33,7 @@ + #include + #include + #include ++#include + #include + #include + #include From c091368f296cd7dc3a0cb2c6546e8adbb6df3648 Mon Sep 17 00:00:00 2001 From: TopRichard <121792457+TopRichard@users.noreply.github.com> Date: Mon, 4 Dec 2023 08:53:51 +0100 Subject: [PATCH 092/356] Update BiasAdjustCXX-1.9.1-foss-2021b.eb Went down from foss to gompi, and from NCO to netCDF-C++4 --- .../b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb index 97bb6b62ad4..cf1f0e3b0e5 100644 --- a/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb +++ b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb @@ -10,7 +10,7 @@ BiasAdjustCXX command-line tool for the application of fast and efficient bias c """ # Note: A compiler bug(?) in template deduction prevents newer versions of icpc to compile this software. -toolchain = {'name': 'foss', 'version': '2021b'} +toolchain = {'name': 'gompi', 'version': '2021b'} source_urls = ['https://github.com/btschwertfeger/BiasAdjustCXX/archive/refs/tags/'] sources = ['v%(version)s.tar.gz'] @@ -22,8 +22,8 @@ builddependencies = [ dependencies = [ ('netCDF', '4.8.1'), + ('netCDF-C++4', '4.3.1'), ('CDO', '2.0.5'), - ('NCO', '5.0.3'), ] preconfigopts = 'CXXFLAGS="$CXXFLAGS -lnetcdf " ' From 77351203718bbc79a091ed9aa1e86d84d13e4a4b Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Mon, 4 Dec 2023 13:47:42 +0100 Subject: [PATCH 093/356] adding easyconfigs: CESM-deps-2-foss-2022a.eb --- .../c/CESM-deps/CESM-deps-2-foss-2022a.eb | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 easybuild/easyconfigs/c/CESM-deps/CESM-deps-2-foss-2022a.eb diff --git a/easybuild/easyconfigs/c/CESM-deps/CESM-deps-2-foss-2022a.eb b/easybuild/easyconfigs/c/CESM-deps/CESM-deps-2-foss-2022a.eb new file mode 100644 index 00000000000..ca57a2611f0 --- /dev/null +++ b/easybuild/easyconfigs/c/CESM-deps/CESM-deps-2-foss-2022a.eb @@ -0,0 +1,52 @@ +easyblock = 'Bundle' + +name = 'CESM-deps' +version = '2' + +homepage = 'https://www.cesm.ucar.edu/models/cesm2/' +description = """CESM is a fully-coupled, community, global climate model that +provides state-of-the-art computer simulations of the Earth's past, present, +and future climate states.""" + +# The following environment is suitable for CESM >= 2.2.0 +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('CMake', '3.24.3'), + ('Python', '3.10.4'), + ('lxml', '4.9.1'), + ('Perl', '5.34.1'), + ('XML-LibXML', '2.0207'), + ('ESMF', '8.3.0'), + ('netCDF', '4.9.0'), + ('netCDF-Fortran', '4.6.0'), + ('netCDF-C++4', '4.3.1'), + ('PnetCDF', '1.12.3'), + ('Subversion', '1.14.2'), + ('git', '2.36.0', '-nodocs'), + ('git-lfs', '3.2.0', '', SYSTEM), +] + +components = [ + # install extra configuration tools and files for VSC clusters + ('cesm-config', '1.6.2', { + 'easyblock': 'Tarball', + 'source_urls': ['https://github.com/vub-hpc/%(name)s/archive'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'checksums': ['eda865c6c6885253728de0d570a850a728310785162c8b78bd896b0d1dfbbf48'], + 'start_dir': '%(name)s-%(version)s', + }), +] + +sanity_check_paths = { + 'files': ['bin/update-cesm-machines', 'scripts/case.pbs', 'scripts/case.slurm'], + 'dirs': ['machines', 'irods'], +} + +usage = """Environment to build and run CESM v2 simulations + 1. Download a release of CESM v2: `git clone -b release-cesm2.2.0 https://github.com/ESCOMP/cesm.git cesm-2.2.0` + 2. Add external programs for CESM: `cd cesm-2.2.0; ./manage_externals/checkout_externals` + 3. Update config files: `update-cesm-machines cime/config/cesm/machines/ $EBROOTCESMMINDEPS/machines/` + 4. Create case: `cd cime/scripts && ./create_newcase --machine ...`""" + +moduleclass = 'geo' From f6c30172e8dabc998e493d18784af0b414770205 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Mon, 4 Dec 2023 15:21:46 +0100 Subject: [PATCH 094/356] adding easyconfigs: simanneal-0.5.0-GCC-11.3.0.eb --- .../s/simanneal/simanneal-0.5.0-GCC-11.3.0.eb | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 easybuild/easyconfigs/s/simanneal/simanneal-0.5.0-GCC-11.3.0.eb diff --git a/easybuild/easyconfigs/s/simanneal/simanneal-0.5.0-GCC-11.3.0.eb b/easybuild/easyconfigs/s/simanneal/simanneal-0.5.0-GCC-11.3.0.eb new file mode 100644 index 00000000000..4886fa82cac --- /dev/null +++ b/easybuild/easyconfigs/s/simanneal/simanneal-0.5.0-GCC-11.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'PythonBundle' + +name = 'simanneal' +version = '0.5.0' + +homepage = 'https://github.com/perrygeo/simanneal' +description = """This module performs simulated annealing optimization to find the optimal +state of a system. It is inspired by the metallurgic process of annealing +whereby metals must be cooled at a regular schedule in order to settle into +their lowest energy state.""" +github_account = 'perrygeo' + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +dependencies = [ + ('Python', '3.10.4'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'source_urls': ['https://github.com/%(github_account)s/%(name)s/archive'], + 'sources': ['%(version)s.tar.gz'], + 'checksums': ['8bb6f421398a425d1cd0c2bd316507c0e19148cee75824963d8ccd776518d8cb'], + }), +] + +moduleclass = "phys" From ac62eb16dc385061c79077b2a55d849da99a00b8 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Mon, 4 Dec 2023 15:54:13 +0100 Subject: [PATCH 095/356] adding easyconfigs: Z3-4.12.2-GCCcore-12.2.0-Python-3.10.8.eb, Z3-4.12.2-GCCcore-12.3.0-Python-3.11.3.eb --- .../Z3-4.12.2-GCCcore-12.2.0-Python-3.10.8.eb | 53 +++++++++++++++++++ .../Z3-4.12.2-GCCcore-12.3.0-Python-3.11.3.eb | 53 +++++++++++++++++++ 2 files changed, 106 insertions(+) create mode 100644 easybuild/easyconfigs/z/Z3/Z3-4.12.2-GCCcore-12.2.0-Python-3.10.8.eb create mode 100644 easybuild/easyconfigs/z/Z3/Z3-4.12.2-GCCcore-12.3.0-Python-3.11.3.eb diff --git a/easybuild/easyconfigs/z/Z3/Z3-4.12.2-GCCcore-12.2.0-Python-3.10.8.eb b/easybuild/easyconfigs/z/Z3/Z3-4.12.2-GCCcore-12.2.0-Python-3.10.8.eb new file mode 100644 index 00000000000..46769906aed --- /dev/null +++ b/easybuild/easyconfigs/z/Z3/Z3-4.12.2-GCCcore-12.2.0-Python-3.10.8.eb @@ -0,0 +1,53 @@ +easyblock = 'PythonBundle' + +name = 'Z3' +version = '4.12.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/Z3Prover/z3' +description = """Z3 is a theorem prover from Microsoft Research with support for bitvectors, +booleans, arrays, floating point numbers, strings, and other data types. This +module includes z3-solver, the Python interface of Z3. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +builddependencies = [ + ('CMake', '3.24.3'), + ('binutils', '2.39'), +] + +dependencies = [ + ('Python', '3.10.8'), + ('GMP', '6.2.1'), +] + +use_pip = True + +_fix_parallelism = """sed -i 's/str(multiprocessing.cpu_count())/"%(parallel)s"/' setup.py &&""" +_enable_gmp = """sed -i "s/Z3_USE_LIB_GMP.*/Z3_USE_LIB_GMP' : True,/" setup.py &&""" + +exts_list = [ + ('z3-solver', version + '.0', { + 'modulename': 'z3', + 'checksums': ['65ab47a0a8ef0bfb80db0670775beb11b32c3c0ae4b35943e44121f4af7ef411'], + 'preinstallopts': _fix_parallelism + _enable_gmp, + }), +] + +# make Z3 headers and libraries accessible in their usual location +local_z3_site_path = "lib/python%(pyshortver)s/site-packages/%(namelower)s" +local_libz3 = 'libz3.' + SHLIB_EXT +postinstallcmds = [ + "ln -s %s/include '%%(installdir)s/include'" % local_z3_site_path, + "ln -s ../%s/lib/%s '%%(installdir)s/lib/%s'" % (local_z3_site_path, local_libz3, local_libz3) +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/z3', 'include/z3_api.h', 'lib/libz3.%s' % SHLIB_EXT], + 'dirs': ['include', 'lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/z/Z3/Z3-4.12.2-GCCcore-12.3.0-Python-3.11.3.eb b/easybuild/easyconfigs/z/Z3/Z3-4.12.2-GCCcore-12.3.0-Python-3.11.3.eb new file mode 100644 index 00000000000..0eb7b2c600f --- /dev/null +++ b/easybuild/easyconfigs/z/Z3/Z3-4.12.2-GCCcore-12.3.0-Python-3.11.3.eb @@ -0,0 +1,53 @@ +easyblock = 'PythonBundle' + +name = 'Z3' +version = '4.12.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/Z3Prover/z3' +description = """Z3 is a theorem prover from Microsoft Research with support for bitvectors, +booleans, arrays, floating point numbers, strings, and other data types. This +module includes z3-solver, the Python interface of Z3. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('CMake', '3.26.3'), + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('GMP', '6.2.1'), +] + +use_pip = True + +_fix_parallelism = """sed -i 's/str(multiprocessing.cpu_count())/"%(parallel)s"/' setup.py &&""" +_enable_gmp = """sed -i "s/Z3_USE_LIB_GMP.*/Z3_USE_LIB_GMP' : True,/" setup.py &&""" + +exts_list = [ + ('z3-solver', version + '.0', { + 'modulename': 'z3', + 'checksums': ['65ab47a0a8ef0bfb80db0670775beb11b32c3c0ae4b35943e44121f4af7ef411'], + 'preinstallopts': _fix_parallelism + _enable_gmp, + }), +] + +# make Z3 headers and libraries accessible in their usual location +local_z3_site_path = "lib/python%(pyshortver)s/site-packages/%(namelower)s" +local_libz3 = 'libz3.' + SHLIB_EXT +postinstallcmds = [ + "ln -s %s/include '%%(installdir)s/include'" % local_z3_site_path, + "ln -s ../%s/lib/%s '%%(installdir)s/lib/%s'" % (local_z3_site_path, local_libz3, local_libz3) +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/z3', 'include/z3_api.h', 'lib/libz3.%s' % SHLIB_EXT], + 'dirs': ['include', 'lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' From 7bb6dc8ae0c7f3c90a19e73e5f065d901d9acbcd Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Tue, 5 Dec 2023 17:10:25 +0800 Subject: [PATCH 096/356] adding easyconfigs: cysignals-1.11.2-GCCcore-11.3.0.eb, ppl-1.2-GCCcore-11.3.0.eb, pplpy-0.8.4-GCC-11.3.0.eb --- .../cysignals-1.11.2-GCCcore-11.3.0.eb | 32 +++++++++++++++++++ .../p/ppl/ppl-1.2-GCCcore-11.3.0.eb | 29 +++++++++++++++++ .../p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb | 27 ++++++++++++++++ 3 files changed, 88 insertions(+) create mode 100644 easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb create mode 100644 easybuild/easyconfigs/p/ppl/ppl-1.2-GCCcore-11.3.0.eb create mode 100644 easybuild/easyconfigs/p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb diff --git a/easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..7f028f4e385 --- /dev/null +++ b/easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb @@ -0,0 +1,32 @@ +# +# Author: Fenglai Liu +# fenglai@accre.vanderbilt.edu +# Vanderbilt University +# +easyblock = 'PythonPackage' + +name = 'cysignals' +version = '1.11.2' + +homepage = 'https://pypi.org/project/cysignals/' +description = """The cysignals package provides mechanisms to handle +interrupts (and other signals and errors) in Cython code.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['5858b1760fbe21848121b826b2463a67ac5a45caf3d73105497a68618c5a6fa6'] + +dependencies = [ + ('Python', '3.10.4'), +] + +use_pip = True +download_dep_fail = True + +sanity_check_paths = { + 'files': ['bin/cysignals-CSI'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/ppl/ppl-1.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/ppl/ppl-1.2-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..69f79225635 --- /dev/null +++ b/easybuild/easyconfigs/p/ppl/ppl-1.2-GCCcore-11.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'ppl' +version = '1.2' + +homepage = 'https://www.bugseng.com/parma-polyhedra-library' +description = """The Parma Polyhedra Library (PPL) provides numerical abstractions especially +targeted at applications in the field of analysis and verification of complex systems.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://www.bugseng.com/products/ppl/download/ftp/releases/%(version)s'] +sources = [SOURCE_ZIP] +checksums = ['127be72fcd9b2db44b0b7dee11ec89fbe25c5c2694327a859a75d82bc7613492'] + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('GMP', '6.2.1'), +] + +sanity_check_paths = { + 'files': ['bin/ppl-config', 'bin/ppl_pips', 'lib/libppl.%s' % SHLIB_EXT, 'include/ppl.hh'], + 'dirs': ['share'] +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb b/easybuild/easyconfigs/p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb new file mode 100644 index 00000000000..0559f28ed96 --- /dev/null +++ b/easybuild/easyconfigs/p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'pplpy' +version = '0.8.4' + +homepage = 'https://pypi.org/project/pplpy/' +description = "This Python package provides a wrapper to the C++ Parma Polyhedra Library (PPL)." + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['b962914d5814edab320d00c11ca396b70c4ce1e67db7a6d59c4b0a3772a16836'] + +# the GMP, MPC etc. is not needed here. Since they are contained in gmpy2 +dependencies = [ + ('Python', '3.10.4'), + ('ppl', '1.2'), + ('cysignals', '1.11.2'), + ('gmpy2', '2.1.2'), +] + +use_pip = True +download_dep_fail = True + +options = {'modulename': 'ppl'} + +moduleclass = 'tools' From d8ae8000c18dc385b626e003895eafc3946d429a Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Tue, 5 Dec 2023 17:37:54 +0800 Subject: [PATCH 097/356] add sanity_pip_check --- .../c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb | 5 +++++ easybuild/easyconfigs/p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb | 1 + 2 files changed, 6 insertions(+) diff --git a/easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb index 7f028f4e385..450772defc1 100644 --- a/easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb @@ -17,12 +17,17 @@ toolchain = {'name': 'GCCcore', 'version': '11.3.0'} sources = [SOURCE_TAR_GZ] checksums = ['5858b1760fbe21848121b826b2463a67ac5a45caf3d73105497a68618c5a6fa6'] +builddependencies = [ + ('binutils', '2.38'), +] + dependencies = [ ('Python', '3.10.4'), ] use_pip = True download_dep_fail = True +sanity_pip_check = True sanity_check_paths = { 'files': ['bin/cysignals-CSI'], diff --git a/easybuild/easyconfigs/p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb b/easybuild/easyconfigs/p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb index 0559f28ed96..5d755588664 100644 --- a/easybuild/easyconfigs/p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb @@ -21,6 +21,7 @@ dependencies = [ use_pip = True download_dep_fail = True +sanity_pip_check = True options = {'modulename': 'ppl'} From 28257f960a265bf3d74184de5fd92d346844128b Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Tue, 5 Dec 2023 17:41:18 +0800 Subject: [PATCH 098/356] add autotools builddep --- .../easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb index 450772defc1..29375b8b3a0 100644 --- a/easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb @@ -18,6 +18,7 @@ sources = [SOURCE_TAR_GZ] checksums = ['5858b1760fbe21848121b826b2463a67ac5a45caf3d73105497a68618c5a6fa6'] builddependencies = [ + ('Autotools', '20220317'), ('binutils', '2.38'), ] From 654292042d9790653e60327d32d7b00ec3ad5547 Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Tue, 5 Dec 2023 17:56:14 +0800 Subject: [PATCH 099/356] add M4 builddep --- easybuild/easyconfigs/p/ppl/ppl-1.2-GCCcore-11.3.0.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/p/ppl/ppl-1.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/ppl/ppl-1.2-GCCcore-11.3.0.eb index 69f79225635..956def8cb4a 100644 --- a/easybuild/easyconfigs/p/ppl/ppl-1.2-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/p/ppl/ppl-1.2-GCCcore-11.3.0.eb @@ -14,6 +14,7 @@ sources = [SOURCE_ZIP] checksums = ['127be72fcd9b2db44b0b7dee11ec89fbe25c5c2694327a859a75d82bc7613492'] builddependencies = [ + ('M4', '1.4.19'), ('binutils', '2.38'), ] From d0f398683dda0d78bd2d92f78316a8edb731d420 Mon Sep 17 00:00:00 2001 From: Paul Melis Date: Tue, 5 Dec 2023 11:14:49 +0100 Subject: [PATCH 100/356] adding easyconfigs: Blender-3.6.5-linux-x86_64-CUDA-12.1.1.eb --- .../Blender-3.6.5-linux-x86_64-CUDA-12.1.1.eb | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 easybuild/easyconfigs/b/Blender/Blender-3.6.5-linux-x86_64-CUDA-12.1.1.eb diff --git a/easybuild/easyconfigs/b/Blender/Blender-3.6.5-linux-x86_64-CUDA-12.1.1.eb b/easybuild/easyconfigs/b/Blender/Blender-3.6.5-linux-x86_64-CUDA-12.1.1.eb new file mode 100644 index 00000000000..fadb75dfc5d --- /dev/null +++ b/easybuild/easyconfigs/b/Blender/Blender-3.6.5-linux-x86_64-CUDA-12.1.1.eb @@ -0,0 +1,29 @@ +easyblock = 'PackedBinary' + +name = 'Blender' +version = '3.6.5' +versionsuffix = '-linux-x86_64-CUDA-%(cudaver)s' + +homepage = 'https://www.blender.org/' +description = """Blender is the free and open source 3D creation suite. It supports + the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, + compositing and motion tracking, even video editing and game creation.""" + +toolchain = SYSTEM + +source_urls = ['https://ftp.nluug.nl/pub/graphics/blender/release/Blender%(version_major_minor)s/'] +sources = ['blender-%(version)s-linux-x64.tar.xz'] +checksums = ['05b2e56249a92b856c8b7b4d77c65e245702aaa81d9b4f34734ec09bbcedf42b'] + +dependencies = [ + ('CUDA', '12.1.1') +] + +sanity_check_paths = { + 'files': ['blender', 'blender-softwaregl'], + 'dirs': ['%(version_major_minor)s'], +} + +sanity_check_commands = ["blender --help"] + +moduleclass = 'vis' From 4714718ab4be834bf647a8ed9dfda23757e87bd4 Mon Sep 17 00:00:00 2001 From: Paul Melis Date: Tue, 5 Dec 2023 11:16:28 +0100 Subject: [PATCH 101/356] adding easyconfigs: Blender-4.0.1-linux-x86_64-CUDA-12.1.1.eb --- .../Blender-4.0.1-linux-x86_64-CUDA-12.1.1.eb | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 easybuild/easyconfigs/b/Blender/Blender-4.0.1-linux-x86_64-CUDA-12.1.1.eb diff --git a/easybuild/easyconfigs/b/Blender/Blender-4.0.1-linux-x86_64-CUDA-12.1.1.eb b/easybuild/easyconfigs/b/Blender/Blender-4.0.1-linux-x86_64-CUDA-12.1.1.eb new file mode 100644 index 00000000000..670a55cba67 --- /dev/null +++ b/easybuild/easyconfigs/b/Blender/Blender-4.0.1-linux-x86_64-CUDA-12.1.1.eb @@ -0,0 +1,29 @@ +easyblock = 'PackedBinary' + +name = 'Blender' +version = '4.0.1' +versionsuffix = '-linux-x86_64-CUDA-%(cudaver)s' + +homepage = 'https://www.blender.org/' +description = """Blender is the free and open source 3D creation suite. It supports + the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, + compositing and motion tracking, even video editing and game creation.""" + +toolchain = SYSTEM + +source_urls = ['https://ftp.nluug.nl/pub/graphics/blender/release/Blender%(version_major_minor)s/'] +sources = ['blender-%(version)s-linux-x64.tar.xz'] +checksums = ['1b22016388997b373970819e0d0c352a1f769c46df919db95c037985af073882'] + +dependencies = [ + ('CUDA', '12.1.1') +] + +sanity_check_paths = { + 'files': ['blender', 'blender-softwaregl'], + 'dirs': ['%(version_major_minor)s'], +} + +sanity_check_commands = ["blender --help"] + +moduleclass = 'vis' From 48e545b70c971347df5a3ac15669b9410bbae299 Mon Sep 17 00:00:00 2001 From: jfgrimm Date: Tue, 5 Dec 2023 11:53:54 +0000 Subject: [PATCH 102/356] update filename to match toolchain --- ...CXX-1.9.1-foss-2021b.eb => BiasAdjustCXX-1.9.1-gompi-2021b.eb} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename easybuild/easyconfigs/b/BiasAdjustCXX/{BiasAdjustCXX-1.9.1-foss-2021b.eb => BiasAdjustCXX-1.9.1-gompi-2021b.eb} (100%) diff --git a/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-gompi-2021b.eb similarity index 100% rename from easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-foss-2021b.eb rename to easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-gompi-2021b.eb From 0c55181ec2796d68220724f2ecd5e29ce6554c8f Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Tue, 5 Dec 2023 14:11:23 +0100 Subject: [PATCH 103/356] adding easyconfigs: ftfy-6.1.1-GCCcore-11.3.0.eb --- .../f/ftfy/ftfy-6.1.1-GCCcore-11.3.0.eb | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 easybuild/easyconfigs/f/ftfy/ftfy-6.1.1-GCCcore-11.3.0.eb diff --git a/easybuild/easyconfigs/f/ftfy/ftfy-6.1.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/f/ftfy/ftfy-6.1.1-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..0434ddd3088 --- /dev/null +++ b/easybuild/easyconfigs/f/ftfy/ftfy-6.1.1-GCCcore-11.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'PythonBundle' + +name = 'ftfy' +version = '6.1.1' + +homepage = 'http://ftfy.readthedocs.org' +description = """ftfy (fixes text for you) fixes Unicode that’s broken in various ways. +The goal of ftfy is to take in bad Unicode and output good Unicode, for use +in your Unicode-aware code. This is different from taking in non-Unicode and +outputting Unicode, which is not a goal of ftfy. It also isn’t designed to +protect you from having to write Unicode-aware code. ftfy helps those who help +themselves.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +dependencies = [ + ('Python', '3.10.4'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'checksums': ['bfc2019f84fcd851419152320a6375604a0f1459c281b5b199b2cd0d2e727f8f'], + }), +] + +moduleclass = "tools" From 3c6c0e0780f8705f5771554a62960f01383ff718 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Tue, 5 Dec 2023 14:57:16 +0100 Subject: [PATCH 104/356] Refactor `check_dep_vars` Remove the C&P code for filtering a dep_var with a specific version_suffix if exactly 1 match was found. Replace by a list similar to `multiple_allowed_variants` and the code to directly delete the key instead of rebuilding the dict. Also assert only once with all found issues. Allows easier extension. --- test/easyconfigs/easyconfigs.py | 110 +++++++++++++++----------------- 1 file changed, 50 insertions(+), 60 deletions(-) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index 27461af560f..d81f5d67122 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -380,12 +380,6 @@ def check_dep_vars(self, gen, dep, dep_vars): version_regex = re.compile('^version: (?P[^;]+);') - # filter out binutils with empty versionsuffix which is used to build toolchain compiler - if dep == 'binutils' and len(dep_vars) > 1: - empty_vsuff_vars = [v for v in dep_vars.keys() if v.endswith('versionsuffix: ')] - if len(empty_vsuff_vars) == 1: - dep_vars = dict((k, v) for (k, v) in dep_vars.items() if k != empty_vsuff_vars[0]) - # multiple variants of HTSlib is OK as long as they are deps for a matching version of BCFtools; # same goes for WRF and WPS; Gurobi and Rgurobi; ncbi-vdb and SRA-Toolkit multiple_allowed_variants = [('HTSlib', 'BCFtools'), @@ -410,46 +404,51 @@ def check_dep_vars(self, gen, dep, dep_vars): if all(ec.startswith('Boost.Python-%s-' % boost_ver) for ec in ecs): dep_vars.pop(key) - # filter out Perl with -minimal versionsuffix which are only used in makeinfo-minimal - if dep == 'Perl': - minimal_vsuff_vars = [v for v in dep_vars.keys() if v.endswith('versionsuffix: -minimal')] - if len(minimal_vsuff_vars) == 1: - dep_vars = dict((k, v) for (k, v) in dep_vars.items() if k != minimal_vsuff_vars[0]) - - # filter out FFTW and imkl with -serial versionsuffix which are used in non-MPI subtoolchains - if dep in ['FFTW', 'imkl']: - serial_vsuff_vars = [v for v in dep_vars.keys() if v.endswith('versionsuffix: -serial')] - if len(serial_vsuff_vars) == 1: - dep_vars = dict((k, v) for (k, v) in dep_vars.items() if k != serial_vsuff_vars[0]) - - # filter out BLIS and libFLAME with -amd versionsuffix - # (AMD forks, used in gobff/*-amd toolchains) - if dep in ['BLIS', 'libFLAME']: - amd_vsuff_vars = [v for v in dep_vars.keys() if v.endswith('versionsuffix: -amd')] - if len(amd_vsuff_vars) == 1: - dep_vars = dict((k, v) for (k, v) in dep_vars.items() if k != amd_vsuff_vars[0]) - - # filter out ScaLAPACK with -BLIS-* versionsuffix, used in goblf toolchain - if dep == 'ScaLAPACK': - blis_vsuff_vars = [v for v in dep_vars.keys() if '; versionsuffix: -BLIS-' in v] - if len(blis_vsuff_vars) == 1: - dep_vars = dict((k, v) for (k, v) in dep_vars.items() if k != blis_vsuff_vars[0]) - - if dep == 'ScaLAPACK': + # Pairs of name, versionsuffix that should be removed from dep_vars if exactly one matching key is found. + # The name is checked against 'dep' and can be a list to allow multiple. + # If the versionsuffix is a 2-element tuple, the second element should be set to True + # to interpret the first element as the start of the suffix (e.g. to include trailing version numbers). + # Otherwise the whole versionsuffix must match for the filter to apply. + filter_variants = [ + # filter out binutils with empty versionsuffix which is used to build toolchain compiler + ('binutils', ''), + # filter out Perl with -minimal versionsuffix which are only used in makeinfo-minimal + ('Perl', '-minimal'), + # filter out FFTW and imkl with -serial versionsuffix which are used in non-MPI subtoolchains + # Same for HDF5 with -serial versionsuffix which is used in HDF5 for Python (h5py) + (['FFTW', 'imkl', 'HDF5'], '-serial'), + # filter out BLIS and libFLAME with -amd versionsuffix + # (AMD forks, used in gobff/*-amd toolchains) + (['BLIS', 'libFLAME'], '-amd'), + # filter out ScaLAPACK with -BLIS-* versionsuffix, used in goblf toolchain + ('ScaLAPACK', ('-BLIS-', True)), # filter out ScaLAPACK with -bf versionsuffix, used in gobff toolchain - bf_vsuff_vars = [v for v in dep_vars.keys() if '; versionsuffix: -bf' in v] - if len(bf_vsuff_vars) == 1: - dep_vars = dict((k, v) for (k, v) in dep_vars.items() if k != bf_vsuff_vars[0]) + ('ScaLAPACK', '-bf'), # filter out ScaLAPACK with -bl versionsuffix, used in goblf toolchain - bl_vsuff_vars = [v for v in dep_vars.keys() if '; versionsuffix: -bl' in v] - if len(bl_vsuff_vars) == 1: - dep_vars = dict((k, v) for (k, v) in dep_vars.items() if k != bl_vsuff_vars[0]) - - # filter out HDF5 with -serial versionsuffix which is used in HDF5 for Python (h5py) - if dep in ['HDF5']: - serial_vsuff_vars = [v for v in dep_vars.keys() if v.endswith('versionsuffix: -serial')] - if len(serial_vsuff_vars) == 1: - dep_vars = dict((k, v) for (k, v) in dep_vars.items() if k != serial_vsuff_vars[0]) + ('ScaLAPACK', '-bl'), + # filter out ELSI variants with -PEXSI suffix + ('ELSI', '-PEXSI'), + ] + for dep_name, version_suffix in filter_variants: + # always retain at least one dep variant + if len(dep_vars) == 1: + break + if isinstance(dep_name, string_type): + if dep != dep_name: + continue + elif dep not in dep_name: + continue + if isinstance(version_suffix, string_type): + match_prefix = False + else: + version_suffix, match_prefix = version_suffix + search = 'versionsuffix: ' + version_suffix + if match_prefix: + matches = [v for v in dep_vars if search in v] + else: + matches = [v for v in dep_vars if v.endswith(search)] + if len(matches) == 1: + del dep_vars[matches[0]] # for some dependencies, we allow exceptions for software that depends on a particular version, # as long as that's indicated by the versionsuffix @@ -625,12 +624,6 @@ def check_dep_vars(self, gen, dep, dep_vars): if all(any(re.search(p, x) for p in parents) for x in dep_vars[key]): dep_vars.pop(key) - # filter out ELSI variants with -PEXSI suffix - if dep == 'ELSI' and len(dep_vars) > 1: - pexsi_vsuff_vars = [v for v in dep_vars.keys() if v.endswith('versionsuffix: -PEXSI')] - if len(pexsi_vsuff_vars) == 1: - dep_vars = dict((k, v) for (k, v) in dep_vars.items() if k != pexsi_vsuff_vars[0]) - # only single variant is always OK if len(dep_vars) == 1: res = True @@ -858,6 +851,7 @@ def get_deps_for(ec): # which throws off the pattern matching done below for toolchain versions false_positives_regex = re.compile('^MATLAB-Engine-20[0-9][0-9][ab]') + multi_dep_vars_msg = '' # restrict to checking dependencies of easyconfigs using common toolchains (start with 2018a) # and GCCcore subtoolchain for common toolchains, starting with GCCcore 7.x for pattern in ['20(1[89]|[2-9][0-9])[ab]', r'GCCcore-([7-9]|[1-9][0-9])\.[0-9]']: @@ -883,19 +877,15 @@ def get_deps_for(ec): dep_variants.setdefault(variant, set()).add(ec_file) # check which dependencies have more than 1 variant - multi_dep_vars, multi_dep_vars_msg = [], '' - for tc_gen in sorted(all_deps.keys()): - for dep in sorted(all_deps[tc_gen].keys()): - dep_vars = all_deps[tc_gen][dep] + for tc_gen, deps in sorted(all_deps.items()): + for dep, dep_vars in sorted(deps.items()): if not self.check_dep_vars(tc_gen, dep, dep_vars): - multi_dep_vars.append(dep) - multi_dep_vars_msg += "\nfound %s variants of '%s' dependency " % (len(dep_vars), dep) + multi_dep_vars_msg += "Found %s variants of '%s' dependency " % (len(dep_vars), dep) multi_dep_vars_msg += "in easyconfigs using '%s' toolchain generation\n* " % tc_gen - multi_dep_vars_msg += '\n* '.join("%s as dep for %s" % v for v in sorted(dep_vars.items())) + multi_dep_vars_msg += '\n * '.join("%s as dep for %s" % v for v in sorted(dep_vars.items())) multi_dep_vars_msg += '\n' - - error_msg = "No multi-variant deps found for '%s' easyconfigs:\n%s" % (regex.pattern, multi_dep_vars_msg) - self.assertFalse(multi_dep_vars, error_msg) + if multi_dep_vars_msg: + self.fail('Should not have multiple variants of dependencies.\n' + multi_dep_vars_msg) def test_sanity_check_paths(self): """Make sure specified sanity check paths adher to the requirements.""" From 707282dde30e0e506aca56e60fb9d62803907a9f Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Tue, 5 Dec 2023 15:03:42 +0100 Subject: [PATCH 105/356] allow Python version of Z3 to be used as a dependency. `test_dep_versions_per_toolchain_generation` fails because the versions with and without Python-bindings are used. --- test/easyconfigs/easyconfigs.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index d81f5d67122..497f03f4030 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -405,9 +405,9 @@ def check_dep_vars(self, gen, dep, dep_vars): dep_vars.pop(key) # Pairs of name, versionsuffix that should be removed from dep_vars if exactly one matching key is found. - # The name is checked against 'dep' and can be a list to allow multiple. + # The name is checked against 'dep' and can be a list to allow multiple # If the versionsuffix is a 2-element tuple, the second element should be set to True - # to interpret the first element as the start of the suffix (e.g. to include trailing version numbers). + # to interpret the first element as the start of the suffix (e.g. to include trailing version numbers) # Otherwise the whole versionsuffix must match for the filter to apply. filter_variants = [ # filter out binutils with empty versionsuffix which is used to build toolchain compiler @@ -428,6 +428,10 @@ def check_dep_vars(self, gen, dep, dep_vars): ('ScaLAPACK', '-bl'), # filter out ELSI variants with -PEXSI suffix ('ELSI', '-PEXSI'), + # For Z3 the EC including Python bindings has a matching versionsuffix + # filter out one per Python version + ('Z3', ('-Python-2', True)), + ('Z3', ('-Python-3', True)), ] for dep_name, version_suffix in filter_variants: # always retain at least one dep variant From d94008db47165eab7a2ec2d6f60d607b39a4bd84 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Tue, 5 Dec 2023 15:53:35 +0100 Subject: [PATCH 106/356] adding easyconfigs: fastml-2.3-GCC-11.3.0.eb --- .../f/fastml/fastml-2.3-GCC-11.3.0.eb | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 easybuild/easyconfigs/f/fastml/fastml-2.3-GCC-11.3.0.eb diff --git a/easybuild/easyconfigs/f/fastml/fastml-2.3-GCC-11.3.0.eb b/easybuild/easyconfigs/f/fastml/fastml-2.3-GCC-11.3.0.eb new file mode 100644 index 00000000000..58b3127ddde --- /dev/null +++ b/easybuild/easyconfigs/f/fastml/fastml-2.3-GCC-11.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'MakeCp' + +name = 'fastml' +version = '2.3' + +homepage = 'http://fastml.tau.ac.il/' +description = """Maximum likelihood reconstruction of ancestral amino-acid sequences. +A branch-and-bound algorithm for the inference of ancestral amino-acid +sequences when the replacement rate varies among sites.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'cstd': 'c++03'} + +github_account = 'sanger-pathogens' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['c02901d83ab9457852c67e8e14f41a02d2a0653130ed941b288108ba5272611d'] + +parallel = 1 + +prebuildopts = "sed -i 's/-depth-32/-depth-64/g' {programs/Makefile*,libs/phylogeny/Makefile} && " + +files_to_copy = [ + (['programs/fastml/fastml'], 'bin'), + (['programs/fastml/libfastml.a', 'libs/phylogeny/libEvolTree.a'], 'lib'), + (['AUTHORS', 'Readme.md'], 'share'), +] + +sanity_check_paths = { + 'files': ['bin/%(name)s', 'lib/lib%(name)s.a', 'lib/libEvolTree.a'], + 'dirs': ['share'], +} + +sanity_check_commands = [ + ("fastml", "-h"), +] + +moduleclass = 'bio' From 01c517d1e5342020b9b370f3fb072c65afeaf962 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Tue, 5 Dec 2023 16:13:20 +0100 Subject: [PATCH 107/356] adding easyconfigs: PyTorchVideo-0.1.5-foss-2022a-PyTorch-1.12.0.eb, PyTorchVideo-0.1.5-foss-2022a-PyTorch-1.12.0-CUDA-11.7.0.eb, PyAV-10.0.0-GCCcore-11.3.0.eb, parameterized-0.9.0-GCCcore-11.3.0.eb --- .../p/PyAV/PyAV-10.0.0-GCCcore-11.3.0.eb | 27 ++++++++++ ...5-foss-2022a-PyTorch-1.12.0-CUDA-11.7.0.eb | 52 +++++++++++++++++++ ...chVideo-0.1.5-foss-2022a-PyTorch-1.12.0.eb | 51 ++++++++++++++++++ .../parameterized-0.9.0-GCCcore-11.3.0.eb | 24 +++++++++ 4 files changed, 154 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyAV/PyAV-10.0.0-GCCcore-11.3.0.eb create mode 100644 easybuild/easyconfigs/p/PyTorchVideo/PyTorchVideo-0.1.5-foss-2022a-PyTorch-1.12.0-CUDA-11.7.0.eb create mode 100644 easybuild/easyconfigs/p/PyTorchVideo/PyTorchVideo-0.1.5-foss-2022a-PyTorch-1.12.0.eb create mode 100644 easybuild/easyconfigs/p/parameterized/parameterized-0.9.0-GCCcore-11.3.0.eb diff --git a/easybuild/easyconfigs/p/PyAV/PyAV-10.0.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/PyAV/PyAV-10.0.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..500c7006ccd --- /dev/null +++ b/easybuild/easyconfigs/p/PyAV/PyAV-10.0.0-GCCcore-11.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonBundle' + +name = 'PyAV' +version = '10.0.0' + +homepage = 'https://pyav.org' +description = """PyAV is a Pythonic binding for FFmpeg. We aim to provide all of the power and +control of the underlying library, but manage the gritty details as much as possible.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +dependencies = [ + ('Python', '3.10.4'), + ('FFmpeg', '4.4.2'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('av', version, { + 'checksums': ['8afd3d5610e1086f3b2d8389d66672ea78624516912c93612de64dcaa4c67e05'], + 'installopts': "--no-binary av", + }), +] + +moduleclass = "vis" diff --git a/easybuild/easyconfigs/p/PyTorchVideo/PyTorchVideo-0.1.5-foss-2022a-PyTorch-1.12.0-CUDA-11.7.0.eb b/easybuild/easyconfigs/p/PyTorchVideo/PyTorchVideo-0.1.5-foss-2022a-PyTorch-1.12.0-CUDA-11.7.0.eb new file mode 100644 index 00000000000..65f3bd34e66 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorchVideo/PyTorchVideo-0.1.5-foss-2022a-PyTorch-1.12.0-CUDA-11.7.0.eb @@ -0,0 +1,52 @@ +easyblock = 'PythonBundle' + +name = 'PyTorchVideo' +version = '0.1.5' +local_pytorchver = '1.12.0' +versionsuffix = '-PyTorch-%s-CUDA-%%(cudaver)s' % local_pytorchver + +homepage = 'https://pytorchvideo.org/' +description = """PyTorchVideo is a deeplearning library with a focus on video understanding +work. PytorchVideo provides reusable, modular and efficient components needed +to accelerate the video understanding research. PyTorchVideo is developed +using PyTorch and supports different deeplearning video components like video +models, video datasets, and video-specific transforms.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('CUDA', '11.7.0', '', SYSTEM), + ('PyTorch', local_pytorchver, '-CUDA-%(cudaver)s'), + ('networkx', '2.8.4'), + ('parameterized', '0.9.0'), + ('PyAV', '10.0.0'), + ('Pillow', '9.1.1'), # required by fvcore + ('PyYAML', '6.0'), # required by fvcore + ('tqdm', '4.64.0'), # required by fvcore + ('YACS', '0.1.8'), # required by fvcore +] + +use_pip = True + +exts_list = [ + ('termcolor', '1.1.0', { + 'checksums': ['1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b'], + }), + ('portalocker', '2.7.0', { + 'checksums': ['032e81d534a88ec1736d03f780ba073f047a06c478b06e2937486f334e955c51'], + }), + ('iopath', '0.1.10', { + 'checksums': ['3311c16a4d9137223e20f141655759933e1eda24f8bff166af834af3c645ef01'], + }), + ('fvcore', '0.1.5.post20221221', { + 'checksums': ['f2fb0bb90572ae651c11c78e20493ed19b2240550a7e4bbb2d6de87bdd037860'], + }), + ('pytorchvideo', version, { + 'checksums': ['69a3424c7feb70422da59d0cec17b56657984bd0ba8d5d78cad08a328cf6341b'], + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/p/PyTorchVideo/PyTorchVideo-0.1.5-foss-2022a-PyTorch-1.12.0.eb b/easybuild/easyconfigs/p/PyTorchVideo/PyTorchVideo-0.1.5-foss-2022a-PyTorch-1.12.0.eb new file mode 100644 index 00000000000..8854c10e34a --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorchVideo/PyTorchVideo-0.1.5-foss-2022a-PyTorch-1.12.0.eb @@ -0,0 +1,51 @@ +easyblock = 'PythonBundle' + +name = 'PyTorchVideo' +version = '0.1.5' +local_pytorchver = '1.12.0' +versionsuffix = '-PyTorch-%s' % local_pytorchver + +homepage = 'https://pytorchvideo.org/' +description = """PyTorchVideo is a deeplearning library with a focus on video understanding +work. PytorchVideo provides reusable, modular and efficient components needed +to accelerate the video understanding research. PyTorchVideo is developed +using PyTorch and supports different deeplearning video components like video +models, video datasets, and video-specific transforms.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('PyTorch', local_pytorchver), + ('networkx', '2.8.4'), + ('parameterized', '0.9.0'), + ('PyAV', '10.0.0'), + ('Pillow', '9.1.1'), # required by fvcore + ('PyYAML', '6.0'), # required by fvcore + ('tqdm', '4.64.0'), # required by fvcore + ('YACS', '0.1.8'), # required by fvcore +] + +use_pip = True + +exts_list = [ + ('termcolor', '1.1.0', { + 'checksums': ['1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b'], + }), + ('portalocker', '2.7.0', { + 'checksums': ['032e81d534a88ec1736d03f780ba073f047a06c478b06e2937486f334e955c51'], + }), + ('iopath', '0.1.10', { + 'checksums': ['3311c16a4d9137223e20f141655759933e1eda24f8bff166af834af3c645ef01'], + }), + ('fvcore', '0.1.5.post20221221', { + 'checksums': ['f2fb0bb90572ae651c11c78e20493ed19b2240550a7e4bbb2d6de87bdd037860'], + }), + ('pytorchvideo', version, { + 'checksums': ['69a3424c7feb70422da59d0cec17b56657984bd0ba8d5d78cad08a328cf6341b'], + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/p/parameterized/parameterized-0.9.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/parameterized/parameterized-0.9.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..051c4e887dc --- /dev/null +++ b/easybuild/easyconfigs/p/parameterized/parameterized-0.9.0-GCCcore-11.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'parameterized' +version = '0.9.0' + +homepage = 'https://github.com/wolever/parameterized' +description = """ Parameterized testing with any Python test framework """ + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['7fc905272cefa4f364c1a3429cbbe9c0f98b793988efb5bf90aac80f08db09b1'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [ + ('Python', '3.10.4'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'tools' From e44538fe2f0210324bfdc87af4445a3b577d7211 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Tue, 5 Dec 2023 16:39:39 +0100 Subject: [PATCH 108/356] adding easyconfigs: git-lfs-3.4.0.eb --- .../easyconfigs/g/git-lfs/git-lfs-3.4.0.eb | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb diff --git a/easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb b/easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb new file mode 100644 index 00000000000..63e56671829 --- /dev/null +++ b/easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb @@ -0,0 +1,27 @@ +easyblock = 'MakeCp' + +name = 'git-lfs' +version = '3.4.0' + +homepage = 'https://git-lfs.github.com' +description = """Git Large File Storage (LFS) replaces large files such as audio + samples, videos, datasets, and graphics with text pointers inside Git, while + storing the file contents on a remote server like GitHub.com""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/git-lfs/git-lfs/archive/'] +sources = ['v%(version)s.tar.gz'] + +builddependencies = [('Go', '1.21.2')] + +files_to_copy = [(['bin/%(name)s'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/git-lfs'], + 'dirs': [], +} + +sanity_check_commands = [('git-lfs', '--version')] + +moduleclass = 'tools' From 4d83c043ddb005062ba4f778a058183a4cc8a78b Mon Sep 17 00:00:00 2001 From: Alexander Puck Neuwirth Date: Wed, 6 Dec 2023 14:18:57 +0100 Subject: [PATCH 109/356] adding easyconfigs: LHAPDF-6.5.4-GCC-12.3.0.eb --- .../l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb diff --git a/easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb b/easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb new file mode 100644 index 00000000000..0c1dedf805d --- /dev/null +++ b/easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb @@ -0,0 +1,50 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Alexander Puck Neuwirth + +easyblock = 'ConfigureMake' + +name = 'LHAPDF' +version = '6.5.4' + +homepage = 'http://lhapdf.hepforge.org/' +description = """ +Les Houches Parton Density Function + +LHAPDF is the standard tool for evaluating parton distribution functions (PDFs) in high-energy physics. +""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'optarch': True, 'pic': True} + +source_urls = ['http://www.hepforge.org/archive/lhapdf/'] +sources = [SOURCE_TAR_GZ] +checksums = ['2443a4b32cc3b0597c8248bd6e25703ace9c91a7a253c5f60b1b5428ef9c869e'] + +dependencies = [ + ('Python', '3.11.3'), +] + +configopts = "--disable-static --enable-python" + +sanity_check_paths = { + 'files': ["bin/lhapdf", "bin/lhapdf-config", "lib/libLHAPDF.%s" % SHLIB_EXT], + 'dirs': ["share/LHAPDF"], +} + +sanity_check_commands = [ + "lhapdf --version", + "lhapdf-config --version", + "python -c 'import lhapdf'", +] + +modloadmsg = """ +To use/install your own PDF data you need to adjust the path `export LHAPDF_DATA_PATH=/local/.../path/`. +Then you can run `lhapdf update` followed by `lhapdf install your_pdf`. +""" + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages' + # 'LHAPDF_DATA_PATH': '/path/to/LHAPDF_DATA_PATH', # please adapt +} + +moduleclass = 'phys' From b8cdf26106b057de0e36d8edfb3c3303798a2570 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Wed, 6 Dec 2023 14:48:02 +0100 Subject: [PATCH 110/356] add checksum --- easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb b/easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb index 63e56671829..e19141d8b4b 100644 --- a/easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb +++ b/easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb @@ -12,6 +12,7 @@ toolchain = SYSTEM source_urls = ['https://github.com/git-lfs/git-lfs/archive/'] sources = ['v%(version)s.tar.gz'] +checksums = ['fa93f65cc5c15b96037a72cf243bc2cc04c94ea5cccc346664425d6d4bac66c2'] builddependencies = [('Go', '1.21.2')] From e77cfac44f1b30282fad798daecc415f75eac407 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Wed, 6 Dec 2023 15:31:16 +0100 Subject: [PATCH 111/356] adding easyconfigs: gflags-2.2.2-GCCcore-11.3.0.eb --- .../g/gflags/gflags-2.2.2-GCCcore-11.3.0.eb | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 easybuild/easyconfigs/g/gflags/gflags-2.2.2-GCCcore-11.3.0.eb diff --git a/easybuild/easyconfigs/g/gflags/gflags-2.2.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/gflags/gflags-2.2.2-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..1b40f295dc0 --- /dev/null +++ b/easybuild/easyconfigs/g/gflags/gflags-2.2.2-GCCcore-11.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'CMakeMake' + +name = 'gflags' +version = '2.2.2' + +homepage = 'https://github.com/gflags/gflags' +description = """ +The gflags package contains a C++ library that implements commandline flags +processing. It includes built-in support for standard types such as string +and the ability to define flags in the source file in which they are used. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/gflags/gflags/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['34af2f15cf7367513b352bdcd2493ab14ce43692d2dcd9dfc499492966c64dcf'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), +] + +configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON' + +sanity_check_paths = { + 'files': ['bin/gflags_completions.sh'] + + ['lib/%s' % x for x in ['libgflags.%s' % SHLIB_EXT, 'libgflags_nothreads.%s' % SHLIB_EXT, + 'libgflags.a', 'libgflags_nothreads.a']] + + ['include/gflags/gflags_completions.h'], + 'dirs': [], +} + +moduleclass = 'devel' From 0e97426da90a31fda2ce5f94f6faf3d687464edf Mon Sep 17 00:00:00 2001 From: Adam Huffman <12435+verdurin@users.noreply.github.com> Date: Wed, 6 Dec 2023 15:12:09 +0000 Subject: [PATCH 112/356] adding easyconfigs: MEME-5.5.4-gompi-2022b.eb, XML-Compile-1.63-GCCcore-12.2.0.eb --- .../m/MEME/MEME-5.5.4-gompi-2022b.eb | 63 +++++++++++++++++++ .../XML-Compile-1.63-GCCcore-12.2.0.eb | 61 ++++++++++++++++++ 2 files changed, 124 insertions(+) create mode 100644 easybuild/easyconfigs/m/MEME/MEME-5.5.4-gompi-2022b.eb create mode 100644 easybuild/easyconfigs/x/XML-Compile/XML-Compile-1.63-GCCcore-12.2.0.eb diff --git a/easybuild/easyconfigs/m/MEME/MEME-5.5.4-gompi-2022b.eb b/easybuild/easyconfigs/m/MEME/MEME-5.5.4-gompi-2022b.eb new file mode 100644 index 00000000000..3c54ce3096a --- /dev/null +++ b/easybuild/easyconfigs/m/MEME/MEME-5.5.4-gompi-2022b.eb @@ -0,0 +1,63 @@ +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# uploaded by J. Sassmannshausen + +easyblock = 'ConfigureMake' + +name = 'MEME' +version = '5.5.4' + +homepage = 'https://meme-suite.org/meme/index.html' +description = """The MEME Suite allows you to: * discover motifs using MEME, DREME (DNA only) or + GLAM2 on groups of related DNA or protein sequences, * search sequence databases with motifs using + MAST, FIMO, MCAST or GLAM2SCAN, * compare a motif to all motifs in a database of motifs, * associate + motifs with Gene Ontology terms via their putative target genes, and * analyse motif enrichment + using SpaMo or CentriMo.""" + +toolchain = {'name': 'gompi', 'version': '2022b'} + +source_urls = ['https://%(namelower)s-suite.org/%(namelower)s/%(namelower)s-software/%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['cda6011c2b855bf2563c4e7a2c255e11e99b5b6e5e73736ff008942507580153'] + +dependencies = [ + ('libxml2', '2.10.3'), + ('libxslt', '1.1.37'), + ('zlib', '1.2.12'), + ('Perl', '5.36.0'), + ('Python', '3.10.8'), + ('Ghostscript', '10.0.0'), + ('XML-Compile', '1.63'), +] + +configopts = '--with-perl=${EBROOTPERL}/bin/perl --with-python=${EBROOTPYTHON}/bin/python ' +configopts += '--with-gs=${EBROOTGHOSTSCRIPT}/bin/gs ' +# config.log should indicate that all required/optional dependencies were found (see scripts/dependencies.pl) +configopts += " && grep 'All required and optional Perl modules were found' config.log" + +pretestopts = "OMPI_MCA_rmaps_base_oversubscribe=1 " +# test xstreme4 fails on Ubuntu 20.04, see: https://groups.google.com/g/meme-suite/c/GlfpGwApz1Y +runtest = 'test' + +fix_perl_shebang_for = ['bin/*', 'libexec/meme-%(version)s/*'] +fix_python_shebang_for = ['bin/*', 'libexec/meme-%(version)s/*'] + +sanity_check_paths = { + 'files': ['bin/meme', 'bin/dreme', 'bin/meme-chip', 'libexec/meme-%(version)s/meme2meme'], + 'dirs': ['lib'], +} + +sanity_check_commands = [ + "mpirun meme -h 2>&1 | grep 'Usage:'", + "meme2meme --help", + "perl -e 'require MemeSAX'", + "python -c 'import sequence_py3'", +] + +modextrapaths = { + 'PATH': ['libexec/meme-%(version)s'], + 'PERL5LIB': ['lib/meme-%(version)s/perl'], + 'PYTHONPATH': ['lib/meme-%(version)s/python'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/x/XML-Compile/XML-Compile-1.63-GCCcore-12.2.0.eb b/easybuild/easyconfigs/x/XML-Compile/XML-Compile-1.63-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..8b7134716ad --- /dev/null +++ b/easybuild/easyconfigs/x/XML-Compile/XML-Compile-1.63-GCCcore-12.2.0.eb @@ -0,0 +1,61 @@ +easyblock = 'Bundle' + +name = 'XML-Compile' +version = '1.63' + +homepage = 'https://metacpan.org/pod/XML::Compile' +description = "Perl module for compilation based XML processing" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +builddependencies = [ + ('pkgconf', '1.9.3'), + ('binutils', '2.39'), +] + +dependencies = [ + ('Perl', '5.36.0'), + ('XML-LibXML', '2.0208'), +] + +exts_defaultclass = 'PerlModule' +exts_filter = ("perl -e 'require %(ext_name)s'", '') + +exts_list = [ + ('XML::LibXML::Simple', '1.01', { + 'source_tmpl': 'XML-LibXML-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['cd98c8104b70d7672bfa26b4513b78adf2b4b9220e586aa8beb1a508500365a6'], + }), + ('XML::Compile', version, { + 'source_tmpl': 'XML-Compile-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['4b0871ef4a70bff37266d531bebcd1d065b109e8f5c5e996f87189a9f92d595f'], + }), + ('XML::Compile::Cache', '1.06', { + 'source_tmpl': 'XML-Compile-Cache-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['591b136bd92842c81a5176082503f47df6d5cc4d8e0d78953ef1557f747038a0'], + }), + ('XML::Compile::SOAP', '3.28', { + 'source_tmpl': 'XML-Compile-SOAP-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['0921699c4522537f7930e14fac056492de7801a9b9140d0e1faf33414ae6998f'], + }), + ('XML::Compile::WSDL11', '3.08', { + 'source_tmpl': 'XML-Compile-WSDL11-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['dd687ccf5083fe98fce1dd18540e1d0175042437a986e33eec105eca248f8d42'], + }), +] + +modextrapaths = { + 'PERL5LIB': 'lib/perl5/site_perl/%(perlver)s/', +} + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/perl5/site_perl/%(perlver)s/XML/Compile'], +} + +moduleclass = 'data' From 9688eab34aa4d643cc44da3c501c6915ac81ae14 Mon Sep 17 00:00:00 2001 From: Adam Huffman <12435+verdurin@users.noreply.github.com> Date: Wed, 6 Dec 2023 16:05:47 +0000 Subject: [PATCH 113/356] adding easyconfigs: Kent_tools-457-GCC-12.2.0.eb --- .../k/Kent_tools/Kent_tools-457-GCC-12.2.0.eb | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 easybuild/easyconfigs/k/Kent_tools/Kent_tools-457-GCC-12.2.0.eb diff --git a/easybuild/easyconfigs/k/Kent_tools/Kent_tools-457-GCC-12.2.0.eb b/easybuild/easyconfigs/k/Kent_tools/Kent_tools-457-GCC-12.2.0.eb new file mode 100644 index 00000000000..82fa09f6d5a --- /dev/null +++ b/easybuild/easyconfigs/k/Kent_tools/Kent_tools-457-GCC-12.2.0.eb @@ -0,0 +1,46 @@ +easyblock = 'MakeCp' + +name = 'Kent_tools' +version = '457' + +homepage = 'https://genome.cse.ucsc.edu/' +description = """Kent utilities: collection of tools used by the UCSC genome browser.""" + +toolchain = {'name': 'GCC', 'version': '12.2.0'} +source_urls = [ + 'https://hgdownload.cse.ucsc.edu/admin/exe/', + 'https://hgdownload.cse.ucsc.edu/admin/exe/userApps.archive/', +] +sources = ['userApps.v%(version)s.src.tgz'] +patches = ['%(name)s-442_openssl.patch'] +checksums = [ + {'userApps.v457.src.tgz': 'fa52259d4998fea75555fe7952c79d2f9a572e3be52a4274e6bb2db706d152fc'}, + {'Kent_tools-442_openssl.patch': '219ff93006553098c21d5ff05248163c952a5086e2547b2b29f88a2d1a0a2e53'}, +] + +dependencies = [ + ('MariaDB', '10.11.2'), + ('libpng', '1.6.38'), + ('zlib', '1.2.12'), + ('util-linux', '2.38.1'), + ('OpenSSL', '1.1', '', SYSTEM), + ('freetype', '2.12.1'), +] + +prebuildopts = 'sed -i "s/rsync -a /cp -a /" %(builddir)s/userApps/kent/src/parasol/makefile && ' + +buildopts = 'CC="$CC" COPT="$CFLAGS -fcommon" PNGLIB="-L$EBROOTLIBPNG/lib -lpng" ZLIB="-L$EBROOTZLIB/lib -lz" ' +buildopts += 'SSL_DIR="$EBROOTOPENSSL" SSLDIR="$EBROOTOPENSSL" MYSQLLIBS="-L$EBROOTMARIADB/lib -lmariadb -lstdc++" ' + +local_binaries = ['blat', 'bedPartition', 'getRna', 'liftOver', 'mafGene', 'splitFile', 'twoBitToFa'] + +files_to_copy = [(['bin/*'], 'bin'), 'licenseBlat.txt', 'licenseUcscGenomeBrowser.txt'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_binaries], + 'dirs': [], +} + +sanity_check_commands = ["%s 2>&1 | grep '^usage:'" % x for x in local_binaries] + +moduleclass = 'bio' From 4df609ecc84294d571aae9c07c3d161032e78e7d Mon Sep 17 00:00:00 2001 From: jfgrimm Date: Wed, 6 Dec 2023 16:26:22 +0000 Subject: [PATCH 114/356] adding easyconfigs: CellRanger-7.2.0.eb --- .../c/CellRanger/CellRanger-7.2.0.eb | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 easybuild/easyconfigs/c/CellRanger/CellRanger-7.2.0.eb diff --git a/easybuild/easyconfigs/c/CellRanger/CellRanger-7.2.0.eb b/easybuild/easyconfigs/c/CellRanger/CellRanger-7.2.0.eb new file mode 100644 index 00000000000..f02ee42a839 --- /dev/null +++ b/easybuild/easyconfigs/c/CellRanger/CellRanger-7.2.0.eb @@ -0,0 +1,31 @@ +# The STAR binary included in this version has been vectorized with AVX +# hence it is not recommended for systems that do not support it. + +easyblock = 'Tarball' + +name = 'CellRanger' +version = '7.2.0' + +homepage = 'https://support.10xgenomics.com/single-cell-gene-expression/software/pipelines/latest/what-is-cell-ranger' +description = """Cell Ranger is a set of analysis pipelines that process Chromium + single-cell RNA-seq output to align reads, generate gene-cell matrices and perform + clustering and gene expression analysis.""" + +toolchain = SYSTEM + +download_instructions = """ +Download manually from https://support.10xgenomics.com/single-cell-gene-expression/software/downloads/latest +""" +sources = [SOURCELOWER_TAR_GZ] +checksums = ['b092bd4e3ab585ad051a231fbdd8f3f0f5cbcd10f657eeab86bec98cd594502c'] + +keepsymlinks = True + +sanity_check_paths = { + 'files': ['bin/cellranger'], + 'dirs': ['bin/rna', 'bin/tenkit'], +} + +sanity_check_commands = ['cellranger testrun --id=tiny'] + +moduleclass = 'bio' From e383fb7f42a9c84fa503f5e8aac8c9b9e01a5523 Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Thu, 7 Dec 2023 12:06:55 +0800 Subject: [PATCH 115/356] adding easyconfigs: primecountpy-0.1.0-GCCcore-11.3.0.eb, primecount-7.9-GCCcore-11.3.0.eb --- .../primecount-7.9-GCCcore-11.3.0.eb | 31 +++++++++++++++++++ .../primecountpy-0.1.0-GCCcore-11.3.0.eb | 24 ++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 easybuild/easyconfigs/p/primecount/primecount-7.9-GCCcore-11.3.0.eb create mode 100644 easybuild/easyconfigs/p/primecountpy/primecountpy-0.1.0-GCCcore-11.3.0.eb diff --git a/easybuild/easyconfigs/p/primecount/primecount-7.9-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/primecount/primecount-7.9-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..c7e2b9843fc --- /dev/null +++ b/easybuild/easyconfigs/p/primecount/primecount-7.9-GCCcore-11.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'CMakeMake' + +name = 'primecount' +version = '7.9' + +homepage = 'https://github.com/kimwalisch/primecount' +description = """primecount is a command-line program and C/C++ library that counts the number of primes ≤ x + (maximum 1031) using highly optimized implementations of the combinatorial prime counting algorithms.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/kimwalisch/primecount/archive/refs/tags'] +sources = ['v%(version)s.tar.gz'] +checksums = ['872975ba2cbb43f5cc1ff5f5fda9ec4ec3f2be1eb3e3e906abe5d0b29a997f5b'] + +builddependencies = [ + ('CMake', '3.24.3'), + ('binutils', '2.38'), +] + +configopts = '-DBUILD_SHARED_LIBS=ON ' + +sanity_check_paths = { + 'files': ['bin/primecount', 'include/primecount.h'] + + ['lib/libprimecount.%s' % e for e in ['a', SHLIB_EXT]], + 'dirs': ['share'], +} + +sanity_check_commands = ["primecount -h"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/p/primecountpy/primecountpy-0.1.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/primecountpy/primecountpy-0.1.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..515d9ee8580 --- /dev/null +++ b/easybuild/easyconfigs/p/primecountpy/primecountpy-0.1.0-GCCcore-11.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'primecountpy' +version = '0.1.0' + +homepage = 'https://pypi.org/project/primecountpy' +description = "This is a Cython interface to the C++ library primecount." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['78fe7cc32115f0669a45d7c90faaf39f7ce3939e39e2e7e5f14c17fe4bff0676'] + +dependencies = [ + ('Python', '3.10.4'), + ('cysignals', '1.11.2'), + ('primecount', '7.9'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'math' From 2a89e5d7feba66d00a03c4f406c14463ff0bebd9 Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Thu, 7 Dec 2023 14:57:03 +0800 Subject: [PATCH 116/356] adding easyconfigs: fpylll-0.5.9-foss-2022a.eb, fplll-5.4.5-GCCcore-11.3.0.eb --- .../f/fplll/fplll-5.4.5-GCCcore-11.3.0.eb | 32 +++++++++++++++++++ .../f/fpylll/fpylll-0.5.9-foss-2022a.eb | 26 +++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 easybuild/easyconfigs/f/fplll/fplll-5.4.5-GCCcore-11.3.0.eb create mode 100644 easybuild/easyconfigs/f/fpylll/fpylll-0.5.9-foss-2022a.eb diff --git a/easybuild/easyconfigs/f/fplll/fplll-5.4.5-GCCcore-11.3.0.eb b/easybuild/easyconfigs/f/fplll/fplll-5.4.5-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..aaabafc9a2f --- /dev/null +++ b/easybuild/easyconfigs/f/fplll/fplll-5.4.5-GCCcore-11.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'fplll' +version = '5.4.5' + +homepage = 'https://github.com/fplll/fplll' +description = """fplll contains implementations of several lattice algorithms. + The implementation relies on floating-point orthogonalization, and the 1982 paper from +Lenstra, Lenstra Jr. and Lovasz (LLL( is central to the code, hence the name.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/fplll/fplll/releases/download/%(version)s'] +sources = [SOURCE_TAR_GZ] +checksums = ['76d3778f0326597ed7505bab19493a9bf6b73a5c5ca614e8fb82f42105c57d00'] + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('MPFR', '4.1.0'), +] + +sanity_check_paths = { + 'files': ['bin/fplll', 'lib/libfplll.%s' % SHLIB_EXT, 'include/fplll.h'], + 'dirs': ['share'] +} + +sanity_check_commands = ["fplll --help"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/f/fpylll/fpylll-0.5.9-foss-2022a.eb b/easybuild/easyconfigs/f/fpylll/fpylll-0.5.9-foss-2022a.eb new file mode 100644 index 00000000000..0942fca804b --- /dev/null +++ b/easybuild/easyconfigs/f/fpylll/fpylll-0.5.9-foss-2022a.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'fpylll' +version = '0.5.9' + +homepage = 'https://pypi.org/project/fpylll' +description = "A Python wrapper for fplll." + +# can be moved down to gfbf in more recent toolchain versions +toolchain = {'name': 'foss', 'version': '2022a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['be16d40fd94ddea771ccef44434732dfbf9a88cf15cd5f9020ec7a8197f16358'] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('cysignals', '1.11.2'), + ('fplll', '5.4.5'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'math' From 0e4f5c1f65dd5f6118a4b519c17cc4b174459aa9 Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Thu, 7 Dec 2023 17:00:55 +0800 Subject: [PATCH 117/356] upgrade pplpy, sagemath requires a more recent version --- .../{pplpy-0.8.4-GCC-11.3.0.eb => pplpy-0.8.9-GCC-11.3.0.eb} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename easybuild/easyconfigs/p/pplpy/{pplpy-0.8.4-GCC-11.3.0.eb => pplpy-0.8.9-GCC-11.3.0.eb} (85%) diff --git a/easybuild/easyconfigs/p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb b/easybuild/easyconfigs/p/pplpy/pplpy-0.8.9-GCC-11.3.0.eb similarity index 85% rename from easybuild/easyconfigs/p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb rename to easybuild/easyconfigs/p/pplpy/pplpy-0.8.9-GCC-11.3.0.eb index 5d755588664..553da922263 100644 --- a/easybuild/easyconfigs/p/pplpy/pplpy-0.8.4-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/p/pplpy/pplpy-0.8.9-GCC-11.3.0.eb @@ -1,7 +1,7 @@ easyblock = 'PythonPackage' name = 'pplpy' -version = '0.8.4' +version = '0.8.9' homepage = 'https://pypi.org/project/pplpy/' description = "This Python package provides a wrapper to the C++ Parma Polyhedra Library (PPL)." @@ -9,7 +9,7 @@ description = "This Python package provides a wrapper to the C++ Parma Polyhedra toolchain = {'name': 'GCC', 'version': '11.3.0'} sources = [SOURCE_TAR_GZ] -checksums = ['b962914d5814edab320d00c11ca396b70c4ce1e67db7a6d59c4b0a3772a16836'] +checksums = ['db7a3b571d6ef053f75137975e947c3a1c1e45a30bab90eaf215b4e5cc15797e'] # the GMP, MPC etc. is not needed here. Since they are contained in gmpy2 dependencies = [ From abd5f09824a0948407a579dbe6abf082932a7b95 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Thu, 7 Dec 2023 15:03:43 +0100 Subject: [PATCH 118/356] Use `LooseVersion` from easybuilt.tools Don't use the deprecated distutils variant causing warnings. --- test/easyconfigs/easyconfigs.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index 27461af560f..4e5164012fc 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -35,7 +35,6 @@ import sys import tempfile from collections import defaultdict -from distutils.version import LooseVersion from unittest import TestCase, TestLoader, main, skip import easybuild.main as eb_main @@ -51,7 +50,7 @@ from easybuild.framework.easyconfig.easyconfig import resolve_template from easybuild.framework.easyconfig.parser import EasyConfigParser, fetch_parameters_from_easyconfig from easybuild.framework.easyconfig.tools import check_sha256_checksums, dep_graph, get_paths_for, process_easyconfig -from easybuild.tools import config +from easybuild.tools import config, LooseVersion from easybuild.tools.build_log import EasyBuildError from easybuild.tools.config import GENERAL_CLASS, build_option from easybuild.tools.filetools import change_dir, is_generic_easyblock, read_file, remove_file From 036c9cde0d6738c2a2312ea84cec377f25a1285a Mon Sep 17 00:00:00 2001 From: Mikhail Vorobyov Date: Thu, 7 Dec 2023 19:14:03 +0300 Subject: [PATCH 119/356] Revive iperf2 An updated copy of easybuild/easyconfigs/__archive__/i/Iperf/Iperf-2.0.5-goolf-1.4.10.eb --- .../i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb diff --git a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..488ff44fd6a --- /dev/null +++ b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb @@ -0,0 +1,31 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA +# Authors:: Fotis Georgatos +# License:: MIT/GPL +# $Id$ +# +# This work implements a part of the HPCBIOS project and is a component of the policy: +# http://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-90.html +## + +easyblock = 'ConfigureMake' + +name = 'iperf' +version = '2.1.9' + +homepage = 'http://iperf2.sourceforge.net/' +description = """Iperf-2.1.9: TCP and UDP bandwidth performance measurement tool""" + +sources = [SOURCELOWER_TAR_GZ] +source_urls = [('http://sourceforge.net/projects/iperf2/files', 'download')] +checksums = ['5c0771aab00ef14520013aef01675977816e23bb8f5d9fde016f90eb2f1be788'] +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +sanity_check_paths = { + 'files': ['bin/iperf'], + 'dirs': [] +} + +moduleclass = 'tools' From 60f00583ad861cd182e233238856b5503fe6016c Mon Sep 17 00:00:00 2001 From: Mikhail Vorobyov Date: Thu, 7 Dec 2023 19:05:22 +0300 Subject: [PATCH 120/356] Easyconfig for Intel MPI Benchmarks on gompi-2020b Copy of IMB-2021.3-gompi-2021b with changed toolchain version --- .../i/IMB/IMB-2021.3-gompi-2020b.eb | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 easybuild/easyconfigs/i/IMB/IMB-2021.3-gompi-2020b.eb diff --git a/easybuild/easyconfigs/i/IMB/IMB-2021.3-gompi-2020b.eb b/easybuild/easyconfigs/i/IMB/IMB-2021.3-gompi-2020b.eb new file mode 100644 index 00000000000..9db2f7831fc --- /dev/null +++ b/easybuild/easyconfigs/i/IMB/IMB-2021.3-gompi-2020b.eb @@ -0,0 +1,31 @@ +easyblock = 'MakeCp' + +name = 'IMB' +version = '2021.3' + +homepage = 'https://software.intel.com/en-us/articles/intel-mpi-benchmarks' +description = """The Intel MPI Benchmarks perform a set of MPI performance measurements for point-to-point and + global communication operations for a range of message sizes""" + +docurls = ['https://software.intel.com/en-us/imb-user-guide'] + +toolchain = {'name': 'gompi', 'version': '2020b'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/intel/mpi-benchmarks/archive/'] +sources = ['IMB-v%(version)s.tar.gz'] +checksums = ['9b58a4a7eef7c0c877513152340948402fd87cb06270d2d81308dc2ef740f4c7'] + +buildopts = 'all CC="$MPICC"' + +parallel = 1 + +files_to_copy = [(['IMB-*'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/IMB-EXT', 'bin/IMB-IO', 'bin/IMB-MPI1', 'bin/IMB-MT', + 'bin/IMB-NBC', 'bin/IMB-P2P', 'bin/IMB-RMA'], + 'dirs': [], +} + +moduleclass = 'perf' From da8e51effd6e2c8d92b00dd6516d2345dde81cdb Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 8 Dec 2023 10:51:39 +0100 Subject: [PATCH 121/356] add binutils as build dependency of PyAV v10.0.0 --- easybuild/easyconfigs/p/PyAV/PyAV-10.0.0-GCCcore-11.3.0.eb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/easybuild/easyconfigs/p/PyAV/PyAV-10.0.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/PyAV/PyAV-10.0.0-GCCcore-11.3.0.eb index 500c7006ccd..37d94fab76b 100644 --- a/easybuild/easyconfigs/p/PyAV/PyAV-10.0.0-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/p/PyAV/PyAV-10.0.0-GCCcore-11.3.0.eb @@ -9,6 +9,10 @@ control of the underlying library, but manage the gritty details as much as poss toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +builddependencies = [ + ('binutils', '2.38'), +] + dependencies = [ ('Python', '3.10.4'), ('FFmpeg', '4.4.2'), From 6727d1ab844c03a01932eed3c2b909861a8b0a06 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 8 Dec 2023 10:57:36 +0100 Subject: [PATCH 122/356] add binutils as build dependency of ftfy v6.1.1 --- easybuild/easyconfigs/f/ftfy/ftfy-6.1.1-GCCcore-11.3.0.eb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/easybuild/easyconfigs/f/ftfy/ftfy-6.1.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/f/ftfy/ftfy-6.1.1-GCCcore-11.3.0.eb index 0434ddd3088..5e0c755cc15 100644 --- a/easybuild/easyconfigs/f/ftfy/ftfy-6.1.1-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/f/ftfy/ftfy-6.1.1-GCCcore-11.3.0.eb @@ -13,6 +13,10 @@ themselves.""" toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +builddependencies = [ + ('binutils', '2.38'), +] + dependencies = [ ('Python', '3.10.4'), ] From 70cd599e2314bf304af39c618f8d6306024859e9 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 8 Dec 2023 10:59:08 +0100 Subject: [PATCH 123/356] downgrade cmake version in CESM-deps v2 on foss/2022a --- easybuild/easyconfigs/c/CESM-deps/CESM-deps-2-foss-2022a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/c/CESM-deps/CESM-deps-2-foss-2022a.eb b/easybuild/easyconfigs/c/CESM-deps/CESM-deps-2-foss-2022a.eb index ca57a2611f0..c3ee3e4a102 100644 --- a/easybuild/easyconfigs/c/CESM-deps/CESM-deps-2-foss-2022a.eb +++ b/easybuild/easyconfigs/c/CESM-deps/CESM-deps-2-foss-2022a.eb @@ -12,7 +12,7 @@ and future climate states.""" toolchain = {'name': 'foss', 'version': '2022a'} dependencies = [ - ('CMake', '3.24.3'), + ('CMake', '3.23.1'), ('Python', '3.10.4'), ('lxml', '4.9.1'), ('Perl', '5.34.1'), From 9229db9eaad9d0b5cffd9d58f96bd6a1473feb7d Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 8 Dec 2023 13:40:22 +0100 Subject: [PATCH 124/356] adding easyconfigs: Triton-1.1.1-foss-2022a-CUDA-11.7.0.eb, Clang-13.0.1-GCCcore-11.3.0-CUDA-11.7.0.eb and patches: Triton-1.1.1-disable_rocm_support.patch, Triton-1.1.1-use_eb_env_python_build.patch --- ...Clang-13.0.1-GCCcore-11.3.0-CUDA-11.7.0.eb | 78 +++++ .../Triton-1.1.1-disable_rocm_support.patch | 322 ++++++++++++++++++ .../Triton-1.1.1-foss-2022a-CUDA-11.7.0.eb | 49 +++ ...Triton-1.1.1-use_eb_env_python_build.patch | 53 +++ 4 files changed, 502 insertions(+) create mode 100644 easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.3.0-CUDA-11.7.0.eb create mode 100644 easybuild/easyconfigs/t/Triton/Triton-1.1.1-disable_rocm_support.patch create mode 100644 easybuild/easyconfigs/t/Triton/Triton-1.1.1-foss-2022a-CUDA-11.7.0.eb create mode 100644 easybuild/easyconfigs/t/Triton/Triton-1.1.1-use_eb_env_python_build.patch diff --git a/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.3.0-CUDA-11.7.0.eb b/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.3.0-CUDA-11.7.0.eb new file mode 100644 index 00000000000..8a64e6c0984 --- /dev/null +++ b/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.3.0-CUDA-11.7.0.eb @@ -0,0 +1,78 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2013-2015 Dmitri Gribenko, Ward Poelmans +# Authors:: Dmitri Gribenko +# Authors:: Ward Poelmans +# License:: GPLv2 or later, MIT, three-clause BSD. +# $Id$ +## + +name = 'Clang' +version = '13.0.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://clang.llvm.org/' +description = """C, C++, Objective-C compiler, based on LLVM. Does not + include C++ standard library -- use libstdc++ from GCC.""" + +# Clang also depends on libstdc++ during runtime, but this dependency is +# already specified as the toolchain. +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ["https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s"] +sources = [ + 'llvm-%(version)s.src.tar.xz', + 'clang-%(version)s.src.tar.xz', + 'compiler-rt-%(version)s.src.tar.xz', + 'polly-%(version)s.src.tar.xz', + 'openmp-%(version)s.src.tar.xz', + # Also include the LLVM linker + 'lld-%(version)s.src.tar.xz', + 'libcxx-%(version)s.src.tar.xz', + 'libcxxabi-%(version)s.src.tar.xz', + 'clang-tools-extra-%(version)s.src.tar.xz', + 'libunwind-%(version)s.src.tar.xz', +] +checksums = [ + 'ec6b80d82c384acad2dc192903a6cf2cdbaffb889b84bfb98da9d71e630fc834', # llvm-13.0.1.src.tar.xz + '787a9e2d99f5c8720aa1773e4be009461cd30d3bd40fdd24591e473467c917c9', # clang-13.0.1.src.tar.xz + '7b33955031f9a9c5d63077dedb0f99d77e4e7c996266952c1cec55626dca5dfc', # compiler-rt-13.0.1.src.tar.xz + 'f4003e03da57b53bf206faadd0cf53f7b198c38498c605dec45743db23c10ad0', # polly-13.0.1.src.tar.xz + '6b79261371616c31fea18cd3ee1797c79ee38bcaf8417676d4fa366a24c96b4f', # openmp-13.0.1.src.tar.xz + '666af745e8bf7b680533b4d18b7a31dc7cab575b1e6e4d261922bbafd9644cfb', # lld-13.0.1.src.tar.xz + '2f446acc00bb7cfb4e866c2fa46d1b6dbf4e7d2ab62e3c3d84e56f7b9e28110f', # libcxx-13.0.1.src.tar.xz + 'db5fa6093c786051e8b1c85527240924eceb6c95eeff0a2bbc57be8422b3cef1', # libcxxabi-13.0.1.src.tar.xz + 'cc2bc8598848513fa2257a270083e986fd61048347eccf1d801926ea709392d0', # clang-tools-extra-13.0.1.src.tar.xz + 'e206dbf1bbe058a113bffe189386ded99a160b2443ee1e2cd41ff810f78551ba', # libunwind-13.0.1.src.tar.xz +] + +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.38'), + ('hwloc', '2.7.1'), + ('libxml2', '2.9.13'), + ('ncurses', '6.3'), + ('GMP', '6.2.1'), + ('Z3', '4.10.2'), + ('libffi', '3.4.2'), + ('elfutils', '0.187'), + ('CUDA', '11.7.0', '', SYSTEM), +] + +builddependencies = [ + ('CMake', '3.23.1'), + ('Python', '3.10.4'), + ('Perl', '5.34.1'), +] + +assertions = True +usepolly = True +build_lld = True +libcxx = True +enable_rtti = True +build_extra_clang_tools = True + +skip_all_tests = True + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/t/Triton/Triton-1.1.1-disable_rocm_support.patch b/easybuild/easyconfigs/t/Triton/Triton-1.1.1-disable_rocm_support.patch new file mode 100644 index 00000000000..49cdccdd914 --- /dev/null +++ b/easybuild/easyconfigs/t/Triton/Triton-1.1.1-disable_rocm_support.patch @@ -0,0 +1,322 @@ +Disable experimental support for AMD GPUs +author: Alex Domingo (Vrije Universiteit Brussel) +--- lib/driver/llvm.cc.orig 2023-12-07 16:06:32.873087318 +0100 ++++ lib/driver/llvm.cc 2023-12-07 16:07:18.097049981 +0100 +@@ -47,15 +47,6 @@ + #include "llvm/ExecutionEngine/SectionMemoryManager.h" + #include "llvm/Transforms/Utils/Cloning.h" + +-// begin AMD stuff +-#include "llvm/Support/FileSystem.h" +-#include "llvm/Support/FormattedStream.h" +-#include "llvm/Support/Program.h" +-#include "llvm/Support/ToolOutputFile.h" +-#include "llvm/ADT/StringRef.h" +-#include "llvm/Analysis/TargetLibraryInfo.h" +-// end AMD stuff +- + namespace triton{ + namespace driver{ + +@@ -66,10 +57,6 @@ + LLVMInitializeNVPTXTarget(); + LLVMInitializeNVPTXTargetMC(); + LLVMInitializeNVPTXAsmPrinter(); +- LLVMInitializeAMDGPUTargetInfo(); +- LLVMInitializeAMDGPUTarget(); +- LLVMInitializeAMDGPUTargetMC(); +- LLVMInitializeAMDGPUAsmPrinter(); + init = true; + } + } +@@ -248,116 +235,6 @@ + } + } + +-/* ------------------------ */ +-// HIP // +-/* ------------------------ */ +- +-std::string llir_to_amdgpu(llvm::Module* module, const std::string& _proc) { +- init_llvm(); +- +-// proc = std::get<0>(GetFeatureStrFromGCNArchName(rocminfo)); +-// features = std::get<1>(GetFeatureStrFromGCNArchName(rocminfo)); +- +- // create +- llvm::SmallVector buffer; +- std::string triple = "amdgcn-amd-amdhsa"; +- std::string layout = ""; +- std::string features; +- std::string proc = "gfx908"; +- // verify and store llvm +- llvm::legacy::PassManager pm; +- pm.add(llvm::createVerifierPass()); +- pm.run(*module); +- // create machine +- module->setTargetTriple(triple); +- std::string error; +- auto target = llvm::TargetRegistry::lookupTarget(module->getTargetTriple(), error); +- llvm::TargetOptions opt; +- opt.AllowFPOpFusion = llvm::FPOpFusion::Fast; +- opt.UnsafeFPMath = false; +- opt.NoInfsFPMath = false; +- opt.NoNaNsFPMath = true; +- llvm::TargetMachine *machine = target->createTargetMachine(module->getTargetTriple(), proc, features, opt, +- llvm::Reloc::PIC_, llvm::None, +- llvm::CodeGenOpt::Aggressive); +- // set data layout +- if(layout.empty()) +- module->setDataLayout(machine->createDataLayout()); +- else +- module->setDataLayout(layout); +- // emit machine code +- for (llvm::Function &f : module->functions()) +- f.addFnAttr(llvm::Attribute::AlwaysInline); +- llvm::legacy::PassManager pass; +- llvm::raw_svector_ostream stream(buffer); +- +- // create dump files +- std::string module_name = module->getModuleIdentifier(); +- std::error_code ec; +- +- // Save GCN ISA binary. +- std::string isabin_path = std::string("/tmp/") + module_name + std::string(".o"); +- std::unique_ptr isabin_fs( +- new llvm::raw_fd_ostream(isabin_path, ec, llvm::sys::fs::OF_Text)); +- if (ec) +- { +- std::cout << isabin_path << " was not created. error code: " << ec << std::endl; +- } +- +- // emit +- machine->addPassesToEmitFile(pass, *isabin_fs, nullptr, llvm::CGFT_ObjectFile); +- pass.run(*module); +- // Save GCN ISA. +- std::string amdgcn_path = std::string("/tmp/") + module_name + std::string(".gcn"); +- std::string result(buffer.begin(), buffer.end()); +- std::ofstream amdgcn(amdgcn_path); +- amdgcn << result; +- amdgcn.close(); +- +- // generate HASCO file +- std::string hsaco_path = std::string("/tmp/") + module_name + std::string(".hsaco"); +- std::string error_message; +- int lld_result = +- llvm::sys::ExecuteAndWait("/opt/rocm/llvm/bin/ld.lld", +- {"/opt/rocm/llvm/bin/ld.lld", "-flavor", "gnu", "-shared", "-o", hsaco_path, isabin_path}, +- llvm::None, {}, 0, 0, &error_message); +- if (lld_result) +- { +- std::cout << "ld.lld execute fail: " << std::endl; +- std::cout << error_message << std::endl; +- std::cout << lld_result << std::endl; +- } +- +- return hsaco_path; +-} +- +- +-hipModule_t amdgpu_to_hipmodule(const std::string& path) { +- // Read HSACO. +- std::ifstream hsaco_file(path, std::ios::binary | std::ios::ate); +- std::ifstream::pos_type hsaco_file_size = hsaco_file.tellg(); +- +- std::vector hsaco(hsaco_file_size); +- hsaco_file.seekg(0, std::ios::beg); +- hsaco_file.read(reinterpret_cast(&hsaco[0]), hsaco_file_size); +- hsaco_file.close(); +- hipJitOption opt[] = {hipJitOptionErrorLogBufferSizeBytes, hipJitOptionErrorLogBuffer, +- hipJitOptionInfoLogBufferSizeBytes, hipJitOptionInfoLogBuffer, +- hipJitOptionLogVerbose}; +- unsigned int errbufsize = 8192; +- unsigned int logbufsize = 8192; +- char _err[errbufsize]; +- char _log[logbufsize]; +- void* optval[] = {(void*)(uintptr_t)errbufsize, +- (void*)_err, (void*)(uintptr_t)logbufsize, +- (void*)_log, (void*)1}; +- hipModule_t ret; +- dispatch::hipModuleLoadDataEx(&ret, hsaco.data(), 5, opt, optval); +- return ret; +-} +- +- +- + } + } + +--- CMakeLists.txt.orig 2023-12-07 16:13:23.403991690 +0100 ++++ CMakeLists.txt 2023-12-07 16:13:41.637662517 +0100 +@@ -43,9 +43,7 @@ + libLLVMNVPTXCodeGen.a + libLLVMNVPTXDesc.a + libLLVMNVPTXInfo.a +-libLLVMAMDGPUDisassembler.a + libLLVMMCDisassembler.a +-libLLVMAMDGPUCodeGen.a + libLLVMMIRParser.a + libLLVMGlobalISel.a + libLLVMSelectionDAG.a +@@ -70,10 +68,7 @@ + libLLVMObject.a + libLLVMTextAPI.a + libLLVMBitReader.a +-libLLVMAMDGPUAsmParser.a + libLLVMMCParser.a +-libLLVMAMDGPUDesc.a +-libLLVMAMDGPUUtils.a + libLLVMMC.a + libLLVMDebugInfoCodeView.a + libLLVMDebugInfoMSF.a +@@ -81,7 +76,6 @@ + libLLVMRemarks.a + libLLVMBitstreamReader.a + libLLVMBinaryFormat.a +-libLLVMAMDGPUInfo.a + libLLVMSupport.a + libLLVMDemangle.a + ) +--- python/src/triton.cc.orig 2023-12-08 09:35:13.584838000 +0100 ++++ python/src/triton.cc 2023-12-08 09:39:02.993866293 +0100 +@@ -34,17 +34,9 @@ + return res; + } + +-template +-int hipGetInfo(hipDevice_t device) { +- int res; +- drv::dispatch::hipDeviceGetAttribute(&res, attr, device); +- return res; +-} +- + enum backend_t { + HOST, + CUDA, +- ROCM, + }; + + void cu_enable_peer_access(uint64_t peer_ptr){ +@@ -84,28 +76,12 @@ + shared_mem, (CUstream)stream, nullptr, config); + } + +-void hip_enqueue(uint64_t stream, uint64_t kernel, +- uint64_t grid_0, uint64_t grid_1, uint64_t grid_2, +- uint64_t block_0, uint64_t block_1, uint64_t block_2, +- void* args_ptr, size_t args_size, int64_t shared_mem) { +- void *config[] = { +- HIP_LAUNCH_PARAM_BUFFER_POINTER, (void*)args_ptr, +- HIP_LAUNCH_PARAM_BUFFER_SIZE, &args_size, +- HIP_LAUNCH_PARAM_END +- }; +- drv::dispatch::hipModuleLaunchKernel((hipFunction_t)kernel, grid_0, grid_1, grid_2, +- block_0, block_1, block_2, +- shared_mem, (hipStream_t)stream, nullptr, config); +- +-} +- + void init_triton_runtime(py::module &&m) { + + // wrap backend_t + py::enum_(m, "backend") + .value("HOST", HOST) + .value("CUDA", CUDA) +- .value("ROCM", ROCM) + .export_values(); + + // enable peer-to-peer +@@ -122,8 +98,6 @@ + return 0; + if(backend == CUDA) + return cuGetInfo(device); +- if(backend == ROCM) +- return hipGetInfo(device); + return -1; + }); + +@@ -138,8 +112,6 @@ + host_enqueue(stream, kernel, grid_0, grid_1, grid_2, block_0, block_1, block_2, args_ptr, args_size, shared_mem); + if(backend == CUDA) + cu_enqueue(stream, kernel, grid_0, grid_1, grid_2, block_0, block_1, block_2, args_ptr, args_size, shared_mem); +- if(backend == ROCM) +- hip_enqueue(stream, kernel, grid_0, grid_1, grid_2, block_0, block_1, block_2, args_ptr, args_size, shared_mem); + }); + + +@@ -183,19 +155,6 @@ + return std::make_tuple((uint64_t)mod, (uint64_t)fun); + } + +-// ROCM +-std::tuple hip_load_binary(const std::string& name, asm_map_t &asm_map, size_t n_shared_bytes, uint64_t dev){ +- py::bytes _assembly = asm_map["hsaco"]; +- std::string assembly = py::cast(_assembly); +- // HSA-CO -> hipModule +- hipModule_t mod = drv::amdgpu_to_hipmodule(assembly); +- // Handle to the kernel +- hipFunction_t fun; +- drv::dispatch::hipModuleGetFunction(&fun, mod, name.c_str()); +- // record asm +- return std::make_tuple((uint64_t)mod, (uint64_t)fun); +-} +- + // --------------------------------------- + // Compile Triton-IR to assembly + // --------------------------------------- +@@ -233,26 +192,6 @@ + return std::make_tuple(name, asm_map, n_shared_bytes); + } + +-// HIP +-std::tuple hip_compile_ttir(const std::string& name, ir::module &ir, +- uint64_t device, int num_warps, int num_stages, +- bool force_nc_cache, asm_map_t &asm_map){ +- llvm::LLVMContext ctx; +- // Triton-IR -> NVPTX LLVM-IR +- triton::codegen::amd_cl_target target; +- int n_shared_bytes; +- auto llvm = triton::codegen::add_passes_to_emit_bin(ir, ctx, &target, 70, num_warps, num_stages, force_nc_cache, n_shared_bytes); +- std::string tmp; +- llvm::raw_string_ostream llir(tmp); +- llir << *llvm; +- llir.flush(); +- asm_map["llir"] = py::cast(tmp); +- // LLVM-IR -> HSA-CO +- std::string path = drv::llir_to_amdgpu(llvm.get(), "gfx908"); +- asm_map["hsaco"] = py::cast(path); +- return std::make_tuple(name, asm_map, n_shared_bytes); +-} +- + void init_triton_codegen(py::module &&m) { + m.def( + "compile_ttir", [](backend_t backend, ir::module &ir, uint64_t device, int num_warps, int num_stages, bool force_nc_cache) { +@@ -265,14 +204,10 @@ + llvm::LLVMContext ctx; + if(backend == CUDA) + return cu_compile_ttir(name, ir, device, num_warps, num_stages, force_nc_cache, asm_map); +- if(backend == ROCM) +- return hip_compile_ttir(name, ir, device, num_warps, num_stages, force_nc_cache, asm_map); + }, py::return_value_policy::take_ownership); + m.def("load_binary", [](backend_t backend, const std::string& name, asm_map_t &asm_map, size_t n_shared_bytes, uint64_t dev){ + if(backend == CUDA) + return cu_load_binary(name, asm_map, n_shared_bytes, dev); +- if(backend == ROCM) +- return hip_load_binary(name, asm_map, n_shared_bytes, dev); + }, py::return_value_policy::take_ownership); + } + +--- python/triton/code_gen.py.orig 2023-12-08 09:40:05.554478000 +0100 ++++ python/triton/code_gen.py 2023-12-08 09:40:18.283600932 +0100 +@@ -556,10 +556,7 @@ + raise e + raise CompilationError(self.fn.src, node, e) + # Compile to machine code +- if torch.version.hip is None: +- backend = _triton.runtime.backend.CUDA +- else: +- backend = _triton.runtime.backend.ROCM ++ backend = _triton.runtime.backend.CUDA + name, asm, shared_mem = _triton.code_gen.compile_ttir(backend, generator.module, device, num_warps, num_stages, force_nc_cache) + max_shared_memory = _triton.runtime.max_shared_memory(backend, device) + if shared_mem > max_shared_memory: diff --git a/easybuild/easyconfigs/t/Triton/Triton-1.1.1-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/t/Triton/Triton-1.1.1-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..c7b10ad68aa --- /dev/null +++ b/easybuild/easyconfigs/t/Triton/Triton-1.1.1-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,49 @@ +easyblock = 'PythonPackage' + +name = 'Triton' +version = '1.1.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://triton-lang.org/' + +description = """Triton is a language and compiler for parallel programming. It aims to provide a +Python-based programming environment for productively writing custom DNN compute +kernels capable of running at maximal throughput on modern GPU hardware.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +github_account = 'openai' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'Triton-%(version)s-disable_rocm_support.patch', + 'Triton-%(version)s-use_eb_env_python_build.patch', +] +checksums = [ + {'v1.1.1.tar.gz': '6b0e4a4375068938f7045819987b51299762abf0b1f39948f839d069ed9366bc'}, + {'Triton-1.1.1-disable_rocm_support.patch': 'abdd50246c668d7fe9889bbe4e8ca84ea4b1b762e814f099919bcbee7c037c62'}, + {'Triton-1.1.1-use_eb_env_python_build.patch': '428a86da560b5f4353e956452f495ec022dcfbb51aa283dab50551369d7838b4'}, +] + +builddependencies = [ + ('Clang', '13.0.1', versionsuffix), + ('CMake', '3.23.1'), +] + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('PyTorch', '1.12.0', versionsuffix), +] + +use_pip = True +download_dep_fail = True + +start_dir = 'python' + +# make pip print output of cmake +installopts = "-v " + +sanity_pip_check = True + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/t/Triton/Triton-1.1.1-use_eb_env_python_build.patch b/easybuild/easyconfigs/t/Triton/Triton-1.1.1-use_eb_env_python_build.patch new file mode 100644 index 00000000000..8cc90549915 --- /dev/null +++ b/easybuild/easyconfigs/t/Triton/Triton-1.1.1-use_eb_env_python_build.patch @@ -0,0 +1,53 @@ +Fix Triton cmake build to use dependencies from EasyBuild +author: Alex Domingo (Vrije Universiteit Brussel) +--- python/setup.py.orig 2023-12-08 00:18:55.731934000 +0100 ++++ python/setup.py 2023-12-08 00:22:25.336980000 +0100 +@@ -77,28 +77,24 @@ + self.build_extension(ext) + + def build_extension(self, ext): +- llvm_include_dir, llvm_library_dir = get_llvm() + # self.debug = True + extdir = os.path.abspath(os.path.dirname(self.get_ext_fullpath(ext.path))) +- # create build directories ++ llvm_include_dir = os.path.join(os.environ['EBROOTCLANG'], 'include') ++ llvm_library_dir = os.path.join(os.environ['EBROOTCLANG'], 'lib') + build_suffix = 'debug' if self.debug else 'release' +- llvm_build_dir = os.path.join(tempfile.gettempdir(), "llvm-" + build_suffix) + if not os.path.exists(self.build_temp): + os.makedirs(self.build_temp) +- if not os.path.exists(llvm_build_dir): +- os.makedirs(llvm_build_dir) + # python directories +- python_include_dirs = [distutils.sysconfig.get_python_inc()] + ['/usr/local/cuda/include'] ++ python_include_subdir = 'python' + str(sys.version_info.major) + '.' + str(sys.version_info.minor) ++ python_include_dir = os.path.join(os.environ['EBROOTPYTHON'], 'include', python_include_subdir) + cmake_args = [ + "-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=" + extdir, ++ "-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON", + "-DBUILD_TUTORIALS=OFF", + "-DBUILD_PYTHON_MODULE=ON", + "-DLLVM_INCLUDE_DIRS=" + llvm_include_dir, + "-DLLVM_LIBRARY_DIR=" + llvm_library_dir, +- #'-DPYTHON_EXECUTABLE=' + sys.executable, +- #'-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON', +- "-DTRITON_LLVM_BUILD_DIR=" + llvm_build_dir, +- "-DPYTHON_INCLUDE_DIRS=" + ";".join(python_include_dirs) ++ "-DPYTHON_INCLUDE_DIRS=" + python_include_dir, + ] + # configuration + cfg = "Debug" if self.debug else "Release" +@@ -112,10 +107,12 @@ + else: + import multiprocessing + cmake_args += ["-DCMAKE_BUILD_TYPE=" + cfg] +- build_args += ["--", '-j' + str(2 * multiprocessing.cpu_count())] ++ build_args += ["--", '-j' + str(len(os.sched_getaffinity(0)))] + + env = os.environ.copy() ++ print("cmake", self.base_dir, cmake_args) + subprocess.check_call(["cmake", self.base_dir] + cmake_args, cwd=self.build_temp, env=env) ++ print("cmake", "--build", ".", build_args) + subprocess.check_call(["cmake", "--build", "."] + build_args, cwd=self.build_temp) + + From 7e4daac93021423fee7d13bfd0eb16521603f304 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Fri, 8 Dec 2023 14:37:12 +0100 Subject: [PATCH 125/356] Skip failing test in test_linalg.py --- .../p/PyTorch/PyTorch-2.0.1-foss-2022b.eb | 3 +++ ...2.0.1_skip-test_baddbmm_cpu_bfloat16.patch | 25 +++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-test_baddbmm_cpu_bfloat16.patch diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb index f36fdeb52a1..4fbb3350a1f 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb @@ -38,6 +38,7 @@ patches = [ 'PyTorch-2.0.1_remove-test-requiring-online-access.patch', 'PyTorch-2.0.1_skip-diff-test-on-ppc.patch', 'PyTorch-2.0.1_skip-failing-gradtest.patch', + 'PyTorch-2.0.1_skip-test_baddbmm_cpu_bfloat16.patch', 'PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch', 'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch', ] @@ -86,6 +87,8 @@ checksums = [ '721ab0d35ed0ff8a46cb84ced5a98c0fb8ce6143cf6cea80b1360d3d7f64f584'}, {'PyTorch-2.0.1_skip-diff-test-on-ppc.patch': 'f6e39cd774e5663df25507a73d37ad598157c2eadb2f47ca20a537dbe4b3e14f'}, {'PyTorch-2.0.1_skip-failing-gradtest.patch': '8030bdec6ba49b057ab232d19a7f1a5e542e47e2ec340653a246ec9ed59f8bc1'}, + {'PyTorch-2.0.1_skip-test_baddbmm_cpu_bfloat16.patch': + '199005bbbb913837e557358dee31535d8e3f63af9ac7cdcece624ab8e572e28a'}, {'PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch': '7047862abc1abaff62954da59700f36d4f39fcf83167a638183b1b7f8fec78ae'}, {'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch': diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-test_baddbmm_cpu_bfloat16.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-test_baddbmm_cpu_bfloat16.patch new file mode 100644 index 00000000000..247be914888 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1_skip-test_baddbmm_cpu_bfloat16.patch @@ -0,0 +1,25 @@ +test_baddbmm_cpu_bfloat16 in test_linalg.py fails with +> AssertionError: Tensor-likes are not close! +> +> Mismatched elements: 1387 / 6000 (23.1%) +> Greatest absolute difference: 3.98046875 at index (0, 11, 7) (up to 0.5 allowed) +> Greatest relative difference: 1324.7142857142858 at index (0, 4, 9) (up to 0.016 allowed) + +Happens also with the official 2.0.1 PIP package, and seems to be known to be flaky: https://github.com/pytorch/pytorch/issues/103046 +So assume this to be expected and skip the test. + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/test_linalg.py b/test/test_linalg.py +index 29a0e482d86..d195ad60add 100644 +--- a/test/test_linalg.py ++++ b/test/test_linalg.py +@@ -5871,7 +5871,7 @@ scipy_lobpcg | {:10.2e} | {:10.2e} | {:6} | N/A + + @precisionOverride({torch.half: 0.1, torch.bfloat16: 0.5}) + @onlyNativeDeviceTypes +- @dtypes(*floating_and_complex_types_and(torch.bfloat16)) ++ @dtypes(*floating_and_complex_types()) + @tf32_on_and_off(0.05) + def test_baddbmm(self, device, dtype): + if self.device_type == 'cuda' and dtype is torch.bfloat16 and not SM53OrLater: From 4d9737710f675490d7baba09505824d381ba59d4 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 8 Dec 2023 15:45:51 +0100 Subject: [PATCH 126/356] adding easyconfigs: OpenMM-7.7.0-foss-2022a-CUDA-11.7.0.eb, OpenFold-1.0.1-foss-2022a-CUDA-11.7.0.eb --- .../OpenFold-1.0.1-foss-2022a-CUDA-11.7.0.eb | 123 ++++++++++++++++++ .../OpenMM-7.7.0-foss-2022a-CUDA-11.7.0.eb | 74 +++++++++++ 2 files changed, 197 insertions(+) create mode 100644 easybuild/easyconfigs/o/OpenFold/OpenFold-1.0.1-foss-2022a-CUDA-11.7.0.eb create mode 100644 easybuild/easyconfigs/o/OpenMM/OpenMM-7.7.0-foss-2022a-CUDA-11.7.0.eb diff --git a/easybuild/easyconfigs/o/OpenFold/OpenFold-1.0.1-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/o/OpenFold/OpenFold-1.0.1-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..de82ae37dc5 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFold/OpenFold-1.0.1-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,123 @@ +easyblock = 'PythonBundle' + +name = 'OpenFold' +version = '1.0.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/aqlaboratory/openfold' +description = "A faithful PyTorch reproduction of DeepMind's AlphaFold 2" + +toolchain = {'name': 'foss', 'version': '2022a'} + +builddependencies = [ + ('CMake', '3.23.1'), # required for ninja Python package + ('Ninja', '1.10.2'), +] + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('PyTorch', '1.12.0', versionsuffix), + ('PyTorch-Lightning', '1.7.7', versionsuffix), + ('OpenMM', '7.7.0', versionsuffix), + ('Triton', '1.1.1', versionsuffix), + ('Biopython', '1.79'), + ('dm-tree', '0.1.8'), + ('HH-suite', '3.3.0'), + ('HMMER', '3.3.2'), + ('Kalign', '3.3.5'), + ('PyYAML', '6.0'), + ('scikit-build', '0.15.0'), + ('tqdm', '4.64.0'), + ('wandb', '0.13.4'), + ('einops', '0.4.1'), # required by flash_attn +] + +use_pip = True + +# flash_attn (FlashAttention) is optional, speeds up MSA attention for sequences with < 1000 residues +exts_list = [ + ('flash_attn', '0.2.8', { + 'checksums': ['b54fee86463cdb9933e8d47e500c52f3eaf283f1c8a9d96099e62acc7dc0be1f'], + }), + ('PDBFixer', '1.8.1', { + 'source_urls': ['https://github.com/openmm/pdbfixer/archive/refs/tags/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['d50551abfe9dbaefc066f4d9d400cdebe57f1fefd9de9d01e12beb87efd99595'], + }), + ('ninja', '1.10.2.3', { + 'checksums': ['e1b86ad50d4e681a7dbdff05fc23bb52cb773edb90bc428efba33fa027738408'], + }), + ('hjson', '3.0.2', { + 'checksums': ['2838fd7200e5839ea4516ece953f3a19892c41089f0d933ba3f68e596aacfcd5'], + }), + ('py-cpuinfo', '8.0.0', { + 'modulename': 'cpuinfo', + 'checksums': ['5f269be0e08e33fd959de96b34cd4aeeeacac014dd8305f70eb28d06de2345c5'], + }), + ('deepspeed', '0.5.10', { + 'checksums': ['871623ee95b2655595195b99a59f1eb3cf2eeb395fb3418d824eb62a350f7b83'], + 'preinstallopts': "sed -i 's/^triton=.*$/triton/' requirements/requirements-sparse_attn.txt && ", + }), + ('contextlib2', '21.6.0', { + 'checksums': ['ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869'], + }), + ('ml_collections', '0.1.0', { + 'preinstallopts': "touch requirements.txt && touch requirements-test.txt && ", + 'checksums': ['59a17fcd1c140153009788517f304caaddd7a94f06690f9f0ed09987beebcf3c'], + }), + ('dllogger', '1.0.0', { + 'source_urls': ['https://github.com/NVIDIA/dllogger/archive/refs/tags/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['abae2b2ac73b9e176fa87144bf6c2048ddd3dae8e7002d6d5a270bc7e4da6b4d'], + }), + (name, version, { + 'source_urls': ['https://github.com/aqlaboratory/openfold/archive/refs/tags/'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['79eee0b90280eea5ec110511d95b42c62ea6e0098e4a78678738eb21b332bd99'], + }), +] + +local_resources_dir = '%(installdir)s/lib/python%(pyshortver)s/site-packages/openfold/resources/' +# local_resources_target_dir = '/databases/bio/%(namelower)s-%(version)s' + +local_scp_url = 'https://git.scicore.unibas.ch/schwede/openstructure/-/raw/' +local_scp_url += '7102c63615b64735c4941278d92b554ec94415f8/modules/mol/alg/src/stereo_chemical_props.txt' + +postinstallcmds = [ + 'cp -a run_pretrained_openfold.py thread_sequence.py train_openfold.py %(installdir)s/bin', + 'cp -a scripts %(installdir)s/bin', + 'chmod -R a+x %(installdir)s/bin', + # download stereo_chemical_props.txt + copy it to openfold/resources directory, + # see also install_third_party_dependencies.sh script; + # we currently can't let EasyBuild download (and cache + checksum) this, + # because an extension can only have a single source file, and (Python)Bundle doesn't allow any "parent" downloads + "cd %%(builddir)s && curl -OL %s && cp -a stereo_chemical_props.txt %s" % (local_scp_url, local_resources_dir), + # manually download openfold parameters and alphafold parameters + # see scripts download_alphafold_params.sh + download_openfold_params.sh + # download to local_resources_target_dir and add symlinks in local_resources_dir + # or download directly into local_resources_dir + # 'ln -s %s/openfold_params %s' % (local_resources_target_dir, local_resources_dir), + # 'ln -s %s/params %s' % (local_resources_target_dir, local_resources_dir), +] + +fix_python_shebang_for = ['bin/*.py', '/bin/scripts/*.py'] + +modextrapaths = { + 'PATH': 'bin/scripts', +} + +sanity_check_paths = { + 'files': ['bin/pdbfixer', 'bin/run_pretrained_openfold.py', + 'lib/python%(pyshortver)s/site-packages/openfold/resources/stereo_chemical_props.txt'], + 'dirs': ['bin/scripts', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "pdbfixer --help", + "run_pretrained_openfold.py --help", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/o/OpenMM/OpenMM-7.7.0-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/o/OpenMM/OpenMM-7.7.0-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..82ae3163013 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMM/OpenMM-7.7.0-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,74 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics +# Update to 7.5.1 +# J. Sassmannshausen / GSTT + +easyblock = 'CMakeMake' + +name = 'OpenMM' +version = '7.7.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://openmm.org' +description = "OpenMM is a toolkit for molecular simulation." + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'opt': True} + +source_urls = ['https://github.com/openmm/openmm/archive/'] +sources = ['%(version)s.tar.gz'] +patches = [ + 'OpenMM-7.5.0_fix_path_to_nvcc.patch', + 'OpenMM-8.0.0_add_no_tree_vectorize.patch', +] +checksums = [ + {'7.7.0.tar.gz': '51970779b8dc639ea192e9c61c67f70189aa294575acb915e14be1670a586c25'}, + {'OpenMM-7.5.0_fix_path_to_nvcc.patch': '050d5b81e70b34d06ef87eafc6d540b2cf716a61f53b1d2a3786504da3ec2e3c'}, + {'OpenMM-8.0.0_add_no_tree_vectorize.patch': '4bacf45443a2472e59798743f27d07481e065d784cbbea7be22aa6427af0d2bd'}, +] + +builddependencies = [ + ('CMake', '3.23.1'), + ('Doxygen', '1.9.4'), +] + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('SWIG', '4.0.2'), +] + +# Flags for CUDA-enabled build +configopts = "-DOPENMM_BUILD_CUDA_LIB=ON" + +# defining OPENMM_CUDA_COMPILER=nvcc on pretestops causes 1 test to fail: openmm/openmm#3373 +pretestopts = " CTEST_OUTPUT_ON_FAILURE=1" +local_ignore_pattern = "(Integrator)|(Thermostat)|(Barostat)|(Rpmd)|(Amoeba)" +runtest = """test -e ARGS="-E \'%s\'" """ % local_ignore_pattern + +preinstallopts = ' export OPENMM_INCLUDE_PATH=%(installdir)s/include && ' +preinstallopts += ' export OPENMM_LIB_PATH=%(installdir)s/lib && ' + +# required to install the python API +installopts = ' && cd python && python setup.py build && python setup.py install --prefix=%(installdir)s' + +sanity_check_paths = { + 'files': ['lib/libOpenMM.%s' % SHLIB_EXT], + 'dirs': ['lib/python%(pyshortver)s/site-packages'] +} + +sanity_check_commands = [ + "python -c 'import simtk.openmm'", + "python -m openmm.testInstallation", +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages/OpenMM-%(version)s-py%(pyshortver)s-linux-%(arch)s.egg', + 'OPENMM_INCLUDE_PATH': 'include', + 'OPENMM_LIB_PATH': 'lib', +} + +moduleclass = 'bio' From 886b8e267bdfc69953f25cdb541a7b82b448ef41 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 8 Dec 2023 16:32:18 +0100 Subject: [PATCH 127/356] explain versionsuffix in ReaxFF-2.0-GCC-11.3.0-param.eb --- easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb index 4a5888f01b6..01921737520 100644 --- a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb +++ b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb @@ -2,6 +2,9 @@ easyblock = 'MakeCp' name = 'ReaxFF' version = '2.0' +There are 2 variants of ReaxFF: the parameter tool and the simulation tool. +Both provide a single executable with the same name though, so we distinguish +them with a version suffix to avoid a name collision. versionsuffix = '-param' homepage = 'https://www.engr.psu.edu/adri/ReaxffManual.aspx' From 8cf29c990667d3ba8a1b24a193b59cc8461643e1 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 8 Dec 2023 16:32:51 +0100 Subject: [PATCH 128/356] explain versionsuffix in ReaxFF-2.0-GCC-11.3.0-sim.eb --- easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb index e4aeb7b0b08..7c566136239 100644 --- a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb +++ b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb @@ -2,6 +2,9 @@ easyblock = 'MakeCp' name = 'ReaxFF' version = '2.0' +# There are 2 variants of ReaxFF: the parameter tool and the simulation tool. +# Both provide a single executable with the same name though, so we distinguish +# them with a version suffix to avoid a name collision. versionsuffix = '-sim' homepage = 'https://www.engr.psu.edu/adri/ReaxffManual.aspx' From ae4eff1aa44df5fc6fe792288291ce27a1c269af Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 8 Dec 2023 16:33:14 +0100 Subject: [PATCH 129/356] fix code formatting in ReaxFF-2.0-GCC-11.3.0-param.eb --- .../easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb index 01921737520..c1b34919ce4 100644 --- a/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb +++ b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-param.eb @@ -2,9 +2,9 @@ easyblock = 'MakeCp' name = 'ReaxFF' version = '2.0' -There are 2 variants of ReaxFF: the parameter tool and the simulation tool. -Both provide a single executable with the same name though, so we distinguish -them with a version suffix to avoid a name collision. +# There are 2 variants of ReaxFF: the parameter tool and the simulation tool. +# Both provide a single executable with the same name though, so we distinguish +# them with a version suffix to avoid a name collision. versionsuffix = '-param' homepage = 'https://www.engr.psu.edu/adri/ReaxffManual.aspx' From bce65479a788b9a689be41a4f376470970583d6c Mon Sep 17 00:00:00 2001 From: Samuel Moors Date: Fri, 8 Dec 2023 22:49:24 +0100 Subject: [PATCH 130/356] adding easyconfigs: NWChem-7.2.2-intel-2023a.eb --- .../n/NWChem/NWChem-7.2.2-intel-2023a.eb | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 easybuild/easyconfigs/n/NWChem/NWChem-7.2.2-intel-2023a.eb diff --git a/easybuild/easyconfigs/n/NWChem/NWChem-7.2.2-intel-2023a.eb b/easybuild/easyconfigs/n/NWChem/NWChem-7.2.2-intel-2023a.eb new file mode 100644 index 00000000000..f5084390a05 --- /dev/null +++ b/easybuild/easyconfigs/n/NWChem/NWChem-7.2.2-intel-2023a.eb @@ -0,0 +1,34 @@ +name = 'NWChem' +version = '7.2.2' + +homepage = 'https://nwchemgit.github.io/' +description = """NWChem aims to provide its users with computational chemistry tools that are scalable both in + their ability to treat large scientific computational chemistry problems efficiently, and in their use of available + parallel computing resources from high-performance parallel supercomputers to conventional workstation clusters. + NWChem software can handle: biomolecules, nanostructures, and solid-state; from quantum to classical, and all + combinations; Gaussian basis functions or plane-waves; scaling from one to thousands of processors; properties + and relativity.""" + +toolchain = {'name': 'intel', 'version': '2023a'} +toolchainopts = {'i8': True} + +source_urls = ['https://github.com/nwchemgit/nwchem/archive/refs/tags/'] +sources = ['v%(version)s-release.tar.gz'] +patches = [ + 'NWChem-7.0.2_fix_gnumakefile.patch', +] +checksums = [ + {'v7.2.2-release.tar.gz': 'a33491c8c55a60610ffab5f73e8ce5001941589548421275dabe58b6063179e7'}, + {'NWChem-7.0.2_fix_gnumakefile.patch': '89c634a652d4c8c358f8388ac01ee441659e3c0256c39b6494e2885c91f9aca4'}, +] + +dependencies = [ + ('GlobalArrays', '5.8.2'), + ('Python', '3.11.3'), +] + +preconfigopts = 'export EXTRA_LIBS=-lutil && ' + +modules = 'all python' + +moduleclass = 'chem' From 49cc58eb9f4f62025baa408afb71d688672d812f Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Sun, 10 Dec 2023 01:02:58 +0100 Subject: [PATCH 131/356] remove deps already present in base R easyconfig from R-bundle-CRAN-2023.11-foss-2023a.eb --- .../R-bundle-CRAN-2023.11-foss-2023a.eb | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb index e0011b1d517..097ffff1bd0 100644 --- a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb @@ -17,23 +17,6 @@ builddependencies = [ dependencies = [ ('R', '4.3.2'), - ('X11', '20230603'), - ('Mesa', '23.1.4'), - ('libGLU', '9.0.3'), - ('cairo', '1.17.8'), - ('libreadline', '8.2'), - ('ncurses', '6.4'), - ('bzip2', '1.0.8'), - ('XZ', '5.4.2'), - ('zlib', '1.2.13'), - ('SQLite', '3.42.0'), - ('PCRE2', '10.42'), - ('libpng', '1.6.39'), # for plotting in R - ('libjpeg-turbo', '2.1.5.1'), # for plottting in R - ('LibTIFF', '4.5.0'), - ('Java', '11', '', SYSTEM), - ('Tk', '8.6.13'), # for tcltk - ('cURL', '8.0.1'), # for RCurl ('libxml2', '2.11.4'), # for XML ('GMP', '6.2.1'), # for igraph ('NLopt', '2.7.1'), # for nlopt @@ -49,8 +32,6 @@ dependencies = [ ('GDAL', '3.7.1'), # for sf ('MPFR', '4.2.0'), # for Rmpfr ('PostgreSQL', '16.1'), # for RPostgreSQL - ('libgit2', '1.7.1'), - ('OpenSSL', '1.1', '', SYSTEM), ] # Some R extensions (mclust, quantreg, waveslim for example) require the math library (-lm) to avoid undefined symbols. From 64ab31716139bfab103b29fb51638ed75c290478 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Sun, 10 Dec 2023 01:17:04 +0100 Subject: [PATCH 132/356] fix code formatting in R-bundle-CRAN-2023.11-foss-2023a.eb --- .../r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb index 097ffff1bd0..53bb21a4cf9 100644 --- a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb @@ -31,7 +31,7 @@ dependencies = [ ('nodejs', '18.17.1'), # for V8 (required by rstan) ('GDAL', '3.7.1'), # for sf ('MPFR', '4.2.0'), # for Rmpfr - ('PostgreSQL', '16.1'), # for RPostgreSQL + ('PostgreSQL', '16.1'), # for RPostgreSQL ] # Some R extensions (mclust, quantreg, waveslim for example) require the math library (-lm) to avoid undefined symbols. From 1884c46e9b698023e289e9e50a9892dafb8999e4 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Mon, 11 Dec 2023 00:51:45 +0100 Subject: [PATCH 133/356] 10th december update of extensions in R-bundle-CRAN-2023.11-foss-2023a.eb --- .../R-bundle-CRAN-2023.11-foss-2023a.eb | 534 +++++++++--------- 1 file changed, 268 insertions(+), 266 deletions(-) diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb index 53bb21a4cf9..276c5472c47 100644 --- a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb @@ -65,7 +65,7 @@ local_stop_msg = "stop('%(ext_name)s %(ext_version)s not installed, found ', pkg exts_filter = ("R -q --no-save", "%s { %s }" % (local_ext_version_check, local_stop_msg)) # !! order of packages is important !! -# packages updated on 5th November 2023 +# packages updated on 10th December 2023 exts_list = [ ('abind', '1.4-5', { 'checksums': ['3a3ace5afbcb86e56889efcebf3bf5c3bb042a282ba7cc4412d450bb246a3f2c'], @@ -94,8 +94,8 @@ exts_list = [ ('ff', '4.0.9', { 'checksums': ['722053271987a0c9673c3ff9e7968bbab47979d529a2fe6bb1a3179408ee3c4f'], }), - ('bnlearn', '4.9', { - 'checksums': ['5159ab0e4b4785ce830726284bdd52d8e1e444a34109b657d022c07b14449227'], + ('bnlearn', '4.9.1', { + 'checksums': ['51e1f40ac947fb1b43bc178bc5d82e23facaaefe6c66acbddf715165e1f5ee08'], }), ('bootstrap', '2019.6', { 'checksums': ['5252fdfeb944cf1fae35016d35f9333b1bd1fc8c6d4a14e33901160e21968694'], @@ -112,8 +112,8 @@ exts_list = [ ('formatR', '1.14', { 'checksums': ['4ebaab2c3f8527871655246b62abd060bc75dae1cec7f962ca4752b8080f474c'], }), - ('gtools', '3.9.4', { - 'checksums': ['59cf8b194fe98b1cc05dbb4d686810a1068f59d8b402b731548a898ece85f111'], + ('gtools', '3.9.5', { + 'checksums': ['dee9b6c1152db1a5dc427d074b32bbbb738708683f17a95e0e95e4d79fdf174b'], }), ('gdata', '3.0.0', { 'checksums': ['a456b9921765a705fe8e51780dfbbc6ca005abc948b2f80effeccd468601b17f'], @@ -133,8 +133,8 @@ exts_list = [ ('kernlab', '0.9-32', { 'checksums': ['654ef34e343deb4d2c4c139a44e5397d6e38876088ce1c53c7deb087935d6fdc'], }), - ('markdown', '1.11', { - 'checksums': ['47fc61755a952ce9716c12de2daf7940fcf306747bd47ad31dd364bbccca5f14'], + ('markdown', '1.12', { + 'checksums': ['7ddce3e8f08ce2e5feaa9fab30b50671ea200a8cfe2be230a98601d940124ba0'], }), ('mlbench', '2.1-3.1', { 'checksums': ['7afec6d58968ab526ea642e1df39bead2f479c14486b0a62032c999ba73d5cf0'], @@ -142,8 +142,8 @@ exts_list = [ ('NLP', '0.2-1', { 'checksums': ['05eaa453ad2757311c073fd30093c738b20a977c5089031eb454345a1d01f2b6'], }), - ('mclust', '6.0.0', { - 'checksums': ['de7c306ecba1ef0f4e4a56c748ce08149417496b711beefb032d561a4c28122a'], + ('mclust', '6.0.1', { + 'checksums': ['0e92de6fd1bd2a13de2c94eae84fba0d3762099a2505e05b887f1c2a7242537f'], }), ('RANN', '2.6.1', { 'checksums': ['b299c3dfb7be17aa41e66eff5674fddd2992fb6dd3b10bc59ffbf0c401697182'], @@ -157,11 +157,11 @@ exts_list = [ ('lattice', '0.22-5', { 'checksums': ['ba1fbe5e18a133507dca9851b7f933002bdb6d1f3ea5f410a0a441103b6da5f1'], }), - ('nlme', '3.1-163', { - 'checksums': ['7d46ff4c4fb7fda8df6129b28cd2aa7d32e814eac87dae8ea9fa7560593c128a'], + ('nlme', '3.1-164', { + 'checksums': ['79a5a020ce7037b83ee6c28336e35a1310058c13fc59f7fcb11eca0bc9bdd4e8'], }), - ('segmented', '1.6-4', { - 'checksums': ['472c08ae3eb1c4e784aba45f3e745b0e946bef77c26fbb9f103fd35e1a349191'], + ('segmented', '2.0-0', { + 'checksums': ['8dbb31d85f116f53f08de53c30bc225d27e8be429dfd07ca838d1ab1d5a7eec8'], }), ('som', '0.3-5.1', { 'checksums': ['a6f4c0e5b36656b7a8ea144b057e3d7642a8b71972da387a7133f3dd65507fb9'], @@ -190,17 +190,17 @@ exts_list = [ ('pixmap', '0.4-12', { 'checksums': ['893ba894d4348ba05e6edf9c1b4fd201191816b444a214f7a6b2c0a79b0a2aec'], }), - ('sp', '2.1-1', { - 'checksums': ['2d34cde2a8d5c7876425f99d9d3b24ae192430d316bd2a397a62b52412b1405b'], + ('sp', '2.1-2', { + 'checksums': ['bfdbb4a62f9fe0c554f88c75af6f214dc9a550da09bd3aefe1115ac6963e0dc5'], }), ('hms', '1.1.3', { 'checksums': ['e626f4c60af46efd53ea631b316a103e089470d8fd63c0e0c0efb99364990282'], }), - ('progress', '1.2.2', { - 'checksums': ['b4a4d8ed55db99394b036a29a0fb20b5dd2a91c211a1d651c52a1023cc58ff35'], + ('progress', '1.2.3', { + 'checksums': ['ea2b079b894de85c3ab12088c9c52aec06432245047a961d5b4b8aa6889f9276'], }), - ('RcppArmadillo', '0.12.6.6.0', { - 'checksums': ['d35eb191c5a14e5a95498f43dff3984763ac3fecaf4016c12926f6031e753e9c'], + ('RcppArmadillo', '0.12.6.6.1', { + 'checksums': ['9a6abd298ac1a87c2c85722f7561c40c424d27909cb014bf421b13f7050dffc0'], }), ('ade4', '1.7-22', { 'checksums': ['007df54e83a2a6cb8d6da8006f0aace011e7eaa7744dc5f8230ac2c002b393b4'], @@ -211,8 +211,8 @@ exts_list = [ ('BH', '1.81.0-1', { 'checksums': ['f51c8badd6f181e06353314e1d15a6ec1495cc498ee74b6fa4ea8aba6e97ff64'], }), - ('Matrix', '1.6-1.1', { - 'checksums': ['331eb1f1fe9441d4224d8551072443596001b50e8c15618f59cb938b46ee8cc2'], + ('Matrix', '1.6-4', { + 'checksums': ['70ca7bdaece68d4837da0523d067e1553947c3c81b0b55206223bb647617bb01'], }), ('Brobdingnag', '1.2-9', { 'checksums': ['f9012d250bc2a0f47815d6a7c06df2d4ddf3d8bab2d3b75e8cdefd964d20e91e'], @@ -226,8 +226,8 @@ exts_list = [ ('backports', '1.4.1', { 'checksums': ['845c3c59fbb05e5a892c4231b955a0afdd331d82b7cc815bcff0672023242474'], }), - ('checkmate', '2.3.0', { - 'checksums': ['88721b851e489da0acf88a9d598c847eca22255d7afb86fcaa06f378768b81d4'], + ('checkmate', '2.3.1', { + 'checksums': ['e7e6ba0cca400137f352a599ea29cf35a83f40a5ad26e7c4f06e6c35471884f6'], }), ('cubature', '2.1.0', { 'checksums': ['5d82785609611200d5bea069b93b0bf75bafec808f7eeef7b052eb516f273665'], @@ -250,8 +250,8 @@ exts_list = [ ('sendmailR', '1.4-0', { 'checksums': ['5b8b91fc13f6b07b9fc5a2cf7591cf760fad47c5ea17d87a2891898c506454ad'], }), - ('dotCall64', '1.1-0', { - 'checksums': ['3484e32d5b2ff6e1b74963cc81e8dcb5c3dab0e1b1a5905898606cb6851370c5'], + ('dotCall64', '1.1-1', { + 'checksums': ['21b8d7d747c07aaf8a82d61ec98fe0539afcaa5a565d9c2fc55be65b6af2c91b'], }), ('spam', '2.10-0', { 'checksums': ['719c86a23801ecf051ffd8291912ee3567af4010e74af470fbf09e274728ac79'], @@ -268,8 +268,8 @@ exts_list = [ ('permute', '0.9-7', { 'checksums': ['eff88ffb579aaeb994e9f8609b776b2d9d9d56bc2879ddf180e3a2ad19f48dc0'], }), - ('plotrix', '3.8-3', { - 'checksums': ['b961d3b59ba0850e4c198b57fcceb1735c1c10d5ddcda0ecd6c2c731f114bc05'], + ('plotrix', '3.8-4', { + 'checksums': ['e6a22d93ab61c67af21cbbe1fe333c06934cf576a44745bf2beee59bceaae8d6'], }), ('randomForest', '4.7-1.1', { 'checksums': ['f59ea87534480edbcd6baf53d7ec57e8c69f4532c2d2528eacfd48924efa2cd6'], @@ -286,8 +286,8 @@ exts_list = [ ('irace', '3.5', { 'checksums': ['d9928644a5a7e94838558d73afaaee8a914fd26fe68f691ad103331632060bf4'], }), - ('rJava', '1.0-6', { - 'checksums': ['e290d0493317a5d6c452793e92baa914e37ef03faef19b2e436329b4ec8658c6'], + ('rJava', '1.0-10', { + 'checksums': ['b5826818e5c5819d8117f692073e5bd3cc93320a6d6c2ccc34eb5c96b193396b'], }), ('RColorBrewer', '1.1-3', { 'checksums': ['4f42f5423c45688b39f492c7892d93f37b4541831c8ffb140364d2bd89031ac0'], @@ -298,14 +298,14 @@ exts_list = [ ('jpeg', '0.1-10', { 'checksums': ['c8d9f609c3088f91ec4853d6cc0e66511038a465811dea79ca6a0c09519178ca'], }), - ('deldir', '1.0-9', { - 'checksums': ['127a24ec3aa7e41e441d5b2f5654f3b59fbe47bf61ba8038d81a6110c8670687'], + ('deldir', '2.0-2', { + 'checksums': ['e9bf787f0c5877a8dc6b6c62c8f99b77dd9130337f946a4802f90eed0ec1eee3'], }), ('RcppEigen', '0.3.3.9.4', { 'checksums': ['41eabb8d034ffae0fcfcf23ca92b8f0fba5aec8f1ba108d922e19db7e10d5fb9'], }), - ('interp', '1.1-4', { - 'checksums': ['4f7b5d388132a4d76e8635e2a7c4fa0d705df2b49e7d108faa16ce2236e34d06'], + ('interp', '1.1-5', { + 'checksums': ['0c520971a10156162e4430873066e73b798be2f45aa0f222d64c987aba0e4b20'], }), ('latticeExtra', '0.6-30', { 'checksums': ['c550a76913624818482bf237d48883c58e368ba356ced8ed5e76146672279eed'], @@ -337,8 +337,8 @@ exts_list = [ ('farver', '2.1.1', { 'checksums': ['0dcfda6ca743f465372790bcff1bcbc6a7145fdac1c682b021f654e8c6c996ce'], }), - ('scales', '1.2.1', { - 'checksums': ['59453e6dbdafee93dfb101e4d86048a62a12898134259d3ef02d65aeec57ed08'], + ('scales', '1.3.0', { + 'checksums': ['b33e0f6b44259551ce02befd52eac53602509fbfdd903920620c658c50f35888'], }), ('zeallot', '0.1.0', { 'checksums': ['439f1213c97c8ddef9a1e1499bdf81c2940859f78b76bc86ba476cebd88ba1e9'], @@ -367,8 +367,8 @@ exts_list = [ ('BB', '2019.10-1', { 'checksums': ['04d0b6ce6e5f070b109478a6005653dbe78613bb4e3ea4903203d851b5d3c94d'], }), - ('data.table', '1.14.8', { - 'checksums': ['14b2ce5367df9c9bb58f373555066f5dcb629c156149b5565de36d69557139fd'], + ('data.table', '1.14.10', { + 'checksums': ['014b41eb71a8ddad504baeaa3a2fbbf03406783f00f3adcce48567692978627e'], }), ('BBmisc', '1.13', { 'checksums': ['1145dcf9fed15e7beeaa4a5c7075d8a8badd17c8246838cd63e40cd9551e4405'], @@ -376,8 +376,8 @@ exts_list = [ ('fail', '1.3', { 'checksums': ['ede8aa2a9f2371aff5874cd030ac625adb35c33954835b54ab4abf7aeb34d56d'], }), - ('rlecuyer', '0.3-7', { - 'checksums': ['65ac447e809fa3f427fec58de7f615b5ccd6f1493fd03758fe7ceca5b911bf3c'], + ('rlecuyer', '0.3-8', { + 'checksums': ['66bed3543337535fe2cf2d3eee4165472599c14d3c5e4402f7a1ebf5112c75c9'], }), ('snow', '0.4-4', { 'checksums': ['84587f46f222a96f3e2fde10ad6ec6ddbd878f4e917cd926d632f61a87db13c9'], @@ -385,8 +385,8 @@ exts_list = [ ('tree', '1.0-43', { 'checksums': ['9b0a996d013cce4f457abdbdc54bd2f8f4dbe4ef0b33e0a53925509c509d5287'], }), - ('pls', '2.8-2', { - 'checksums': ['24424c3961cd52e6c72e3e46c4f2718da8b8b50ee2837110b8d508e8f721f2b8'], + ('pls', '2.8-3', { + 'checksums': ['e6eb728dd38cd4867698df06e02601ed767e69098b1daadde5beef634ae66be3'], }), ('class', '7.3-22', { 'checksums': ['b6994164e93843fcc7e08dfdc8c8b4af6a5a10ef7153d2e72a6855342508d15c'], @@ -394,8 +394,8 @@ exts_list = [ ('proxy', '0.4-27', { 'checksums': ['249991a4c4d70ad139e93f3a24e17f161ad1ec854951813ea192daf79478563f'], }), - ('e1071', '1.7-13', { - 'checksums': ['da94e191af6e69aa0f9e3250d4b823674cc869339d914f761ebf2824177b6b2f'], + ('e1071', '1.7-14', { + 'checksums': ['754d97ab073acc07b909a190f87f021e31e07269c8632c53166a6c2843e65195'], }), ('nnet', '7.3-19', { 'checksums': ['a9241f469270d3b03bbab7dc0d3c6a06a84010af16ba82fd3bd6660b35382ce7'], @@ -403,11 +403,11 @@ exts_list = [ ('minqa', '1.2.6', { 'checksums': ['51a7b8850e5f2fee79e8f460b9d9eca4221d9702087cca5fab5851ad3d594110'], }), - ('MatrixModels', '0.5-2', { - 'checksums': ['1c06dbbc969eac965c75b0f4cf295d2895429917fa4ba727e5525fb1beabe32a'], + ('MatrixModels', '0.5-3', { + 'checksums': ['c2db5406c6b0b9d348b44eea215a39c64fc087099fea1342a04d50326577f20f'], }), - ('matrixStats', '1.0.0', { - 'checksums': ['94876850e60ed16b50bf303cdfe4dd747ad2c28cae07bdc471a093eac23bad6f'], + ('matrixStats', '1.1.0', { + 'checksums': ['b4671875d80903aabbb8d6a7750f93886eb1a67703c9263d1c1ab1aab7840541'], }), ('codetools', '0.2-19', { 'checksums': ['c4b7e567c87f33dad85de92f79641e5e5b5deede6d19a9dfa47133d191782dab'], @@ -424,14 +424,14 @@ exts_list = [ ('tidyselect', '1.2.0', { 'checksums': ['538d26b727e37d618e2efd3b00836048f103112a03e6994bf07a02392e269e3b'], }), - ('dplyr', '1.1.3', { - 'checksums': ['6843a247db0fcbba6cbffc869efbdfb25247ee6cf2fbdc36fae7e36cccfe1742'], + ('dplyr', '1.1.4', { + 'checksums': ['cf730414d5d4ab387b4e9890a4b1df9d17a3903488e8da8df1cf2e11e44558cb'], }), ('gower', '1.0.1', { 'checksums': ['296a9d8e5efa8c3a8cc6b92cf38880915753afdef30281629af9dc8eae8315fc'], }), - ('rpart', '4.1.21', { - 'checksums': ['e77c1c675b211705be18181913a97b67379ccae699c1406acf7814ad8a45622b'], + ('rpart', '4.1.23', { + 'checksums': ['f9b89aed6aa6cea656a2dcb271574e969ce2b1c98beb07bd91e17339f6daabaf'], }), ('survival', '3.5-7', { 'checksums': ['d50e2dd32add39f0d148c17ec301eeff1ba9b74d9f9674324a9acd5ef234272e'], @@ -508,8 +508,8 @@ exts_list = [ ('quantreg', '5.97', { 'checksums': ['87e7de5776dee936ef0809dcc9ac2e0d51a7580368e6defa12ec21276a676da1'], }), - ('robustbase', '0.99-0', { - 'checksums': ['437d422eec29c4345ea65efa6b2c7c21944059a79643d74f4187e06db6e35077'], + ('robustbase', '0.99-1', { + 'checksums': ['ae1a1bece804172e30c1aa6ee7dafb638b53123bed1e906b4863c2310cef7858'], }), ('zoo', '1.8-12', { 'checksums': ['e6c3862668f9e3422bced3b6fba485c76a1e91b48f5d6153822d6a61863b2fb8'], @@ -520,8 +520,8 @@ exts_list = [ ('vcd', '1.4-11', { 'checksums': ['7a54e855689e1429d46e0d4d7a956f96b0ad2fd0c7084fa023902c55849e0932'], }), - ('snowfall', '1.84-6.2', { - 'checksums': ['9b467ab2b992455c6e1aeabe375c5694761fa1cf8aaf4f003ca47102b656353b'], + ('snowfall', '1.84-6.3', { + 'checksums': ['2641932b01041e34b7afb1261f649755b4c8d6560080e0e2ee549ffdf3b8b143'], }), ('bindr', '0.1.1', { 'checksums': ['7c785ca77ceb3ab9282148bcecf64d1857d35f5b800531d49483622fe67505d0'], @@ -538,8 +538,8 @@ exts_list = [ ('mnormt', '2.1.1', { 'checksums': ['95fca70378af0afd5a388982ba5528f5b27e02157eeb9940a0a9762d11511308'], }), - ('foreign', '0.8-85', { - 'checksums': ['9079d20a1807122f3a6b5a72737d76eb4c011dd35d7099dfbf6171e84e52ecab'], + ('foreign', '0.8-86', { + 'checksums': ['a729120108b29ca9744cadd61e3e6a9dc4188a007055c22b6b9a30a676e8c3e1'], }), ('psych', '2.3.9', { 'checksums': ['04c2e81c161792aae9de458b15a373577569629c1b0a897e973bf4b3bd2019b1'], @@ -562,8 +562,8 @@ exts_list = [ ('ucminf', '1.2.0', { 'checksums': ['5add8f84aeb0910a7ebf796c9514d4a3998606c3e45fe97e55d84f000a1d6df4'], }), - ('ordinal', '2022.11-16', { - 'checksums': ['5488ad1dfa531a09d017d68d7393d376c8bc49cceeaa6a3e5f7d57b99168d493'], + ('ordinal', '2023.12-4', { + 'checksums': ['f5582ad983dfd2ffbaf1e90b49af6f2cc319953d1fcb33f31c6c6f335cbd9fa2'], }), ('jomo', '2.7-6', { 'checksums': ['3ffa2a5521d4969fe77b23cd3ab201afdf8db3f8f708b1276c33083c01d7e2da'], @@ -571,8 +571,8 @@ exts_list = [ ('bit64', '4.0.5', { 'checksums': ['25df6826ea5e93241c4874cad4fa8dadc87a40f4ff74c9107aa12a9e033e1578'], }), - ('vroom', '1.6.4', { - 'checksums': ['8d46f96b2621409838a5d0bfa86a70146cc31f375bf3c8f66b64bbdcc62ae24d'], + ('vroom', '1.6.5', { + 'checksums': ['7bdca21e58c9c5049d7445d182f59fd399193cb2f4318d083de0a559ec9b5761'], }), ('readr', '2.1.4', { 'checksums': ['98144fa48c4fa61ef8c73ede8f87a2d2c5c44e9502b7875b266eb79984fbeb0d'], @@ -580,11 +580,14 @@ exts_list = [ ('forcats', '1.0.0', { 'checksums': ['c5bb157909d92e1e1a427c0dc5cb358ea00a43a14918a9088fa4f6630962254e'], }), - ('haven', '2.5.3', { - 'checksums': ['9a5999afad09f0cf80515241b2ff19a0c480658c4bd3810638ad52762e04b7e3'], + ('haven', '2.5.4', { + 'checksums': ['9e1531bb37aa474abd91db5e0ed9e3a355c03faa65f4e653b3ea68b7c61ea835'], }), ('pan', '1.9', { - 'checksums': ['e37e184c3c1b7a34f54dd95335e6bc730fd5716d2d2dc20c24279401aa673c52'], + 'checksums': [ + ('e37e184c3c1b7a34f54dd95335e6bc730fd5716d2d2dc20c24279401aa673c52', + 'cd91232d653783ea7f34c0eebaa80c472b5501b21eea500c4c1a8e57116c6eea'), + ], }), ('mitml', '0.4-5', { 'checksums': ['056aec823187cc3793640d8a5e74d74093bae74260a975ceb098a83a52e2eeeb'], @@ -616,8 +619,8 @@ exts_list = [ ('bitops', '1.0-7', { 'checksums': ['e9b5fc92c39f94a10cd0e13f3d6e2a9c17b75ea01467077a51d47a5f708517c4'], }), - ('crosstalk', '1.2.0', { - 'checksums': ['4237baab35cd246a8a98fb9cf4ce53b6ddbc31d00742ded4edea0479613d1ea0'], + ('crosstalk', '1.2.1', { + 'checksums': ['680cf08416d6d5a1194dd85ee5695c268af9d4d01b201448e1d486c6e06014f1'], }), ('plotly', '4.10.3', { 'checksums': ['8b7a6c26443088c8aae4624e01cf726a91fee875c2e60b6c439375d1adaa5d8f'], @@ -625,8 +628,8 @@ exts_list = [ ('mixtools', '2.0.0', { 'checksums': ['854e7482230b9a5dde61bab191b78e06aa8f9b0cdfe3c03e046afa133b317e0d'], }), - ('cluster', '2.1.4', { - 'checksums': ['c6f10ceca29a176ba833f24ebf71fd451629052c2338398ba286df5689d6f5b6'], + ('cluster', '2.1.6', { + 'checksums': ['d1c50efafd35a55387cc5b36086b97d5591e0b33c48dc718005d2f5907113164'], }), ('gclus', '1.3.2', { 'checksums': ['9cc61cdff206c11213e73afca3d570a7234250cf6044a9202c2589932278e0b3'], @@ -640,8 +643,8 @@ exts_list = [ ('DBI', '1.1.3', { 'checksums': ['38bb33753da5bddb78893a5228a5d269dae3bf16f21dc5d9853ac9c24d31428d'], }), - ('gam', '1.22-2', { - 'checksums': ['fe737f45229448b98b4fe2c0a3193d4cd2de43a1415f1fa25e4ec4c5a0ca02fa'], + ('gam', '1.22-3', { + 'checksums': ['66cd688e3b86b9a4ee8ec565ebc8a19aa45e0a282e6de40ef2b78d6846787194'], }), ('gamlss.data', '6.0-2', { 'checksums': ['dbb3b6f855540928ccdbda497f8d552144895e34565799e8b595e704096db71e'], @@ -661,17 +664,17 @@ exts_list = [ ('xts', '0.13.1', { 'checksums': ['2c3907c6d0162e48d1898647105bbb32cfe0cb005788481a64ee675a941d825d'], }), - ('TTR', '0.24.3', { - 'checksums': ['4d9aef32647664be5cf965b05f21ed62cde9425fa87c21530852e05ef7aaba87'], + ('TTR', '0.24.4', { + 'checksums': ['89732b9c359bae2f41cd23db649f0897c10fab0702d780c4c25a997322710284'], }), ('quantmod', '0.4.25', { 'checksums': ['3f1896d45fbd4daea438fd2824bf4c91aba1a6729d93d20e6a0e60d2a0f95b32'], }), - ('mvtnorm', '1.2-3', { - 'checksums': ['2adadc5df5e5303d51c9b0c1881930f51ff84bfb9b1a9754354e012f982bc6c7'], + ('mvtnorm', '1.2-4', { + 'checksums': ['848287bb0016eaeab7cef474087ed4e6fadb805e26c767c816c204037d3d9aff'], }), - ('pcaPP', '2.0-3', { - 'checksums': ['1aac554f039753bf9d026090e47d66b82bf3f1f75479ed0adefa3f7bbb55d603'], + ('pcaPP', '2.0-4', { + 'checksums': ['d6c5670611d92ffa11904746a62191e6bcf294fb96afee10cb25ebbbd8458133'], }), ('pscl', '1.5.5.1', { 'checksums': ['611367c3d34c78f2d4db79e630e38d7a5df8296bd7e72d258f6a115fbbe78d5b'], @@ -679,8 +682,8 @@ exts_list = [ ('blob', '1.2.4', { 'checksums': ['d08922ebc4147d930fe4762b1b289935217308c6d3fcaa5ae028ce3f5cf2728f'], }), - ('RSQLite', '2.3.3', { - 'checksums': ['32b1d0ca464da2b61c1e7a11e979c35516a954ee94352285d9f451c630942c44'], + ('RSQLite', '2.3.4', { + 'checksums': ['73cdc81bb3cfce6f680a8ee384927867520a883e6d0705f6d6c79dccd4fbc4eb'], }), ('BatchJobs', '1.9', { 'checksums': ['5da9c381df461320ed4033523bad1ee97f88a4670d2714fec32be92964115c77'], @@ -706,17 +709,17 @@ exts_list = [ ('brglm', '0.7.2', { 'checksums': ['56098d2ce238478e7a27cacc4cdec0bc65f287fe746b38fbb1edda20c1675023'], }), - ('deSolve', '1.38', { - 'checksums': ['a0b4fe5c46ae560a3f36eb31e474b08ed85a928e86ae52dd59457409de188969'], + ('deSolve', '1.40', { + 'checksums': ['8c09ae6bb6875b569b9844eede30b790f39fc227f5c9d045fa63ce1b22f500ef'], }), ('tseriesChaos', '0.1-13.1', { 'checksums': ['23cb5fea56409a305e02a523ff8b7642ec383942d415c9cffdc92208dacfd961'], }), - ('tseries', '0.10-54', { - 'checksums': ['c3ca3263b58a22dd9f613b0be34a6f401caa9c88f0609c0b4e825f1efab4d028'], + ('tseries', '0.10-55', { + 'checksums': ['97c7822b06533de0b208be4ae7429fc208bc13290a3e109f5f197a4964144b0e'], }), - ('fastICA', '1.2-3', { - 'checksums': ['e9ef82644cb64bb49ae3b7b6e0885f4fb2dc08ae030f8c76fe8dd8507b658950'], + ('fastICA', '1.2-4', { + 'checksums': ['ed6988ea410d1a75bf4f4925edcac5a660a417e33ba0a939bc0351e534df5f2f'], }), ('R.methodsS3', '1.8.2', { 'checksums': ['822d5e61dad4c91e8883be2b38d7b89f87492046d0fe345704eb5d2658927c2e'], @@ -727,8 +730,8 @@ exts_list = [ ('cgdsr', '1.3.0', { 'checksums': ['4aa2a3564cee2449c3ff39ab2ad631deb165d4c78b8107e0ff77a9095340cc1f'], }), - ('R.utils', '2.12.2', { - 'checksums': ['fe3cf1aa8641540634e96990294d0202d4d94ec79ce73aaf78e4eda30fcb8836'], + ('R.utils', '2.12.3', { + 'checksums': ['74d6e77a95a23381a490fea54be01b653d4b938a2dc75e749a694ab48302c40c'], }), ('R.matlab', '3.7.0', { 'checksums': ['d713522268a1206555610938350137ea022e07e27fa9cdd73c02fae8d1a43dda'], @@ -793,8 +796,8 @@ exts_list = [ ('ape', '5.7-1', { 'checksums': ['8b09c71218d8aa629e43bc807b433a4e30a61847d91b2810e31c366f0fe5057a'], }), - ('RJSONIO', '1.3-1.8', { - 'checksums': ['f6f0576d3c7852b16295dfc897feebca064fe5dd29cdce7592f94c56823553f5'], + ('RJSONIO', '1.3-1.9', { + 'checksums': ['f173034b0c28873f417ee804b9e278aedd92e76eb56c7c6d71b1c02fa1193ece'], }), ('caTools', '1.18.2', { 'checksums': ['75d61115afec754b053ed1732cc034f2aeb27b13e6e1932aa0f26bf590cf0293'], @@ -808,8 +811,8 @@ exts_list = [ ('rjson', '0.2.21', { 'checksums': ['982b56d35ccc0c7db0b20c1d3eab5f5f47c620309646fdc278ff1cc3433ea2e2'], }), - ('seqinr', '4.2-30', { - 'checksums': ['faf8fe533867eeef57fddfa6592e19d5984954d0670c6c7dbeab6411d55fee4b'], + ('seqinr', '4.2-36', { + 'checksums': ['931a62a091a7aaaa5efadb1fe85f29e861e2506b75710ba3a6be9b58cb14b225'], }), ('LearnBayes', '2.15.1', { 'checksums': ['9b110858456523ca0b2a63f22013c4e1fbda6674b9d84dc1f4de8bffc5260532'], @@ -817,8 +820,8 @@ exts_list = [ ('gmodels', '2.18.1.1', { 'checksums': ['da7d48021b7cd2fd8a7cd8d0bb9658b12342a32698a13877b25ca94aa03f1e95'], }), - ('expm', '0.999-7', { - 'checksums': ['28f249b914b8dd33eee16663fc793e57afd0e301e16067bf9f27fa8e591ba0f1'], + ('expm', '0.999-8', { + 'checksums': ['79e22a9fd17392c360b21d4d42c17d968a11e3c073cb8c50f4691f4bef700552'], }), ('terra', '1.7-55', { 'checksums': ['7000bdfd8591be64921cf841ef29b2aad74661781865f29e1540e57a7d7231ec'], @@ -829,8 +832,8 @@ exts_list = [ ('spData', '2.3.0', { 'checksums': ['4b2c1f597049f2c78a7e2b7538c067e2b57e2f12291d19210b1eef702664848b'], }), - ('units', '0.8-4', { - 'checksums': ['499da1891e6167af42f501894444dcc9f5d8195017456bb6aca8aeec3515c7fc'], + ('units', '0.8-5', { + 'checksums': ['d95e80af760b053e10a1e33ce1f0c1280a84e84bd4b1d9c34d1fe9fc153603b1'], }), ('classInt', '0.4-10', { 'checksums': ['c3561eafbc493ac02840191d4f1e4d2ef437ca8eb20f41fc5eca28f00ee42b8b'], @@ -841,8 +844,8 @@ exts_list = [ ('rncl', '0.8.7', { 'checksums': ['1d876e4f5f2b8a24cc3ea1002c29eedbc0ca96011b0fa15b085e5b75cfc7993a'], }), - ('XML', '3.99-0.15', { - 'checksums': ['98a14694670a8a1d9a03e184ec60203180fb8eca9fb3da086693b01ed7003b3e'], + ('XML', '3.99-0.16', { + 'checksums': ['350d37bab99ba3dac03313fa3901cc053ab2d962a94a9c3404fb3ad0a91cc95b'], }), ('reshape', '0.8.9', { 'checksums': ['791178b3b5f30c166ebf5910a5ab1c67b54e7023b10b6c2e2ddd1cc02a1e4048'], @@ -964,8 +967,8 @@ exts_list = [ ('optimParallel', '1.0-2', { 'checksums': ['0f9bc62c23d9005130f2892bf5eaecf308fa48a727bdd5e19b7dcd1d95f30a9d'], }), - ('phytools', '1.9-16', { - 'checksums': ['1b800b722a17679998efff40ab26adb127f61fcd57ea486ec1e129f34c79b29c'], + ('phytools', '2.0-3', { + 'checksums': ['a10f5ceba81d5f8dc8e1b80e4cd00c7878842ee312ecd266809f60f70b23e82e'], }), ('geiger', '2.0.11', { 'checksums': ['dcc5a0a988439110078867e0aaf09b048e27db7f02e4cbdfe35783611fde3f69'], @@ -979,11 +982,11 @@ exts_list = [ ('manipulateWidget', '0.11.1', { 'checksums': ['5b73728d7d6dcc32f32d861375074cd65112c03a01e4ee4fa94e21b063fdefb6'], }), - ('rgl', '1.2.1', { - 'checksums': ['d12a3f35527f260f8d393ae842c7705df5656669a72907f78aa64a363c6dcb9b'], + ('rgl', '1.2.8', { + 'checksums': ['e535e738702d0babe043c1fec3d358c7bfdfe202ad95d68971b28ad7a81717f4'], }), - ('Rtsne', '0.16', { - 'checksums': ['52a05adc826c28212e97d11c54eba3fec45d14eb52039c0f47f62a8e338ffbd5'], + ('Rtsne', '0.17', { + 'checksums': ['3aae6814d6c6d406785145f07374135652f2b26a58690dfd4bfbc8365dc5590b'], }), ('labdsv', '2.1-0', { 'checksums': ['99da92515e9aa49ea7f3df7e301ef714c57054a3838139cd3fd798531d625cd1'], @@ -1009,8 +1012,8 @@ exts_list = [ ('coin', '1.4-3', { 'checksums': ['8a6302dbf3ef570cd9f69ce7b6cd3d3b928dc776f840bbd767af132e0080b974'], }), - ('party', '1.3-13', { - 'checksums': ['def05e7f0c59f1b1ecf0ab3929cff75ae8c2691aaf52292cad4371281b897e7b'], + ('party', '1.3-14', { + 'checksums': ['bc30975c97826aa68a839df63a2fc977473a8a144ec66ae95618e385da470867'], }), ('inum', '1.0-5', { 'checksums': ['e696b7e0b31b3bbf405112e60691b6a72fedcaa02e08ee517c59f6bf9cd36bbd'], @@ -1018,14 +1021,14 @@ exts_list = [ ('partykit', '1.2-20', { 'checksums': ['63509aa3ed2d7417ad284c037cef66bc837fdb7a97967957e79b9fee8ed2e0da'], }), - ('mboost', '2.9-8', { - 'checksums': ['d64c6bc630f9279ae5a672e86b296e947ab304df9e22a6af518a7d5a627fd1cb'], + ('mboost', '2.9-9', { + 'checksums': ['bf3a83f124d28bd9167a6aafa4cd25f107d3db8a1e7e1d5ca13065dd416aecaa'], }), - ('msm', '1.7', { - 'checksums': ['7f89f8e47966919e49ef8dfe1f9c82ac6553b2f404bb03840da5f42e73dd0db0'], + ('msm', '1.7.1', { + 'checksums': ['d134782b966eed33742819595119ab1a61bec4416cc3fa7630a0f34c4e7f785b'], }), - ('nor1mix', '1.3-0', { - 'checksums': ['9ce4ee92f889a4a4041b5ea1ff09396780785a9f12ac46f40647f74a37e327a0'], + ('nor1mix', '1.3-2', { + 'checksums': ['463636ceab6512e8ef0a57dbbba23461e9da0c0bf5a6c27424675cdd209ea208'], }), ('np', '0.60-17', { 'checksums': ['d97957cb234ec2e570fc2d02d305eadff3d71939484b3d1054ed8b67a3427f36'], @@ -1081,8 +1084,8 @@ exts_list = [ ('rbibutils', '2.2.16', { 'checksums': ['9c7c0fba47f63b1749005311c7174b40e72d95c863a67b736a84b8ff375a2aaf'], }), - ('Rdpack', '2.5', { - 'checksums': ['4d4db2e1431feb9bd785eced8b44ca5af37b866992ec17dc28b605aee8e0c877'], + ('Rdpack', '2.6', { + 'checksums': ['6a75d98c651778358732429258056a327def2be4d2af244a8daaac5b500c220a'], }), ('dfidx', '0.0-5', { 'checksums': ['37521940b35d62773a4d127c94148aadf207f400a686f2212a22d96e53086a0a'], @@ -1120,8 +1123,17 @@ exts_list = [ ('locfit', '1.5-9.8', { 'checksums': ['0d0a9bfb32e50e8f8f97de771f91b17db1db7c5be35027f2d7840a7293e11de3'], }), - ('GGally', '2.1.2', { - 'checksums': ['30352f36bf061bc98bdd5fa373ea0f23d007040bd908c7c018c8e627e0fb28e5'], + ('patchwork', '1.1.3', { + 'checksums': ['e976424f4bd88e075f2ca6836db2aa1eb5fa7ad6a20ad0a34a4d5047d59ad71e'], + }), + ('broom.helpers', '1.14.0', { + 'checksums': ['cdc12f35bfed5d3da55ac7c7e09974584c8e4cb7a2147429c53b7b1176c76a93'], + }), + ('ggstats', '0.5.1', { + 'checksums': ['2c6a563fb7072e820837d052855aa475a3486b9519a06a63678166c5af6a9ec9'], + }), + ('GGally', '2.2.0', { + 'checksums': ['dce20b47d639aa1ad63d9f14aae48c554d1e787758876c9842bf0e093bab80dd'], }), ('beanplot', '1.3.1', { 'checksums': ['49158aee3449108fd857ef43fb777f55a2b975b350a4a710788996ad19dd15ad'], @@ -1171,8 +1183,8 @@ exts_list = [ ('ggrepel', '0.9.4', { 'checksums': ['81abb47270593709587480ffbc88dce3d3f695bd6f1164729311b37c50d7cf3e'], }), - ('DT', '0.30', { - 'checksums': ['2f1a53e32a9b493efc9041758810c6a744ebb17ad7a942b376389b7e95ff698e'], + ('DT', '0.31', { + 'checksums': ['956f42a784d1c426ddc75ebfb22a854886e2d6ae8b7014b95669aed0cd699c87'], }), ('estimability', '1.4.1', { 'checksums': ['c65aaf1e452f3947013d3ce05ae674d48492081f615a942592dc91db780f1124'], @@ -1195,8 +1207,8 @@ exts_list = [ ('prabclus', '2.3-3', { 'checksums': ['005d000a9ac357e670de26e5b8fc4ddb1617351275fa43bf6d2e88b8774358c1'], }), - ('diptest', '0.76-0', { - 'checksums': ['508a5ebb161519cd0fcd156dc047b51becb216d545d62c6522496463f94ec280'], + ('diptest', '0.77-0', { + 'checksums': ['c3c835155e6bddce730623c4e9b4eeed00624c26d493076e79db203a55f8ca32'], }), ('trimcluster', '0.1-5', { 'checksums': ['9239f20e4a06ac2fa89e5d5d89b23a45c8c534a7264d89bede8a35d43dda518b'], @@ -1219,8 +1231,8 @@ exts_list = [ ('doRNG', '1.8.6', { 'checksums': ['5032ade083f1f9841ac2e8d4426faa07f189c25c0c338fa155c5dadbe5507de2'], }), - ('nleqslv', '3.3.4', { - 'checksums': ['2783e7525bcd155dd8cedf5a41b7db65cd1fa0e095cd937371448316f3930fcf'], + ('nleqslv', '3.3.5', { + 'checksums': ['1298172d2fe67d8d6b742ce7e792f6b897f081da5c94d34f14970ab531f04b3a'], }), ('Deriv', '4.1.3', { 'checksums': ['dbdbf5ed8babf706373ae33a937d013c46110a490aa821bcd158a70f761d0f8c'], @@ -1291,8 +1303,8 @@ exts_list = [ ('spatstat.sparse', '3.0-3', { 'checksums': ['6bbc4e42ae71eece63e8c3e390068a84eeeb6cd4f6bdb555d8815aa2ed988d69'], }), - ('spatstat.random', '3.2-1', { - 'checksums': ['925421aeb7befa88a1f28d2bfa113630099b5edb75e04b04d3b0ed9bb1af31dc'], + ('spatstat.random', '3.2-2', { + 'checksums': ['48c6ee4c51ac50e4bf939118f9e5f94470529c0ee608b628ce4de79bfe813a07'], }), ('spatstat.core', '2.4-4', { 'checksums': ['e38c39efe8b14d6e8fdbee8dd870b90c52f78ea571ab7988fd3685f48347d13b'], @@ -1309,8 +1321,8 @@ exts_list = [ ('spatstat', '3.0-7', { 'checksums': ['33779f4a4f881e98c4fa2f8faac8d3a8eb2d45149992cde77fb3a83a62b6cec0'], }), - ('pracma', '2.4.2', { - 'checksums': ['1d50337fdfd9a8d704a64f01dae5d52b9a2bd6d872fdaa4a6685b8d3bde89c16'], + ('pracma', '2.4.4', { + 'checksums': ['1a4ef3af2197f999dbaa614bf5a70f09ec463d8c91feb5aa0d995de24ec6ba7f'], }), ('RCurl', '1.98-1.13', { 'checksums': ['05a52f6329b4ea91dc92ae23b2528b99d654532c8291712bd591521d6eacf306'], @@ -1372,8 +1384,8 @@ exts_list = [ ('unbalanced', '2.0', { 'checksums': ['9be32b1ce9d972f1abfff2fbe18f5bb5ba9c3f4fb1282063dc410b82ad4d1ea2'], }), - ('RSNNS', '0.4-16', { - 'checksums': ['1a215fdb04a39e94eb3c21a9e66dff76f089d3310cb585cdfba5a66253a232d8'], + ('RSNNS', '0.4-17', { + 'checksums': ['424557d7326889e09e31e04d2a9b7224bed0bb4aa6f9e5433d7ce4fe04a35afc'], }), ('abc.data', '1.0', { 'checksums': ['b242f43c3d05de2e8962d25181c6b1bb6ca1852d4838868ae6241ca890b161af'], @@ -1390,20 +1402,20 @@ exts_list = [ ('EasyABC', '1.5.2', { 'checksums': ['326c92e003866728729dc61473f168c3663106b1229e8513abd7ce520c18689c'], }), - ('git2r', '0.32.0', { - 'checksums': ['1b5d254c0c684a56751d26d482823d0006964eb1f55c558f365d037f5e984671'], + ('git2r', '0.33.0', { + 'checksums': ['1855b68d0e22566f1c255fdcb8e13282a2bebf55cbc804a8591dc8047f0e1895'], }), ('clisymbols', '1.2.0', { 'checksums': ['0649f2ce39541820daee3ed408d765eddf83db5db639b493561f4e5fbf88efe0'], }), - ('covr', '3.6.3', { - 'checksums': ['c0ce1846a4d12cd7d365ed1844c221cd8a40f50ea2c6d7d87f27c3e7deffa29e'], + ('covr', '3.6.4', { + 'checksums': ['2b6204036510c629d0b1d58daaee34d4e38baf54164f8d4c9afd6d6b1fb1862a'], }), ('Rook', '1.2', { 'checksums': ['c79ae4b5164daffd4e7cf74bd23c1b08a3948bf343dfe9570d57f39cbf8e5f62'], }), - ('Cairo', '1.6-1', { - 'checksums': ['e64dcfc4d7081f909c947643ff08241e14a4e6e68bf9c8459c6d64ede0c23714'], + ('Cairo', '1.6-2', { + 'checksums': ['6b6f4c6f93178a1295860a9dc6dc45e60fec70f684d5c8d0b59baf5b8dd44d62'], }), ('RMTstat', '0.3.1', { 'checksums': ['bb4827d76106f5377044cd2b230208881eb714cae65f512f4b95988d9b162ae4'], @@ -1423,8 +1435,8 @@ exts_list = [ ('misc3d', '0.9-1', { 'checksums': ['a07bbb0de153e806cd79675ed478d2d9221cff825654f59a71a9cf61f4293d65'], }), - ('multicool', '0.1-12', { - 'checksums': ['487d28d9c3c606be0cf56e2d8f8b0d79fb71949c68886ea9251fbb1c01664a36'], + ('multicool', '1.0.0', { + 'checksums': ['4fb08e97d59da8d53730bc72ddabcb04f84ac7965f1e590e5ed1973f7861913d'], }), ('plot3D', '1.4', { 'checksums': ['d04a45197646fb36bc38870c1c2351cb56b912bd772b1ebfa25eaeef35fda9c0'], @@ -1450,8 +1462,8 @@ exts_list = [ ('clusterRepro', '0.9', { 'checksums': ['940d84529ff429b315cf4ad25700f93e1156ccacee7b6c38e4bdfbe2d4c6f868'], }), - ('data.tree', '1.0.0', { - 'checksums': ['40674c90a5bd00f5185db9adbd221c6f1114043e69095249f5fa8b3044af3f5e'], + ('data.tree', '1.1.0', { + 'checksums': ['b0b554e9220f7abeb8e40af7617802509bf49aa4b2b58882330cde54c20bad63'], }), ('influenceR', '0.1.5', { 'checksums': ['8164e4820f769032fab97c9ca486d33e83309641fcc4875065d8f5a43b20f58c'], @@ -1465,8 +1477,8 @@ exts_list = [ ('DiagrammeR', '1.0.10', { 'checksums': ['72f6a89708ae15277acbbab2dded5f461b6bdc9c5893112860fb34c8df3ff890'], }), - ('randomForestSRC', '3.2.2', { - 'checksums': ['0b39ed80b5a86ab902e707b3910ca24051331003a26cfd6f81db52faf38157cb'], + ('randomForestSRC', '3.2.3', { + 'checksums': ['8ca24f235f4e0036d6c767e0b7c8597c404b91ab7cd88d4a6a1c3accd46d4f6f'], }), ('sm', '2.2-5.7.1', { 'checksums': ['ea0cc32eb14f6c18beba0bede66ed37bc5341bd3f76c1a7ae56d7254693e1457'], @@ -1498,14 +1510,14 @@ exts_list = [ ('statnet.common', '4.9.0', { 'checksums': ['a485dc6e363a993d87336fbd1027adb1cd7b9103447fd63904cae4dc3bfc2dd7'], }), - ('network', '1.18.1', { - 'checksums': ['c80d70352967d8480cfa801f2a31bfe130e2ad4dbf2c07b0046e57f3013cd243'], + ('network', '1.18.2', { + 'checksums': ['bf33892db9cabba9cd1597f09ef0e1277d63520a8cebd2d919e0d41fc706a27b'], }), ('rle', '0.9.2', { 'checksums': ['803cbe310af6e882e27be61d37d660dbe5910ac1ee1eff61a480bcf724a04f69'], }), - ('sna', '2.7-1', { - 'checksums': ['60daf217c15b6fa335804600dc1e6eb73594b6e794faa4f82a2275c4d8570ae3'], + ('sna', '2.7-2', { + 'checksums': ['7b214626967feb9389e743e50b919dd4b00e7436b2355fd068c873c45ac7a7cd'], }), ('glasso', '1.11', { 'checksums': ['4c37844b26f55985184a734e16b8fe880b192e3d2763614b0ab3f99b4530e30a'], @@ -1571,8 +1583,8 @@ exts_list = [ ('bmp', '0.3', { 'checksums': ['bdf790249b932e80bc3a188a288fef079d218856cf64ffb88428d915423ea649'], }), - ('tiff', '0.1-11', { - 'checksums': ['b8c3ea15114d972f8140541c7b01f5ce2e5322af1f63c1a083aaf766fd3eec75'], + ('tiff', '0.1-12', { + 'checksums': ['df10ce719f92597572763182f7cb03686b8d7fb9123d036a4daf5b10738e815c'], }), ('readbitmap', '0.1.5', { 'checksums': ['737d7d585eb33de2c200da64d16781e3c9522400fe2af352e1460c6a402a0291'], @@ -1580,11 +1592,11 @@ exts_list = [ ('imager', '0.45.2', { 'checksums': ['49848bcb03dd3fc3605799893d39986b521921faaa5647815274eb204bb9bf56'], }), - ('signal', '0.7-7', { - 'checksums': ['67a015c46d67de7548c3adb83a1b22524de75501a861d91668c3c2ea761a4e61'], + ('signal', '1.8-0', { + 'checksums': ['89cba854167a2b051a58cf3b73ccbf74eeb47c890ac39720611cd41f86b94684'], }), - ('tuneR', '1.4.5', { - 'checksums': ['f5d20d2dfa0e5ea08465d9fd57675ced3e20aa55b8904a32265766ca2ab252fb'], + ('tuneR', '1.4.6', { + 'checksums': ['c5441fb56dc84cafb6aa6b47d83839da1e1a4e5b19eafbb63b268d1a660647d0'], }), ('pastecs', '1.3.21', { 'checksums': ['8c1ef2affe88627f0b23295aa5edb758b8fd6089ef09f60f37c46445128b8d7c'], @@ -1601,8 +1613,8 @@ exts_list = [ ('gsw', '1.1-1', { 'checksums': ['d2a21dbcc3b285163d9cf1bc649a3de1bb1e713c64e4cb6cbc3e613c43f4dd82'], }), - ('wk', '0.9.0', { - 'checksums': ['10fba9d5d24e9942c1b9cfdaf2a862d023f7d5a8d7c350f22483723d6e7bb9da'], + ('wk', '0.9.1', { + 'checksums': ['b7a0af51c0e04175dc359d1fb0e852ac55097b4105d876b58d3cf995c0f2bf7b'], }), ('s2', '1.1.4', { 'checksums': ['be0b4925eaade52cf85b1cb6e851430bd4fe6ca30722dffcc3f9107e7a4e404c'], @@ -1610,8 +1622,8 @@ exts_list = [ ('sf', '1.0-14', { 'checksums': ['8b535648d537a1a95920c938e43692c1dfaac8d293ff3f506334001352c339f7'], }), - ('oce', '1.8-1', { - 'checksums': ['22910a5a88b43ae60f12f3d4d4627777c54910c0fef71fa5c537e24af39fde67'], + ('oce', '1.8-2', { + 'checksums': ['cf5fee1b44f1f972d496c005993eab5267878177c4ce8bf74a3b018047a33fa9'], }), ('ineq', '0.2-13', { 'checksums': ['e0876403f59a3dfc2ea7ffc0d965416e1ecfdecf154e5856e5f54800b3efda25'], @@ -1622,14 +1634,14 @@ exts_list = [ ('memuse', '4.2-3', { 'checksums': ['906fdff665e2aed0e98ee3181233a5c62bd521abfce6ab1cb215c71c95d12620'], }), - ('pinfsc50', '1.2.0', { - 'checksums': ['ed1fe214b9261feef8abfbf724c2bd9070d68e99a6ea95208aff2c57bbef8794'], + ('pinfsc50', '1.3.0', { + 'checksums': ['971627cf4567fdb34db26010f2db44cfac5ff07f327d3247e778638cc4e849bf'], }), - ('vcfR', '1.14.0', { - 'checksums': ['8576dbd2e5a707dabc20acbbea3fe18b6a783910e622423ac203609a386204cb'], + ('vcfR', '1.15.0', { + 'checksums': ['df17e48b961d96f2a78a1a15037df674f57d0445f2669e401543d8082f0b49fa'], }), - ('glmmML', '1.1.5', { - 'checksums': ['17d13d90eaea3ba3477ac2453ea5ced8d2cc20b2d00d097003e4f3b2ad79dde9'], + ('glmmML', '1.1.6', { + 'checksums': ['2710f56530de37a52a042645da76c8af075d66e04eaee9e18bf1e5f32f0b7958'], }), ('cowplot', '1.1.1', { 'checksums': ['c7dce625b456dffc59ba100c816e16226048d12fdd29a7335dc1f6f6e12eed48'], @@ -1640,11 +1652,11 @@ exts_list = [ ('sn', '2.1.1', { 'checksums': ['f9f6b56d91dc7cb18dc8308d0875b9648c90b268d1aaf8f4c5164ff016df22bd'], }), - ('tclust', '1.5-4', { - 'checksums': ['2b55da5e351c5054c9627f57a43084518a138a1d8097e35a364db0eff63471a8'], + ('tclust', '1.5-5', { + 'checksums': ['fc8dbf2626cab50a06e037423fa005431202edd6782ea770c9a002abb30e5496'], }), - ('ranger', '0.15.1', { - 'checksums': ['4d65d9ee7c5f2704a0e303a27222c02aa53e49f3c28dc0b4451371e37ada2b2e'], + ('ranger', '0.16.0', { + 'checksums': ['0395f93afdb807a7882c1fa8f183a26a871c5168ea0903566951298ef1138589'], }), ('hexbin', '1.28.3', { 'checksums': ['0eb33511c1a4ff29dda8b89fee420ea7041033f981c7f16484c9f504d749de5f'], @@ -1694,8 +1706,8 @@ exts_list = [ ('pamr', '1.56.1', { 'checksums': ['d0e527f2336ee4beee91eefb2a8f0dfa96413d9b5a5841d6fc7ff821e67c9779'], }), - ('WeightSVM', '1.7-11', { - 'checksums': ['498f2d1d8329b7309b373c18afcdad8ed9d3d54169f310de3264a65364406e69'], + ('WeightSVM', '1.7-13', { + 'checksums': ['5e356189885390f47f21eedfb93726e2920b679da480a07823c44012b689aaa5'], }), ('mpath', '0.4-2.23', { 'checksums': ['1608215dd7826dde0cb7c8890375568d286270024d52f01cb12c9402c817ed99'], @@ -1781,8 +1793,8 @@ exts_list = [ ('gmm', '1.8', { 'checksums': ['7099fc5c6a9069924392995a726190e8d62f6e55375ef356084b0c73346d85d8'], }), - ('tmvtnorm', '1.5', { - 'checksums': ['1c7a606bdce4319a6fdb4180fef499c293df3412d8583e296869521ece5460fe'], + ('tmvtnorm', '1.6', { + 'checksums': ['2d9b2c5330d11a62384b4c0c1c012be34806b48683898045a4a40fdb9a8e1bba'], }), ('IDPmisc', '1.1.20', { 'checksums': ['bcb9cd7b8097e5089d1936286ef310ac2030ea7791350df706382ba470afc67f'], @@ -1796,14 +1808,14 @@ exts_list = [ ('qrnn', '2.1', { 'checksums': ['4f597c9b1437388716db232bf4a33ad5afeca6aa261aaed6eb1cf6938fde8aa6'], }), - ('TMB', '1.9.6', { - 'checksums': ['00da066f99fbd07910b17ff26207c73c26935a23d71cb5efabf10922755603ea'], + ('TMB', '1.9.9', { + 'checksums': ['04398a620d7e383793e2e8e139e680289138294675be378c8d78a7e9aeee674c'], }), ('glmmTMB', '1.1.8', { 'checksums': ['4248f6c37a2f82543bc0160c71d6d409ff742a4b1b29b417a42f34460489bd14'], }), - ('gmp', '0.7-2', { - 'checksums': ['7c9528b484197d13e69e91f8a1c9957729997b9e71e44ebebbf173a587042d8b'], + ('gmp', '0.7-3', { + 'checksums': ['606d0f7fbbf81ad61dcfa5e83002fc274a5ebf6b4ff5c9a9b69f141f886ac665'], }), ('ROI', '1.0-1', { 'checksums': ['d4ff143304f1422ecc455eb1a00896530193c1a227ed7f3e9da2baa95d921616'], @@ -1856,8 +1868,8 @@ exts_list = [ ('cghFLasso', '0.2-1', { 'checksums': ['6e697959b35a3ceb2baa1542ef81f0335006a5a9c937f0173c6483979cb4302c'], }), - ('svd', '0.5.4.1', { - 'checksums': ['6b0e6f3dfda216882e7bddb2bddf206dbb081147b77c368476333a8f55d9962b'], + ('svd', '0.5.5', { + 'checksums': ['e20139794ad1a8c7d7fdffb8dac068c6fbdc8f0b65929341cb5c4d2ff1f98cc6'], }), ('Rssa', '1.0.5', { 'checksums': ['475819636afb330a4467722b0a664fa54d6114d782b681f681ccb123f3be522d'], @@ -1874,8 +1886,8 @@ exts_list = [ ('gapfill', '0.9.6-1', { 'checksums': ['22f04755873e34a9077bb1b1de8d16f5bc56cb8c395c4f797f9ad0b209b1b996'], }), - ('gee', '4.13-25', { - 'checksums': ['e140881e2febe793a24086a2d179062b9995db901257d678f85d220441400e89'], + ('gee', '4.13-26', { + 'checksums': ['9a8553b5ab51f3aa929ce80597b0b5cecd8a8bdb2ea3c578edd1c608c5c6438c'], }), ('Matching', '4.10-14', { 'checksums': ['bfb4286a5da29dcfcc4ddee6299e2d91c0de177720b060b8946fd16f32f6a6b0'], @@ -1898,8 +1910,8 @@ exts_list = [ ('rlemon', '0.2.1', { 'checksums': ['4a18fa034f197c68daf48daf25c0e41f1b8acbe71d030c6bc1f55e3062a10375'], }), - ('optmatch', '0.10.6', { - 'checksums': ['2b7661567fdfbdb39dae3779b4b7dea2b9eb759d3117311b3a7936b10cce1d35'], + ('optmatch', '0.10.7', { + 'checksums': ['330fc251ebe6901a6fbf931457943ee113bc882f786b2b14d837cd59f4327d1d'], }), ('SPAtest', '3.1.2', { 'checksums': ['b3d74ed2b0a6475a9966dd50eb5d363d0b2985636271dfbf82f0472b8d22b9f4'], @@ -1972,8 +1984,8 @@ exts_list = [ 'preinstallopts': "unset LIBS && ", 'checksums': ['b53281e2cf57447965849748e972de2f7fe8df0cee3538ef5813c33c7ed2302b'], }), - ('DTRreg', '1.7', { - 'checksums': ['f0fad2244d960cec8fc33d9a1078df359ceb0aadff980ce6149aa9f01c62223b'], + ('DTRreg', '2.0', { + 'checksums': ['88f35521b755ed73aebc7d4139ed149487731cdd8a97c0efa4c048b65dafe84b'], }), ('pulsar', '0.3.11', { 'checksums': ['ee82ef25b2be4bbac713c34bca85d8ea1fa0e32eb8c800dad7256e145fc79393'], @@ -1990,8 +2002,8 @@ exts_list = [ ('compositions', '2.0-6', { 'checksums': ['45d374ebfdcc2c9f6cc738d196caf83a2297ed2aefe2cc99007fcbeb78a61c34'], }), - ('clustree', '0.5.0', { - 'checksums': ['a87f65dc0489af77807ed27de67e905699f21f50bcfba6a84353b9a846a84ac1'], + ('clustree', '0.5.1', { + 'checksums': ['b5f2496e596e3fd140ace69c4837085e13f3abb850f5eb57d496380691fdd117'], }), ('tweedie', '2.3.5', { 'checksums': ['983c745fee5a780d46e8dd04c2eb1c10cb2e222d3679654f0d6934d3db7b1c3e'], @@ -2017,8 +2029,8 @@ exts_list = [ ('trust', '0.1-8', { 'checksums': ['952e348b62aec35988b103fd152329662cb6a451538f184549252fbf49d7dcac'], }), - ('lpSolveAPI', '5.5.2.0-17.10', { - 'checksums': ['4cb7ef25d32c1dace99455d5858bac0c57acca29e3a8e206b36e231e13da10b9'], + ('lpSolveAPI', '5.5.2.0-17.11', { + 'checksums': ['b08d6cae4fc17575adf5df0113ea5f4f819bb2c7f87987e0d66c8eabfc933fa4'], }), ('ergm', '4.5.0', { 'checksums': ['3372c7bd35b640518d65a62615cb7029652a65fe2851748847f1c16b657b6351'], @@ -2053,8 +2065,8 @@ exts_list = [ ('dtangle', '2.0.9', { 'checksums': ['c375068c1877c2e8cdc5601cfd5a9c821645c3dff90ddef64817f788f372e179'], }), - ('mcmc', '0.9-7', { - 'checksums': ['b7c4d3d5f9364c67a4a3cd49296a61c315ad9bd49324a22deccbacb314aa8260'], + ('mcmc', '0.9-8', { + 'checksums': ['6a06440d4b58e8a7f122747d92046ff40da4bb58a20bf642228a648a0c826ea7'], }), ('MCMCpack', '1.6-3', { 'checksums': ['cb14ba20690b31fd813b05565484c866425f072a5ad99a5cbf1da63588958db3'], @@ -2135,8 +2147,8 @@ exts_list = [ ('medflex', '0.6-10', { 'checksums': ['bd89a8fe939f3becd71a9dab30fe27fa43c96572d8309d2c1a70633117d4cb33'], }), - ('Rserve', '1.8-11', { - 'checksums': ['9dfb1d68493f8cee5d2e12a1bfa604404834e11809f4c908d65b9100a9af1b85'], + ('Rserve', '1.8-13', { + 'checksums': ['7e5d312fca8029d746f60e7d9e701129561942f97dfc33b036b123f159d69a4c'], }), ('spls', '2.2-3', { 'checksums': ['bbd693da80487eef2939c37aba199f6d811ec289828c763d9416a05fa202ab2e'], @@ -2216,8 +2228,8 @@ exts_list = [ ('SignifReg', '4.3', { 'checksums': ['f755808fcb618582acb862729b20e267d9c2214f22e6e7a0c8d29073d8faa7b8'], }), - ('bbmle', '1.0.25', { - 'checksums': ['86a8c69902fbf6caf337f9bc532afe89dc2a59dd24287a2423d781797010b255'], + ('bbmle', '1.0.25.1', { + 'checksums': ['d92a0cf819fe4c08b8eb17f5e03275c8accde7f3b54f990cbba5ab926575b60b'], }), ('emdbook', '1.3.13', { 'checksums': ['26044b7ea1b42304b4dfde48afa94dd487acf979da4db2bf670ba41222083c19'], @@ -2231,8 +2243,8 @@ exts_list = [ ('tictoc', '1.2', { 'checksums': ['f05ea4b4142a90b0dc5d10356be3748625ef86bbd0e4399c56455654165ff20c'], }), - ('ISOcodes', '2022.09.29', { - 'checksums': ['4bae4fdf661a1c29694f9702240b84c933518ef70e66312cbaddaf35562d4fe5'], + ('ISOcodes', '2023.12.07', { + 'checksums': ['73631fec5822d256e91d7b929ab7f5d7c2312749990d4031f65e0408c366d90e'], }), ('stopwords', '2.3', { 'checksums': ['c5ec1c6ab1bad1786d87d7823d4b63abc94d2fd84ed7d8e985906e96fb6321b2'], @@ -2249,8 +2261,8 @@ exts_list = [ ('hunspell', '3.0.3', { 'checksums': ['fdaa1473a62dff2a5923b9bd958d87e546069ca22ce113f44e88c761338442f3'], }), - ('topicmodels', '0.2-14', { - 'checksums': ['acd40ff8ea973692bd9e9acf175afc5c74ccf54b93297a0a054c15caa44b5cc9'], + ('topicmodels', '0.2-15', { + 'checksums': ['71b50f78e4d7b95b5c3663d766eb15ad2061cc49d58436dc3aa56960cdaf77d0'], }), ('tidytext', '0.4.1', { 'checksums': ['526750a2cc8ac7b65be1093f4c9186aa27f0a22f00023a6d6b3b878e1310c815'], @@ -2288,13 +2300,13 @@ exts_list = [ ('StanHeaders', '2.26.28', { 'checksums': ['938a8d96d3a64357b5fee73eea2923a2a2292a062ff516ea8c720756ec7e3de8'], }), - ('V8', '4.4.0', { + ('V8', '4.4.1', { 'installopts': '--configure-vars="INCLUDE_DIR=$CPATH LIB_DIR=$LIBRARY_PATH"', 'preinstallopts': "export CPATH=$EBROOTNODEJS/include/node:$CPATH && ", - 'checksums': ['635bc20fb90206c357b0eba53d8af0789783241d300f0190fce9d6d0614c8f46'], + 'checksums': ['5b6dd6133d83f3cc7297d0369706070f26c376d6ce6fb4cfcf2ad5308abd3a89'], }), - ('QuickJSR', '1.0.7', { - 'checksums': ['3161c243fed64ea215084b44141bea9ee416fa1ef3910aeb78abe55f3d3e9893'], + ('QuickJSR', '1.0.8', { + 'checksums': ['7697faa26d7c67b7d218ae6be74c86e7249842d6f0ea8a3932920825398a9e81'], }), ('rstan', '2.32.3', { 'checksums': ['a29d9e1abf6d7c7b5ce98e10e60f14f18bad076aff4c7affa4b6263945ba549d'], @@ -2335,11 +2347,8 @@ exts_list = [ ('intrinsicDimension', '1.2.0', { 'checksums': ['6cc9180a83aa0d123f1e420136bb959c0d5877867fa170b79536f5ee22106a32'], }), - ('patchwork', '1.1.3', { - 'checksums': ['e976424f4bd88e075f2ca6836db2aa1eb5fa7ad6a20ad0a34a4d5047d59ad71e'], - }), - ('leiden', '0.4.3', { - 'checksums': ['6a464b4b860e621749b3b701bb7ceb07e23c1a36be241c3e13b18105eb980938'], + ('leiden', '0.4.3.1', { + 'checksums': ['a9ecbbcfa2724d8fdd0133af569278e036b25b6e2cbb23d453092cc6b3fc30e2'], }), ('sctransform', '0.4.1', { 'checksums': ['5f6be7f8be543e4c32c8007207b603a750881459370b7bb5afd63e8c8fabf171'], @@ -2446,8 +2455,8 @@ exts_list = [ ('coxme', '2.2-18.1', { 'checksums': ['aef691d74ee75095c43d7b6ab27e01641382cfb349a8eefad972c745ac0531f5'], }), - ('AICcmodavg', '2.3-2', { - 'checksums': ['899e5edb0858c218184d01b7de32dee991090c6593ee60669767b96b7037f353'], + ('AICcmodavg', '2.3-3', { + 'checksums': ['4055b5f1fc12917b9f812c056e6a2dbf23bbd0169e468f567306ddf29d699f7a'], }), ('pacman', '0.5.1', { 'checksums': ['9ec9a72a15eda5b8f727adc877a07c4b36f8372fe7ed80a1bc6c2068dab3ef7c'], @@ -2518,8 +2527,8 @@ exts_list = [ ('mda', '0.5-4', { 'checksums': ['f25f7f28807d0fa478b1b55eb9d026ebc30577d9d5ff288f9abfe1f3fdb8a759'], }), - ('xgboost', '1.7.5.1', { - 'checksums': ['4ec0833f206f84e5983e9f373ea64903bec488f751fba6f75a6f4702b1c965bc'], + ('xgboost', '1.7.6.1', { + 'checksums': ['f23dd6b6ca7a58ef3236d8bdc7b4928591507cf41133fc8053d32ab91b3d3d60'], }), ('biomod2', '4.2-4', { 'checksums': ['c28163075df90a90fc1939e9ff24d40bace7de611ff7ddfe027e0ff980e7c64f'], @@ -2566,8 +2575,8 @@ exts_list = [ ('mhsmm', '0.4.21', { 'checksums': ['293544afb194934b1d58cf88c6f8c372f537745514b6e428cf83ae62e87d2bba'], }), - ('dbarts', '0.9-23', { - 'checksums': ['e1ac65fd89c321895d4f0e77d9cd8dcda5f1103485008afd4e19e6c9137557a3'], + ('dbarts', '0.9-25', { + 'checksums': ['39a78228ead17c92bd88fe5f959c888412a22a7cbbc0edfa9c09072b4182d870'], }), ('proftools', '0.99-3', { 'checksums': ['e034eb1531af54013143da3e15229e1d4c2260f8eb79c93846014db3bdefb724'], @@ -2596,10 +2605,6 @@ exts_list = [ ('outliers', '0.15', { 'checksums': ['cc31d7f2faefd2c3a27f8ce78c7e67d3b321dcd6690292fad2468125e5e635fb'], }), - # elementR is too old and doesn't work anymore with other extensions, such as gdata and readODS - # ('elementR', '1.3.7', { - # 'checksums': ['4275f88f372a2efe96ccd0afc20f4f12be92f28c7db35c68b80bb0ffb2c2ab07'], - # }), ('gWidgets2', '1.0-9', { 'checksums': ['d4d9ef7b2788efeb8209aa8dd610af4cd86286392fbdf9ea70bcfeafda95d4c5'], }), @@ -2678,8 +2683,8 @@ exts_list = [ ('gld', '2.6.6', { 'checksums': ['ea23e9781207b5d47ed04e4d5758d9652cab5d1eedcf9fbc9c2ee4d3babffdc4'], }), - ('DescTools', '0.99.50', { - 'checksums': ['1b9cf09de7c7625c30d2daca92b4f798476f10907d531267e773d379f6828eab'], + ('DescTools', '0.99.52', { + 'checksums': ['94997df960b572a46c625fac5338099d0df51bb08c97809d5b11fa6ff34af790'], }), ('orthopolynom', '1.0-6.1', { 'checksums': ['ec4a6ed266532f2f6d37a4ca6bd1b74c1df28a8c2caeab60e5d6af15bdbfe2c5'], @@ -2693,8 +2698,8 @@ exts_list = [ ('tableone', '0.13.2', { 'checksums': ['b1cf15579abd4240e24435d2d9aad255c839d2a0293e28cb2eef0c808c4727af'], }), - ('jstable', '1.1.2', { - 'checksums': ['e9f6a4eab1be75fab63d9de5cc496b1812e2ec2d3e1d6a006ae6a9a6d2fd29ab'], + ('jstable', '1.1.3', { + 'checksums': ['dc6447d311cc1edda581bb696252d9062363d03e0a6227825868f81e0833d56d'], }), ('RCAL', '2.0', { 'checksums': ['10f5f938a8322d8737159e1e49ce9d12419a5130699b8a19c6ca53d6508da8cc'], @@ -2723,8 +2728,8 @@ exts_list = [ ('metafor', '4.4-0', { 'checksums': ['62aca0c70b44205e885cf55f6cfb56c37efff74bdef79dbabd727d629d3087d4'], }), - ('RNifti', '1.5.0', { - 'checksums': ['32e4dfd35643932e0f2021b22cfc26cedff51dff13b940d9a3abe6282bf5e905'], + ('RNifti', '1.5.1', { + 'checksums': ['a59405c8b08f8072210b2e2817b8d0fcc52c8c2ecbb14533695035ba75a87e65'], }), ('oro.nifti', '0.11.4', { 'checksums': ['efe4f5d2c2e37ff6c3e9250f54ef775e4d452c1334f781f22f219ed53148b606'], @@ -2774,8 +2779,8 @@ exts_list = [ ('naniar', '1.0.0', { 'checksums': ['c2eda97de603e2daf4c1c5d12f9c9a65635910833a3c669e08e344e90d9394f4'], }), - ('stringdist', '0.9.10', { - 'checksums': ['6fd42e0b7ff25843ca7f45acf9a183facfe14a6cde2dc7a97ef7126ab0f06ce8'], + ('stringdist', '0.9.12', { + 'checksums': ['e1843452ff4184b8d3bc5168732c0c65d3fce11f0df9fcf92173a22ef92e66c4'], }), ('image.binarization', '0.1.3', { 'checksums': ['ecc844bdd9bf15b88ce1e1afc8321c177bdc8ec32618c22102b1e8b02b36e00e'], @@ -2803,8 +2808,8 @@ exts_list = [ ('GxEScanR', '2.0.2', { 'checksums': ['6d42fd15d83dd1491405b282d26fa472f9f9902a9dc68836d6a48b459ada6a4c'], }), - ('admisc', '0.33', { - 'checksums': ['3911bea32326bfc2e19d4f47d05e8ad7260da36fa2ae0bfde03540195081dbaa'], + ('admisc', '0.34', { + 'checksums': ['fdcf875e6440fd049a78171db2594d6d963c484eca9387f852c5c8b3208a5bdf'], }), ('polycor', '0.8-1', { 'checksums': ['f05f53e0b5c992de0e5b4c6b2e998148cf83310358821e1bba180d81face0509'], @@ -2842,8 +2847,8 @@ exts_list = [ ('grf', '2.3.1', { 'checksums': ['151878724a99d516fe3824299274f194e6c67c4bacc6f4cba9adfd64bc5b1c7c'], }), - ('twang', '2.5', { - 'checksums': ['fc355527c57e4f6e0f60d26d7c690c4475fcd5fb165d125fea7cc6b9fafc4ce5'], + ('twang', '2.6', { + 'checksums': ['0b28382af11cebf675cdffc66990e011d751e9703d27e2ed41895ead5e667fdb'], }), ('neuralnet', '1.44.2', { 'checksums': ['5f66cd255db633322c0bd158b9320cac5ceff2d56f93e4864a0540f936028826'], @@ -2854,11 +2859,11 @@ exts_list = [ ('origami', '1.0.7', { 'checksums': ['b44034541ac358e0686682684c40e9a1de8d78c7913e56e4d3dbe41a2a55c62c'], }), - ('hal9001', '0.4.3', { - 'checksums': ['f2489e7a0a16db6dc65da8ce13bfb7f0854e6f303c9ec05f6158d46c66b6588c'], + ('hal9001', '0.4.6', { + 'checksums': ['1123288b603f97de98b42178ab5b4809536f64d7884a46b829795245eacd08dd'], }), - ('cobalt', '4.5.1', { - 'checksums': ['799b68805033a92900c5a884862a315670b0379ed8fc8c3f3c20c61e402c27c0'], + ('cobalt', '4.5.2', { + 'checksums': ['f15a2113d837ecd59f011603a31afde411b9315b6399793861d308ab72716ec9'], }), ('CBPS', '0.23', { 'checksums': ['ed8fe09b642db459a516bdeb03a49e718a7d5ad915cbf82400029508efe9b32d'], @@ -2872,11 +2877,8 @@ exts_list = [ ('lwgeom', '0.2-13', { 'checksums': ['f0822888c029af48bf0238e3d20d82d3c75018e7e63728765a6220a6a0151c67'], }), - ('finalfit', '1.0.6', { - 'checksums': ['c12be933408b0a8ec4962ebe5e9b404ef99a0b1eafccf7f646627458f4af4b9a'], - }), - ('broom.helpers', '1.14.0', { - 'checksums': ['cdc12f35bfed5d3da55ac7c7e09974584c8e4cb7a2147429c53b7b1176c76a93'], + ('finalfit', '1.0.7', { + 'checksums': ['4fb9fa3a8eae9ea80277ca3f256947d6f9485ab66ad2e3bbe429a586e79eda12'], }), ('bigD', '0.2.0', { 'checksums': ['bca9eb0c9a231b159b97650884b1a7a490bc3bf4edef11cc12db06fb15c6ff5f'], @@ -2896,8 +2898,8 @@ exts_list = [ ('gtsummary', '1.7.2', { 'checksums': ['ddc225f1c3a629b47bce85b64229d2a99c46c7bf22b88a6bb6cc728e76d34b0a'], }), - ('ncdf4', '1.21', { - 'checksums': ['2f5ae7def382c595c66b6ed0ea0529f8337108eb73de39939f9762f3fb21b30d'], + ('ncdf4', '1.22', { + 'checksums': ['b9a9a2004f4c008d665afbe617f4e4b45e57dc70e303c8ec341aa5a51fbb1210'], }), ('geex', '1.1.1', { 'checksums': ['a1aebb9f73ba8dfe26ee3dc7b0725ccb814b3db5358ba17e417bdfc7eb3e4143'], @@ -2929,8 +2931,8 @@ exts_list = [ ('leaflet.providers', '2.0.0', { 'checksums': ['c5ceeadc8088c9840a8249f0347501cdba0119be97219a01ea2050d1dd4a8666'], }), - ('leaflet', '2.2.0', { - 'checksums': ['b801ef8d78c94a7337858499f0ed9e6088f08f40fa841603368dee0a17bd1f4c'], + ('leaflet', '2.2.1', { + 'checksums': ['01c53031cb6456d08bdcd6fed92ec76feff27a8865de47f64781dcaad771dabd'], }), ('leafsync', '0.1.0', { 'checksums': ['7d8fd8dbbbf66417cf32575f14c0fe68199762ecf1c036c7905c7c5ff859d75c'], @@ -2947,8 +2949,8 @@ exts_list = [ ('tmap', '3.3-4', { 'checksums': ['c966bcd61c21a9609144f2de89da1601e734ee2c6903f08bf624b217944faaf7'], }), - ('collapse', '2.0.3', { - 'checksums': ['fb8cea81b281bd40d8eccff777c998f7c5915d624623db4132044c9271c7c49b'], + ('collapse', '2.0.7', { + 'checksums': ['6c854941a96822d28f2a25d5c205483b86b547b364df1c2e83d17febc8bbfb6b'], }), ('genoPlotR', '0.8.11', { 'checksums': ['f127f7fe8b19c899ecfdf98bf69d2e18926afb593a72fc40097acca66d401607'], @@ -2956,14 +2958,14 @@ exts_list = [ ('VineCopula', '2.5.0', { 'checksums': ['51b99e6fe0a1f4c32c860fc24b0164f0ade5d81aee7235e0ef5b5256e2115b68'], }), - ('Rmpfr', '0.9-3', { - 'checksums': ['828dbdc98e28a9f7beb0d9bec251a7387b54908753314d75c1400754560cf641'], + ('Rmpfr', '0.9-4', { + 'checksums': ['cec798f46e6331ef90bf04ee0338cb60d5f566e3f15c4995a2ffc6b504a1a8bb'], }), ('scam', '1.2-14', { 'checksums': ['cc5086aaab35d0e1969760af191ed7e76f97b65a26a9be623ac8cf0c45a93771'], }), - ('copula', '1.1-2', { - 'checksums': ['88f9454d25e4dcdf53d8ca5156daf48e664769f5e13b1e835ed64f37251587d3'], + ('copula', '1.1-3', { + 'checksums': ['9b196cb4f1d6faa46ae6f80a4639b4044c98aaf9dcc02face6e04a51003677a6'], }), ('evd', '2.3-6.1', { 'checksums': ['662c592d3f5c5693dbf1c673d1137c4a60a347e330b71be1f3933f201d2c8971'], @@ -2998,8 +3000,8 @@ exts_list = [ ('semTools', '0.5-6', { 'checksums': ['f522ce3c02ac580ad49af7a7278141dae39fdfaeccc7d1379faf1266ce9fcaf2'], }), - ('GPArotation', '2023.8-1', { - 'checksums': ['e445d479e477e2d42daac1d7f7db0daf6628aac6b3f8a2d51dbb95b4ad1ecfeb'], + ('GPArotation', '2023.11-1', { + 'checksums': ['e2d71c2ee4696dc39e44b58099be5d5dc8bf0600cc663315ee76f33884354b3f'], }), ('dcurver', '0.9.2', { 'checksums': ['cc6c55090d3607910515981ea0c7221e40e7a29e0da0c5a5f42c3847012290ec'], @@ -3010,8 +3012,8 @@ exts_list = [ ('rpf', '1.0.14', { 'checksums': ['e4bb090a810ec4e70a23547f95e1e07ce0229e38fbbbbe22abfad98e9b33f796'], }), - ('OpenMx', '2.21.10', { - 'checksums': ['d513227ca7a60faf1b16e9be64864401914482aac9a326676fe1d052632c94ce'], + ('OpenMx', '2.21.11', { + 'checksums': ['152570b9cdb2d6b91f309b352458ed1b29ae2f7ce1f97c091f84c617a14071cc'], }), ('matlab', '1.0.4', { 'checksums': ['1988a2220703444a575f2bad4eb090a0da71478599eb53081dd7237b7ec216ea'], @@ -3022,8 +3024,8 @@ exts_list = [ ('rpact', '3.4.0', { 'checksums': ['447e142f53437c070ad11b04a7d549207635114312147f358249be0d49b83674'], }), - ('ldbounds', '2.0.1', { - 'checksums': ['1a23d56a619eff18eaf8a3538da8da47dfbeddddc8922047457de92e3e01aa1d'], + ('ldbounds', '2.0.2', { + 'checksums': ['a98d8498e46fd814957e7d47a6bf3d27649885ed840c0753469f268b8942bda7'], }), ('catlearn', '1.0', { 'checksums': ['c6ef66257b8a6968599876f53bd431b5d836f125b32cdb829b53fb972ffeffaf'], @@ -3034,8 +3036,8 @@ exts_list = [ ('EValue', '4.1.3', { 'checksums': ['52a8d4df8ddc80eddf7c2f6684ed6f0fd71f3bd1bfc096ed07cfe875a367e446'], }), - ('dagitty', '0.3-1', { - 'checksums': ['7d44b5d259ec3fef776a7e3fcb21d1c379f930d6ae9ae5fbfff54494ad78e8a8'], + ('dagitty', '0.3-4', { + 'checksums': ['796f1424fc75800f1818f427809730f43eb798614ac570af1c301e951b2d3c82'], }), ('ggdag', '0.2.10', { 'checksums': ['66cdb226f63f44268fed0ef596d8849f8b70cd92cec20eb305db52a3bd1fc9ee'], @@ -3052,8 +3054,8 @@ exts_list = [ ('RhpcBLASctl', '0.23-42', { 'checksums': ['5c889d5b69e264060b9f1f0383c447f594855b8afc15b7d76d39e4d62b946615'], }), - ('harmony', '1.1.0', { - 'checksums': ['7bcdd5cb7e99e791e0aa11aa3e5316cbdb884270a3528f8a5fe5b8410169c167'], + ('harmony', '1.2.0', { + 'checksums': ['a63c7d7cbbc5d183e8f919552e9d73044e0a89660856e80861a00eb5d25ac7b5'], }), ('apcluster', '1.4.11', { 'checksums': ['4497da8766802cb18a5729ddb629368a17a967436d696941deb4b21da73e3333'], @@ -3079,8 +3081,8 @@ exts_list = [ ('cmprsk', '2.2-11', { 'checksums': ['844027cb2c162cf7ef97034d01237ad7b81aa192fe302250d22d2c5528110e14'], }), - ('mets', '1.3.2', { - 'checksums': ['1a8bd1678c92650c0637b69b807bfb43df4210806518d56c650967c72f3e21d8'], + ('mets', '1.3.3', { + 'checksums': ['3fea881f6edfae76016d9135a57eb690a5eedf91a2d3afada6b378352aa75017'], }), ('Publish', '2023.01.17', { 'checksums': ['436cc2bf5cdca1b3fdf892c9d35227f01740f1a4b335ff7b42a37e12c0115953'], @@ -3202,8 +3204,8 @@ exts_list = [ ('DepthProc', '2.1.5', { 'checksums': ['e6b0afd54bb20e25a6bf5402c771848db20e9c844f0fc990ecc3d1078b9eee44'], }), - ('dbscan', '1.1-11', { - 'checksums': ['f0498e67e612629340a2758fbe747c4d9d4ca648f002230a03499cb73735e62f'], + ('dbscan', '1.1-12', { + 'checksums': ['56f8b1bdb392f8fb679a343b2ad5b4656c4f21d4ead85d6d81900d2f8b63ceea'], }), ('ggh4x', '0.2.6', { 'checksums': ['eb7929b4c3167dce644b13d655144b2893e320072e7a998f07c37c4f7d9b2b3b'], @@ -3226,8 +3228,8 @@ exts_list = [ ('mosaicCore', '0.9.4.0', { 'checksums': ['e25605d787d274eedd3de8584283c20204bcb7b94f4a409461304ce7cd867d6c'], }), - ('ggformula', '0.10.4', { - 'checksums': ['b26d478e7e38bd9ec51777c14a7e0fef41e2c2742ca202532f0f44dc00d6a91d'], + ('ggformula', '0.12.0', { + 'checksums': ['d569f83e059f9e4836bd513f92706fb8a614300f744dcc47bf86e8dafd8e776d'], }), ('kinship2', '1.9.6', { 'checksums': ['0150bd5974c2a19885f6ff2e99f3c1f6361054a0910dcfc9dd26a8e0cd73bbf6'], @@ -3244,8 +3246,8 @@ exts_list = [ ('emoa', '0.5-0.2', { 'checksums': ['d9e8bd286c4578be76a3dc7a1110bbb751eb8d0e451143273f0ced09878a243b'], }), - ('webutils', '1.1', { - 'checksums': ['33e2b408d2b9ca12e158e0007d4a55a3ace6838341ad944344de2ceb806e4699'], + ('webutils', '1.2.0', { + 'checksums': ['51243a1d7843dbb3968e7725c2266e1d68dcec43b919c320033f611ff9ca7f3c'], }), ('swagger', '3.33.1', { 'checksums': ['528369b04c6142112e05ee8b950ca1c01b3e390a4515eacb0fa17db98bafafd1'], @@ -3289,8 +3291,8 @@ exts_list = [ ('sentometrics', '1.0.0', { 'checksums': ['b5c238bb72f36331cb1ed63b581a9a2a73cefc96f80bf770b0e064a89fe31b1b'], }), - ('tau', '0.0-24', { - 'checksums': ['f08d9fc92ed11ec01f7da12ccf98862e36ef8bb69d5e42584a08b46cea6917e1'], + ('tau', '0.0-25', { + 'checksums': ['ff22d4a633957479e0ecdb1c0223df09f9321017aade6a28b2f264fe7bbd8e90'], }), ('textcat', '1.0-8', { 'checksums': ['cb650147576bae9c78381524831c9fcc85c76177274672098aac1860aa39749e'], @@ -3310,8 +3312,8 @@ exts_list = [ ('RBesT', '1.7-2', { 'checksums': ['bde8008b5fc8f0023bdd84b3a14a7425aecf1edcdf79480dac861895de4a9a9b'], }), - ('svglite', '2.1.2', { - 'checksums': ['c2c163e17de8174408062b969a1fc298aa1dba957dc0acc1c898384bb76c0030'], + ('svglite', '2.1.3', { + 'checksums': ['f0a8564e6f9127f4d1e05cf5a5f36b4e244aee0008e27473e504c63873ef0a54'], }), ('rARPACK', '0.11-0', { 'checksums': ['c33401e2e31d272d485ce2ed22e7fe43ac641fd7c0a45a9b848d3ad60df1028a'], @@ -3372,8 +3374,8 @@ exts_list = [ ('fontquiver', '0.2.1', { 'checksums': ['95871814c2d55c03ee15a54e29aadfb840c791e1430f94127d9e1dc8608a6363'], }), - ('gdtools', '0.3.4', { - 'checksums': ['aad743033fba0b48aa05867df4bc9643802fa82542b559579105e8a0659aaa02'], + ('gdtools', '0.3.5', { + 'checksums': ['8cb46da05b87440aadf6958baa37dd9b62d526c558622285146ea7cc4b51b894'], }), ('flextable', '0.9.4', { 'checksums': ['55ad11660325cf470cedf532df774f99748583eb53c0162e2dede8e1c3539ab6'], From d7671551c8cfb9e2d52f9dfbeaf0153c0d7c7011 Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Mon, 11 Dec 2023 14:01:10 +0800 Subject: [PATCH 134/356] adding easyconfigs: CPMD-4.3-foss-2022a.eb and patches: CPMD-4.3_gfortran.patch --- .../easyconfigs/c/CPMD/CPMD-4.3-foss-2022a.eb | 32 ++++++++++++++++++ .../c/CPMD/CPMD-4.3_gfortran.patch | 33 +++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 easybuild/easyconfigs/c/CPMD/CPMD-4.3-foss-2022a.eb create mode 100644 easybuild/easyconfigs/c/CPMD/CPMD-4.3_gfortran.patch diff --git a/easybuild/easyconfigs/c/CPMD/CPMD-4.3-foss-2022a.eb b/easybuild/easyconfigs/c/CPMD/CPMD-4.3-foss-2022a.eb new file mode 100644 index 00000000000..b730e108882 --- /dev/null +++ b/easybuild/easyconfigs/c/CPMD/CPMD-4.3-foss-2022a.eb @@ -0,0 +1,32 @@ +easyblock = 'MakeCp' + +name = 'CPMD' +version = '4.3' + +homepage = 'https://github.com/CPMD-code' +description = """The CPMD code is a parallelized plane wave / pseudopotential implementation of DFT, + particularly designed for ab-initio molecular dynamics.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = ['https://github.com/CPMD-code/CPMD/archive/refs/tags/'] +sources = ['%(version)s.tar.gz'] +patches = ['CPMD-4.3_gfortran.patch'] +checksums = [ + {'4.3.tar.gz': 'e0290f9da0d255f90a612e60662b14a97ca53003f89073c6af84fa7bc8739f65'}, + {'CPMD-4.3_gfortran.patch': 'e8760641cb1addeab27803f0d607852297c83c0b681ca900b234b7dafccf7f1a'}, +] + +prebuildopts = "export OMP3_DISABLED=false && chmod +x ./configure.sh && " +prebuildopts += "./configure.sh -omp LINUX-X86_64-GFORTRAN-MPI && " + +files_to_copy = [(['bin/cpmd.x'], 'bin'), (['lib/libcpmd.a'], 'lib')] + +sanity_check_paths = { + 'files': ['bin/cpmd.x', 'lib/libcpmd.a'], + 'dirs': [], +} + +sanity_check_commands = ["cpmd.x 2>&1 | grep 'STOP 1'"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/c/CPMD/CPMD-4.3_gfortran.patch b/easybuild/easyconfigs/c/CPMD/CPMD-4.3_gfortran.patch new file mode 100644 index 00000000000..23c07c9d09b --- /dev/null +++ b/easybuild/easyconfigs/c/CPMD/CPMD-4.3_gfortran.patch @@ -0,0 +1,33 @@ +adapt to recent gfortran and easybuild variables +author: Miguel Dias Costa (National University of Singapore) +--- configure/LINUX-X86_64-GFORTRAN-MPI.orig 2023-12-11 13:44:09.206123000 +0800 ++++ configure/LINUX-X86_64-GFORTRAN-MPI 2023-12-11 13:45:08.202378000 +0800 +@@ -13,21 +13,21 @@ + CPPFLAGS='-D__Linux -D__GNU -D__PARALLEL -D__HAS_FFT_DEFAULT ' + FFLAGS_GROMOS='-ffixed-form $(FFLAGS)' + FFLAGS_GROMOS_MODULES=' $(FFLAGS)' +- AR='/usr/bin/ar ruv' +- RANLIB='/usr/bin/ranlib' ++ AR='ar ruv' ++ RANLIB='ranlib' + if [ $debug ]; then +- FFLAGS='-g -O0 -fcheck=all -Wuninitialized -Wall' ++ FFLAGS='-g -O0 -fcheck=all -Wuninitialized -Wall -fallow-argument-mismatch -ffree-line-length-none' + CFLAGS='-g -O0 -Wall' + else +- FFLAGS='-O2 -Wall' ++ FFLAGS='-O2 -Wall -fallow-argument-mismatch -ffree-line-length-none' + CFLAGS='-O2 -Wall' + fi + if [ $omp ]; then + FFLAGS=${FFLAGS}' -fopenmp' +- OMP3_DISABLED=`{ ${FC} -v; } 2>&1 | ${GREP} version | ${AWK} '{ print ( $3 < "4.7.0" ) ? "true" : "false" }'` +- LIBS='/home/manish/lapack-3.5.0/liblapack.a /home/manish/OPENBLAS/0.2.18/lib/libopenblas.a' ++ OMP3_DISABLED="false" ++ LIBS=${LIBLAPACK_MT} + else +- LIBS='/home/manish/lapack-3.5.0/liblapack.a /home/manish/OPENBLAS/0.2.18/lib/libopenblas.a' ++ LIBS=${LIBLAPACK_MT} + fi + LFLAGS=' '${LIBS} + if [ $coverage ]; then From 84a10500e82df0bb9cdee1301e38a30d71f4ee22 Mon Sep 17 00:00:00 2001 From: benjamic Date: Mon, 11 Dec 2023 10:51:55 +0100 Subject: [PATCH 135/356] adding easyconfigs: pmt-1.2.0-GCCcore-11.3.0.eb --- .../p/pmt/pmt-1.2.0-GCCcore-11.3.0.eb | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 easybuild/easyconfigs/p/pmt/pmt-1.2.0-GCCcore-11.3.0.eb diff --git a/easybuild/easyconfigs/p/pmt/pmt-1.2.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/pmt/pmt-1.2.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..5a74097eda9 --- /dev/null +++ b/easybuild/easyconfigs/p/pmt/pmt-1.2.0-GCCcore-11.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeMake' + +name = 'pmt' +version = '1.2.0' + +homepage = 'https://git.astron.nl/RD/pmt' +description = """PMT is a high-level software library capable of + collecting power consumption measurements on various hardware.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +builddependencies = [ + ('CMake', '3.23.1'), + ('binutils', '2.38') +] + +source_urls = ['https://git.astron.nl/RD/pmt/-/archive/%(version)s'] +sources = ['pmt-%(version)s.tar.gz'] +checksums = ['98faf305c60cc4d39d3b8ada1dcb7c87c49bf6f01a3cd2800b413d21d5df1a38'] + +sanity_check_paths = { + 'files': ["bin/Rapl-test"], + 'dirs': ["lib", "include"], +} + +moduleclass = 'lib' From 5cfda4ec463185596a4bf420e3fec9677d4ef7eb Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Mon, 11 Dec 2023 17:54:58 +0800 Subject: [PATCH 136/356] remove redundant OMP3_DISABLE environment variable, the patch already takes care of that --- easybuild/easyconfigs/c/CPMD/CPMD-4.3-foss-2022a.eb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/c/CPMD/CPMD-4.3-foss-2022a.eb b/easybuild/easyconfigs/c/CPMD/CPMD-4.3-foss-2022a.eb index b730e108882..4f2af99540d 100644 --- a/easybuild/easyconfigs/c/CPMD/CPMD-4.3-foss-2022a.eb +++ b/easybuild/easyconfigs/c/CPMD/CPMD-4.3-foss-2022a.eb @@ -17,8 +17,7 @@ checksums = [ {'CPMD-4.3_gfortran.patch': 'e8760641cb1addeab27803f0d607852297c83c0b681ca900b234b7dafccf7f1a'}, ] -prebuildopts = "export OMP3_DISABLED=false && chmod +x ./configure.sh && " -prebuildopts += "./configure.sh -omp LINUX-X86_64-GFORTRAN-MPI && " +prebuildopts = "chmod +x ./configure.sh && ./configure.sh -omp LINUX-X86_64-GFORTRAN-MPI && " files_to_copy = [(['bin/cpmd.x'], 'bin'), (['lib/libcpmd.a'], 'lib')] From edee9b32720c56db00b013912464209c36e4cdee Mon Sep 17 00:00:00 2001 From: benjamic Date: Mon, 11 Dec 2023 10:56:37 +0100 Subject: [PATCH 137/356] adding easyconfigs: pypmt-1.2.0-gfbf-2023a.eb --- .../p/pypmt/pypmt-1.2.0-gfbf-2023a.eb | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-gfbf-2023a.eb diff --git a/easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-gfbf-2023a.eb b/easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-gfbf-2023a.eb new file mode 100644 index 00000000000..fde22430c13 --- /dev/null +++ b/easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-gfbf-2023a.eb @@ -0,0 +1,37 @@ +easyblock = 'CMakeMake' + +name = 'pypmt' +version = '1.2.0' + +homepage = 'https://git.astron.nl/RD/pmt' +description = """PMT is a high-level software library capable of + collecting power consumption measurements on various hardware.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} +builddependencies = [('CMake', '3.26.3')] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +source_urls = ['https://git.astron.nl/RD/pmt/-/archive/%(version)s'] +sources = ['pmt-%(version)s.tar.gz'] +checksums = ['98faf305c60cc4d39d3b8ada1dcb7c87c49bf6f01a3cd2800b413d21d5df1a38'] + +configopts = '-DBUILD_PYTHON_PMT=1' + +sanity_check_paths = { + 'files': ["bin/Rapl-test"], + 'dirs': [ + "lib", + "lib/python", + "include"], +} +sanity_check_commands = [('python', "-c 'import pmt'")] + +modextrapaths = { + 'PYTHONPATH': ['lib/python'] +} + +moduleclass = 'lib' From 0b76d2c85285f7f9477a4672842f0a7637ae03d8 Mon Sep 17 00:00:00 2001 From: benjamic Date: Mon, 11 Dec 2023 11:01:28 +0100 Subject: [PATCH 138/356] adding easyconfigs: pmt-1.2.0-GCCcore-12.3.0.eb --- .../p/pmt/pmt-1.2.0-GCCcore-12.3.0.eb | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 easybuild/easyconfigs/p/pmt/pmt-1.2.0-GCCcore-12.3.0.eb diff --git a/easybuild/easyconfigs/p/pmt/pmt-1.2.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pmt/pmt-1.2.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..cd1fc004ffd --- /dev/null +++ b/easybuild/easyconfigs/p/pmt/pmt-1.2.0-GCCcore-12.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeMake' + +name = 'pmt' +version = '1.2.0' + +homepage = 'https://git.astron.nl/RD/pmt' +description = """PMT is a high-level software library capable of + collecting power consumption measurements on various hardware.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('CMake', '3.26.3'), + ('binutils', '2.40') +] + +source_urls = ['https://git.astron.nl/RD/pmt/-/archive/%(version)s'] +sources = ['pmt-%(version)s.tar.gz'] +checksums = ['98faf305c60cc4d39d3b8ada1dcb7c87c49bf6f01a3cd2800b413d21d5df1a38'] + +sanity_check_paths = { + 'files': ["bin/Rapl-test"], + 'dirs': ["lib", "include"], +} + +moduleclass = 'lib' From a54c5119f0bf0478e679a4ecc4eb45cdd6342874 Mon Sep 17 00:00:00 2001 From: benjamic Date: Mon, 11 Dec 2023 11:07:55 +0100 Subject: [PATCH 139/356] adding easyconfigs: pypmt-1.2.0-foss-2022a.eb --- .../p/pypmt/pypmt-1.2.0-foss-2022a.eb | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-foss-2022a.eb diff --git a/easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-foss-2022a.eb b/easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-foss-2022a.eb new file mode 100644 index 00000000000..c4a491c898c --- /dev/null +++ b/easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-foss-2022a.eb @@ -0,0 +1,37 @@ +easyblock = 'CMakeMake' + +name = 'pypmt' +version = '1.2.0' + +homepage = 'https://git.astron.nl/RD/pmt' +description = """PMT is a high-level software library capable of + collecting power consumption measurements on various hardware.""" + +toolchain = {'name': 'foss', 'version': '2022a'} +builddependencies = [('CMake', '3.23.1')] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), +] + +source_urls = ['https://git.astron.nl/RD/pmt/-/archive/%(version)s'] +sources = ['pmt-%(version)s.tar.gz'] +checksums = ['98faf305c60cc4d39d3b8ada1dcb7c87c49bf6f01a3cd2800b413d21d5df1a38'] + +configopts = '-DBUILD_PYTHON_PMT=1' + +sanity_check_paths = { + 'files': ["bin/Rapl-test"], + 'dirs': [ + "lib", + "lib/python", + "include"], +} +sanity_check_commands = [('python', "-c 'import pmt'")] + +modextrapaths = { + 'PYTHONPATH': ['lib/python'] +} + +moduleclass = 'lib' From 12bc9f33f70dcbe871da8fd9a6c5a94effc185d8 Mon Sep 17 00:00:00 2001 From: deniskristak <35582739+deniskristak@users.noreply.github.com> Date: Mon, 11 Dec 2023 17:22:18 +0000 Subject: [PATCH 140/356] Update bcbio-gff-0.7.0-foss-2022b.eb added comment --- easybuild/easyconfigs/b/bcbio-gff/bcbio-gff-0.7.0-foss-2022b.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/b/bcbio-gff/bcbio-gff-0.7.0-foss-2022b.eb b/easybuild/easyconfigs/b/bcbio-gff/bcbio-gff-0.7.0-foss-2022b.eb index bcac0a939b6..65a7aed5498 100644 --- a/easybuild/easyconfigs/b/bcbio-gff/bcbio-gff-0.7.0-foss-2022b.eb +++ b/easybuild/easyconfigs/b/bcbio-gff/bcbio-gff-0.7.0-foss-2022b.eb @@ -2,6 +2,7 @@ # DeepThought, Flinders University # Updated to v0.6.7 # R.QIAO +# Updated to v0.7.0 by Denis Kristak (Inuits) easyblock = 'PythonPackage' From 0e63241da835873e43c20d6e6caa0b251ae9c7c1 Mon Sep 17 00:00:00 2001 From: deniskristak <35582739+deniskristak@users.noreply.github.com> Date: Mon, 11 Dec 2023 17:23:01 +0000 Subject: [PATCH 141/356] Update hifiasm-0.19.7-GCCcore-12.2.0.eb added comment --- .../easyconfigs/h/hifiasm/hifiasm-0.19.7-GCCcore-12.2.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/h/hifiasm/hifiasm-0.19.7-GCCcore-12.2.0.eb b/easybuild/easyconfigs/h/hifiasm/hifiasm-0.19.7-GCCcore-12.2.0.eb index fe7164b4a35..15f778b5880 100644 --- a/easybuild/easyconfigs/h/hifiasm/hifiasm-0.19.7-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/h/hifiasm/hifiasm-0.19.7-GCCcore-12.2.0.eb @@ -1,5 +1,5 @@ # Author: Jasper Grimm (UoY) -# Update: Sebastien Moretti (SIB) +# Update: Sebastien Moretti (SIB), Denis Kristak (Inuits) easyblock = 'MakeCp' From 412557744d6d844be6668666bae1b5405b2a59e3 Mon Sep 17 00:00:00 2001 From: deniskristak <35582739+deniskristak@users.noreply.github.com> Date: Mon, 11 Dec 2023 17:25:09 +0000 Subject: [PATCH 142/356] Update MitoHiFi-3.2-foss-2022b.eb updated comment, cleanup --- easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb b/easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb index 00b5b2cb51d..9875b417e3b 100644 --- a/easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb +++ b/easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb @@ -21,7 +21,6 @@ dependencies = [ ('BEDTools', '2.30.0'), ('Pillow', '9.4.0'), ('bcbio-gff', '0.7.0'), - # ('MitoFinder', '1.4.1'), ('BLAST+', '2.14.0'), ] @@ -45,11 +44,10 @@ exts_list = [ 'source_urls': ['https://github.com/marcelauliano/MitoHiFi/archive/'], 'sources': ['v%(version)s.tar.gz'], 'checksums': ['68f1eb69a54288d58ac920885aac82d4beae744e54023f409623125c084d5430'], - # TODO: patch wasn't applied without any error message (workaround in postinstallcmds) - # 'patches': ['MitoHiFi-%(version)s-use_mitos_annotation.patch'], }), ] +# using Mitos rather than MitoFinder (which is only available on Python-2) postinstallcmds = [ 'sed -i "s|# Set log message format|args.mitos = True|" %(installdir)s/MitoHiFi-%(version)s/src/mitohifi.py', "mkdir -p %(installdir)s/bin", From 63a7c1edf8d8b6f16e1ea964dd6c8a1520082b04 Mon Sep 17 00:00:00 2001 From: sassy Date: Mon, 11 Dec 2023 17:51:15 +0000 Subject: [PATCH 143/356] adding easyconfigs: kim-api-2.3.0-GCCcore-12.2.0.eb --- .../k/kim-api/kim-api-2.3.0-GCCcore-12.2.0.eb | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-12.2.0.eb diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..6d8bf17dc26 --- /dev/null +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-12.2.0.eb @@ -0,0 +1,45 @@ +easyblock = 'CMakeMake' + +name = 'kim-api' +version = '2.3.0' + +homepage = 'https://openkim.org/' +description = """Open Knowledgebase of Interatomic Models. + +KIM is an API and OpenKIM is a collection of interatomic models (potentials) for +atomistic simulations. This is a library that can be used by simulation programs +to get access to the models in the OpenKIM database. + +This EasyBuild only installs the API, the models can be installed with the +package openkim-models, or the user can install them manually by running + kim-api-collections-management install user MODELNAME +or + kim-api-collections-management install user OpenKIM +to install them all. + """ + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = ['https://s3.openkim.org/kim-api/'] +sources = ['%(name)s-%(version)s.txz'] +checksums = ['93673bb8fbc0625791f2ee67915d1672793366d10cabc63e373196862c14f991'] + +builddependencies = [('binutils', '2.39')] + +dependencies = [ + ('CMake', '3.24.3'), # Also needed to install models, thus not just a builddependency. +] + +parallel = 1 +separate_build_dir = True + +modextravars = { + 'KIM_API_CMAKE_PREFIX_DIR': '%(installdir)s/lib64' +} + +sanity_check_paths = { + 'files': ['bin/kim-api-collections-management', 'lib64/libkim-api.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'chem' From 13e2a61fbf857d69cdc9820b4919fc6ae31d77e5 Mon Sep 17 00:00:00 2001 From: sassy Date: Mon, 11 Dec 2023 17:52:45 +0000 Subject: [PATCH 144/356] adding easyconfigs: ScaFaCoS-1.0.4-foss-2022b.eb --- .../s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2022b.eb | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2022b.eb diff --git a/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2022b.eb b/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2022b.eb new file mode 100644 index 00000000000..b3169bbe14d --- /dev/null +++ b/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2022b.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'ScaFaCoS' +version = '1.0.4' + +homepage = 'http://www.scafacos.de/' +description = """ScaFaCoS is a library of scalable fast coulomb solvers.""" + +toolchain = {'name': 'foss', 'version': '2022b'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/%(namelower)s/%(namelower)s/releases/download/v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = [ + '6634c4202e825e771d1dd75bbe9cac5cee41136c87653fde98fbd634681c1be6', # scafacos-1.0.4.tar.gz +] + +builddependencies = [ + ('Autotools', '20220317'), + ('pkgconf', '1.9.3'), +] + +dependencies = [ + ('GMP', '6.2.1'), + ('GSL', '2.7'), +] + +preconfigopts = 'unset F77 && ' + +configopts = 'FCFLAGS="-fallow-argument-mismatch $FCFLAGS" ' +configopts += '--enable-shared --enable-static --disable-doc ' +# tell it where to find provided FFTW +configopts += '--without-internal-fftw --with-fftw3-includedir=$EBROOTFFTW/include --with-fftw3-libdir=$EBROOTFFTW/lib ' +# only include the solvers supported for LAMMPS +# (for p2nfft we need an additonal dependency) +configopts += '--enable-fcs-solvers=direct,ewald,fmm,p3m ' + +sanity_check_paths = { + 'files': ['lib/libfcs.a', 'include/fcs.h', 'include/fcs_module.mod'], + 'dirs': [], +} + +moduleclass = 'math' From d03d71bf5fb3758cb8d153ac3eca36dfefafc50e Mon Sep 17 00:00:00 2001 From: sassy Date: Mon, 11 Dec 2023 17:53:56 +0000 Subject: [PATCH 145/356] adding easyconfigs: Voro++-0.4.6-GCCcore-12.2.0.eb --- .../v/Voro++/Voro++-0.4.6-GCCcore-12.2.0.eb | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-12.2.0.eb diff --git a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-12.2.0.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..1846de1ca64 --- /dev/null +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-12.2.0.eb @@ -0,0 +1,43 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'ConfigureMake' + +name = 'Voro++' +version = '0.4.6' + +homepage = 'http://math.lbl.gov/voro++/' +description = """Voro++ is a software library for carrying out three-dimensional computations of the Voronoi +tessellation. A distinguishing feature of the Voro++ library is that it carries out cell-based calculations, +computing the Voronoi cell for each particle individually. It is particularly well-suited for applications that +rely on cell-based statistics, where features of Voronoi cells (eg. volume, centroid, number of faces) can be used +to analyze a system of particles.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] + +builddependencies = [('binutils', '2.39')] + + +# No configure +skipsteps = ['configure'] + +# Override CXX and CFLAGS variables from Makefile +buildopts = 'CXX="$CXX" CFLAGS="$CXXFLAGS"' + +# Override PREFIX variable from Makefile +installopts = "PREFIX=%(installdir)s" + +sanity_check_paths = { + 'files': ['bin/voro++', 'lib/libvoro++.a', 'include/voro++/voro++.hh'], + 'dirs': [], +} + +moduleclass = 'math' From a7568858dbeff1dc8ae32d4ac8ebd8985eb088ac Mon Sep 17 00:00:00 2001 From: Alexander Puck Neuwirth Date: Mon, 11 Dec 2023 19:14:02 +0100 Subject: [PATCH 146/356] adding easyconfigs: LoopTools-2.15-GCC-12.3.0.eb --- .../l/LoopTools/LoopTools-2.15-GCC-12.3.0.eb | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 easybuild/easyconfigs/l/LoopTools/LoopTools-2.15-GCC-12.3.0.eb diff --git a/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15-GCC-12.3.0.eb b/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15-GCC-12.3.0.eb new file mode 100644 index 00000000000..5235ee570c8 --- /dev/null +++ b/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15-GCC-12.3.0.eb @@ -0,0 +1,38 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Alexander Puck Neuwirth + +easyblock = 'ConfigureMake' + +name = 'LoopTools' +version = '2.15' + +homepage = 'https://feynarts.de/looptools/' +description = """ +LoopTools is a package for evaluation of scalar and tensor one-loop integrals. + +It is based on the FF package by G.J. van Oldenborgh. +""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'optarch': True, 'pic': True} + +source_urls = ['https://feynarts.de/looptools/'] +sources = [SOURCE_TAR_GZ] +patches = ['LoopTools-2.15_makefile.patch'] +checksums = [ + {'LoopTools-2.15.tar.gz': '2573459ae92c362fd92c1d7b27327cfd379143e8b176c63c8023d524cf96f104'}, + {'LoopTools-2.15_makefile.patch': 'cdd53d1e852fe805fe2842e3fe247cdeda2a3ca5df221fe624f43bad830e95de'}, +] + +sanity_check_commands = [ + "lt 1 2", + "lt 1 2 3", + "lt 1 2 3 4 5 6", +] + +sanity_check_paths = { + 'files': ["bin/lt", "lib64/libooptools.%s" % SHLIB_EXT, "include/clooptools.h", "include/looptools.h"], + 'dirs': [], +} + +moduleclass = 'phys' From be9ee335b6554041567129176f6711d3cdfb6ec8 Mon Sep 17 00:00:00 2001 From: Alexander Puck Neuwirth Date: Mon, 11 Dec 2023 22:27:24 +0100 Subject: [PATCH 147/356] Add missing patch file --- .../l/LoopTools/LoopTools-2.15_makefile.patch | 99 +++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 easybuild/easyconfigs/l/LoopTools/LoopTools-2.15_makefile.patch diff --git a/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15_makefile.patch b/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15_makefile.patch new file mode 100644 index 00000000000..dbfcc0b212a --- /dev/null +++ b/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15_makefile.patch @@ -0,0 +1,99 @@ +--- a/makefile.in ++++ b/makefile.in +@@ -1,14 +1,17 @@ + BLD = build$(QUADSUFFIX) + +-LIBDIR = $(PREFIX)/lib$(LIBDIRSUFFIX) +-INCLUDEDIR = $(PREFIX)/include +-BINDIR = $(PREFIX)/bin ++LIBDIR = $(DESTDIR)/$(PREFIX)/lib$(LIBDIRSUFFIX) ++INCLUDEDIR = $(DESTDIR)/$(PREFIX)/include ++BINDIR = $(DESTDIR)/$(PREFIX)/bin + + LIB = libooptools$(QUADSUFFIX).a + FE = lt$(QUADSUFFIX)$(EXE) + MFE = LoopTools$(QUADSUFFIX)$(EXE) + INCLUDE = $(BLD)/looptools.h $(BLD)/clooptools.h + ++LIBRARY=libooptools.so ++REALNAME=$(LIBRARY) ++ + ARGS = $(PARALLEL) \ + LIB="$(LIB)" \ + FE="$(FE)" \ +@@ -16,12 +19,12 @@ ARGS = $(PARALLEL) \ + EXE="$(EXE)" \ + DEF="$(DEF)" \ + NOUNDERSCORE="$(NOUNDERSCORE)" \ +- XFC="$(FC) $(FFLAGS) -I." \ ++ XFC="$(FC$(QUADSUFFIX)) $(FFLAGS) -I. -fPIC" \ + F90="$(F90)" \ + CC="$(CC)" \ +- CFLAGS="$(CFLAGS)" \ ++ CFLAGS="$(CFLAGS) -fPIC" \ + CXX="$(CXX)" \ +- CXXFLAGS="$(CXXFLAGS)" \ ++ CXXFLAGS="$(CXXFLAGS) -fPIC" \ + ML="$(ML)" \ + MCC="$(MCC)" \ + MCFLAGS="$(MCFLAGS)" \ +@@ -31,24 +34,23 @@ ARGS = $(PARALLEL) \ + NM="$(NM)" \ + DLLTOOL="$(DLLTOOL)" \ + LDFLAGS="$(LDFLAGS)" \ +- LIBPATH="$(LIBPATH)" ++ LIBPATH="$(LIBPATH)" \ ++ REALNAME="$(REALNAME)" + + +-default all lib frontend mma: force ++default all lib solib frontend mma: force + cd $(BLD) && $(MAKE) $(ARGS) $@ + +-install: lib frontend +- -mkdir $(PREFIX) ++install: lib solib frontend ++ -mkdir $(DESTDIR)$(PREFIX) $(LIBDIR); cp -p $(BLD)/$(LIBRARY) $(LIBDIR) + -mkdir $(LIBDIR) $(BINDIR) $(INCLUDEDIR) + cp -p $(BLD)/$(LIB) $(LIBDIR) + cp -p $(INCLUDE) $(INCLUDEDIR) +- strip $(BLD)/$(FE) + cp -p $(BLD)/fcc $(BLD)/$(FE) $(BINDIR) + rm -f $(BINDIR)/f++ + ln -s fcc $(BINDIR)/f++ + test ! -f $(BLD)/$(MFE) || { \ + test -z "$(EXE)" || ldd $(BLD)/$(MFE) | awk '/\/usr\/bin\/cyg/ { system("cp -p " $$3 " $(BINDIR)/"); }' ; \ +- strip $(BLD)/$(MFE) ; \ + cp -p $(BLD)/$(MFE) $(BINDIR); \ + } + +--- a/src/makefile ++++ b/src/makefile +@@ -1,6 +1,6 @@ +-default: frontend mma$(ML) ++default: frontend mma$(ML) solib + +-all: frontend mma1 ++all: frontend mma1 solib + + frontend: lib $(FE) + +@@ -8,6 +8,8 @@ mma1: lib $(MFE) + + mma0 lib: $(LIB) clooptools.h fcc + ++solib: $(REALNAME) fcc ++ + + .SUFFIXES: + +@@ -245,6 +247,9 @@ $(LIB): $(OBJS) + $(AR) $(ARFLAGS) $(LIB) $? + -$(RANLIB) $(LIB) + ++$(REALNAME): $(OBJS) ++ $(XFC) $(LDFLAGS) -shared -Wl,--soname,$(REALNAME) -o $@ $? ++ + + $(FE): lt.F $(LTINC) $(LIB) + $(XFC) -o $(FE) lt.F $(LIB) $(LDFLAGS) From eb0feaa4f7d1fac09cd8e9815ce372ea27f6429b Mon Sep 17 00:00:00 2001 From: Alexander Puck Neuwirth Date: Mon, 11 Dec 2023 23:10:10 +0100 Subject: [PATCH 148/356] add comment to patch --- .../easyconfigs/l/LoopTools/LoopTools-2.15_makefile.patch | 3 +++ 1 file changed, 3 insertions(+) diff --git a/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15_makefile.patch b/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15_makefile.patch index dbfcc0b212a..2b17fdba46e 100644 --- a/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15_makefile.patch +++ b/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15_makefile.patch @@ -1,3 +1,6 @@ +# Author: Alexander Puck Neuwirth +# We want to get a shared object file and need -fPIC + --- a/makefile.in +++ b/makefile.in @@ -1,14 +1,17 @@ From dd8cf7d6f8208b2fe1daa8b5e6214a85f2488275 Mon Sep 17 00:00:00 2001 From: Alexander Puck Neuwirth Date: Mon, 11 Dec 2023 23:28:11 +0100 Subject: [PATCH 149/356] fix checksums --- easybuild/easyconfigs/l/LoopTools/LoopTools-2.15-GCC-12.3.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15-GCC-12.3.0.eb b/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15-GCC-12.3.0.eb index 5235ee570c8..44a0bc2bc79 100644 --- a/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15-GCC-12.3.0.eb @@ -21,7 +21,7 @@ sources = [SOURCE_TAR_GZ] patches = ['LoopTools-2.15_makefile.patch'] checksums = [ {'LoopTools-2.15.tar.gz': '2573459ae92c362fd92c1d7b27327cfd379143e8b176c63c8023d524cf96f104'}, - {'LoopTools-2.15_makefile.patch': 'cdd53d1e852fe805fe2842e3fe247cdeda2a3ca5df221fe624f43bad830e95de'}, + {'LoopTools-2.15_makefile.patch': 'e15c3c3c1dfb2e321f9ac253b56e3051dd3e72afa30e0587fe61493436c110fa'}, ] sanity_check_commands = [ From 784ddbeaec839f070685f3fc7309e63b3f2b5e0a Mon Sep 17 00:00:00 2001 From: "U-ADF\\BranfoSJ" Date: Tue, 12 Dec 2023 11:22:57 +0000 Subject: [PATCH 150/356] move kim-api/2.3.0-GCCcore-12.3.0 to GCC --- ...pi-2.3.0-GCCcore-12.3.0.eb => kim-api-2.3.0-GCC-12.3.0.eb} | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) rename easybuild/easyconfigs/k/kim-api/{kim-api-2.3.0-GCCcore-12.3.0.eb => kim-api-2.3.0-GCC-12.3.0.eb} (92%) diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-12.3.0.eb similarity index 92% rename from easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-12.3.0.eb rename to easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-12.3.0.eb index 5e606297fc0..3d14e990f5a 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-12.3.0.eb @@ -18,14 +18,12 @@ or to install them all. """ -toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +toolchain = {'name': 'GCC', 'version': '12.3.0'} source_urls = ['https://s3.openkim.org/kim-api/'] sources = ['%(name)s-%(version)s.txz'] checksums = ['93673bb8fbc0625791f2ee67915d1672793366d10cabc63e373196862c14f991'] -builddependencies = [('binutils', '2.40')] - dependencies = [ ('CMake', '3.26.3'), # Also needed to install models, thus not just a builddependency. ] From 484dd1e327a9df1129f994e5178e14235bcc00e5 Mon Sep 17 00:00:00 2001 From: jfgrimm Date: Tue, 12 Dec 2023 11:32:30 +0000 Subject: [PATCH 151/356] use new DualSPHysics easyblock --- .../DualSPHysics-5.0.175-GCC-11.2.0.eb | 27 ++----------------- 1 file changed, 2 insertions(+), 25 deletions(-) diff --git a/easybuild/easyconfigs/d/DualSPHysics/DualSPHysics-5.0.175-GCC-11.2.0.eb b/easybuild/easyconfigs/d/DualSPHysics/DualSPHysics-5.0.175-GCC-11.2.0.eb index 8f34229debc..d1621350717 100644 --- a/easybuild/easyconfigs/d/DualSPHysics/DualSPHysics-5.0.175-GCC-11.2.0.eb +++ b/easybuild/easyconfigs/d/DualSPHysics/DualSPHysics-5.0.175-GCC-11.2.0.eb @@ -2,8 +2,6 @@ # Authors: Eduardo Miguel Firvida Donestevez # Robert Mijakovic ## -easyblock = 'CMakeMake' - name = 'DualSPHysics' version = '5.0.175' @@ -22,31 +20,10 @@ source_urls = ['https://github.com/DualSPHysics/DualSPHysics/archive/refs/tags/' sources = ['v%(version)s.tar.gz'] checksums = ['d65bb7b8b4a21582091a534142348e46cff0a288a97ef86643bc2dde15637575'] -srcdir = 'src/source' - builddependencies = [ ('CMake', '3.21.1'), + # only needed if EasyBuild is configured with rpath: + ('patchelf', '0.13'), ] -separate_build_dir = True - -buildopts = " && chmod +x %(builddir)s/%(name)s-%(version)s/bin/linux/*_linux64" - -install_cmd = "mkdir -p %(installdir)s/bin && " -install_cmd += "cp -r %(builddir)s/%(name)s-%(version)s/bin/linux/* %(installdir)s/bin && " -install_cmd += "cp -r %(builddir)s/%(name)s-%(version)s/src/lib/linux_gcc %(installdir)s/lib" - -local_bins = ['GenCase', 'PartVTK', 'IsoSurface', 'MeasureTool', 'GenCase_MkWord', - 'DualSPHysics4.0_LiquidGas', 'DualSPHysics4.0_LiquidGasCPU', 'DualSPHysics5.0', - 'DualSPHysics5.0CPU', 'DualSPHysics5.0_NNewtonian', 'DualSPHysics5.0_NNewtonianCPU'] - - -sanity_check_paths = { - 'files': ['bin/%s_linux64' % x for x in local_bins], - 'dirs': ["lib"], -} - -sanity_check_commands = ['%s_linux64 -h' % x for x in local_bins] - - moduleclass = 'cae' From cd41ebcc411a3eb0c56cacba909e8556db1ad8e6 Mon Sep 17 00:00:00 2001 From: "U-ADF\\BranfoSJ" Date: Tue, 12 Dec 2023 12:46:10 +0000 Subject: [PATCH 152/356] also openkim-models --- ...GCCcore-12.3.0.eb => openkim-models-20210811-GCC-12.3.0.eb} | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) rename easybuild/easyconfigs/o/openkim-models/{openkim-models-20210811-GCCcore-12.3.0.eb => openkim-models-20210811-GCC-12.3.0.eb} (95%) diff --git a/easybuild/easyconfigs/o/openkim-models/openkim-models-20210811-GCCcore-12.3.0.eb b/easybuild/easyconfigs/o/openkim-models/openkim-models-20210811-GCC-12.3.0.eb similarity index 95% rename from easybuild/easyconfigs/o/openkim-models/openkim-models-20210811-GCCcore-12.3.0.eb rename to easybuild/easyconfigs/o/openkim-models/openkim-models-20210811-GCC-12.3.0.eb index 0a9a26b1e30..55f4cd1d70c 100644 --- a/easybuild/easyconfigs/o/openkim-models/openkim-models-20210811-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/o/openkim-models/openkim-models-20210811-GCC-12.3.0.eb @@ -14,10 +14,9 @@ This EasyBuild installs the models. The API itself is in the kim-api package. """ -toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +toolchain = {'name': 'GCC', 'version': '12.3.0'} builddependencies = [ - ('binutils', '2.40'), ('pkgconf', '1.9.5'), ] From 01676e4783ab3f15cfb81011ae3fd56aa323b951 Mon Sep 17 00:00:00 2001 From: "U-ADF\\BranfoSJ" Date: Tue, 12 Dec 2023 12:50:56 +0000 Subject: [PATCH 153/356] move kim-api/2.3.0-GCCcore-12.2.0 to GCC --- ...pi-2.3.0-GCCcore-12.2.0.eb => kim-api-2.3.0-GCC-12.2.0.eb} | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) rename easybuild/easyconfigs/k/kim-api/{kim-api-2.3.0-GCCcore-12.2.0.eb => kim-api-2.3.0-GCC-12.2.0.eb} (92%) diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-12.2.0.eb similarity index 92% rename from easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-12.2.0.eb rename to easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-12.2.0.eb index 6d8bf17dc26..c6034f2db8b 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-12.2.0.eb @@ -18,14 +18,12 @@ or to install them all. """ -toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +toolchain = {'name': 'GCC', 'version': '12.2.0'} source_urls = ['https://s3.openkim.org/kim-api/'] sources = ['%(name)s-%(version)s.txz'] checksums = ['93673bb8fbc0625791f2ee67915d1672793366d10cabc63e373196862c14f991'] -builddependencies = [('binutils', '2.39')] - dependencies = [ ('CMake', '3.24.3'), # Also needed to install models, thus not just a builddependency. ] From bd78766a17da4a98e1aa699600a3f3b328d0986b Mon Sep 17 00:00:00 2001 From: "U-ADF\\BranfoSJ" Date: Tue, 12 Dec 2023 13:01:59 +0000 Subject: [PATCH 154/356] move kim-api/2.3.0-GCCcore-11.3.0 to GCC --- ...pi-2.3.0-GCCcore-11.3.0.eb => kim-api-2.3.0-GCC-11.3.0.eb} | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) rename easybuild/easyconfigs/k/kim-api/{kim-api-2.3.0-GCCcore-11.3.0.eb => kim-api-2.3.0-GCC-11.3.0.eb} (92%) diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-11.3.0.eb similarity index 92% rename from easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-11.3.0.eb rename to easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-11.3.0.eb index bc886d05365..1775b989448 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-11.3.0.eb @@ -18,14 +18,12 @@ or to install them all. """ -toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchain = {'name': 'GCC', 'version': '11.3.0'} source_urls = ['https://s3.openkim.org/kim-api/'] sources = ['%(name)s-%(version)s.txz'] checksums = ['93673bb8fbc0625791f2ee67915d1672793366d10cabc63e373196862c14f991'] -builddependencies = [('binutils', '2.38')] - dependencies = [ ('CMake', '3.23.1'), # Also needed to install models, thus not just a builddependency. ] From 7cd4f758e3c3397de14eb28ef1f9e7f4fe0e5c73 Mon Sep 17 00:00:00 2001 From: "U-ADF\\BranfoSJ" Date: Tue, 12 Dec 2023 13:03:44 +0000 Subject: [PATCH 155/356] move kim-api/2.3.0-GCCcore-11.2.0 to GCC --- ...pi-2.3.0-GCCcore-11.2.0.eb => kim-api-2.3.0-GCC-11.2.0.eb} | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) rename easybuild/easyconfigs/k/kim-api/{kim-api-2.3.0-GCCcore-11.2.0.eb => kim-api-2.3.0-GCC-11.2.0.eb} (92%) diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-11.2.0.eb similarity index 92% rename from easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-11.2.0.eb rename to easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-11.2.0.eb index 75b74574da8..7f3a0b38ef7 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-11.2.0.eb @@ -18,14 +18,12 @@ or to install them all. """ -toolchain = {'name': 'GCCcore', 'version': '11.2.0'} +toolchain = {'name': 'GCC', 'version': '11.2.0'} source_urls = ['https://s3.openkim.org/kim-api/'] sources = ['%(name)s-%(version)s.txz'] checksums = ['93673bb8fbc0625791f2ee67915d1672793366d10cabc63e373196862c14f991'] -builddependencies = [('binutils', '2.37')] - dependencies = [ ('CMake', '3.22.1'), # Also needed to install models, thus not just a builddependency. ] From 98cd2be40116878d2a3dbabb759ae5a3daa9b107 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Tue, 12 Dec 2023 14:10:13 +0100 Subject: [PATCH 156/356] remove commented out lines in MitoHiFi easyconfig --- easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb | 3 --- 1 file changed, 3 deletions(-) diff --git a/easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb b/easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb index 9875b417e3b..b1209baa6e0 100644 --- a/easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb +++ b/easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb @@ -24,9 +24,6 @@ dependencies = [ ('BLAST+', '2.14.0'), ] -# https://github.com/RemiAllio/MitoFinder -# MitoFinder=v1.4.0 - use_pip = True exts_list = [ From 783013ebd19a62c86e9b3a4977da3abd45876765 Mon Sep 17 00:00:00 2001 From: "U-ADF\\BranfoSJ" Date: Tue, 12 Dec 2023 13:48:22 +0000 Subject: [PATCH 157/356] move kim-api/2.2.1-GCCcore-10.3.0 to GCC --- ...pi-2.2.1-GCCcore-10.3.0.eb => kim-api-2.2.1-GCC-10.3.0.eb} | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) rename easybuild/easyconfigs/k/kim-api/{kim-api-2.2.1-GCCcore-10.3.0.eb => kim-api-2.2.1-GCC-10.3.0.eb} (92%) diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.3.0.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCC-10.3.0.eb similarity index 92% rename from easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.3.0.eb rename to easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCC-10.3.0.eb index 89fd77df997..732c7773479 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCC-10.3.0.eb @@ -18,14 +18,12 @@ or to install them all. """ -toolchain = {'name': 'GCCcore', 'version': '10.3.0'} +toolchain = {'name': 'GCC', 'version': '10.3.0'} source_urls = ['https://s3.openkim.org/kim-api/'] sources = ['%(name)s-%(version)s.txz'] checksums = ['1d5a12928f7e885ebe74759222091e48a7e46f77e98d9147e26638c955efbc8e'] -builddependencies = [('binutils', '2.36.1')] - dependencies = [ ('CMake', '3.20.1'), # Also needed to install models, thus not just a builddependency. ] From 3e369a4ec4866c31ba4b39eea32e902c7803c890 Mon Sep 17 00:00:00 2001 From: "U-ADF\\BranfoSJ" Date: Tue, 12 Dec 2023 13:50:29 +0000 Subject: [PATCH 158/356] move kim-api/2.2.1-GCCcore-10.2.0 to GCC --- ...pi-2.2.1-GCCcore-10.2.0.eb => kim-api-2.2.1-GCC-10.2.0.eb} | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) rename easybuild/easyconfigs/k/kim-api/{kim-api-2.2.1-GCCcore-10.2.0.eb => kim-api-2.2.1-GCC-10.2.0.eb} (92%) diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.2.0.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCC-10.2.0.eb similarity index 92% rename from easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.2.0.eb rename to easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCC-10.2.0.eb index 8c5e5691eb1..a3d76ec4646 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCC-10.2.0.eb @@ -18,14 +18,12 @@ or to install them all. """ -toolchain = {'name': 'GCCcore', 'version': '10.2.0'} +toolchain = {'name': 'GCC', 'version': '10.2.0'} source_urls = ['https://s3.openkim.org/kim-api/'] sources = ['%(name)s-%(version)s.txz'] checksums = ['1d5a12928f7e885ebe74759222091e48a7e46f77e98d9147e26638c955efbc8e'] -builddependencies = [('binutils', '2.35')] - dependencies = [ ('CMake', '3.18.4'), # Also needed to install models, thus not just a builddependency. ] From afe3a5f0f3fbf0d83789ddefe0937caf2d07fa70 Mon Sep 17 00:00:00 2001 From: "U-ADF\\BranfoSJ" Date: Tue, 12 Dec 2023 13:52:15 +0000 Subject: [PATCH 159/356] and move deps --- ...GCCcore-10.2.0.eb => openkim-models-20190725-GCC-10.2.0.eb} | 3 +-- ...GCCcore-10.2.0.eb => openkim-models-20210128-GCC-10.2.0.eb} | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) rename easybuild/easyconfigs/o/openkim-models/{openkim-models-20190725-GCCcore-10.2.0.eb => openkim-models-20190725-GCC-10.2.0.eb} (95%) rename easybuild/easyconfigs/o/openkim-models/{openkim-models-20210128-GCCcore-10.2.0.eb => openkim-models-20210128-GCC-10.2.0.eb} (95%) diff --git a/easybuild/easyconfigs/o/openkim-models/openkim-models-20190725-GCCcore-10.2.0.eb b/easybuild/easyconfigs/o/openkim-models/openkim-models-20190725-GCC-10.2.0.eb similarity index 95% rename from easybuild/easyconfigs/o/openkim-models/openkim-models-20190725-GCCcore-10.2.0.eb rename to easybuild/easyconfigs/o/openkim-models/openkim-models-20190725-GCC-10.2.0.eb index 2b86b5deab6..90c5ae682ee 100644 --- a/easybuild/easyconfigs/o/openkim-models/openkim-models-20190725-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/o/openkim-models/openkim-models-20190725-GCC-10.2.0.eb @@ -14,10 +14,9 @@ This EasyBuild installs the models. The API itself is in the kim-api package. """ -toolchain = {'name': 'GCCcore', 'version': '10.2.0'} +toolchain = {'name': 'GCC', 'version': '10.2.0'} builddependencies = [ - ('binutils', '2.35'), ('pkg-config', '0.29.2'), ] diff --git a/easybuild/easyconfigs/o/openkim-models/openkim-models-20210128-GCCcore-10.2.0.eb b/easybuild/easyconfigs/o/openkim-models/openkim-models-20210128-GCC-10.2.0.eb similarity index 95% rename from easybuild/easyconfigs/o/openkim-models/openkim-models-20210128-GCCcore-10.2.0.eb rename to easybuild/easyconfigs/o/openkim-models/openkim-models-20210128-GCC-10.2.0.eb index f1ab75253ab..2e2b058ef62 100644 --- a/easybuild/easyconfigs/o/openkim-models/openkim-models-20210128-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/o/openkim-models/openkim-models-20210128-GCC-10.2.0.eb @@ -14,10 +14,9 @@ This EasyBuild installs the models. The API itself is in the kim-api package. """ -toolchain = {'name': 'GCCcore', 'version': '10.2.0'} +toolchain = {'name': 'GCC', 'version': '10.2.0'} builddependencies = [ - ('binutils', '2.35'), ('pkg-config', '0.29.2'), ] From e00bbcea862b6648fca8f174e4ade6613355ceb5 Mon Sep 17 00:00:00 2001 From: "U-ADF\\BranfoSJ" Date: Tue, 12 Dec 2023 14:33:08 +0000 Subject: [PATCH 160/356] need an iccifort/2020.4.304 kim-api --- .../kim-api-2.2.1-iccifort-2020.4.304.eb | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-iccifort-2020.4.304.eb diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-iccifort-2020.4.304.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-iccifort-2020.4.304.eb new file mode 100644 index 00000000000..825a324d757 --- /dev/null +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-iccifort-2020.4.304.eb @@ -0,0 +1,42 @@ +easyblock = 'CMakeMake' + +name = 'kim-api' +version = '2.2.1' + +homepage = 'https://openkim.org/' +description = """Open Knowledgebase of Interatomic Models. + +KIM is an API and OpenKIM is a collection of interatomic models (potentials) for +atomistic simulations. This is a library that can be used by simulation programs +to get access to the models in the OpenKIM database. + +This EasyBuild only installs the API, the models can be installed with the +package openkim-models, or the user can install them manually by running + kim-api-collections-management install user MODELNAME +or + kim-api-collections-management install user OpenKIM +to install them all. + """ + +toolchain = {'name': 'iccifort', 'version': '2020.4.304'} + +source_urls = ['https://s3.openkim.org/kim-api/'] +sources = ['%(name)s-%(version)s.txz'] +checksums = ['1d5a12928f7e885ebe74759222091e48a7e46f77e98d9147e26638c955efbc8e'] + +dependencies = [ + ('CMake', '3.18.4'), # Also needed to install models, thus not just a builddependency. +] + +parallel = 1 + +modextravars = { + 'KIM_API_CMAKE_PREFIX_DIR': '%(installdir)s/lib64' +} + +sanity_check_paths = { + 'files': ['bin/kim-api-collections-management', 'lib64/libkim-api.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'chem' From 08655b6cf97125e9d9d728c2d8933bda9ea39f5b Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Tue, 12 Dec 2023 15:49:47 +0100 Subject: [PATCH 161/356] Rename R-bundle-CRAN-2023.11-foss-2023a.eb to R-bundle-CRAN-2023.12-foss-2023a.eb --- ...-2023.11-foss-2023a.eb => R-bundle-CRAN-2023.12-foss-2023a.eb} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename easybuild/easyconfigs/r/R-bundle-CRAN/{R-bundle-CRAN-2023.11-foss-2023a.eb => R-bundle-CRAN-2023.12-foss-2023a.eb} (100%) diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb similarity index 100% rename from easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.11-foss-2023a.eb rename to easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb From a6f0290b520d7a1040fd827fdb058f1394e5d8e2 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Tue, 12 Dec 2023 16:05:09 +0100 Subject: [PATCH 162/356] fix version of R-bundle-CRAN-2023.12-foss-2023a.eb --- .../r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb index 276c5472c47..61f2a58a16a 100644 --- a/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb @@ -1,7 +1,7 @@ easyblock = 'Bundle' name = 'R-bundle-CRAN' -version = '2023.11' +version = '2023.12' homepage = 'https://www.r-project.org/' description = "Bundle of R packages from CRAN" From c36168487eee8863d31d84523eb569dada06f522 Mon Sep 17 00:00:00 2001 From: sassy Date: Tue, 12 Dec 2023 16:46:44 +0000 Subject: [PATCH 163/356] adding easyconfigs: CREST-2.12-intel-2022a.eb --- .../c/CREST/CREST-2.12-intel-2022a.eb | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb diff --git a/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb b/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb new file mode 100644 index 00000000000..d2bf9b29cbd --- /dev/null +++ b/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb @@ -0,0 +1,34 @@ +# Author: Jasper Grimm (UoY) +# Update to 2.12: +# Author: J. Sassmannshausen (Imperial College London) + +easyblock = 'CMakeMake' + +name = 'CREST' +version = '2.12' + +homepage = 'https://xtb-docs.readthedocs.io/en/latest/crest.html' +description = """CREST is an utility/driver program for the xtb program. Originally it was designed + as conformer sampling program, hence the abbreviation Conformer–Rotamer Ensemble Sampling Tool, + but now offers also some utility functions for calculations with the GFNn–xTB methods. Generally + the program functions as an IO based OMP scheduler (i.e., calculations are performed by the xtb + program) and tool for the creation and analysation of structure ensembles. +""" + +toolchain = {'name': 'intel', 'version': '2022a'} + +github_account = 'grimme-lab' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['390f0ac0aedafbd6bb75974fcffefe7e0232ad6c4ea0ab4f1a77e656a3ce263d'] + +builddependencies = [('CMake', '3.24.3')] + +sanity_check_paths = { + 'files': ['bin/%s' % name.lower()], + 'dirs': [], +} + +sanity_check_commands = ["crest -h", "crest --cite"] + +moduleclass = 'chem' From 8426ba7ceb9e827a2000fbc3aaf318a2389d4eaa Mon Sep 17 00:00:00 2001 From: sassy Date: Tue, 12 Dec 2023 16:55:10 +0000 Subject: [PATCH 164/356] adding easyconfigs: CENSO-1.2.0-intel-2022a.eb --- .../c/CENSO/CENSO-1.2.0-intel-2022a.eb | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 easybuild/easyconfigs/c/CENSO/CENSO-1.2.0-intel-2022a.eb diff --git a/easybuild/easyconfigs/c/CENSO/CENSO-1.2.0-intel-2022a.eb b/easybuild/easyconfigs/c/CENSO/CENSO-1.2.0-intel-2022a.eb new file mode 100644 index 00000000000..106afeed1b5 --- /dev/null +++ b/easybuild/easyconfigs/c/CENSO/CENSO-1.2.0-intel-2022a.eb @@ -0,0 +1,43 @@ +# Author: J. Sassmannshausen (Imperial College London) + +easyblock = 'PythonBundle' + +name = 'CENSO' +version = '1.2.0' + +homepage = 'https://xtb-docs.readthedocs.io/en/latest/CENSO_docs/censo.html' +description = """Commandline Energetic SOrting (CENSO) is a sorting algorithm for +efficient evaluation of Structure Ensembles (SE). The input ensemble (or single +structure) originating from a CREST[SQM/FF] run can be ranked by free energy at +DFT level and/or geometries can be optimized using DFT.""" + +citing = """The main publication for the CENSO program can be found at J. Phys. Chem. A 2021 +https://pubs.acs.org/doi/10.1021/acs.jpca.1c00971""" + +toolchain = {'name': 'intel', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('xtb', '6.6.0'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + (name, version, { + 'source_urls': ['https://github.com/grimme-lab/CENSO/archive'], + 'sources': ['v.%(version)s.tar.gz'], + 'checksums': ['f1d77d8eb9d25fe4157491a5d298321f84999123970411831b059cea39aecad2'], + 'modulename': 'censo_qm' + }), +] + +sanity_check_paths = { + 'files': ['bin/censo'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["censo --help"] + +moduleclass = 'chem' From 94603d9f4f5d8a100bb2f34c200a3074f3be1dd2 Mon Sep 17 00:00:00 2001 From: sassy Date: Tue, 12 Dec 2023 17:52:44 +0000 Subject: [PATCH 165/356] Missing runtime xtb added --- easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb b/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb index d2bf9b29cbd..53aabae810f 100644 --- a/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb +++ b/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb @@ -24,6 +24,8 @@ checksums = ['390f0ac0aedafbd6bb75974fcffefe7e0232ad6c4ea0ab4f1a77e656a3ce263d'] builddependencies = [('CMake', '3.24.3')] +dependencies = [('xtb', '6.6.0')] # required to run the program + sanity_check_paths = { 'files': ['bin/%s' % name.lower()], 'dirs': [], From 7c422f2094990876f53cf8b883b4654b9c250635 Mon Sep 17 00:00:00 2001 From: sassy Date: Tue, 12 Dec 2023 18:26:16 +0000 Subject: [PATCH 166/356] adding easyconfigs: xtb-6.6.0-intel-2022a.eb, xtb-6.6.1-intel-2022b.eb --- .../x/xtb/xtb-6.6.0-intel-2022a.eb | 47 ++++++++++++++++++ .../x/xtb/xtb-6.6.1-intel-2022b.eb | 49 +++++++++++++++++++ 2 files changed, 96 insertions(+) create mode 100644 easybuild/easyconfigs/x/xtb/xtb-6.6.0-intel-2022a.eb create mode 100644 easybuild/easyconfigs/x/xtb/xtb-6.6.1-intel-2022b.eb diff --git a/easybuild/easyconfigs/x/xtb/xtb-6.6.0-intel-2022a.eb b/easybuild/easyconfigs/x/xtb/xtb-6.6.0-intel-2022a.eb new file mode 100644 index 00000000000..c10cacd5d82 --- /dev/null +++ b/easybuild/easyconfigs/x/xtb/xtb-6.6.0-intel-2022a.eb @@ -0,0 +1,47 @@ +easyblock = 'MesonNinja' + +name = 'xtb' +version = '6.6.0' + +homepage = 'https://xtb-docs.readthedocs.io' +description = """ xtb - An extended tight-binding semi-empirical program package. """ + +toolchain = {'name': 'intel', 'version': '2022a'} + +github_account = 'grimme-lab' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] + +patches = ['xtb-6.6.0-foss-2022a_fix-custom-libraries.patch'] + +checksums = [ + '1845a9ba71c7bdb414e14ef3dad676728c31a2a94b26303551da57704c78a3e3', # v6.6.0.tar.gz + # xtb-6.6.0-foss-2022a_fix-custom-libraries.patch + '4e2e21b13a8d71b6b5d29c586fb28423a0f9a9ad518ebdca18cf0fa0cf27bc6e', +] + +builddependencies = [ + ('Meson', '0.62.1'), + ('Ninja', '1.10.2'), + ('pkgconf', '1.8.0'), +] + +configopts = "--buildtype release " + + +runtest = 'meson' +testopts = 'test -C %(builddir)s/easybuild_obj -t 60' # Ensure test don't timeout + +sanity_check_paths = { + 'files': ['bin/xtb', 'include/xtb.h'] + ['lib/libxtb.%s' % e for e in ('a', SHLIB_EXT)], + 'dirs': ['share'], +} + +sanity_check_commands = ["xtb --help"] + +modextravars = { + 'XTBHOME': '%(installdir)s', + 'XTBPATH': '%(installdir)s', +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/x/xtb/xtb-6.6.1-intel-2022b.eb b/easybuild/easyconfigs/x/xtb/xtb-6.6.1-intel-2022b.eb new file mode 100644 index 00000000000..430d7f2da25 --- /dev/null +++ b/easybuild/easyconfigs/x/xtb/xtb-6.6.1-intel-2022b.eb @@ -0,0 +1,49 @@ +# Updated to 6.6.1, dependencies added as modules +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'MesonNinja' + +name = 'xtb' +version = '6.6.1' + +homepage = 'https://xtb-docs.readthedocs.io' +description = """ xtb - An extended tight-binding semi-empirical program package. """ + +toolchain = {'name': 'intel', 'version': '2022b'} + +github_account = 'grimme-lab' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['df9a9fbcbf685a94ba6e1a97a6fe6a8530227ea380a1507cb758e72907542dfe'] + +builddependencies = [ + ('Meson', '0.64.0'), + ('Ninja', '1.11.1'), + ('pkgconf', '1.9.3'), + ('git', '2.38.1', '-nodocs'), +] + +dependencies = [ + ('tblite', '0.3.0'), + ('mctc-lib', '0.3.1'), + ('dftd4', '3.4.0'), +] + +configopts = "--buildtype release " + +runtest = 'meson' +testopts = 'test -C %(builddir)s/easybuild_obj --num-processes 1 -t 60' # Ensure test don't timeout + +sanity_check_paths = { + 'files': ['bin/xtb', 'include/xtb.h'] + ['lib/libxtb.%s' % e for e in ('a', SHLIB_EXT)], + 'dirs': ['share'], +} + +sanity_check_commands = ["xtb --help"] + +modextravars = { + 'XTBHOME': '%(installdir)s', + 'XTBPATH': '%(installdir)s', +} + +moduleclass = 'chem' From d8f374538e6cf27d7a592e0ab17bcf74328275e9 Mon Sep 17 00:00:00 2001 From: sassy Date: Tue, 12 Dec 2023 18:30:10 +0000 Subject: [PATCH 167/356] Cleanup and testjobs restricted to 1 core --- easybuild/easyconfigs/x/xtb/xtb-6.6.0-intel-2022a.eb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/x/xtb/xtb-6.6.0-intel-2022a.eb b/easybuild/easyconfigs/x/xtb/xtb-6.6.0-intel-2022a.eb index c10cacd5d82..9b68c99495d 100644 --- a/easybuild/easyconfigs/x/xtb/xtb-6.6.0-intel-2022a.eb +++ b/easybuild/easyconfigs/x/xtb/xtb-6.6.0-intel-2022a.eb @@ -28,9 +28,8 @@ builddependencies = [ configopts = "--buildtype release " - runtest = 'meson' -testopts = 'test -C %(builddir)s/easybuild_obj -t 60' # Ensure test don't timeout +testopts = 'test -C %(builddir)s/easybuild_obj --num-processes 1 -t 60' # Ensure test don't timeout sanity_check_paths = { 'files': ['bin/xtb', 'include/xtb.h'] + ['lib/libxtb.%s' % e for e in ('a', SHLIB_EXT)], From 3e8656bab82b28186b4492ce94270a1ff3ba6ebf Mon Sep 17 00:00:00 2001 From: sassy Date: Tue, 12 Dec 2023 20:59:33 +0000 Subject: [PATCH 168/356] intel-2022b removed as tblite-0.3.0-intel-2022b gives segfaults --- .../x/xtb/xtb-6.6.1-intel-2022b.eb | 49 ------------------- 1 file changed, 49 deletions(-) delete mode 100644 easybuild/easyconfigs/x/xtb/xtb-6.6.1-intel-2022b.eb diff --git a/easybuild/easyconfigs/x/xtb/xtb-6.6.1-intel-2022b.eb b/easybuild/easyconfigs/x/xtb/xtb-6.6.1-intel-2022b.eb deleted file mode 100644 index 430d7f2da25..00000000000 --- a/easybuild/easyconfigs/x/xtb/xtb-6.6.1-intel-2022b.eb +++ /dev/null @@ -1,49 +0,0 @@ -# Updated to 6.6.1, dependencies added as modules -# Author: J. Sassmannshausen (Imperial College London/UK) - -easyblock = 'MesonNinja' - -name = 'xtb' -version = '6.6.1' - -homepage = 'https://xtb-docs.readthedocs.io' -description = """ xtb - An extended tight-binding semi-empirical program package. """ - -toolchain = {'name': 'intel', 'version': '2022b'} - -github_account = 'grimme-lab' -source_urls = [GITHUB_LOWER_SOURCE] -sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] -checksums = ['df9a9fbcbf685a94ba6e1a97a6fe6a8530227ea380a1507cb758e72907542dfe'] - -builddependencies = [ - ('Meson', '0.64.0'), - ('Ninja', '1.11.1'), - ('pkgconf', '1.9.3'), - ('git', '2.38.1', '-nodocs'), -] - -dependencies = [ - ('tblite', '0.3.0'), - ('mctc-lib', '0.3.1'), - ('dftd4', '3.4.0'), -] - -configopts = "--buildtype release " - -runtest = 'meson' -testopts = 'test -C %(builddir)s/easybuild_obj --num-processes 1 -t 60' # Ensure test don't timeout - -sanity_check_paths = { - 'files': ['bin/xtb', 'include/xtb.h'] + ['lib/libxtb.%s' % e for e in ('a', SHLIB_EXT)], - 'dirs': ['share'], -} - -sanity_check_commands = ["xtb --help"] - -modextravars = { - 'XTBHOME': '%(installdir)s', - 'XTBPATH': '%(installdir)s', -} - -moduleclass = 'chem' From 4229f63a75b461de10d245dd5abd6e6fbe62f64d Mon Sep 17 00:00:00 2001 From: Lev Lafayette Date: Wed, 13 Dec 2023 11:48:36 +1100 Subject: [PATCH 169/356] Create KyotoCabinet-1.2.80-GCCcore-11.3.0.eb Update version, update toolchain, update repository source. --- .../KyotoCabinet-1.2.80-GCCcore-11.3.0.eb | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 easybuild/easyconfigs/k/KyotoCabinet/KyotoCabinet-1.2.80-GCCcore-11.3.0.eb diff --git a/easybuild/easyconfigs/k/KyotoCabinet/KyotoCabinet-1.2.80-GCCcore-11.3.0.eb b/easybuild/easyconfigs/k/KyotoCabinet/KyotoCabinet-1.2.80-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..92a1ca70d10 --- /dev/null +++ b/easybuild/easyconfigs/k/KyotoCabinet/KyotoCabinet-1.2.80-GCCcore-11.3.0.eb @@ -0,0 +1,22 @@ +easyblock = 'ConfigureMake' + +name = 'KyotoCabinet' +version = '1.2.80' + +homepage = 'https://dbmx.net/kyotocabinet/' +description = "Kyoto Cabinet is a library of routines for managing a database." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://dbmx.net/kyotocabinet/pkg/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['4c85d736668d82920bfdbdb92ac3d66b7db1108f09581a769dd9160a02def349'] + +builddependencies = [('binutils', '2.38')] + +sanity_check_paths = { + 'files': ['bin/kcdirmgr', 'bin/kcdirtest', 'bin/kcstashtest', 'bin/kcpolymgr', 'bin/kcpolytest'], + 'dirs': [], +} + +moduleclass = 'lib' From f4fae485e37c375003cf0ac9c6e6931d127ec2e3 Mon Sep 17 00:00:00 2001 From: Ake Sandgren Date: Wed, 13 Dec 2023 08:20:27 +0100 Subject: [PATCH 170/356] Move FACE and forbear to GCC level --- ....1-GCCcore-10.3.0.eb => FACE-1.1.1-GCC-10.3.0.eb} | 6 +++--- ...GCCcore-10.3.0.eb => forbear-1.2.0-GCC-10.3.0.eb} | 12 ++++++------ 2 files changed, 9 insertions(+), 9 deletions(-) rename easybuild/easyconfigs/f/FACE/{FACE-1.1.1-GCCcore-10.3.0.eb => FACE-1.1.1-GCC-10.3.0.eb} (89%) rename easybuild/easyconfigs/f/forbear/{forbear-1.2.0-GCCcore-10.3.0.eb => forbear-1.2.0-GCC-10.3.0.eb} (60%) diff --git a/easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCCcore-10.3.0.eb b/easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCC-10.3.0.eb similarity index 89% rename from easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCCcore-10.3.0.eb rename to easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCC-10.3.0.eb index 3b23657d0ed..c235f2a1bfb 100644 --- a/easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCC-10.3.0.eb @@ -7,7 +7,7 @@ homepage = 'https://github.com/szaghi/FACE' description = """A Fortran Ansi Colors (and Styles) Environment. A KISS pure Fortran Library for easy colorize (and stylize) strings.""" -toolchain = {'name': 'GCCcore', 'version': '10.3.0'} +toolchain = {'name': 'GCC', 'version': '10.3.0'} source_urls = ['https://github.com/szaghi/FACE/releases/download/v%(version)s'] sources = ['%(name)s-v%(version)s.tar.gz'] @@ -20,12 +20,12 @@ checksums = [ ] builddependencies = [ - ('binutils', '2.36.1'), ('FoBiS', '3.0.5'), ] build_cmd = 'FoBiS.py build' -buildopts = '-mode face-shared-gnu' +buildopts = '-mode face-shared-gnu ' +buildopts += '-verbose ' files_to_copy = [(['lib/mod/*.mod'], 'include'), (['lib/libface.%s' % SHLIB_EXT], 'lib')] diff --git a/easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCC-10.3.0.eb similarity index 60% rename from easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCCcore-10.3.0.eb rename to easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCC-10.3.0.eb index ef6ec74a694..4b66aff9361 100644 --- a/easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCC-10.3.0.eb @@ -6,20 +6,19 @@ version = '1.2.0' homepage = 'https://github.com/szaghi/forbear' description = "A Fortran Library for building and running fancy progress bar" -toolchain = {'name': 'GCCcore', 'version': '10.3.0'} +toolchain = {'name': 'GCC', 'version': '10.3.0'} -source_urls = ['https://github.com/szaghi/forbear/releases/download/v%(version)s'] -sources = ['%(name)s-v%(version)s.tar.gz'] +source_urls = ['https://github.com/szaghi/forbear/archive'] +sources = ['v%(version)s.tar.gz'] patches = [ 'forbear-1.2.0_use_external_FACE.patch', ] checksums = [ - '72b399526ea291e4d5bed121f8a812aadfe7cea59a1553eb0adf0f3bf5ce1554', # forbear-v1.2.0.tar.gz - '26a586affade31cb83fa23d86a889b28de4b3c30ca6d63946740da0320ba818d', # forbear-1.2.0_use_external_FACE.patch + '3cff81c27c33edada152cca8429b0d6e45ac109f1f135561cd01aacf4d5fd3be', # v1.2.0.tar.gz + '99e5dd2d901b1b70eb9a89a5754de56dfe705c15c45cd69e83d6c52ff5a9c80b', # forbear-1.2.0_use_external_FACE.patch ] builddependencies = [ - ('binutils', '2.36.1'), ('FoBiS', '3.0.5'), ] @@ -29,6 +28,7 @@ dependencies = [ build_cmd = 'FoBiS.py build' buildopts = '-mode shared-gnu ' +buildopts += '-verbose ' files_to_copy = [(['shared/mod/*.mod'], 'include'), (['shared/libforbear.%s' % SHLIB_EXT], 'lib')] From 7458884d72ef7de123747df2e2351140a1569267 Mon Sep 17 00:00:00 2001 From: Ake Sandgren Date: Wed, 13 Dec 2023 08:24:37 +0100 Subject: [PATCH 171/356] Drop already merged FoBiS --- .../f/FoBiS/FoBiS-3.0.5-GCCcore-10.3.0.eb | 38 ------------------- 1 file changed, 38 deletions(-) delete mode 100644 easybuild/easyconfigs/f/FoBiS/FoBiS-3.0.5-GCCcore-10.3.0.eb diff --git a/easybuild/easyconfigs/f/FoBiS/FoBiS-3.0.5-GCCcore-10.3.0.eb b/easybuild/easyconfigs/f/FoBiS/FoBiS-3.0.5-GCCcore-10.3.0.eb deleted file mode 100644 index 06c9257d5bf..00000000000 --- a/easybuild/easyconfigs/f/FoBiS/FoBiS-3.0.5-GCCcore-10.3.0.eb +++ /dev/null @@ -1,38 +0,0 @@ -easyblock = 'PythonBundle' - -name = 'FoBiS' -version = '3.0.5' - -homepage = 'https://github.com/szaghi/FoBiS' -description = "A Fortran Building System for automatic building modern Fortran projects" - -toolchain = {'name': 'GCCcore', 'version': '10.3.0'} - -dependencies = [ - ('binutils', '2.36.1'), - ('Python', '3.9.5'), - ('BeautifulSoup', '4.10.0'), - ('FORD', '6.1.6'), -] - -use_pip = True -sanity_pip_check = True - -exts_list = [ - ('argparse', '1.4.0', { - 'checksums': ['62b089a55be1d8949cd2bc7e0df0bddb9e028faefc8c32038cc84862aefdd6e4'], - }), - ('PreForM.py', '1.1.3', { - 'modulename': 'PreForM', - 'checksums': ['420457c236801e8803f4e8b8c7e44a7b65a5becc11d5d75404da537b1e09f3a8'], - }), - ('configparser', '5.2.0', { - 'checksums': ['1b35798fdf1713f1c3139016cfcbc461f09edbf099d1fb658d4b7479fcaa3daa'], - }), - ('FoBiS.py', version, { - 'modulename': 'fobis', - 'checksums': ['ef23fde4199277abc693d539a81e0728571c349174da6b7476579f82482ab96c'], - }), -] - -moduleclass = 'devel' From a036bb037a7f8a74d9042e79220866beaa1f04b4 Mon Sep 17 00:00:00 2001 From: Ake Sandgren Date: Wed, 13 Dec 2023 08:44:55 +0100 Subject: [PATCH 172/356] Update forbear patch --- .../forbear-1.2.0_use_external_FACE.patch | 56 ++++++++----------- 1 file changed, 24 insertions(+), 32 deletions(-) diff --git a/easybuild/easyconfigs/f/forbear/forbear-1.2.0_use_external_FACE.patch b/easybuild/easyconfigs/f/forbear/forbear-1.2.0_use_external_FACE.patch index fdf2967731e..70cdcb09067 100644 --- a/easybuild/easyconfigs/f/forbear/forbear-1.2.0_use_external_FACE.patch +++ b/easybuild/easyconfigs/f/forbear/forbear-1.2.0_use_external_FACE.patch @@ -1,105 +1,97 @@ Use external FACE build Åke Sandgren, 2022-01-25 -diff -ru forbear.orig/fobos forbear/fobos ---- forbear.orig/fobos 2017-06-11 14:56:47.000000000 +0200 -+++ forbear/fobos 2022-01-25 09:16:13.737587610 +0100 -@@ -17,7 +17,7 @@ - $DEBUG_PGI = -C -g -gopt -Mchkfpstk -Mchkptr -Mchkstk -Mcoff -traceback - $OPTIMIZE = -O3 - $EXDIRS = PENF/src/tests/ -- FACE/src/tests/ FACE/src/third_party/ -+# FACE/src/tests/ FACE/src/third_party/ - - # main modes - # GNU -@@ -117,6 +117,8 @@ +diff --git a/fobos b/fobos +index 4359fca..76da757 100644 +--- a/fobos ++++ b/fobos +@@ -117,6 +117,8 @@ colors = True quiet = False log = True jobs = 2 -+ext_libs = face +include = $EBROOTFACE/include ++ext_libs = face [template-static-gnu] compiler = gnu -@@ -130,6 +132,8 @@ +@@ -130,6 +132,8 @@ colors = True quiet = False log = True jobs = 2 -+ext_libs = face +include = $EBROOTFACE/include ++ext_libs = face [template-shared-gnu-debug] compiler = gnu -@@ -144,6 +148,8 @@ +@@ -144,6 +148,8 @@ colors = True quiet = False log = True jobs = 2 -+ext_libs = face +include = $EBROOTFACE/include ++ext_libs = face [template-static-gnu-debug] compiler = gnu -@@ -158,6 +164,8 @@ +@@ -158,6 +164,8 @@ colors = True quiet = False log = True jobs = 2 -+ext_libs = face +include = $EBROOTFACE/include ++ext_libs = face [template-shared-intel] compiler = intel -@@ -171,6 +179,8 @@ +@@ -171,6 +179,8 @@ colors = True quiet = False log = True jobs = 2 -+ext_libs = face +include = $EBROOTFACE/include ++ext_libs = face [template-static-intel] compiler = intel -@@ -184,6 +194,8 @@ +@@ -184,6 +194,8 @@ colors = True quiet = False log = True jobs = 2 -+ext_libs = face +include = $EBROOTFACE/include ++ext_libs = face [template-shared-intel-debug] compiler = intel -@@ -198,6 +210,8 @@ +@@ -198,6 +210,8 @@ colors = True quiet = False log = True jobs = 2 -+ext_libs = face +include = $EBROOTFACE/include ++ext_libs = face [template-static-intel-debug] compiler = intel -@@ -212,6 +226,8 @@ +@@ -212,6 +226,8 @@ colors = True quiet = False log = True jobs = 2 -+ext_libs = face +include = $EBROOTFACE/include ++ext_libs = face [template-static-pgi] compiler = pgi -@@ -225,6 +241,8 @@ +@@ -225,6 +241,8 @@ colors = True quiet = False log = True jobs = 2 -+ext_libs = face +include = $EBROOTFACE/include ++ext_libs = face [template-static-pgi-debug] compiler = pgi -@@ -239,6 +257,8 @@ +@@ -239,6 +257,8 @@ colors = True quiet = False log = True jobs = 2 -+ext_libs = face +include = $EBROOTFACE/include ++ext_libs = face # rules [rule-makedoc] From e8fa1a6b0df6b7dd30e24e4b562b8da0d4f64966 Mon Sep 17 00:00:00 2001 From: Jakob Schiotz Date: Wed, 13 Dec 2023 10:08:58 +0100 Subject: [PATCH 173/356] adding easyconfigs: scikit-image-0.22.0-foss-2023a.eb, imageio-2.33.1-gfbf-2023a.eb --- .../i/imageio/imageio-2.33.1-gfbf-2023a.eb | 25 ++++++++++ .../scikit-image-0.22.0-foss-2023a.eb | 48 +++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100755 easybuild/easyconfigs/i/imageio/imageio-2.33.1-gfbf-2023a.eb create mode 100644 easybuild/easyconfigs/s/scikit-image/scikit-image-0.22.0-foss-2023a.eb diff --git a/easybuild/easyconfigs/i/imageio/imageio-2.33.1-gfbf-2023a.eb b/easybuild/easyconfigs/i/imageio/imageio-2.33.1-gfbf-2023a.eb new file mode 100755 index 00000000000..063b77078b5 --- /dev/null +++ b/easybuild/easyconfigs/i/imageio/imageio-2.33.1-gfbf-2023a.eb @@ -0,0 +1,25 @@ +easyblock = 'PythonPackage' + +name = 'imageio' +version = '2.33.1' + +homepage = 'https://imageio.github.io' +description = """Imageio is a Python library that provides an easy interface to read and write a wide range of + image data, including animated images, video, volumetric data, and scientific formats.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['78722d40b137bd98f5ec7312119f8aea9ad2049f76f434748eb306b6937cc1ce'] + +dependencies = [ + ('Python', '3.11.3'), + ('matplotlib', '3.7.2'), + ('Pillow', '10.0.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/s/scikit-image/scikit-image-0.22.0-foss-2023a.eb b/easybuild/easyconfigs/s/scikit-image/scikit-image-0.22.0-foss-2023a.eb new file mode 100644 index 00000000000..3a1e6311405 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-image/scikit-image-0.22.0-foss-2023a.eb @@ -0,0 +1,48 @@ +easyblock = 'PythonBundle' + +name = 'scikit-image' +version = '0.22.0' + +homepage = 'https://scikit-image.org/' +description = "scikit-image is a collection of algorithms for image processing." + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('meson-python', '0.13.2'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('matplotlib', '3.7.2'), + ('Pillow', '10.0.0'), + ('networkx', '3.1'), + ('dask', '2023.9.2'), + ('imageio', '2.33.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('PyWavelets', '1.4.1', { + 'modulename': 'pywt', + 'checksums': ['6437af3ddf083118c26d8f97ab43b0724b956c9f958e9ea788659f6a2834ba93'], + }), + ('imread', '0.7.4', { + 'checksums': ['0487adef11a22168700968c1727020361a72f6132b6ced2b8826b02d8cbf744f'], + }), + ('tifffile', '2023.7.18', { + 'checksums': ['5a5a624b2f7ab7f37e9ec4174ae2df1805b9658f89013f9b4b5550672f65f2a1'], + }), + ('lazy_loader', '0.3', { + 'checksums': ['3b68898e34f5b2a29daaaac172c6555512d0f32074f147e2254e4a6d9d838f37'], + }), + (name, version, { + 'modulename': 'skimage', + 'source_tmpl': 'scikit_image-%(version)s.tar.gz', + 'checksums': ['018d734df1d2da2719087d15f679d19285fce97cd37695103deadfaef2873236'], + }), +] + +moduleclass = 'vis' From 5fd9c84b6c460579becc8970f1dc7a6c89fe68a6 Mon Sep 17 00:00:00 2001 From: Jakob Schiotz Date: Wed, 13 Dec 2023 10:25:19 +0100 Subject: [PATCH 174/356] Remove executable bit from imageio .eb file. --- easybuild/easyconfigs/i/imageio/imageio-2.33.1-gfbf-2023a.eb | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 easybuild/easyconfigs/i/imageio/imageio-2.33.1-gfbf-2023a.eb diff --git a/easybuild/easyconfigs/i/imageio/imageio-2.33.1-gfbf-2023a.eb b/easybuild/easyconfigs/i/imageio/imageio-2.33.1-gfbf-2023a.eb old mode 100755 new mode 100644 From 031e7938a08e3d42f15339c87438368a90d7c067 Mon Sep 17 00:00:00 2001 From: Alexander Puck Neuwirth Date: Wed, 13 Dec 2023 12:20:17 +0100 Subject: [PATCH 175/356] Update easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb Co-authored-by: Jasper Grimm <65227842+jfgrimm@users.noreply.github.com> --- easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb b/easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb index 0c1dedf805d..fbed0d9b83b 100644 --- a/easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb @@ -43,7 +43,7 @@ Then you can run `lhapdf update` followed by `lhapdf install your_pdf`. """ modextrapaths = { - 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages' + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', # 'LHAPDF_DATA_PATH': '/path/to/LHAPDF_DATA_PATH', # please adapt } From 8766a0e66d6ff7e02b2d65c0b78f5415c9d3e842 Mon Sep 17 00:00:00 2001 From: sassy Date: Wed, 13 Dec 2023 11:21:18 +0000 Subject: [PATCH 176/356] Dryrun added --- easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb b/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb index 53aabae810f..730906444ae 100644 --- a/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb +++ b/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb @@ -33,4 +33,7 @@ sanity_check_paths = { sanity_check_commands = ["crest -h", "crest --cite"] +test_cmd = 'export PATH=%(builddir)s/easybuild_obj:$PATH && ' +test_cmd += 'cd %(builddir)s/%(namelower)s-%(version)s/examples/expl-0/ && ./run.sh ' + moduleclass = 'chem' From 7ef363989314912a78adfd8f9af80da43f65d6f2 Mon Sep 17 00:00:00 2001 From: Alexander Puck Neuwirth Date: Wed, 13 Dec 2023 12:22:10 +0100 Subject: [PATCH 177/356] Update easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb Co-authored-by: Jasper Grimm <65227842+jfgrimm@users.noreply.github.com> --- easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb b/easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb index fbed0d9b83b..083cb931db2 100644 --- a/easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb @@ -38,7 +38,8 @@ sanity_check_commands = [ ] modloadmsg = """ -To use/install your own PDF data you need to adjust the path `export LHAPDF_DATA_PATH=/local/.../path/`. +To use/install your own PDF data, you need to adjust the $LHAPDF_DATA_PATH: +`export LHAPDF_DATA_PATH=/local/.../path/:$LHAPDF_DATA_PATH` Then you can run `lhapdf update` followed by `lhapdf install your_pdf`. """ From f38e444fd14b5436bd9029a10051f2d598dab39d Mon Sep 17 00:00:00 2001 From: sassy Date: Wed, 13 Dec 2023 11:23:19 +0000 Subject: [PATCH 178/356] Style cleanup --- easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb b/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb index 730906444ae..e825fbace00 100644 --- a/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb +++ b/easybuild/easyconfigs/c/CREST/CREST-2.12-intel-2022a.eb @@ -26,6 +26,10 @@ builddependencies = [('CMake', '3.24.3')] dependencies = [('xtb', '6.6.0')] # required to run the program +# Simple test command just to check if the program is working: +test_cmd = 'export PATH=%(builddir)s/easybuild_obj:$PATH && ' +test_cmd += 'cd %(builddir)s/%(namelower)s-%(version)s/examples/expl-0/ && ./run.sh ' + sanity_check_paths = { 'files': ['bin/%s' % name.lower()], 'dirs': [], @@ -33,7 +37,4 @@ sanity_check_paths = { sanity_check_commands = ["crest -h", "crest --cite"] -test_cmd = 'export PATH=%(builddir)s/easybuild_obj:$PATH && ' -test_cmd += 'cd %(builddir)s/%(namelower)s-%(version)s/examples/expl-0/ && ./run.sh ' - moduleclass = 'chem' From b4cac8e4c712b6f02146d60890e7bb6e1e8d9f45 Mon Sep 17 00:00:00 2001 From: Lev Lafayette Date: Wed, 13 Dec 2023 22:35:28 +1100 Subject: [PATCH 179/356] Create FastQC-0.12.1-Java-11.eb New version --- .../f/FastQC/FastQC-0.12.1-Java-11.eb | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 easybuild/easyconfigs/f/FastQC/FastQC-0.12.1-Java-11.eb diff --git a/easybuild/easyconfigs/f/FastQC/FastQC-0.12.1-Java-11.eb b/easybuild/easyconfigs/f/FastQC/FastQC-0.12.1-Java-11.eb new file mode 100644 index 00000000000..0863208509b --- /dev/null +++ b/easybuild/easyconfigs/f/FastQC/FastQC-0.12.1-Java-11.eb @@ -0,0 +1,42 @@ +# Updated from previous config +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'PackedBinary' + +name = 'FastQC' +version = '0.12.1' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://www.bioinformatics.babraham.ac.uk/projects/fastqc/' +description = """FastQC is a quality control application for high throughput +sequence data. It reads in sequence data in a variety of formats and can either +provide an interactive application to review the results of several different +QC checks, or create an HTML based report which can be integrated into a +pipeline.""" + +toolchain = SYSTEM + +source_urls = ['https://www.bioinformatics.babraham.ac.uk/projects/%(namelower)s'] +sources = ['%(namelower)s_v%(version)s.zip'] +patches = ['FastQC_shebang.patch'] +checksums = [ + '5f4dba8780231a25a6b8e11ab2c238601920c9704caa5458d9de559575d58aa7', # fastqc_v0.12.1.zip + '684701634440864750c9a0b99d81e122a1def78672d436daf5497bff61d9a356', # FastQC_shebang.patch +] + +dependencies = [('Java', '11', '', SYSTEM)] + +postinstallcmds = ["chmod +x %(installdir)s/fastqc"] + +sanity_check_paths = { + 'files': ['fastqc', 'fastqc_icon.ico', 'INSTALL.txt', 'jbzip2-0.9.jar', + 'LICENSE.txt', 'LICENSE_JHDF5.txt', 'README.txt', + 'RELEASE_NOTES.txt', 'run_fastqc.bat', + 'cisd-jhdf5.jar'], + 'dirs': ['Configuration', 'Help', 'Templates', 'uk', 'net', 'org'], +} + +sanity_check_commands = [('fastqc', '-v')] + +moduleclass = 'bio' From 28f1dda387ae70aa2d7f58c2682c9c224cc065e4 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Wed, 13 Dec 2023 16:54:25 +0100 Subject: [PATCH 180/356] fix wrong handling of floats in z3-solver --- .../Z3-4.10.2-GCCcore-11.3.0-Python-3.10.4.eb | 6 ++++- .../z/Z3/Z3-4.10.2_fix-float-coercion.patch | 23 +++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 easybuild/easyconfigs/z/Z3/Z3-4.10.2_fix-float-coercion.patch diff --git a/easybuild/easyconfigs/z/Z3/Z3-4.10.2-GCCcore-11.3.0-Python-3.10.4.eb b/easybuild/easyconfigs/z/Z3/Z3-4.10.2-GCCcore-11.3.0-Python-3.10.4.eb index 4a9bcec963d..61bd96093cf 100644 --- a/easybuild/easyconfigs/z/Z3/Z3-4.10.2-GCCcore-11.3.0-Python-3.10.4.eb +++ b/easybuild/easyconfigs/z/Z3/Z3-4.10.2-GCCcore-11.3.0-Python-3.10.4.eb @@ -32,7 +32,11 @@ _enable_gmp = """sed -i "s/Z3_USE_LIB_GMP.*/Z3_USE_LIB_GMP' : True,/" setup.py & exts_list = [ ('z3-solver', _z3_solver_version, { 'modulename': 'z3', - 'checksums': ['a861081c8f5710996f3f545f12c1137ab38ba4b5b02f0f15d59ba52f6f81d237'], + 'patches': ['Z3-4.10.2_fix-float-coercion.patch'], + 'checksums': [ + 'a861081c8f5710996f3f545f12c1137ab38ba4b5b02f0f15d59ba52f6f81d237', + '6d1d49431ec1920c642c20627eec0800b0cfda6c8fc0b7922875bfd30c95eda8', + ], 'preinstallopts': _fix_parallelism + _enable_gmp, }), ] diff --git a/easybuild/easyconfigs/z/Z3/Z3-4.10.2_fix-float-coercion.patch b/easybuild/easyconfigs/z/Z3/Z3-4.10.2_fix-float-coercion.patch new file mode 100644 index 00000000000..611d19ab3ed --- /dev/null +++ b/easybuild/easyconfigs/z/Z3/Z3-4.10.2_fix-float-coercion.patch @@ -0,0 +1,23 @@ +Fix potential issues when float values are involved, +e.g. `z3.ToInt((a_ + 10) / 3.0)` fails an assertion that the parameter to ToInt is not "real". +Also avoids truncation of floats to int. +Backport of https://github.com/Z3Prover/z3/commit/4a451b10d8ba9f8186789048b08379e19776a4d0 + +Author: Alexander Grund (TU Dresden) + +diff --git a/src/api/python/z3/z3.py b/src/api/python/z3/z3.py +index 8f227649c..b3b14d881 100644 +--- a/src/api/python/z3/z3.py ++++ b/src/api/python/z3/z3.py +@@ -1207,6 +1207,11 @@ def _coerce_exprs(a, b, ctx=None): + a = StringVal(a, b.ctx) + if isinstance(b, str) and isinstance(a, SeqRef): + b = StringVal(b, a.ctx) ++ if isinstance(a, float) and isinstance(b, ArithRef): ++ a = RealVal(a, b.ctx) ++ if isinstance(b, float) and isinstance(a, ArithRef): ++ b = RealVal(b, a.ctx) ++ + s = None + s = _coerce_expr_merge(s, a) + s = _coerce_expr_merge(s, b) From e444843417862b5cc9af1fe0aa0ea8b320053ed4 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Wed, 13 Dec 2023 18:36:45 +0100 Subject: [PATCH 181/356] adding easyconfigs: Ferret-7.6.0-foss-2022a.eb --- .../f/Ferret/Ferret-7.6.0-foss-2022a.eb | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb diff --git a/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb b/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb new file mode 100644 index 00000000000..1364ed858ad --- /dev/null +++ b/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb @@ -0,0 +1,49 @@ +name = 'Ferret' +version = '7.6.0' +homepage = 'https://ferret.pmel.noaa.gov/Ferret/' +description = """Ferret is an interactive computer visualization and analysis environment +designed to meet the needs of oceanographers and meteorologists analyzing large and complex gridded data sets.""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'usempi': True, 'pic': True, 'extra_fflags': '-fallow-argument-mismatch -fallow-invalid-boz'} + +source_urls = ['https://github.com/NOAA-PMEL/Ferret/archive/'] +sources = ['v%s.tar.gz' % version] +checksums = ['69832d740bd44c9eadd198a5de4d96c4c01ae90ae28c2c3414c1bb9f43e475d1'] + +dependencies = [ + ('X11', '20220504'), + ('netCDF-Fortran', '4.6.0'), + ('zlib', '1.2.12'), + ('Szip', '2.1.1'), + ('cURL', '7.83.0'), + ('ncurses', '6.3'), + ('libreadline', '8.1'), + ('tcsh', '6.24.01'), + ('Java', '11', '', SYSTEM), +] + +# /bin/csh is required for installation by bin/make_executable_tar, bin/make_environment_tar +# and also required by many installed scripts in bin/ +osdependencies = ['tcsh'] + +parallel = 1 + +prebuildopts = 'export CPP_X11="-I${EBROOTX11}/include" && ' +buildopts = 'CDFLIB="-lnetcdff -lnetcdf -lhdf5_hl -lhdf5 -lsz"' + +modextravars = { + 'FER_DIR': '%(installdir)s', + 'FER_DSETS': '%(installdir)s/fer_dsets', + 'FER_DATA': '. %(installdir)s/fer_dsets/data %(installdir)s/contrib', + 'FER_DESCR': '. %(installdir)s/fer_dsets/descr', + 'FER_GRIDS': '. %(installdir)s/fer_dsets/grids', + 'FER_GO': '. %(installdir)s/go %(installdir)s/examples %(installdir)s/contrib', + 'FER_EXTERNAL_FUNCTIONS': '%(installdir)s/ext_func/libs', + 'FER_PALETTE': '. %(installdir)s/ppl', + 'SPECTRA': '%(installdir)s/ppl', + 'FER_FONTS': '%(installdir)s/ppl/fonts', + 'PLOTFONTS': '%(installdir)s/ppl/fonts', +} + +moduleclass = 'vis' From 7c46e69cb260f690e43a3f10992bf86c26d232ba Mon Sep 17 00:00:00 2001 From: WilleBell Date: Wed, 13 Dec 2023 19:03:32 +0100 Subject: [PATCH 182/356] adding easyconfigs: Mmg-5.7.2-gompi-2022a.eb, CWIPI-0.12.0-gompi-2022a.eb, f90wrap-0.2.11-foss-2022a.eb and patches: Mmg-5.7.2_fix-test-fail.patch --- .../c/CWIPI/CWIPI-0.12.0-gompi-2022a.eb | 36 ++++++++++++++ .../f/f90wrap/f90wrap-0.2.11-foss-2022a.eb | 37 ++++++++++++++ .../m/Mmg/Mmg-5.7.2-gompi-2022a.eb | 49 +++++++++++++++++++ .../m/Mmg/Mmg-5.7.2_fix-test-fail.patch | 27 ++++++++++ 4 files changed, 149 insertions(+) create mode 100644 easybuild/easyconfigs/c/CWIPI/CWIPI-0.12.0-gompi-2022a.eb create mode 100644 easybuild/easyconfigs/f/f90wrap/f90wrap-0.2.11-foss-2022a.eb create mode 100644 easybuild/easyconfigs/m/Mmg/Mmg-5.7.2-gompi-2022a.eb create mode 100644 easybuild/easyconfigs/m/Mmg/Mmg-5.7.2_fix-test-fail.patch diff --git a/easybuild/easyconfigs/c/CWIPI/CWIPI-0.12.0-gompi-2022a.eb b/easybuild/easyconfigs/c/CWIPI/CWIPI-0.12.0-gompi-2022a.eb new file mode 100644 index 00000000000..fd7fa04b95c --- /dev/null +++ b/easybuild/easyconfigs/c/CWIPI/CWIPI-0.12.0-gompi-2022a.eb @@ -0,0 +1,36 @@ +easyblock = 'CMakeMake' + +name = 'CWIPI' +version = '0.12.0' + +homepage = 'https://w3.onera.fr/cwipi/' +description = """CWIPI (Coupling With Interpolation Parallel Interface) library helps in +chaining and coupling codes. Provides exchanges of interpolated fields through +a non-compliant geometric interface and allows control of the coupling +algorithm using control parameters. CWIPI takes advantage of the distribution +of the definition of the coupling algorithm in the different codes. +""" + +toolchain = {'name': 'gompi', 'version': '2022a'} + +source_urls = ['https://w3.onera.fr/cwipi/sites/default/files/2023-10'] +sources = [SOURCELOWER_TGZ] +checksums = ['775dedd6afd5e148f008fc19b98ad0879a0091880af682cbed89c4978bef5575'] + +builddependencies = [('CMake', '3.24.3')] + +configopts = "-DCWP_ENABLE_Fortran=ON" + +_cwipi_bin = ['c_linear_coupling', 'c_surf_coupling_P1P0_P0P1', 'c_surf_coupling_P1P1', + 'c_surf_coupling_simple_location', 'c_surf_coupling_vector_exchange', 'c_surf_location_triaP2', + 'c_surf_sequential_coupling', 'c_vol_coupling_P1P1', 'c_vol_coupling_polyhedra_P1P1', + 'fortran_plane_PiQj', 'fortran_surf_P1P1', 'fortran_surf_PiQj'] + +# Only sanity check installation files as the tools of CWIPI need at least 2 MPI processes to run +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _cwipi_bin] + + ['lib/libcwp.a', 'lib/libcwp.%s' % SHLIB_EXT, 'lib/libcwpf.a', 'lib/libcwpf.%s' % SHLIB_EXT], + 'dirs': ['include'] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/f/f90wrap/f90wrap-0.2.11-foss-2022a.eb b/easybuild/easyconfigs/f/f90wrap/f90wrap-0.2.11-foss-2022a.eb new file mode 100644 index 00000000000..65b88622430 --- /dev/null +++ b/easybuild/easyconfigs/f/f90wrap/f90wrap-0.2.11-foss-2022a.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonPackage' + +name = 'f90wrap' +version = '0.2.11' + +homepage = 'https://github.com/jameskermode/f90wrap' +description = """f90wrap is a tool to automatically generate Python extension modules which +interface to Fortran code that makes use of derived types. It builds on the +capabilities of the popular f2py utility by generating a simpler Fortran 90 +interface to the original Fortran code which is then suitable for wrapping with +f2py, together with a higher-level Pythonic wrapper that makes the existance of +an additional layer transparent to the final user.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['7f5eda60efbf9ce5bdffb0c864922910c2766bf9eefd3af290c81051226f7fc7'] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/f2py-f90wrap', 'bin/f90doc', 'bin/f90wrap'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(name)s'], +} + +sanity_check_commands = [ + ('f90wrap', '--help'), +] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/m/Mmg/Mmg-5.7.2-gompi-2022a.eb b/easybuild/easyconfigs/m/Mmg/Mmg-5.7.2-gompi-2022a.eb new file mode 100644 index 00000000000..7fbe84ebe9b --- /dev/null +++ b/easybuild/easyconfigs/m/Mmg/Mmg-5.7.2-gompi-2022a.eb @@ -0,0 +1,49 @@ +easyblock = 'CMakeMake' + +name = 'Mmg' +version = '5.7.2' + +homepage = 'https://www.mmgtools.org/' +description = """ +Mmg is an open source software for simplicial remeshing. It provides 3 applications and 4 libraries: +the mmg2d application and the libmmg2d library: adaptation and optimization of a two-dimensional +triangulation and generation of a triangulation from a set of points or from given boundary edges +the mmgs application and the libmmgs library: adaptation and optimization of a surface triangulation +and isovalue discretization the mmg3d application and the libmmg3d library: adaptation and optimization +of a tetrahedral mesh and implicit domain meshing the libmmg library gathering the libmmg2d, +libmmgs and libmmg3d libraries.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} + +source_urls = ['https://github.com/MmgTools/mmg/archive'] +sources = ['v%(version)s.tar.gz'] +patches = ['%(name)s-%(version)s_fix-test-fail.patch'] + +builddependencies = [('CMake', '3.24.3')] +checksums = [ + {'v5.7.2.tar.gz': '4c396dd44aec69e0a171a04f857e28aad2e0bbfb733b48b6d81a2c6868e86840'}, + {'Mmg-5.7.2_fix-test-fail.patch': 'c01cbfadad8c70a8eb3766cc73ab09edd331dda1f445e14c547f28d839c973e6'}, +] + +dependencies = [('SCOTCH', '7.0.1')] + +# common configopts for static, shared library builds +_base_configopts = ' '.join([ + '-DUSE_SCOTCH=ON -DBUILD_TESTING=ON -DONLY_VERY_SHORT_TESTS=ON ', + '-DTEST_LIBMMG2D=ON -DTEST_LIBMMG3D=ON -DTEST_LIBMMGS=ON ', +]) + +# iterative build for both static and shared libraries +configopts = [' '.join([_base_configopts, x]) for x in ['-DBUILD_SHARED_LIBS=OFF', '-DBUILD_SHARED_LIBS=ON']] + + +pretestopts = 'export CTEST_PARALLEL_LEVEL=%(parallel)s &&' +runtest = 'test' + +sanity_check_paths = { + 'files': ['bin/%s_O3' % x for x in ['mmg2d', 'mmg3d', 'mmgs']] + + ['lib/lib%s.%s' % (x, y) for x in ['mmg2d', 'mmg3d', 'mmgs', 'mmg'] for y in ['a', SHLIB_EXT]], + 'dirs': ['include/mmg/%s' % x for x in ['mmg2d', 'mmg3d', 'mmgs']] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/Mmg/Mmg-5.7.2_fix-test-fail.patch b/easybuild/easyconfigs/m/Mmg/Mmg-5.7.2_fix-test-fail.patch new file mode 100644 index 00000000000..b785dfa7ad5 --- /dev/null +++ b/easybuild/easyconfigs/m/Mmg/Mmg-5.7.2_fix-test-fail.patch @@ -0,0 +1,27 @@ +Small tweak on tests to avoid them to fail +Author: Cintia Willemyns (Vrije Universiteit Brussel) + +--- src/common/anisosiz.c.orig 2023-12-08 17:37:15.038525283 +0100 ++++ src/common/anisosiz.c 2023-12-08 17:38:54.346946839 +0100 +@@ -1631,7 +1631,7 @@ + + /* Check matrices in norm inf */ + maxerr = MMG5_test_mat_error(3,mex,mnum); +- if( maxerr > 1.e2*MMG5_EPSOK ) { ++ if( maxerr > 5.e2*MMG5_EPSOK ) { + fprintf(stderr," ## Error first matrix coreduction recomposition: in function %s, max error %e\n", + __func__,maxerr); + return 0; + +--- src/common/mettools.c.orig 2023-12-08 17:56:09.794050000 +0100 ++++ src/common/mettools.c 2023-12-08 17:57:47.195926013 +0100 +@@ -971,7 +971,7 @@ + + /* Check error in norm inf */ + maxerr = MMG5_test_mat_error(3,intex,intnum); +- if( maxerr > 1000.*MMG5_EPSOK ) { ++ if( maxerr > 5000.*MMG5_EPSOK ) { + fprintf(stderr," ## Error metric intersection: in function %s, line %d, max error %e\n", + __func__,__LINE__,maxerr); + return 0; + From ff47ec29c5dc990a8aa8ca387f856c732151e9a0 Mon Sep 17 00:00:00 2001 From: sassy Date: Wed, 13 Dec 2023 18:11:06 +0000 Subject: [PATCH 183/356] adding easyconfigs: MDI-1.4.16-gompi-2022b.eb --- .../m/MDI/MDI-1.4.16-gompi-2022b.eb | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 easybuild/easyconfigs/m/MDI/MDI-1.4.16-gompi-2022b.eb diff --git a/easybuild/easyconfigs/m/MDI/MDI-1.4.16-gompi-2022b.eb b/easybuild/easyconfigs/m/MDI/MDI-1.4.16-gompi-2022b.eb new file mode 100644 index 00000000000..ec7490f96cb --- /dev/null +++ b/easybuild/easyconfigs/m/MDI/MDI-1.4.16-gompi-2022b.eb @@ -0,0 +1,47 @@ +# MDI package for LAMMPS +# Author: J. Saßmannshausen (Imperial College London) + +easyblock = 'CMakeMake' +name = 'MDI' +version = '1.4.16' + +homepage = 'https://github.com/MolSSI-MDI/MDI_Library' +description = """The MolSSI Driver Interface (MDI) project provides a +standardized API for fast, on-the-fly communication between computational +chemistry codes. This greatly simplifies the process of implementing +methods that require the cooperation of multiple software packages and +enables developers to write a single implementation that works across +many different codes. The API is sufficiently general to support a wide +variety of techniques, including QM/MM, ab initio MD, machine learning, +advanced sampling, and path integral MD, while also being straightforwardly +extensible. Communication between codes is handled by the MDI Library, which +enables tight coupling between codes using either the MPI or TCP/IP methods. +""" + +toolchain = {'name': 'gompi', 'version': '2022b'} + +source_urls = ['https://github.com/MolSSI-MDI/MDI_Library/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['afb7a4db951f72398210dec3945537a8208d74e437c2eab60c8b132932aa49a0'] + +builddependencies = [ + ('CMake', '3.24.3'), +] + +dependencies = [ + ('Python', '3.10.8'), +] + +# perform iterative build to get both static and shared libraries +local_common_configopts = '-DCMAKE_POSITION_INDEPENDENT_CODE=ON ' +configopts = [ + local_common_configopts + ' -Dlibtype=STATIC', + local_common_configopts + ' -DBUILD_SHARED_LIBS=ON', +] + +sanity_check_paths = { + 'files': ['lib/mdi/libmdi.a', 'lib/mdi/libmdi.%s' % SHLIB_EXT], + 'dirs': ['include', 'share'], +} + +moduleclass = 'chem' From 76bfa2030b432beb310980b58db159a674edf24b Mon Sep 17 00:00:00 2001 From: vsc46128 Date: Wed, 13 Dec 2023 20:33:06 +0100 Subject: [PATCH 184/356] adding easyconfigs: VSCode-1.85.0.eb --- .../easyconfigs/v/VSCode/VSCode-1.85.0.eb | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb diff --git a/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb new file mode 100644 index 00000000000..93b69583093 --- /dev/null +++ b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb @@ -0,0 +1,34 @@ +easyblock = 'Tarball' + +name = 'VSCode' +version = '1.85.0' +local_version_id = '1701901635' + +homepage = 'https://code.visualstudio.com/' +description = ''' + Visual Studio Code is a lightweight but powerful source code editor + which runs on your desktop and is available for Windows, macOS and + Linux. It comes with built-in support for JavaScript, TypeScript and + Node.js and has a rich ecosystem of extensions for other languages + and runtimes (such as C++, C#, Java, Python, PHP, Go, .NET). Begin + your journey with VS Code with these introductory videos. +''' + +toolchain = {'name': 'system', 'version': 'system'} + + +source_urls = ['https://code.visualstudio.com/sha/download?build=stable&os=linux-x64&'] +sources = ['code-stable-x64-%s.tar.gz' % local_version_id] + +modextrapaths = { + 'PATH': 'bin', +} + +modaliases = {'vscode': '%(installdir)s/bin/code'} + +sanity_check_paths = { + 'files': ['code', 'bin/code'], + 'dirs': ['bin', 'locales', 'resources'] +} + +moduleclass = 'devel' \ No newline at end of file From 7dc5d17c42d40b74b169527add49b66bf620d13c Mon Sep 17 00:00:00 2001 From: vsc46128 Date: Wed, 13 Dec 2023 20:51:18 +0100 Subject: [PATCH 185/356] fix style errors --- easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb index 93b69583093..483c083c5df 100644 --- a/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb +++ b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb @@ -14,7 +14,7 @@ description = ''' your journey with VS Code with these introductory videos. ''' -toolchain = {'name': 'system', 'version': 'system'} +toolchain = {'name': 'system', 'version': 'system'} source_urls = ['https://code.visualstudio.com/sha/download?build=stable&os=linux-x64&'] @@ -31,4 +31,5 @@ sanity_check_paths = { 'dirs': ['bin', 'locales', 'resources'] } -moduleclass = 'devel' \ No newline at end of file +moduleclass = 'devel' + From 227fb262afcf83be774781ff602a5710ee991de1 Mon Sep 17 00:00:00 2001 From: vsc46128 Date: Wed, 13 Dec 2023 21:12:03 +0100 Subject: [PATCH 186/356] fix style errors --- easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb | 1 - 1 file changed, 1 deletion(-) diff --git a/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb index 483c083c5df..2edab256cd2 100644 --- a/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb +++ b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb @@ -32,4 +32,3 @@ sanity_check_paths = { } moduleclass = 'devel' - From 76182b29b097fdfbec2a06a564cfff9aadc5bcfd Mon Sep 17 00:00:00 2001 From: vsc46128 Date: Wed, 13 Dec 2023 21:27:26 +0100 Subject: [PATCH 187/356] inject checksum --- easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb index 2edab256cd2..62cb801af07 100644 --- a/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb +++ b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb @@ -19,6 +19,7 @@ toolchain = {'name': 'system', 'version': 'system'} source_urls = ['https://code.visualstudio.com/sha/download?build=stable&os=linux-x64&'] sources = ['code-stable-x64-%s.tar.gz' % local_version_id] +checksums = ['ae2e6ddc22c32e7f865faa06a00d1711941dcf1db290794c6ed659d5a1413977'] modextrapaths = { 'PATH': 'bin', From 6ed4cf490ed30e7f12f380dbd5e36681f02b0d35 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Thu, 14 Dec 2023 09:42:31 +0100 Subject: [PATCH 188/356] Fix numpy build on Sapphire Rapids CPUs in SciPy-bundle-2023.07-gfbf-2023a --- .../SciPy-bundle-2023.07-gfbf-2023a.eb | 21 +- ...-1.25.1_fix-duplicate-avx512-symbols.patch | 322 ++++++++++++++++++ .../numpy-1.25.1_fix-test_features.patch | 17 + .../numpy-1.25.1_fix-test_half.patch | 69 ++++ ....25.1_fix-undefined-avx512-reference.patch | 20 ++ 5 files changed, 445 insertions(+), 4 deletions(-) create mode 100644 easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-duplicate-avx512-symbols.patch create mode 100644 easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-test_features.patch create mode 100644 easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-test_half.patch create mode 100644 easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-undefined-avx512-reference.patch diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.07-gfbf-2023a.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.07-gfbf-2023a.eb index d634617be9f..44b5725fe7d 100644 --- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.07-gfbf-2023a.eb +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.07-gfbf-2023a.eb @@ -29,11 +29,24 @@ use_pip = True # order is important! exts_list = [ ('numpy', '1.25.1', { - 'patches': ['numpy-1.22.3_disable-broken-override-test.patch'], + 'patches': [ + 'numpy-1.22.3_disable-broken-override-test.patch', + ('numpy-1.25.1_fix-duplicate-avx512-symbols.patch', 'numpy/core/src/npysort/x86-simd-sort'), + 'numpy-1.25.1_fix-undefined-avx512-reference.patch', + 'numpy-1.25.1_fix-test_features.patch', + 'numpy-1.25.1_fix-test_half.patch', + ], 'checksums': [ {'numpy-1.25.1.tar.gz': '9a3a9f3a61480cc086117b426a8bd86869c213fc4072e606f01c4e4b66eb92bf'}, {'numpy-1.22.3_disable-broken-override-test.patch': '9c589bb073b28b25ff45eb3c63c57966aa508dd8b318d0b885b6295271e4983c'}, + {'numpy-1.25.1_fix-duplicate-avx512-symbols.patch': + '8e32087c279b7193ae3507953480601200c9eff021819f3001d78c232c5852e6'}, + {'numpy-1.25.1_fix-undefined-avx512-reference.patch': + 'c4b66da93bf36071663f122de1ae668386cc6ab0154d21fa3e14ed7ddfe2a72c'}, + {'numpy-1.25.1_fix-test_features.patch': + '1c05ee5d105fe2f824416dd6dd5c64ed0c1cd710a002b4e6dbfafff19203adc5'}, + {'numpy-1.25.1_fix-test_half.patch': '341b99ae1801feebf382c92591794eeefdf451bc34b98f20aa985ea897488951'}, ], }), ('ply', '3.11', { @@ -52,6 +65,8 @@ exts_list = [ 'checksums': ['5ab283b9857211d61b53318b7c792cf68e798e765ee17c27ade9f6c924235731'], }), ('scipy', '1.11.1', { + 'enable_slow_tests': True, + 'ignore_test_result': False, 'patches': [ 'scipy-1.11.1_disable-tests.patch', 'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch', @@ -62,8 +77,6 @@ exts_list = [ {'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch': '918c8e6fa8215d459126f267764c961bde729ea4a116c7f6287cddfdc58ffcea'}, ], - 'enable_slow_tests': True, - 'ignore_test_result': False, }), ('numexpr', '2.8.4', { 'checksums': ['d5432537418d18691b9115d615d6daa17ee8275baef3edf1afbbf8bc69806147'], @@ -82,8 +95,8 @@ exts_list = [ 'checksums': ['7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f'], }), ('deap', '1.4.0', { - 'checksums': ['ffef2921932a0edbe634fcb6d156189e7a364bf638a2af4ae5d59931a9a4c8cc'], 'modulename': 'deap.base', + 'checksums': ['ffef2921932a0edbe634fcb6d156189e7a364bf638a2af4ae5d59931a9a4c8cc'], }), ] diff --git a/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-duplicate-avx512-symbols.patch b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-duplicate-avx512-symbols.patch new file mode 100644 index 00000000000..931654128ff --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-duplicate-avx512-symbols.patch @@ -0,0 +1,322 @@ +The new dispatch method in numpy includes headers of the x86-simd-sort submodule C++ files +compiled multiple times (with different architecture flags). +This leads to linker errors such as +> numpy/numpy-1.26.2/build/../numpy/core/src/npysort/x86-simd-sort/src/avx512fp16-16bit-qsort.hpp:161: multiple definition of `void avx512_qsort<_Float16>(_Float16*, long) +See https://github.com/numpy/numpy/issues/25274 + +Mark those functions inline, see https://github.com/intel/x86-simd-sort/pull/112 + +Author: Alexander Grund (TU Dresden) + +diff --git a/src/avx512-16bit-qsort.hpp b/src/avx512-16bit-qsort.hpp +index 606f870..bf8cf7e 100644 +--- a/src/avx512-16bit-qsort.hpp ++++ b/src/avx512-16bit-qsort.hpp +@@ -350,7 +350,7 @@ struct zmm_vector { + }; + + template <> +-bool comparison_func>(const uint16_t &a, const uint16_t &b) ++inline bool comparison_func>(const uint16_t &a, const uint16_t &b) + { + uint16_t signa = a & 0x8000, signb = b & 0x8000; + uint16_t expa = a & 0x7c00, expb = b & 0x7c00; +@@ -406,7 +406,7 @@ replace_inf_with_nan(uint16_t *arr, int64_t arrsize, int64_t nan_count) + } + + template <> +-void avx512_qselect(int16_t *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(int16_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + qselect_16bit_, int16_t>( +@@ -415,7 +415,7 @@ void avx512_qselect(int16_t *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qselect(uint16_t *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(uint16_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + qselect_16bit_, uint16_t>( +@@ -423,7 +423,7 @@ void avx512_qselect(uint16_t *arr, int64_t k, int64_t arrsize) + } + } + +-void avx512_qselect_fp16(uint16_t *arr, int64_t k, int64_t arrsize) ++X86_SIMD_SORT_INLINE void avx512_qselect_fp16(uint16_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +@@ -434,7 +434,7 @@ void avx512_qselect_fp16(uint16_t *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qsort(int16_t *arr, int64_t arrsize) ++inline void avx512_qsort(int16_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + qsort_16bit_, int16_t>( +@@ -443,7 +443,7 @@ void avx512_qsort(int16_t *arr, int64_t arrsize) + } + + template <> +-void avx512_qsort(uint16_t *arr, int64_t arrsize) ++inline void avx512_qsort(uint16_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + qsort_16bit_, uint16_t>( +@@ -451,7 +451,7 @@ void avx512_qsort(uint16_t *arr, int64_t arrsize) + } + } + +-void avx512_qsort_fp16(uint16_t *arr, int64_t arrsize) ++X86_SIMD_SORT_INLINE void avx512_qsort_fp16(uint16_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +diff --git a/src/avx512-32bit-qsort.hpp b/src/avx512-32bit-qsort.hpp +index c4061dd..9dc3e18 100644 +--- a/src/avx512-32bit-qsort.hpp ++++ b/src/avx512-32bit-qsort.hpp +@@ -715,7 +715,7 @@ replace_inf_with_nan(float *arr, int64_t arrsize, int64_t nan_count) + } + + template <> +-void avx512_qselect(int32_t *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(int32_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + qselect_32bit_, int32_t>( +@@ -724,7 +724,7 @@ void avx512_qselect(int32_t *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qselect(uint32_t *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(uint32_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + qselect_32bit_, uint32_t>( +@@ -733,7 +733,7 @@ void avx512_qselect(uint32_t *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qselect(float *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(float *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +@@ -744,7 +744,7 @@ void avx512_qselect(float *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qsort(int32_t *arr, int64_t arrsize) ++inline void avx512_qsort(int32_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + qsort_32bit_, int32_t>( +@@ -753,7 +753,7 @@ void avx512_qsort(int32_t *arr, int64_t arrsize) + } + + template <> +-void avx512_qsort(uint32_t *arr, int64_t arrsize) ++inline void avx512_qsort(uint32_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + qsort_32bit_, uint32_t>( +@@ -762,7 +762,7 @@ void avx512_qsort(uint32_t *arr, int64_t arrsize) + } + + template <> +-void avx512_qsort(float *arr, int64_t arrsize) ++inline void avx512_qsort(float *arr, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +diff --git a/src/avx512-64bit-argsort.hpp b/src/avx512-64bit-argsort.hpp +index 80c6ce4..4687860 100644 +--- a/src/avx512-64bit-argsort.hpp ++++ b/src/avx512-64bit-argsort.hpp +@@ -311,7 +311,7 @@ bool has_nan(type_t* arr, int64_t arrsize) + } + + template +-void avx512_argsort(T* arr, int64_t *arg, int64_t arrsize) ++inline void avx512_argsort(T* arr, int64_t *arg, int64_t arrsize) + { + if (arrsize > 1) { + argsort_64bit_>( +@@ -320,7 +320,7 @@ void avx512_argsort(T* arr, int64_t *arg, int64_t arrsize) + } + + template <> +-void avx512_argsort(double* arr, int64_t *arg, int64_t arrsize) ++inline void avx512_argsort(double* arr, int64_t *arg, int64_t arrsize) + { + if (arrsize > 1) { + if (has_nan>(arr, arrsize)) { +@@ -335,7 +335,7 @@ void avx512_argsort(double* arr, int64_t *arg, int64_t arrsize) + + + template <> +-void avx512_argsort(int32_t* arr, int64_t *arg, int64_t arrsize) ++inline void avx512_argsort(int32_t* arr, int64_t *arg, int64_t arrsize) + { + if (arrsize > 1) { + argsort_64bit_>( +@@ -344,7 +344,7 @@ void avx512_argsort(int32_t* arr, int64_t *arg, int64_t arrsize) + } + + template <> +-void avx512_argsort(uint32_t* arr, int64_t *arg, int64_t arrsize) ++inline void avx512_argsort(uint32_t* arr, int64_t *arg, int64_t arrsize) + { + if (arrsize > 1) { + argsort_64bit_>( +@@ -353,7 +353,7 @@ void avx512_argsort(uint32_t* arr, int64_t *arg, int64_t arrsize) + } + + template <> +-void avx512_argsort(float* arr, int64_t *arg, int64_t arrsize) ++inline void avx512_argsort(float* arr, int64_t *arg, int64_t arrsize) + { + if (arrsize > 1) { + if (has_nan>(arr, arrsize)) { +@@ -367,7 +367,7 @@ void avx512_argsort(float* arr, int64_t *arg, int64_t arrsize) + } + + template +-std::vector avx512_argsort(T* arr, int64_t arrsize) ++inline std::vector avx512_argsort(T* arr, int64_t arrsize) + { + std::vector indices(arrsize); + std::iota(indices.begin(), indices.end(), 0); +diff --git a/src/avx512-64bit-keyvaluesort.hpp b/src/avx512-64bit-keyvaluesort.hpp +index f721f5c..26153c9 100644 +--- a/src/avx512-64bit-keyvaluesort.hpp ++++ b/src/avx512-64bit-keyvaluesort.hpp +@@ -440,7 +440,7 @@ void qsort_64bit_(type1_t *keys, + } + + template <> +-void avx512_qsort_kv(int64_t *keys, uint64_t *indexes, int64_t arrsize) ++inline void avx512_qsort_kv(int64_t *keys, uint64_t *indexes, int64_t arrsize) + { + if (arrsize > 1) { + qsort_64bit_, zmm_vector>( +@@ -449,7 +449,7 @@ void avx512_qsort_kv(int64_t *keys, uint64_t *indexes, int64_t arrsize) + } + + template <> +-void avx512_qsort_kv(uint64_t *keys, ++inline void avx512_qsort_kv(uint64_t *keys, + uint64_t *indexes, + int64_t arrsize) + { +@@ -460,7 +460,7 @@ void avx512_qsort_kv(uint64_t *keys, + } + + template <> +-void avx512_qsort_kv(double *keys, uint64_t *indexes, int64_t arrsize) ++inline void avx512_qsort_kv(double *keys, uint64_t *indexes, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(keys, arrsize); +diff --git a/src/avx512-64bit-qsort.hpp b/src/avx512-64bit-qsort.hpp +index 1cbcd38..1928bb2 100644 +--- a/src/avx512-64bit-qsort.hpp ++++ b/src/avx512-64bit-qsort.hpp +@@ -784,7 +784,7 @@ static void qselect_64bit_(type_t *arr, + } + + template <> +-void avx512_qselect(int64_t *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(int64_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + qselect_64bit_, int64_t>( +@@ -793,7 +793,7 @@ void avx512_qselect(int64_t *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qselect(uint64_t *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(uint64_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + qselect_64bit_, uint64_t>( +@@ -802,7 +802,7 @@ void avx512_qselect(uint64_t *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qselect(double *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(double *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +@@ -813,7 +813,7 @@ void avx512_qselect(double *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qsort(int64_t *arr, int64_t arrsize) ++inline void avx512_qsort(int64_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + qsort_64bit_, int64_t>( +@@ -822,7 +822,7 @@ void avx512_qsort(int64_t *arr, int64_t arrsize) + } + + template <> +-void avx512_qsort(uint64_t *arr, int64_t arrsize) ++inline void avx512_qsort(uint64_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + qsort_64bit_, uint64_t>( +@@ -831,7 +831,7 @@ void avx512_qsort(uint64_t *arr, int64_t arrsize) + } + + template <> +-void avx512_qsort(double *arr, int64_t arrsize) ++inline void avx512_qsort(double *arr, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +diff --git a/src/avx512-common-qsort.h b/src/avx512-common-qsort.h +index 959352e..9421de5 100644 +--- a/src/avx512-common-qsort.h ++++ b/src/avx512-common-qsort.h +@@ -94,11 +94,11 @@ struct ymm_vector; + // Regular quicksort routines: + template + void avx512_qsort(T *arr, int64_t arrsize); +-void avx512_qsort_fp16(uint16_t *arr, int64_t arrsize); ++X86_SIMD_SORT_INLINE void avx512_qsort_fp16(uint16_t *arr, int64_t arrsize); + + template + void avx512_qselect(T *arr, int64_t k, int64_t arrsize); +-void avx512_qselect_fp16(uint16_t *arr, int64_t k, int64_t arrsize); ++X86_SIMD_SORT_INLINE void avx512_qselect_fp16(uint16_t *arr, int64_t k, int64_t arrsize); + + template + inline void avx512_partial_qsort(T *arr, int64_t k, int64_t arrsize) +diff --git a/src/avx512fp16-16bit-qsort.hpp b/src/avx512fp16-16bit-qsort.hpp +index 8a9a49e..1206f82 100644 +--- a/src/avx512fp16-16bit-qsort.hpp ++++ b/src/avx512fp16-16bit-qsort.hpp +@@ -145,7 +145,7 @@ replace_inf_with_nan(_Float16 *arr, int64_t arrsize, int64_t nan_count) + } + + template <> +-void avx512_qselect(_Float16 *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(_Float16 *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +@@ -156,7 +156,7 @@ void avx512_qselect(_Float16 *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qsort(_Float16 *arr, int64_t arrsize) ++inline void avx512_qsort(_Float16 *arr, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); diff --git a/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-test_features.patch b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-test_features.patch new file mode 100644 index 00000000000..e96193bd917 --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-test_features.patch @@ -0,0 +1,17 @@ +The /proc/cpuinfo flag for AVX512FP16 is spelled avx512_fp16 Add the underscore to the mapping to make the test pass +See https://github.com/numpy/numpy/pull/25372 + +Author: Alexander Grund (TU Dresden) + +diff --git a/numpy/core/tests/test_cpu_features.py b/numpy/core/tests/test_cpu_features.py +index 2fad4dfd9..48ab30a4a 100644 +--- a/numpy/core/tests/test_cpu_features.py ++++ b/numpy/core/tests/test_cpu_features.py +@@ -351,6 +351,7 @@ class Test_X86_Features(AbstractTest): + SSE3="PNI", SSE41="SSE4_1", SSE42="SSE4_2", FMA3="FMA", + AVX512VNNI="AVX512_VNNI", AVX512BITALG="AVX512_BITALG", AVX512VBMI2="AVX512_VBMI2", + AVX5124FMAPS="AVX512_4FMAPS", AVX5124VNNIW="AVX512_4VNNIW", AVX512VPOPCNTDQ="AVX512_VPOPCNTDQ", ++ AVX512FP16="AVX512_FP16", + ) + def load_flags(self): + self.load_flags_cpuinfo("flags") diff --git a/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-test_half.patch b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-test_half.patch new file mode 100644 index 00000000000..9489373e30b --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-test_half.patch @@ -0,0 +1,69 @@ +test_half_conversions fails when there is hardware support for Float16 (e.g. AVX512) as NaNs are not kept the same. +Error looks like: + # Convert from float64 back to float16 + b = np.array(self.all_f64, dtype=float16) + bv = b.view(dtype=uint16) + fv = self.all_f16.view(dtype=uint16) +> assert_equal(self.all_f16.view(dtype=uint16), + b.view(dtype=uint16)) +... +E AssertionError: +E Arrays are not equal +E +E Mismatched elements: 1022 / 65536 (1.56%) +E Max absolute difference: 512 +E Max relative difference: 0.01587252 +E x: array([ 0, 1, 2, ..., 65533, 65534, 65535], dtype=uint16) +E y: array([ 0, 1, 2, ..., 65533, 65534, 65535], dtype=uint16) + +Deeper investigation shows a difference of exactly 512 in indices 31745-32255 & 64513-65023 + +Fix using https://github.com/numpy/numpy/commit/7a84442b1caa4904a9b8e58bd6b93045b4ad350f +from Sayed Adel + +Author: Alexander Grund (TU Dresden) + +diff --git a/numpy/core/tests/test_half.py b/numpy/core/tests/test_half.py +index ca849ad52..3e72eba89 100644 +--- a/numpy/core/tests/test_half.py ++++ b/numpy/core/tests/test_half.py +@@ -21,8 +21,11 @@ def setup_method(self): + # An array of all possible float16 values + self.all_f16 = np.arange(0x10000, dtype=uint16) + self.all_f16.dtype = float16 +- self.all_f32 = np.array(self.all_f16, dtype=float32) +- self.all_f64 = np.array(self.all_f16, dtype=float64) ++ ++ # NaN value can cause an invalid FP exception if HW is been used ++ with np.errstate(invalid='ignore'): ++ self.all_f32 = np.array(self.all_f16, dtype=float32) ++ self.all_f64 = np.array(self.all_f16, dtype=float64) + + # An array of all non-NaN float16 values, in sorted order + self.nonan_f16 = np.concatenate( +@@ -44,14 +47,19 @@ def test_half_conversions(self): + # value is preserved when converting to/from other floats. + + # Convert from float32 back to float16 +- b = np.array(self.all_f32, dtype=float16) +- assert_equal(self.all_f16.view(dtype=uint16), +- b.view(dtype=uint16)) ++ with np.errstate(invalid='ignore'): ++ b = np.array(self.all_f32, dtype=float16) ++ # avoid testing NaNs due to differ bits wither Q/SNaNs ++ b_nn = b == b ++ assert_equal(self.all_f16[b_nn].view(dtype=uint16), ++ b[b_nn].view(dtype=uint16)) + + # Convert from float64 back to float16 +- b = np.array(self.all_f64, dtype=float16) +- assert_equal(self.all_f16.view(dtype=uint16), +- b.view(dtype=uint16)) ++ with np.errstate(invalid='ignore'): ++ b = np.array(self.all_f64, dtype=float16) ++ b_nn = b == b ++ assert_equal(self.all_f16[b_nn].view(dtype=uint16), ++ b[b_nn].view(dtype=uint16)) + + # Convert float16 to longdouble and back + # This doesn't necessarily preserve the extra NaN bits, diff --git a/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-undefined-avx512-reference.patch b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-undefined-avx512-reference.patch new file mode 100644 index 00000000000..a5da1028b01 --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-undefined-avx512-reference.patch @@ -0,0 +1,20 @@ +The change to the x86-simd-sort submodule now causes an undefined reference +to _ZN12_GLOBAL__N_112avx512_qsortItEEvPT_l on `import numpy` +Reason is that `avx512_qsort` is used but defined in a header not included +by simd_qsort_16bit.dispatch.cpp when the "AVX512_SPR" version is built. +Fix by including the header. + +Author: Alexander Grund (TU Dresden) + +diff --git a/numpy/core/src/npysort/simd_qsort_16bit.dispatch.cpp b/numpy/core/src/npysort/simd_qsort_16bit.dispatch.cpp +index 3f5099758..a75f882ff 100644 +--- a/numpy/core/src/npysort/simd_qsort_16bit.dispatch.cpp ++++ b/numpy/core/src/npysort/simd_qsort_16bit.dispatch.cpp +@@ -9,6 +9,7 @@ + + #if defined(NPY_HAVE_AVX512_SPR) && !defined(_MSC_VER) + #include "x86-simd-sort/src/avx512fp16-16bit-qsort.hpp" ++ #include "x86-simd-sort/src/avx512-16bit-qsort.hpp" + #elif defined(NPY_HAVE_AVX512_ICL) && !defined(_MSC_VER) + #include "x86-simd-sort/src/avx512-16bit-qsort.hpp" + #endif From 3c12e2560b09f762e3371fe9a9ab2cd473659c04 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 14 Dec 2023 10:17:08 +0100 Subject: [PATCH 189/356] fix dependency on libreadline of Ferret v7.6.0 --- easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb b/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb index 1364ed858ad..98e69fc7686 100644 --- a/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb +++ b/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb @@ -18,7 +18,7 @@ dependencies = [ ('Szip', '2.1.1'), ('cURL', '7.83.0'), ('ncurses', '6.3'), - ('libreadline', '8.1'), + ('libreadline', '8.1.2'), ('tcsh', '6.24.01'), ('Java', '11', '', SYSTEM), ] From a15ae72fafb4192293a3df244860c3ed065a7885 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20=C3=96hman?= Date: Thu, 14 Dec 2023 10:09:27 +0000 Subject: [PATCH 190/356] adding easyconfigs: CASTEP-23.1-foss-2023a.eb --- .../c/CASTEP/CASTEP-23.1-foss-2023a.eb | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 easybuild/easyconfigs/c/CASTEP/CASTEP-23.1-foss-2023a.eb diff --git a/easybuild/easyconfigs/c/CASTEP/CASTEP-23.1-foss-2023a.eb b/easybuild/easyconfigs/c/CASTEP/CASTEP-23.1-foss-2023a.eb new file mode 100644 index 00000000000..9964b9dc63c --- /dev/null +++ b/easybuild/easyconfigs/c/CASTEP/CASTEP-23.1-foss-2023a.eb @@ -0,0 +1,49 @@ +easyblock = 'ConfigureMake' + +name = 'CASTEP' +version = '23.1' + +homepage = 'http://www.castep.org' +description = """ +CASTEP is an electronic structure materials modelling code based on density +functional theory (DFT), with functionality including geometry optimization +molecular dynamics, phonons, NMR chemical shifts and much more. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +download_instructions = """CASTEP is proprietary software, available under a free-of-charge license for academic use +only. Visit http://www.castep.org and navigate to "Getting Castep" to apply for a license.""" + +sources = [SOURCE_TAR_GZ] +checksums = ['7fba0450d3fd71586c8498ce51975bbdde923759ab298a656409280c29bf45b5'] + +dependencies = [ + ('Perl', '5.36.1'), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), # for elastic constants and castepconv utility +] + +skipsteps = ['configure'] + +_generic_opts = ' COMMS_ARCH=mpi FFT=fftw3 MATH_LIBS="-lflexiblas" ' + +buildopts = _generic_opts + 'FFTLIBDIR=$FFT_LIB_DIR MATHLIBDIR=$BLAS_LIB_DIR' +buildopts += ' castep tools utilities' + +preinstallopts = 'mkdir -p %(installdir)s/bin &&' +installopts = _generic_opts + 'INSTALL_DIR="%(installdir)s/bin"' +installopts += ' install-castep install-tools install-utilities' + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['castep.mpi', 'optados.mpi', 'orbitals2bands', 'dispersion.pl', + 'elastics.py', 'ceteprouts.pm']], + 'dirs': [], +} + +sanity_check_commands = [ + 'castep.mpi --help', + 'optados.mpi --help', +] + +moduleclass = 'phys' From b381751576bd0ef8eb280956e2abca60661f0250 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 14 Dec 2023 11:35:03 +0100 Subject: [PATCH 191/356] add build dependency on Autotools to Ferret-7.6.0-foss-2022a.eb --- easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb b/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb index 98e69fc7686..09c9a4b3eaf 100644 --- a/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb +++ b/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb @@ -11,6 +11,10 @@ source_urls = ['https://github.com/NOAA-PMEL/Ferret/archive/'] sources = ['v%s.tar.gz' % version] checksums = ['69832d740bd44c9eadd198a5de4d96c4c01ae90ae28c2c3414c1bb9f43e475d1'] +builddependencies = [ + ('Autotools', '20220317'), +] + dependencies = [ ('X11', '20220504'), ('netCDF-Fortran', '4.6.0'), From 25bdcf006df62129221b56f01cd2a7a2569124f1 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 14 Dec 2023 11:43:26 +0100 Subject: [PATCH 192/356] explain prebuildopts in fastml-2.3-GCC-11.3.0.eb --- easybuild/easyconfigs/f/fastml/fastml-2.3-GCC-11.3.0.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/f/fastml/fastml-2.3-GCC-11.3.0.eb b/easybuild/easyconfigs/f/fastml/fastml-2.3-GCC-11.3.0.eb index 58b3127ddde..58a5162ab77 100644 --- a/easybuild/easyconfigs/f/fastml/fastml-2.3-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/f/fastml/fastml-2.3-GCC-11.3.0.eb @@ -18,6 +18,7 @@ checksums = ['c02901d83ab9457852c67e8e14f41a02d2a0653130ed941b288108ba5272611d'] parallel = 1 +# increase maximum template depth prebuildopts = "sed -i 's/-depth-32/-depth-64/g' {programs/Makefile*,libs/phylogeny/Makefile} && " files_to_copy = [ From 1bf42809a113d97552bbcf2c76f9409f58bb0e16 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Thu, 14 Dec 2023 11:18:20 +0000 Subject: [PATCH 193/356] Add config for MDTraj-1.9.7-foss-2021b --- .../m/MDTraj/MDTraj-1.9.7-foss-2021b.eb | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 easybuild/easyconfigs/m/MDTraj/MDTraj-1.9.7-foss-2021b.eb diff --git a/easybuild/easyconfigs/m/MDTraj/MDTraj-1.9.7-foss-2021b.eb b/easybuild/easyconfigs/m/MDTraj/MDTraj-1.9.7-foss-2021b.eb new file mode 100644 index 00000000000..29a2ff2e2aa --- /dev/null +++ b/easybuild/easyconfigs/m/MDTraj/MDTraj-1.9.7-foss-2021b.eb @@ -0,0 +1,45 @@ +# Updated: Pavel Grochal (INUITS) + +easyblock = 'PythonBundle' + +name = 'MDTraj' +version = '1.9.7' + +homepage = 'https://mdtraj.org' +description = "Read, write and analyze MD trajectories with only a few lines of Python code." + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'openmp': True} + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('zlib', '1.2.11'), +] + +use_pip = True +exts_list = [ + ('astor', '0.8.1', { + 'checksums': ['6a6effda93f4e1ce9f618779b2dd1d9d84f1e32812c23a29b3fff6fd7f63fa5e'], + }), + ('pymbar', '3.1', { + # pymbar 3.1 is not available via PyPI, see https://github.com/choderalab/pymbar/issues/475 + 'source_urls': ['https://github.com/choderalab/pymbar/archive/'], + 'sources': ['%(version)s.tar.gz'], + 'checksums': ['7a996e5d3fd8143378f9e18662483446a4a2fe7e57917511e96beb6b07fd6232'], + }), + ('astunparse', '1.6.3', { + 'checksums': ['5ad93a8456f0d084c3456d059fd9a92cce667963232cbf763eac3bc5b7940872'], + }), + ('mdtraj', version, { + 'checksums': ['8a3309d2ef6ddb1023dcf48300d5df9b190469b63f69af9d55490bc4799d3757'], + }), +] + +# The unit tests of MDTraj are a pain to get to work: they require +# a massive number of extra dependencies. See +# https://github.com/mdtraj/mdtraj/blob/master/devtools/conda-recipe/meta.yaml + +sanity_pip_check = True + +moduleclass = 'chem' \ No newline at end of file From fedb84b0d2e525d5bfec1c122c7e13dc22aa7e46 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Thu, 14 Dec 2023 11:20:44 +0000 Subject: [PATCH 194/356] add python-louvain-0.15-foss-2021b --- .../p/python-louvain/python-louvain-0.15-foss-2021b.eb | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 easybuild/easyconfigs/p/python-louvain/python-louvain-0.15-foss-2021b.eb diff --git a/easybuild/easyconfigs/p/python-louvain/python-louvain-0.15-foss-2021b.eb b/easybuild/easyconfigs/p/python-louvain/python-louvain-0.15-foss-2021b.eb new file mode 100644 index 00000000000..e69de29bb2d From c71a58b589eadd6ab27b5edc2c3094fd89c46e3c Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Thu, 14 Dec 2023 11:24:56 +0000 Subject: [PATCH 195/356] add pylipid-1.5.14-GCCcore-11.2.0 --- .../pylipid/pylipid-1.5.14-GCCcore-11.2.0.eb | 72 +++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-GCCcore-11.2.0.eb diff --git a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-GCCcore-11.2.0.eb new file mode 100644 index 00000000000..66177020e9c --- /dev/null +++ b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-GCCcore-11.2.0.eb @@ -0,0 +1,72 @@ +easyblock = 'PythonBundle' + +name = 'pylipid' +version = "1.5.14" + +homepage = 'https://github.com/wlsong/PyLipID' +description = "PyLipID is a python package for analyzing lipid interactions with membrane proteins from + Molecular Dynamics Simulations." + +toolchain = {'name': 'foss', 'version': '2021b'} + +dependencies = [ + ('Python', '3.9.6'), + ('matplotlib', '3.4.3'), + ('SciPy-bundle', '2021.10'), + ('scikit-learn', '1.0.2'), + ('tqdm', '4.62.3'), + ('MDTraj', '1.9.7'), + ('networkx', '2.6.3'), + ('python-louvain', '0.15'), + ('statsmodels', '0.13.1'), + ('dill', '0.3.4') +] + +use_pip = True + +exts_list = [ + ('kneebow', '1.0.1', { + 'checksums': ['e935c19d71a468c9080bb364dc59e8a88a809685b15e2a57dbddc27e72ad7f9a'], + }), + ('logomaker', '0.8', { + 'checksums': ['d8c7501a7d6d7961cd68e5a44e939000ebf1b0c4197a0c9198351e1d681d3f6d'], + }), + ('multiprocess', '0.70.12.2', { + 'sources': { + 'filename': '%(name)s-%(version)s.zip', + 'extract_cmd': 'unzip %s' + }, + 'checksums': ['206bb9b97b73f87fec1ed15a19f8762950256aa84225450abc7150d02855a083'], + }), + ('pathos', '0.2.8', { + 'sources': { + 'filename': '%(name)s-%(version)s.zip', + 'extract_cmd': 'unzip %s' + }, + 'checksums': ['1f0f27a90f7ab66c423ba796529000fde9360d17b2d8e50097641ff405fc6f15'], + }), + ('ppft', '1.6.6.4', { + 'sources': { + 'filename': '%(name)s-%(version)s.zip', + 'extract_cmd': 'unzip %s' + }, + 'checksums': ['473442cc6731856990bd25bd6b454bb98720007de4523a73c560bdd0060463d2'], + }), + ('pox', '0.3.0', { + 'sources': { + 'filename': '%(name)s-%(version)s.zip', + 'extract_cmd': 'unzip %s' + }, + 'checksums': ['cb968350b186466bb4905a21084587ec3aa6fd7aa0ef55d416ee0d523e2abe31'], + }), + ('p_tqdm', '1.3.3', { + 'checksums': ['8b9316d8bae43279e03ea01c8849422e5072a931f1b94b79890b0da426802c6e'], + }), + (name, version, { + 'checksums': ['ba1a0506c7922d9e03d8ee1ca26dc181976d94bec76073842c565d1a1c1ce660'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' \ No newline at end of file From 86ff88cb371dd0fdd23ff0fd5be8f5125ca5e2d2 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Thu, 14 Dec 2023 11:27:51 +0000 Subject: [PATCH 196/356] rename ec --- ...ipid-1.5.14-GCCcore-11.2.0.eb => pylipid-1.5.14-foss-2021b.eb} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename easybuild/easyconfigs/p/pylipid/{pylipid-1.5.14-GCCcore-11.2.0.eb => pylipid-1.5.14-foss-2021b.eb} (100%) diff --git a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb similarity index 100% rename from easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-GCCcore-11.2.0.eb rename to easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb From 488d38dc976e6622c900121a1a82bdf72cd10a60 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Thu, 14 Dec 2023 13:22:37 +0100 Subject: [PATCH 197/356] Fix numpy build on Sapphire Rapids CPUs in SciPy-bundle-2023.11-gfbf-2023.09 --- .../SciPy-bundle-2023.11-gfbf-2023.09.eb | 13 +- ...-1.25.1_fix-duplicate-avx512-symbols.patch | 322 ++++++++++++++++++ .../numpy-1.25.1_fix-test_features.patch | 17 + ....25.1_fix-undefined-avx512-reference.patch | 20 ++ 4 files changed, 371 insertions(+), 1 deletion(-) create mode 100644 easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-duplicate-avx512-symbols.patch create mode 100644 easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-test_features.patch create mode 100644 easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-undefined-avx512-reference.patch diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023.09.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023.09.eb index c5107ab0602..397f6751a61 100644 --- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023.09.eb +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023.09.eb @@ -30,11 +30,22 @@ use_pip = True # order is important! exts_list = [ ('numpy', '1.26.2', { - 'patches': ['numpy-1.22.3_disable-broken-override-test.patch'], + 'patches': [ + 'numpy-1.22.3_disable-broken-override-test.patch', + ('numpy-1.25.1_fix-duplicate-avx512-symbols.patch', 'numpy/core/src/npysort/x86-simd-sort'), + 'numpy-1.25.1_fix-undefined-avx512-reference.patch', + 'numpy-1.25.1_fix-test_features.patch', + ], 'checksums': [ {'numpy-1.26.2.tar.gz': 'f65738447676ab5777f11e6bbbdb8ce11b785e105f690bc45966574816b6d3ea'}, {'numpy-1.22.3_disable-broken-override-test.patch': '9c589bb073b28b25ff45eb3c63c57966aa508dd8b318d0b885b6295271e4983c'}, + {'numpy-1.25.1_fix-duplicate-avx512-symbols.patch': + '8e32087c279b7193ae3507953480601200c9eff021819f3001d78c232c5852e6'}, + {'numpy-1.25.1_fix-undefined-avx512-reference.patch': + 'c4b66da93bf36071663f122de1ae668386cc6ab0154d21fa3e14ed7ddfe2a72c'}, + {'numpy-1.25.1_fix-test_features.patch': + '1c05ee5d105fe2f824416dd6dd5c64ed0c1cd710a002b4e6dbfafff19203adc5'}, ], }), ('ply', '3.11', { diff --git a/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-duplicate-avx512-symbols.patch b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-duplicate-avx512-symbols.patch new file mode 100644 index 00000000000..931654128ff --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-duplicate-avx512-symbols.patch @@ -0,0 +1,322 @@ +The new dispatch method in numpy includes headers of the x86-simd-sort submodule C++ files +compiled multiple times (with different architecture flags). +This leads to linker errors such as +> numpy/numpy-1.26.2/build/../numpy/core/src/npysort/x86-simd-sort/src/avx512fp16-16bit-qsort.hpp:161: multiple definition of `void avx512_qsort<_Float16>(_Float16*, long) +See https://github.com/numpy/numpy/issues/25274 + +Mark those functions inline, see https://github.com/intel/x86-simd-sort/pull/112 + +Author: Alexander Grund (TU Dresden) + +diff --git a/src/avx512-16bit-qsort.hpp b/src/avx512-16bit-qsort.hpp +index 606f870..bf8cf7e 100644 +--- a/src/avx512-16bit-qsort.hpp ++++ b/src/avx512-16bit-qsort.hpp +@@ -350,7 +350,7 @@ struct zmm_vector { + }; + + template <> +-bool comparison_func>(const uint16_t &a, const uint16_t &b) ++inline bool comparison_func>(const uint16_t &a, const uint16_t &b) + { + uint16_t signa = a & 0x8000, signb = b & 0x8000; + uint16_t expa = a & 0x7c00, expb = b & 0x7c00; +@@ -406,7 +406,7 @@ replace_inf_with_nan(uint16_t *arr, int64_t arrsize, int64_t nan_count) + } + + template <> +-void avx512_qselect(int16_t *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(int16_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + qselect_16bit_, int16_t>( +@@ -415,7 +415,7 @@ void avx512_qselect(int16_t *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qselect(uint16_t *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(uint16_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + qselect_16bit_, uint16_t>( +@@ -423,7 +423,7 @@ void avx512_qselect(uint16_t *arr, int64_t k, int64_t arrsize) + } + } + +-void avx512_qselect_fp16(uint16_t *arr, int64_t k, int64_t arrsize) ++X86_SIMD_SORT_INLINE void avx512_qselect_fp16(uint16_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +@@ -434,7 +434,7 @@ void avx512_qselect_fp16(uint16_t *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qsort(int16_t *arr, int64_t arrsize) ++inline void avx512_qsort(int16_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + qsort_16bit_, int16_t>( +@@ -443,7 +443,7 @@ void avx512_qsort(int16_t *arr, int64_t arrsize) + } + + template <> +-void avx512_qsort(uint16_t *arr, int64_t arrsize) ++inline void avx512_qsort(uint16_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + qsort_16bit_, uint16_t>( +@@ -451,7 +451,7 @@ void avx512_qsort(uint16_t *arr, int64_t arrsize) + } + } + +-void avx512_qsort_fp16(uint16_t *arr, int64_t arrsize) ++X86_SIMD_SORT_INLINE void avx512_qsort_fp16(uint16_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +diff --git a/src/avx512-32bit-qsort.hpp b/src/avx512-32bit-qsort.hpp +index c4061dd..9dc3e18 100644 +--- a/src/avx512-32bit-qsort.hpp ++++ b/src/avx512-32bit-qsort.hpp +@@ -715,7 +715,7 @@ replace_inf_with_nan(float *arr, int64_t arrsize, int64_t nan_count) + } + + template <> +-void avx512_qselect(int32_t *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(int32_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + qselect_32bit_, int32_t>( +@@ -724,7 +724,7 @@ void avx512_qselect(int32_t *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qselect(uint32_t *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(uint32_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + qselect_32bit_, uint32_t>( +@@ -733,7 +733,7 @@ void avx512_qselect(uint32_t *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qselect(float *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(float *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +@@ -744,7 +744,7 @@ void avx512_qselect(float *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qsort(int32_t *arr, int64_t arrsize) ++inline void avx512_qsort(int32_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + qsort_32bit_, int32_t>( +@@ -753,7 +753,7 @@ void avx512_qsort(int32_t *arr, int64_t arrsize) + } + + template <> +-void avx512_qsort(uint32_t *arr, int64_t arrsize) ++inline void avx512_qsort(uint32_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + qsort_32bit_, uint32_t>( +@@ -762,7 +762,7 @@ void avx512_qsort(uint32_t *arr, int64_t arrsize) + } + + template <> +-void avx512_qsort(float *arr, int64_t arrsize) ++inline void avx512_qsort(float *arr, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +diff --git a/src/avx512-64bit-argsort.hpp b/src/avx512-64bit-argsort.hpp +index 80c6ce4..4687860 100644 +--- a/src/avx512-64bit-argsort.hpp ++++ b/src/avx512-64bit-argsort.hpp +@@ -311,7 +311,7 @@ bool has_nan(type_t* arr, int64_t arrsize) + } + + template +-void avx512_argsort(T* arr, int64_t *arg, int64_t arrsize) ++inline void avx512_argsort(T* arr, int64_t *arg, int64_t arrsize) + { + if (arrsize > 1) { + argsort_64bit_>( +@@ -320,7 +320,7 @@ void avx512_argsort(T* arr, int64_t *arg, int64_t arrsize) + } + + template <> +-void avx512_argsort(double* arr, int64_t *arg, int64_t arrsize) ++inline void avx512_argsort(double* arr, int64_t *arg, int64_t arrsize) + { + if (arrsize > 1) { + if (has_nan>(arr, arrsize)) { +@@ -335,7 +335,7 @@ void avx512_argsort(double* arr, int64_t *arg, int64_t arrsize) + + + template <> +-void avx512_argsort(int32_t* arr, int64_t *arg, int64_t arrsize) ++inline void avx512_argsort(int32_t* arr, int64_t *arg, int64_t arrsize) + { + if (arrsize > 1) { + argsort_64bit_>( +@@ -344,7 +344,7 @@ void avx512_argsort(int32_t* arr, int64_t *arg, int64_t arrsize) + } + + template <> +-void avx512_argsort(uint32_t* arr, int64_t *arg, int64_t arrsize) ++inline void avx512_argsort(uint32_t* arr, int64_t *arg, int64_t arrsize) + { + if (arrsize > 1) { + argsort_64bit_>( +@@ -353,7 +353,7 @@ void avx512_argsort(uint32_t* arr, int64_t *arg, int64_t arrsize) + } + + template <> +-void avx512_argsort(float* arr, int64_t *arg, int64_t arrsize) ++inline void avx512_argsort(float* arr, int64_t *arg, int64_t arrsize) + { + if (arrsize > 1) { + if (has_nan>(arr, arrsize)) { +@@ -367,7 +367,7 @@ void avx512_argsort(float* arr, int64_t *arg, int64_t arrsize) + } + + template +-std::vector avx512_argsort(T* arr, int64_t arrsize) ++inline std::vector avx512_argsort(T* arr, int64_t arrsize) + { + std::vector indices(arrsize); + std::iota(indices.begin(), indices.end(), 0); +diff --git a/src/avx512-64bit-keyvaluesort.hpp b/src/avx512-64bit-keyvaluesort.hpp +index f721f5c..26153c9 100644 +--- a/src/avx512-64bit-keyvaluesort.hpp ++++ b/src/avx512-64bit-keyvaluesort.hpp +@@ -440,7 +440,7 @@ void qsort_64bit_(type1_t *keys, + } + + template <> +-void avx512_qsort_kv(int64_t *keys, uint64_t *indexes, int64_t arrsize) ++inline void avx512_qsort_kv(int64_t *keys, uint64_t *indexes, int64_t arrsize) + { + if (arrsize > 1) { + qsort_64bit_, zmm_vector>( +@@ -449,7 +449,7 @@ void avx512_qsort_kv(int64_t *keys, uint64_t *indexes, int64_t arrsize) + } + + template <> +-void avx512_qsort_kv(uint64_t *keys, ++inline void avx512_qsort_kv(uint64_t *keys, + uint64_t *indexes, + int64_t arrsize) + { +@@ -460,7 +460,7 @@ void avx512_qsort_kv(uint64_t *keys, + } + + template <> +-void avx512_qsort_kv(double *keys, uint64_t *indexes, int64_t arrsize) ++inline void avx512_qsort_kv(double *keys, uint64_t *indexes, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(keys, arrsize); +diff --git a/src/avx512-64bit-qsort.hpp b/src/avx512-64bit-qsort.hpp +index 1cbcd38..1928bb2 100644 +--- a/src/avx512-64bit-qsort.hpp ++++ b/src/avx512-64bit-qsort.hpp +@@ -784,7 +784,7 @@ static void qselect_64bit_(type_t *arr, + } + + template <> +-void avx512_qselect(int64_t *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(int64_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + qselect_64bit_, int64_t>( +@@ -793,7 +793,7 @@ void avx512_qselect(int64_t *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qselect(uint64_t *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(uint64_t *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + qselect_64bit_, uint64_t>( +@@ -802,7 +802,7 @@ void avx512_qselect(uint64_t *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qselect(double *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(double *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +@@ -813,7 +813,7 @@ void avx512_qselect(double *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qsort(int64_t *arr, int64_t arrsize) ++inline void avx512_qsort(int64_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + qsort_64bit_, int64_t>( +@@ -822,7 +822,7 @@ void avx512_qsort(int64_t *arr, int64_t arrsize) + } + + template <> +-void avx512_qsort(uint64_t *arr, int64_t arrsize) ++inline void avx512_qsort(uint64_t *arr, int64_t arrsize) + { + if (arrsize > 1) { + qsort_64bit_, uint64_t>( +@@ -831,7 +831,7 @@ void avx512_qsort(uint64_t *arr, int64_t arrsize) + } + + template <> +-void avx512_qsort(double *arr, int64_t arrsize) ++inline void avx512_qsort(double *arr, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +diff --git a/src/avx512-common-qsort.h b/src/avx512-common-qsort.h +index 959352e..9421de5 100644 +--- a/src/avx512-common-qsort.h ++++ b/src/avx512-common-qsort.h +@@ -94,11 +94,11 @@ struct ymm_vector; + // Regular quicksort routines: + template + void avx512_qsort(T *arr, int64_t arrsize); +-void avx512_qsort_fp16(uint16_t *arr, int64_t arrsize); ++X86_SIMD_SORT_INLINE void avx512_qsort_fp16(uint16_t *arr, int64_t arrsize); + + template + void avx512_qselect(T *arr, int64_t k, int64_t arrsize); +-void avx512_qselect_fp16(uint16_t *arr, int64_t k, int64_t arrsize); ++X86_SIMD_SORT_INLINE void avx512_qselect_fp16(uint16_t *arr, int64_t k, int64_t arrsize); + + template + inline void avx512_partial_qsort(T *arr, int64_t k, int64_t arrsize) +diff --git a/src/avx512fp16-16bit-qsort.hpp b/src/avx512fp16-16bit-qsort.hpp +index 8a9a49e..1206f82 100644 +--- a/src/avx512fp16-16bit-qsort.hpp ++++ b/src/avx512fp16-16bit-qsort.hpp +@@ -145,7 +145,7 @@ replace_inf_with_nan(_Float16 *arr, int64_t arrsize, int64_t nan_count) + } + + template <> +-void avx512_qselect(_Float16 *arr, int64_t k, int64_t arrsize) ++inline void avx512_qselect(_Float16 *arr, int64_t k, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); +@@ -156,7 +156,7 @@ void avx512_qselect(_Float16 *arr, int64_t k, int64_t arrsize) + } + + template <> +-void avx512_qsort(_Float16 *arr, int64_t arrsize) ++inline void avx512_qsort(_Float16 *arr, int64_t arrsize) + { + if (arrsize > 1) { + int64_t nan_count = replace_nan_with_inf(arr, arrsize); diff --git a/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-test_features.patch b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-test_features.patch new file mode 100644 index 00000000000..e96193bd917 --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-test_features.patch @@ -0,0 +1,17 @@ +The /proc/cpuinfo flag for AVX512FP16 is spelled avx512_fp16 Add the underscore to the mapping to make the test pass +See https://github.com/numpy/numpy/pull/25372 + +Author: Alexander Grund (TU Dresden) + +diff --git a/numpy/core/tests/test_cpu_features.py b/numpy/core/tests/test_cpu_features.py +index 2fad4dfd9..48ab30a4a 100644 +--- a/numpy/core/tests/test_cpu_features.py ++++ b/numpy/core/tests/test_cpu_features.py +@@ -351,6 +351,7 @@ class Test_X86_Features(AbstractTest): + SSE3="PNI", SSE41="SSE4_1", SSE42="SSE4_2", FMA3="FMA", + AVX512VNNI="AVX512_VNNI", AVX512BITALG="AVX512_BITALG", AVX512VBMI2="AVX512_VBMI2", + AVX5124FMAPS="AVX512_4FMAPS", AVX5124VNNIW="AVX512_4VNNIW", AVX512VPOPCNTDQ="AVX512_VPOPCNTDQ", ++ AVX512FP16="AVX512_FP16", + ) + def load_flags(self): + self.load_flags_cpuinfo("flags") diff --git a/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-undefined-avx512-reference.patch b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-undefined-avx512-reference.patch new file mode 100644 index 00000000000..a5da1028b01 --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.25.1_fix-undefined-avx512-reference.patch @@ -0,0 +1,20 @@ +The change to the x86-simd-sort submodule now causes an undefined reference +to _ZN12_GLOBAL__N_112avx512_qsortItEEvPT_l on `import numpy` +Reason is that `avx512_qsort` is used but defined in a header not included +by simd_qsort_16bit.dispatch.cpp when the "AVX512_SPR" version is built. +Fix by including the header. + +Author: Alexander Grund (TU Dresden) + +diff --git a/numpy/core/src/npysort/simd_qsort_16bit.dispatch.cpp b/numpy/core/src/npysort/simd_qsort_16bit.dispatch.cpp +index 3f5099758..a75f882ff 100644 +--- a/numpy/core/src/npysort/simd_qsort_16bit.dispatch.cpp ++++ b/numpy/core/src/npysort/simd_qsort_16bit.dispatch.cpp +@@ -9,6 +9,7 @@ + + #if defined(NPY_HAVE_AVX512_SPR) && !defined(_MSC_VER) + #include "x86-simd-sort/src/avx512fp16-16bit-qsort.hpp" ++ #include "x86-simd-sort/src/avx512-16bit-qsort.hpp" + #elif defined(NPY_HAVE_AVX512_ICL) && !defined(_MSC_VER) + #include "x86-simd-sort/src/avx512-16bit-qsort.hpp" + #endif From 9d06308a4a648e81608e046f8705894d85d23b3d Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Thu, 14 Dec 2023 12:30:40 +0000 Subject: [PATCH 198/356] linting --- easybuild/easyconfigs/m/MDTraj/MDTraj-1.9.7-foss-2021b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/m/MDTraj/MDTraj-1.9.7-foss-2021b.eb b/easybuild/easyconfigs/m/MDTraj/MDTraj-1.9.7-foss-2021b.eb index 29a2ff2e2aa..9bf0a45a676 100644 --- a/easybuild/easyconfigs/m/MDTraj/MDTraj-1.9.7-foss-2021b.eb +++ b/easybuild/easyconfigs/m/MDTraj/MDTraj-1.9.7-foss-2021b.eb @@ -42,4 +42,4 @@ exts_list = [ sanity_pip_check = True -moduleclass = 'chem' \ No newline at end of file +moduleclass = 'chem' From 983fe43655b963226736cbe868bdffb90114ba72 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Thu, 14 Dec 2023 12:34:02 +0000 Subject: [PATCH 199/356] populate file --- .../python-louvain-0.15-foss-2021b.eb | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/easybuild/easyconfigs/p/python-louvain/python-louvain-0.15-foss-2021b.eb b/easybuild/easyconfigs/p/python-louvain/python-louvain-0.15-foss-2021b.eb index e69de29bb2d..393d5ade5b9 100644 --- a/easybuild/easyconfigs/p/python-louvain/python-louvain-0.15-foss-2021b.eb +++ b/easybuild/easyconfigs/p/python-louvain/python-louvain-0.15-foss-2021b.eb @@ -0,0 +1,25 @@ +easyblock = 'PythonPackage' + +name = 'python-louvain' +version = '0.15' + +homepage = 'https://pypi.org/project/python-louvain' +description = "Louvain algorithm for community detection" + +toolchain = {'name': 'foss', 'version': '2021b'} + +sources = [SOURCE_TAR_GZ] +checksums = ['2a856edfbe29952a60a5538a84bb78cca18f6884a88b9325e85a11c8dd4917eb'] + +dependencies = [ + ('Python', '3.9.6'), + ('networkx', '2.6.3'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +options = {'modulename': 'community'} + +moduleclass = 'lib' From 2b5722d2e4e71de04557cbd4a218a8cd87be7f6b Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Thu, 14 Dec 2023 12:39:16 +0000 Subject: [PATCH 200/356] one-line description --- easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb index 66177020e9c..2a6c8fc6721 100644 --- a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb +++ b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb @@ -4,8 +4,7 @@ name = 'pylipid' version = "1.5.14" homepage = 'https://github.com/wlsong/PyLipID' -description = "PyLipID is a python package for analyzing lipid interactions with membrane proteins from - Molecular Dynamics Simulations." +description = "PyLipID is a python package for analyzing lipid interactions with membrane proteins from Molecular Dynamics Simulations." toolchain = {'name': 'foss', 'version': '2021b'} From c75931ccdf359456ed48a084737bd71b8765d99e Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Thu, 14 Dec 2023 13:47:40 +0100 Subject: [PATCH 201/356] adding easyconfigs: glog-0.6.0-GCCcore-11.3.0.eb --- .../g/glog/glog-0.6.0-GCCcore-11.3.0.eb | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 easybuild/easyconfigs/g/glog/glog-0.6.0-GCCcore-11.3.0.eb diff --git a/easybuild/easyconfigs/g/glog/glog-0.6.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/glog/glog-0.6.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..74d7a093756 --- /dev/null +++ b/easybuild/easyconfigs/g/glog/glog-0.6.0-GCCcore-11.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CMakeMake' + +name = 'glog' +version = '0.6.0' + +homepage = 'https://github.com/google/glog' +description = "A C++ implementation of the Google logging module." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'cstd': 'c++11'} + +source_urls = ['https://github.com/google/glog/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['8a83bf982f37bb70825df71a9709fa90ea9f4447fb3c099e1d720a439d88bad6'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), +] + +dependencies = [ + ('gflags', '2.2.2'), + ('libunwind', '1.6.2'), +] + +configopts = '-DBUILD_SHARED_LIBS=ON ' + +sanity_check_paths = { + 'files': ['include/glog/logging.h', 'include/glog/raw_logging.h', 'lib/libglog.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'devel' \ No newline at end of file From 6812f31233cfd32e0721608d677712c3c76de93d Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Thu, 14 Dec 2023 14:20:00 +0100 Subject: [PATCH 202/356] Update python formatting --- easybuild/easyconfigs/g/glog/glog-0.6.0-GCCcore-11.3.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/g/glog/glog-0.6.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/glog/glog-0.6.0-GCCcore-11.3.0.eb index 74d7a093756..3eea2ff72c4 100644 --- a/easybuild/easyconfigs/g/glog/glog-0.6.0-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/g/glog/glog-0.6.0-GCCcore-11.3.0.eb @@ -30,4 +30,4 @@ sanity_check_paths = { 'dirs': [], } -moduleclass = 'devel' \ No newline at end of file +moduleclass = 'devel' From 9c9c8172a0c43c4230bb33dc1eef727e8eb917f3 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Thu, 14 Dec 2023 13:34:03 +0000 Subject: [PATCH 203/356] linting --- easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb index 2a6c8fc6721..304da829387 100644 --- a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb +++ b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb @@ -4,7 +4,8 @@ name = 'pylipid' version = "1.5.14" homepage = 'https://github.com/wlsong/PyLipID' -description = "PyLipID is a python package for analyzing lipid interactions with membrane proteins from Molecular Dynamics Simulations." +description = "PyLipID is a python package for analyzing lipid interactions \ + with membrane proteins from Molecular Dynamics Simulations." toolchain = {'name': 'foss', 'version': '2021b'} @@ -68,4 +69,4 @@ exts_list = [ sanity_pip_check = True -moduleclass = 'bio' \ No newline at end of file +moduleclass = 'bio' From 40e8c818944a23fa5f86bd86c830764c34dd9c92 Mon Sep 17 00:00:00 2001 From: vsc46128 Date: Thu, 14 Dec 2023 15:23:32 +0100 Subject: [PATCH 204/356] Fix checksum --- easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb index 62cb801af07..5379d4f6f05 100644 --- a/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb +++ b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb @@ -19,7 +19,7 @@ toolchain = {'name': 'system', 'version': 'system'} source_urls = ['https://code.visualstudio.com/sha/download?build=stable&os=linux-x64&'] sources = ['code-stable-x64-%s.tar.gz' % local_version_id] -checksums = ['ae2e6ddc22c32e7f865faa06a00d1711941dcf1db290794c6ed659d5a1413977'] +checksums = ['01669d69e567a5290336b1d2f7b2f0f1816e9d7099004b81a26f8f40ee17c9fc'] modextrapaths = { 'PATH': 'bin', From 4d7e5843c9084f695f4ca57f6a8ae7fcf6b5b9c5 Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Fri, 15 Dec 2023 01:55:56 +0800 Subject: [PATCH 205/356] add missing binutils builddep --- .../p/primecountpy/primecountpy-0.1.0-GCCcore-11.3.0.eb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/easybuild/easyconfigs/p/primecountpy/primecountpy-0.1.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/primecountpy/primecountpy-0.1.0-GCCcore-11.3.0.eb index 515d9ee8580..51b021780f2 100644 --- a/easybuild/easyconfigs/p/primecountpy/primecountpy-0.1.0-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/p/primecountpy/primecountpy-0.1.0-GCCcore-11.3.0.eb @@ -11,6 +11,8 @@ toolchain = {'name': 'GCCcore', 'version': '11.3.0'} sources = [SOURCE_TAR_GZ] checksums = ['78fe7cc32115f0669a45d7c90faaf39f7ce3939e39e2e7e5f14c17fe4bff0676'] +builddependencies = [('binutils', '2.38')] + dependencies = [ ('Python', '3.10.4'), ('cysignals', '1.11.2'), From 9a342fe76ec0d236f0333d75db741718f5fb0f72 Mon Sep 17 00:00:00 2001 From: TopRichard <121792457+TopRichard@users.noreply.github.com> Date: Thu, 14 Dec 2023 19:10:15 +0100 Subject: [PATCH 206/356] Update BAGEL-1.2.2.patch Explanation of patch file. --- easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch index 7b90228b4a0..61f2a6dc610 100644 --- a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch +++ b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch @@ -1,8 +1,9 @@ + diff -ruN bagel-1.2.2/src/molecule/shell_base.cc bagel-1.2.2.orig/src/molecule/shell_base.cc --- bagel-1.2.2/src/molecule/shell_base.cc 2023-12-02 11:23:16.000000000 +0100 +++ bagel-1.2.2.orig/src/molecule/shell_base.cc 2023-12-02 11:23:59.000000000 +0100 @@ -23,6 +23,7 @@ - // + //The patch is to resolve missing boost includes and fix ambiguous function call, similar to qsimulate-open/bagel#229 +#include From b28f5b5a054179ad1a752ab840b2ba273da62009 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Fri, 15 Dec 2023 09:39:07 +0100 Subject: [PATCH 207/356] Allow up to 3 tests to fail --- easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb index 4fbb3350a1f..9253a982717 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb @@ -145,7 +145,7 @@ runtest = 'cd test && PYTHONUNBUFFERED=1 %(python)s run_test.py --continue-throu # Especially test_quantization has a few corner cases that are triggered by the random input values, # those cannot be easily avoided, see https://github.com/pytorch/pytorch/issues/107030 # So allow a low number of tests to fail as the tests "usually" succeed -max_failed_tests = 2 +max_failed_tests = 3 tests = ['PyTorch-check-cpp-extension.py'] From c8a4e3d22a7277bf2c9473145378b5b8bac953f5 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 15 Dec 2023 09:54:49 +0100 Subject: [PATCH 208/356] adding easyconfigs: TRAVIS-Analyzer-220729-GCC-11.3.0.eb --- .../TRAVIS-Analyzer-220729-GCC-11.3.0.eb | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 easybuild/easyconfigs/t/TRAVIS-Analyzer/TRAVIS-Analyzer-220729-GCC-11.3.0.eb diff --git a/easybuild/easyconfigs/t/TRAVIS-Analyzer/TRAVIS-Analyzer-220729-GCC-11.3.0.eb b/easybuild/easyconfigs/t/TRAVIS-Analyzer/TRAVIS-Analyzer-220729-GCC-11.3.0.eb new file mode 100644 index 00000000000..08a04bb14da --- /dev/null +++ b/easybuild/easyconfigs/t/TRAVIS-Analyzer/TRAVIS-Analyzer-220729-GCC-11.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'MakeCp' + +name = 'TRAVIS-Analyzer' +version = '220729' + +homepage = 'http://www.travis-analyzer.de/' +description = """ +TRAVIS is a free tool for analyzing and visualizing trajectories from all kinds +of Molecular Dynamics or Monte Carlo simulations.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'cstd': 'c++14'} + +source_urls = ['http://www.travis-analyzer.de/files'] +sources = ['travis-src-%(version)s.tar.gz'] +checksums = ['bdc1e4062e7766e3e2b6c2723ed3a1a74543a0f9156c12a139e4a03a9736123f'] + +# use CFLAGS from EB +prebuildopts = "sed -i 's/^CFLAGS .*14/CFLAGS := $(CFLAGS)/' Makefile && " +prebuildopts += "CXX=${CXX}" + +local_exe = 'travis' +files_to_copy = [ + (['exe/%s' % local_exe], 'bin'), + (['README', 'travis-quickstart.pdf'], 'share'), +] + +sanity_check_paths = { + 'files': ['bin/%s' % local_exe], + 'dirs': ['share'] +} + +sanity_check_commands = [('%s' % local_exe, '-help')] + +moduleclass = 'chem' From 53130f8e419c7c48a46641e27e449b4089f1d77a Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 15 Dec 2023 09:58:16 +0100 Subject: [PATCH 209/356] allow ITK legacy code and Python wrappers in ITK v5.2.1 --- .../easyconfigs/i/ITK/ITK-5.2.1-foss-2022a.eb | 6 +++++- ...ITK-5.2.1_allow_legacy_with_wrapping.patch | 19 +++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 easybuild/easyconfigs/i/ITK/ITK-5.2.1_allow_legacy_with_wrapping.patch diff --git a/easybuild/easyconfigs/i/ITK/ITK-5.2.1-foss-2022a.eb b/easybuild/easyconfigs/i/ITK/ITK-5.2.1-foss-2022a.eb index f862a7a5b45..7104f5fdf98 100644 --- a/easybuild/easyconfigs/i/ITK/ITK-5.2.1-foss-2022a.eb +++ b/easybuild/easyconfigs/i/ITK/ITK-5.2.1-foss-2022a.eb @@ -19,7 +19,11 @@ toolchainopts = {'pic': True, 'cstd': 'c++11'} github_account = 'InsightSoftwareConsortium' source_urls = [GITHUB_SOURCE] sources = ['v%(version)s.tar.gz'] -checksums = ['6022b2b64624b8bcec3333fe48d5f74ff6ebceb3bdf98258ba7d7fbbc76b99ab'] +patches = ['ITK-5.2.1_allow_legacy_with_wrapping.patch'] +checksums = [ + {'v5.2.1.tar.gz': '6022b2b64624b8bcec3333fe48d5f74ff6ebceb3bdf98258ba7d7fbbc76b99ab'}, + {'ITK-5.2.1_allow_legacy_with_wrapping.patch': '66d2c60498a18d5d826a7274624fdd12c41c99d84b382ac405525037a369b666'}, +] builddependencies = [ ('CMake', '3.23.1'), diff --git a/easybuild/easyconfigs/i/ITK/ITK-5.2.1_allow_legacy_with_wrapping.patch b/easybuild/easyconfigs/i/ITK/ITK-5.2.1_allow_legacy_with_wrapping.patch new file mode 100644 index 00000000000..9fd0304ea8c --- /dev/null +++ b/easybuild/easyconfigs/i/ITK/ITK-5.2.1_allow_legacy_with_wrapping.patch @@ -0,0 +1,19 @@ +Allow enabling legacy code in ITK and build its wrappers at the same time. +The goal is to build the native Python wrapper of ITK while making it possible +to have third-party software that still relies on older interfaces. +author: Alex Domingo (Vrije Universiteit Brussel) +--- CMakeLists.txt.orig 2023-12-14 15:26:20.086769773 +0100 ++++ CMakeLists.txt 2021-08-12 03:08:23.000000000 +0200 +@@ -334,9 +334,9 @@ + #----------------------------------------------------------------------------- + # Provide compatibility options. + # During major release updates deprecated interface may be needed for backwards compatibility +-cmake_dependent_option(ITK_LEGACY_REMOVE +- "Remove current legacy code completely." OFF +- "NOT ITK_WRAPPING" ON) ++#cmake_dependent_option(ITK_LEGACY_REMOVE ++# "Remove current legacy code completely." OFF ++# "NOT ITK_WRAPPING" ON) + + # During minor releases bugs may be identified that identify broken interface, or + # useless interfaces that need to be retained to not break backwards compatibilty. From d5c90bdf7393f8b469301b66541afaab79c4a32a Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 15 Dec 2023 10:00:16 +0100 Subject: [PATCH 210/356] clarify comment about SimpleITK in ITK-5.2.1-foss-2022a.eb --- easybuild/easyconfigs/i/ITK/ITK-5.2.1-foss-2022a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/i/ITK/ITK-5.2.1-foss-2022a.eb b/easybuild/easyconfigs/i/ITK/ITK-5.2.1-foss-2022a.eb index 7104f5fdf98..4db02230269 100644 --- a/easybuild/easyconfigs/i/ITK/ITK-5.2.1-foss-2022a.eb +++ b/easybuild/easyconfigs/i/ITK/ITK-5.2.1-foss-2022a.eb @@ -47,7 +47,7 @@ local_sys_cmake = ['-DITK_USE_SYSTEM_%s=ON' % d for d in local_sys_deps] configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' configopts += '-DModule_ITKReview=ON -DModule_ITKVtkGlue=ON -DModule_SimpleITKFilters=ON ' configopts += '-DITK_WRAP_PYTHON:BOOL=ON -DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' -configopts += '-DITK_LEGACY_REMOVE:BOOL=OFF ' # needed by SimpleITK +configopts += '-DITK_LEGACY_REMOVE:BOOL=OFF ' # SimpleITK-2.1.x relies on ITK legacy interfaces configopts += ' '.join(local_sys_cmake) prebuildopts = "LC_ALL=C " From b4ab4d2e76702c043a134991c981686e46136eab Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 15 Dec 2023 11:06:15 +0100 Subject: [PATCH 211/356] link to xxHash library from EB in python-xxhash-3.2.0-GCCcore-12.2.0.eb --- .../p/python-xxhash/python-xxhash-3.2.0-GCCcore-12.2.0.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/p/python-xxhash/python-xxhash-3.2.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/python-xxhash/python-xxhash-3.2.0-GCCcore-12.2.0.eb index 54e733c36c8..a776e467399 100644 --- a/easybuild/easyconfigs/p/python-xxhash/python-xxhash-3.2.0-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/p/python-xxhash/python-xxhash-3.2.0-GCCcore-12.2.0.eb @@ -23,6 +23,7 @@ sanity_pip_check = True exts_list = [ ('xxhash', version, { 'checksums': ['1afd47af8955c5db730f630ad53ae798cf7fae0acb64cebb3cf94d35c47dd088'], + 'preinstallopts': 'XXHASH_LINK_SO=1', # use xxHash library from EB }), ] From b08a77672255fb5737486741d9b9d7cece58ef56 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Fri, 15 Dec 2023 12:42:15 +0100 Subject: [PATCH 212/356] adding easyconfigs: BUStools-0.43.1-GCCcore-11.3.0.eb --- .../BUStools-0.43.1-GCCcore-11.3.0.eb | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 easybuild/easyconfigs/b/BUStools/BUStools-0.43.1-GCCcore-11.3.0.eb diff --git a/easybuild/easyconfigs/b/BUStools/BUStools-0.43.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/b/BUStools/BUStools-0.43.1-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..a363e9c1366 --- /dev/null +++ b/easybuild/easyconfigs/b/BUStools/BUStools-0.43.1-GCCcore-11.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'CMakeMake' + +name = 'BUStools' +version = '0.43.1' + +homepage = 'https://github.com/BUStools/bustools' +description = """bustools is a program for manipulating BUS files for single cell RNA-Seq datasets. + It can be used to error correct barcodes, collapse UMIs, produce gene count or transcript compatibility + count matrices, and is useful for many other tasks. See the kallisto | bustools website for examples + and instructions on how to use bustools as part of a single-cell RNA-seq workflow.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +github_account = 'BUStools' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['ac94a33ca459de81c5756825a7a7f8daeae357fc6bf0ef88d4900e77b70f2b90'] + +builddependencies = [ + ('CMake', '3.23.1'), +] + +dependencies = [ + ('binutils', '2.38'), + ('zlib', '1.2.12'), +] + +separate_build_dir = True + +sanity_check_paths = { + 'files': ['bin/bustools'], + 'dirs': [], +} + +sanity_check_commands = ["bustools version"] + +moduleclass = 'bio' From b756cfb34ed02ffb138b1cf8c7a1d0b959c7ccef Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Fri, 15 Dec 2023 13:32:20 +0100 Subject: [PATCH 213/356] adding easyconfigs: Score-P-8.3-gompi-2022b.eb --- .../s/Score-P/Score-P-8.3-gompi-2022b.eb | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 easybuild/easyconfigs/s/Score-P/Score-P-8.3-gompi-2022b.eb diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.3-gompi-2022b.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.3-gompi-2022b.eb new file mode 100644 index 00000000000..d967e086bb9 --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.3-gompi-2022b.eb @@ -0,0 +1,62 @@ +## +# Copyright:: Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2023 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ +## + +name = 'Score-P' +version = '8.3' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2022b'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +checksums = ['76c914e6319221c059234597a3bc53da788ed679179ac99c147284dcefb1574a'] + +dependencies = [ + # Score-P 8.3 requires Cube 4.8.2+ + # Commenting out these dependencies makes it use its (compatible) vendored copy, + # although it might cause issues when loading the Cube* modules. + # ('CubeLib', '4.8.1'), + # ('CubeWriter', '4.8.1'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.3'), + # Hardware counter support (optional): + ('PAPI', '7.0.1'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' From fc3d3c8c16fb378e30bdb08018babc6c48232e3a Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Fri, 15 Dec 2023 14:07:05 +0100 Subject: [PATCH 214/356] adding easyconfigs: Score-P-8.1-gompi-2023a-CUDA-12.1.1.eb --- .../Score-P-8.1-gompi-2023a-CUDA-12.1.1.eb | 66 +++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 easybuild/easyconfigs/s/Score-P/Score-P-8.1-gompi-2023a-CUDA-12.1.1.eb diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.1-gompi-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.1-gompi-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..707296c83a7 --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.1-gompi-2023a-CUDA-12.1.1.eb @@ -0,0 +1,66 @@ +## +# Copyright:: Copyright 2013-2020 Juelich Supercomputing Centre, Germany +# Copyright 2020-2023 TU Dresden, Germany +# Authors:: +# * Bernd Mohr +# * Markus Geimer +# * Alexander Grund +# * Robert Mijakovic +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ +## + +name = 'Score-P' +version = '8.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.score-p.org' +description = """ + The Score-P measurement infrastructure is a highly scalable and easy-to-use + tool suite for profiling, event tracing, and online analysis of HPC + applications. +""" + +toolchain = {'name': 'gompi', 'version': '2023a'} + +source_urls = ['https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s'] +sources = ['scorep-%(version)s.tar.gz'] +patches = ['Score-P-8.0_fix-race-in-CUDA-adapter.patch'] +checksums = [ + {'scorep-8.1.tar.gz': '3a40b481fce610871ddf6bdfb88a6d06b9e5eb38c6080faac6d5e44990060a37'}, + {'Score-P-8.0_fix-race-in-CUDA-adapter.patch': '6ba0e486fedc9a87b9b1a4657af7ee5f95b6222ee68ddaa5363dcaa99171fa0b'}, +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('UCX-CUDA', '1.14.1', versionsuffix), + ('CubeLib', '4.8.1'), + ('CubeWriter', '4.8.1'), + ('libunwind', '1.6.2'), + ('OPARI2', '2.0.7'), + ('OTF2', '3.0.3'), + # Hardware counter support (optional): + ('PAPI', '7.0.1'), + # PDT source-to-source instrumentation support (optional): + ('PDT', '3.25.1'), +] + +configopts = '--enable-shared' + +local_adapters = [ + 'compiler_event', 'compiler_mgmt', 'cuda_mgmt', 'mpi_event', 'mpi_mgmt', 'opari2_mgmt', 'user_event', 'user_mgmt' +] +sanity_check_paths = { + 'files': + ['bin/scorep', 'include/scorep/SCOREP_User.h'] + + ['lib/libscorep_adapter_%s.%s' % (a, e) for a in local_adapters for e in ('a', SHLIB_EXT)], + 'dirs': [], +} +sanity_check_commands = ['scorep-config --help'] + +# Ensure that local metric documentation is found by CubeGUI +modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'} + +moduleclass = 'perf' From 091670cb5c25a772a2c479e467f4e02479e5cba2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Paul=20J=C3=A4hne?= Date: Fri, 15 Dec 2023 14:22:11 +0100 Subject: [PATCH 215/356] adding easyconfigs: VirSorter-1.0.6-foss-2021b.eb, VirSorter2-2.2.4-foss-2021b.eb, MCL-22.282-GCCcore-11.2.0.eb --- .../m/MCL/MCL-22.282-GCCcore-11.2.0.eb | 38 ++++++++++++++++++ .../v/VirSorter/VirSorter-1.0.6-foss-2021b.eb | 34 ++++++++++++++++ .../VirSorter2/VirSorter2-2.2.4-foss-2021b.eb | 39 +++++++++++++++++++ 3 files changed, 111 insertions(+) create mode 100644 easybuild/easyconfigs/m/MCL/MCL-22.282-GCCcore-11.2.0.eb create mode 100644 easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb create mode 100644 easybuild/easyconfigs/v/VirSorter2/VirSorter2-2.2.4-foss-2021b.eb diff --git a/easybuild/easyconfigs/m/MCL/MCL-22.282-GCCcore-11.2.0.eb b/easybuild/easyconfigs/m/MCL/MCL-22.282-GCCcore-11.2.0.eb new file mode 100644 index 00000000000..01142c80daa --- /dev/null +++ b/easybuild/easyconfigs/m/MCL/MCL-22.282-GCCcore-11.2.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'MCL' +version = '22.282' + +homepage = 'https://micans.org/mcl/' +description = """The MCL algorithm is short for the Markov Cluster Algorithm, a fast +and scalable unsupervised cluster algorithm for graphs (also known as networks) based +on simulation of (stochastic) flow in graphs. """ + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['http://micans.org/%(namelower)s/src/'] +sources = ['%(namelower)s-%(version_major)s-%(version_minor)s.tar.gz'] +checksums = ['291f35837b6e852743bd87e499c5a46936125dcdf334f7747af92e88ac902183'] + +builddependencies = [ + ('binutils', '2.37'), +] + +dependencies = [ + ('Perl', '5.34.0'), + ('cimfomfa', '22.273'), +] + +configopts = '--enable-rcl ' + +fix_perl_shebang_for = ['bin/*.pl'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['clm', 'clxdo', 'mcl', 'mcx', 'mcxarray', 'mcxdump', 'mcxi', + 'mcxload', 'mcxmap', 'mcxsubs', 'rcl', 'rcl-qc']], + 'dirs': ['share'] +} + +sanity_check_commands = ["mcl --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb b/easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb new file mode 100644 index 00000000000..7083d35ac6b --- /dev/null +++ b/easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb @@ -0,0 +1,34 @@ +easyblock = 'Tarball' + +name = 'VirSorter' +version = '1.0.6' + +homepage = 'https://github.com/simroux/VirSorter' +description = """VirSorter: mining viral signal from microbial genomic data.""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +github_account = 'simroux' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['a47202eb4abbfc7643519f891d52c55725ccceb2e4c45b8564b9d66b8f6615e0'] + +dependencies = [ + ('Perl', '5.34.0'), + ('BioPerl', '1.7.8'), + ('HMMER', '3.3.2'), + ('MCL', '22.282'), + ('MetaGeneAnnotator', '20080819', '-x86-64', True), + ('MUSCLE', '5.1'), + ('BLAST+', '2.12.0'), +] + +sanity_check_paths = { + 'files': ['wrapper_phage_contigs_sorter_iPlant.pl'], + 'dirs': ['Scripts'], +} + +modextrapaths = {'PATH': ['', 'Scripts']} +modaliases = {'%(namelower)s': 'wrapper_phage_contigs_sorter_iPlant.pl'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/v/VirSorter2/VirSorter2-2.2.4-foss-2021b.eb b/easybuild/easyconfigs/v/VirSorter2/VirSorter2-2.2.4-foss-2021b.eb new file mode 100644 index 00000000000..19f7bee122f --- /dev/null +++ b/easybuild/easyconfigs/v/VirSorter2/VirSorter2-2.2.4-foss-2021b.eb @@ -0,0 +1,39 @@ +easyblock = 'PythonBundle' + +name = 'VirSorter2' +version = '2.2.4' + +homepage = 'https://github.com/jiarong/VirSorter2' +description = """VirSorter2 applies a multi-classifier, expert-guided approach to detect diverse DNA and + RNA virus genomes.""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('ruamel.yaml', '0.17.21'), + ('snakemake', '7.18.2'), +] + +use_pip = True + +exts_list = [ + (name, version, { + 'source_urls': ['https://github.com/jiarong/%(name)s/archive/'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['f9d1c291f773d9c4d70d7ec096e76c21208950d74d7bd5046da7c4a77cd54c07'], + 'modulename': 'virsorter', + }), +] + +sanity_check_paths = { + 'files': ['bin/virsorter'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["virsorter --help"] + +sanity_pip_check = True + +moduleclass = 'bio' From 83d0018619675cb5baa5eef993a56b9d56453134 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Paul=20J=C3=A4hne?= Date: Fri, 15 Dec 2023 14:39:58 +0100 Subject: [PATCH 216/356] Use SYSTEM template --- easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb b/easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb index 7083d35ac6b..6294a582c08 100644 --- a/easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb +++ b/easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb @@ -18,7 +18,7 @@ dependencies = [ ('BioPerl', '1.7.8'), ('HMMER', '3.3.2'), ('MCL', '22.282'), - ('MetaGeneAnnotator', '20080819', '-x86-64', True), + ('MetaGeneAnnotator', '20080819', '-x86-64', SYSTEM), ('MUSCLE', '5.1'), ('BLAST+', '2.12.0'), ] From 79cf03e9e085b737625a1c49269a74975fb3bd2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Paul=20J=C3=A4hne?= Date: Fri, 15 Dec 2023 14:41:39 +0100 Subject: [PATCH 217/356] Add dependency --- .../cimfomfa-22.273-GCCcore-11.2.0.eb | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 easybuild/easyconfigs/c/cimfomfa/cimfomfa-22.273-GCCcore-11.2.0.eb diff --git a/easybuild/easyconfigs/c/cimfomfa/cimfomfa-22.273-GCCcore-11.2.0.eb b/easybuild/easyconfigs/c/cimfomfa/cimfomfa-22.273-GCCcore-11.2.0.eb new file mode 100644 index 00000000000..67528f3a994 --- /dev/null +++ b/easybuild/easyconfigs/c/cimfomfa/cimfomfa-22.273-GCCcore-11.2.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'cimfomfa' +version = '22.273' + +homepage = 'https://github.com/micans/cimfomfa' +description = """This library supports both MCL, a cluster algorithm for graphs, and zoem, a +macro/DSL language. It supplies abstractions for memory management, I/O, +associative arrays, strings, heaps, and a few other things. The string library +has had heavy testing as part of zoem. Both understandably and regrettably I +chose long ago to make it C-string-compatible, hence nul bytes may not be part +of a string. At some point I hope to rectify this, perhaps unrealistically.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +# The Github repo only has earlier tags +source_urls = ['https://micans.org/mcl/src/'] +sources = ['%(namelower)s-%(version_major)s-%(version_minor)s.tar.gz'] +checksums = ['b0f0549fda1d288ddd22a2675581636a6f4bde0f01e956fcf452d0f815b4964f'] + +builddependencies = [ + ('binutils', '2.37'), + ('Autotools', '20210726'), +] + +preconfigopts = 'autoreconf -i -f &&' + +sanity_check_paths = { + 'files': ['lib/libtingea.%s' % x for x in ('a', SHLIB_EXT)], + 'dirs': ['include/tingea'] +} + +moduleclass = 'lib' From 61b22893d7e58dd88f4923d926778ada8c69448c Mon Sep 17 00:00:00 2001 From: vsc46128 Date: Mon, 18 Dec 2023 09:48:24 +0100 Subject: [PATCH 218/356] remove modextrapaths which from ec --- easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb | 5 ----- 1 file changed, 5 deletions(-) diff --git a/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb index 5379d4f6f05..87bd4a020ed 100644 --- a/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb +++ b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb @@ -16,15 +16,10 @@ description = ''' toolchain = {'name': 'system', 'version': 'system'} - source_urls = ['https://code.visualstudio.com/sha/download?build=stable&os=linux-x64&'] sources = ['code-stable-x64-%s.tar.gz' % local_version_id] checksums = ['01669d69e567a5290336b1d2f7b2f0f1816e9d7099004b81a26f8f40ee17c9fc'] -modextrapaths = { - 'PATH': 'bin', -} - modaliases = {'vscode': '%(installdir)s/bin/code'} sanity_check_paths = { From 360c1c3949fff5fec2298c3e8ba3f87d9ff0760f Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Mon, 18 Dec 2023 10:57:03 +0100 Subject: [PATCH 219/356] remove redundant OS dependency on tcsh from Ferret-7.6.0-foss-2022a.eb --- easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb | 4 ---- 1 file changed, 4 deletions(-) diff --git a/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb b/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb index 09c9a4b3eaf..af203d81f3d 100644 --- a/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb +++ b/easybuild/easyconfigs/f/Ferret/Ferret-7.6.0-foss-2022a.eb @@ -27,10 +27,6 @@ dependencies = [ ('Java', '11', '', SYSTEM), ] -# /bin/csh is required for installation by bin/make_executable_tar, bin/make_environment_tar -# and also required by many installed scripts in bin/ -osdependencies = ['tcsh'] - parallel = 1 prebuildopts = 'export CPP_X11="-I${EBROOTX11}/include" && ' From 3108a9d0c81add867e9a86d68084b4d2d8c79543 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Mon, 18 Dec 2023 11:12:59 +0100 Subject: [PATCH 220/356] apply MPFR-4.1.0_patch-fix-tsprintf-test.patch --- easybuild/easyconfigs/m/MPFR/MPFR-4.2.0-GCCcore-12.2.0.eb | 6 +++++- easybuild/easyconfigs/m/MPFR/MPFR-4.2.0-GCCcore-12.3.0.eb | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/m/MPFR/MPFR-4.2.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/m/MPFR/MPFR-4.2.0-GCCcore-12.2.0.eb index b0eae5a885a..7208b5a8794 100644 --- a/easybuild/easyconfigs/m/MPFR/MPFR-4.2.0-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/m/MPFR/MPFR-4.2.0-GCCcore-12.2.0.eb @@ -14,7 +14,11 @@ toolchain = {'name': 'GCCcore', 'version': '12.2.0'} source_urls = ['https://www.mpfr.org/mpfr-%(version)s/'] sources = [SOURCELOWER_TAR_BZ2] -checksums = ['691db39178e36fc460c046591e4b0f2a52c8f2b3ee6d750cc2eab25f1eaa999d'] +patches = ['MPFR-4.1.0_patch-fix-tsprintf-test.patch'] +checksums = [ + {'mpfr-4.2.0.tar.bz2': '691db39178e36fc460c046591e4b0f2a52c8f2b3ee6d750cc2eab25f1eaa999d'}, + {'MPFR-4.1.0_patch-fix-tsprintf-test.patch': '039fad7a79ec4a9fd9ce77c9a73d9278187b8430087bc1afec18883df40321ae'}, +] builddependencies = [ ('binutils', '2.39'), diff --git a/easybuild/easyconfigs/m/MPFR/MPFR-4.2.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/m/MPFR/MPFR-4.2.0-GCCcore-12.3.0.eb index 4016fc31b80..b2c11f4ea09 100644 --- a/easybuild/easyconfigs/m/MPFR/MPFR-4.2.0-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/m/MPFR/MPFR-4.2.0-GCCcore-12.3.0.eb @@ -14,7 +14,11 @@ toolchain = {'name': 'GCCcore', 'version': '12.3.0'} source_urls = ['https://www.mpfr.org/mpfr-%(version)s/'] sources = [SOURCELOWER_TAR_BZ2] -checksums = ['691db39178e36fc460c046591e4b0f2a52c8f2b3ee6d750cc2eab25f1eaa999d'] +patches = ['MPFR-4.1.0_patch-fix-tsprintf-test.patch'] +checksums = [ + {'mpfr-4.2.0.tar.bz2': '691db39178e36fc460c046591e4b0f2a52c8f2b3ee6d750cc2eab25f1eaa999d'}, + {'MPFR-4.1.0_patch-fix-tsprintf-test.patch': '039fad7a79ec4a9fd9ce77c9a73d9278187b8430087bc1afec18883df40321ae'}, +] builddependencies = [ ('binutils', '2.40'), From 883706857f333ae660f3bbf024b4e73d4c7eed70 Mon Sep 17 00:00:00 2001 From: Simon Branford Date: Mon, 18 Dec 2023 12:40:26 +0000 Subject: [PATCH 221/356] skip Test::Sys::Info test that expects /etc/fstab in Perl-bundle-CPAN --- .../Perl-bundle-CPAN/Perl-bundle-CPAN-5.36.1-GCCcore-12.3.0.eb | 2 ++ .../Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.0-GCCcore-13.2.0.eb | 2 ++ 2 files changed, 4 insertions(+) diff --git a/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.36.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.36.1-GCCcore-12.3.0.eb index 350f4e317e9..9c5ab28d7b7 100644 --- a/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.36.1-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.36.1-GCCcore-12.3.0.eb @@ -2029,6 +2029,8 @@ exts_list = [ 'checksums': ['510a7de2d011b0db80b0874e8c0f7390010991000ae135cff7474df1e6d51e3a'], }), ('Test::Sys::Info', '0.23', { + # test fails on systems without /etc/fstab - so comment it out + 'preconfigopts': "sed -i 's/ok( my %fs/# ok( my %fs/' lib/Test/Sys/Info/Driver.pm && ", 'source_tmpl': 'Test-Sys-Info-%(version)s.tar.gz', 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK'], 'checksums': ['30c5f2c4cfee8e1ae6d9fb6291f79addbff5739ba4efa5b1e034520f18fbc95a'], diff --git a/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.0-GCCcore-13.2.0.eb index bf8c4acaced..89d9819e7fb 100644 --- a/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.0-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/Perl-bundle-CPAN/Perl-bundle-CPAN-5.38.0-GCCcore-13.2.0.eb @@ -2031,6 +2031,8 @@ exts_list = [ 'checksums': ['510a7de2d011b0db80b0874e8c0f7390010991000ae135cff7474df1e6d51e3a'], }), ('Test::Sys::Info', '0.23', { + # test fails on systems without /etc/fstab - so comment it out + 'preconfigopts': "sed -i 's/ok( my %fs/# ok( my %fs/' lib/Test/Sys/Info/Driver.pm && ", 'source_tmpl': 'Test-Sys-Info-%(version)s.tar.gz', 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK'], 'checksums': ['30c5f2c4cfee8e1ae6d9fb6291f79addbff5739ba4efa5b1e034520f18fbc95a'], From 3bbe11da38fb5262c5fc65cb07a20d432f11bfdb Mon Sep 17 00:00:00 2001 From: Leonard Nielsen <55690238+lcniel@users.noreply.github.com> Date: Mon, 18 Dec 2023 13:44:16 +0100 Subject: [PATCH 222/356] Update XCrySDen-1.6.2-intel-2021b.eb drop to intel-compilers --- easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb index 1efe81bd188..94909a3276d 100644 --- a/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb +++ b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb @@ -13,7 +13,7 @@ It also possesses some tools for analysis of properties in reciprocal space such of k-paths in the Brillouin zone for the band-structure plots, and visualisation of Fermi surfaces. """ -toolchain = {'name': 'intel', 'version': '2021b'} +toolchain = {'name': 'intel-compilers', 'version': '2021b'} source_urls = ["http://www.xcrysden.org/download/"] sources = [SOURCELOWER_TAR_GZ] From bc4addc963c906bcb69f43ecd0faa89be6f0cedc Mon Sep 17 00:00:00 2001 From: WilleBell Date: Mon, 18 Dec 2023 16:50:29 +0100 Subject: [PATCH 223/356] adding easyconfigs: cdo-bindings-1.6.0-foss-2022a.eb, SPEI-0.3.5-foss-2022a.eb --- .../cdo-bindings-1.6.0-foss-2022a.eb | 28 +++++++++++++++ .../s/SPEI/SPEI-0.3.5-foss-2022a.eb | 34 +++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 easybuild/easyconfigs/c/cdo-bindings/cdo-bindings-1.6.0-foss-2022a.eb create mode 100644 easybuild/easyconfigs/s/SPEI/SPEI-0.3.5-foss-2022a.eb diff --git a/easybuild/easyconfigs/c/cdo-bindings/cdo-bindings-1.6.0-foss-2022a.eb b/easybuild/easyconfigs/c/cdo-bindings/cdo-bindings-1.6.0-foss-2022a.eb new file mode 100644 index 00000000000..1921036c3c9 --- /dev/null +++ b/easybuild/easyconfigs/c/cdo-bindings/cdo-bindings-1.6.0-foss-2022a.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonBundle' + +name = 'cdo-bindings' +version = '1.6.0' + +homepage = 'https://github.com/Try2Code/cdo-bindings' +description = "Python interface to CDO." + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('CDO', '2.0.6'), + ('netcdf4-python', '1.6.1'), + ('xarray', '2022.6.0'), # optional +] + +use_pip = True + +exts_list = [ + ('cdo', version, { + 'checksums': ['6bdfc38b3ba00c5375aa97e2fd0431a4186953cba5156e60247a8ab6a0dd7f7e'], + }), +] + +sanity_pip_check = True + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/s/SPEI/SPEI-0.3.5-foss-2022a.eb b/easybuild/easyconfigs/s/SPEI/SPEI-0.3.5-foss-2022a.eb new file mode 100644 index 00000000000..e217933c8ee --- /dev/null +++ b/easybuild/easyconfigs/s/SPEI/SPEI-0.3.5-foss-2022a.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'SPEI' +version = '0.3.5' + +homepage = 'https://github.com/martinvonk/spei' +description = """ +A simple Python package to calculate drought indices for time series such as the SPI, SPEI and SGI. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('matplotlib', '3.5.2'), +] + +use_pip = True + +exts_list = [ + ('spei', version, { + 'checksums': ['8d672b6d829a6f32737afdeccf4c69f13abd544d3b7297e57c80b4b3996aa05a'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'] +} + +sanity_pip_check = True + +moduleclass = 'geo' From e79430bd894bac9b8c84d349852ebd1d077a7c23 Mon Sep 17 00:00:00 2001 From: Adam Huffman <12435+verdurin@users.noreply.github.com> Date: Mon, 18 Dec 2023 16:08:09 +0000 Subject: [PATCH 224/356] adding easyconfigs: awscli-2.15.2-GCCcore-12.2.0.eb --- .../a/awscli/awscli-2.15.2-GCCcore-12.2.0.eb | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 easybuild/easyconfigs/a/awscli/awscli-2.15.2-GCCcore-12.2.0.eb diff --git a/easybuild/easyconfigs/a/awscli/awscli-2.15.2-GCCcore-12.2.0.eb b/easybuild/easyconfigs/a/awscli/awscli-2.15.2-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..1e3bf17dfd0 --- /dev/null +++ b/easybuild/easyconfigs/a/awscli/awscli-2.15.2-GCCcore-12.2.0.eb @@ -0,0 +1,61 @@ +easyblock = 'PythonBundle' + +name = 'awscli' +version = '2.15.2' + +homepage = 'https://pypi.python.org/pypi/awscli' +description = 'Universal Command Line Environment for AWS' + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +builddependencies = [ + ('binutils', '2.39'), + ('CMake', '3.24.3'), # required for awscrt +] + +dependencies = [ + ('Python', '3.10.8'), + ('PyYAML', '6.0'), + ('ruamel.yaml', '0.17.21'), +] + +use_pip = True + +exts_list = [ + ('jmespath', '1.0.1', { + 'checksums': ['90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe'], + }), + ('botocore', '1.33.13', { + 'checksums': ['fb577f4cb175605527458b04571451db1bd1a2036976b626206036acd4496617'], + }), + ('s3transfer', '0.8.2', { + 'checksums': ['368ac6876a9e9ed91f6bc86581e319be08188dc60d50e0d56308ed5765446283'], + }), + ('prompt-toolkit', '3.0.38', { + 'sources': ['prompt_toolkit-%(version)s.tar.gz'], + 'checksums': ['23ac5d50538a9a38c8bde05fecb47d0b403ecd0662857a86f886f798563d5b9b'], + }), + ('distro', '1.8.0', { + 'checksums': ['02e111d1dc6a50abb8eed6bf31c3e48ed8b0830d1ea2a1b78c61765c2513fdd8'], + }), + ('awscrt', '0.19.19', { + 'preinstallopts': "export AWS_CRT_BUILD_USE_SYSTEM_LIBCRYPTO=1 && ", + 'checksums': ['1c1511535dee146a6c26a382ed3ead56259a105b3b7d7d823553ae567d038dfe'], + }), + (name, version, { + 'source_tmpl': '%(version)s.tar.gz', + 'source_urls': ['https://github.com/aws/aws-cli/archive/'], + 'checksums': ['f71cda7e53beeea8db7d5af3b2a56efa47a0b341fe1eadf7be626be32f365960'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/aws'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/'], +} + +sanity_check_commands = ["aws help"] + +moduleclass = 'tools' From 9643d6cb4edbe088a1b7d9fd5896681625cc1deb Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Mon, 18 Dec 2023 23:17:02 +0100 Subject: [PATCH 225/356] adding easyconfigs: VTK-9.3.0-foss-2023a.eb --- .../easyconfigs/v/VTK/VTK-9.3.0-foss-2023a.eb | 92 +++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 easybuild/easyconfigs/v/VTK/VTK-9.3.0-foss-2023a.eb diff --git a/easybuild/easyconfigs/v/VTK/VTK-9.3.0-foss-2023a.eb b/easybuild/easyconfigs/v/VTK/VTK-9.3.0-foss-2023a.eb new file mode 100644 index 00000000000..9278837da13 --- /dev/null +++ b/easybuild/easyconfigs/v/VTK/VTK-9.3.0-foss-2023a.eb @@ -0,0 +1,92 @@ +## +# Authors:: +# * Fotis Georgatos +# * Robert Mijakovic +## + +easyblock = 'CMakeNinja' + +name = 'VTK' +version = '9.3.0' + +homepage = 'https://www.vtk.org' +description = """The Visualization Toolkit (VTK) is an open-source, freely available software system for + 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several + interpreted interface layers including Tcl/Tk, Java, and Python. VTK supports a wide variety of visualization + algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques + such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://www.vtk.org/files/release/%(version_major_minor)s'] +sources = [ + SOURCE_TAR_GZ, + '%(name)sData-%(version)s.tar.gz', +] +patches = [('vtk-version.egg-info', '.')] +checksums = [ + {'VTK-9.3.0.tar.gz': 'fdc7b9295225b34e4fdddc49cd06e66e94260cb00efee456e0f66568c9681be9'}, + {'VTKData-9.3.0.tar.gz': 'f82142dd327e995c9536c1003e1370bb4092c96f23edb8119d16d2411ef35dc3'}, + {'vtk-version.egg-info': '787b82415ae7a4a1f815b4db0e25f7abc809a05fc85d7d219627f3a7e5d3867b'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Ninja', '1.11.1'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('XZ', '5.4.2'), + ('libGLU', '9.0.3'), + ('X11', '20230603'), +] + +separate_build_dir = True + +# OpenGL +configopts = "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT +configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT +configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include " +# Python +configopts += "-DVTK_WRAP_PYTHON=ON -DVTK_PYTHON_VERSION=3 -DVTK_PYTHON_OPTIONAL_LINK=OFF " +configopts += "-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python3 " +configopts += "-DPython3_INCLUDE_DIR=$EBROOTPYTHON/include/python%(pyshortver)s " +configopts += "-DPython3_LIBRARY=$EBROOTPYTHON/lib/libpython%(pyshortver)s.so " +# Other +configopts += "-DVTK_USE_MPI=ON " +configopts += "-DCMAKE_INSTALL_LIBDIR=lib" + +preinstallopts = "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " + +# Install a egg-info file so VTK is more python friendly, required for mayavi +local_egg_info_src = '%(builddir)s/VTK-%(version)s/vtk-version.egg-info' +local_egg_info_dest = '%(installdir)s/lib/python%(pyshortver)s/site-packages/vtk-%(version)s.egg-info' +postinstallcmds = [ + 'sed "s/#VTK_VERSION#/%%(version)s/" %s > %s' % (local_egg_info_src, local_egg_info_dest), +] + +modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']} + +local_vtk_exec = ['vtk%s-%%(version_major_minor)s' % x + for x in ['WrapJava', 'ParseJava', 'WrapPythonInit', 'WrapPython', 'WrapHierarchy']] +local_vtk_exec += ['vtkpython'] +local_vtk_libs = ['CommonCore', 'IONetCDF', 'ParallelCore', 'RenderingOpenGL2'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_vtk_exec] + ['include/vtk-%(version_major_minor)s/vtkMPI.h'] + + ['lib/libvtk%s-%%(version_major_minor)s.%s' % (l, SHLIB_EXT) for l in local_vtk_libs], + 'dirs': ['lib/python%(pyshortver)s/site-packages/', 'include/vtk-%(version_major_minor)s'], +} + +sanity_check_commands = [ + "python -c 'import %(namelower)s'", + "python -c 'import pkg_resources; pkg_resources.get_distribution(\"vtk\")'", + # make sure that VTK Python libraries link to libpython (controlled via DVTK_PYTHON_OPTIONAL_LINK=OFF), + # see https://gitlab.kitware.com/vtk/vtk/-/issues/17881 + "ldd $EBROOTVTK/lib/libvtkPythonContext2D-%%(version_major_minor)s.%s | grep /libpython" % SHLIB_EXT, +] + +moduleclass = 'vis' From 36f14099a8273088fb753f2c9763d8fadbba8058 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Tue, 19 Dec 2023 11:18:52 +0100 Subject: [PATCH 226/356] simplify sanity check command for `git-lfs` --- easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb b/easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb index e19141d8b4b..9d16d16f7e1 100644 --- a/easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb +++ b/easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb @@ -23,6 +23,6 @@ sanity_check_paths = { 'dirs': [], } -sanity_check_commands = [('git-lfs', '--version')] +sanity_check_commands = ["git-lfs --version"] moduleclass = 'tools' From 4831595fd33cc695b6d13b649e417967c47ef237 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Tue, 19 Dec 2023 10:23:38 +0000 Subject: [PATCH 227/356] add phonopy-2.20.0-foss-2023a.eb --- .../p/phonopy/phonopy-2.20.0-foss-2023a.eb | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb diff --git a/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb new file mode 100644 index 00000000000..cc64a106448 --- /dev/null +++ b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'phonopy' +version = '2.20.0' + +homepage = 'https://atztogo.github.io/phonopy/' +description = """Phonopy is an open source package of phonon calculations based on the supercell approach.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCE_TAR_GZ] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), # for numpy + ('matplotlib', '3.7.2'), + ('PyYAML', '6.0'), + ('h5py', '3.7.0'), + ('spglib-python', '2.0.2'), +] + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': ['bin/phonopy'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["phonopy --help"] + +sanity_pip_check = True + +moduleclass = 'lib' From 68fedda64f06d04c23780e1c8e2ddc717752084e Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Tue, 19 Dec 2023 10:28:01 +0000 Subject: [PATCH 228/356] different spglib version --- easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb index cc64a106448..6f3169c1da1 100644 --- a/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb +++ b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb @@ -16,7 +16,7 @@ dependencies = [ ('matplotlib', '3.7.2'), ('PyYAML', '6.0'), ('h5py', '3.7.0'), - ('spglib-python', '2.0.2'), + ('spglib-python', '2.1.0'), ] download_dep_fail = True From e4252e1ee24c2fe9b509cfbe4feeb1f1921ee78f Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Tue, 19 Dec 2023 10:39:43 +0000 Subject: [PATCH 229/356] newer version of h5py --- easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb index 6f3169c1da1..45003147c6c 100644 --- a/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb +++ b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb @@ -15,7 +15,7 @@ dependencies = [ ('SciPy-bundle', '2023.07'), # for numpy ('matplotlib', '3.7.2'), ('PyYAML', '6.0'), - ('h5py', '3.7.0'), + ('h5py', '3.9.0'), ('spglib-python', '2.1.0'), ] From 94acfc4247efd37262219a63d12b30f8f5ba1b35 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Tue, 19 Dec 2023 10:54:05 +0000 Subject: [PATCH 230/356] add phonopy-2.20.0-foss-2023a.eb --- .../p/phono3py/phono3py-2.7.0-foss-2023a.eb | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb diff --git a/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb b/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb new file mode 100644 index 00000000000..3d8fa1685fb --- /dev/null +++ b/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonPackage' + +name = 'phono3py' +version = '2.7.0' + +homepage = 'http://phonopy.github.io/phono3py/' +description = """A simulation package of phonon-phonon interaction related properties.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +#toolchainopts = {'pic': True} + +source_urls = ['https://github.com/phonopy/phono3py/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] + +dependencies = [ + ('Python', '3.11.3'), + ('phonopy', '2.20.0'), +] + +preinstallopts = 'echo "extra_compile_args = -fopenmp" > site.cfg && ' +preinstallopts += 'echo "extra_link_args = -lgomp -llapacke -lpthread" >> site.cfg && ' +#preinstallopts = "export LDLAGS='-lgomp -llapacke -lpthread ' && export CFLAGS='-fopenmp ' && " +installopts = " -vvv" + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': ['bin/phono3py'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["phono3py --help"] + +sanity_pip_check = True + +moduleclass = 'lib' From 5a8716bdaed3ad1e93936033c4d62df20d20282d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Paul=20J=C3=A4hne?= Date: Tue, 19 Dec 2023 12:37:00 +0100 Subject: [PATCH 231/356] Change dependency versions to be in line with others of the toolchain --- easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb | 2 +- .../easyconfigs/v/VirSorter2/VirSorter2-2.2.4-foss-2021b.eb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb b/easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb index 6294a582c08..9d18ff59c28 100644 --- a/easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb +++ b/easybuild/easyconfigs/v/VirSorter/VirSorter-1.0.6-foss-2021b.eb @@ -19,7 +19,7 @@ dependencies = [ ('HMMER', '3.3.2'), ('MCL', '22.282'), ('MetaGeneAnnotator', '20080819', '-x86-64', SYSTEM), - ('MUSCLE', '5.1'), + ('MUSCLE', '3.8.31'), ('BLAST+', '2.12.0'), ] diff --git a/easybuild/easyconfigs/v/VirSorter2/VirSorter2-2.2.4-foss-2021b.eb b/easybuild/easyconfigs/v/VirSorter2/VirSorter2-2.2.4-foss-2021b.eb index 19f7bee122f..5270c708249 100644 --- a/easybuild/easyconfigs/v/VirSorter2/VirSorter2-2.2.4-foss-2021b.eb +++ b/easybuild/easyconfigs/v/VirSorter2/VirSorter2-2.2.4-foss-2021b.eb @@ -13,7 +13,7 @@ dependencies = [ ('Python', '3.9.6'), ('SciPy-bundle', '2021.10'), ('ruamel.yaml', '0.17.21'), - ('snakemake', '7.18.2'), + ('snakemake', '6.10.0'), ] use_pip = True From df71d854b7b3d36daec47cc7d3be4c1ad281d022 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Tue, 19 Dec 2023 13:01:13 +0100 Subject: [PATCH 232/356] adding easyconfigs: PyTorch-2.1.2-foss-2022a.eb and patches: PyTorch-2.0.1_avoid-test_quantization-failures.patch, PyTorch-2.0.1_fix-skip-decorators.patch, PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch, PyTorch-2.0.1_fix-vsx-loadu.patch, PyTorch-2.0.1_no-cuda-stubs-rpath.patch, PyTorch-2.0.1_skip-failing-gradtest.patch, PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch, PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch, PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch, PyTorch-2.1.0_fix-validationError-output-test.patch, PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch, PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch, PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch, PyTorch-2.1.0_remove-test-requiring-online-access.patch, PyTorch-2.1.0_skip-diff-test-on-ppc.patch, PyTorch-2.1.0_skip-dynamo-test_predispatch.patch, PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch, PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch, PyTorch-2.1.0_skip-test_wrap_bad.patch --- ...h-2.1.0_fix-bufferoverflow-in-oneDNN.patch | 30 +++ ....1.0_fix-validationError-output-test.patch | 66 +++++++ ...2.1.0_fix-vsx-vector-shift-functions.patch | 172 ++++++++++++++++++ ...-tolerance-functorch-test_vmapvjpvjp.patch | 28 +++ ..._remove-sparse-csr-nnz-overflow-test.patch | 26 +++ ..._remove-test-requiring-online-access.patch | 26 +++ .../PyTorch-2.1.0_skip-diff-test-on-ppc.patch | 26 +++ ...h-2.1.0_skip-dynamo-test_predispatch.patch | 23 +++ ....0_skip-test_jvp_linalg_det_singular.patch | 35 ++++ ....0_skip-test_linear_fp32-without-MKL.patch | 26 +++ .../PyTorch-2.1.0_skip-test_wrap_bad.patch | 69 +++++++ .../p/PyTorch/PyTorch-2.1.2-foss-2022a.eb | 157 ++++++++++++++++ 12 files changed, 684 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-validationError-output-test.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-test-requiring-online-access.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-diff-test-on-ppc.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-dynamo-test_predispatch.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_wrap_bad.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.2-foss-2022a.eb diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch new file mode 100644 index 00000000000..4ad64a886b5 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch @@ -0,0 +1,30 @@ +Fix a buffer overflow in oneDNN resulting in memory corruption. +Visible in e.g test_scaled_dot_product_fused_attention_vs_math_cpu in test_transformers.py + +See https://github.com/pytorch/pytorch/issues/115253 +Fixed in oneDNN 3.3 with https://github.com/oneapi-src/oneDNN/commit/6518e55b025b75ea83c677c601cfb8b1f7df0a68 +Use this commit to patch the submodule. + +Author: Alexander Grund (TU Dresden) + +diff -ur pytorch/third_party/ideep/mkl-dnn/src/cpu/matmul/gemm_based_common.hpp pytorch-orig/third_party/ideep/mkl-dnn/src/cpu/matmul/gemm_based_common.hpp +--- pytorch/third_party/ideep/mkl-dnn/src/cpu/matmul/gemm_based_common.hpp 2023-12-08 11:02:21.817449743 +0100 ++++ pytorch-orig/third_party/ideep/mkl-dnn/src/cpu/matmul/gemm_based_common.hpp 2023-12-08 11:02:17.796537323 +0100 +@@ -139,9 +139,15 @@ + const int nthr) { + const int num_scratchpad_blocks + = use_single_gemm_call_optimization ? 1 : nthr; +- return get_scratchpad_block_elements( +- batch, M, N, use_single_gemm_call_optimization, nthr) ++ size_t buf_sz = get_scratchpad_block_elements(batch, M, N, ++ use_single_gemm_call_optimization, nthr) + * num_scratchpad_blocks; ++ ++ // Buffer needs to be large enough to accommodate one thread buffer ++ // size requirement in case only one thread is used during execution. ++ size_t buf_sz_1thr = get_scratchpad_block_elements( ++ batch, M, N, use_single_gemm_call_optimization, 1); ++ return nstl::max(buf_sz_1thr, buf_sz); + } + + inline void book_acc_scratchpad(matmul_pd_t &pd, const params_t ¶ms, diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-validationError-output-test.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-validationError-output-test.patch new file mode 100644 index 00000000000..2fd2ac954e7 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-validationError-output-test.patch @@ -0,0 +1,66 @@ +test_trigger_on_error in dynamo/test_exc.py fails as the output lines are ordered differently. +Sort those to make them consistent as is done in https://github.com/pytorch/pytorch/commit/dfdc0b63c9a5befd363d304eb5e08ed1e592d7ca +Then update the expected output. + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/dynamo/test_exc.py b/test/dynamo/test_exc.py +index c8390880aa9..a69c229a8ae 100644 +--- a/test/dynamo/test_exc.py ++++ b/test/dynamo/test_exc.py +@@ -211,28 +211,28 @@ ReluCompileError:""", + translation validation failed. + + Model: ++ ==> L['x'].size()[0]: 4 + ==> L['x'].storage_offset(): 0 +- ==> s0: 4 + ==> L['x'].stride()[0]: 1 +- ==> L['x'].size()[0]: 4 ++ ==> s0: 4 + + Assertions: ++ ==> (== 0 L['x'].storage_offset()) ++ ==> (== 1 L['x'].stride()[0]) + ==> (== L['x'].size()[0] s0) + ==> (> s0 1) + ==> (Not (And (< L['x'].size()[0] 4) (>= L['x'].size()[0] 0))) + ==> (True) +- ==> (== 0 L['x'].storage_offset()) +- ==> (== 1 L['x'].stride()[0]) + ==> (True) + + Target Expressions: +- ==> (>= 9223372036854775806 s0) +- ==> (== 4 L['x'].size()[0]) ++ ==> (<= 2 s0) + ==> (== 0 L['x'].storage_offset()) +- ==> (> s0 0) + ==> (== 1 L['x'].stride()[0]) +- ==> (<= 2 s0) ++ ==> (== 4 L['x'].size()[0]) + ==> (== 4 s0) ++ ==> (> s0 0) ++ ==> (>= 9223372036854775806 s0) + + Failed Source Expressions: + ==> (!= 4 L['x'].size()[0])""", +diff --git a/torch/fx/experimental/validator.py b/torch/fx/experimental/validator.py +index 313e299151c..3b5e1e81aa3 100644 +--- a/torch/fx/experimental/validator.py ++++ b/torch/fx/experimental/validator.py +@@ -559,10 +559,10 @@ class ValidationException(TorchDynamoException): + def joinlines(xs) -> str: + return "\n".join(f" ==> {x}" for x in xs) + +- model_str = joinlines(map(symbolstr, model)) +- assertions_str = joinlines(map(z3str, assertions)) +- target_exprs_str = joinlines(map(z3str, target_exprs)) +- failed_source_exprs_str = joinlines(map(z3str, failed_source_exprs)) ++ model_str = joinlines(sorted(map(symbolstr, model))) ++ assertions_str = joinlines(sorted(map(z3str, assertions))) ++ target_exprs_str = joinlines(sorted(map(z3str, target_exprs))) ++ failed_source_exprs_str = joinlines(sorted(map(z3str, failed_source_exprs))) + + super().__init__( + "translation validation failed.\n\n" diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch new file mode 100644 index 00000000000..cf0fd419778 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch @@ -0,0 +1,172 @@ +The VSX vector shift operators don't handle out-of-bounds values correctly. +See https://github.com/pytorch/pytorch/issues/109777 +Taken from https://github.com/pytorch/pytorch/pull/109886 + +Author: Alexander Grund (TU Dresden) + +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h +index a71f50fc7aa..84c84286740 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h +@@ -334,20 +334,6 @@ class Vectorized { + DEFINE_MEMBER_OP(operator^, int16_t, vec_xor) + }; + +-template <> +-Vectorized inline operator<<(const Vectorized& a, const Vectorized& b) { +- vuint16 shift_vec0 = reinterpret_cast(b.vec0()); +- vuint16 shift_vec1 = reinterpret_cast(b.vec1()); +- return Vectorized{vec_sl(a.vec0(), shift_vec0), vec_sl(a.vec1(), shift_vec1)}; +-} +- +-template <> +-Vectorized inline operator>>(const Vectorized& a, const Vectorized& b) { +- vuint16 shift_vec0 = reinterpret_cast(b.vec0()); +- vuint16 shift_vec1 = reinterpret_cast(b.vec1()) ; +- return Vectorized{vec_sr(a.vec0(), shift_vec0), vec_sr(a.vec1(), shift_vec1)}; +-} +- + template <> + Vectorized inline maximum( + const Vectorized& a, +@@ -362,6 +348,7 @@ Vectorized inline minimum( + return a.minimum(b); + } + ++DEFINE_SHIFT_FUNCS(int16_t) + + } // namespace + } // namespace vec +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h +index 1b6a82df39b..e1e86d3b53a 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h +@@ -265,20 +265,6 @@ class Vectorized { + DEFINE_MEMBER_OP(operator^, int32_t, vec_xor) + }; + +-template <> +-Vectorized inline operator<<(const Vectorized& a, const Vectorized& b) { +- vuint32 shift_vec0 = reinterpret_cast(b.vec0()); +- vuint32 shift_vec1 = reinterpret_cast(b.vec1()) ; +- return Vectorized{vec_sl(a.vec0(), shift_vec0), vec_sl(a.vec1(), shift_vec1)}; +-} +- +-template <> +-Vectorized inline operator>>(const Vectorized& a, const Vectorized& b) { +- vuint32 shift_vec0 = reinterpret_cast(b.vec0()); +- vuint32 shift_vec1 = reinterpret_cast(b.vec1()) ; +- return Vectorized{vec_sr(a.vec0(), shift_vec0), vec_sr(a.vec1(), shift_vec1)}; +-} +- + template <> + Vectorized inline maximum( + const Vectorized& a, +@@ -293,6 +279,8 @@ Vectorized inline minimum( + return a.minimum(b); + } + ++DEFINE_SHIFT_FUNCS(int32_t) ++ + } // namespace + } // namespace vec + } // namespace at +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h +index a7a376ee16e..70613d90443 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h +@@ -217,20 +217,6 @@ class Vectorized { + DEFINE_MEMBER_OP(operator^, int64_t, vec_xor) + }; + +-template <> +-Vectorized inline operator<<(const Vectorized& a, const Vectorized& b) { +- vuint64 shift_vec0 = reinterpret_cast(b.vec0()); +- vuint64 shift_vec1 = reinterpret_cast(b.vec1()) ; +- return Vectorized{vec_sl(a.vec0(), shift_vec0), vec_sl(a.vec1(), shift_vec1)}; +-} +- +-template <> +-Vectorized inline operator>>(const Vectorized& a, const Vectorized& b) { +- vuint64 shift_vec0 = reinterpret_cast(b.vec0()); +- vuint64 shift_vec1 = reinterpret_cast(b.vec1()) ; +- return Vectorized{vec_sr(a.vec0(), shift_vec0), vec_sr(a.vec1(), shift_vec1)}; +-} +- + template <> + Vectorized inline maximum( + const Vectorized& a, +@@ -245,6 +231,8 @@ Vectorized inline minimum( + return a.minimum(b); + } + ++DEFINE_SHIFT_FUNCS(int64_t) ++ + } // namespace + } // namespace vec + } // namespace at +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vsx_helpers.h b/aten/src/ATen/cpu/vec/vec256/vsx/vsx_helpers.h +index dab38458184..52032cdd817 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vsx_helpers.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vsx_helpers.h +@@ -2,6 +2,7 @@ + #include + #include + #include ++#include + + using vbool8 = __attribute__((altivec(vector__))) __attribute__((altivec(bool__))) char; + using vbool16 = __attribute__((altivec(vector__))) __attribute__((altivec(bool__))) short; +@@ -18,6 +19,11 @@ using vuint64 = __attribute__((altivec(vector__))) unsigned long long; + using vfloat32 = __attribute__((altivec(vector__))) float; + using vfloat64 = __attribute__((altivec(vector__))) double; + ++inline auto make_vuint(vint8 v){ return reinterpret_cast(v); } ++inline auto make_vuint(vint16 v){ return reinterpret_cast(v); } ++inline auto make_vuint(vint32 v){ return reinterpret_cast(v); } ++inline auto make_vuint(vint64 v){ return reinterpret_cast(v); } ++ + #if !defined(vec_float) + C10_ALWAYS_INLINE vfloat32 vec_float(const vint32& vec_in) { + vfloat32 vec_out; +@@ -448,6 +454,40 @@ const vfloat64 vd_imag_half = vfloat64{0.0, 0.5}; + const vfloat64 vd_sqrt2_2 = vfloat64{0.70710678118654757, 0.70710678118654757}; + const vfloat64 vd_pi_2 = vfloat64{M_PI / 2.0, 0.0}; + ++template ++Vectorized VsxShiftRightArith(const Vectorized& a, const Vectorized& b) { ++ const Vectorized max_shift(sizeof(T) * CHAR_BIT - std::is_signed_v); ++ const auto mask = (b < Vectorized(0)) | (b >= max_shift); ++ const auto shift = Vectorized::blendv(b, max_shift, mask); ++ return Vectorized{ ++ vec_sra(a.vec0(), make_vuint(shift.vec0())), ++ vec_sra(a.vec1(), make_vuint(shift.vec1()))}; ++} ++ ++template ++Vectorized VsxShiftLeftArith(const Vectorized& a, const Vectorized& b) { ++ const Vectorized max_shift(sizeof(T) * CHAR_BIT); ++ const auto mask = (b < Vectorized(0)) | (b >= max_shift); ++ Vectorized ret( ++ vec_sl(a.vec0(), make_vuint(b.vec0())), ++ vec_sl(a.vec1(), make_vuint(b.vec1()))); ++ return Vectorized::blendv(ret, Vectorized(0), mask); ++} ++ ++#define DEFINE_SHIFT_FUNCS(operand_type) \ ++ template <> \ ++ Vectorized C10_ALWAYS_INLINE operator>>( \ ++ const Vectorized& a, \ ++ const Vectorized& b) { \ ++ return VsxShiftRightArith(a, b); \ ++ } \ ++ template <> \ ++ Vectorized C10_ALWAYS_INLINE operator<<( \ ++ const Vectorized& a, \ ++ const Vectorized& b) { \ ++ return VsxShiftLeftArith(a, b); \ ++ } \ ++ + } // namespace + } // namespace vec + } // namespace at diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch new file mode 100644 index 00000000000..00096a92073 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch @@ -0,0 +1,28 @@ +Increase tolerance of test_vmapvjpvjp_linalg_tensorsolve_cpu_float32 which fails with the same diff on multiple machines. + +_________________________________________ TestOperatorsCPU.test_vmapvjpvjp_linalg_tensorsolve_cpu_float32 _________________________________________ +AssertionError: Tensor-likes are not close! + +Mismatched elements: 6 / 288 (2.1%) +Greatest absolute difference: 0.0005550384521484375 at index (0, 2, 1, 0, 2) (up to 0.0001 allowed) +Greatest relative difference: 0.0002498962276149541 at index (0, 1, 0, 0, 2) (up to 0.0001 allowed) + +The failure occurred for item [2] + +See https://github.com/pytorch/pytorch/issues/114868 + +@Author: Alexander Grund (TU Dresden) + +diff --git a/test/functorch/test_ops.py b/test/functorch/test_ops.py +index 923d75d53d9..1ae32bffba6 100644 +--- a/test/functorch/test_ops.py ++++ b/test/functorch/test_ops.py +@@ -825,6 +825,8 @@ class TestOperators(TestCase): + @opsToleranceOverride('TestOperators', 'test_vmapvjpvjp', ( + tol1('linalg.svd', + {torch.float32: tol(atol=1e-03, rtol=5e-04)}), ++ tol1('linalg.tensorsolve', ++ {torch.float32: tol(atol=1e-03, rtol=5e-04)}), + tol1('linalg.lu_factor', + {torch.float32: tol(atol=2e-03, rtol=2e-02)}), + tol1('svd', diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch new file mode 100644 index 00000000000..b2881c72510 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch @@ -0,0 +1,26 @@ +The test causes an overflow before it gets to the point it wants to test. +Simply remove that part. +See https://github.com/pytorch/pytorch/pull/114940 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/test_sparse_csr.py b/test/test_sparse_csr.py +index 5d344953526..f0bf8535214 100644 +--- a/test/test_sparse_csr.py ++++ b/test/test_sparse_csr.py +@@ -864,15 +864,6 @@ class TestSparseCompressed(TestCase): + torch.tensor([0], dtype=torch.int64), + torch.tensor([1]), (1, cols)) + +- nnz = 2 ** 31 +- with self.assertRaisesRegex(RuntimeError, '32-bit integer overflow in nnz'): +- torch.sparse_csr_tensor(torch.tensor([0, nnz // 2, nnz], dtype=torch.int32), +- torch.arange(nnz // 2, dtype=torch.int32).repeat(2), +- torch.ones(nnz, dtype=torch.int8), (2, nnz // 2)) +- torch.sparse_csr_tensor(torch.tensor([0, nnz // 2, nnz], dtype=torch.int64), +- torch.arange(nnz // 2, dtype=torch.int64).repeat(2), +- torch.ones(nnz, dtype=torch.int8), (2, nnz // 2)) +- + @skipMeta + @onlyCPU + @all_sparse_compressed_layouts() diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-test-requiring-online-access.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-test-requiring-online-access.patch new file mode 100644 index 00000000000..f65b96bac38 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-test-requiring-online-access.patch @@ -0,0 +1,26 @@ +This downloads a Perl file from a Github repo which may fail in: + + File "test/test_cuda.py", line 4632, in test_memory_snapshot + torch.cuda.memory._save_segment_usage(f.name) + File "/torch/cuda/memory.py", line 610, in _save_segment_usage + f.write(_segments(snapshot)) + File "/torch/cuda/_memory_viz.py", line 60, in segments + return format_flamegraph(f.getvalue()) + File "/torch/cuda/_memory_viz.py", line 21, in format_flamegraph + urllib.request.urlretrieve( + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/test_cuda.py b/test/test_cuda.py +index e81c9365139..b95206bcff7 100644 +--- a/test/test_cuda.py ++++ b/test/test_cuda.py +@@ -3372,7 +3372,7 @@ class TestCudaMallocAsync(TestCase): + self.assertEqual(x.untyped_storage().data_ptr(), b['address']) + self.assertTrue(found_it) + +- if not IS_WINDOWS: ++ if False: + with tempfile.NamedTemporaryFile() as f: + torch.cuda.memory._save_segment_usage(f.name) + with open(f.name) as f2: diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-diff-test-on-ppc.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-diff-test-on-ppc.patch new file mode 100644 index 00000000000..916d1b80188 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-diff-test-on-ppc.patch @@ -0,0 +1,26 @@ +The workaround for over/underflow isn't implemented for PPC yet. +So skip the test. +See https://github.com/pytorch/pytorch/issues/109870 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/test_binary_ufuncs.py b/test/test_binary_ufuncs.py +index c4bb5a1ba0b..83ad37f332b 100644 +--- a/test/test_binary_ufuncs.py ++++ b/test/test_binary_ufuncs.py +@@ -26,6 +26,7 @@ from torch.testing._internal.common_utils import ( + TEST_SCIPY, + set_default_dtype, + skipIfTorchDynamo, ++ IS_PPC, + ) + from torch.testing._internal.common_device_type import ( + expectedFailureMeta, +@@ -1082,6 +1083,7 @@ class TestBinaryUfuncs(TestCase): + ) + + @dtypes(*complex_types()) ++ @skipIf(IS_PPC, "Vectorized div fails on PPC: #109870") + def test_complex_div_underflow_overflow(self, device, dtype): + # test to make sure the complex division does not produce underflow or overflow + # in the intermediate of its calculations diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-dynamo-test_predispatch.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-dynamo-test_predispatch.patch new file mode 100644 index 00000000000..6677746244c --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-dynamo-test_predispatch.patch @@ -0,0 +1,23 @@ +test_predispatch_with_for_out_dtype_nested_dynamic_shapes fails when run after test_predispatch_with_for_out_dtype_nested +with: torch._subclasses.fake_tensor.DataDependentOutputException: aten.allclose.default +This is a known issue so just disable it, see +https://github.com/pytorch/pytorch/issues/107980 +https://github.com/pytorch/pytorch/issues/112678 +Might be fixed after https://github.com/pytorch/pytorch/pull/108715 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/dynamo/test_export.py b/test/dynamo/test_export.py +index 1b6deb7e524..ca3792e55c9 100644 +--- a/test/dynamo/test_export.py ++++ b/test/dynamo/test_export.py +@@ -3743,6 +3743,9 @@ def forward(self, l_x_, ones_3_true_branch, ones_1_true_branch, ones_true_branch + self.assertTrue(torch.allclose(m(x), gm(x))) + + def test_predispatch_with_for_out_dtype_nested(self): ++ if self.__class__.__name__.startswith('DynamicShapes'): ++ self.skipTest("Doesn't work running twice, see issue #112678") ++ + class M(torch.nn.Module): + def __init__(self, weight): + super().__init__() diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch new file mode 100644 index 00000000000..3216012d35c --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch @@ -0,0 +1,35 @@ +test_jvp_linalg_det_singular_cpu_float32 in functorch/test_ops.py fails consistently with the error +> Mismatched elements: 1 / 4 (25.0%) +> Greatest absolute difference: 0.44168850779533386 at index (0, 1) (up to 1e-05 allowed) +> Greatest relative difference: inf at index (0, 1) (up to 1.3e-06 allowed) + +This is an already known issue on x86 MacOS, see https://github.com/pytorch/pytorch/issues/110980 +So just skip this test. + +Similar for test_vmapjvpall_linalg_det_singular_cpu_float32, +see https://github.com/pytorch/pytorch/issues/111583 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/functorch/test_ops.py b/test/functorch/test_ops.py +index 923d75d53d9..378498d4dc5 100644 +--- a/test/functorch/test_ops.py ++++ b/test/functorch/test_ops.py +@@ -498,7 +498,7 @@ class TestOperators(TestCase): + xfail('as_strided', 'partial_views'), + xfail('as_strided_scatter'), + decorate('linalg.det', 'singular', +- decorator=expectedFailureIf(IS_MACOS and IS_X86)), ++ decorator=unittest.skipIf(IS_X86, 'Known failure: #110980')), + })) + @opsToleranceOverride('TestOperators', 'test_jvp', ( + tol1('nn.functional.conv_transpose3d', +@@ -1053,7 +1053,7 @@ class TestOperators(TestCase): + {torch.float32: tol(atol=2e-04, rtol=9e-3)}), + )) + @skipOps('TestOperators', 'test_vmapjvpall', vmapjvpall_fail.union({ +- decorate('linalg.det', 'singular', decorator=expectedFailureIf(IS_MACOS and IS_X86)), ++ decorate('linalg.det', 'singular', decorator=unittest.skipIf(IS_X86, 'Known failure: #110980')), + })) + # This is technically a superset of test_vmapjvp. We should either delete test_vmapjvp + # or figure out if we can split vmapjvpall. It's useful to keep test_vmapjvp intact diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch new file mode 100644 index 00000000000..427eb9ca050 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch @@ -0,0 +1,26 @@ +The test assumes PyTorch is compiled with MKL, so skip it if it is not. +See https://github.com/pytorch/pytorch/pull/113949 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/inductor/test_mkldnn_pattern_matcher.py b/test/inductor/test_mkldnn_pattern_matcher.py +index 0b5e2821aed..62e9774d864 100644 +--- a/test/inductor/test_mkldnn_pattern_matcher.py ++++ b/test/inductor/test_mkldnn_pattern_matcher.py +@@ -20,7 +20,7 @@ from torch.testing._internal.common_quantization import ( + skipIfNoDynamoSupport, + skipIfNoONEDNN, + ) +-from torch.testing._internal.common_utils import IS_LINUX, skipIfRocm ++from torch.testing._internal.common_utils import IS_LINUX, TEST_MKL, skipIfRocm + from torch.testing._internal.inductor_utils import HAS_CPU + + # The dict value is match_nodes(computation_op+unary_op) +@@ -236,6 +236,7 @@ class TestPatternMatcher(TestPatternMatcherBase): + mod, (v,), matcher_count, matcher_nodes, check_autocast=True + ) + ++ @unittest.skipIf(not TEST_MKL, "Test requires MKL") + def test_linear_fp32(self): + class M(torch.nn.Module): + def __init__(self, bias): diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_wrap_bad.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_wrap_bad.patch new file mode 100644 index 00000000000..359b3e420ad --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_wrap_bad.patch @@ -0,0 +1,69 @@ +test_wrap_bad in distributed/elastic/multiprocessing/api_test fails fails when executed with pytest, +e.g. when running via run_test.py. +Skip it. +See https://github.com/pytorch/pytorch/issues/115069 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/distributed/elastic/multiprocessing/api_test.py b/test/distributed/elastic/multiprocessing/api_test.py +index 6240fbe41d6..8fe6e3bc6d7 100644 +--- a/test/distributed/elastic/multiprocessing/api_test.py ++++ b/test/distributed/elastic/multiprocessing/api_test.py +@@ -42,6 +42,7 @@ from torch.testing._internal.common_utils import ( + TestCase, + run_tests, + skip_but_pass_in_sandcastle_if, ++ skip_if_pytest, + ) + + +@@ -661,6 +662,7 @@ if not (TEST_WITH_DEV_DBG_ASAN or IS_WINDOWS or IS_MACOS): + if not (TEST_WITH_DEV_DBG_ASAN or IS_WINDOWS or IS_MACOS or IS_CI): + + class StartProcessesNotCITest(StartProcessesTest): ++ @skip_if_pytest + def test_wrap_bad(self): + none = "" + stdout_log = os.path.join(self.test_dir, "stdout.log") +diff --git a/torch/_dynamo/testing.py b/torch/_dynamo/testing.py +index 79c869cc481..20605019005 100644 +--- a/torch/_dynamo/testing.py ++++ b/torch/_dynamo/testing.py +@@ -36,16 +36,6 @@ def clone_me(x): + return x.detach().clone().requires_grad_(x.requires_grad) + + +-def skip_if_pytest(fn): +- @functools.wraps(fn) +- def wrapped(*args, **kwargs): +- if "PYTEST_CURRENT_TEST" in os.environ: +- raise unittest.SkipTest("does not work under pytest") +- return fn(*args, **kwargs) +- +- return wrapped +- +- + def named_parameters_for_optimized_module(mod): + assert isinstance(mod, eval_frame.OptimizedModule) + return mod._orig_mod.named_parameters +diff --git a/torch/testing/_internal/common_utils.py b/torch/testing/_internal/common_utils.py +index 1e18ca2afec..db2766923ce 100644 +--- a/torch/testing/_internal/common_utils.py ++++ b/torch/testing/_internal/common_utils.py +@@ -1541,6 +1541,16 @@ def skipIfTBB(message="This test makes TBB sad"): + return dec_fn + + ++def skip_if_pytest(fn): ++ @wraps(fn) ++ def wrapped(*args, **kwargs): ++ if "PYTEST_CURRENT_TEST" in os.environ: ++ raise unittest.SkipTest("does not work under pytest") ++ return fn(*args, **kwargs) ++ ++ return wrapped ++ ++ + def slowTest(fn): + @wraps(fn) + def wrapper(*args, **kwargs): diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.2-foss-2022a.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.2-foss-2022a.eb new file mode 100644 index 00000000000..f38a49fcfee --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.2-foss-2022a.eb @@ -0,0 +1,157 @@ +name = 'PyTorch' +version = '2.1.2' + +homepage = 'https://pytorch.org/' +description = """Tensors and Dynamic neural networks in Python with strong GPU acceleration. +PyTorch is a deep learning framework that puts Python first.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = [GITHUB_RELEASE] +sources = ['%(namelower)s-v%(version)s.tar.gz'] +patches = [ + 'PyTorch-1.7.0_disable-dev-shm-test.patch', + 'PyTorch-1.11.1_skip-test_init_from_local_shards.patch', + 'PyTorch-1.12.1_add-hypothesis-suppression.patch', + 'PyTorch-1.12.1_fix-test_cpp_extensions_jit.patch', + 'PyTorch-1.12.1_fix-TestTorch.test_to.patch', + 'PyTorch-1.12.1_skip-test_round_robin.patch', + 'PyTorch-1.13.1_fix-gcc-12-warning-in-fbgemm.patch', + 'PyTorch-1.13.1_fix-protobuf-dependency.patch', + 'PyTorch-1.13.1_fix-warning-in-test-cpp-api.patch', + 'PyTorch-1.13.1_skip-failing-singular-grad-test.patch', + 'PyTorch-1.13.1_skip-tests-without-fbgemm.patch', + 'PyTorch-2.0.1_avoid-test_quantization-failures.patch', + 'PyTorch-2.0.1_fix-skip-decorators.patch', + 'PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch', + 'PyTorch-2.0.1_fix-vsx-loadu.patch', + 'PyTorch-2.0.1_no-cuda-stubs-rpath.patch', + 'PyTorch-2.0.1_skip-failing-gradtest.patch', + 'PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch', + 'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch', + 'PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch', + 'PyTorch-2.1.0_fix-validationError-output-test.patch', + 'PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch', + 'PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch', + 'PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch', + 'PyTorch-2.1.0_remove-test-requiring-online-access.patch', + 'PyTorch-2.1.0_skip-diff-test-on-ppc.patch', + 'PyTorch-2.1.0_skip-dynamo-test_predispatch.patch', + 'PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch', + 'PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch', + 'PyTorch-2.1.0_skip-test_wrap_bad.patch', +] +checksums = [ + {'pytorch-v2.1.2.tar.gz': '85effbcce037bffa290aea775c9a4bad5f769cb229583450c40055501ee1acd7'}, + {'PyTorch-1.7.0_disable-dev-shm-test.patch': '622cb1eaeadc06e13128a862d9946bcc1f1edd3d02b259c56a9aecc4d5406b8a'}, + {'PyTorch-1.11.1_skip-test_init_from_local_shards.patch': + '4aeb1b0bc863d4801b0095cbce69f8794066748f0df27c6aaaf729c5ecba04b7'}, + {'PyTorch-1.12.1_add-hypothesis-suppression.patch': + 'e71ffb94ebe69f580fa70e0de84017058325fdff944866d6bd03463626edc32c'}, + {'PyTorch-1.12.1_fix-test_cpp_extensions_jit.patch': + '1efc9850c431d702e9117d4766277d3f88c5c8b3870997c9974971bce7f2ab83'}, + {'PyTorch-1.12.1_fix-TestTorch.test_to.patch': '75f27987c3f25c501e719bd2b1c70a029ae0ee28514a97fe447516aee02b1535'}, + {'PyTorch-1.12.1_skip-test_round_robin.patch': '63d4849b78605aa088fdff695637d9473ea60dee603a3ff7f788690d70c55349'}, + {'PyTorch-1.13.1_fix-gcc-12-warning-in-fbgemm.patch': + '5c7be91a6096083a0b1315efe0001537499c600f1f569953c6a2c7f4cc1d0910'}, + {'PyTorch-1.13.1_fix-protobuf-dependency.patch': + '8bd755a0cab7233a243bc65ca57c9630dfccdc9bf8c9792f0de4e07a644fcb00'}, + {'PyTorch-1.13.1_fix-warning-in-test-cpp-api.patch': + 'bdde0f2105215c95a54de64ec4b1a4520528510663174fef6d5b900eb1db3937'}, + {'PyTorch-1.13.1_skip-failing-singular-grad-test.patch': + '72688a57b2bb617665ad1a1d5e362c5111ae912c10936bb38a089c0204729f48'}, + {'PyTorch-1.13.1_skip-tests-without-fbgemm.patch': + '481e595f673baf8ae58b41697a6792b83048b0264aa79b422f48cd8c22948bb7'}, + {'PyTorch-2.0.1_avoid-test_quantization-failures.patch': + '02e3f47e4ed1d7d6077e26f1ae50073dc2b20426269930b505f4aefe5d2f33cd'}, + {'PyTorch-2.0.1_fix-skip-decorators.patch': '2039012cef45446065e1a2097839fe20bb29fe3c1dcc926c3695ebf29832e920'}, + {'PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch': + '1b37194f55ae678f3657b8728dfb896c18ffe8babe90987ce468c4fa9274f357'}, + {'PyTorch-2.0.1_fix-vsx-loadu.patch': 'a0ffa61da2d47c6acd09aaf6d4791e527d8919a6f4f1aa7ed38454cdcadb1f72'}, + {'PyTorch-2.0.1_no-cuda-stubs-rpath.patch': '8902e58a762240f24cdbf0182e99ccdfc2a93492869352fcb4ca0ec7e407f83a'}, + {'PyTorch-2.0.1_skip-failing-gradtest.patch': '8030bdec6ba49b057ab232d19a7f1a5e542e47e2ec340653a246ec9ed59f8bc1'}, + {'PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch': + '7047862abc1abaff62954da59700f36d4f39fcf83167a638183b1b7f8fec78ae'}, + {'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch': + '166c134573a95230e39b9ea09ece3ad8072f39d370c9a88fb2a1e24f6aaac2b5'}, + {'PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch': + 'b15b1291a3c37bf6a4982cfbb3483f693acb46a67bc0912b383fd98baf540ccf'}, + {'PyTorch-2.1.0_fix-validationError-output-test.patch': + '7eba0942afb121ed92fac30d1529447d892a89eb3d53c565f8e9d480e95f692b'}, + {'PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch': + '3793b4b878be1abe7791efcbd534774b87862cfe7dc4774ca8729b6cabb39e7e'}, + {'PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch': + 'aef38adf1210d0c5455e91d7c7a9d9e5caad3ae568301e0ba9fc204309438e7b'}, + {'PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch': + '0ac36411e76506b3354c85a8a1260987f66af947ee52ffc64230aee1fa02ea8b'}, + {'PyTorch-2.1.0_remove-test-requiring-online-access.patch': + '35184b8c5a1b10f79e511cc25db3b8a5585a5d58b5d1aa25dd3d250200b14fd7'}, + {'PyTorch-2.1.0_skip-diff-test-on-ppc.patch': '394157dbe565ffcbc1821cd63d05930957412156cc01e949ef3d3524176a1dda'}, + {'PyTorch-2.1.0_skip-dynamo-test_predispatch.patch': + '6298daf9ddaa8542850eee9ea005f28594ab65b1f87af43d8aeca1579a8c4354'}, + {'PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch': + '5229ca88a71db7667a90ddc0b809b2c817698bd6e9c5aaabd73d3173cf9b99fe'}, + {'PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch': + '5dcc79883b6e3ec0a281a8e110db5e0a5880de843bb05653589891f16473ead5'}, + {'PyTorch-2.1.0_skip-test_wrap_bad.patch': 'b8583125ee94e553b6f77c4ab4bfa812b89416175dc7e9b7390919f3b485cb63'}, +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +builddependencies = [ + ('CMake', '3.23.1'), + ('hypothesis', '6.46.7'), + # For tests + ('pytest-flakefinder', '1.1.0'), + ('pytest-rerunfailures', '11.1'), + ('pytest-shard', '0.1.2'), + ('pytest-xdist', '2.5.0'), +] + +dependencies = [ + ('Ninja', '1.10.2'), # Required for JIT compilation of C++ extensions + ('Python', '3.10.4'), + ('protobuf', '3.19.4'), + ('protobuf-python', '3.19.4'), + ('pybind11', '2.9.2'), + ('SciPy-bundle', '2022.05'), + ('typing-extensions', '4.3.0'), + ('PyYAML', '6.0'), + ('MPFR', '4.1.0'), + ('GMP', '6.2.1'), + ('numactl', '2.0.14'), + ('FFmpeg', '4.4.2'), + ('Pillow', '9.1.1'), + ('expecttest', '0.1.3'), + ('networkx', '2.8.4'), + ('sympy', '1.10.1'), + ('Z3', '4.10.2', '-Python-%(pyver)s'), +] + +excluded_tests = { + '': [ + # This test seems to take too long on NVIDIA Ampere at least. + 'distributed/test_distributed_spawn', + # Broken on CUDA 11.6/11.7: https://github.com/pytorch/pytorch/issues/75375 + 'distributions/test_constraints', + # no xdoctest + 'doctests', + # failing on broadwell + # See https://github.com/easybuilders/easybuild-easyconfigs/issues/17712 + 'test_native_mha', + # intermittent failures on various systems + # See https://github.com/easybuilders/easybuild-easyconfigs/issues/17712 + 'distributed/rpc/test_tensorpipe_agent', + ] +} + +runtest = 'cd test && PYTHONUNBUFFERED=1 %(python)s run_test.py --continue-through-error --verbose %(excluded_tests)s' + +# Especially test_quantization has a few corner cases that are triggered by the random input values, +# those cannot be easily avoided, see https://github.com/pytorch/pytorch/issues/107030 +# So allow a low number of tests to fail as the tests "usually" succeed +max_failed_tests = 2 + +tests = ['PyTorch-check-cpp-extension.py'] + +moduleclass = 'ai' From d8ccb5e5b6647ca5d2714098f4fdbeafbf04902a Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Tue, 19 Dec 2023 13:19:00 +0100 Subject: [PATCH 233/356] adding easyconfigs: PyTorch-2.1.2-foss-2022b.eb, pytest-flakefinder-1.1.0-GCCcore-12.2.0.eb, Z3-4.12.2-GCCcore-12.2.0-Python-3.10.8.eb and patches: PyTorch-2.0.1_avoid-test_quantization-failures.patch, PyTorch-2.0.1_fix-skip-decorators.patch, PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch, PyTorch-2.0.1_fix-vsx-loadu.patch, PyTorch-2.0.1_no-cuda-stubs-rpath.patch, PyTorch-2.0.1_skip-failing-gradtest.patch, PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch, PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch, PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch, PyTorch-2.1.0_fix-validationError-output-test.patch, PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch, PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch, PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch, PyTorch-2.1.0_remove-test-requiring-online-access.patch, PyTorch-2.1.0_skip-diff-test-on-ppc.patch, PyTorch-2.1.0_skip-dynamo-test_predispatch.patch, PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch, PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch, PyTorch-2.1.0_skip-test_wrap_bad.patch --- ...h-2.1.0_fix-bufferoverflow-in-oneDNN.patch | 30 +++ ....1.0_fix-validationError-output-test.patch | 66 +++++++ ...2.1.0_fix-vsx-vector-shift-functions.patch | 172 ++++++++++++++++++ ...-tolerance-functorch-test_vmapvjpvjp.patch | 28 +++ ..._remove-sparse-csr-nnz-overflow-test.patch | 26 +++ ..._remove-test-requiring-online-access.patch | 26 +++ .../PyTorch-2.1.0_skip-diff-test-on-ppc.patch | 26 +++ ...h-2.1.0_skip-dynamo-test_predispatch.patch | 23 +++ ....0_skip-test_jvp_linalg_det_singular.patch | 35 ++++ ....0_skip-test_linear_fp32-without-MKL.patch | 26 +++ .../PyTorch-2.1.0_skip-test_wrap_bad.patch | 69 +++++++ .../p/PyTorch/PyTorch-2.1.2-foss-2022b.eb | 157 ++++++++++++++++ ...pytest-flakefinder-1.1.0-GCCcore-12.2.0.eb | 21 +++ .../Z3-4.12.2-GCCcore-12.2.0-Python-3.10.8.eb | 53 ++++++ 14 files changed, 758 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-validationError-output-test.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-test-requiring-online-access.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-diff-test-on-ppc.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-dynamo-test_predispatch.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_wrap_bad.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.2-foss-2022b.eb create mode 100644 easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-12.2.0.eb create mode 100644 easybuild/easyconfigs/z/Z3/Z3-4.12.2-GCCcore-12.2.0-Python-3.10.8.eb diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch new file mode 100644 index 00000000000..4ad64a886b5 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch @@ -0,0 +1,30 @@ +Fix a buffer overflow in oneDNN resulting in memory corruption. +Visible in e.g test_scaled_dot_product_fused_attention_vs_math_cpu in test_transformers.py + +See https://github.com/pytorch/pytorch/issues/115253 +Fixed in oneDNN 3.3 with https://github.com/oneapi-src/oneDNN/commit/6518e55b025b75ea83c677c601cfb8b1f7df0a68 +Use this commit to patch the submodule. + +Author: Alexander Grund (TU Dresden) + +diff -ur pytorch/third_party/ideep/mkl-dnn/src/cpu/matmul/gemm_based_common.hpp pytorch-orig/third_party/ideep/mkl-dnn/src/cpu/matmul/gemm_based_common.hpp +--- pytorch/third_party/ideep/mkl-dnn/src/cpu/matmul/gemm_based_common.hpp 2023-12-08 11:02:21.817449743 +0100 ++++ pytorch-orig/third_party/ideep/mkl-dnn/src/cpu/matmul/gemm_based_common.hpp 2023-12-08 11:02:17.796537323 +0100 +@@ -139,9 +139,15 @@ + const int nthr) { + const int num_scratchpad_blocks + = use_single_gemm_call_optimization ? 1 : nthr; +- return get_scratchpad_block_elements( +- batch, M, N, use_single_gemm_call_optimization, nthr) ++ size_t buf_sz = get_scratchpad_block_elements(batch, M, N, ++ use_single_gemm_call_optimization, nthr) + * num_scratchpad_blocks; ++ ++ // Buffer needs to be large enough to accommodate one thread buffer ++ // size requirement in case only one thread is used during execution. ++ size_t buf_sz_1thr = get_scratchpad_block_elements( ++ batch, M, N, use_single_gemm_call_optimization, 1); ++ return nstl::max(buf_sz_1thr, buf_sz); + } + + inline void book_acc_scratchpad(matmul_pd_t &pd, const params_t ¶ms, diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-validationError-output-test.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-validationError-output-test.patch new file mode 100644 index 00000000000..2fd2ac954e7 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-validationError-output-test.patch @@ -0,0 +1,66 @@ +test_trigger_on_error in dynamo/test_exc.py fails as the output lines are ordered differently. +Sort those to make them consistent as is done in https://github.com/pytorch/pytorch/commit/dfdc0b63c9a5befd363d304eb5e08ed1e592d7ca +Then update the expected output. + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/dynamo/test_exc.py b/test/dynamo/test_exc.py +index c8390880aa9..a69c229a8ae 100644 +--- a/test/dynamo/test_exc.py ++++ b/test/dynamo/test_exc.py +@@ -211,28 +211,28 @@ ReluCompileError:""", + translation validation failed. + + Model: ++ ==> L['x'].size()[0]: 4 + ==> L['x'].storage_offset(): 0 +- ==> s0: 4 + ==> L['x'].stride()[0]: 1 +- ==> L['x'].size()[0]: 4 ++ ==> s0: 4 + + Assertions: ++ ==> (== 0 L['x'].storage_offset()) ++ ==> (== 1 L['x'].stride()[0]) + ==> (== L['x'].size()[0] s0) + ==> (> s0 1) + ==> (Not (And (< L['x'].size()[0] 4) (>= L['x'].size()[0] 0))) + ==> (True) +- ==> (== 0 L['x'].storage_offset()) +- ==> (== 1 L['x'].stride()[0]) + ==> (True) + + Target Expressions: +- ==> (>= 9223372036854775806 s0) +- ==> (== 4 L['x'].size()[0]) ++ ==> (<= 2 s0) + ==> (== 0 L['x'].storage_offset()) +- ==> (> s0 0) + ==> (== 1 L['x'].stride()[0]) +- ==> (<= 2 s0) ++ ==> (== 4 L['x'].size()[0]) + ==> (== 4 s0) ++ ==> (> s0 0) ++ ==> (>= 9223372036854775806 s0) + + Failed Source Expressions: + ==> (!= 4 L['x'].size()[0])""", +diff --git a/torch/fx/experimental/validator.py b/torch/fx/experimental/validator.py +index 313e299151c..3b5e1e81aa3 100644 +--- a/torch/fx/experimental/validator.py ++++ b/torch/fx/experimental/validator.py +@@ -559,10 +559,10 @@ class ValidationException(TorchDynamoException): + def joinlines(xs) -> str: + return "\n".join(f" ==> {x}" for x in xs) + +- model_str = joinlines(map(symbolstr, model)) +- assertions_str = joinlines(map(z3str, assertions)) +- target_exprs_str = joinlines(map(z3str, target_exprs)) +- failed_source_exprs_str = joinlines(map(z3str, failed_source_exprs)) ++ model_str = joinlines(sorted(map(symbolstr, model))) ++ assertions_str = joinlines(sorted(map(z3str, assertions))) ++ target_exprs_str = joinlines(sorted(map(z3str, target_exprs))) ++ failed_source_exprs_str = joinlines(sorted(map(z3str, failed_source_exprs))) + + super().__init__( + "translation validation failed.\n\n" diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch new file mode 100644 index 00000000000..cf0fd419778 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch @@ -0,0 +1,172 @@ +The VSX vector shift operators don't handle out-of-bounds values correctly. +See https://github.com/pytorch/pytorch/issues/109777 +Taken from https://github.com/pytorch/pytorch/pull/109886 + +Author: Alexander Grund (TU Dresden) + +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h +index a71f50fc7aa..84c84286740 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h +@@ -334,20 +334,6 @@ class Vectorized { + DEFINE_MEMBER_OP(operator^, int16_t, vec_xor) + }; + +-template <> +-Vectorized inline operator<<(const Vectorized& a, const Vectorized& b) { +- vuint16 shift_vec0 = reinterpret_cast(b.vec0()); +- vuint16 shift_vec1 = reinterpret_cast(b.vec1()); +- return Vectorized{vec_sl(a.vec0(), shift_vec0), vec_sl(a.vec1(), shift_vec1)}; +-} +- +-template <> +-Vectorized inline operator>>(const Vectorized& a, const Vectorized& b) { +- vuint16 shift_vec0 = reinterpret_cast(b.vec0()); +- vuint16 shift_vec1 = reinterpret_cast(b.vec1()) ; +- return Vectorized{vec_sr(a.vec0(), shift_vec0), vec_sr(a.vec1(), shift_vec1)}; +-} +- + template <> + Vectorized inline maximum( + const Vectorized& a, +@@ -362,6 +348,7 @@ Vectorized inline minimum( + return a.minimum(b); + } + ++DEFINE_SHIFT_FUNCS(int16_t) + + } // namespace + } // namespace vec +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h +index 1b6a82df39b..e1e86d3b53a 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h +@@ -265,20 +265,6 @@ class Vectorized { + DEFINE_MEMBER_OP(operator^, int32_t, vec_xor) + }; + +-template <> +-Vectorized inline operator<<(const Vectorized& a, const Vectorized& b) { +- vuint32 shift_vec0 = reinterpret_cast(b.vec0()); +- vuint32 shift_vec1 = reinterpret_cast(b.vec1()) ; +- return Vectorized{vec_sl(a.vec0(), shift_vec0), vec_sl(a.vec1(), shift_vec1)}; +-} +- +-template <> +-Vectorized inline operator>>(const Vectorized& a, const Vectorized& b) { +- vuint32 shift_vec0 = reinterpret_cast(b.vec0()); +- vuint32 shift_vec1 = reinterpret_cast(b.vec1()) ; +- return Vectorized{vec_sr(a.vec0(), shift_vec0), vec_sr(a.vec1(), shift_vec1)}; +-} +- + template <> + Vectorized inline maximum( + const Vectorized& a, +@@ -293,6 +279,8 @@ Vectorized inline minimum( + return a.minimum(b); + } + ++DEFINE_SHIFT_FUNCS(int32_t) ++ + } // namespace + } // namespace vec + } // namespace at +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h +index a7a376ee16e..70613d90443 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h +@@ -217,20 +217,6 @@ class Vectorized { + DEFINE_MEMBER_OP(operator^, int64_t, vec_xor) + }; + +-template <> +-Vectorized inline operator<<(const Vectorized& a, const Vectorized& b) { +- vuint64 shift_vec0 = reinterpret_cast(b.vec0()); +- vuint64 shift_vec1 = reinterpret_cast(b.vec1()) ; +- return Vectorized{vec_sl(a.vec0(), shift_vec0), vec_sl(a.vec1(), shift_vec1)}; +-} +- +-template <> +-Vectorized inline operator>>(const Vectorized& a, const Vectorized& b) { +- vuint64 shift_vec0 = reinterpret_cast(b.vec0()); +- vuint64 shift_vec1 = reinterpret_cast(b.vec1()) ; +- return Vectorized{vec_sr(a.vec0(), shift_vec0), vec_sr(a.vec1(), shift_vec1)}; +-} +- + template <> + Vectorized inline maximum( + const Vectorized& a, +@@ -245,6 +231,8 @@ Vectorized inline minimum( + return a.minimum(b); + } + ++DEFINE_SHIFT_FUNCS(int64_t) ++ + } // namespace + } // namespace vec + } // namespace at +diff --git a/aten/src/ATen/cpu/vec/vec256/vsx/vsx_helpers.h b/aten/src/ATen/cpu/vec/vec256/vsx/vsx_helpers.h +index dab38458184..52032cdd817 100644 +--- a/aten/src/ATen/cpu/vec/vec256/vsx/vsx_helpers.h ++++ b/aten/src/ATen/cpu/vec/vec256/vsx/vsx_helpers.h +@@ -2,6 +2,7 @@ + #include + #include + #include ++#include + + using vbool8 = __attribute__((altivec(vector__))) __attribute__((altivec(bool__))) char; + using vbool16 = __attribute__((altivec(vector__))) __attribute__((altivec(bool__))) short; +@@ -18,6 +19,11 @@ using vuint64 = __attribute__((altivec(vector__))) unsigned long long; + using vfloat32 = __attribute__((altivec(vector__))) float; + using vfloat64 = __attribute__((altivec(vector__))) double; + ++inline auto make_vuint(vint8 v){ return reinterpret_cast(v); } ++inline auto make_vuint(vint16 v){ return reinterpret_cast(v); } ++inline auto make_vuint(vint32 v){ return reinterpret_cast(v); } ++inline auto make_vuint(vint64 v){ return reinterpret_cast(v); } ++ + #if !defined(vec_float) + C10_ALWAYS_INLINE vfloat32 vec_float(const vint32& vec_in) { + vfloat32 vec_out; +@@ -448,6 +454,40 @@ const vfloat64 vd_imag_half = vfloat64{0.0, 0.5}; + const vfloat64 vd_sqrt2_2 = vfloat64{0.70710678118654757, 0.70710678118654757}; + const vfloat64 vd_pi_2 = vfloat64{M_PI / 2.0, 0.0}; + ++template ++Vectorized VsxShiftRightArith(const Vectorized& a, const Vectorized& b) { ++ const Vectorized max_shift(sizeof(T) * CHAR_BIT - std::is_signed_v); ++ const auto mask = (b < Vectorized(0)) | (b >= max_shift); ++ const auto shift = Vectorized::blendv(b, max_shift, mask); ++ return Vectorized{ ++ vec_sra(a.vec0(), make_vuint(shift.vec0())), ++ vec_sra(a.vec1(), make_vuint(shift.vec1()))}; ++} ++ ++template ++Vectorized VsxShiftLeftArith(const Vectorized& a, const Vectorized& b) { ++ const Vectorized max_shift(sizeof(T) * CHAR_BIT); ++ const auto mask = (b < Vectorized(0)) | (b >= max_shift); ++ Vectorized ret( ++ vec_sl(a.vec0(), make_vuint(b.vec0())), ++ vec_sl(a.vec1(), make_vuint(b.vec1()))); ++ return Vectorized::blendv(ret, Vectorized(0), mask); ++} ++ ++#define DEFINE_SHIFT_FUNCS(operand_type) \ ++ template <> \ ++ Vectorized C10_ALWAYS_INLINE operator>>( \ ++ const Vectorized& a, \ ++ const Vectorized& b) { \ ++ return VsxShiftRightArith(a, b); \ ++ } \ ++ template <> \ ++ Vectorized C10_ALWAYS_INLINE operator<<( \ ++ const Vectorized& a, \ ++ const Vectorized& b) { \ ++ return VsxShiftLeftArith(a, b); \ ++ } \ ++ + } // namespace + } // namespace vec + } // namespace at diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch new file mode 100644 index 00000000000..00096a92073 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch @@ -0,0 +1,28 @@ +Increase tolerance of test_vmapvjpvjp_linalg_tensorsolve_cpu_float32 which fails with the same diff on multiple machines. + +_________________________________________ TestOperatorsCPU.test_vmapvjpvjp_linalg_tensorsolve_cpu_float32 _________________________________________ +AssertionError: Tensor-likes are not close! + +Mismatched elements: 6 / 288 (2.1%) +Greatest absolute difference: 0.0005550384521484375 at index (0, 2, 1, 0, 2) (up to 0.0001 allowed) +Greatest relative difference: 0.0002498962276149541 at index (0, 1, 0, 0, 2) (up to 0.0001 allowed) + +The failure occurred for item [2] + +See https://github.com/pytorch/pytorch/issues/114868 + +@Author: Alexander Grund (TU Dresden) + +diff --git a/test/functorch/test_ops.py b/test/functorch/test_ops.py +index 923d75d53d9..1ae32bffba6 100644 +--- a/test/functorch/test_ops.py ++++ b/test/functorch/test_ops.py +@@ -825,6 +825,8 @@ class TestOperators(TestCase): + @opsToleranceOverride('TestOperators', 'test_vmapvjpvjp', ( + tol1('linalg.svd', + {torch.float32: tol(atol=1e-03, rtol=5e-04)}), ++ tol1('linalg.tensorsolve', ++ {torch.float32: tol(atol=1e-03, rtol=5e-04)}), + tol1('linalg.lu_factor', + {torch.float32: tol(atol=2e-03, rtol=2e-02)}), + tol1('svd', diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch new file mode 100644 index 00000000000..b2881c72510 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch @@ -0,0 +1,26 @@ +The test causes an overflow before it gets to the point it wants to test. +Simply remove that part. +See https://github.com/pytorch/pytorch/pull/114940 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/test_sparse_csr.py b/test/test_sparse_csr.py +index 5d344953526..f0bf8535214 100644 +--- a/test/test_sparse_csr.py ++++ b/test/test_sparse_csr.py +@@ -864,15 +864,6 @@ class TestSparseCompressed(TestCase): + torch.tensor([0], dtype=torch.int64), + torch.tensor([1]), (1, cols)) + +- nnz = 2 ** 31 +- with self.assertRaisesRegex(RuntimeError, '32-bit integer overflow in nnz'): +- torch.sparse_csr_tensor(torch.tensor([0, nnz // 2, nnz], dtype=torch.int32), +- torch.arange(nnz // 2, dtype=torch.int32).repeat(2), +- torch.ones(nnz, dtype=torch.int8), (2, nnz // 2)) +- torch.sparse_csr_tensor(torch.tensor([0, nnz // 2, nnz], dtype=torch.int64), +- torch.arange(nnz // 2, dtype=torch.int64).repeat(2), +- torch.ones(nnz, dtype=torch.int8), (2, nnz // 2)) +- + @skipMeta + @onlyCPU + @all_sparse_compressed_layouts() diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-test-requiring-online-access.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-test-requiring-online-access.patch new file mode 100644 index 00000000000..f65b96bac38 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_remove-test-requiring-online-access.patch @@ -0,0 +1,26 @@ +This downloads a Perl file from a Github repo which may fail in: + + File "test/test_cuda.py", line 4632, in test_memory_snapshot + torch.cuda.memory._save_segment_usage(f.name) + File "/torch/cuda/memory.py", line 610, in _save_segment_usage + f.write(_segments(snapshot)) + File "/torch/cuda/_memory_viz.py", line 60, in segments + return format_flamegraph(f.getvalue()) + File "/torch/cuda/_memory_viz.py", line 21, in format_flamegraph + urllib.request.urlretrieve( + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/test_cuda.py b/test/test_cuda.py +index e81c9365139..b95206bcff7 100644 +--- a/test/test_cuda.py ++++ b/test/test_cuda.py +@@ -3372,7 +3372,7 @@ class TestCudaMallocAsync(TestCase): + self.assertEqual(x.untyped_storage().data_ptr(), b['address']) + self.assertTrue(found_it) + +- if not IS_WINDOWS: ++ if False: + with tempfile.NamedTemporaryFile() as f: + torch.cuda.memory._save_segment_usage(f.name) + with open(f.name) as f2: diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-diff-test-on-ppc.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-diff-test-on-ppc.patch new file mode 100644 index 00000000000..916d1b80188 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-diff-test-on-ppc.patch @@ -0,0 +1,26 @@ +The workaround for over/underflow isn't implemented for PPC yet. +So skip the test. +See https://github.com/pytorch/pytorch/issues/109870 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/test_binary_ufuncs.py b/test/test_binary_ufuncs.py +index c4bb5a1ba0b..83ad37f332b 100644 +--- a/test/test_binary_ufuncs.py ++++ b/test/test_binary_ufuncs.py +@@ -26,6 +26,7 @@ from torch.testing._internal.common_utils import ( + TEST_SCIPY, + set_default_dtype, + skipIfTorchDynamo, ++ IS_PPC, + ) + from torch.testing._internal.common_device_type import ( + expectedFailureMeta, +@@ -1082,6 +1083,7 @@ class TestBinaryUfuncs(TestCase): + ) + + @dtypes(*complex_types()) ++ @skipIf(IS_PPC, "Vectorized div fails on PPC: #109870") + def test_complex_div_underflow_overflow(self, device, dtype): + # test to make sure the complex division does not produce underflow or overflow + # in the intermediate of its calculations diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-dynamo-test_predispatch.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-dynamo-test_predispatch.patch new file mode 100644 index 00000000000..6677746244c --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-dynamo-test_predispatch.patch @@ -0,0 +1,23 @@ +test_predispatch_with_for_out_dtype_nested_dynamic_shapes fails when run after test_predispatch_with_for_out_dtype_nested +with: torch._subclasses.fake_tensor.DataDependentOutputException: aten.allclose.default +This is a known issue so just disable it, see +https://github.com/pytorch/pytorch/issues/107980 +https://github.com/pytorch/pytorch/issues/112678 +Might be fixed after https://github.com/pytorch/pytorch/pull/108715 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/dynamo/test_export.py b/test/dynamo/test_export.py +index 1b6deb7e524..ca3792e55c9 100644 +--- a/test/dynamo/test_export.py ++++ b/test/dynamo/test_export.py +@@ -3743,6 +3743,9 @@ def forward(self, l_x_, ones_3_true_branch, ones_1_true_branch, ones_true_branch + self.assertTrue(torch.allclose(m(x), gm(x))) + + def test_predispatch_with_for_out_dtype_nested(self): ++ if self.__class__.__name__.startswith('DynamicShapes'): ++ self.skipTest("Doesn't work running twice, see issue #112678") ++ + class M(torch.nn.Module): + def __init__(self, weight): + super().__init__() diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch new file mode 100644 index 00000000000..3216012d35c --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch @@ -0,0 +1,35 @@ +test_jvp_linalg_det_singular_cpu_float32 in functorch/test_ops.py fails consistently with the error +> Mismatched elements: 1 / 4 (25.0%) +> Greatest absolute difference: 0.44168850779533386 at index (0, 1) (up to 1e-05 allowed) +> Greatest relative difference: inf at index (0, 1) (up to 1.3e-06 allowed) + +This is an already known issue on x86 MacOS, see https://github.com/pytorch/pytorch/issues/110980 +So just skip this test. + +Similar for test_vmapjvpall_linalg_det_singular_cpu_float32, +see https://github.com/pytorch/pytorch/issues/111583 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/functorch/test_ops.py b/test/functorch/test_ops.py +index 923d75d53d9..378498d4dc5 100644 +--- a/test/functorch/test_ops.py ++++ b/test/functorch/test_ops.py +@@ -498,7 +498,7 @@ class TestOperators(TestCase): + xfail('as_strided', 'partial_views'), + xfail('as_strided_scatter'), + decorate('linalg.det', 'singular', +- decorator=expectedFailureIf(IS_MACOS and IS_X86)), ++ decorator=unittest.skipIf(IS_X86, 'Known failure: #110980')), + })) + @opsToleranceOverride('TestOperators', 'test_jvp', ( + tol1('nn.functional.conv_transpose3d', +@@ -1053,7 +1053,7 @@ class TestOperators(TestCase): + {torch.float32: tol(atol=2e-04, rtol=9e-3)}), + )) + @skipOps('TestOperators', 'test_vmapjvpall', vmapjvpall_fail.union({ +- decorate('linalg.det', 'singular', decorator=expectedFailureIf(IS_MACOS and IS_X86)), ++ decorate('linalg.det', 'singular', decorator=unittest.skipIf(IS_X86, 'Known failure: #110980')), + })) + # This is technically a superset of test_vmapjvp. We should either delete test_vmapjvp + # or figure out if we can split vmapjvpall. It's useful to keep test_vmapjvp intact diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch new file mode 100644 index 00000000000..427eb9ca050 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch @@ -0,0 +1,26 @@ +The test assumes PyTorch is compiled with MKL, so skip it if it is not. +See https://github.com/pytorch/pytorch/pull/113949 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/inductor/test_mkldnn_pattern_matcher.py b/test/inductor/test_mkldnn_pattern_matcher.py +index 0b5e2821aed..62e9774d864 100644 +--- a/test/inductor/test_mkldnn_pattern_matcher.py ++++ b/test/inductor/test_mkldnn_pattern_matcher.py +@@ -20,7 +20,7 @@ from torch.testing._internal.common_quantization import ( + skipIfNoDynamoSupport, + skipIfNoONEDNN, + ) +-from torch.testing._internal.common_utils import IS_LINUX, skipIfRocm ++from torch.testing._internal.common_utils import IS_LINUX, TEST_MKL, skipIfRocm + from torch.testing._internal.inductor_utils import HAS_CPU + + # The dict value is match_nodes(computation_op+unary_op) +@@ -236,6 +236,7 @@ class TestPatternMatcher(TestPatternMatcherBase): + mod, (v,), matcher_count, matcher_nodes, check_autocast=True + ) + ++ @unittest.skipIf(not TEST_MKL, "Test requires MKL") + def test_linear_fp32(self): + class M(torch.nn.Module): + def __init__(self, bias): diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_wrap_bad.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_wrap_bad.patch new file mode 100644 index 00000000000..359b3e420ad --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_skip-test_wrap_bad.patch @@ -0,0 +1,69 @@ +test_wrap_bad in distributed/elastic/multiprocessing/api_test fails fails when executed with pytest, +e.g. when running via run_test.py. +Skip it. +See https://github.com/pytorch/pytorch/issues/115069 + +Author: Alexander Grund (TU Dresden) + +diff --git a/test/distributed/elastic/multiprocessing/api_test.py b/test/distributed/elastic/multiprocessing/api_test.py +index 6240fbe41d6..8fe6e3bc6d7 100644 +--- a/test/distributed/elastic/multiprocessing/api_test.py ++++ b/test/distributed/elastic/multiprocessing/api_test.py +@@ -42,6 +42,7 @@ from torch.testing._internal.common_utils import ( + TestCase, + run_tests, + skip_but_pass_in_sandcastle_if, ++ skip_if_pytest, + ) + + +@@ -661,6 +662,7 @@ if not (TEST_WITH_DEV_DBG_ASAN or IS_WINDOWS or IS_MACOS): + if not (TEST_WITH_DEV_DBG_ASAN or IS_WINDOWS or IS_MACOS or IS_CI): + + class StartProcessesNotCITest(StartProcessesTest): ++ @skip_if_pytest + def test_wrap_bad(self): + none = "" + stdout_log = os.path.join(self.test_dir, "stdout.log") +diff --git a/torch/_dynamo/testing.py b/torch/_dynamo/testing.py +index 79c869cc481..20605019005 100644 +--- a/torch/_dynamo/testing.py ++++ b/torch/_dynamo/testing.py +@@ -36,16 +36,6 @@ def clone_me(x): + return x.detach().clone().requires_grad_(x.requires_grad) + + +-def skip_if_pytest(fn): +- @functools.wraps(fn) +- def wrapped(*args, **kwargs): +- if "PYTEST_CURRENT_TEST" in os.environ: +- raise unittest.SkipTest("does not work under pytest") +- return fn(*args, **kwargs) +- +- return wrapped +- +- + def named_parameters_for_optimized_module(mod): + assert isinstance(mod, eval_frame.OptimizedModule) + return mod._orig_mod.named_parameters +diff --git a/torch/testing/_internal/common_utils.py b/torch/testing/_internal/common_utils.py +index 1e18ca2afec..db2766923ce 100644 +--- a/torch/testing/_internal/common_utils.py ++++ b/torch/testing/_internal/common_utils.py +@@ -1541,6 +1541,16 @@ def skipIfTBB(message="This test makes TBB sad"): + return dec_fn + + ++def skip_if_pytest(fn): ++ @wraps(fn) ++ def wrapped(*args, **kwargs): ++ if "PYTEST_CURRENT_TEST" in os.environ: ++ raise unittest.SkipTest("does not work under pytest") ++ return fn(*args, **kwargs) ++ ++ return wrapped ++ ++ + def slowTest(fn): + @wraps(fn) + def wrapper(*args, **kwargs): diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.2-foss-2022b.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.2-foss-2022b.eb new file mode 100644 index 00000000000..85f9942c63e --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.2-foss-2022b.eb @@ -0,0 +1,157 @@ +name = 'PyTorch' +version = '2.1.2' + +homepage = 'https://pytorch.org/' +description = """Tensors and Dynamic neural networks in Python with strong GPU acceleration. +PyTorch is a deep learning framework that puts Python first.""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +source_urls = [GITHUB_RELEASE] +sources = ['%(namelower)s-v%(version)s.tar.gz'] +patches = [ + 'PyTorch-1.7.0_disable-dev-shm-test.patch', + 'PyTorch-1.11.1_skip-test_init_from_local_shards.patch', + 'PyTorch-1.12.1_add-hypothesis-suppression.patch', + 'PyTorch-1.12.1_fix-test_cpp_extensions_jit.patch', + 'PyTorch-1.12.1_fix-TestTorch.test_to.patch', + 'PyTorch-1.12.1_skip-test_round_robin.patch', + 'PyTorch-1.13.1_fix-gcc-12-warning-in-fbgemm.patch', + 'PyTorch-1.13.1_fix-protobuf-dependency.patch', + 'PyTorch-1.13.1_fix-warning-in-test-cpp-api.patch', + 'PyTorch-1.13.1_skip-failing-singular-grad-test.patch', + 'PyTorch-1.13.1_skip-tests-without-fbgemm.patch', + 'PyTorch-2.0.1_avoid-test_quantization-failures.patch', + 'PyTorch-2.0.1_fix-skip-decorators.patch', + 'PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch', + 'PyTorch-2.0.1_fix-vsx-loadu.patch', + 'PyTorch-2.0.1_no-cuda-stubs-rpath.patch', + 'PyTorch-2.0.1_skip-failing-gradtest.patch', + 'PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch', + 'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch', + 'PyTorch-2.1.0_disable-gcc12-warning.patch', + 'PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch', + 'PyTorch-2.1.0_fix-validationError-output-test.patch', + 'PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch', + 'PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch', + 'PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch', + 'PyTorch-2.1.0_remove-test-requiring-online-access.patch', + 'PyTorch-2.1.0_skip-diff-test-on-ppc.patch', + 'PyTorch-2.1.0_skip-dynamo-test_predispatch.patch', + 'PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch', + 'PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch', + 'PyTorch-2.1.0_skip-test_wrap_bad.patch', +] +checksums = [ + {'pytorch-v2.1.2.tar.gz': '85effbcce037bffa290aea775c9a4bad5f769cb229583450c40055501ee1acd7'}, + {'PyTorch-1.7.0_disable-dev-shm-test.patch': '622cb1eaeadc06e13128a862d9946bcc1f1edd3d02b259c56a9aecc4d5406b8a'}, + {'PyTorch-1.11.1_skip-test_init_from_local_shards.patch': + '4aeb1b0bc863d4801b0095cbce69f8794066748f0df27c6aaaf729c5ecba04b7'}, + {'PyTorch-1.12.1_add-hypothesis-suppression.patch': + 'e71ffb94ebe69f580fa70e0de84017058325fdff944866d6bd03463626edc32c'}, + {'PyTorch-1.12.1_fix-test_cpp_extensions_jit.patch': + '1efc9850c431d702e9117d4766277d3f88c5c8b3870997c9974971bce7f2ab83'}, + {'PyTorch-1.12.1_fix-TestTorch.test_to.patch': '75f27987c3f25c501e719bd2b1c70a029ae0ee28514a97fe447516aee02b1535'}, + {'PyTorch-1.12.1_skip-test_round_robin.patch': '63d4849b78605aa088fdff695637d9473ea60dee603a3ff7f788690d70c55349'}, + {'PyTorch-1.13.1_fix-gcc-12-warning-in-fbgemm.patch': + '5c7be91a6096083a0b1315efe0001537499c600f1f569953c6a2c7f4cc1d0910'}, + {'PyTorch-1.13.1_fix-protobuf-dependency.patch': + '8bd755a0cab7233a243bc65ca57c9630dfccdc9bf8c9792f0de4e07a644fcb00'}, + {'PyTorch-1.13.1_fix-warning-in-test-cpp-api.patch': + 'bdde0f2105215c95a54de64ec4b1a4520528510663174fef6d5b900eb1db3937'}, + {'PyTorch-1.13.1_skip-failing-singular-grad-test.patch': + '72688a57b2bb617665ad1a1d5e362c5111ae912c10936bb38a089c0204729f48'}, + {'PyTorch-1.13.1_skip-tests-without-fbgemm.patch': + '481e595f673baf8ae58b41697a6792b83048b0264aa79b422f48cd8c22948bb7'}, + {'PyTorch-2.0.1_avoid-test_quantization-failures.patch': + '02e3f47e4ed1d7d6077e26f1ae50073dc2b20426269930b505f4aefe5d2f33cd'}, + {'PyTorch-2.0.1_fix-skip-decorators.patch': '2039012cef45446065e1a2097839fe20bb29fe3c1dcc926c3695ebf29832e920'}, + {'PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch': + '1b37194f55ae678f3657b8728dfb896c18ffe8babe90987ce468c4fa9274f357'}, + {'PyTorch-2.0.1_fix-vsx-loadu.patch': 'a0ffa61da2d47c6acd09aaf6d4791e527d8919a6f4f1aa7ed38454cdcadb1f72'}, + {'PyTorch-2.0.1_no-cuda-stubs-rpath.patch': '8902e58a762240f24cdbf0182e99ccdfc2a93492869352fcb4ca0ec7e407f83a'}, + {'PyTorch-2.0.1_skip-failing-gradtest.patch': '8030bdec6ba49b057ab232d19a7f1a5e542e47e2ec340653a246ec9ed59f8bc1'}, + {'PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch': + '7047862abc1abaff62954da59700f36d4f39fcf83167a638183b1b7f8fec78ae'}, + {'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch': + '166c134573a95230e39b9ea09ece3ad8072f39d370c9a88fb2a1e24f6aaac2b5'}, + {'PyTorch-2.1.0_disable-gcc12-warning.patch': 'c858b8db0010f41005dc06f9a50768d0d3dc2d2d499ccbdd5faf8a518869a421'}, + {'PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch': + 'b15b1291a3c37bf6a4982cfbb3483f693acb46a67bc0912b383fd98baf540ccf'}, + {'PyTorch-2.1.0_fix-validationError-output-test.patch': + '7eba0942afb121ed92fac30d1529447d892a89eb3d53c565f8e9d480e95f692b'}, + {'PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch': + '3793b4b878be1abe7791efcbd534774b87862cfe7dc4774ca8729b6cabb39e7e'}, + {'PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch': + 'aef38adf1210d0c5455e91d7c7a9d9e5caad3ae568301e0ba9fc204309438e7b'}, + {'PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch': + '0ac36411e76506b3354c85a8a1260987f66af947ee52ffc64230aee1fa02ea8b'}, + {'PyTorch-2.1.0_remove-test-requiring-online-access.patch': + '35184b8c5a1b10f79e511cc25db3b8a5585a5d58b5d1aa25dd3d250200b14fd7'}, + {'PyTorch-2.1.0_skip-diff-test-on-ppc.patch': '394157dbe565ffcbc1821cd63d05930957412156cc01e949ef3d3524176a1dda'}, + {'PyTorch-2.1.0_skip-dynamo-test_predispatch.patch': + '6298daf9ddaa8542850eee9ea005f28594ab65b1f87af43d8aeca1579a8c4354'}, + {'PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch': + '5229ca88a71db7667a90ddc0b809b2c817698bd6e9c5aaabd73d3173cf9b99fe'}, + {'PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch': + '5dcc79883b6e3ec0a281a8e110db5e0a5880de843bb05653589891f16473ead5'}, + {'PyTorch-2.1.0_skip-test_wrap_bad.patch': 'b8583125ee94e553b6f77c4ab4bfa812b89416175dc7e9b7390919f3b485cb63'}, +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +builddependencies = [ + ('CMake', '3.24.3'), + ('hypothesis', '6.68.2'), + # For tests + ('pytest-flakefinder', '1.1.0'), + ('pytest-rerunfailures', '12.0'), + ('pytest-shard', '0.1.2'), +] + +dependencies = [ + ('Ninja', '1.11.1'), # Required for JIT compilation of C++ extensions + ('Python', '3.10.8'), + ('protobuf', '23.0'), + ('protobuf-python', '4.23.0'), + ('pybind11', '2.10.3'), + ('SciPy-bundle', '2023.02'), + ('PyYAML', '6.0'), + ('MPFR', '4.2.0'), + ('GMP', '6.2.1'), + ('numactl', '2.0.16'), + ('FFmpeg', '5.1.2'), + ('Pillow', '9.4.0'), + ('expecttest', '0.1.3'), + ('networkx', '3.0'), + ('sympy', '1.12'), + ('Z3', '4.12.2', '-Python-%(pyver)s'), +] + +excluded_tests = { + '': [ + # This test seems to take too long on NVIDIA Ampere at least. + 'distributed/test_distributed_spawn', + # Broken on CUDA 11.6/11.7: https://github.com/pytorch/pytorch/issues/75375 + 'distributions/test_constraints', + # no xdoctest + 'doctests', + # failing on broadwell + # See https://github.com/easybuilders/easybuild-easyconfigs/issues/17712 + 'test_native_mha', + # intermittent failures on various systems + # See https://github.com/easybuilders/easybuild-easyconfigs/issues/17712 + 'distributed/rpc/test_tensorpipe_agent', + ] +} + +runtest = 'cd test && PYTHONUNBUFFERED=1 %(python)s run_test.py --continue-through-error --verbose %(excluded_tests)s' + +# Especially test_quantization has a few corner cases that are triggered by the random input values, +# those cannot be easily avoided, see https://github.com/pytorch/pytorch/issues/107030 +# So allow a low number of tests to fail as the tests "usually" succeed +max_failed_tests = 2 + +tests = ['PyTorch-check-cpp-extension.py'] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..b5ed6a20032 --- /dev/null +++ b/easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-12.2.0.eb @@ -0,0 +1,21 @@ +easyblock = 'PythonPackage' + +name = 'pytest-flakefinder' +version = '1.1.0' + +homepage = 'https://github.com/dropbox/pytest-flakefinder' +description = """Runs tests multiple times to expose flakiness.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +builddependencies = [('binutils', '2.39')] +dependencies = [('Python', '3.10.8')] + +use_pip = True +sanity_pip_check = True +download_dep_fail = False + +sources = [SOURCE_TAR_GZ] +checksums = ['e2412a1920bdb8e7908783b20b3d57e9dad590cc39a93e8596ffdd493b403e0e'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/z/Z3/Z3-4.12.2-GCCcore-12.2.0-Python-3.10.8.eb b/easybuild/easyconfigs/z/Z3/Z3-4.12.2-GCCcore-12.2.0-Python-3.10.8.eb new file mode 100644 index 00000000000..46769906aed --- /dev/null +++ b/easybuild/easyconfigs/z/Z3/Z3-4.12.2-GCCcore-12.2.0-Python-3.10.8.eb @@ -0,0 +1,53 @@ +easyblock = 'PythonBundle' + +name = 'Z3' +version = '4.12.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/Z3Prover/z3' +description = """Z3 is a theorem prover from Microsoft Research with support for bitvectors, +booleans, arrays, floating point numbers, strings, and other data types. This +module includes z3-solver, the Python interface of Z3. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +builddependencies = [ + ('CMake', '3.24.3'), + ('binutils', '2.39'), +] + +dependencies = [ + ('Python', '3.10.8'), + ('GMP', '6.2.1'), +] + +use_pip = True + +_fix_parallelism = """sed -i 's/str(multiprocessing.cpu_count())/"%(parallel)s"/' setup.py &&""" +_enable_gmp = """sed -i "s/Z3_USE_LIB_GMP.*/Z3_USE_LIB_GMP' : True,/" setup.py &&""" + +exts_list = [ + ('z3-solver', version + '.0', { + 'modulename': 'z3', + 'checksums': ['65ab47a0a8ef0bfb80db0670775beb11b32c3c0ae4b35943e44121f4af7ef411'], + 'preinstallopts': _fix_parallelism + _enable_gmp, + }), +] + +# make Z3 headers and libraries accessible in their usual location +local_z3_site_path = "lib/python%(pyshortver)s/site-packages/%(namelower)s" +local_libz3 = 'libz3.' + SHLIB_EXT +postinstallcmds = [ + "ln -s %s/include '%%(installdir)s/include'" % local_z3_site_path, + "ln -s ../%s/lib/%s '%%(installdir)s/lib/%s'" % (local_z3_site_path, local_libz3, local_libz3) +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/z3', 'include/z3_api.h', 'lib/libz3.%s' % SHLIB_EXT], + 'dirs': ['include', 'lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' From 7c35ec1f496be345a9234addcddf5919f4399631 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Tue, 19 Dec 2023 13:29:46 +0100 Subject: [PATCH 234/356] Add Cube 4.8.2 as dependencies --- .../c/CubeLib/CubeLib-4.8.2-GCCcore-12.2.0.eb | 53 +++++++++++++++++++ .../CubeWriter-4.8.2-GCCcore-12.2.0.eb | 53 +++++++++++++++++++ .../s/Score-P/Score-P-8.3-gompi-2022b.eb | 7 +-- 3 files changed, 108 insertions(+), 5 deletions(-) create mode 100644 easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-12.2.0.eb create mode 100644 easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-12.2.0.eb diff --git a/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-12.2.0.eb b/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..5d1acddf2f6 --- /dev/null +++ b/easybuild/easyconfigs/c/CubeLib/CubeLib-4.8.2-GCCcore-12.2.0.eb @@ -0,0 +1,53 @@ +## +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2019 Juelich Supercomputing Centre, Germany +# Authors:: Markus Geimer +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ +## + +easyblock = 'EB_Score_minus_P' + +name = 'CubeLib' +version = '4.8.2' + +homepage = 'https://www.scalasca.org/software/cube-4.x/download.html' +description = """ + Cube, which is used as performance report explorer for Scalasca and Score-P, + is a generic tool for displaying a multi-dimensional performance space + consisting of the dimensions (i) performance metric, (ii) call path, and + (iii) system resource. Each dimension can be represented as a tree, where + non-leaf nodes of the tree can be collapsed or expanded to achieve the + desired level of granularity. + + This module provides the Cube general purpose C++ library component and + command-line tools. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +source_urls = ['https://apps.fz-juelich.de/scalasca/releases/cube/%(version_major_minor)s/dist'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['d6fdef57b1bc9594f1450ba46cf08f431dd0d4ae595c47e2f3454e17e4ae74f4'] + +builddependencies = [ + # use same binutils version that was used when building GCCcore + ('binutils', '2.39'), + ('pkgconf', '1.9.3'), +] + +dependencies = [ + ('zlib', '1.2.12'), +] + +configopts = '--enable-shared' + +sanity_check_paths = { + 'files': ['bin/cubelib-config', + 'lib/libcube4.a', 'lib/libcube4.%s' % SHLIB_EXT], + 'dirs': ['include/cubelib'], +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-12.2.0.eb b/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..28a34b2c8a0 --- /dev/null +++ b/easybuild/easyconfigs/c/CubeWriter/CubeWriter-4.8.2-GCCcore-12.2.0.eb @@ -0,0 +1,53 @@ +## +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2019 Juelich Supercomputing Centre, Germany +# Authors:: Markus Geimer +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ +## + +easyblock = 'EB_Score_minus_P' + +name = 'CubeWriter' +version = '4.8.2' + +homepage = 'https://www.scalasca.org/software/cube-4.x/download.html' +description = """ + Cube, which is used as performance report explorer for Scalasca and Score-P, + is a generic tool for displaying a multi-dimensional performance space + consisting of the dimensions (i) performance metric, (ii) call path, and + (iii) system resource. Each dimension can be represented as a tree, where + non-leaf nodes of the tree can be collapsed or expanded to achieve the + desired level of granularity. + + This module provides the Cube high-performance C writer library component. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = ['https://apps.fz-juelich.de/scalasca/releases/cube/%(version_major_minor)s/dist'] +sources = ['cubew-%(version)s.tar.gz'] +checksums = ['4f3bcf0622c2429b8972b5eb3f14d79ec89b8161e3c1cc5862ceda417d7975d2'] + +builddependencies = [ + # use same binutils version that was used when building GCCcore + ('binutils', '2.39'), + ('pkgconf', '1.9.3'), +] + +dependencies = [ + ('zlib', '1.2.12'), +] + +configopts = '--enable-shared' + +sanity_check_paths = { + 'files': ['bin/cubew-config', + 'lib/libcube4w.a', 'lib/libcube4w.%s' % SHLIB_EXT], + 'dirs': ['include/cubew'], +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-8.3-gompi-2022b.eb b/easybuild/easyconfigs/s/Score-P/Score-P-8.3-gompi-2022b.eb index d967e086bb9..8b66869c1ce 100644 --- a/easybuild/easyconfigs/s/Score-P/Score-P-8.3-gompi-2022b.eb +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.3-gompi-2022b.eb @@ -29,11 +29,8 @@ sources = ['scorep-%(version)s.tar.gz'] checksums = ['76c914e6319221c059234597a3bc53da788ed679179ac99c147284dcefb1574a'] dependencies = [ - # Score-P 8.3 requires Cube 4.8.2+ - # Commenting out these dependencies makes it use its (compatible) vendored copy, - # although it might cause issues when loading the Cube* modules. - # ('CubeLib', '4.8.1'), - # ('CubeWriter', '4.8.1'), + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), ('libunwind', '1.6.2'), ('OPARI2', '2.0.7'), ('OTF2', '3.0.3'), From 4f42aca521d18141823b2835c5f2754e3bbdfdda Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Tue, 19 Dec 2023 13:40:56 +0100 Subject: [PATCH 235/356] Add missing patch --- .../PyTorch-2.1.0_disable-gcc12-warning.patch | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_disable-gcc12-warning.patch diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_disable-gcc12-warning.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_disable-gcc12-warning.patch new file mode 100644 index 00000000000..cb31fe9c022 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_disable-gcc12-warning.patch @@ -0,0 +1,32 @@ +GCC 12 has a false positive warning when compiled for some architectures, e.g. Intel Sapphire Rapids. +See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112370 + +Suppress this warning such that the build doesn't error. + +Author: Alexander Grund (TU Dresden) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 3a48eaf4e29..faa06c8177a 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -561,6 +561,7 @@ if(MSVC) + string(APPEND CMAKE_CXX_FLAGS " /FS") + string(APPEND CMAKE_CUDA_FLAGS " -Xcompiler /FS") + endif(MSVC) ++append_cxx_flag_if_supported("-Wno-free-nonheap-object" CMAKE_CXX_FLAGS) + + string(APPEND CMAKE_CUDA_FLAGS " -Xfatbin -compress-all") + +diff --git a/cmake/public/utils.cmake b/cmake/public/utils.cmake +index 4d48c0f0f3d..bda17319ce7 100644 +--- a/cmake/public/utils.cmake ++++ b/cmake/public/utils.cmake +@@ -533,6 +533,8 @@ function(torch_update_find_cuda_flags) + endif() + endfunction() + ++include(CheckCXXCompilerFlag) ++ + ############################################################################## + # CHeck if given flag is supported and append it to provided outputvar + # Also define HAS_UPPER_CASE_FLAG_NAME variable From dc08fc4a58e77beddf7bcd7e5837aae9ab85cf51 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Tue, 19 Dec 2023 14:19:43 +0000 Subject: [PATCH 236/356] try no separate scikit-learn --- easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb index 304da829387..f1dff53972f 100644 --- a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb +++ b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb @@ -13,7 +13,7 @@ dependencies = [ ('Python', '3.9.6'), ('matplotlib', '3.4.3'), ('SciPy-bundle', '2021.10'), - ('scikit-learn', '1.0.2'), + # ('scikit-learn', '1.0.2'), ('tqdm', '4.62.3'), ('MDTraj', '1.9.7'), ('networkx', '2.6.3'), From bd020734ed8fbab6819891ce13b0749dca03091e Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Tue, 19 Dec 2023 15:23:13 +0000 Subject: [PATCH 237/356] remove dep scikit-learn --- easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb | 1 - 1 file changed, 1 deletion(-) diff --git a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb index f1dff53972f..f0006b94e40 100644 --- a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb +++ b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb @@ -13,7 +13,6 @@ dependencies = [ ('Python', '3.9.6'), ('matplotlib', '3.4.3'), ('SciPy-bundle', '2021.10'), - # ('scikit-learn', '1.0.2'), ('tqdm', '4.62.3'), ('MDTraj', '1.9.7'), ('networkx', '2.6.3'), From 809eaa856b6cab5697268e8f0576b25ff090f238 Mon Sep 17 00:00:00 2001 From: WilleBell Date: Tue, 19 Dec 2023 17:57:17 +0100 Subject: [PATCH 238/356] adding easyconfigs: wandb-0.16.1-GCC-12.3.0.eb, GitPython-3.1.40-GCCcore-12.3.0.eb --- .../GitPython-3.1.40-GCCcore-12.3.0.eb | 34 +++++++++++++ .../w/wandb/wandb-0.16.1-GCC-12.3.0.eb | 48 +++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 easybuild/easyconfigs/g/GitPython/GitPython-3.1.40-GCCcore-12.3.0.eb create mode 100644 easybuild/easyconfigs/w/wandb/wandb-0.16.1-GCC-12.3.0.eb diff --git a/easybuild/easyconfigs/g/GitPython/GitPython-3.1.40-GCCcore-12.3.0.eb b/easybuild/easyconfigs/g/GitPython/GitPython-3.1.40-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..c09abda742a --- /dev/null +++ b/easybuild/easyconfigs/g/GitPython/GitPython-3.1.40-GCCcore-12.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'GitPython' +version = '3.1.40' + +homepage = 'https://gitpython.readthedocs.org' +description = """ GitPython is a python library used to interact with Git repositories """ + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Python', '3.11.3'), + ('git', '2.41.0', '-nodocs'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('smmap', '5.0.1', { + 'checksums': ['dceeb6c0028fdb6734471eb07c0cd2aae706ccaecab45965ee83f11c8d3b1f62'], + }), + ('gitdb', '4.0.11', { + 'checksums': ['bf5421126136d6d0af55bc1e7c1af1c397a34f5b7bd79e776cd3e89785c2b04b'], + }), + (name, version, { + 'modulename': 'git', + 'checksums': ['22b126e9ffb671fdd0c129796343a02bf67bf2994b35449ffc9321aa755e18a4'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/w/wandb/wandb-0.16.1-GCC-12.3.0.eb b/easybuild/easyconfigs/w/wandb/wandb-0.16.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..5c06dc3de1b --- /dev/null +++ b/easybuild/easyconfigs/w/wandb/wandb-0.16.1-GCC-12.3.0.eb @@ -0,0 +1,48 @@ +easyblock = 'PythonBundle' + +name = 'wandb' +version = '0.16.1' + +homepage = 'https://wandb.ai' +description = """CLI and Python API for Weights and Biases (wandb), a tool for visualizing and +tracking your machine learning experiments.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('GitPython', '3.1.40'), + ('PyYAML', '6.0'), + ('protobuf-python', '4.24.0'), + ('hatchling', '1.18.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('docker-pycreds', '0.4.0', { + 'modulename': 'dockerpycreds', + 'checksums': ['6ce3270bcaf404cc4c3e27e4b6c70d3521deae82fb508767870fdbf772d584d4'], + }), + ('urllib3', '2.1.0', { + 'checksums': ['df7aa8afb0148fa78488e7899b2c59b5f4ffcfa82e6c54ccb9dd37c1d7b52d54'], + }), + ('sentry-sdk', '1.39.1', { + 'checksums': ['320a55cdf9da9097a0bead239c35b7e61f53660ef9878861824fd6d9b2eaf3b5'], + }), + ('setproctitle', '1.3.3', { + 'checksums': ['c913e151e7ea01567837ff037a23ca8740192880198b7fbb90b16d181607caae'], + }), + (name, version, { + 'checksums': ['ffe6e8dd8cc8fcd72010c1246fb3d6d226b37c4f111f3f94308a1c0ae28a2fec'], + }), +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['wandb', 'wb']], + 'dirs': ['lib/python%(pyshortver)s/site-packages'] +} + +moduleclass = 'ai' From d9dfa47d2aa59e8b945fabf1df981b1299f71f63 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Wed, 20 Dec 2023 08:44:16 +0000 Subject: [PATCH 239/356] Revert "remove dep scikit-learn" This reverts commit bd020734ed8fbab6819891ce13b0749dca03091e. --- easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb | 1 + 1 file changed, 1 insertion(+) diff --git a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb index f0006b94e40..f1dff53972f 100644 --- a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb +++ b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb @@ -13,6 +13,7 @@ dependencies = [ ('Python', '3.9.6'), ('matplotlib', '3.4.3'), ('SciPy-bundle', '2021.10'), + # ('scikit-learn', '1.0.2'), ('tqdm', '4.62.3'), ('MDTraj', '1.9.7'), ('networkx', '2.6.3'), From 89e4e84db90b5f1db0767ef65d485c6f41427f3b Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Wed, 20 Dec 2023 08:44:23 +0000 Subject: [PATCH 240/356] Revert "try no separate scikit-learn" This reverts commit dc08fc4a58e77beddf7bcd7e5837aae9ab85cf51. --- easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb index f1dff53972f..304da829387 100644 --- a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb +++ b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb @@ -13,7 +13,7 @@ dependencies = [ ('Python', '3.9.6'), ('matplotlib', '3.4.3'), ('SciPy-bundle', '2021.10'), - # ('scikit-learn', '1.0.2'), + ('scikit-learn', '1.0.2'), ('tqdm', '4.62.3'), ('MDTraj', '1.9.7'), ('networkx', '2.6.3'), From 227210416049b4acdbeabcfcb9facf937312d6d1 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Wed, 20 Dec 2023 08:45:00 +0000 Subject: [PATCH 241/356] change version of scikit-lern to 1.0..1 --- easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb index 304da829387..4afab6a8441 100644 --- a/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb +++ b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.eb @@ -13,7 +13,7 @@ dependencies = [ ('Python', '3.9.6'), ('matplotlib', '3.4.3'), ('SciPy-bundle', '2021.10'), - ('scikit-learn', '1.0.2'), + ('scikit-learn', '1.0.1'), ('tqdm', '4.62.3'), ('MDTraj', '1.9.7'), ('networkx', '2.6.3'), From d17239c90d82207881599a8f659f93300d0989bf Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Wed, 20 Dec 2023 10:08:47 +0100 Subject: [PATCH 242/356] Add exception for Cube 4.8.2 --- test/easyconfigs/easyconfigs.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index 497f03f4030..21b6b4d9ddf 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -506,6 +506,9 @@ def check_dep_vars(self, gen, dep, dep_vars): 'Boost.Python': [('1.64.0;', [r'EMAN2-2\.3-'])], # GATE 9.2 requires CHLEP 2.4.5.1 and Geant4 11.0.x 'CLHEP': [('2.4.5.1;', [r'GATE-9\.2-foss-2021b'])], + # Score-P 8.3+ requires Cube 4.8.2+ but we have 4.8.1 already + 'CubeLib': [(r'4\.8\.2;', [r'Score-P-8\.[3-9]'])], + 'CubeWriter': [(r'4\.8\.2;', [r'Score-P-8\.[3-9]'])], # egl variant of glew is required by libwpe, wpebackend-fdo + WebKitGTK+ depend on libwpe 'glew': [ ('2.2.0; versionsuffix: -egl', [r'libwpe-1\.13\.3-GCCcore-11\.2\.0', From 621466ce96bc68fa650c979b9ad54c2298b8ca9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Kr=C3=A1l?= Date: Wed, 20 Dec 2023 12:58:23 +0100 Subject: [PATCH 243/356] adding easyconfigs: ebGSEA-0.1.0-foss-2022a-R-4.2.1.eb --- .../ebGSEA/ebGSEA-0.1.0-foss-2022a-R-4.2.1.eb | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 easybuild/easyconfigs/e/ebGSEA/ebGSEA-0.1.0-foss-2022a-R-4.2.1.eb diff --git a/easybuild/easyconfigs/e/ebGSEA/ebGSEA-0.1.0-foss-2022a-R-4.2.1.eb b/easybuild/easyconfigs/e/ebGSEA/ebGSEA-0.1.0-foss-2022a-R-4.2.1.eb new file mode 100644 index 00000000000..56647181edb --- /dev/null +++ b/easybuild/easyconfigs/e/ebGSEA/ebGSEA-0.1.0-foss-2022a-R-4.2.1.eb @@ -0,0 +1,49 @@ +easyblock = 'Bundle' + +name = 'ebGSEA' +version = '0.1.0' +versionsuffix = '-R-%(rver)s' + +local_commit = 'b307931' + +homepage = 'https://github.com/aet21/ebGSEA' +description = """Gene Set Enrichment Analysis is one of the most common tasks in the analysis of omic data, + and is critical for biological interpretation. In the context of Epigenome Wide Association Studies (EWAS), + which typically rank individual cytosines according to the level of differential methylation, enrichment + analysis of biological pathways is challenging due to differences in CpG/probe density between genes.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('R', '4.2.1'), + ('R-bundle-Bioconductor', '3.15', versionsuffix), +] + +exts_defaultclass = 'RPackage' +exts_default_options = { + 'sources': ['%(name)s_%(version)s.tar.gz'], + 'source_urls': [ + 'https://cran.r-project.org/src/contrib/Archive/%(name)s', # package archive + 'https://cran.r-project.org/src/contrib/', # current version of packages + 'https://cran.freestatistics.org/src/contrib', # mirror alternative for current packages + ], +} + +exts_list = [ + ('kpmt', '0.1.0', { + 'checksums': ['6342ad02c93bfa7a764d028821bb6115bb8bc8c55b057a5860736cc0e034a295'], + }), + (name, version, { + 'source_urls': ['https://github.com/aet21/ebGSEA/raw/%s/' % local_commit], + 'checksums': ['a7cb470a884d4455e2754b40bd010b43a0f048e968ab00101d11f91310fab380'], + }), +] + +modextrapaths = {'R_LIBS_SITE': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +moduleclass = 'bio' From 9b43dd63f86f36199a898500f97feb7ac78a62ea Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Wed, 20 Dec 2023 22:40:15 +0100 Subject: [PATCH 244/356] {toolchain} intel/2023b --- .../easyconfigs/h/HPL/HPL-2.3-intel-2023b.eb | 21 ++++++++++++++++++ easybuild/easyconfigs/i/iimpi/iimpi-2023b.eb | 18 +++++++++++++++ .../imkl-FFTW-2023.2.0-iimpi-2023b.eb | 11 ++++++++++ easybuild/easyconfigs/i/intel/intel-2023b.eb | 22 +++++++++++++++++++ 4 files changed, 72 insertions(+) create mode 100644 easybuild/easyconfigs/h/HPL/HPL-2.3-intel-2023b.eb create mode 100644 easybuild/easyconfigs/i/iimpi/iimpi-2023b.eb create mode 100644 easybuild/easyconfigs/i/imkl-FFTW/imkl-FFTW-2023.2.0-iimpi-2023b.eb create mode 100644 easybuild/easyconfigs/i/intel/intel-2023b.eb diff --git a/easybuild/easyconfigs/h/HPL/HPL-2.3-intel-2023b.eb b/easybuild/easyconfigs/h/HPL/HPL-2.3-intel-2023b.eb new file mode 100644 index 00000000000..3da773db627 --- /dev/null +++ b/easybuild/easyconfigs/h/HPL/HPL-2.3-intel-2023b.eb @@ -0,0 +1,21 @@ +name = 'HPL' +version = '2.3' + +homepage = 'https://www.netlib.org/benchmark/hpl/' +description = """HPL is a software package that solves a (random) dense linear system in double precision (64 bits) + arithmetic on distributed-memory computers. It can thus be regarded as a portable as well as freely available + implementation of the High Performance Computing Linpack Benchmark.""" + +toolchain = {'name': 'intel', 'version': '2023b'} +toolchainopts = {'usempi': True} + +source_urls = ['https://www.netlib.org/benchmark/%(namelower)s'] +sources = [SOURCELOWER_TAR_GZ] +# fix Make dependencies, so parallel build also works +patches = ['HPL_parallel-make.patch'] +checksums = [ + '32c5c17d22330e6f2337b681aded51637fb6008d3f0eb7c277b163fadd612830', # hpl-2.3.tar.gz + '2a5bf9c4f328049828ddecec7ba3f05a9e25d236f4212747c53bd22fea80c5e6', # HPL_parallel-make.patch +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/i/iimpi/iimpi-2023b.eb b/easybuild/easyconfigs/i/iimpi/iimpi-2023b.eb new file mode 100644 index 00000000000..705731a704f --- /dev/null +++ b/easybuild/easyconfigs/i/iimpi/iimpi-2023b.eb @@ -0,0 +1,18 @@ +# This is an easyconfig file for EasyBuild, see http://easybuilders.github.io/easybuild +easyblock = 'Toolchain' + +name = 'iimpi' +version = '2023b' + +homepage = 'https://software.intel.com/parallel-studio-xe' +description = """Intel C/C++ and Fortran compilers, alongside Intel MPI.""" + +toolchain = SYSTEM + +local_comp_ver = '2023.2.1' +dependencies = [ + ('intel-compilers', local_comp_ver), + ('impi', '2021.10.0', '', ('intel-compilers', local_comp_ver)), +] + +moduleclass = 'toolchain' diff --git a/easybuild/easyconfigs/i/imkl-FFTW/imkl-FFTW-2023.2.0-iimpi-2023b.eb b/easybuild/easyconfigs/i/imkl-FFTW/imkl-FFTW-2023.2.0-iimpi-2023b.eb new file mode 100644 index 00000000000..7d3a8dc7f2c --- /dev/null +++ b/easybuild/easyconfigs/i/imkl-FFTW/imkl-FFTW-2023.2.0-iimpi-2023b.eb @@ -0,0 +1,11 @@ +name = 'imkl-FFTW' +version = '2023.2.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onemkl.html' +description = "FFTW interfaces using Intel oneAPI Math Kernel Library" + +toolchain = {'name': 'iimpi', 'version': '2023b'} + +dependencies = [('imkl', version, '', SYSTEM)] + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/i/intel/intel-2023b.eb b/easybuild/easyconfigs/i/intel/intel-2023b.eb new file mode 100644 index 00000000000..c6c86c8f37d --- /dev/null +++ b/easybuild/easyconfigs/i/intel/intel-2023b.eb @@ -0,0 +1,22 @@ +easyblock = 'Toolchain' + +name = 'intel' +version = '2023b' + +homepage = 'https://easybuild.readthedocs.io/en/master/Common-toolchains.html#intel-toolchain' +description = "Compiler toolchain including Intel compilers, Intel MPI and Intel Math Kernel Library (MKL)." + +toolchain = SYSTEM + +local_comp_ver = '2023.2.1' +local_gccver = '13.2.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.40', '', ('GCCcore', local_gccver)), + ('intel-compilers', local_comp_ver), + ('impi', '2021.10.0', '', ('intel-compilers', local_comp_ver)), + ('imkl', '2023.2.0', '', SYSTEM), + ('imkl-FFTW', '2023.2.0', '', ('iimpi', version)), +] + +moduleclass = 'toolchain' From ed80a8b484bd27a2e5f86303a23dd0f0cfa59e62 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Wed, 20 Dec 2023 23:07:26 +0100 Subject: [PATCH 245/356] exclude cdp* CUDA samples that fail to build on aarch64 in CUDA-Samples v12.1 --- .../CUDA-Samples-12.1-GCC-12.3.0-CUDA-12.1.1.eb | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/easybuild/easyconfigs/c/CUDA-Samples/CUDA-Samples-12.1-GCC-12.3.0-CUDA-12.1.1.eb b/easybuild/easyconfigs/c/CUDA-Samples/CUDA-Samples-12.1-GCC-12.3.0-CUDA-12.1.1.eb index c5c6afe7534..932dfcc7da7 100644 --- a/easybuild/easyconfigs/c/CUDA-Samples/CUDA-Samples-12.1-GCC-12.3.0-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/c/CUDA-Samples/CUDA-Samples-12.1-GCC-12.3.0-CUDA-12.1.1.eb @@ -49,6 +49,15 @@ local_filters += "Samples/4_CUDA_Libraries/simpleCUFFT_callback/Makefile " # Builds a shared lib that it sticks in `bin`! local_filters += "Samples/2_Concepts_and_Techniques/cuHook/Makefile " +# some CUDA samples fail to build on aarch64; +# see also https://github.com/NVIDIA/cuda-samples/issues/223 +if ARCH == 'aarch64': + local_filters += "Samples/3_CUDA_Features/cdpBezierTessellation/Makefile " + local_filters += "Samples/3_CUDA_Features/cdpSimplePrint/Makefile " + local_filters += "Samples/3_CUDA_Features/cdpSimpleQuicksort/Makefile " + local_filters += "Samples/3_CUDA_Features/cdpQuadtree/Makefile " + local_filters += "Samples/3_CUDA_Features/cdpAdvancedQuicksort/Makefile " + buildopts = "HOST_COMPILER=g++ FILTER_OUT='%s'" % local_filters # Remove libraries in the bin dir after a successful 'make' From f81bca06098367f38a9a080b8e6376f24987f2a4 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Wed, 20 Dec 2023 23:17:01 +0100 Subject: [PATCH 246/356] fix bin subdirectory for aarch64 in CUDA-Samples v12.1 easyconfig --- .../CUDA-Samples/CUDA-Samples-12.1-GCC-12.3.0-CUDA-12.1.1.eb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/c/CUDA-Samples/CUDA-Samples-12.1-GCC-12.3.0-CUDA-12.1.1.eb b/easybuild/easyconfigs/c/CUDA-Samples/CUDA-Samples-12.1-GCC-12.3.0-CUDA-12.1.1.eb index 932dfcc7da7..3e7ffe79da0 100644 --- a/easybuild/easyconfigs/c/CUDA-Samples/CUDA-Samples-12.1-GCC-12.3.0-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/c/CUDA-Samples/CUDA-Samples-12.1-GCC-12.3.0-CUDA-12.1.1.eb @@ -63,8 +63,10 @@ buildopts = "HOST_COMPILER=g++ FILTER_OUT='%s'" % local_filters # Remove libraries in the bin dir after a successful 'make' buildopts += " && rm bin/*/linux/release/lib*.so.*" +local_binsubdir = 'sbsa' if ARCH == 'aarch64' else ARCH + files_to_copy = [ - (['bin/%s/linux/release/*' % ARCH], 'bin'), + (['bin/%s/linux/release/*' % local_binsubdir], 'bin'), 'LICENSE', ] From 49c887397b1a948e1909fc24bc905fdc1ad38388 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Wed, 20 Dec 2023 22:38:05 +0100 Subject: [PATCH 247/356] {toolchain} foss/2023b --- .../f/FFTW.MPI/FFTW.MPI-3.3.10-gompi-2023b.eb | 19 ++++ easybuild/easyconfigs/f/foss/foss-2023b.eb | 28 +++++ easybuild/easyconfigs/g/gfbf/gfbf-2023b.eb | 20 ++++ easybuild/easyconfigs/g/gompi/gompi-2023b.eb | 20 ++++ .../easyconfigs/h/HPL/HPL-2.3-foss-2023b.eb | 21 ++++ .../OSU-Micro-Benchmarks-7.2-gompi-2023b.eb | 26 +++++ .../ScaLAPACK-2.2.0-gompi-2023b-fb.eb | 40 +++++++ .../SciPy-bundle-2023.11-gfbf-2023b.eb | 104 ++++++++++++++++++ 8 files changed, 278 insertions(+) create mode 100644 easybuild/easyconfigs/f/FFTW.MPI/FFTW.MPI-3.3.10-gompi-2023b.eb create mode 100644 easybuild/easyconfigs/f/foss/foss-2023b.eb create mode 100644 easybuild/easyconfigs/g/gfbf/gfbf-2023b.eb create mode 100644 easybuild/easyconfigs/g/gompi/gompi-2023b.eb create mode 100644 easybuild/easyconfigs/h/HPL/HPL-2.3-foss-2023b.eb create mode 100644 easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-7.2-gompi-2023b.eb create mode 100644 easybuild/easyconfigs/s/ScaLAPACK/ScaLAPACK-2.2.0-gompi-2023b-fb.eb create mode 100644 easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb diff --git a/easybuild/easyconfigs/f/FFTW.MPI/FFTW.MPI-3.3.10-gompi-2023b.eb b/easybuild/easyconfigs/f/FFTW.MPI/FFTW.MPI-3.3.10-gompi-2023b.eb new file mode 100644 index 00000000000..4ebcd8a75cd --- /dev/null +++ b/easybuild/easyconfigs/f/FFTW.MPI/FFTW.MPI-3.3.10-gompi-2023b.eb @@ -0,0 +1,19 @@ +name = 'FFTW.MPI' +version = '3.3.10' + +homepage = 'https://www.fftw.org' +description = """FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) +in one or more dimensions, of arbitrary input size, and of both real and complex data.""" + +toolchain = {'name': 'gompi', 'version': '2023b'} +toolchainopts = {'pic': True} + +source_urls = [homepage] +sources = ['fftw-%(version)s.tar.gz'] +checksums = ['56c932549852cddcfafdab3820b0200c7742675be92179e59e6215b340e26467'] + +dependencies = [('FFTW', '3.3.10')] + +runtest = 'check' + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/f/foss/foss-2023b.eb b/easybuild/easyconfigs/f/foss/foss-2023b.eb new file mode 100644 index 00000000000..24bbd688d58 --- /dev/null +++ b/easybuild/easyconfigs/f/foss/foss-2023b.eb @@ -0,0 +1,28 @@ +easyblock = 'Toolchain' + +name = 'foss' +version = '2023b' + +homepage = 'https://easybuild.readthedocs.io/en/master/Common-toolchains.html#foss-toolchain' +description = """GNU Compiler Collection (GCC) based compiler toolchain, including + OpenMPI for MPI support, OpenBLAS (BLAS and LAPACK support), FFTW and ScaLAPACK.""" + +toolchain = SYSTEM + +local_gccver = '13.2.0' + +# toolchain used to build foss dependencies +local_comp_mpi_tc = ('gompi', version) + +# we need GCC and OpenMPI as explicit dependencies instead of gompi toolchain +# because of toolchain preparation functions +dependencies = [ + ('GCC', local_gccver), + ('OpenMPI', '4.1.6', '', ('GCC', local_gccver)), + ('FlexiBLAS', '3.3.1', '', ('GCC', local_gccver)), + ('FFTW', '3.3.10', '', ('GCC', local_gccver)), + ('FFTW.MPI', '3.3.10', '', local_comp_mpi_tc), + ('ScaLAPACK', '2.2.0', '-fb', local_comp_mpi_tc), +] + +moduleclass = 'toolchain' diff --git a/easybuild/easyconfigs/g/gfbf/gfbf-2023b.eb b/easybuild/easyconfigs/g/gfbf/gfbf-2023b.eb new file mode 100644 index 00000000000..a0d0eef1463 --- /dev/null +++ b/easybuild/easyconfigs/g/gfbf/gfbf-2023b.eb @@ -0,0 +1,20 @@ +easyblock = 'Toolchain' + +name = 'gfbf' +version = '2023b' + +homepage = '(none)' +description = """GNU Compiler Collection (GCC) based compiler toolchain, including + FlexiBLAS (BLAS and LAPACK support) and (serial) FFTW.""" + +toolchain = SYSTEM + +local_gccver = '13.2.0' + +dependencies = [ + ('GCC', local_gccver), + ('FlexiBLAS', '3.3.1', '', ('GCC', local_gccver)), + ('FFTW', '3.3.10', '', ('GCC', local_gccver)), +] + +moduleclass = 'toolchain' diff --git a/easybuild/easyconfigs/g/gompi/gompi-2023b.eb b/easybuild/easyconfigs/g/gompi/gompi-2023b.eb new file mode 100644 index 00000000000..1ba98abe624 --- /dev/null +++ b/easybuild/easyconfigs/g/gompi/gompi-2023b.eb @@ -0,0 +1,20 @@ +easyblock = 'Toolchain' + +name = 'gompi' +version = '2023b' + +homepage = '(none)' +description = """GNU Compiler Collection (GCC) based compiler toolchain, + including OpenMPI for MPI support.""" + +toolchain = SYSTEM + +local_gccver = '13.2.0' + +# compiler toolchain dependencies +dependencies = [ + ('GCC', local_gccver), # includes both GCC and binutils + ('OpenMPI', '4.1.6', '', ('GCC', local_gccver)), +] + +moduleclass = 'toolchain' diff --git a/easybuild/easyconfigs/h/HPL/HPL-2.3-foss-2023b.eb b/easybuild/easyconfigs/h/HPL/HPL-2.3-foss-2023b.eb new file mode 100644 index 00000000000..e0abd95827b --- /dev/null +++ b/easybuild/easyconfigs/h/HPL/HPL-2.3-foss-2023b.eb @@ -0,0 +1,21 @@ +name = 'HPL' +version = '2.3' + +homepage = 'https://www.netlib.org/benchmark/hpl/' +description = """HPL is a software package that solves a (random) dense linear system in double precision (64 bits) + arithmetic on distributed-memory computers. It can thus be regarded as a portable as well as freely available + implementation of the High Performance Computing Linpack Benchmark.""" + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'usempi': True} + +source_urls = ['https://www.netlib.org/benchmark/%(namelower)s'] +sources = [SOURCELOWER_TAR_GZ] +# fix Make dependencies, so parallel build also works +patches = ['HPL_parallel-make.patch'] +checksums = [ + '32c5c17d22330e6f2337b681aded51637fb6008d3f0eb7c277b163fadd612830', # hpl-2.3.tar.gz + '2a5bf9c4f328049828ddecec7ba3f05a9e25d236f4212747c53bd22fea80c5e6', # HPL_parallel-make.patch +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-7.2-gompi-2023b.eb b/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-7.2-gompi-2023b.eb new file mode 100644 index 00000000000..89d55596e1d --- /dev/null +++ b/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-7.2-gompi-2023b.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'OSU-Micro-Benchmarks' +version = '7.2' + +homepage = 'https://mvapich.cse.ohio-state.edu/benchmarks/' +description = """OSU Micro-Benchmarks""" + +toolchain = {'name': 'gompi', 'version': '2023b'} +toolchainopts = {'usempi': True} + +source_urls = ['https://mvapich.cse.ohio-state.edu/download/mvapich/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['1a4e1f2aab0e65404b3414e23bd46616184b69b6231ce9313d9c630bd6e633c1'] + +local_benchmark_dirs = [ + 'libexec/osu-micro-benchmarks/mpi/%s' % x for x in ['collective', 'one-sided', 'pt2pt', 'startup'] +] +modextrapaths = {'PATH': local_benchmark_dirs} + +sanity_check_paths = { + 'files': [], + 'dirs': local_benchmark_dirs, +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/ScaLAPACK/ScaLAPACK-2.2.0-gompi-2023b-fb.eb b/easybuild/easyconfigs/s/ScaLAPACK/ScaLAPACK-2.2.0-gompi-2023b-fb.eb new file mode 100644 index 00000000000..c52e40f7733 --- /dev/null +++ b/easybuild/easyconfigs/s/ScaLAPACK/ScaLAPACK-2.2.0-gompi-2023b-fb.eb @@ -0,0 +1,40 @@ +name = 'ScaLAPACK' +version = '2.2.0' +versionsuffix = '-fb' + +homepage = 'https://www.netlib.org/scalapack/' +description = """The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines + redesigned for distributed memory MIMD parallel computers.""" + +toolchain = {'name': 'gompi', 'version': '2023b'} +toolchainopts = {'extra_fflags': '-lpthread', 'openmp': True, 'pic': True, 'usempi': True} + +source_urls = [homepage] +sources = [SOURCELOWER_TGZ] +patches = ['ScaLAPACK-%(version)s_fix-GCC-10.patch'] +checksums = [ + '40b9406c20735a9a3009d863318cb8d3e496fb073d201c5463df810e01ab2a57', # scalapack-2.2.0.tgz + 'f6bc3c6dee012ba4a696548a2e12b6aae932ce4fd5a142153b338839f52b5906', # ScaLAPACK-2.2.0_fix-GCC-10.patch +] + +builddependencies = [ + ('CMake', '3.27.6'), +] + +dependencies = [ + ('FlexiBLAS', '3.3.1'), +] + +# Config Opts based on AOCL User Guide: +# https://developer.amd.com/wp-content/resources/AOCL_User%20Guide_2.2.pdf + +configopts = '-DBUILD_SHARED_LIBS=ON ' +configopts += '-DBLAS_LIBRARIES="$EBROOTFLEXIBLAS/lib/libflexiblas.%s" ' % SHLIB_EXT +configopts += '-DLAPACK_LIBRARIES="$EBROOTFLEXIBLAS/lib/libflexiblas.%s" ' % SHLIB_EXT + +sanity_check_paths = { + 'files': ['lib/libscalapack.%s' % SHLIB_EXT, 'lib64/libscalapack.%s' % SHLIB_EXT], + 'dirs': ["lib", "lib64"], +} + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb new file mode 100644 index 00000000000..5c21cbe94a7 --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb @@ -0,0 +1,104 @@ +easyblock = 'PythonBundle' + +name = 'SciPy-bundle' +version = '2023.11' + +homepage = 'https://python.org/' +description = "Bundle of Python packages for scientific software" + +toolchain = {'name': 'gfbf', 'version': '2023b'} +toolchainopts = {'pic': True, 'lowopt': True} + +builddependencies = [ + ('hypothesis', '6.90.0'), + ('UnZip', '6.0'), + # scipy >= 1.9.0 uses Meson/Ninja + ('Meson', '1.2.3'), + ('meson-python', '0.15.0'), + ('Ninja', '1.11.1'), + ('pkgconf', '2.0.3'), # required by scipy +] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('pybind11', '2.11.1'), # required by scipy +] + +use_pip = True + +# order is important! +exts_list = [ + ('numpy', '1.26.2', { + 'patches': [ + 'numpy-1.22.3_disable-broken-override-test.patch', + ('numpy-1.25.1_fix-duplicate-avx512-symbols.patch', 'numpy/core/src/npysort/x86-simd-sort'), + 'numpy-1.25.1_fix-undefined-avx512-reference.patch', + 'numpy-1.25.1_fix-test_features.patch', + ], + 'checksums': [ + {'numpy-1.26.2.tar.gz': 'f65738447676ab5777f11e6bbbdb8ce11b785e105f690bc45966574816b6d3ea'}, + {'numpy-1.22.3_disable-broken-override-test.patch': + '9c589bb073b28b25ff45eb3c63c57966aa508dd8b318d0b885b6295271e4983c'}, + {'numpy-1.25.1_fix-duplicate-avx512-symbols.patch': + '8e32087c279b7193ae3507953480601200c9eff021819f3001d78c232c5852e6'}, + {'numpy-1.25.1_fix-undefined-avx512-reference.patch': + 'c4b66da93bf36071663f122de1ae668386cc6ab0154d21fa3e14ed7ddfe2a72c'}, + {'numpy-1.25.1_fix-test_features.patch': + '1c05ee5d105fe2f824416dd6dd5c64ed0c1cd710a002b4e6dbfafff19203adc5'}, + ], + }), + ('ply', '3.11', { + 'checksums': ['00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3'], + }), + ('gast', '0.5.4', { + 'checksums': ['9c270fe5f4b130969b54174de7db4e764b09b4f7f67ccfc32480e29f78348d97'], + }), + ('beniget', '0.4.1', { + 'checksums': ['75554b3b8ad0553ce2f607627dad3d95c60c441189875b98e097528f8e23ac0c'], + }), + ('pythran', '0.14.0', { + 'checksums': ['42f3473946205964844eff7f750e2541afb2006d53475d708f5ff2d048db89bd'], + }), + ('versioneer', '0.29', { + 'checksums': ['5ab283b9857211d61b53318b7c792cf68e798e765ee17c27ade9f6c924235731'], + }), + ('scipy', '1.11.4', { + 'patches': [ + 'scipy-1.11.1_disable-tests.patch', + 'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch', + ], + 'checksums': [ + {'scipy-1.11.4.tar.gz': '90a2b78e7f5733b9de748f589f09225013685f9b218275257f8a8168ededaeaa'}, + {'scipy-1.11.1_disable-tests.patch': '906bfb03397d94882ccdc1b93bc2c8e854e0e060c2d107c83042992394e6a4af'}, + {'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch': + '918c8e6fa8215d459126f267764c961bde729ea4a116c7f6287cddfdc58ffcea'}, + ], + 'enable_slow_tests': True, + 'ignore_test_result': False, + }), + ('numexpr', '2.8.7', { + 'checksums': ['596eeb3bbfebc912f4b6eaaf842b61ba722cebdb8bc42dfefa657d3a74953849'], + }), + ('Bottleneck', '1.3.7', { + 'checksums': ['e1467e373ad469da340ed0ff283214d6531cc08bfdca2083361a3aa6470681f8'], + }), + ('tzdata', '2023.3', { + 'checksums': ['11ef1e08e54acb0d4f95bdb1be05da659673de4acbd21bf9c69e94cc5e907a3a'], + }), + ('pandas', '2.1.3', { + 'checksums': ['22929f84bca106921917eb73c1521317ddd0a4c71b395bcf767a106e3494209f'], + 'preinstallopts': "export PANDAS_CI=0 && ", + }), + ('mpmath', '1.3.0', { + 'checksums': ['7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f'], + }), + ('deap', '1.4.1', { + 'modulename': 'deap.base', + 'checksums': ['cc01de9892dfa7d1bc9803dab28892fead177f0182c81db47360a240ead778ff'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lang' From 91e6ecf9f1dfb36ea9e46817f6957060f9275109 Mon Sep 17 00:00:00 2001 From: WilleBell Date: Thu, 21 Dec 2023 13:02:44 +0100 Subject: [PATCH 248/356] adding easyconfigs: GIMIC-2.2.1-foss-2022a.eb and patches: GIMIC-2.2.1_fix-install-prefix.patch --- .../g/GIMIC/GIMIC-2.2.1-foss-2022a.eb | 49 +++++++++++++++++++ .../GIMIC-2.2.1_fix-install-prefix.patch | 10 ++++ 2 files changed, 59 insertions(+) create mode 100644 easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb create mode 100644 easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1_fix-install-prefix.patch diff --git a/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb b/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb new file mode 100644 index 00000000000..753e2426e13 --- /dev/null +++ b/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb @@ -0,0 +1,49 @@ +easyblock = "CMakeMake" + +name = 'GIMIC' +version = '2.2.1' + +homepage = 'https://gimic.readthedocs.io' +description = """The GIMIC program calculates magnetically induced currents in molecules. + You need to provide this program with a density matrix in atomic-orbital (AO) basis + and three (effective) magnetically perturbed AO density matrices in the proper format. +Currently ACES2, Turbomole, G09, QChem, FERMION++, and LSDalton can produce these matrices.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +github_account = 'qmcurrents' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = ['GIMIC-%(version)s_fix-install-prefix.patch'] +checksums = [ + {'v2.2.1.tar.gz': '57672db21f4038b13743e9cca7861a877f8221e5929d931210fa7114284e0731'}, + {'GIMIC-2.2.1_fix-install-prefix.patch': '6e09bcebc2756a00a75ff6b16cde52124a339bdeb9781b1da004618837ee68b8'}, +] + +builddependencies = [ + ('CMake', '3.24.3'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('PyYAML', '6.0'), +] + +# allow mismatches (old GCC behaviour up to version 9) +preconfigopts = 'FCFLAGS="$FCFLAGS -fallow-argument-mismatch" ' +# enable OpenMP and disable MPI (see qmcurrents/gimic#169) +configopts = '-DENABLE_OPENMP=ON -DENABLE_MPI=OFF ' +# enable numerical libraries in this toolchain +configopts += '-DENABLE_MKL_FLAG=OFF -DENABLE_BLAS=ON -DENABLE_LAPACK=ON ' + +sanity_check_paths = { + 'files': ['bin/gimic', 'lib/libgimic2.a'], + 'dirs': ['include', 'bin/QCTools', 'lib/python/site-packages'], +} + +modextrapaths = { + 'PYTHONPATH': ['lib/python/site-packages', 'bin/QCTools'], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1_fix-install-prefix.patch b/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1_fix-install-prefix.patch new file mode 100644 index 00000000000..8a3a505b28c --- /dev/null +++ b/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1_fix-install-prefix.patch @@ -0,0 +1,10 @@ +# Obey CMAKE_INSTALL_PREFIX +# July 10th 2018 by B. Hajgato (Free University Brussels - VUB) +--- cmake/custom/own.cmake.orig 2018-04-20 09:44:47.000000000 +0200 ++++ cmake/custom/own.cmake 2018-07-10 16:08:05.999455805 +0200 +@@ -1,4 +1,4 @@ +-set(CMAKE_INSTALL_PREFIX ${PROJECT_BINARY_DIR}) ++#set(CMAKE_INSTALL_PREFIX ${PROJECT_BINARY_DIR}) + + include(GNUInstallDirs) + From 39cd6a9d7bfb04f25830045047bacdd777295fd3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Paul=20J=C3=A4hne?= Date: Thu, 21 Dec 2023 13:56:05 +0100 Subject: [PATCH 249/356] adding easyconfigs: DIA-NN-1.8.1.eb --- .../easyconfigs/d/DIA-NN/DIA-NN-1.8.1.eb | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 easybuild/easyconfigs/d/DIA-NN/DIA-NN-1.8.1.eb diff --git a/easybuild/easyconfigs/d/DIA-NN/DIA-NN-1.8.1.eb b/easybuild/easyconfigs/d/DIA-NN/DIA-NN-1.8.1.eb new file mode 100644 index 00000000000..d3877dedc29 --- /dev/null +++ b/easybuild/easyconfigs/d/DIA-NN/DIA-NN-1.8.1.eb @@ -0,0 +1,25 @@ +easyblock = 'Tarball' + +name = 'DIA-NN' +version = '1.8.1' + +homepage = 'https://github.com/vdemichev/DiaNN' +description = """DIA-NN is a universal software for data-independent acquisition (DIA) + proteomics data processing.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/vdemichev/DiaNN/releases/download/%(version)s'] +sources = ['diann_%(version)s.tar.gz'] +checksums = ['fb239a1191ae9f3aa497d4e933ef9435bd9fd4795222f100530d1e22e550bb2c'] + +sanity_check_paths = { + 'files': ['diann-%(version)s'], + 'dirs': [], +} + +modextrapaths = {'PATH': ''} + +sanity_check_commands = ['diann-%(version)s'] + +moduleclass = 'bio' From 20dec686c70e05f40329c77a8ef13613e19b582d Mon Sep 17 00:00:00 2001 From: Leonard Nielsen <55690238+lcniel@users.noreply.github.com> Date: Thu, 21 Dec 2023 15:08:56 +0100 Subject: [PATCH 250/356] Update and rename XCrySDen-1.6.2-intel-2021b.eb to XCrySDen-1.6.2-intel-compilers-2021.4.0.eb --- ...ntel-2021b.eb => XCrySDen-1.6.2-intel-compilers-2021.4.0.eb} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename easybuild/easyconfigs/x/XCrySDen/{XCrySDen-1.6.2-intel-2021b.eb => XCrySDen-1.6.2-intel-compilers-2021.4.0.eb} (95%) diff --git a/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-compilers-2021.4.0.eb similarity index 95% rename from easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb rename to easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-compilers-2021.4.0.eb index 94909a3276d..4cd4230723d 100644 --- a/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb +++ b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-compilers-2021.4.0.eb @@ -13,7 +13,7 @@ It also possesses some tools for analysis of properties in reciprocal space such of k-paths in the Brillouin zone for the band-structure plots, and visualisation of Fermi surfaces. """ -toolchain = {'name': 'intel-compilers', 'version': '2021b'} +toolchain = {'name': 'intel-compilers', 'version': '2021.4.0'} source_urls = ["http://www.xcrysden.org/download/"] sources = [SOURCELOWER_TAR_GZ] From 1015ddc5c5345d68ea0881f19335c5c6fa3fedd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Thu, 21 Dec 2023 16:00:21 +0100 Subject: [PATCH 251/356] adding easyconfigs: ALL-0.9.2-foss-2023a.eb --- .../easyconfigs/a/ALL/ALL-0.9.2-foss-2023a.eb | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 easybuild/easyconfigs/a/ALL/ALL-0.9.2-foss-2023a.eb diff --git a/easybuild/easyconfigs/a/ALL/ALL-0.9.2-foss-2023a.eb b/easybuild/easyconfigs/a/ALL/ALL-0.9.2-foss-2023a.eb new file mode 100644 index 00000000000..882d3b0a27d --- /dev/null +++ b/easybuild/easyconfigs/a/ALL/ALL-0.9.2-foss-2023a.eb @@ -0,0 +1,41 @@ +easyblock = 'CMakeMake' + +name = 'ALL' +version = '0.9.2' + +homepage = 'https://gitlab.jsc.fz-juelich.de/SLMS/loadbalancing' +description = """A Load Balancing Library (ALL) aims to provide an easy way to include dynamic +domain-based load balancing into particle based simulation codes. The library +is developed in the Simulation Laboratory Molecular Systems of the Jülich +Supercomputing Centre at Forschungszentrum Jülich.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True} + +source_urls = ["https://gitlab.jsc.fz-juelich.de/SLMS/loadbalancing/-/archive/v%(version)s/"] +sources = ['loadbalancing-v%(version)s.tar.gz'] +checksums = ['2b4ef52c604c3c0c467712d0912a33c82177610b67edc14df1e034779c6ddb71'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Boost', '1.82.0'), # only needed for tests +] + +dependencies = [ + ('VTK', '9.3.0'), +] + +configopts = '-DCM_ALL_FORTRAN=ON -DCM_ALL_USE_F08=ON -DCM_ALL_VORONOI=ON -DCM_ALL_VTK_OUTPUT=ON ' +configopts += '-DCM_ALL_TESTS=ON -DCM_ALL_AUTO_DOC=OFF -DVTK_DIR=$EBROOTVTK ' + +runtest = 'test' + +sanity_check_paths = { + 'files': [ + 'include/ALL.hpp', 'include/ALL_Voronoi.hpp', 'lib/all_module.mod', + 'lib/libALL.a', 'lib/libALL_fortran.a' + ], + 'dirs': ['lib/cmake'], +} + +moduleclass = 'lib' From a88bdca43fe83d284a33ed16eca4942876994c64 Mon Sep 17 00:00:00 2001 From: Leonard Nielsen <55690238+lcniel@users.noreply.github.com> Date: Thu, 21 Dec 2023 16:31:21 +0100 Subject: [PATCH 252/356] Update XCrySDen-1.6.2-intel-compilers-2021.4.0.eb --- .../x/XCrySDen/XCrySDen-1.6.2-intel-compilers-2021.4.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-compilers-2021.4.0.eb b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-compilers-2021.4.0.eb index 4cd4230723d..1efe81bd188 100644 --- a/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-compilers-2021.4.0.eb +++ b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-compilers-2021.4.0.eb @@ -13,7 +13,7 @@ It also possesses some tools for analysis of properties in reciprocal space such of k-paths in the Brillouin zone for the band-structure plots, and visualisation of Fermi surfaces. """ -toolchain = {'name': 'intel-compilers', 'version': '2021.4.0'} +toolchain = {'name': 'intel', 'version': '2021b'} source_urls = ["http://www.xcrysden.org/download/"] sources = [SOURCELOWER_TAR_GZ] From 8fac35abe3903b64446062ede88afa6f1e626b9e Mon Sep 17 00:00:00 2001 From: Samuel Moors Date: Fri, 22 Dec 2023 15:17:24 +0100 Subject: [PATCH 253/356] adding easyconfigs: q2-krona-20220124-GCCcore-11.3.0.eb --- .../q2-krona-20220124-GCCcore-11.3.0.eb | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 easybuild/easyconfigs/q/q2-krona/q2-krona-20220124-GCCcore-11.3.0.eb diff --git a/easybuild/easyconfigs/q/q2-krona/q2-krona-20220124-GCCcore-11.3.0.eb b/easybuild/easyconfigs/q/q2-krona/q2-krona-20220124-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..1b0746297b3 --- /dev/null +++ b/easybuild/easyconfigs/q/q2-krona/q2-krona-20220124-GCCcore-11.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'PythonBundle' + +name = 'q2-krona' +version = '20220124' +_commit = 'd34c526' + +homepage = 'https://library.qiime2.org/plugins/q2-krona/39/' +description = """QIIME2 plugin for creating Krona plots""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('Python', '3.10.4'), +] + +use_pip = True + +exts_list = [ + (name, version, { + 'sources': [{ + 'source_urls': ['https://github.com/kaanb93/q2-krona/archive'], + 'download_filename': '%s.tar.gz' % _commit, + 'filename': SOURCE_TAR_GZ, + 'checksums': ['cf8f5bf6b10e89d35fbfa4fc401b965396c03ff86a964dead8634205171a1ed9'], + }], + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' From c11247eda068fcc7c10997fa868af10817190542 Mon Sep 17 00:00:00 2001 From: Samuel Moors Date: Fri, 22 Dec 2023 15:21:15 +0100 Subject: [PATCH 254/356] fix checksum location --- .../easyconfigs/q/q2-krona/q2-krona-20220124-GCCcore-11.3.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/q/q2-krona/q2-krona-20220124-GCCcore-11.3.0.eb b/easybuild/easyconfigs/q/q2-krona/q2-krona-20220124-GCCcore-11.3.0.eb index 1b0746297b3..a3b32792201 100644 --- a/easybuild/easyconfigs/q/q2-krona/q2-krona-20220124-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/q/q2-krona/q2-krona-20220124-GCCcore-11.3.0.eb @@ -25,8 +25,8 @@ exts_list = [ 'source_urls': ['https://github.com/kaanb93/q2-krona/archive'], 'download_filename': '%s.tar.gz' % _commit, 'filename': SOURCE_TAR_GZ, - 'checksums': ['cf8f5bf6b10e89d35fbfa4fc401b965396c03ff86a964dead8634205171a1ed9'], }], + 'checksums': ['cf8f5bf6b10e89d35fbfa4fc401b965396c03ff86a964dead8634205171a1ed9'], }), ] From a725af946e02038bbf660eb6e5b02a39febfad01 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 22 Dec 2023 16:47:56 +0100 Subject: [PATCH 255/356] adding easyconfigs: Gdspy-1.6.13-foss-2022a.eb --- .../g/Gdspy/Gdspy-1.6.13-foss-2022a.eb | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 easybuild/easyconfigs/g/Gdspy/Gdspy-1.6.13-foss-2022a.eb diff --git a/easybuild/easyconfigs/g/Gdspy/Gdspy-1.6.13-foss-2022a.eb b/easybuild/easyconfigs/g/Gdspy/Gdspy-1.6.13-foss-2022a.eb new file mode 100644 index 00000000000..6890ad35f69 --- /dev/null +++ b/easybuild/easyconfigs/g/Gdspy/Gdspy-1.6.13-foss-2022a.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonBundle' + +name = 'Gdspy' +version = '1.6.13' + +homepage = 'https://github.com/heitzmann/gdspy' +description = "Gdspy is a Python module for creation and manipulation of GDSII stream files." + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), +] + +use_pip = True + +exts_list = [ + ('gdspy', version, { + 'sources': ['%(namelower)s-%(version)s.zip'], + 'checksums': ['38c61a7267f90767d90b8fcdda96c7a629df26e06f7153084c773f3d6363f4f0'], + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' From 5822b3c3450e84ac9492ee39dac8c829bb900552 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20=C3=96hman?= Date: Fri, 22 Dec 2023 17:59:25 +0000 Subject: [PATCH 256/356] manually add checksums --- .../timm-0.6.13-foss-2022a-CUDA-11.7.0.eb | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/easybuild/easyconfigs/t/timm/timm-0.6.13-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/t/timm/timm-0.6.13-foss-2022a-CUDA-11.7.0.eb index 736f977f3d7..2aa79026e28 100644 --- a/easybuild/easyconfigs/t/timm/timm-0.6.13-foss-2022a-CUDA-11.7.0.eb +++ b/easybuild/easyconfigs/t/timm/timm-0.6.13-foss-2022a-CUDA-11.7.0.eb @@ -68,6 +68,47 @@ crates = [ ('windows_x86_64_gnullvm', '0.48.0'), ('windows_x86_64_msvc', '0.48.0'), ] +checksums = [ + {'autocfg-1.1.0.tar.gz': 'd468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'indoc-1.0.9.tar.gz': 'bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306'}, + {'itoa-1.0.9.tar.gz': 'af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38'}, + {'libc-0.2.147.tar.gz': 'b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3'}, + {'lock_api-0.4.10.tar.gz': 'c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16'}, + {'memmap2-0.5.10.tar.gz': '83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327'}, + {'memoffset-0.8.0.tar.gz': 'd61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1'}, + {'once_cell-1.18.0.tar.gz': 'dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d'}, + {'parking_lot-0.12.1.tar.gz': '3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f'}, + {'parking_lot_core-0.9.8.tar.gz': '93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447'}, + {'proc-macro2-1.0.66.tar.gz': '18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9'}, + {'pyo3-0.18.3.tar.gz': 'e3b1ac5b3731ba34fdaa9785f8d74d17448cd18f30cf19e0c7e7b1fdb5272109'}, + {'pyo3-build-config-0.18.3.tar.gz': '9cb946f5ac61bb61a5014924910d936ebd2b23b705f7a4a3c40b05c720b079a3'}, + {'pyo3-ffi-0.18.3.tar.gz': 'fd4d7c5337821916ea2a1d21d1092e8443cf34879e53a0ac653fbb98f44ff65c'}, + {'pyo3-macros-0.18.3.tar.gz': 'a9d39c55dab3fc5a4b25bbd1ac10a2da452c4aca13bb450f22818a002e29648d'}, + {'pyo3-macros-backend-0.18.3.tar.gz': '97daff08a4c48320587b5224cc98d609e3c27b6d437315bd40b605c98eeb5918'}, + {'quote-1.0.31.tar.gz': '5fe8a65d69dd0808184ebb5f836ab526bb259db23c657efa38711b1072ee47f0'}, + {'redox_syscall-0.3.5.tar.gz': '567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29'}, + {'ryu-1.0.15.tar.gz': '1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741'}, + {'scopeguard-1.2.0.tar.gz': '94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49'}, + {'serde-1.0.171.tar.gz': '30e27d1e4fd7659406c492fd6cfaf2066ba8773de45ca75e855590f856dc34a9'}, + {'serde_derive-1.0.171.tar.gz': '389894603bd18c46fa56231694f8d827779c0951a667087194cf9de94ed24682'}, + {'serde_json-1.0.103.tar.gz': 'd03b412469450d4404fe8499a268edd7f8b79fecb074b0d812ad64ca21f4031b'}, + {'smallvec-1.11.0.tar.gz': '62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.26.tar.gz': '45c3457aacde3c65315de5031ec191ce46604304d2446e803d71ade03308d970'}, + {'target-lexicon-0.12.10.tar.gz': '1d2faeef5759ab89935255b1a4cd98e0baf99d1085e37d36599c625dac49ae8e'}, + {'unicode-ident-1.0.11.tar.gz': '301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c'}, + {'unindent-0.1.11.tar.gz': 'e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c'}, + {'windows-targets-0.48.1.tar.gz': '05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f'}, + {'windows_aarch64_gnullvm-0.48.0.tar.gz': '91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc'}, + {'windows_aarch64_msvc-0.48.0.tar.gz': 'b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3'}, + {'windows_i686_gnu-0.48.0.tar.gz': '622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241'}, + {'windows_i686_msvc-0.48.0.tar.gz': '4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00'}, + {'windows_x86_64_gnu-0.48.0.tar.gz': 'ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1'}, + {'windows_x86_64_gnullvm-0.48.0.tar.gz': '7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953'}, + {'windows_x86_64_msvc-0.48.0.tar.gz': '1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a'}, +] use_pip = True From 644381196ce68ce79e3831ccfcecc7709958dbeb Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Sat, 23 Dec 2023 11:26:58 +0100 Subject: [PATCH 257/356] take into account CargoPythonBundle in easyconfig tests --- test/easyconfigs/easyconfigs.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index b944e5e2c3c..f041f7f7b7d 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -979,8 +979,9 @@ def test_pr_sha256_checksums(self): # is updated in place (sources for components are added to the 'parent' sources) in Bundle's __init__; # therefore, we need to reset 'sources' to an empty list here if Bundle is used... # likewise for 'patches' and 'checksums' + bundle_easyblocks = ['Bundle', 'CargoPythonBundle', 'PythonBundle', 'EB_OpenSSL_wrapper'] for ec in self.changed_ecs: - if ec['easyblock'] in ['Bundle', 'PythonBundle', 'EB_OpenSSL_wrapper'] or ec['name'] in ['Clang-AOMP']: + if ec['easyblock'] in bundle_easyblocks or ec['name'] in ['Clang-AOMP']: ec['sources'] = [] ec['patches'] = [] ec['checksums'] = [] @@ -1045,13 +1046,14 @@ def test_pr_python_packages(self): failing_checks.append("'source_urls' should not be defined when using the default value " "in %s" % ec_fn) - # use_pip should be set when using PythonPackage or PythonBundle (except for whitelisted easyconfigs) - if easyblock in ['PythonBundle', 'PythonPackage']: + # use_pip should be set when using PythonPackage or PythonBundle, + # or an easyblock that derives from it (except for whitelisted easyconfigs) + if easyblock in ['CargoPythonBundle', 'CargoPythonPackage', 'PythonBundle', 'PythonPackage']: if use_pip is None and not any(re.match(regex, ec_fn) for regex in whitelist_pip): failing_checks.append("'use_pip' should be set in %s" % ec_fn) # download_dep_fail is enabled automatically in PythonBundle easyblock, so shouldn't be set - if easyblock == 'PythonBundle': + if easyblock in ['CargoPythonBundle', 'PythonBundle']: if download_dep_fail or exts_download_dep_fail: fail = "'*download_dep_fail' should not be set in %s since PythonBundle easyblock is used" % ec_fn failing_checks.append(fail) @@ -1103,7 +1105,7 @@ def test_pr_python_packages(self): failing_checks.append(msg) # require that running of "pip check" during sanity check is enabled via sanity_pip_check - if easyblock in ['PythonBundle', 'PythonPackage']: + if easyblock in ['CargoPythonBundle', 'CargoPythonPackage', 'PythonBundle', 'PythonPackage']: sanity_pip_check = ec.get('sanity_pip_check') or exts_default_options.get('sanity_pip_check') if not sanity_pip_check and not any(re.match(regex, ec_fn) for regex in whitelist_pip_check): failing_checks.append("sanity_pip_check should be enabled in %s" % ec_fn) @@ -1140,8 +1142,8 @@ def test_pr_sanity_check_paths(self): # including CargoPythonPackage, CMakePythonPackage, GoPackage, JuliaBundle, PerlBundle, # PythonBundle & PythonPackage; # BuildEnv, ModuleRC and Toolchain easyblocks doesn't install anything so there is nothing to check. - whitelist = ['BuildEnv', 'CargoPythonPackage', 'CMakePythonPackage', 'CrayToolchain', 'GoPackage', - 'JuliaBundle', 'ModuleRC', 'PerlBundle', 'PythonBundle', 'PythonPackage', 'Toolchain'] + whitelist = ['BuildEnv', 'CargoPythonBundle', 'CargoPythonPackage', 'CMakePythonPackage', 'CrayToolchain', + 'GoPackage', 'JuliaBundle', 'ModuleRC', 'PerlBundle', 'PythonBundle', 'PythonPackage', 'Toolchain'] # Bundles of dependencies without files of their own # Autotools: Autoconf + Automake + libtool, (recent) GCC: GCCcore + binutils, CUDA: GCC + CUDAcore, # CESM-deps: Python + Perl + netCDF + ESMF + git, FEniCS: DOLFIN and co, From 7846fb9fd682ca891a49b269eb5dfc807d13a3aa Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Sat, 23 Dec 2023 19:04:43 +0100 Subject: [PATCH 258/356] adding easyconfigs: ITK-5.3.0-foss-2023a.eb, SimpleITK-2.3.1-foss-2023a.eb and patches: ITK-5.3.0_add-vtk-include-dir.patch, ITK-5.3.0_fix-compatibility-swig-4-1.patch --- .../easyconfigs/i/ITK/ITK-5.3.0-foss-2023a.eb | 78 +++++++++++++++++++ .../i/ITK/ITK-5.3.0_add-vtk-include-dir.patch | 13 ++++ ...ITK-5.3.0_fix-compatibility-swig-4-1.patch | 28 +++++++ .../s/SimpleITK/SimpleITK-2.3.1-foss-2023a.eb | 54 +++++++++++++ 4 files changed, 173 insertions(+) create mode 100644 easybuild/easyconfigs/i/ITK/ITK-5.3.0-foss-2023a.eb create mode 100644 easybuild/easyconfigs/i/ITK/ITK-5.3.0_add-vtk-include-dir.patch create mode 100644 easybuild/easyconfigs/i/ITK/ITK-5.3.0_fix-compatibility-swig-4-1.patch create mode 100644 easybuild/easyconfigs/s/SimpleITK/SimpleITK-2.3.1-foss-2023a.eb diff --git a/easybuild/easyconfigs/i/ITK/ITK-5.3.0-foss-2023a.eb b/easybuild/easyconfigs/i/ITK/ITK-5.3.0-foss-2023a.eb new file mode 100644 index 00000000000..e51e8bbd718 --- /dev/null +++ b/easybuild/easyconfigs/i/ITK/ITK-5.3.0-foss-2023a.eb @@ -0,0 +1,78 @@ +# Contributors: +# Fenglai Liu (fenglai@accre.vanderbilt.edu) - Vanderbilt University +# Alex Domingo (alex.domingo.toro@vub.be) - Vrije Universiteit Brussel (VUB) +# Denis Kristak (INUITS) +# +easyblock = 'CMakeMake' + +name = 'ITK' +version = '5.3.0' + +homepage = 'https://itk.org' +description = """Insight Segmentation and Registration Toolkit (ITK) provides + an extensive suite of software tools for registering and segmenting + multidimensional imaging data.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True, 'cstd': 'c++11'} + +github_account = 'InsightSoftwareConsortium' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'ITK-5.3.0_add-vtk-include-dir.patch', + 'ITK-5.3.0_fix-compatibility-swig-4-1.patch', +] +checksums = [ + {'v5.3.0.tar.gz': '64e7e8094a5023c8f68ee042459d6319581fadb35e2fe90a4ae230ce36369db1'}, + {'ITK-5.3.0_add-vtk-include-dir.patch': 'df7e834a024db5d1a1459d898bd43a044351e29759ab0bf69ce03d64da95b3f7'}, + {'ITK-5.3.0_fix-compatibility-swig-4-1.patch': '0138878d96e90d6bfdc81fd4f2b5ec413d61c1de666a16842b417c2686ebf506'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Bison', '3.8.2'), + ('Eigen', '3.4.0'), + ('SWIG', '4.1.1'), + ('Perl', '5.36.1'), +] +dependencies = [ + ('Python', '3.11.3'), + ('double-conversion', '3.3.0'), + ('expat', '2.5.0'), + ('HDF5', '1.14.0'), + ('libjpeg-turbo', '2.1.5.1'), + ('libpng', '1.6.39'), + ('LibTIFF', '4.5.0'), + ('VTK', '9.3.0'), + ('zlib', '1.2.13'), +] + +# Features +configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' +configopts += '-DModule_ITKReview=ON -DModule_ITKVtkGlue=ON -DModule_SimpleITKFilters=ON ' +# Enable Python bindings +configopts += '-DITK_WRAP_PYTHON:BOOL=ON -DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' +configopts += '-DSWIG_EXECUTABLE=$EBROOTSWIG/bin/swig -DSWIG_DIR=$EBROOTSWIG ' +configopts += '-DPY_SITE_PACKAGES_PATH=%(installdir)s/lib/python%(pyshortver)s/site-packages ' +# Dependencies from EB +local_sys_deps = ['DOUBLECONVERSION', 'EIGEN', 'EXPAT', 'FFTW', 'HDF5', 'JPEG', 'PNG', 'SWIG', 'TIFF', 'ZLIB'] +local_sys_cmake = ['-DITK_USE_SYSTEM_%s=ON' % d for d in local_sys_deps] +configopts += ' '.join(local_sys_cmake) + +prebuildopts = "LC_ALL=C " + +local_lib_names = ['ITKCommon', 'ITKIOHDF5', 'ITKIOJPEG', 'ITKIOPNG', 'ITKIOTIFF', + 'ITKReview', 'ITKVTK', 'ITKVtkGlue', 'itkSimpleITKFilters'] + +sanity_check_paths = { + 'files': ['bin/itkTestDriver'] + + ['lib/lib%s-%%(version_major)s.%%(version_minor)s.%s' % (l, SHLIB_EXT) for l in local_lib_names], + 'dirs': ['include/ITK-%(version_major)s.%(version_minor)s', 'lib/python%(pyshortver)s/site-packages', 'share'], +} + +sanity_check_commands = ["python -c 'import itk'"] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/i/ITK/ITK-5.3.0_add-vtk-include-dir.patch b/easybuild/easyconfigs/i/ITK/ITK-5.3.0_add-vtk-include-dir.patch new file mode 100644 index 00000000000..a484240a1de --- /dev/null +++ b/easybuild/easyconfigs/i/ITK/ITK-5.3.0_add-vtk-include-dir.patch @@ -0,0 +1,13 @@ +Manually add the include directory of VTK +dirty fix for issue https://github.com/InsightSoftwareConsortium/ITK/issues/4375 +author: Alex Domingo (Vrije Universiteit Brussel) +--- Wrapping/CMakeLists.txt.orig 2023-12-21 13:41:44.845008000 +0100 ++++ Wrapping/CMakeLists.txt 2023-12-21 13:42:14.794328946 +0100 +@@ -112,6 +112,7 @@ + ############################################################################### + # Configure specific wrapper modules + ############################################################################### ++include_directories("$ENV{EBROOTVTK}/include/vtk-9.3/") + + unset(WRAP_ITK_MODULES CACHE) + diff --git a/easybuild/easyconfigs/i/ITK/ITK-5.3.0_fix-compatibility-swig-4-1.patch b/easybuild/easyconfigs/i/ITK/ITK-5.3.0_fix-compatibility-swig-4-1.patch new file mode 100644 index 00000000000..d545817a813 --- /dev/null +++ b/easybuild/easyconfigs/i/ITK/ITK-5.3.0_fix-compatibility-swig-4-1.patch @@ -0,0 +1,28 @@ +From d2361b89fefb07b669b4cf67257fc3bf06afd9f5 Mon Sep 17 00:00:00 2001 +From: Nicklas Larsson +Date: Mon, 18 Sep 2023 20:12:18 +0200 +Subject: [PATCH] BUG: define SWIGPY_SLICEOBJECT + +SWIG v 4.1.0+ use PyObject instead of PySliceObject after +https://github.com/swig/swig/commit/e683168018558f4e73dc26629c4bbec224d23438 + +This adds the definition of SWIGPY_SLICEOBJECT. +--- + Wrapping/Generators/Python/module_ext.i.in | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Wrapping/Generators/Python/module_ext.i.in b/Wrapping/Generators/Python/module_ext.i.in +index 53f05530135..826d336348a 100644 +--- a/Wrapping/Generators/Python/module_ext.i.in ++++ b/Wrapping/Generators/Python/module_ext.i.in +@@ -6,8 +6,10 @@ + + #if PY_VERSION_HEX >= 0x03020000 + # define SWIGPY_SLICE_ARG(obj) ((PyObject*) (obj)) ++# define SWIGPY_SLICEOBJECT PyObject + #else + # define SWIGPY_SLICE_ARG(obj) ((PySliceObject*) (obj)) ++# define SWIGPY_SLICEOBJECT PySliceObject + #endif + %} + diff --git a/easybuild/easyconfigs/s/SimpleITK/SimpleITK-2.3.1-foss-2023a.eb b/easybuild/easyconfigs/s/SimpleITK/SimpleITK-2.3.1-foss-2023a.eb new file mode 100644 index 00000000000..c1f0519dd14 --- /dev/null +++ b/easybuild/easyconfigs/s/SimpleITK/SimpleITK-2.3.1-foss-2023a.eb @@ -0,0 +1,54 @@ +easyblock = 'CMakeMake' + +name = 'SimpleITK' +version = '2.3.1' + +homepage = 'https://www.simpleitk.org' +description = """SimpleITK is a simplified programming interface to the algorithms and data structures of + the Insight Toolkit (ITK).""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/%(name)s/%(name)s/releases/download/v%(version)s'] +sources = [SOURCE_TAR_GZ] +checksums = ['7498c1bd3ae8218027c17bcefd2346b16eda6f2a009c0b9f344bd163c4715870'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('SWIG', '4.1.1'), + ('Lua', '5.4.6'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('ITK', '5.3.0'), + ('scikit-build', '0.17.6'), +] + +# Enable Python bindings +configopts = "-DWRAP_DEFAULT:BOOL=OFF -DWRAP_PYTHON=BOOL:ON " + +# Install Python module as extension +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} +exts_list = [ + (name, version, { + 'modulename': '%(name)s', + 'source_urls': ['https://github.com/%(name)s/%(name)s/releases/download/v%(version)s'], + 'start_dir': '%(builddir)s/easybuild_obj/Wrapping/Python', + 'checksums': ['7498c1bd3ae8218027c17bcefd2346b16eda6f2a009c0b9f344bd163c4715870'], + }), +] + +modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']} + +sanity_check_paths = { + 'files': ['lib/libSimpleITK_ITKBiasCorrection-%(version_major_minor)s.a'], + 'dirs': ['include/%(name)s-%(version_major_minor)s', 'lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' From 844fc7194b359c12e0a71363f3d6682cccc17536 Mon Sep 17 00:00:00 2001 From: WilleBell Date: Tue, 26 Dec 2023 13:49:06 +0100 Subject: [PATCH 259/356] replace pyparsing with compatible version --- .../g/GIMIC/GIMIC-2.2.1-foss-2022a.eb | 24 +++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb b/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb index 753e2426e13..f41a09d3499 100644 --- a/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb +++ b/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb @@ -36,14 +36,30 @@ preconfigopts = 'FCFLAGS="$FCFLAGS -fallow-argument-mismatch" ' configopts = '-DENABLE_OPENMP=ON -DENABLE_MPI=OFF ' # enable numerical libraries in this toolchain configopts += '-DENABLE_MKL_FLAG=OFF -DENABLE_BLAS=ON -DENABLE_LAPACK=ON ' +configopts += '-DPYTHON_VERSION=%(pyshortver)s ' -sanity_check_paths = { - 'files': ['bin/gimic', 'lib/libgimic2.a'], - 'dirs': ['include', 'bin/QCTools', 'lib/python/site-packages'], +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, } +exts_list = [ + ('pyparsing', '2.4.7', { + 'checksums': ['c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1'], + }), +] modextrapaths = { - 'PYTHONPATH': ['lib/python/site-packages', 'bin/QCTools'], + 'PYTHONPATH': ['bin/QCTools', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_paths = { + 'files': ['bin/gimic', 'lib/libgimic2.a'], + 'dirs': ['include', 'bin/QCTools', 'lib/python%(pyshortver)s/site-packages'], } +sanity_check_commands = ['gimic --help'] + moduleclass = 'chem' From 75b2fd73988ff6a70aea4e2c86b787dc0e5b481f Mon Sep 17 00:00:00 2001 From: SebastianAchilles Date: Wed, 27 Dec 2023 12:25:57 +0100 Subject: [PATCH 260/356] Update description for fplll-5.4.5-GCCcore-11.3.0.eb --- easybuild/easyconfigs/f/fplll/fplll-5.4.5-GCCcore-11.3.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/f/fplll/fplll-5.4.5-GCCcore-11.3.0.eb b/easybuild/easyconfigs/f/fplll/fplll-5.4.5-GCCcore-11.3.0.eb index aaabafc9a2f..229958da639 100644 --- a/easybuild/easyconfigs/f/fplll/fplll-5.4.5-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/f/fplll/fplll-5.4.5-GCCcore-11.3.0.eb @@ -6,7 +6,7 @@ version = '5.4.5' homepage = 'https://github.com/fplll/fplll' description = """fplll contains implementations of several lattice algorithms. The implementation relies on floating-point orthogonalization, and the 1982 paper from -Lenstra, Lenstra Jr. and Lovasz (LLL( is central to the code, hence the name.""" +Lenstra, Lenstra Jr. and Lovasz (LLL) is central to the code, hence the name.""" toolchain = {'name': 'GCCcore', 'version': '11.3.0'} From 20938ff92feccbc4badd25eaa143b9c3b818f90a Mon Sep 17 00:00:00 2001 From: Mikhail Vorobyov Date: Wed, 27 Dec 2023 19:43:12 +0300 Subject: [PATCH 261/356] Update easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb Accepting build dependencies and code style fixes. Co-authored-by: Jasper Grimm <65227842+jfgrimm@users.noreply.github.com> --- easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb index 488ff44fd6a..6a3bf597925 100644 --- a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb @@ -18,10 +18,13 @@ version = '2.1.9' homepage = 'http://iperf2.sourceforge.net/' description = """Iperf-2.1.9: TCP and UDP bandwidth performance measurement tool""" +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + sources = [SOURCELOWER_TAR_GZ] source_urls = [('http://sourceforge.net/projects/iperf2/files', 'download')] checksums = ['5c0771aab00ef14520013aef01675977816e23bb8f5d9fde016f90eb2f1be788'] -toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +builddependencies = [('binutils', '2.35')] sanity_check_paths = { 'files': ['bin/iperf'], From 11a85fb578d98b66ac598261aa3046daea93d7c9 Mon Sep 17 00:00:00 2001 From: Mikhail Vorobyov Date: Wed, 27 Dec 2023 19:43:12 +0300 Subject: [PATCH 262/356] Update easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb Co-authored-by: Sam Moors --- easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb index 6a3bf597925..3c1a46a9ecb 100644 --- a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb @@ -15,7 +15,7 @@ easyblock = 'ConfigureMake' name = 'iperf' version = '2.1.9' -homepage = 'http://iperf2.sourceforge.net/' +homepage = 'https://sourceforge.net/projects/iperf2/' description = """Iperf-2.1.9: TCP and UDP bandwidth performance measurement tool""" toolchain = {'name': 'GCCcore', 'version': '10.2.0'} From a6547e404704f1c725ce4dc904475c304e237e39 Mon Sep 17 00:00:00 2001 From: Mikhail Vorobyov Date: Wed, 27 Dec 2023 19:43:12 +0300 Subject: [PATCH 263/356] Update easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb Substitute a variable with more general one. Co-authored-by: Sam Moors --- easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb index 3c1a46a9ecb..857c5c3a6d8 100644 --- a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb @@ -20,7 +20,7 @@ description = """Iperf-2.1.9: TCP and UDP bandwidth performance measurement tool toolchain = {'name': 'GCCcore', 'version': '10.2.0'} -sources = [SOURCELOWER_TAR_GZ] +sources = [SOURCE_TAR_GZ] source_urls = [('http://sourceforge.net/projects/iperf2/files', 'download')] checksums = ['5c0771aab00ef14520013aef01675977816e23bb8f5d9fde016f90eb2f1be788'] From a4cfe1556bd054af1ee4276988bd3ba221c61a5f Mon Sep 17 00:00:00 2001 From: Mikhail Vorobyov Date: Wed, 27 Dec 2023 19:43:12 +0300 Subject: [PATCH 264/356] Update easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb Use HTTPS. Co-authored-by: Sam Moors --- easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb index 857c5c3a6d8..60578ae9eaf 100644 --- a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb @@ -21,7 +21,7 @@ description = """Iperf-2.1.9: TCP and UDP bandwidth performance measurement tool toolchain = {'name': 'GCCcore', 'version': '10.2.0'} sources = [SOURCE_TAR_GZ] -source_urls = [('http://sourceforge.net/projects/iperf2/files', 'download')] +source_urls = [('https://sourceforge.net/projects/iperf2/files', 'download')] checksums = ['5c0771aab00ef14520013aef01675977816e23bb8f5d9fde016f90eb2f1be788'] builddependencies = [('binutils', '2.35')] From 48a44ded6348ecd31ad174cbd42f5c020d407ed8 Mon Sep 17 00:00:00 2001 From: Mikhail Vorobyov Date: Wed, 27 Dec 2023 19:43:12 +0300 Subject: [PATCH 265/356] Update iperf-2.1.9-GCCcore-10.2.0.eb Remove exact version from description. --- easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb index 60578ae9eaf..2a769579045 100644 --- a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb @@ -16,7 +16,7 @@ name = 'iperf' version = '2.1.9' homepage = 'https://sourceforge.net/projects/iperf2/' -description = """Iperf-2.1.9: TCP and UDP bandwidth performance measurement tool""" +description = """Iperf 2: TCP and UDP bandwidth performance measurement tool""" toolchain = {'name': 'GCCcore', 'version': '10.2.0'} From bba02e53f5645b726e847e99b4e8887a2733a5dd Mon Sep 17 00:00:00 2001 From: Mikhail Vorobyov Date: Thu, 28 Dec 2023 02:38:29 +0300 Subject: [PATCH 266/356] Update iperf-2.1.9-GCCcore-10.2.0.eb Add sanity check calling "--help". --- easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb index 2a769579045..baf0cfe8d03 100644 --- a/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb @@ -31,4 +31,6 @@ sanity_check_paths = { 'dirs': [] } +sanity_check_commands = ["iperf --help"] + moduleclass = 'tools' From 52f9265be84851dbbc3cf4f0b10e0b29ecc3263f Mon Sep 17 00:00:00 2001 From: TopRichard <121792457+TopRichard@users.noreply.github.com> Date: Thu, 28 Dec 2023 06:56:46 +0100 Subject: [PATCH 267/356] Update BAGEL-1.2.2-foss-2023a.eb Updated checksum --- easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb index 4e31208e140..e51fa5bb3e4 100644 --- a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb +++ b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb @@ -19,7 +19,7 @@ patches = ['%(name)s-%(version)s.patch'] checksums = [ {'v1.2.2.tar.gz': 'b9ef9ad5ad9b836b5393badb5a3e5b162d6ff32da497f69d05ef9e4d091b558a'}, - {'BAGEL-1.2.2.patch': '022dfba90d3e98eb1b419223a27ad16a6f0e8d3ef3a35483ad33024a979b69fd'}, + {'BAGEL-1.2.2.patch': '6a0bb2b0c762626219b9216cd96d287e7c14af72234e7ec40c5d684010747792'}, ] builddependencies = [ From 053bf2e091f402c76374e7d044ca97e695f78e0a Mon Sep 17 00:00:00 2001 From: TopRichard <121792457+TopRichard@users.noreply.github.com> Date: Thu, 28 Dec 2023 06:58:53 +0100 Subject: [PATCH 268/356] Update BAGEL-1.2.2.patch Added explanation and author --- easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch index 61f2a6dc610..45e9c4f4ab5 100644 --- a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch +++ b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch @@ -1,9 +1,11 @@ +//The patch is to resolve missing boost includes and fix ambiguous function call, similar to qsimulate-open/bagel#229 +Author: Richard Top diff -ruN bagel-1.2.2/src/molecule/shell_base.cc bagel-1.2.2.orig/src/molecule/shell_base.cc --- bagel-1.2.2/src/molecule/shell_base.cc 2023-12-02 11:23:16.000000000 +0100 +++ bagel-1.2.2.orig/src/molecule/shell_base.cc 2023-12-02 11:23:59.000000000 +0100 @@ -23,6 +23,7 @@ - //The patch is to resolve missing boost includes and fix ambiguous function call, similar to qsimulate-open/bagel#229 + +#include From fc7da1c26225fdb9e63928f39248446d23947930 Mon Sep 17 00:00:00 2001 From: TopRichard <121792457+TopRichard@users.noreply.github.com> Date: Thu, 28 Dec 2023 07:04:05 +0100 Subject: [PATCH 269/356] Update easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-gompi-2021b.eb Co-authored-by: Sam Moors --- .../b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-gompi-2021b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-gompi-2021b.eb b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-gompi-2021b.eb index cf1f0e3b0e5..650d8a2217b 100644 --- a/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-gompi-2021b.eb +++ b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-gompi-2021b.eb @@ -26,7 +26,7 @@ dependencies = [ ('CDO', '2.0.5'), ] -preconfigopts = 'CXXFLAGS="$CXXFLAGS -lnetcdf " ' +preconfigopts = 'CXXFLAGS="$CXXFLAGS -lnetcdf -lpthread" ' sanity_check_paths = { 'files': ['bin/BiasAdjustCXX'], From 5c313fe9b4939c8b37043334a0edf22630a6b639 Mon Sep 17 00:00:00 2001 From: Richard Top Date: Fri, 29 Dec 2023 05:04:36 +0000 Subject: [PATCH 270/356] removed both files --- .../b/BAGEL/BAGEL-1.2.2-foss-2023a.eb | 45 --------- .../easyconfigs/b/BAGEL/BAGEL-1.2.2.patch | 91 ------------------- 2 files changed, 136 deletions(-) delete mode 100644 easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb delete mode 100644 easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch diff --git a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb deleted file mode 100644 index e51fa5bb3e4..00000000000 --- a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb +++ /dev/null @@ -1,45 +0,0 @@ -easyblock = 'ConfigureMake' - -name = 'BAGEL' -version = '1.2.2' - -homepage = "http://www.nubakery.org" - -description = """ -BAGEL (Brilliantly Advanced General Electronic-structure Library) -is a parallel electronic-structure program. -""" - -toolchain = {'name': 'foss', 'version': '2023a'} - -source_urls = ['https://github.com/nubakery/bagel/archive/'] -sources = ['v%(version)s.tar.gz'] - -patches = ['%(name)s-%(version)s.patch'] - -checksums = [ - {'v1.2.2.tar.gz': 'b9ef9ad5ad9b836b5393badb5a3e5b162d6ff32da497f69d05ef9e4d091b558a'}, - {'BAGEL-1.2.2.patch': '6a0bb2b0c762626219b9216cd96d287e7c14af72234e7ec40c5d684010747792'}, -] - -builddependencies = [ - ('Autotools', '20220317'), -] - -dependencies = [ - ('Boost', '1.82.0'), - ('libxc', '6.2.2'), -] - -preconfigopts = './autogen.sh && ' -preconfigopts += 'CXXFLAGS="$CXXFLAGS -DNDEBUG " ' -preconfigopts += 'CXXFLAGS="$CXXFLAGS -lflexiblas " ' - -configopts = ' --with-boost=$BOOST_ROOT --with-libxc --with-mpi=openmpi ' - -sanity_check_paths = { - 'files': ['bin/BAGEL', 'lib/libbagel.%s' % SHLIB_EXT], - 'dirs': [] -} - -moduleclass = 'phys' diff --git a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch deleted file mode 100644 index 45e9c4f4ab5..00000000000 --- a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch +++ /dev/null @@ -1,91 +0,0 @@ -//The patch is to resolve missing boost includes and fix ambiguous function call, similar to qsimulate-open/bagel#229 -Author: Richard Top - -diff -ruN bagel-1.2.2/src/molecule/shell_base.cc bagel-1.2.2.orig/src/molecule/shell_base.cc ---- bagel-1.2.2/src/molecule/shell_base.cc 2023-12-02 11:23:16.000000000 +0100 -+++ bagel-1.2.2.orig/src/molecule/shell_base.cc 2023-12-02 11:23:59.000000000 +0100 -@@ -23,6 +23,7 @@ - - - -+#include - #include - #include - -diff -ruN bagel-1.2.2/src/molecule/shellecp.cc bagel-1.2.2.orig/src/molecule/shellecp.cc ---- bagel-1.2.2/src/molecule/shellecp.cc 2023-12-02 11:23:16.000000000 +0100 -+++ bagel-1.2.2.orig/src/molecule/shellecp.cc 2023-12-02 11:23:59.000000000 +0100 -@@ -22,7 +22,7 @@ - // along with this program. If not, see . - // - -- -+#include - #include - #include - -diff -ruN bagel-1.2.2/src/util/input/input.cc bagel-1.2.2.orig/src/util/input/input.cc ---- bagel-1.2.2/src/util/input/input.cc 2023-12-02 11:23:17.000000000 +0100 -+++ bagel-1.2.2.orig/src/util/input/input.cc 2023-12-02 11:24:05.000000000 +0100 -@@ -24,6 +24,7 @@ - - #include - #include -+#include - #include - #include - #include -diff -ruN bagel-1.2.2/src/util/math/btas_interface.cc bagel-1.2.2.orig/src/util/math/btas_interface.cc ---- bagel-1.2.2/src/util/math/btas_interface.cc 2023-12-02 11:23:17.000000000 +0100 -+++ bagel-1.2.2.orig/src/util/math/btas_interface.cc 2023-12-02 11:24:06.000000000 +0100 -@@ -22,6 +22,7 @@ - // along with this program. If not, see . - // - -+#include - #include - #include - -diff -ruN bagel-1.2.2/src/util/math/sphharmonics.cc bagel-1.2.2.orig/src/util/math/sphharmonics.cc ---- bagel-1.2.2/src/util/math/sphharmonics.cc 2023-12-02 11:23:17.000000000 +0100 -+++ bagel-1.2.2.orig/src/util/math/sphharmonics.cc 2023-12-02 11:24:06.000000000 +0100 -@@ -82,7 +82,7 @@ - if (am > l) - throw runtime_error ("SphHarmonics.ylm: |m| > l"); - -- const double plm = legendre.compute(l, am, cth); -+ const double plm = ::legendre.compute(l, am, cth); - double fact = 1.0; - for (int i = 1; i <= 2*am; ++i) - fact *= l - am + i; -@@ -109,8 +109,8 @@ - const double cth = cos(theta_); - const int am = abs(m); - -- const double plm = legendre.compute(l, am, cth); -- -+ const double plm = ::legendre.compute(l, am, cth); -+ - double coef0 = 1.0; - for (unsigned int i = l + am; i > (l - am); i--) coef0 *= i; - const double coef = sqrt((2*l+1)/(4.0*pi__*coef0)); -@@ -133,7 +133,7 @@ - throw runtime_error ("SphHarmonics.zlm: |m| > l"); - const double cth = cos(theta_); - -- const double plm = legendre.compute(l, am, cth); -+ const double plm = ::legendre.compute(l, am, cth); - - double coef0 = 1.0; - for (unsigned int i = l + am; i > (l - am); i--) coef0 *= i; -diff -ruN bagel-1.2.2/src/util/serialization.h bagel-1.2.2.orig/src/util/serialization.h ---- bagel-1.2.2/src/util/serialization.h 2023-12-02 11:23:17.000000000 +0100 -+++ bagel-1.2.2.orig/src/util/serialization.h 2023-12-02 11:24:06.000000000 +0100 -@@ -33,6 +33,7 @@ - #include - #include - #include -+#include - #include - #include - #include From d0fe8b4388b29a0e022d582fbafa6e4b6053f8a5 Mon Sep 17 00:00:00 2001 From: Richard Top Date: Fri, 29 Dec 2023 05:30:48 +0000 Subject: [PATCH 271/356] added both files after updating the checksum --- .../b/BAGEL/BAGEL-1.2.2-foss-2023a.eb | 43 +++++++++ .../easyconfigs/b/BAGEL/BAGEL-1.2.2.patch | 90 +++++++++++++++++++ 2 files changed, 133 insertions(+) create mode 100644 easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb create mode 100644 easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch diff --git a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb new file mode 100644 index 00000000000..2576f961828 --- /dev/null +++ b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2-foss-2023a.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'BAGEL' +version = '1.2.2' + +homepage = "http://www.nubakery.org" + +description = """ +BAGEL (Brilliantly Advanced General Electronic-structure Library) +is a parallel electronic-structure program. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/nubakery/bagel/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['%(name)s-%(version)s.patch'] +checksums = [ + {'v1.2.2.tar.gz': 'b9ef9ad5ad9b836b5393badb5a3e5b162d6ff32da497f69d05ef9e4d091b558a'}, + {'BAGEL-1.2.2.patch': '47cc973e5b545b7c5540a28e7482f8efc28ff978954009e0923c04d2c88e7b0e'}, +] + +builddependencies = [ + ('Autotools', '20220317'), +] + +dependencies = [ + ('Boost', '1.82.0'), + ('libxc', '6.2.2'), +] + +preconfigopts = './autogen.sh && ' +preconfigopts += 'CXXFLAGS="$CXXFLAGS -DNDEBUG " ' +preconfigopts += 'CXXFLAGS="$CXXFLAGS -lflexiblas " ' + +configopts = ' --with-boost=$BOOST_ROOT --with-libxc --with-mpi=openmpi ' + +sanity_check_paths = { + 'files': ['bin/BAGEL', 'lib/libbagel.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch new file mode 100644 index 00000000000..1e696d2ae59 --- /dev/null +++ b/easybuild/easyconfigs/b/BAGEL/BAGEL-1.2.2.patch @@ -0,0 +1,90 @@ +//The patch is to resolve missing boost includes and fix ambiguous function call, similar to qsimulate-open/bagel#229 +Author: Richard Top +diff -ruN bagel-1.2.2/src/molecule/shell_base.cc bagel-1.2.2.orig/src/molecule/shell_base.cc +--- bagel-1.2.2/src/molecule/shell_base.cc 2023-12-02 11:23:16.000000000 +0100 ++++ bagel-1.2.2.orig/src/molecule/shell_base.cc 2023-12-02 11:23:59.000000000 +0100 +@@ -23,6 +23,7 @@ + // + + ++#include + #include + #include + +diff -ruN bagel-1.2.2/src/molecule/shellecp.cc bagel-1.2.2.orig/src/molecule/shellecp.cc +--- bagel-1.2.2/src/molecule/shellecp.cc 2023-12-02 11:23:16.000000000 +0100 ++++ bagel-1.2.2.orig/src/molecule/shellecp.cc 2023-12-02 11:23:59.000000000 +0100 +@@ -22,7 +22,7 @@ + // along with this program. If not, see . + // + +- ++#include + #include + #include + +diff -ruN bagel-1.2.2/src/util/input/input.cc bagel-1.2.2.orig/src/util/input/input.cc +--- bagel-1.2.2/src/util/input/input.cc 2023-12-02 11:23:17.000000000 +0100 ++++ bagel-1.2.2.orig/src/util/input/input.cc 2023-12-02 11:24:05.000000000 +0100 +@@ -24,6 +24,7 @@ + + #include + #include ++#include + #include + #include + #include +diff -ruN bagel-1.2.2/src/util/math/btas_interface.cc bagel-1.2.2.orig/src/util/math/btas_interface.cc +--- bagel-1.2.2/src/util/math/btas_interface.cc 2023-12-02 11:23:17.000000000 +0100 ++++ bagel-1.2.2.orig/src/util/math/btas_interface.cc 2023-12-02 11:24:06.000000000 +0100 +@@ -22,6 +22,7 @@ + // along with this program. If not, see . + // + ++#include + #include + #include + +diff -ruN bagel-1.2.2/src/util/math/sphharmonics.cc bagel-1.2.2.orig/src/util/math/sphharmonics.cc +--- bagel-1.2.2/src/util/math/sphharmonics.cc 2023-12-02 11:23:17.000000000 +0100 ++++ bagel-1.2.2.orig/src/util/math/sphharmonics.cc 2023-12-02 11:24:06.000000000 +0100 +@@ -82,7 +82,7 @@ + if (am > l) + throw runtime_error ("SphHarmonics.ylm: |m| > l"); + +- const double plm = legendre.compute(l, am, cth); ++ const double plm = ::legendre.compute(l, am, cth); + double fact = 1.0; + for (int i = 1; i <= 2*am; ++i) + fact *= l - am + i; +@@ -109,8 +109,8 @@ + const double cth = cos(theta_); + const int am = abs(m); + +- const double plm = legendre.compute(l, am, cth); +- ++ const double plm = ::legendre.compute(l, am, cth); ++ + double coef0 = 1.0; + for (unsigned int i = l + am; i > (l - am); i--) coef0 *= i; + const double coef = sqrt((2*l+1)/(4.0*pi__*coef0)); +@@ -133,7 +133,7 @@ + throw runtime_error ("SphHarmonics.zlm: |m| > l"); + const double cth = cos(theta_); + +- const double plm = legendre.compute(l, am, cth); ++ const double plm = ::legendre.compute(l, am, cth); + + double coef0 = 1.0; + for (unsigned int i = l + am; i > (l - am); i--) coef0 *= i; +diff -ruN bagel-1.2.2/src/util/serialization.h bagel-1.2.2.orig/src/util/serialization.h +--- bagel-1.2.2/src/util/serialization.h 2023-12-02 11:23:17.000000000 +0100 ++++ bagel-1.2.2.orig/src/util/serialization.h 2023-12-02 11:24:06.000000000 +0100 +@@ -33,6 +33,7 @@ + #include + #include + #include ++#include + #include + #include + #include From c08b9ab7a383cc18a55188b21071445e985576c6 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Fri, 29 Dec 2023 11:50:25 +0100 Subject: [PATCH 272/356] also mention $LMCOMSOL_LICENSE_FILE in comment in COMSOL easyconfig Co-authored-by: Sam Moors --- easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb b/easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb index 110b990ec4c..a2df0306e4a 100644 --- a/easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb +++ b/easybuild/easyconfigs/c/COMSOL/COMSOL-6.2.0.290.eb @@ -19,6 +19,6 @@ download_instructions = 'Obtain from comsol.se' osdependencies = [('p7zip-plugins', 'p7zip-full'), 'csh'] # for extracting iso-files -# license_file = 'license.dat' # or EB_COMSOL_LICENSE_FILE +# license_file = 'license.dat' # or EB_COMSOL_LICENSE_FILE or LMCOMSOL_LICENSE_FILE or LM_LICENSE_FILE moduleclass = 'phys' From aa0fe018b0bdf018e511e7251ff7b0ad382b2a89 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Fri, 29 Dec 2023 12:39:32 +0000 Subject: [PATCH 273/356] add checksum --- easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb index 45003147c6c..fe00e3b31cd 100644 --- a/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb +++ b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb @@ -9,6 +9,9 @@ description = """Phonopy is an open source package of phonon calculations based toolchain = {'name': 'foss', 'version': '2023a'} sources = [SOURCE_TAR_GZ] +checksums = [ + 'a5e2f9d1bd6efad051c6dfd4d9296846f4bd2d378c5c48eb179177656849999e' + ] dependencies = [ ('Python', '3.11.3'), From 8e5a697e0acc89ddb3749bf9848c0099daca8966 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Fri, 29 Dec 2023 12:54:09 +0000 Subject: [PATCH 274/356] linting --- easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb index fe00e3b31cd..aa68af8a495 100644 --- a/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb +++ b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb @@ -9,9 +9,7 @@ description = """Phonopy is an open source package of phonon calculations based toolchain = {'name': 'foss', 'version': '2023a'} sources = [SOURCE_TAR_GZ] -checksums = [ - 'a5e2f9d1bd6efad051c6dfd4d9296846f4bd2d378c5c48eb179177656849999e' - ] +checksums = ['a5e2f9d1bd6efad051c6dfd4d9296846f4bd2d378c5c48eb179177656849999e'] dependencies = [ ('Python', '3.11.3'), From 155479a11dcfafe8bfaf6c058f4c9d6f68b87ce3 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Fri, 29 Dec 2023 13:10:35 +0000 Subject: [PATCH 275/356] add checksums --- easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb b/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb index 3d8fa1685fb..fa82882d6c5 100644 --- a/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb +++ b/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb @@ -12,6 +12,8 @@ toolchain = {'name': 'foss', 'version': '2023a'} source_urls = ['https://github.com/phonopy/phono3py/archive/refs/tags/'] sources = ['v%(version)s.tar.gz'] +checksums = ['8d2c6d52d4b9a25783d69fb3a502394ed02eba7d573c5f1a3e43fd74ac1e5ed3'] + dependencies = [ ('Python', '3.11.3'), ('phonopy', '2.20.0'), From 6ecc41e9749fd6ee7b33b19e032ee60b3250452b Mon Sep 17 00:00:00 2001 From: Sebastian Achilles Date: Fri, 29 Dec 2023 20:29:17 +0100 Subject: [PATCH 276/356] prepare release notes for EasyBuild v4.9.0 + bump version to 4.9.0 --- RELEASE_NOTES | 124 +++++++++++++++++++++++++++++++++++++++++++++++++- setup.py | 2 +- 2 files changed, 124 insertions(+), 2 deletions(-) diff --git a/RELEASE_NOTES b/RELEASE_NOTES index 96daf16fe02..6db9dee2005 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -3,10 +3,132 @@ For more detailed information, please see the git log. These release notes can also be consulted at https://docs.easybuild.io/en/latest/Release_notes.html. -The latest version of easybuild-easyconfig provides 18,407 easyconfig files, for 3,292 different software packages, +The latest version of easybuild-easyconfig provides 18,752 easyconfig files, for 3,369 different software packages, incl. 40 different (compiler) toolchains. +v4.9.0 (30 December 2023) +------------------------- + +feature release + +- added easyconfigs for foss/2023b (#19449) and intel/2023b (#19450) common toolchains +- added example easyconfig files for 48 new software packages: + - AICSImageIO (#19315), ANTIC (#19203), BiasAdjustCXX (#19341), BOPTEST (#19295), BRiAl (#19208), castor (#19176), + CellBender (#19296), cliquer (#19210), CPMD (#19387), cppyy (#19204), CUDD (#19208), datalad (#18675), Demystify + (#17990), dftd4 (#19223), dialog (#17696), DIA-NN (#19454), dynesty (#19091), ebGSEA (#19447), ECL (#44), eclib + (#19209), epct (#19298), EUKulele (#19217), FACE (#14840), fastml (#19357), forbear (#14840), fplll (#19371), fpylll + (#19371), ftfy (#19353), Gdspy (#19458), GFF3-toolkit (#19071), giac (#19323), GMP-ECM (#19323), HepMC (#19139), + hic-straw (#19309), HPCC (#18892), iced (#19309), IML (#19201), iperf (#19259), jedi (#19269), jedi-language-server + (#19269), jupyter-rsession-proxy (#19311), lcalc (#19329), libaed2 (#14840), LoopTools (#19397), m4ri (#19208), m4rie + (#19208), MDI (#19417), mdust (#19106), MitoHiFi (#19263), MPFI (#19323), multicharge (#19221), OMERO.insight (#19337), + OMERO.py (#19338), PFFT (#19255), primecount (#19370), primecountpy (#19370), PyAV (#19359), pycubescd (#19302), pylipid + (#19428), PySINDy (#19306), pythermalcomfort (#19285), PyTorchVideo (#19359), R-bundle-CRAN (#19170), Restrander + (#19232), scikit-lego (#19064), scrublet (#19215), SEACells (#18724), simanneal (#19347), Simstrat (#14840), solo + (#19216), SPEI (#19441), SUPPA (#19181), SYMMETRICA (#19328), Triton (#19381), vaeda (#19214), VSCode (#19418), waLBerla + (#18932) +- added additional easyconfigs for various supported software packages, including: + - 4ti2 1.6.9, AICSImageIO 4.14.0, ALL 0.9.2, ANTIC 0.2.5, ANTs 2.5.0, Arriba 2.4.0, Arrow 14.0.1, ATK 2.38.0, at-spi2-atk + 2.38.0, at-spi2-core 2.50.0, Autoconf-archive 2023.02.20, awscli 2.15.2, BAGEL 1.2.2, bcbio-gff 0.7.0, BeautifulSoup + 4.12.2, BiasAdjustCXX 1.9.1, Blender 3.6.5, Blender 4.0.1, Boost 1.83.0, BOPTEST 0.3.0, boto3 1.28.70, Bracken 2.9, + BRiAl 1.2.12, BUStools 0.43.1, cairo 1.18.0, cairomm 1.16.2, CASTEP 23.1, castor 1.7.11, Catch2 2.13.9, Catch2 2.13.9, + Catch2 2.13.9, CCL 1.12.2, cddlib 0.94m, cdo-bindings 1.6.0, CellBender 0.2.2, CellRanger 7.2.0, CESM-deps 2, cimfomfa + 22.273, Clang 13.0.1, cliquer 1.21, CoCoALib 0.99818, COMSOL 6.2.0.290, Coreutils 9.1, CP2K 2023.1, CPLEX 22.1.1, CPMD + 4.3, cppyy 3.0.0, cryptography 41.0.5, ctffind 4.1.14, CubeLib 4.8.2, CubeWriter 4.8.2, CUDA 12.3.0, CUDD 3.0.0, CVXPY + 1.3.0, CWIPI 0.12.0, cysignals 1.11.2, datalad 0.18.4, DBus 1.15.8, DeepLabCut 2.2.0.6, Demystify 0.0.17, DFT-D3 3.2.0, + dftd4 3.4.0, dialog 1.3, DIA-NN 1.8.1, dynesty 2.1.3, e3nn 0.3.3, E-ANTIC 1.3.0, ebGSEA 0.1.0, ECL 23.9.9, eclib + 20230424, elfutils 0.190, epct 3.2.0, EUKulele 2.0.6, f90wrap 0.2.11, FACE 1.1.1, fastml 2.3, FastQC 0.12.1, Ferret + 7.6.0, FFLAS-FFPACK 2.5.0, FFmpeg 6.0, ffnvcodec 12.1.14.0, FFTW.MPI 3.3.10, FLINT 2.9.0, flit 3.9.0, flook 0.8.1, FLTK + 1.3.8, forbear 1.2.0, fplll 5.4.5, FPM 1.15.1, fpylll 0.5.9, freeglut 3.4.0, FriBidi 1.0.13, ftfy 6.1.1, futile 1.8.3, + gap 4.12.2, Gdk-Pixbuf 2.42.8, Gdspy 1.6.13, GFF3-toolkit 2.1.0, gflags 2.2.2, giac 1.9.0, git-lfs 3.4.0, GitPython + 3.1.40, Givaro 4.2.0, GLib 2.78.1, glog 0.6.0, GMP-ECM 7.0.5, GObject-Introspection 1.78.1, gperftools 2.13, GPyTorch + 1.10, Graphene 1.10.8, graphite2 1.3.14, GROMACS 2023.3, HarfBuzz 8.2.2, hatchling 1.18.0, HepMC 2.06.11, HiC-Pro 3.1.0, + hic-straw 1.3.1, hifiasm 0.19.7, Horovod 0.28.1, HPCC 1.5.0, HPL 2.3, hypothesis 6.90.0, iced 0.5.10, ICU 74.1, imageio + 2.33.1, IMB 2021.3, imkl 2023.1.0, imkl 2024.0.0, imkl-FFTW 2023.2.0, imkl-FFTW 2024.0.0, IML 1.0.5, impi 2021.11.0, + intel-compilers 2024.0.0, iperf 2.1.9, iperf 3.15, IPython 8.17.2, ISA-L 2.30.0, ITK 5.3.0, JasPer 4.0.0, jedi 0.18.1, + jedi 0.19.1, jedi-language-server 0.39.0, json-fortran 8.3.0, jupyter-rsession-proxy 2.1.0, Kent_tools 457, kim-api + 2.3.0, KyotoCabinet 1.2.80, LAME 3.100, lcalc 2.0.5, LHAPDF 6.5.4, libaed2 1.3.0, libepoxy 1.5.10, libfdf 0.5.0, Libint + 2.7.2, libjxl 0.8.2, libvori 220621, libxslt 1.1.38, libxsmm 1.17, LinBox 1.7.0, LittleCMS 2.15, LoopTools 2.15, lrslib + 7.2, lxml 4.9.3, m4ri 20200125, m4rie 20200125, MACS2 2.2.9.1, magma 2.7.2, maturin 1.3.1, MCL 22.282, mctc-lib 0.3.1, + MDI 1.4.16, MDTraj 1.9.7, mdust 20150102, MEME 5.5.4, meson-python 0.15.0, Miniconda3 23.9.0, MitoHiFi 3.2, Mmg 5.7.2, + Molden 7.3, motif 2.3.8, MPFI 1.5.4, mrcfile 1.4.3, mstore 0.2.0, multicharge 0.2.0, nanoflann 1.5.0, nauty 2.8.6, + nettle 3.9.1, Nextflow 23.10.0, nglview 3.0.3, nodejs 20.9.0, Normaliz 3.10.1, NSPR 4.35, NSS 3.94, NVHPC 23.7, NWChem + 7.2.2, Oases 20180312, OMERO.insight 5.8.3, OMERO.py 5.17.0, OpenFold 1.0.1, OpenMM 7.7.0, OSU-Micro-Benchmarks 7.2, + Pango 1.51.0, Parallel-Hashmap 1.36, parameterized 0.9.0, PARI-GP 2.7.6, PFFT 20181230, pFUnit 4.2.0, phonopy 2.20.0, + PICRUSt2 2.5.2, pigz 2.8, pixman 0.42.2, PLUMED 2.9.0, pmt 1.2.0, pmt 1.2.0, poetry 1.6.1, PostgreSQL 16.1, ppl 1.2, + pplpy 0.8.9, primecount 7.9, primecountpy 0.1.0, PyAV 10.0.0, pybind11 2.11.1, PyCairo 1.25.1, pycubescd 20220704, + PyGObject 3.46.0, pylipid 1.5.14, pypmt 1.2.0, pypmt 1.2.0, PyQt5 5.15.7, PySINDy 1.7.3, pytest 7.4.2, + pytest-flakefinder 1.1.0, pytest-xdist 3.3.1, pythermalcomfort 2.8.10, Python-bundle-PyPI 2023.10, python-isal 1.1.0, + python-louvain 0.16, python-xxhash 3.2.0, PyTorch 2.0.1, PyTorch 2.1.2, PyTorchVideo 0.1.5, R 4.3.2, RapidJSON 1.1.0, + RASPA2 2.0.47, R-bundle-CRAN 2023.12, re2c 3.1, ReaxFF 2.0, Restrander 20230713, RFdiffusion 1.1.0, SBCL 2.3.11, + ScaFaCoS 1.0.4, ScaLAPACK 2.2.0, SCENIC 1.3.0, scikit-build 0.17.6, scikit-image 0.22.0, scikit-lego 0.6.16, + SciPy-bundle 2023.11, SCopeLoomR 0.13.0_20220408, Score-P 8.1, scrublet 0.2.3, SDL2 2.28.5, SEACells 20230731, + segmentation-models-pytorch 0.3.3, setuptools-rust 1.8.0, Seurat 4.4.0, simanneal 0.5.0, SimpleITK 2.3.1, Simstrat 3.01, + Singular 4.3.2p10, solo 1.3, Spark 3.5.0, SPEI 0.3.5, STAR 2.7.11a, STAR-CCM+ 18.06.006, STAR-CCM+ 2302, STAR-CCM+ 2310, + strace 6.6, SuiteSparse 7.1.0, SUPPA 2.3, SYMMETRICA 2.0, tabix 0.2.6, tbb 2021.11.0, tensorflow-probability 0.19.0, + TOML-Fortran 0.4.1, topaz 0.2.5.20230926, TRAVIS-Analyzer 220729, Triton 1.1.1, UCX-CUDA 1.15.0, vaeda 0.0.30, VirSorter + 1.0.6, VirSorter2 2.2.4, virtualenv 20.24.6, Voro++ 0.4.6, VSCode 1.85.0, VSEARCH 2.25.0, VTK 9.3.0, waLBerla 6.1, wandb + 0.16.1, Wannier90 3.1.0, Wayland 1.22.0, XGBoost 2.0.2, XML-Compile 1.63, xprop 1.2.6, xproto 7.0.31, xtb 6.6.0, xtb + 6.6.1, Xvfb 21.1.9, xxd 9.0.2112, xxHash 0.8.1, Z3 4.12.2 +- minor enhancements, including: + - add sanity check commands for recent GDB versions (#19102) + - add aarch64 and ppc64le checksums to NVHPC 23.7 (#19249) + - add missing description to patch file for flook v0.8.1 (#19293) + - remove Boost build dependency from pybind11 2.11.1 (#19327) + - allow Python version of Z3 to be used as a dependency (#19354) +- various bug fixes, including: + - use `CargoPythonBundle` generic easyblock for timm to install required Rust packages in a controlled way (#18332) + - Add alternate checksum for OpenImageIO v2.4.14.0 (#19090) + - only set flag `--enable-asmjit` for PLUMED when installing on `x86_64` (#19110) + - ensure right Python version is used in DP3, WSClean and dependencies by specifying `-DPython3_EXECUTABLE` CMake option (#19119) + - add patch to work around potential crash in PyTorch 1.13.1 caused by GCC 12 compiler bug (#19133) + - add patch to fix detection of newer Intel CPUs in OpenBLAS 0.3.20-0.3.23 (#19141) + - remove outdated `--disable-docs` configure option from FriBidi-1.0.12 (#19147) + - add libiconv dependency to gettext 0.22 (#19155) + - fix OpenBLAS 0.3.20+ on newer Intel CPUs (#19159) + - only use ScaFaCos as dependency for LAMMPS 23Jun2022 on `x86_64` (#19164) + - add patch to fix regression in GCC 12.x on AVX512 systems (#19180) + - add pkgconf build dependency to libGLU (#19186) + - Sidestep some build issues with CUDA-Samples 12.1 (#19189) + - make Pillow easyconfigs aware of sysroot template (#19226) + - fix possible error/crash in NCCL on x86 due to cpuid (#19231) + - reduce timestep to fix sanity check commands in LAMMPS 23Jun2022 (#19246) + - add patch for GCC 12.x to fix miscompiling C++ code causing double-free in case of exceptions (#19253) + - replace format tag with explicit extension name in Optuna v3.0.3 (#19256) + - enhance easyconfigs for gnuplot 5.4.x to make sure that Lua dependency is always used (#19261) + - patch Pillow's setup.py rather than hardcoding system paths in `$CPATH` and `$LIBRARY_PATH` (#19267) + - patch setup.py for grpcio extension in TensorFlow 2.13.0 easyconfigs to take into account alternate sysroot (#19268) + - avoid indirect dependency on old CMake version built with GCCcore/10.2.0 via Catch2 build dependency using system toolchain in recent pybind11 easyconfigs (#19270) + - fix link creation and sanity check for SUPPA (#19275) + - use existing patch in pybind11 2.6.2 and 2.7.1 to fix failing test due to extra whitespace (#19279) + - `json-fortran` creates Fortran modules, so must be at compiler level (#19283) + - remove Unicode character in description of SMRT-Link easyconfigs (#19312) + - don't use `%(namelower)s` template in extension name in IPython v8.14.0 easyconfig (#19330) + - add patch to fix [cz]asums in OpenBLAS 0.3.24 (#19331) + - Fix failing tokenizers with `CargoPythonPackage` easyblock (#19333) + - define $GTKDOCIZE as 'echo' before generating configure script for new HarfBuzz versions (#19339) + - fix PAPI test step hanging on some systems (#19372) + - compile LERC test binary in `postinstallcmds` to fix sanity check error when RPATH linking is enabled (#19386) + - move kim-api/2.3.0-GCCcore-12.3.0 to GCC (#19399) + - move kim-api/2.3.0-GCCcore-12.2.0 to GCC (#19401) + - move kim-api/2.3.0-GCCcore-11.3.0 to GCC (#19402) + - move kim-api/2.3.0-GCCcore-11.2.0 to GCC (#19403) + - move kim-api/2.2.1-GCCcore-10.3.0 to GCC (#19404) + - move kim-api/2.2.1-GCCcore-10.2.0 to GCC (#19405) + - fix wrong handling of floats in z3-solver (#19414) + - Fix numpy build on Sapphire Rapids CPUs in SciPy-bundle-2023.07-gfbf-2023a (#19419) + - Fix numpy build on Sapphire Rapids CPUs in SciPy-bundle-2023.11-gfbf-2023.09 (#19425) + - allow ITK legacy code and Python wrappers in ITK v5.2.1 (#19431) + - link to xxHash library from EB in python-xxhash-3.2.0-GCCcore-12.2.0.eb (#19432) + - include MPFR 4.1.0 patch in MPFR 4.2.0 easyconfigs to fix failing tsprintf test with glibc >= 2.37 (#19438) + - skip `Test::Sys::Info` test that expects `/etc/fstab` in Perl-bundle-CPAN (#19440) + - exclude `cdp*` CUDA samples that fail to build on aarch64 in CUDA-Samples v12.1 (#19451) +- other changes: + - let SuiteSparse easyblock set `CMAKE_OPTIONS` for SuiteSparse v7.1.0 (#19177) + - Use `LooseVersion` from easybuilt.tools (#19376) + - Python louvain 0.15 foss 2021b (#19427) + + v4.8.2 (29 October 2023) ------------------------ diff --git a/setup.py b/setup.py index 6403cb7b383..9f8a58a694d 100644 --- a/setup.py +++ b/setup.py @@ -44,7 +44,7 @@ # recent setuptools versions will *TRANSFORM* something like 'X.Y.Zdev' into 'X.Y.Z.dev0', with a warning like # UserWarning: Normalizing '2.4.0dev' to '2.4.0.dev0' # This causes problems further up the dependency chain... -VERSION = '4.9.0.dev0' +VERSION = '4.9.0' MAJ_VER = VERSION.split('.')[0] MAJMIN_VER = '.'.join(VERSION.split('.')[0:2]) From 7b7b8474394552c19f3690a141213e6a35be4380 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Sat, 30 Dec 2023 20:46:19 +0100 Subject: [PATCH 277/356] tweak release notes for EasyBuild v4.9.0 --- RELEASE_NOTES | 123 ++++++++++++++++++-------------------------------- 1 file changed, 45 insertions(+), 78 deletions(-) diff --git a/RELEASE_NOTES b/RELEASE_NOTES index 6db9dee2005..3a655a1b5b3 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -13,120 +13,87 @@ v4.9.0 (30 December 2023) feature release - added easyconfigs for foss/2023b (#19449) and intel/2023b (#19450) common toolchains -- added example easyconfig files for 48 new software packages: +- added example easyconfig files for 77 new software packages: - AICSImageIO (#19315), ANTIC (#19203), BiasAdjustCXX (#19341), BOPTEST (#19295), BRiAl (#19208), castor (#19176), - CellBender (#19296), cliquer (#19210), CPMD (#19387), cppyy (#19204), CUDD (#19208), datalad (#18675), Demystify - (#17990), dftd4 (#19223), dialog (#17696), DIA-NN (#19454), dynesty (#19091), ebGSEA (#19447), ECL (#44), eclib - (#19209), epct (#19298), EUKulele (#19217), FACE (#14840), fastml (#19357), forbear (#14840), fplll (#19371), fpylll - (#19371), ftfy (#19353), Gdspy (#19458), GFF3-toolkit (#19071), giac (#19323), GMP-ECM (#19323), HepMC (#19139), - hic-straw (#19309), HPCC (#18892), iced (#19309), IML (#19201), iperf (#19259), jedi (#19269), jedi-language-server - (#19269), jupyter-rsession-proxy (#19311), lcalc (#19329), libaed2 (#14840), LoopTools (#19397), m4ri (#19208), m4rie - (#19208), MDI (#19417), mdust (#19106), MitoHiFi (#19263), MPFI (#19323), multicharge (#19221), OMERO.insight (#19337), - OMERO.py (#19338), PFFT (#19255), primecount (#19370), primecountpy (#19370), PyAV (#19359), pycubescd (#19302), pylipid - (#19428), PySINDy (#19306), pythermalcomfort (#19285), PyTorchVideo (#19359), R-bundle-CRAN (#19170), Restrander - (#19232), scikit-lego (#19064), scrublet (#19215), SEACells (#18724), simanneal (#19347), Simstrat (#14840), solo - (#19216), SPEI (#19441), SUPPA (#19181), SYMMETRICA (#19328), Triton (#19381), vaeda (#19214), VSCode (#19418), waLBerla - (#18932) + CellBender (#19296), cliquer (#19210, #19323), CPMD (#19387), cppyy (#19204), CUDD (#19208), datalad (#18675), + Demystify (#17990), dftd4 (#19223), dialog (#17696), DIA-NN (#19454), dynesty (#19091), ebGSEA (#19447), + ECL (#19211), eclib (#19209), epct (#19298), EUKulele (#19217), FACE (#14840), fastml (#19357), forbear (#14840), + fplll (#19371), fpylll (#19371), ftfy (#19353), Gdspy (#19458), GFF3-toolkit (#19071), giac (#19323), GMP-ECM (#19323), + HepMC (#19139), hic-straw (#19309), HPCC (#18892), iced (#19309), IML (#19201), iperf (#19259), jedi (#19269), + jedi-language-server (#19269), jupyter-rsession-proxy (#19311), lcalc (#19329), libaed2 (#14840), + LoopTools (#19397), m4ri (#19208), m4rie (#19208), MDI (#19417), mdust (#19106), MitoHiFi (#19263), MPFI (#19323), + multicharge (#19221), OMERO.insight (#19337), OMERO.py (#19338), PFFT (#19255), primecount (#19370), + primecountpy (#19370), PyAV (#19359), pycubescd (#19302), pylipid (#19428), PySINDy (#19306), + pythermalcomfort (#19285), PyTorchVideo (#19359), R-bundle-CRAN (#19170), Restrander (#19232), scikit-lego (#19064), + scrublet (#19215), SEACells (#18724), simanneal (#19347), Simstrat (#14840), solo (#19216), SPEI (#19441), + SUPPA (#19181, #19275), SYMMETRICA (#19328), Triton (#19381), vaeda (#19214), VSCode (#19418), waLBerla (#18932) - added additional easyconfigs for various supported software packages, including: - - 4ti2 1.6.9, AICSImageIO 4.14.0, ALL 0.9.2, ANTIC 0.2.5, ANTs 2.5.0, Arriba 2.4.0, Arrow 14.0.1, ATK 2.38.0, at-spi2-atk - 2.38.0, at-spi2-core 2.50.0, Autoconf-archive 2023.02.20, awscli 2.15.2, BAGEL 1.2.2, bcbio-gff 0.7.0, BeautifulSoup - 4.12.2, BiasAdjustCXX 1.9.1, Blender 3.6.5, Blender 4.0.1, Boost 1.83.0, BOPTEST 0.3.0, boto3 1.28.70, Bracken 2.9, - BRiAl 1.2.12, BUStools 0.43.1, cairo 1.18.0, cairomm 1.16.2, CASTEP 23.1, castor 1.7.11, Catch2 2.13.9, Catch2 2.13.9, - Catch2 2.13.9, CCL 1.12.2, cddlib 0.94m, cdo-bindings 1.6.0, CellBender 0.2.2, CellRanger 7.2.0, CESM-deps 2, cimfomfa - 22.273, Clang 13.0.1, cliquer 1.21, CoCoALib 0.99818, COMSOL 6.2.0.290, Coreutils 9.1, CP2K 2023.1, CPLEX 22.1.1, CPMD - 4.3, cppyy 3.0.0, cryptography 41.0.5, ctffind 4.1.14, CubeLib 4.8.2, CubeWriter 4.8.2, CUDA 12.3.0, CUDD 3.0.0, CVXPY - 1.3.0, CWIPI 0.12.0, cysignals 1.11.2, datalad 0.18.4, DBus 1.15.8, DeepLabCut 2.2.0.6, Demystify 0.0.17, DFT-D3 3.2.0, - dftd4 3.4.0, dialog 1.3, DIA-NN 1.8.1, dynesty 2.1.3, e3nn 0.3.3, E-ANTIC 1.3.0, ebGSEA 0.1.0, ECL 23.9.9, eclib - 20230424, elfutils 0.190, epct 3.2.0, EUKulele 2.0.6, f90wrap 0.2.11, FACE 1.1.1, fastml 2.3, FastQC 0.12.1, Ferret - 7.6.0, FFLAS-FFPACK 2.5.0, FFmpeg 6.0, ffnvcodec 12.1.14.0, FFTW.MPI 3.3.10, FLINT 2.9.0, flit 3.9.0, flook 0.8.1, FLTK - 1.3.8, forbear 1.2.0, fplll 5.4.5, FPM 1.15.1, fpylll 0.5.9, freeglut 3.4.0, FriBidi 1.0.13, ftfy 6.1.1, futile 1.8.3, - gap 4.12.2, Gdk-Pixbuf 2.42.8, Gdspy 1.6.13, GFF3-toolkit 2.1.0, gflags 2.2.2, giac 1.9.0, git-lfs 3.4.0, GitPython - 3.1.40, Givaro 4.2.0, GLib 2.78.1, glog 0.6.0, GMP-ECM 7.0.5, GObject-Introspection 1.78.1, gperftools 2.13, GPyTorch - 1.10, Graphene 1.10.8, graphite2 1.3.14, GROMACS 2023.3, HarfBuzz 8.2.2, hatchling 1.18.0, HepMC 2.06.11, HiC-Pro 3.1.0, - hic-straw 1.3.1, hifiasm 0.19.7, Horovod 0.28.1, HPCC 1.5.0, HPL 2.3, hypothesis 6.90.0, iced 0.5.10, ICU 74.1, imageio - 2.33.1, IMB 2021.3, imkl 2023.1.0, imkl 2024.0.0, imkl-FFTW 2023.2.0, imkl-FFTW 2024.0.0, IML 1.0.5, impi 2021.11.0, - intel-compilers 2024.0.0, iperf 2.1.9, iperf 3.15, IPython 8.17.2, ISA-L 2.30.0, ITK 5.3.0, JasPer 4.0.0, jedi 0.18.1, - jedi 0.19.1, jedi-language-server 0.39.0, json-fortran 8.3.0, jupyter-rsession-proxy 2.1.0, Kent_tools 457, kim-api - 2.3.0, KyotoCabinet 1.2.80, LAME 3.100, lcalc 2.0.5, LHAPDF 6.5.4, libaed2 1.3.0, libepoxy 1.5.10, libfdf 0.5.0, Libint - 2.7.2, libjxl 0.8.2, libvori 220621, libxslt 1.1.38, libxsmm 1.17, LinBox 1.7.0, LittleCMS 2.15, LoopTools 2.15, lrslib - 7.2, lxml 4.9.3, m4ri 20200125, m4rie 20200125, MACS2 2.2.9.1, magma 2.7.2, maturin 1.3.1, MCL 22.282, mctc-lib 0.3.1, - MDI 1.4.16, MDTraj 1.9.7, mdust 20150102, MEME 5.5.4, meson-python 0.15.0, Miniconda3 23.9.0, MitoHiFi 3.2, Mmg 5.7.2, - Molden 7.3, motif 2.3.8, MPFI 1.5.4, mrcfile 1.4.3, mstore 0.2.0, multicharge 0.2.0, nanoflann 1.5.0, nauty 2.8.6, - nettle 3.9.1, Nextflow 23.10.0, nglview 3.0.3, nodejs 20.9.0, Normaliz 3.10.1, NSPR 4.35, NSS 3.94, NVHPC 23.7, NWChem - 7.2.2, Oases 20180312, OMERO.insight 5.8.3, OMERO.py 5.17.0, OpenFold 1.0.1, OpenMM 7.7.0, OSU-Micro-Benchmarks 7.2, - Pango 1.51.0, Parallel-Hashmap 1.36, parameterized 0.9.0, PARI-GP 2.7.6, PFFT 20181230, pFUnit 4.2.0, phonopy 2.20.0, - PICRUSt2 2.5.2, pigz 2.8, pixman 0.42.2, PLUMED 2.9.0, pmt 1.2.0, pmt 1.2.0, poetry 1.6.1, PostgreSQL 16.1, ppl 1.2, - pplpy 0.8.9, primecount 7.9, primecountpy 0.1.0, PyAV 10.0.0, pybind11 2.11.1, PyCairo 1.25.1, pycubescd 20220704, - PyGObject 3.46.0, pylipid 1.5.14, pypmt 1.2.0, pypmt 1.2.0, PyQt5 5.15.7, PySINDy 1.7.3, pytest 7.4.2, - pytest-flakefinder 1.1.0, pytest-xdist 3.3.1, pythermalcomfort 2.8.10, Python-bundle-PyPI 2023.10, python-isal 1.1.0, - python-louvain 0.16, python-xxhash 3.2.0, PyTorch 2.0.1, PyTorch 2.1.2, PyTorchVideo 0.1.5, R 4.3.2, RapidJSON 1.1.0, - RASPA2 2.0.47, R-bundle-CRAN 2023.12, re2c 3.1, ReaxFF 2.0, Restrander 20230713, RFdiffusion 1.1.0, SBCL 2.3.11, - ScaFaCoS 1.0.4, ScaLAPACK 2.2.0, SCENIC 1.3.0, scikit-build 0.17.6, scikit-image 0.22.0, scikit-lego 0.6.16, - SciPy-bundle 2023.11, SCopeLoomR 0.13.0_20220408, Score-P 8.1, scrublet 0.2.3, SDL2 2.28.5, SEACells 20230731, - segmentation-models-pytorch 0.3.3, setuptools-rust 1.8.0, Seurat 4.4.0, simanneal 0.5.0, SimpleITK 2.3.1, Simstrat 3.01, - Singular 4.3.2p10, solo 1.3, Spark 3.5.0, SPEI 0.3.5, STAR 2.7.11a, STAR-CCM+ 18.06.006, STAR-CCM+ 2302, STAR-CCM+ 2310, - strace 6.6, SuiteSparse 7.1.0, SUPPA 2.3, SYMMETRICA 2.0, tabix 0.2.6, tbb 2021.11.0, tensorflow-probability 0.19.0, - TOML-Fortran 0.4.1, topaz 0.2.5.20230926, TRAVIS-Analyzer 220729, Triton 1.1.1, UCX-CUDA 1.15.0, vaeda 0.0.30, VirSorter - 1.0.6, VirSorter2 2.2.4, virtualenv 20.24.6, Voro++ 0.4.6, VSCode 1.85.0, VSEARCH 2.25.0, VTK 9.3.0, waLBerla 6.1, wandb - 0.16.1, Wannier90 3.1.0, Wayland 1.22.0, XGBoost 2.0.2, XML-Compile 1.63, xprop 1.2.6, xproto 7.0.31, xtb 6.6.0, xtb - 6.6.1, Xvfb 21.1.9, xxd 9.0.2112, xxHash 0.8.1, Z3 4.12.2 + - ANTs 2.5.0, Arriba 2.4.0, Arrow 14.0.1, at-spi2-core 2.50.0, Autoconf-archive 2023.02.20, awscli 2.15.2, + Blender 3.6.5 + 4.0.1, Boost 1.83.0, boto3 1.28.70, Bracken 2.9, BUStools 0.43.1, cairo 1.18.0, cairomm 1.16.2, + CASTEP 23.1, cddlib 0.94m, cdo-bindings 1.6.0, CellRanger 7.2.0, CoCoALib 0.99818, COMSOL 6.2.0.290, Coreutils 9.1, + cryptography 41.0.5, CubeLib 4.8.2, CubeWriter 4.8.2, CUDA 12.3.0, CVXPY 1.3.0, cysignals 1.11.2, DBus 1.15.8, + dftd4 3.4.0, E-ANTIC 1.3.0, elfutils 0.190, f90wrap 0.2.11, FastQC 0.12.1, Ferret 7.6.0, FFLAS-FFPACK 2.5.0, + ffnvcodec 12.1.14.0, FPM 1.15.1, FriBidi 1.0.13, gap 4.12.2, git-lfs 3.4.0, GitPython 3.1.40, Givaro 4.2.0, + GLib 2.78.1, glog 0.6.0, GObject-Introspection 1.78.1, gperftools 2.13, GPyTorch 1.10, GROMACS 2023.3, + HarfBuzz 8.2.2, HiC-Pro 3.1.0, hifiasm 0.19.7, hypothesis 6.90.0, ICU 74.1, imageio 2.33.1, imkl 2024.0.0, + impi 2021.11.0, intel-compilers 2024.0.0, IPython 8.17.2, ITK 5.3.0, Kent_tools 457, KyotoCabinet 1.2.80, + LHAPDF 6.5.4, libfdf 0.5.0, libjxl 0.8.2, LinBox 1.7.0, lrslib 7.2, lxml 4.9.3, magma 2.7.2, maturin 1.3.1, + MEME 5.5.4, meson-python 0.15.0, Miniconda3 23.9.0, Mmg 5.7.2, Molden 7.3, mrcfile 1.4.3, nanoflann 1.5.0, + nauty 2.8.6, Nextflow 23.10.0, nodejs 20.9.0, Normaliz 3.10.1, NSS 3.94, NWChem 7.2.2, Oases 20180312, Pango 1.51.0, + Parallel-Hashmap 1.36, parameterized 0.9.0, phonopy 2.20.0, pigz 2.8, pmt 1.2.0, poetry 1.6.1, PostgreSQL 16.1, + pplpy 0.8.9, PyCairo 1.25.1, pypmt 1.2.0, PyQt5 5.15.7, pytest 7.4.2, pytest-xdist 3.3.1, + Python-bundle-PyPI 2023.10, PyTorch 2.1.2, R 4.3.2, RASPA2 2.0.47, SBCL 2.3.11, SCENIC 1.3.0, scikit-image 0.22.0, + SciPy-bundle 2023.11, SDL2 2.28.5, setuptools-rust 1.8.0, Seurat 4.4.0, SimpleITK 2.3.1, Singular 4.3.2p10, + Spark 3.5.0, STAR 2.7.11a, STAR-CCM+ 2310, strace 6.6, SuiteSparse 7.1.0, tbb 2021.11.0, TOML-Fortran 0.4.1, + TRAVIS-Analyzer 220729, UCX-CUDA 1.15.0, VirSorter 1.0.6, virtualenv 20.24.6, VSEARCH 2.25.0, VTK 9.3.0, + wandb 0.16.1, XGBoost 2.0.2, xprop 1.2.6, xtb 6.6.1, Xvfb 21.1.9, xxd 9.0.2112 - minor enhancements, including: - add sanity check commands for recent GDB versions (#19102) - add aarch64 and ppc64le checksums to NVHPC 23.7 (#19249) - - add missing description to patch file for flook v0.8.1 (#19293) - - remove Boost build dependency from pybind11 2.11.1 (#19327) - allow Python version of Z3 to be used as a dependency (#19354) - various bug fixes, including: - use `CargoPythonBundle` generic easyblock for timm to install required Rust packages in a controlled way (#18332) - - Add alternate checksum for OpenImageIO v2.4.14.0 (#19090) + - add alternate checksum for OpenImageIO v2.4.14.0 (#19090) - only set flag `--enable-asmjit` for PLUMED when installing on `x86_64` (#19110) - ensure right Python version is used in DP3, WSClean and dependencies by specifying `-DPython3_EXECUTABLE` CMake option (#19119) - add patch to work around potential crash in PyTorch 1.13.1 caused by GCC 12 compiler bug (#19133) - - add patch to fix detection of newer Intel CPUs in OpenBLAS 0.3.20-0.3.23 (#19141) + - add patch to fix detection of newer Intel CPUs in OpenBLAS 0.3.20 through 0.3.23 (#19141) - remove outdated `--disable-docs` configure option from FriBidi-1.0.12 (#19147) - add libiconv dependency to gettext 0.22 (#19155) - fix OpenBLAS 0.3.20+ on newer Intel CPUs (#19159) - only use ScaFaCos as dependency for LAMMPS 23Jun2022 on `x86_64` (#19164) - add patch to fix regression in GCC 12.x on AVX512 systems (#19180) - add pkgconf build dependency to libGLU (#19186) - - Sidestep some build issues with CUDA-Samples 12.1 (#19189) - - make Pillow easyconfigs aware of sysroot template (#19226) + - sidestep some build issues with CUDA-Samples 12.1 (#19189) + - make Pillow easyconfigs aware of sysroot template (#19226, #19267) - fix possible error/crash in NCCL on x86 due to cpuid (#19231) - reduce timestep to fix sanity check commands in LAMMPS 23Jun2022 (#19246) - add patch for GCC 12.x to fix miscompiling C++ code causing double-free in case of exceptions (#19253) - replace format tag with explicit extension name in Optuna v3.0.3 (#19256) - enhance easyconfigs for gnuplot 5.4.x to make sure that Lua dependency is always used (#19261) - - patch Pillow's setup.py rather than hardcoding system paths in `$CPATH` and `$LIBRARY_PATH` (#19267) - patch setup.py for grpcio extension in TensorFlow 2.13.0 easyconfigs to take into account alternate sysroot (#19268) - avoid indirect dependency on old CMake version built with GCCcore/10.2.0 via Catch2 build dependency using system toolchain in recent pybind11 easyconfigs (#19270) - - fix link creation and sanity check for SUPPA (#19275) - use existing patch in pybind11 2.6.2 and 2.7.1 to fix failing test due to extra whitespace (#19279) - - `json-fortran` creates Fortran modules, so must be at compiler level (#19283) + - change toolchain in `json-fortran` easyconfigs to `GCC`, since it includes Fortran modules (#19283) - remove Unicode character in description of SMRT-Link easyconfigs (#19312) - don't use `%(namelower)s` template in extension name in IPython v8.14.0 easyconfig (#19330) - - add patch to fix [cz]asums in OpenBLAS 0.3.24 (#19331) - - Fix failing tokenizers with `CargoPythonPackage` easyblock (#19333) - - define $GTKDOCIZE as 'echo' before generating configure script for new HarfBuzz versions (#19339) + - add patch to fix `[cz]asums` in OpenBLAS 0.3.24 (#19331) + - fix failing tokenizers with `CargoPythonPackage` easyblock (#19333) + - define `$GTKDOCIZE` as '`echo`' before generating configure script for new HarfBuzz versions (#19339) - fix PAPI test step hanging on some systems (#19372) - compile LERC test binary in `postinstallcmds` to fix sanity check error when RPATH linking is enabled (#19386) - - move kim-api/2.3.0-GCCcore-12.3.0 to GCC (#19399) - - move kim-api/2.3.0-GCCcore-12.2.0 to GCC (#19401) - - move kim-api/2.3.0-GCCcore-11.3.0 to GCC (#19402) - - move kim-api/2.3.0-GCCcore-11.2.0 to GCC (#19403) - - move kim-api/2.2.1-GCCcore-10.3.0 to GCC (#19404) - - move kim-api/2.2.1-GCCcore-10.2.0 to GCC (#19405) + - use `GCC` toolchain in `kim-api`, since it includes Fortran modules (#19399, #19401, #19402, #19403, #19404, #19405) - fix wrong handling of floats in z3-solver (#19414) - - Fix numpy build on Sapphire Rapids CPUs in SciPy-bundle-2023.07-gfbf-2023a (#19419) - - Fix numpy build on Sapphire Rapids CPUs in SciPy-bundle-2023.11-gfbf-2023.09 (#19425) + - Fix numpy build on Sapphire Rapids CPUs in SciPy-bundle-2023.07-gfbf-2023a (#19419, #19425) - allow ITK legacy code and Python wrappers in ITK v5.2.1 (#19431) - - link to xxHash library from EB in python-xxhash-3.2.0-GCCcore-12.2.0.eb (#19432) + - link to xxHash library provided via EasyBuild in python-xxhash v3.2.0 (#19432) - include MPFR 4.1.0 patch in MPFR 4.2.0 easyconfigs to fix failing tsprintf test with glibc >= 2.37 (#19438) - skip `Test::Sys::Info` test that expects `/etc/fstab` in Perl-bundle-CPAN (#19440) - exclude `cdp*` CUDA samples that fail to build on aarch64 in CUDA-Samples v12.1 (#19451) - other changes: - let SuiteSparse easyblock set `CMAKE_OPTIONS` for SuiteSparse v7.1.0 (#19177) - - Use `LooseVersion` from easybuilt.tools (#19376) - - Python louvain 0.15 foss 2021b (#19427) + - add versionsuffix `-param` to easyconfig for ReaxFF 2.0 (#19307) + - use `LooseVersion` from `easybuild.tools` (#19376) v4.8.2 (29 October 2023) From 62eb3503d56e2b01c5f94428ba91598ccee7c1de Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Sat, 30 Dec 2023 21:57:07 +0100 Subject: [PATCH 278/356] adding easyconfigs: EasyBuild-4.9.0.eb --- .../e/EasyBuild/EasyBuild-4.9.0.eb | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.0.eb diff --git a/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.0.eb b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.0.eb new file mode 100644 index 00000000000..b719705413e --- /dev/null +++ b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.9.0.eb @@ -0,0 +1,44 @@ +easyblock = 'EB_EasyBuildMeta' + +name = 'EasyBuild' +version = '4.9.0' + +homepage = 'https://easybuilders.github.io/easybuild' +description = """EasyBuild is a software build and installation framework + written in Python that allows you to install software in a structured, + repeatable and robust way.""" + +toolchain = SYSTEM + +source_urls = [ + # easybuild-framework + 'https://files.pythonhosted.org/packages/13/53/816fd9cabba920ab7457c4a9dba3225ede9cca7284ec910c5216e98ae3d2/', + # easybuild-easyblocks + 'https://files.pythonhosted.org/packages/6c/fb/86e8d0e3a7e7b4ec5c2953b369f0bcf452a024b2504fa1fa1b9065ab8955/', + # easybuild-easyconfigs + 'https://files.pythonhosted.org/packages/6c/65/fb99bd1e1786d24c9bb93bffe7f534c147ff26e806f501b76677c541b861/', +] +sources = [ + 'easybuild-framework-%(version)s.tar.gz', + 'easybuild-easyblocks-%(version)s.tar.gz', + 'easybuild-easyconfigs-%(version)s.tar.gz', +] +checksums = [ + {'easybuild-framework-4.9.0.tar.gz': 'a708437d49570b778ab7f98a0504ac4fa3185d93d31515becd8dee652a6919b2'}, + {'easybuild-easyblocks-4.9.0.tar.gz': 'feb930d927803ed10a26233051973ca016f17e4ff9df213228ff9f90ad96cc3d'}, + {'easybuild-easyconfigs-4.9.0.tar.gz': '767f8d1d03fd4b9eb4d063d5f386f4284136d3efa7ef0b11b3d3d34a2f2040f9'}, +] + +# order matters a lot, to avoid having dependencies auto-resolved (--no-deps easy_install option doesn't work?) +# EasyBuild is a (set of) Python packages, so it depends on Python +# usually, we want to use the system Python, so no actual Python dependency is listed +allow_system_deps = [('Python', SYS_PYTHON_VERSION)] + +local_pyshortver = '.'.join(SYS_PYTHON_VERSION.split('.')[:2]) + +sanity_check_paths = { + 'files': ['bin/eb'], + 'dirs': ['lib/python%s/site-packages' % local_pyshortver], +} + +moduleclass = 'tools' From 2efd9b9ae5edee3c07a898a1dd523f17e2d3dec7 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Sat, 30 Dec 2023 22:33:31 +0100 Subject: [PATCH 279/356] bump version to 4.9.1dev --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 9f8a58a694d..52ad359c69c 100644 --- a/setup.py +++ b/setup.py @@ -44,7 +44,7 @@ # recent setuptools versions will *TRANSFORM* something like 'X.Y.Zdev' into 'X.Y.Z.dev0', with a warning like # UserWarning: Normalizing '2.4.0dev' to '2.4.0.dev0' # This causes problems further up the dependency chain... -VERSION = '4.9.0' +VERSION = '4.9.1.dev0' MAJ_VER = VERSION.split('.')[0] MAJMIN_VER = '.'.join(VERSION.split('.')[0:2]) From eed892900e529095ce9f7e60d0fe63f935962536 Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Sun, 31 Dec 2023 19:09:53 +0100 Subject: [PATCH 280/356] adding easyconfigs: Ghostscript-10.02.1-GCCcore-13.2.0.eb, GTK3-3.24.39-GCCcore-13.2.0.eb --- .../g/GTK3/GTK3-3.24.39-GCCcore-13.2.0.eb | 72 +++++++++++++++++++ .../Ghostscript-10.02.1-GCCcore-13.2.0.eb | 56 +++++++++++++++ 2 files changed, 128 insertions(+) create mode 100644 easybuild/easyconfigs/g/GTK3/GTK3-3.24.39-GCCcore-13.2.0.eb create mode 100644 easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.02.1-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/g/GTK3/GTK3-3.24.39-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/GTK3/GTK3-3.24.39-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..a0bbb9d094a --- /dev/null +++ b/easybuild/easyconfigs/g/GTK3/GTK3-3.24.39-GCCcore-13.2.0.eb @@ -0,0 +1,72 @@ +easyblock = 'Bundle' + +name = 'GTK3' +version = '3.24.39' + +homepage = 'https://developer.gnome.org/gtk3/stable/' +description = """GTK+ is the primary library used to construct user interfaces in GNOME. It + provides all the user interface controls, or widgets, used in a common + graphical application. Its object-oriented API allows you to construct + user interfaces without dealing with the low-level details of drawing and + device interaction. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('Autotools', '20220317'), + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('pkgconf', '2.0.3'), + ('GObject-Introspection', '1.78.1'), +] + +dependencies = [ + ('ATK', '2.38.0'), + ('at-spi2-atk', '2.38.0'), + ('cairo', '1.18.0'), + ('Gdk-Pixbuf', '2.42.10'), + ('GLib', '2.78.1'), + ('Pango', '1.51.0'), + ('libepoxy', '1.5.10'), + ('X11', '20231019'), + ('FriBidi', '1.0.13'), + ('Wayland', '1.22.0'), +] + +default_easyblock = 'MesonNinja' + +default_component_specs = { + 'sources': [SOURCELOWER_TAR_XZ], + 'start_dir': '%(namelower)s-%(version)s', +} + +components = [ + ('GTK+', version, { + 'source_urls': [FTPGNOME_SOURCE], + 'checksums': ['1cac3e566b9b2f3653a458c08c2dcdfdca9f908037ac03c9d8564b4295778d79'], + }), + ('hicolor-icon-theme', '0.17', { + 'easyblock': 'ConfigureMake', + 'source_urls': ['https://icon-theme.freedesktop.org/releases/'], + 'checksums': ['317484352271d18cbbcfac3868eab798d67fff1b8402e740baa6ff41d588a9d8'], + }), + ('adwaita-icon-theme', '45.0', { + 'source_urls': ['https://ftp.gnome.org/pub/GNOME/sources/%(namelower)s/%(version_major)s'], + 'checksums': ['2442bfb06f4e6cc95bf6e2682fdff98fa5eddc688751b9d6215c623cb4e42ff1'], + }), +] + +postinstallcmds = ['gtk-update-icon-cache'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['gtk3-demo', 'gtk3-demo-application', 'gtk3-icon-browser', 'gtk3-widget-factory', + 'gtk-builder-tool', 'gtk-launch', 'gtk-query-immodules-3.0', 'gtk-query-settings', + 'gtk-update-icon-cache']] + + ['lib/%s-%%(version_major)s.%s' % (x, SHLIB_EXT) for x in ['libgailutil', 'libgdk', 'libgtk']], + 'dirs': ['include/%s-%%(version_major)s.0' % x for x in ['gail', 'gtk']] + + ['share/icons/hicolor', 'share/icons/Adwaita'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.02.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.02.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..5e464e9cb8d --- /dev/null +++ b/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.02.1-GCCcore-13.2.0.eb @@ -0,0 +1,56 @@ +easyblock = 'ConfigureMake' + +name = 'Ghostscript' +version = '10.02.1' + +homepage = 'https://ghostscript.com' +description = """Ghostscript is a versatile processor for PostScript data with the ability to render PostScript to + different targets. It used to be part of the cups printing stack, but is no longer used for that.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10021'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['e429e4f5b01615a4f0f93a4128e8a1a4d932dff983b1774174c79c0630717ad9'] + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), +] +dependencies = [ + ('zlib', '1.2.13'), + ('libpng', '1.6.40'), + ('freetype', '2.13.2'), + ('libjpeg-turbo', '3.0.1'), + ('expat', '2.5.0'), + ('GLib', '2.78.1'), + ('cairo', '1.18.0'), + ('LibTIFF', '4.6.0'), + ('GTK3', '3.24.39'), +] + +# Do not use local copies of zlib, jpeg, freetype, and png +preconfigopts = 'mv zlib zlib.no && mv jpeg jpeg.no && mv freetype freetype.no && ' +preconfigopts += 'mv libpng libpng.no && export LIBS="$LIBS -L$EBROOTZLIB/lib -lz" && ' +configopts = "--with-system-libtiff --enable-dynamic --disable-hidden-visibility" + +# also build and install shared libs +build_cmd_targets = ['', 'so'] +installopts = 'soinstall' + +postinstallcmds = [ + # install header files + "mkdir -p %(installdir)s/include/%(namelower)s", + "install -v -m644 base/*.h %(installdir)s/include/%(namelower)s", + "install -v -m644 psi/*.h %(installdir)s/include/%(namelower)s", +] + +sanity_check_paths = { + 'files': ['bin/gs', 'lib/libgs.%s' % SHLIB_EXT], + 'dirs': ['lib/%(namelower)s', 'include/%(namelower)s', 'share/man'], +} + +sanity_check_commands = ["gs --help"] + +moduleclass = 'tools' From 2ef734474d06035fc57b0e4d550707caa9316626 Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Sun, 31 Dec 2023 19:12:38 +0100 Subject: [PATCH 281/356] adding easyconfigs: HDF5-1.14.3-gompi-2023b.eb, HDF5-1.14.3-iimpi-2023b.eb, Szip-2.1.1-GCCcore-13.2.0.eb --- .../h/HDF5/HDF5-1.14.3-gompi-2023b.eb | 26 +++++++++++++++++ .../h/HDF5/HDF5-1.14.3-iimpi-2023b.eb | 26 +++++++++++++++++ .../s/Szip/Szip-2.1.1-GCCcore-13.2.0.eb | 29 +++++++++++++++++++ 3 files changed, 81 insertions(+) create mode 100644 easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-gompi-2023b.eb create mode 100644 easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-iimpi-2023b.eb create mode 100644 easybuild/easyconfigs/s/Szip/Szip-2.1.1-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-gompi-2023b.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-gompi-2023b.eb new file mode 100644 index 00000000000..f2aab3663a3 --- /dev/null +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-gompi-2023b.eb @@ -0,0 +1,26 @@ +name = 'HDF5' +# Note: Odd minor releases are only RCs and should not be used. +version = '1.14.3' + +homepage = 'https://portal.hdfgroup.org/display/support' +description = """HDF5 is a data model, library, and file format for storing and managing data. + It supports an unlimited variety of datatypes, and is designed for flexible + and efficient I/O and for high volume and complex data.""" + +toolchain = {'name': 'gompi', 'version': '2023b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['09cdb287aa7a89148c1638dd20891fdbae08102cf433ef128fd345338aa237c7'] + +# replace src include path with installation dir for $H5BLD_CPPFLAGS +_regex = 's, -I[^[:space:]]+H5FDsubfiling , -I%(installdir)s/include ,g' +postinstallcmds = ['sed -i -r "%s" %%(installdir)s/bin/%s' % (_regex, x) for x in ['h5c++', 'h5pcc']] + +dependencies = [ + ('zlib', '1.2.13'), + ('Szip', '2.1.1'), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-iimpi-2023b.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-iimpi-2023b.eb new file mode 100644 index 00000000000..77fa0c12ab9 --- /dev/null +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.14.3-iimpi-2023b.eb @@ -0,0 +1,26 @@ +name = 'HDF5' +# Note: Odd minor releases are only RCs and should not be used. +version = '1.14.3' + +homepage = 'https://portal.hdfgroup.org/display/support' +description = """HDF5 is a data model, library, and file format for storing and managing data. + It supports an unlimited variety of datatypes, and is designed for flexible + and efficient I/O and for high volume and complex data.""" + +toolchain = {'name': 'iimpi', 'version': '2023b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['09cdb287aa7a89148c1638dd20891fdbae08102cf433ef128fd345338aa237c7'] + +# replace src include path with installation dir for $H5BLD_CPPFLAGS +_regex = 's, -I[^[:space:]]+H5FDsubfiling , -I%(installdir)s/include ,g' +postinstallcmds = ['sed -i -r "%s" %%(installdir)s/bin/%s' % (_regex, x) for x in ['h5c++', 'h5pcc']] + +dependencies = [ + ('zlib', '1.2.13'), + ('Szip', '2.1.1'), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/Szip/Szip-2.1.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/s/Szip/Szip-2.1.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..8eb12670652 --- /dev/null +++ b/easybuild/easyconfigs/s/Szip/Szip-2.1.1-GCCcore-13.2.0.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'Szip' +version = '2.1.1' + +homepage = 'https://www.hdfgroup.org/doc_resource/SZIP/' + +description = """ + Szip compression software, providing lossless compression of scientific data +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.hdfgroup.org/ftp/lib-external/szip/%(version)s/src'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['21ee958b4f2d4be2c9cabfa5e1a94877043609ce86fde5f286f105f7ff84d412'] + +builddependencies = [ + ('binutils', '2.40'), +] + +sanity_check_paths = { + 'files': ["lib/libsz.a", "lib/libsz.%s" % SHLIB_EXT] + + ["include/%s" % x for x in ["ricehdf.h", "szip_adpt.h", "szlib.h"]], + 'dirs': [], +} + +moduleclass = 'tools' From 2c1aab5b39e6ec5cea9308775377eba8d6445327 Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Sun, 31 Dec 2023 19:14:29 +0100 Subject: [PATCH 282/356] adding easyconfigs: Blitz++-1.0.2-GCCcore-13.2.0.eb --- .../b/Blitz++/Blitz++-1.0.2-GCCcore-13.2.0.eb | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 easybuild/easyconfigs/b/Blitz++/Blitz++-1.0.2-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/b/Blitz++/Blitz++-1.0.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/b/Blitz++/Blitz++-1.0.2-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..c38f1c9a588 --- /dev/null +++ b/easybuild/easyconfigs/b/Blitz++/Blitz++-1.0.2-GCCcore-13.2.0.eb @@ -0,0 +1,36 @@ +easyblock = 'CMakeMake' + +name = 'Blitz++' +version = '1.0.2' + +homepage = 'https://github.com/blitzpp/blitz' + +description = """ + Blitz++ is a (LGPLv3+) licensed meta-template library for array manipulation + in C++ with a speed comparable to Fortran implementations, while preserving an + object-oriented interface +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = [('https://github.com/blitzpp/blitz/archive/')] +sources = ['%(version)s.tar.gz'] +patches = ['blitz-%(version)s_pkgconfig.patch'] +checksums = [ + {'1.0.2.tar.gz': '500db9c3b2617e1f03d0e548977aec10d36811ba1c43bb5ef250c0e3853ae1c2'}, + {'blitz-1.0.2_pkgconfig.patch': 'd15fb397e75eb009809ecacdd7f2f154ff05e6586895f3b0511d0b53a6e3b9fe'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6') +] + +sanity_check_paths = { + 'files': ['lib64/libblitz.a', 'lib64/libblitz.%s' % SHLIB_EXT], + 'dirs': ['include/blitz/array', 'include/blitz/meta', + 'include/random', 'lib64/pkgconfig'], +} + +moduleclass = 'lib' From bdf51b96ea7e51cb4b6748ed888ed93817ea8f94 Mon Sep 17 00:00:00 2001 From: vsc46128 Date: Tue, 2 Jan 2024 15:13:54 +0100 Subject: [PATCH 283/356] adding easyconfigs: Voro++-0.4.6-GCCcore-12.3.0.eb --- .../v/Voro++/Voro++-0.4.6-GCCcore-12.3.0.eb | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-12.3.0.eb diff --git a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-12.3.0.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..44fc3e502f6 --- /dev/null +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-12.3.0.eb @@ -0,0 +1,43 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'ConfigureMake' + +name = 'Voro++' +version = '0.4.6' + +homepage = 'http://math.lbl.gov/voro++/' +description = """Voro++ is a software library for carrying out three-dimensional computations of the Voronoi +tessellation. A distinguishing feature of the Voro++ library is that it carries out cell-based calculations, +computing the Voronoi cell for each particle individually. It is particularly well-suited for applications that +rely on cell-based statistics, where features of Voronoi cells (eg. volume, centroid, number of faces) can be used +to analyze a system of particles.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] + +builddependencies = [('binutils', '2.40')] + + +# No configure +skipsteps = ['configure'] + +# Override CXX and CFLAGS variables from Makefile +buildopts = 'CXX="$CXX" CFLAGS="$CXXFLAGS"' + +# Override PREFIX variable from Makefile +installopts = "PREFIX=%(installdir)s" + +sanity_check_paths = { + 'files': ['bin/voro++', 'lib/libvoro++.a', 'include/voro++/voro++.hh'], + 'dirs': [], +} + +moduleclass = 'math' From e01127cecc7a47ed55a47ca36ec312f0d3d0bb63 Mon Sep 17 00:00:00 2001 From: vsc46128 Date: Tue, 2 Jan 2024 15:43:32 +0100 Subject: [PATCH 284/356] adding easyconfigs: ScaFaCoS-1.0.4-foss-2023a.eb --- .../s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2023a.eb | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2023a.eb diff --git a/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2023a.eb b/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2023a.eb new file mode 100644 index 00000000000..4a1b88c83d2 --- /dev/null +++ b/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.4-foss-2023a.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'ScaFaCoS' +version = '1.0.4' + +homepage = 'http://www.scafacos.de/' +description = """ScaFaCoS is a library of scalable fast coulomb solvers.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/%(namelower)s/%(namelower)s/releases/download/v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = [ + '6634c4202e825e771d1dd75bbe9cac5cee41136c87653fde98fbd634681c1be6', # scafacos-1.0.1.tar.gz +] + +builddependencies = [ + ('Autotools', '20220317'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('GMP', '6.2.1'), + ('GSL', '2.7'), +] + +preconfigopts = 'unset F77 && ' + +configopts = 'FCFLAGS="-fallow-argument-mismatch $FCFLAGS" ' +configopts += '--enable-shared --enable-static --disable-doc ' +# tell it where to find provided FFTW +configopts += '--without-internal-fftw --with-fftw3-includedir=$EBROOTFFTW/include --with-fftw3-libdir=$EBROOTFFTW/lib ' +# only include the solvers supported for LAMMPS +# (for p2nfft we need an additonal dependency) +configopts += '--enable-fcs-solvers=direct,ewald,fmm,p3m ' + +sanity_check_paths = { + 'files': ['lib/libfcs.a', 'include/fcs.h', 'include/fcs_module.mod'], + 'dirs': [], +} + +moduleclass = 'math' From a829c8fd63bdb2460fd824634090159d5bfe6da4 Mon Sep 17 00:00:00 2001 From: vsc47063 Date: Tue, 2 Jan 2024 17:33:48 +0100 Subject: [PATCH 285/356] adding easyconfigs: PyopenCL-2023.1.4-foss-2023a.eb --- .../PyopenCL/PyopenCL-2023.1.4-foss-2023a.eb | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyopenCL/PyopenCL-2023.1.4-foss-2023a.eb diff --git a/easybuild/easyconfigs/p/PyopenCL/PyopenCL-2023.1.4-foss-2023a.eb b/easybuild/easyconfigs/p/PyopenCL/PyopenCL-2023.1.4-foss-2023a.eb new file mode 100644 index 00000000000..1de93adbdac --- /dev/null +++ b/easybuild/easyconfigs/p/PyopenCL/PyopenCL-2023.1.4-foss-2023a.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'PyopenCL' +version = '2023.1.4' + +homepage = "https://mathema.tician.de/software/pyopencl/" +description = """PyOpenCL lets you access GPUs and other massively parallel compute devices from Python.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('pocl', '4.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('appdirs', '1.4.4', { + 'checksums': ['7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41'], + }), + ('pytools', '2023.1.1', { + 'checksums': ['80637873d206f6bcedf7cdb46ad93e868acb4ea2256db052dfcca872bdd0321f'], + }), + ('pyopencl', version, { + 'preinstallopts': "./configure.py --cl-pretend-version=1.2 && ", + 'checksums': ['220174efca900e9d5de5aef2aa1b77a6f2550501de92b035a91013aeae4d4c5e'], + }), +] + +moduleclass = 'vis' From f44c578761a5f9a62950d0dd1da4ca5e9ad1ce3a Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Tue, 2 Jan 2024 17:31:25 +0100 Subject: [PATCH 286/356] {geo}[foss/2023a] Cartopy v0.22.0, Fiona v1.9.5, Cython v3.0.7 --- .../c/Cartopy/Cartopy-0.22.0-foss-2023a.eb | 56 +++++++++++++++++++ .../c/Cython/Cython-3.0.7-GCCcore-12.3.0.eb | 40 +++++++++++++ .../f/Fiona/Fiona-1.9.5-foss-2023a.eb | 48 ++++++++++++++++ 3 files changed, 144 insertions(+) create mode 100644 easybuild/easyconfigs/c/Cartopy/Cartopy-0.22.0-foss-2023a.eb create mode 100644 easybuild/easyconfigs/c/Cython/Cython-3.0.7-GCCcore-12.3.0.eb create mode 100644 easybuild/easyconfigs/f/Fiona/Fiona-1.9.5-foss-2023a.eb diff --git a/easybuild/easyconfigs/c/Cartopy/Cartopy-0.22.0-foss-2023a.eb b/easybuild/easyconfigs/c/Cartopy/Cartopy-0.22.0-foss-2023a.eb new file mode 100644 index 00000000000..9dfe231d9e6 --- /dev/null +++ b/easybuild/easyconfigs/c/Cartopy/Cartopy-0.22.0-foss-2023a.eb @@ -0,0 +1,56 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Updated: Denis Kristak +easyblock = 'PythonBundle' + +name = 'Cartopy' +version = '0.22.0' + +homepage = 'https://scitools.org.uk/cartopy/docs/latest/' +description = """Cartopy is a Python package designed to make drawing maps for data analysis and visualisation easy.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + # sufficiently recent Cython is required, to fix issues like: + # pykdtree/kdtree.c:2437:76: error: PyArrayObject {aka struct tagPyArrayObject} has no member named data + # Cython included with Python-bundle-PyPI (0.29.35) is not sufficient + ('Cython', '3.0.7'), + ('Fiona', '1.9.5'), + ('GDAL', '3.7.1'), + ('GEOS', '3.12.0'), + ('matplotlib', '3.7.2'), + ('pyproj', '3.6.0'), + ('SciPy-bundle', '2023.07'), + ('Shapely', '2.0.1'), + ('lxml', '4.9.2'), + ('Pillow', '10.0.0'), + ('PROJ', '9.2.0'), + ('PyYAML', '6.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('OWSLib', '0.29.3', { + 'checksums': ['3baf34058458b933767ee43e632174cb0baebf49d326da179faacb9772f98539'], + }), + ('pyepsg', '0.4.0', { + 'checksums': ['2d08fad1e7a8b47a90a4e43da485ba95705923425aefc4e2a3efa540dbd470d7'], + }), + ('pykdtree', '1.3.10', { + 'checksums': ['41e7c5d669cadc2188acc4bbb4b0b4dcaf492d84512f1e6517a7ab2d122c911d'], + }), + ('pyshp', '2.3.1', { + 'modulename': 'shapefile', + 'checksums': ['4caec82fd8dd096feba8217858068bacb2a3b5950f43c048c6dc32a3489d5af1'], + }), + (name, version, { + 'checksums': ['b300f90120931d43f11ef87c064ea1dacec1b59a4940aa76ebf82cf09548bb49'], + 'preinstallopts': r"""sed -i 's/dynamic = \["version"\]/version = "%(version)s"/g' pyproject.toml && """ + }), +] + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/c/Cython/Cython-3.0.7-GCCcore-12.3.0.eb b/easybuild/easyconfigs/c/Cython/Cython-3.0.7-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..9bc9168fac1 --- /dev/null +++ b/easybuild/easyconfigs/c/Cython/Cython-3.0.7-GCCcore-12.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'PythonPackage' + +name = 'Cython' +version = '3.0.7' + +homepage = 'https://cython.org/' +description = """ +Cython is an optimising static compiler for both the Python programming +language and the extended Cython programming language (based on Pyrex). +""" +docurls = [ + 'https://cython.org/#documentation', + 'https://github.com/cython/cython', +] + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.3'), +] + +sources = [SOURCE_TAR_GZ] +checksums = ['fb299acf3a578573c190c858d49e0cf9d75f4bc49c3f24c5a63804997ef09213'] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/cygdb', 'bin/cython', 'bin/cythonize'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["cython --version"] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/f/Fiona/Fiona-1.9.5-foss-2023a.eb b/easybuild/easyconfigs/f/Fiona/Fiona-1.9.5-foss-2023a.eb new file mode 100644 index 00000000000..070bd33e7e9 --- /dev/null +++ b/easybuild/easyconfigs/f/Fiona/Fiona-1.9.5-foss-2023a.eb @@ -0,0 +1,48 @@ +easyblock = 'PythonBundle' + +name = 'Fiona' +version = '1.9.5' + +homepage = 'https://github.com/Toblerity/Fiona' +description = """Fiona is designed to be simple and dependable. It focuses on reading and writing data +in standard Python IO style and relies upon familiar Python types and protocols such as files, dictionaries, +mappings, and iterators instead of classes specific to OGR. Fiona can read and write real-world data using +multi-layered GIS formats and zipped virtual file systems and integrates readily with other Python GIS +packages such as pyproj, Rtree, and Shapely.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('GDAL', '3.7.1'), + ('Shapely', '2.0.1'), # optional for 'calc' extras +] + +use_pip = True + +exts_list = [ + ('cligj', '0.7.2', { + 'checksums': ['a4bc13d623356b373c2c27c53dbd9c68cae5d526270bfa71f6c6fa69669c6b27'], + }), + ('click-plugins', '1.1.1', { + 'checksums': ['46ab999744a9d831159c3411bb0c79346d94a444df9a3a3742e9ed63645f264b'], + }), + ('munch', '4.0.0', { + 'checksums': ['542cb151461263216a4e37c3fd9afc425feeaf38aaa3025cd2a981fadb422235'], + }), + ('fiona', version, { + 'use_pip_extras': 'calc', + 'checksums': ['99e2604332caa7692855c2ae6ed91e1fffdf9b59449aa8032dd18e070e59a2f7'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/fio'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["fio --help"] + +moduleclass = 'data' From 2293219ba4440b54ed40744e6021cff656f85058 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Tue, 2 Jan 2024 17:50:41 +0100 Subject: [PATCH 287/356] adding easyconfigs: scikit-learn-1.3.2-gfbf-2023b.eb --- .../scikit-learn-1.3.2-gfbf-2023b.eb | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.3.2-gfbf-2023b.eb diff --git a/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.3.2-gfbf-2023b.eb b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.3.2-gfbf-2023b.eb new file mode 100644 index 00000000000..e47d5155b2b --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.3.2-gfbf-2023b.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'scikit-learn' +version = '1.3.2' + +homepage = 'https://scikit-learn.org/stable/index.html' +description = """Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, +building upon numpy, scipy, and matplotlib. As a machine-learning module, +it provides versatile tools for data mining and analysis in any field of science and engineering. +It strives to be simple and efficient, accessible to everybody, and reusable in various contexts.""" + +toolchain = {'name': 'gfbf', 'version': '2023b'} + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('SciPy-bundle', '2023.11'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'modulename': 'sklearn', + 'checksums': ['a2f54c76accc15a34bfb9066e6c7a56c1e7235dda5762b990792330b52ccfb05'], + }), + ('sklearn', '0.0', { + 'checksums': ['e23001573aa194b834122d2b9562459bf5ae494a2d59ca6b8aa22c85a44c0e31'], + }), +] + +moduleclass = 'data' From a9e1fe4c49125ced487d04d5788cf4a69cec26f4 Mon Sep 17 00:00:00 2001 From: vsc47063 Date: Tue, 2 Jan 2024 17:52:10 +0100 Subject: [PATCH 288/356] fix capital in name --- .../PyOpenCL/PyOpenCL-2023.1.4-foss-2023a.eb | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a.eb diff --git a/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a.eb b/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a.eb new file mode 100644 index 00000000000..2e27afb78f0 --- /dev/null +++ b/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'PyOpenCL' +version = '2023.1.4' + +homepage = "https://mathema.tician.de/software/pyopencl/" +description = """PyOpenCL lets you access GPUs and other massively parallel compute devices from Python.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('pocl', '4.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('appdirs', '1.4.4', { + 'checksums': ['7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41'], + }), + ('pytools', '2023.1.1', { + 'checksums': ['80637873d206f6bcedf7cdb46ad93e868acb4ea2256db052dfcca872bdd0321f'], + }), + ('pyopencl', version, { + 'preinstallopts': "./configure.py --cl-pretend-version=1.2 && ", + 'checksums': ['220174efca900e9d5de5aef2aa1b77a6f2550501de92b035a91013aeae4d4c5e'], + }), +] + +moduleclass = 'vis' From ebd24c1e6f18736a0efe6c2568b06f70c336da6c Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Tue, 2 Jan 2024 21:41:51 +0100 Subject: [PATCH 289/356] remove PyopenCL easyconfig: incorrect name, should be PyOpenCL --- .../PyopenCL/PyopenCL-2023.1.4-foss-2023a.eb | 33 ------------------- 1 file changed, 33 deletions(-) delete mode 100644 easybuild/easyconfigs/p/PyopenCL/PyopenCL-2023.1.4-foss-2023a.eb diff --git a/easybuild/easyconfigs/p/PyopenCL/PyopenCL-2023.1.4-foss-2023a.eb b/easybuild/easyconfigs/p/PyopenCL/PyopenCL-2023.1.4-foss-2023a.eb deleted file mode 100644 index 1de93adbdac..00000000000 --- a/easybuild/easyconfigs/p/PyopenCL/PyopenCL-2023.1.4-foss-2023a.eb +++ /dev/null @@ -1,33 +0,0 @@ -easyblock = 'PythonBundle' - -name = 'PyopenCL' -version = '2023.1.4' - -homepage = "https://mathema.tician.de/software/pyopencl/" -description = """PyOpenCL lets you access GPUs and other massively parallel compute devices from Python.""" - -toolchain = {'name': 'foss', 'version': '2023a'} - -dependencies = [ - ('Python', '3.11.3'), - ('SciPy-bundle', '2023.07'), - ('pocl', '4.0'), -] - -use_pip = True -sanity_pip_check = True - -exts_list = [ - ('appdirs', '1.4.4', { - 'checksums': ['7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41'], - }), - ('pytools', '2023.1.1', { - 'checksums': ['80637873d206f6bcedf7cdb46ad93e868acb4ea2256db052dfcca872bdd0321f'], - }), - ('pyopencl', version, { - 'preinstallopts': "./configure.py --cl-pretend-version=1.2 && ", - 'checksums': ['220174efca900e9d5de5aef2aa1b77a6f2550501de92b035a91013aeae4d4c5e'], - }), -] - -moduleclass = 'vis' From b811d4a4066762b0185bc7811ae7534c5800c96d Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Tue, 2 Jan 2024 21:43:47 +0100 Subject: [PATCH 290/356] remove appdirs from PyOpenCL easyconfig, already provided by Python-bundle-PyPI --- .../easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a.eb | 3 --- 1 file changed, 3 deletions(-) diff --git a/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a.eb b/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a.eb index 2e27afb78f0..a89383bb849 100644 --- a/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a.eb +++ b/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a.eb @@ -18,9 +18,6 @@ use_pip = True sanity_pip_check = True exts_list = [ - ('appdirs', '1.4.4', { - 'checksums': ['7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41'], - }), ('pytools', '2023.1.1', { 'checksums': ['80637873d206f6bcedf7cdb46ad93e868acb4ea2256db052dfcca872bdd0321f'], }), From 56d064dac99ad35331c5785ef5e42efa51bafffb Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Tue, 2 Jan 2024 21:51:30 +0100 Subject: [PATCH 291/356] adding easyconfigs: CapnProto-1.0.1.1-GCCcore-13.2.0.eb --- .../CapnProto-1.0.1.1-GCCcore-13.2.0.eb | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 easybuild/easyconfigs/c/CapnProto/CapnProto-1.0.1.1-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/c/CapnProto/CapnProto-1.0.1.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/c/CapnProto/CapnProto-1.0.1.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..da2d96bc357 --- /dev/null +++ b/easybuild/easyconfigs/c/CapnProto/CapnProto-1.0.1.1-GCCcore-13.2.0.eb @@ -0,0 +1,31 @@ +# Contribution by +# DeepThought, Flinders University +# Updated to 0.9.1 +# R.QIAO + +easyblock = 'ConfigureMake' + +name = 'CapnProto' +version = '1.0.1.1' + +homepage = 'https://capnproto.org' +description = "Cap’n Proto is an insanely fast data interchange format and capability-based RPC system." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://capnproto.org/'] +sources = ['capnproto-c++-%(version)s.tar.gz'] +checksums = ['b224e61d5b46f13967b7189860a7373b96d0c105e0d6170f29acba09a2d31f57'] + +builddependencies = [('binutils', '2.40')] + +local_bins = ['capnp', 'capnpc', 'capnpc-c++', 'capnpc-capnp'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_bins], + 'dirs': ['include/capnp', 'include/kj', 'lib'], +} + +sanity_check_commands = ["%s --help" % x for x in local_bins] + +moduleclass = 'bio' From a45acea3037ae0690c4dbe8c63ff50ae724a502b Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Wed, 3 Jan 2024 12:59:09 +0800 Subject: [PATCH 292/356] adding easyconfigs: BerkeleyGW-3.1.0-foss-2022a.eb and patches: BerkeleyGW-3.1.0_tests.patch --- .../BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb | 34 +++++ .../b/BerkeleyGW/BerkeleyGW-3.1.0_tests.patch | 131 ++++++++++++++++++ 2 files changed, 165 insertions(+) create mode 100644 easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb create mode 100644 easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_tests.patch diff --git a/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb new file mode 100644 index 00000000000..4653db0fdb7 --- /dev/null +++ b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb @@ -0,0 +1,34 @@ +name = 'BerkeleyGW' +version = '3.1.0' + +homepage = 'https://www.berkeleygw.org' +description = """The BerkeleyGW Package is a set of computer codes that calculates the quasiparticle + properties and the optical responses of a large variety of materials from bulk periodic crystals to + nanostructures such as slabs, wires and molecules.""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'usempi': True, 'openmp': True} + +source_urls = ['https://files.berkeleygw.org/'] +sources = [SOURCE_TAR_GZ] +patches = [ + 'BerkeleyGW-3.1.0_tests.patch', + 'BerkeleyGW-3.0.1_makefile.patch', +] +checksums = [ + {'BerkeleyGW-3.1.0.tar.gz': '7e890a5faa5a6bb601aa665c73903b3af30df7bdd13ee09362b69793bbefa6d2'}, + {'BerkeleyGW-3.1.0_tests.patch': 'ef73cb7b69a6aad0da90538ef673e978e159d96e62147a304780b1ec25a4c156'}, + {'BerkeleyGW-3.0.1_makefile.patch': '56d90dc4e43db379441b6a1802e24f1f1356cd4aca4eb6d8b673f6c7926a7406'}, +] + +dependencies = [ + ('ELPA', '2021.11.001'), + ('Perl', '5.34.1'), + ('Python', '3.10.4'), + ('h5py', '3.7.0'), + ('fftlib', '20170628'), +] + +runtest = True + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_tests.patch b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_tests.patch new file mode 100644 index 00000000000..924cfdf2b00 --- /dev/null +++ b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_tests.patch @@ -0,0 +1,131 @@ +* allow test scripts to inherit environment +* set stack size ulimit to unlimited +* slightly raise tolerance in some tests +author: Miguel Dias Costa (National University of Singapore) +--- testsuite/run_testsuite.sh.orig 2019-07-25 14:48:12.000000000 +0800 ++++ testsuite/run_testsuite.sh 2019-07-25 14:47:50.000000000 +0800 +@@ -1,4 +1,4 @@ +-#!/bin/bash -l ++#!/bin/bash + # + # Copyright (C) 2005-2009 Heiko Appel, David Strubbe + # +--- testsuite/run_testsuite.sh.orig 2021-01-14 13:52:07.312389000 +0800 ++++ testsuite/run_testsuite.sh 2021-01-14 14:00:31.592579000 +0800 +@@ -66,6 +66,8 @@ + # Run all tests. Takes as first argument a list of testfile names. + function run_testsuite() { + ++ulimit -s unlimited ++ + tests="$1" + + # Check for 'preserve working directories' flag. + +--- MeanField/Utilities/mf_convert_wrapper.sh.orig 2019-07-26 09:52:27.648341000 +0800 ++++ MeanField/Utilities/mf_convert_wrapper.sh 2019-07-26 09:52:39.922114228 +0800 +@@ -1,4 +1,4 @@ +-#!/bin/bash -l ++#!/bin/bash + + # David Strubbe, October 2010 + # Wrapper for mf_convert.x +--- testsuite/GaAs-EPM/GaAs.test.orig 2019-07-26 10:45:19.798520000 +0800 ++++ testsuite/GaAs-EPM/GaAs.test 2019-07-26 10:45:37.753775275 +0800 +@@ -32,7 +32,7 @@ + Output : WFN.out + Input : WFN.in PIPE + +-Precision : 8e-15 ++Precision : 9e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.2710614199849328 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.2565373697755460 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.1322637363008994 +--- testsuite/Si-EPM/Si.test.orig 2021-01-14 14:45:33.627112000 +0800 ++++ testsuite/Si-EPM/Si.test 2021-01-14 14:46:33.049539000 +0800 +@@ -16,7 +16,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/Si-EPM/Si_cplx_spin.test.orig 2019-07-17 07:20:29.000000000 +0800 ++++ testsuite/Si-EPM/Si_cplx_spin.test 2021-01-14 14:46:51.922928000 +0800 +@@ -17,7 +17,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/Si-EPM_subspace/Si_subspace.test.orig 2019-07-17 07:20:32.000000000 +0800 ++++ testsuite/Si-EPM_subspace/Si_subspace.test 2021-01-14 14:47:15.433562000 +0800 +@@ -20,7 +20,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/Si-EPM_subspace/Si_subspace_cplx_spin.test.orig 2019-07-17 07:20:32.000000000 +0800 ++++ testsuite/Si-EPM_subspace/Si_subspace_cplx_spin.test 2021-01-14 14:47:30.610030000 +0800 +@@ -21,7 +21,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/Si-EPM_subspace/Si_subspace_cplx.test.orig 2019-07-17 07:20:32.000000000 +0800 ++++ testsuite/Si-EPM_subspace/Si_subspace_cplx.test 2021-01-14 14:47:45.250225000 +0800 +@@ -20,7 +20,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/Si-EPM/Si_hdf5_cplx_spin.test.orig 2021-10-27 09:15:36.543399656 +0800 ++++ testsuite/Si-EPM/Si_hdf5_cplx_spin.test 2021-10-27 09:16:19.549009302 +0800 +@@ -17,7 +17,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/Si-EPM/Si_hdf5.test.orig 2021-10-27 09:17:11.134541236 +0800 ++++ testsuite/Si-EPM/Si_hdf5.test 2021-10-27 09:17:28.086387460 +0800 +@@ -16,7 +16,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/GaAs-EPM/GaAs.test.orig 2024-01-03 11:40:10.045425888 +0800 ++++ testsuite/GaAs-EPM/GaAs.test 2024-01-03 11:41:04.884166571 +0800 +@@ -32,7 +32,7 @@ + Output : WFN.out + Input : WFN.in PIPE + +-Precision : 9e-15 ++Precision : 9e-14 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.2710614199849328 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.2565373697755460 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.1322637363008994 From 398751c3d8dfa7d3299fb771486e82044dab35c7 Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Wed, 3 Jan 2024 13:19:18 +0800 Subject: [PATCH 293/356] add fftlib easyconfig --- .../f/fftlib/fftlib-20170628-gompi-2022a.eb | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 easybuild/easyconfigs/f/fftlib/fftlib-20170628-gompi-2022a.eb diff --git a/easybuild/easyconfigs/f/fftlib/fftlib-20170628-gompi-2022a.eb b/easybuild/easyconfigs/f/fftlib/fftlib-20170628-gompi-2022a.eb new file mode 100644 index 00000000000..9661081a3f2 --- /dev/null +++ b/easybuild/easyconfigs/f/fftlib/fftlib-20170628-gompi-2022a.eb @@ -0,0 +1,45 @@ +easyblock = 'MakeCp' + +name = 'fftlib' +version = '20170628' +local_commit = '44c5fa0' + +homepage = 'https://github.com/flwende/fftlib' +description = """A library that intercepts FFTW calls and adds features on top of it. + In particular, it enables FFT plan reuse when there are multiple calls for the same geometry.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'openmp': True, 'cstd': 'c++11'} + +source_urls = ['https://github.com/flwende/fftlib/archive/'] +sources = [{'download_filename': '%s.zip' % local_commit, 'filename': SOURCE_ZIP}] +checksums = ['f73dffeaf5c2e6972a5bc67d11ec28390f9eda281a7cb47edc1ee2fe394ed057'] + +dependencies = [('FFTW', '3.3.10')] + +local_options = "-DFFTLIB_THREADSAFE " # use this when multiple threads access fftlib +# local_options += "-DFFTLIB_USE_MKL " # use symbols from MKL's fft library +# local_options += "-DFFTLIB_BYPASS " # bypass fftlib's internal logic +# local_options += "-DFFTLIB_OWN_LOCK " # use fftlib's reader/writer lock +# local_options += "-DFFTLIB_UNSAFE_OPT " # activate unsafe optimizations in fftlib +# local_options += "-DFFTLIB_DEBUG " # print debug messages (infos and warnings) +# local_options += "-DFFTLIB_WARNINGS_ONLY " # print warnings only +# local_options += "-DFFTLIB_COMPOSED_FFT " # split 3d FFT computation into 2d+1d FFT + +start_dir = 'src' + +parallel = False + +build_cmd = "$CXX $CXXFLAGS -I../include -I$EBROOTFFTW/include %s -c fftlib.cpp -o fftlib.o" % local_options + +files_to_copy = [(['fftlib.o'], 'lib')] + +sanity_check_paths = { + 'files': ['lib/fftlib.o'], + 'dirs': ["."] +} + +# this should be prepended to $LIBFFT(_MT) when building applications in order to intercept their FFT calls +modextravars = {'FFTLIB': "%(installdir)s/lib/fftlib.o -lgomp -lstdc++ -ldl"} + +moduleclass = 'lib' From 6f2dfeba50ca5b49e9695092df5464f57d3d9be9 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Wed, 3 Jan 2024 10:50:02 +0100 Subject: [PATCH 294/356] collapse patches for OpenBLAS v0.3.21 to disable -ftree-vectorize for LAPACK --- .../o/OpenBLAS/OpenBLAS-0.3.21-GCC-12.2.0.eb | 7 +++-- ...-0.3.21_disable-tree-vectorize-cmake.patch | 26 ------------------- ...nBLAS-0.3.21_disable-tree-vectorize.patch} | 26 +++++++++++++++++++ 3 files changed, 29 insertions(+), 30 deletions(-) delete mode 100644 easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-cmake.patch rename easybuild/easyconfigs/o/OpenBLAS/{OpenBLAS-0.3.21_disable-tree-vectorize-make.patch => OpenBLAS-0.3.21_disable-tree-vectorize.patch} (54%) diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21-GCC-12.2.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21-GCC-12.2.0.eb index 083a42b7b69..ea28ea399a4 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21-GCC-12.2.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21-GCC-12.2.0.eb @@ -21,8 +21,7 @@ patches = [ 'OpenBLAS-0.3.21_fix-order-vectorization.patch', 'OpenBLAS-0.3.21-GCC-12.2.0_disable-fma-in-cscal-zscal.patch', 'OpenBLAS-0.3.21_avoid-crash-in-zdot.patch', - 'OpenBLAS-0.3.21_disable-tree-vectorize-cmake.patch', - 'OpenBLAS-0.3.21_disable-tree-vectorize-make.patch', + 'OpenBLAS-0.3.21_disable-tree-vectorize.patch', ] checksums = [ {'v0.3.21.tar.gz': 'f36ba3d7a60e7c8bcc54cd9aaa9b1223dd42eaf02c811791c37e8ca707c241ca'}, @@ -38,8 +37,8 @@ checksums = [ {'OpenBLAS-0.3.21-GCC-12.2.0_disable-fma-in-cscal-zscal.patch': '9784e93567d100960a4c34d86e215bd7aa70bb28b0bc2c6bf1b22c6a05d56003'}, {'OpenBLAS-0.3.21_avoid-crash-in-zdot.patch': '3dac2c1ec896df574f1b37cde81a16f24550b7f1eb81fbfacb0c4449b0dc7894'}, - {'OpenBLAS-0.3.21_disable-tree-vectorize-cmake.patch': 'd8fca9d3956e45d6b9e588159675aa198b6d02534b09e3e797fbf8aee824aed7'}, - {'OpenBLAS-0.3.21_disable-tree-vectorize-make.patch': '3040e30f752107111b23064b8b25514719d46daed7445ad4bca89d2f66ecf95a'}, + {'OpenBLAS-0.3.21_disable-tree-vectorize.patch': + '30abb2707ea5be5afcac53e12cc3febe66315b2bf84579142fdcd8f4fc0c23eb'}, ] builddependencies = [ diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-cmake.patch b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-cmake.patch deleted file mode 100644 index 93e00ff90e6..00000000000 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-cmake.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 32566bfb44067e0c0459e94b53c9457613539eeb Mon Sep 17 00:00:00 2001 -From: Martin Kroeker -Date: Thu, 13 Oct 2022 14:04:25 +0200 -Subject: [PATCH] Disable the gfortran tree vectorizer for netlib LAPACK - ---- - cmake/lapack.cmake | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/cmake/lapack.cmake b/cmake/lapack.cmake -index f8a27f5d4..3b221d420 100644 ---- a/cmake/lapack.cmake -+++ b/cmake/lapack.cmake -@@ -999,6 +999,9 @@ endforeach () - - if (NOT C_LAPACK) - set_source_files_properties(${LA_SOURCES} PROPERTIES COMPILE_FLAGS "${LAPACK_FFLAGS}") -+ if (${F_COMPILER} STREQUAL "GFORTRAN") -+ set_source_files_properties(${LA_SOURCES} PROPERTIES COMPILE_FLAGS "${LAPACK_FFLAGS} -fno-tree-vectorize") -+ endif() - else () - set_source_files_properties(${LA_SOURCES} PROPERTIES COMPILE_FLAGS "${LAPACK_CFLAGS}") - endif () --- -2.25.1 - diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-make.patch b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize.patch similarity index 54% rename from easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-make.patch rename to easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize.patch index 663bd546074..5085b51aff9 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize-make.patch +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.21_disable-tree-vectorize.patch @@ -1,3 +1,29 @@ +From 32566bfb44067e0c0459e94b53c9457613539eeb Mon Sep 17 00:00:00 2001 +From: Martin Kroeker +Date: Thu, 13 Oct 2022 14:04:25 +0200 +Subject: [PATCH] Disable the gfortran tree vectorizer for netlib LAPACK + +--- + cmake/lapack.cmake | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/cmake/lapack.cmake b/cmake/lapack.cmake +index f8a27f5d4..3b221d420 100644 +--- a/cmake/lapack.cmake ++++ b/cmake/lapack.cmake +@@ -999,6 +999,9 @@ endforeach () + + if (NOT C_LAPACK) + set_source_files_properties(${LA_SOURCES} PROPERTIES COMPILE_FLAGS "${LAPACK_FFLAGS}") ++ if (${F_COMPILER} STREQUAL "GFORTRAN") ++ set_source_files_properties(${LA_SOURCES} PROPERTIES COMPILE_FLAGS "${LAPACK_FFLAGS} -fno-tree-vectorize") ++ endif() + else () + set_source_files_properties(${LA_SOURCES} PROPERTIES COMPILE_FLAGS "${LAPACK_CFLAGS}") + endif () +-- +2.25.1 + From 57809526c430ef0a07f5c5c39dce20c6d73a1f35 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 13 Oct 2022 09:12:23 +0200 From b00ae1379d0cbeaa08e68f11902a7e05479aa5f4 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Wed, 3 Jan 2024 09:53:08 +0000 Subject: [PATCH 295/356] cleanup --- easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb b/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb index fa82882d6c5..36a0c27b225 100644 --- a/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb +++ b/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb @@ -7,7 +7,6 @@ homepage = 'http://phonopy.github.io/phono3py/' description = """A simulation package of phonon-phonon interaction related properties.""" toolchain = {'name': 'foss', 'version': '2023a'} -#toolchainopts = {'pic': True} source_urls = ['https://github.com/phonopy/phono3py/archive/refs/tags/'] sources = ['v%(version)s.tar.gz'] @@ -19,9 +18,8 @@ dependencies = [ ('phonopy', '2.20.0'), ] -preinstallopts = 'echo "extra_compile_args = -fopenmp" > site.cfg && ' +preinstallopts = 'echo "extra_compile_args = -fopenmp" > site.cfg && ' preinstallopts += 'echo "extra_link_args = -lgomp -llapacke -lpthread" >> site.cfg && ' -#preinstallopts = "export LDLAGS='-lgomp -llapacke -lpthread ' && export CFLAGS='-fopenmp ' && " installopts = " -vvv" download_dep_fail = True From 8495557707dfd9b160f1b49cfab88512572d852a Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Wed, 3 Jan 2024 12:24:33 +0100 Subject: [PATCH 296/356] adding easyconfigs: PyOpenCL-2023.1.4-foss-2023a-CUDA-12.1.1.eb --- ...yOpenCL-2023.1.4-foss-2023a-CUDA-12.1.1.eb | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a-CUDA-12.1.1.eb diff --git a/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..eb772644013 --- /dev/null +++ b/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2023.1.4-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +name = 'PyOpenCL' +version = '2023.1.4' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = "https://mathema.tician.de/software/pyopencl/" +description = """PyOpenCL lets you access GPUs and other massively parallel compute devices from Python.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('pocl', '4.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('pytools', '2023.1.1', { + 'checksums': ['80637873d206f6bcedf7cdb46ad93e868acb4ea2256db052dfcca872bdd0321f'], + }), + ('pyopencl', version, { + 'preinstallopts': "./configure.py --cl-pretend-version=1.2 && ", + 'checksums': ['220174efca900e9d5de5aef2aa1b77a6f2550501de92b035a91013aeae4d4c5e'], + }), +] + +moduleclass = 'vis' From 586dbec032cf0975b2ad87996941b103a0ca696d Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Wed, 3 Jan 2024 12:33:34 +0100 Subject: [PATCH 297/356] adding easyconfigs: PyTorch-2.1.2-foss-2023a.eb and patches: PyTorch-2.1.0_fix-test_numpy_torch_operators.patch --- ...2.1.0_fix-test_numpy_torch_operators.patch | 41 +++++ .../p/PyTorch/PyTorch-2.1.2-foss-2023a.eb | 161 ++++++++++++++++++ 2 files changed, 202 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-test_numpy_torch_operators.patch create mode 100644 easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.2-foss-2023a.eb diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-test_numpy_torch_operators.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-test_numpy_torch_operators.patch new file mode 100644 index 00000000000..acbb6b1ca72 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.0_fix-test_numpy_torch_operators.patch @@ -0,0 +1,41 @@ +From b03ef1d96909da213771c7590e36bbe1d258df53 Mon Sep 17 00:00:00 2001 +From: Oguz Ulgen +Date: Sat, 16 Sep 2023 07:37:04 +0000 +Subject: [PATCH] [Dynamo] Fix numpy error in test_numpy_torch_operators + (#109087) + +When you inplace matmul two one dimensional numpy arrays, numpy=="1.24.3" gives +``` +TypeError: In-place matrix multiplication is not (yet) supported. Use 'a = a @ b' instead of 'a @= b'. +``` +but numpy=="1.25.2" gives +``` +ValueError: inplace matrix multiplication requires the first operand to have at least one and the second at least two dimensions. +``` + +This diff makes it so that newer versions of numpy does not fail on this test because we do not catch ValueError. + +An alternative solution would be to update the test cases to be 2 dimensional, but that would have impact on other operators being tested. + +Pull Request resolved: https://github.com/pytorch/pytorch/pull/109087 +Approved by: https://github.com/jansel +--- + test/dynamo/test_misc.py | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/test/dynamo/test_misc.py b/test/dynamo/test_misc.py +index 311bffc3e5fba9..a0486278599dcf 100644 +--- a/test/dynamo/test_misc.py ++++ b/test/dynamo/test_misc.py +@@ -1339,6 +1339,11 @@ def fn(op, t1, t2): + # skip + # Did you know that tensor[ndarray_of_floats] works? + continue ++ if op is operator.imatmul and (t1_np or t2_np): ++ # skip ++ # in numpy, in place matmul does not work single ++ # dimensional arrays ++ continue + t1 = torch.rand(5) + if t1_np: + t1 = t1.numpy() diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.2-foss-2023a.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.2-foss-2023a.eb new file mode 100644 index 00000000000..fe23eab6738 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.1.2-foss-2023a.eb @@ -0,0 +1,161 @@ +name = 'PyTorch' +version = '2.1.2' + +homepage = 'https://pytorch.org/' +description = """Tensors and Dynamic neural networks in Python with strong GPU acceleration. +PyTorch is a deep learning framework that puts Python first.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = [GITHUB_RELEASE] +sources = ['%(namelower)s-v%(version)s.tar.gz'] +patches = [ + 'PyTorch-1.7.0_disable-dev-shm-test.patch', + 'PyTorch-1.11.1_skip-test_init_from_local_shards.patch', + 'PyTorch-1.12.1_add-hypothesis-suppression.patch', + 'PyTorch-1.12.1_fix-test_cpp_extensions_jit.patch', + 'PyTorch-1.12.1_fix-TestTorch.test_to.patch', + 'PyTorch-1.12.1_skip-test_round_robin.patch', + 'PyTorch-1.13.1_fix-gcc-12-warning-in-fbgemm.patch', + 'PyTorch-1.13.1_fix-protobuf-dependency.patch', + 'PyTorch-1.13.1_fix-warning-in-test-cpp-api.patch', + 'PyTorch-1.13.1_skip-failing-singular-grad-test.patch', + 'PyTorch-1.13.1_skip-tests-without-fbgemm.patch', + 'PyTorch-2.0.1_avoid-test_quantization-failures.patch', + 'PyTorch-2.0.1_fix-skip-decorators.patch', + 'PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch', + 'PyTorch-2.0.1_fix-vsx-loadu.patch', + 'PyTorch-2.0.1_no-cuda-stubs-rpath.patch', + 'PyTorch-2.0.1_skip-failing-gradtest.patch', + 'PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch', + 'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch', + 'PyTorch-2.1.0_disable-gcc12-warning.patch', + 'PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch', + 'PyTorch-2.1.0_fix-test_numpy_torch_operators.patch', + 'PyTorch-2.1.0_fix-validationError-output-test.patch', + 'PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch', + 'PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch', + 'PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch', + 'PyTorch-2.1.0_remove-test-requiring-online-access.patch', + 'PyTorch-2.1.0_skip-diff-test-on-ppc.patch', + 'PyTorch-2.1.0_skip-dynamo-test_predispatch.patch', + 'PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch', + 'PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch', + 'PyTorch-2.1.0_skip-test_wrap_bad.patch', +] +checksums = [ + {'pytorch-v2.1.2.tar.gz': '85effbcce037bffa290aea775c9a4bad5f769cb229583450c40055501ee1acd7'}, + {'PyTorch-1.7.0_disable-dev-shm-test.patch': '622cb1eaeadc06e13128a862d9946bcc1f1edd3d02b259c56a9aecc4d5406b8a'}, + {'PyTorch-1.11.1_skip-test_init_from_local_shards.patch': + '4aeb1b0bc863d4801b0095cbce69f8794066748f0df27c6aaaf729c5ecba04b7'}, + {'PyTorch-1.12.1_add-hypothesis-suppression.patch': + 'e71ffb94ebe69f580fa70e0de84017058325fdff944866d6bd03463626edc32c'}, + {'PyTorch-1.12.1_fix-test_cpp_extensions_jit.patch': + '1efc9850c431d702e9117d4766277d3f88c5c8b3870997c9974971bce7f2ab83'}, + {'PyTorch-1.12.1_fix-TestTorch.test_to.patch': '75f27987c3f25c501e719bd2b1c70a029ae0ee28514a97fe447516aee02b1535'}, + {'PyTorch-1.12.1_skip-test_round_robin.patch': '63d4849b78605aa088fdff695637d9473ea60dee603a3ff7f788690d70c55349'}, + {'PyTorch-1.13.1_fix-gcc-12-warning-in-fbgemm.patch': + '5c7be91a6096083a0b1315efe0001537499c600f1f569953c6a2c7f4cc1d0910'}, + {'PyTorch-1.13.1_fix-protobuf-dependency.patch': + '8bd755a0cab7233a243bc65ca57c9630dfccdc9bf8c9792f0de4e07a644fcb00'}, + {'PyTorch-1.13.1_fix-warning-in-test-cpp-api.patch': + 'bdde0f2105215c95a54de64ec4b1a4520528510663174fef6d5b900eb1db3937'}, + {'PyTorch-1.13.1_skip-failing-singular-grad-test.patch': + '72688a57b2bb617665ad1a1d5e362c5111ae912c10936bb38a089c0204729f48'}, + {'PyTorch-1.13.1_skip-tests-without-fbgemm.patch': + '481e595f673baf8ae58b41697a6792b83048b0264aa79b422f48cd8c22948bb7'}, + {'PyTorch-2.0.1_avoid-test_quantization-failures.patch': + '02e3f47e4ed1d7d6077e26f1ae50073dc2b20426269930b505f4aefe5d2f33cd'}, + {'PyTorch-2.0.1_fix-skip-decorators.patch': '2039012cef45446065e1a2097839fe20bb29fe3c1dcc926c3695ebf29832e920'}, + {'PyTorch-2.0.1_fix-ub-in-inductor-codegen.patch': + '1b37194f55ae678f3657b8728dfb896c18ffe8babe90987ce468c4fa9274f357'}, + {'PyTorch-2.0.1_fix-vsx-loadu.patch': 'a0ffa61da2d47c6acd09aaf6d4791e527d8919a6f4f1aa7ed38454cdcadb1f72'}, + {'PyTorch-2.0.1_no-cuda-stubs-rpath.patch': '8902e58a762240f24cdbf0182e99ccdfc2a93492869352fcb4ca0ec7e407f83a'}, + {'PyTorch-2.0.1_skip-failing-gradtest.patch': '8030bdec6ba49b057ab232d19a7f1a5e542e47e2ec340653a246ec9ed59f8bc1'}, + {'PyTorch-2.0.1_skip-test_shuffle_reproducibility.patch': + '7047862abc1abaff62954da59700f36d4f39fcf83167a638183b1b7f8fec78ae'}, + {'PyTorch-2.0.1_skip-tests-skipped-in-subprocess.patch': + '166c134573a95230e39b9ea09ece3ad8072f39d370c9a88fb2a1e24f6aaac2b5'}, + {'PyTorch-2.1.0_disable-gcc12-warning.patch': 'c858b8db0010f41005dc06f9a50768d0d3dc2d2d499ccbdd5faf8a518869a421'}, + {'PyTorch-2.1.0_fix-bufferoverflow-in-oneDNN.patch': + 'b15b1291a3c37bf6a4982cfbb3483f693acb46a67bc0912b383fd98baf540ccf'}, + {'PyTorch-2.1.0_fix-test_numpy_torch_operators.patch': + '84bb51a719abc677031a7a3dfe4382ff098b0cbd8b39b8bed2a7fa03f80ac1e9'}, + {'PyTorch-2.1.0_fix-validationError-output-test.patch': + '7eba0942afb121ed92fac30d1529447d892a89eb3d53c565f8e9d480e95f692b'}, + {'PyTorch-2.1.0_fix-vsx-vector-shift-functions.patch': + '3793b4b878be1abe7791efcbd534774b87862cfe7dc4774ca8729b6cabb39e7e'}, + {'PyTorch-2.1.0_increase-tolerance-functorch-test_vmapvjpvjp.patch': + 'aef38adf1210d0c5455e91d7c7a9d9e5caad3ae568301e0ba9fc204309438e7b'}, + {'PyTorch-2.1.0_remove-sparse-csr-nnz-overflow-test.patch': + '0ac36411e76506b3354c85a8a1260987f66af947ee52ffc64230aee1fa02ea8b'}, + {'PyTorch-2.1.0_remove-test-requiring-online-access.patch': + '35184b8c5a1b10f79e511cc25db3b8a5585a5d58b5d1aa25dd3d250200b14fd7'}, + {'PyTorch-2.1.0_skip-diff-test-on-ppc.patch': '394157dbe565ffcbc1821cd63d05930957412156cc01e949ef3d3524176a1dda'}, + {'PyTorch-2.1.0_skip-dynamo-test_predispatch.patch': + '6298daf9ddaa8542850eee9ea005f28594ab65b1f87af43d8aeca1579a8c4354'}, + {'PyTorch-2.1.0_skip-test_jvp_linalg_det_singular.patch': + '5229ca88a71db7667a90ddc0b809b2c817698bd6e9c5aaabd73d3173cf9b99fe'}, + {'PyTorch-2.1.0_skip-test_linear_fp32-without-MKL.patch': + '5dcc79883b6e3ec0a281a8e110db5e0a5880de843bb05653589891f16473ead5'}, + {'PyTorch-2.1.0_skip-test_wrap_bad.patch': 'b8583125ee94e553b6f77c4ab4bfa812b89416175dc7e9b7390919f3b485cb63'}, +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +builddependencies = [ + ('CMake', '3.26.3'), + ('hypothesis', '6.82.0'), + # For tests + ('pytest-flakefinder', '1.1.0'), + ('pytest-rerunfailures', '12.0'), + ('pytest-shard', '0.1.2'), +] + +dependencies = [ + ('Ninja', '1.11.1'), # Required for JIT compilation of C++ extensions + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('protobuf', '24.0'), + ('protobuf-python', '4.24.0'), + ('pybind11', '2.11.1'), + ('SciPy-bundle', '2023.07'), + ('PyYAML', '6.0'), + ('MPFR', '4.2.0'), + ('GMP', '6.2.1'), + ('numactl', '2.0.16'), + ('FFmpeg', '6.0'), + ('Pillow', '10.0.0'), + ('expecttest', '0.1.5'), + ('networkx', '3.1'), + ('sympy', '1.12'), + ('Z3', '4.12.2', '-Python-%(pyver)s'), +] + +excluded_tests = { + '': [ + # This test seems to take too long on NVIDIA Ampere at least. + 'distributed/test_distributed_spawn', + # Broken on CUDA 11.6/11.7: https://github.com/pytorch/pytorch/issues/75375 + 'distributions/test_constraints', + # no xdoctest + 'doctests', + # failing on broadwell + # See https://github.com/easybuilders/easybuild-easyconfigs/issues/17712 + 'test_native_mha', + # intermittent failures on various systems + # See https://github.com/easybuilders/easybuild-easyconfigs/issues/17712 + 'distributed/rpc/test_tensorpipe_agent', + ] +} + +runtest = 'cd test && PYTHONUNBUFFERED=1 %(python)s run_test.py --continue-through-error --verbose %(excluded_tests)s' + +# Especially test_quantization has a few corner cases that are triggered by the random input values, +# those cannot be easily avoided, see https://github.com/pytorch/pytorch/issues/107030 +# So allow a low number of tests to fail as the tests "usually" succeed +max_failed_tests = 2 + +tests = ['PyTorch-check-cpp-extension.py'] + +moduleclass = 'ai' From 0299897b4470dc11bd5d2060cc2040a59d030436 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Wed, 3 Jan 2024 12:45:25 +0100 Subject: [PATCH 298/356] add patch to fix flaky scipy build in SciPy-bundle v2023.11 --- .../SciPy-bundle-2023.11-gfbf-2023b.eb | 1 + .../scipy-1.11.4_fix-deps-ellip_harm_2.patch | 38 +++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 easybuild/easyconfigs/s/SciPy-bundle/scipy-1.11.4_fix-deps-ellip_harm_2.patch diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb index 5c21cbe94a7..23682b7b5ed 100644 --- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb @@ -67,6 +67,7 @@ exts_list = [ 'patches': [ 'scipy-1.11.1_disable-tests.patch', 'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch', + 'scipy-1.11.4_fix-deps-ellip_harm_2.patch', ], 'checksums': [ {'scipy-1.11.4.tar.gz': '90a2b78e7f5733b9de748f589f09225013685f9b218275257f8a8168ededaeaa'}, diff --git a/easybuild/easyconfigs/s/SciPy-bundle/scipy-1.11.4_fix-deps-ellip_harm_2.patch b/easybuild/easyconfigs/s/SciPy-bundle/scipy-1.11.4_fix-deps-ellip_harm_2.patch new file mode 100644 index 00000000000..22c2c22ae62 --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/scipy-1.11.4_fix-deps-ellip_harm_2.patch @@ -0,0 +1,38 @@ +fix for: 'scipy/special/cython_special.pxd' not found +see also https://github.com/scipy/scipy/issues/19167 + +From c4f6bdb78d1eac3e03399fbaacb2a1d4cf1167c8 Mon Sep 17 00:00:00 2001 +From: Ben Boeckel +Date: Thu, 31 Aug 2023 10:09:56 -0400 +Subject: [PATCH] BLD: special: fix dependencies for `_ellip_harm_2` + +Generating the source for `_ellip_harm_2` requires the +`cython_special.pxd` header to be generated. So add a dependency for +this. + +Closes gh-19167 + +Co-authored-by: Ralf Gommers +--- + scipy/special/meson.build | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/scipy/special/meson.build b/scipy/special/meson.build +index e7e25aa54e83..900064410381 100644 +--- a/scipy/special/meson.build ++++ b/scipy/special/meson.build +@@ -318,12 +318,12 @@ cython_special_pxd = custom_target('_dummy_cython_special.pxd', + uf_cython_gen = generator(cython, + arguments : cython_args, + output : '@BASENAME@.c', +- depends : [_cython_tree, _ufuncs_pxi_pxd_sources]) ++ depends : [_cython_tree, _ufuncs_pxi_pxd_sources, cython_special_pxd]) + + uf_cython_gen_cpp = generator(cython, + arguments : cython_cplus_args, + output : '@BASENAME@.cpp', +- depends : [_cython_tree, _ufuncs_pxi_pxd_sources]) ++ depends : [_cython_tree, _ufuncs_pxi_pxd_sources, cython_special_pxd]) + + py3.extension_module('_ufuncs', + [ From 95eeb54f4a97ca3bc5697abd907b700743e498c9 Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Wed, 3 Jan 2024 12:51:02 +0100 Subject: [PATCH 299/356] Add pytest-shard & pytest-flakefinder --- ...pytest-flakefinder-1.1.0-GCCcore-12.3.0.eb | 24 ++++++++++++++ .../pytest-shard-0.1.2-GCCcore-12.3.0.eb | 31 +++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-12.3.0.eb create mode 100644 easybuild/easyconfigs/p/pytest-shard/pytest-shard-0.1.2-GCCcore-12.3.0.eb diff --git a/easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..5ebf016d64c --- /dev/null +++ b/easybuild/easyconfigs/p/pytest-flakefinder/pytest-flakefinder-1.1.0-GCCcore-12.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'pytest-flakefinder' +version = '1.1.0' + +homepage = 'https://github.com/dropbox/pytest-flakefinder' +description = """Runs tests multiple times to expose flakiness.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [('binutils', '2.40')] +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = False + +sources = [SOURCE_TAR_GZ] +checksums = ['e2412a1920bdb8e7908783b20b3d57e9dad590cc39a93e8596ffdd493b403e0e'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pytest-shard/pytest-shard-0.1.2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pytest-shard/pytest-shard-0.1.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..f5a4e364a1d --- /dev/null +++ b/easybuild/easyconfigs/p/pytest-shard/pytest-shard-0.1.2-GCCcore-12.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'pytest-shard' +version = '0.1.2' + +homepage = 'https://github.com/AdamGleave/pytest-shard' +description = """pytest plugin to support parallelism across multiple machines. + +Shards tests based on a hash of their test name enabling easy parallelism across machines, +suitable for a wide variety of continuous integration services. +Tests are split at the finest level of granularity, individual test cases, +enabling parallelism even if all of your tests are in a single file +(or even single parameterized test method). +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [('binutils', '2.40')] +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = False + +sources = [SOURCE_TAR_GZ] +checksums = ['b86a967fbfd1c8e50295095ccda031b7e890862ee06531d5142844f4c1d1cd67'] + +moduleclass = 'tools' From f511244a80c05ddeca9f3dda5ed2fba27f531da4 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Wed, 3 Jan 2024 13:34:29 +0100 Subject: [PATCH 300/356] add checksum to easyconfig for SciPy-bundle 2023.11 for scipy-1.11.4_fix-deps-ellip_harm_2.patch --- .../s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb index 23682b7b5ed..ae7ab11bbc4 100644 --- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023b.eb @@ -74,6 +74,8 @@ exts_list = [ {'scipy-1.11.1_disable-tests.patch': '906bfb03397d94882ccdc1b93bc2c8e854e0e060c2d107c83042992394e6a4af'}, {'scipy-1.11.1_xfail-aarch64_test_maxiter_worsening.patch': '918c8e6fa8215d459126f267764c961bde729ea4a116c7f6287cddfdc58ffcea'}, + {'scipy-1.11.4_fix-deps-ellip_harm_2.patch': + '5c3b4d4dab76cd4c9398c87e6a67b39e3806994ef955fa35781b49f9f99328a8'}, ], 'enable_slow_tests': True, 'ignore_test_result': False, From 295a900b99f5a5fdb6ab86ee3413781c70fa4c85 Mon Sep 17 00:00:00 2001 From: WilleBell Date: Wed, 3 Jan 2024 13:45:23 +0100 Subject: [PATCH 301/356] adding easyconfigs: angsd-0.940-GCC-12.3.0.eb --- .../a/angsd/angsd-0.940-GCC-12.3.0.eb | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 easybuild/easyconfigs/a/angsd/angsd-0.940-GCC-12.3.0.eb diff --git a/easybuild/easyconfigs/a/angsd/angsd-0.940-GCC-12.3.0.eb b/easybuild/easyconfigs/a/angsd/angsd-0.940-GCC-12.3.0.eb new file mode 100644 index 00000000000..fdb6426d1ca --- /dev/null +++ b/easybuild/easyconfigs/a/angsd/angsd-0.940-GCC-12.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'MakeCp' + +name = 'angsd' +version = '0.940' + +homepage = 'http://www.popgen.dk/angsd' +description = """Program for analysing NGS data.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +github_account = 'ANGSD' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['73b43eb553892721c7d5db5d6d883a17074ee4e07536a32871c3b1ac5f701ad7'] + +dependencies = [ + ('zlib', '1.2.13'), + ('bzip2', '1.0.8'), + ('XZ', '5.4.2'), + ('HTSlib', '1.18'), +] + +buildopts = "HTSSRC=systemwide" + +files_to_copy = [ + (['angsd', 'misc/supersim', 'misc/thetaStat', 'misc/realSFS', 'misc/msToGlf', + 'misc/smartCount', 'misc/printIcounts', 'misc/contamination', 'misc/splitgl', + 'misc/NGSadmix', 'misc/contamination2', 'misc/haploToPlink', 'misc/ngsPSMC', + 'misc/ibs'], 'bin'), + 'doc', +] + +sanity_check_paths = { + 'files': ['bin/angsd'], + 'dirs': ['doc'], +} + +sanity_check_commands = ["angsd --help"] + +moduleclass = 'bio' From 55a85f9b8b92f4cc70b2406cb7e427399d1c405d Mon Sep 17 00:00:00 2001 From: vsc47063 Date: Wed, 3 Jan 2024 14:33:23 +0100 Subject: [PATCH 302/356] adding easyconfigs: dask-2023.12.1-foss-2023a.eb --- .../d/dask/dask-2023.12.1-foss-2023a.eb | 67 +++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 easybuild/easyconfigs/d/dask/dask-2023.12.1-foss-2023a.eb diff --git a/easybuild/easyconfigs/d/dask/dask-2023.12.1-foss-2023a.eb b/easybuild/easyconfigs/d/dask/dask-2023.12.1-foss-2023a.eb new file mode 100644 index 00000000000..156c0c2bf37 --- /dev/null +++ b/easybuild/easyconfigs/d/dask/dask-2023.12.1-foss-2023a.eb @@ -0,0 +1,67 @@ +easyblock = 'PythonBundle' + +name = 'dask' +version = '2023.12.1' + +homepage = 'https://dask.org/' +description = """Dask natively scales Python. Dask provides advanced parallelism for analytics, enabling performance + at scale for the tools you love.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('PyYAML', '6.0'), + ('SciPy-bundle', '2023.07'), + ('bokeh', '3.2.2'), +] + +use_pip = True + +exts_list = [ + ('toolz', '0.12.0', { + 'checksums': ['88c570861c440ee3f2f6037c4654613228ff40c93a6c25e0eba70d17282c6194'], + }), + ('locket', '1.0.0', { + 'checksums': ['5c0d4c052a8bbbf750e056a8e65ccd309086f4f0f18a2eac306a8dfa4112a632'], + }), + ('partd', '1.4.0', { + 'checksums': ['aa0ff35dbbcc807ae374db56332f4c1b39b46f67bf2975f5151e0b4186aed0d5'], + }), + ('HeapDict', '1.0.1', { + 'checksums': ['8495f57b3e03d8e46d5f1b2cc62ca881aca392fd5cc048dc0aa2e1a6d23ecdb6'], + }), + ('zict', '3.0.0', { + 'checksums': ['e321e263b6a97aafc0790c3cfb3c04656b7066e6738c37fffcca95d803c9fba5'], + }), + ('tblib', '2.0.0', { + 'checksums': ['a6df30f272c08bf8be66e0775fad862005d950a6b8449b94f7c788731d70ecd7'], + }), + (name, version, { + 'checksums': ['0ac3acd5bdbfacb5ad6401ac7663a1135955b3fa051a118e1b8a88e87b6b44a2'], + }), + ('distributed', version, { + 'checksums': ['56e69d90c6099e066751907956144cf94d0bc7050bd69ef2ec8003e890c2540c'], + }), + ('dask-mpi', '2022.4.0', { + 'checksums': ['0a04f1d7d35a06cdff506593330d4414ea242c9172498ce191f5742eac499e17'], + }), + ('docrep', '0.3.2', { + 'checksums': ['ed8a17e201abd829ef8da78a0b6f4d51fb99a4cbd0554adbed3309297f964314'], + }), + ('dask-jobqueue', '0.8.2', { + 'checksums': ['d35407a05a0534347c5d958ae749b9f8535bec529857d013b6e5649cde43914a'], + }), +] + +sanity_check_paths = { + 'files': ['bin/dask-%s' % x for x in ['mpi', 'scheduler', 'ssh', 'worker']], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["dask-scheduler --help"] + +sanity_pip_check = True + +moduleclass = 'data' From 6443a39a8860e34affa0076a6e586ff8b73da433 Mon Sep 17 00:00:00 2001 From: vsc47063 Date: Wed, 3 Jan 2024 16:29:45 +0100 Subject: [PATCH 303/356] adding easyconfigs: radian-0.6.9-foss-2022b.eb --- .../r/radian/radian-0.6.9-foss-2022b.eb | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 easybuild/easyconfigs/r/radian/radian-0.6.9-foss-2022b.eb diff --git a/easybuild/easyconfigs/r/radian/radian-0.6.9-foss-2022b.eb b/easybuild/easyconfigs/r/radian/radian-0.6.9-foss-2022b.eb new file mode 100644 index 00000000000..68f9bbf320c --- /dev/null +++ b/easybuild/easyconfigs/r/radian/radian-0.6.9-foss-2022b.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +name = 'radian' +version = '0.6.9' + +homepage = "https://github.com/randy3k/radian" +description = """radian is an alternative console for the R program with multiline editing and rich syntax highlight.""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +dependencies = [ + ('Python', '3.10.8'), + ('R', '4.2.2'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'checksums': ['292cb074ffd37a6014e7c37490a182f61e1f6ab0ccd6d2313a0c25203833b774'], + }), + ('rchitect', '0.4.4', { + 'checksums': ['8762b47d8636774582c906891e5b0ec66ca4d48327fb7abf7db7d85d2c137df5'], + }), + ('prompt-toolkit', '3.0.43', { + 'sources': ['prompt_toolkit-%(version)s.tar.gz'], + 'checksums': ['3527b7af26106cbc65a040bcc84839a3566ec1b051bb0bfe953631e704b0ff7d'], + }), +] + +moduleclass = 'devel' From 618306d4e194420db6a8b66b53e071e220d633a9 Mon Sep 17 00:00:00 2001 From: WilleBell Date: Wed, 3 Jan 2024 19:08:04 +0100 Subject: [PATCH 304/356] adding easyconfigs: einops-0.7.0-GCCcore-12.3.0.eb, NiBabel-5.2.0-foss-2023a.eb, pydicom-2.4.4-GCCcore-12.3.0.eb --- .../e/einops/einops-0.7.0-GCCcore-12.3.0.eb | 30 ++++++++++++ .../n/NiBabel/NiBabel-5.2.0-foss-2023a.eb | 47 +++++++++++++++++++ .../p/pydicom/pydicom-2.4.4-GCCcore-12.3.0.eb | 26 ++++++++++ 3 files changed, 103 insertions(+) create mode 100644 easybuild/easyconfigs/e/einops/einops-0.7.0-GCCcore-12.3.0.eb create mode 100644 easybuild/easyconfigs/n/NiBabel/NiBabel-5.2.0-foss-2023a.eb create mode 100644 easybuild/easyconfigs/p/pydicom/pydicom-2.4.4-GCCcore-12.3.0.eb diff --git a/easybuild/easyconfigs/e/einops/einops-0.7.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/e/einops/einops-0.7.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..a18dab2ce62 --- /dev/null +++ b/easybuild/easyconfigs/e/einops/einops-0.7.0-GCCcore-12.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'PythonPackage' + +name = 'einops' +version = '0.7.0' + +homepage = 'https://einops.rocks/' +description = """ +Flexible and powerful tensor operations for readable and reliable code. +Supports numpy, pytorch, tensorflow, jax, and others.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['b2b04ad6081a3b227080c9bf5e3ace7160357ff03043cd66cc5b2319eb7031d1'] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('hatchling', '1.18.0'), +] + +download_dep_fail = True +use_pip = True + +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/n/NiBabel/NiBabel-5.2.0-foss-2023a.eb b/easybuild/easyconfigs/n/NiBabel/NiBabel-5.2.0-foss-2023a.eb new file mode 100644 index 00000000000..ffc9dd60c3b --- /dev/null +++ b/easybuild/easyconfigs/n/NiBabel/NiBabel-5.2.0-foss-2023a.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonBundle' + +name = 'NiBabel' +version = '5.2.0' + +homepage = 'https://nipy.github.io/nibabel' +description = """NiBabel provides read/write access to some common medical and neuroimaging file formats, + including: ANALYZE (plain, SPM99, SPM2 and later), GIFTI, NIfTI1, NIfTI2, MINC1, MINC2, MGH and ECAT + as well as Philips PAR/REC. We can read and write Freesurfer geometry, and read Freesurfer morphometry and + annotation files. There is some very limited support for DICOM. NiBabel is the successor of PyNIfTI.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Pillow', '10.0.0'), + ('pydicom', '2.4.4'), + ('hatchling', '1.18.0'), +] + +use_pip = True + +exts_list = [ + ('bz2file', '0.98', { + 'checksums': ['64c1f811e31556ba9931953c8ec7b397488726c63e09a4c67004f43bdd28da88'], + }), + ('nibabel', version, { + 'checksums': ['3df8f1ab981d1bd92f4331d565528d126ab9717fdbd4cfe68f43fcd1c2bf3f52'], + }), +] + +fix_python_shebang_for = ['bin/*'] + +sanity_check_paths = { + 'files': ['bin/nib-dicomfs', 'bin/nib-diff', 'bin/nib-ls', 'bin/nib-nifti-dx', 'bin/parrec2nii'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "nib-diff --help", + "parrec2nii --help", +] + +sanity_pip_check = True + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/pydicom/pydicom-2.4.4-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pydicom/pydicom-2.4.4-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..dc677434201 --- /dev/null +++ b/easybuild/easyconfigs/p/pydicom/pydicom-2.4.4-GCCcore-12.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'pydicom' +version = '2.4.4' + +homepage = 'https://pydicom.github.io/' +description = "Pure python package for DICOM medical file reading and writing." + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['42c06ed74331174111dd42c89db774a13fc472abe18015f22c5aba80cddb7843'] + +builddependencies = [ + ('binutils', '2.40'), +] +dependencies = [ + ('Python', '3.11.3'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'vis' From 86149154a6c5de618258ab5187efe3867c1400fa Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Wed, 3 Jan 2024 21:08:35 +0100 Subject: [PATCH 305/356] add missing SciPy-bundle dependency to TensorRT easyconfig --- .../t/TensorRT/TensorRT-8.6.1-foss-2022a-CUDA-11.7.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/t/TensorRT/TensorRT-8.6.1-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/t/TensorRT/TensorRT-8.6.1-foss-2022a-CUDA-11.7.0.eb index d3862ffba61..02ef8ec6c80 100644 --- a/easybuild/easyconfigs/t/TensorRT/TensorRT-8.6.1-foss-2022a-CUDA-11.7.0.eb +++ b/easybuild/easyconfigs/t/TensorRT/TensorRT-8.6.1-foss-2022a-CUDA-11.7.0.eb @@ -1,4 +1,3 @@ - name = 'TensorRT' version = '8.6.1' versionsuffix = '-CUDA-%(cudaver)s' @@ -18,6 +17,7 @@ builddependencies = [ dependencies = [ ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), ('CUDA', '11.7.0', '', SYSTEM), ('cuDNN', '8.4.1.50', '-CUDA-%(cudaver)s', SYSTEM), ('protobuf-python', '3.19.4'), From c3c64a283f9b5e26052b3d6d2743bccfbe1a3498 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Wed, 3 Jan 2024 22:03:53 +0100 Subject: [PATCH 306/356] adding easyconfigs: EggLib-3.3.0-GCC-13.2.0.eb --- .../e/EggLib/EggLib-3.3.0-GCC-13.2.0.eb | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 easybuild/easyconfigs/e/EggLib/EggLib-3.3.0-GCC-13.2.0.eb diff --git a/easybuild/easyconfigs/e/EggLib/EggLib-3.3.0-GCC-13.2.0.eb b/easybuild/easyconfigs/e/EggLib/EggLib-3.3.0-GCC-13.2.0.eb new file mode 100644 index 00000000000..7ccad4936f3 --- /dev/null +++ b/easybuild/easyconfigs/e/EggLib/EggLib-3.3.0-GCC-13.2.0.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'EggLib' +version = '3.3.0' + +homepage = 'https://egglib.org' +description = """EggLib is a C++/Python library and program package for evolutionary genetics and genomics.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['781b8e01d16762026b18514687be40acf68f97cdd975ea670854d74d2f8bd5c5'] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), +] + +download_dep_fail = True +use_pip = True + +sanity_pip_check = True + +moduleclass = 'bio' From 2a6ad97e995f39edc8dbd642b3d463f93693295f Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Thu, 4 Jan 2024 06:38:31 +0800 Subject: [PATCH 307/356] update source url for BGW 3.1.0 --- .../easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb index 4653db0fdb7..66bc90e3a29 100644 --- a/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb +++ b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb @@ -9,8 +9,8 @@ description = """The BerkeleyGW Package is a set of computer codes that calculat toolchain = {'name': 'foss', 'version': '2022a'} toolchainopts = {'usempi': True, 'openmp': True} -source_urls = ['https://files.berkeleygw.org/'] -sources = [SOURCE_TAR_GZ] +source_urls = ['https://app.box.com/shared/static/'] +sources = [{'download_filename': '2bik75lrs85zt281ydbup2xa7i5594gy.gz', 'filename': SOURCE_TAR_GZ}] patches = [ 'BerkeleyGW-3.1.0_tests.patch', 'BerkeleyGW-3.0.1_makefile.patch', From 0ef30d587692b8f5c9f3713adfeed5fbc8a7187c Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Thu, 4 Jan 2024 11:25:04 +0800 Subject: [PATCH 308/356] update BerkeleyGW-3.1.0_makefile.patch --- .../BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb | 4 ++-- .../BerkeleyGW-3.1.0_makefile.patch | 24 +++++++++++++++++++ 2 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_makefile.patch diff --git a/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb index 66bc90e3a29..a4a6cdb6e35 100644 --- a/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb +++ b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-foss-2022a.eb @@ -13,12 +13,12 @@ source_urls = ['https://app.box.com/shared/static/'] sources = [{'download_filename': '2bik75lrs85zt281ydbup2xa7i5594gy.gz', 'filename': SOURCE_TAR_GZ}] patches = [ 'BerkeleyGW-3.1.0_tests.patch', - 'BerkeleyGW-3.0.1_makefile.patch', + 'BerkeleyGW-3.1.0_makefile.patch', ] checksums = [ {'BerkeleyGW-3.1.0.tar.gz': '7e890a5faa5a6bb601aa665c73903b3af30df7bdd13ee09362b69793bbefa6d2'}, {'BerkeleyGW-3.1.0_tests.patch': 'ef73cb7b69a6aad0da90538ef673e978e159d96e62147a304780b1ec25a4c156'}, - {'BerkeleyGW-3.0.1_makefile.patch': '56d90dc4e43db379441b6a1802e24f1f1356cd4aca4eb6d8b673f6c7926a7406'}, + {'BerkeleyGW-3.1.0_makefile.patch': '7a8b4bb593d75cf51ca42f94cd2b0ae5440b80e53e0cd00f183821539bc43fc6'}, ] dependencies = [ diff --git a/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_makefile.patch b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_makefile.patch new file mode 100644 index 00000000000..f5b9c258b23 --- /dev/null +++ b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_makefile.patch @@ -0,0 +1,24 @@ +* don't rebuild flavors when installing and checking, and check using MPI +author: Miguel Dias Costa (National University of Singapore) +--- Makefile.orig 2024-01-04 10:02:31.992454794 +0800 ++++ Makefile 2024-01-04 10:02:52.863330557 +0800 +@@ -130,7 +130,7 @@ + cp flavor_cplx.mk flavor.mk + $(MAKE) all + +-install: all ++install: + ifdef INSTDIR + mkdir -p $(INSTDIR)/bin + install bin/*.x $(INSTDIR)/bin/ +@@ -152,8 +152,8 @@ + $(error Error: Please define installation prefix INSTDIR via 'make install INSTDIR='.) + endif + +-check: all +- cd testsuite && $(MAKE) check ++check: ++ cd testsuite && $(MAKE) check-parallel + + check-save: all + cd testsuite && $(MAKE) check-save From c02f3ed366cfa4363341a2c5a1f39e6fcb00b6af Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Thu, 4 Jan 2024 09:37:08 +0100 Subject: [PATCH 309/356] add custom sanity check for EggLib 3.3.0 --- easybuild/easyconfigs/e/EggLib/EggLib-3.3.0-GCC-13.2.0.eb | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/easybuild/easyconfigs/e/EggLib/EggLib-3.3.0-GCC-13.2.0.eb b/easybuild/easyconfigs/e/EggLib/EggLib-3.3.0-GCC-13.2.0.eb index 7ccad4936f3..e145d952fb9 100644 --- a/easybuild/easyconfigs/e/EggLib/EggLib-3.3.0-GCC-13.2.0.eb +++ b/easybuild/easyconfigs/e/EggLib/EggLib-3.3.0-GCC-13.2.0.eb @@ -19,6 +19,13 @@ dependencies = [ download_dep_fail = True use_pip = True +sanity_check_paths = { + 'files': ['bin/egglib-config', 'bin/egglib-test'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["egglib-config --help"] + sanity_pip_check = True moduleclass = 'bio' From 7cf28d00399725298a49d6d6cfac91bf1234c7d7 Mon Sep 17 00:00:00 2001 From: vsc47063 Date: Thu, 4 Jan 2024 11:25:53 +0100 Subject: [PATCH 310/356] update extensions versions --- easybuild/easyconfigs/d/dask/dask-2023.12.1-foss-2023a.eb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/easybuild/easyconfigs/d/dask/dask-2023.12.1-foss-2023a.eb b/easybuild/easyconfigs/d/dask/dask-2023.12.1-foss-2023a.eb index 156c0c2bf37..149f0a91632 100644 --- a/easybuild/easyconfigs/d/dask/dask-2023.12.1-foss-2023a.eb +++ b/easybuild/easyconfigs/d/dask/dask-2023.12.1-foss-2023a.eb @@ -26,8 +26,8 @@ exts_list = [ ('locket', '1.0.0', { 'checksums': ['5c0d4c052a8bbbf750e056a8e65ccd309086f4f0f18a2eac306a8dfa4112a632'], }), - ('partd', '1.4.0', { - 'checksums': ['aa0ff35dbbcc807ae374db56332f4c1b39b46f67bf2975f5151e0b4186aed0d5'], + ('partd', '1.4.1', { + 'checksums': ['56c25dd49e6fea5727e731203c466c6e092f308d8f0024e199d02f6aa2167f67'], }), ('HeapDict', '1.0.1', { 'checksums': ['8495f57b3e03d8e46d5f1b2cc62ca881aca392fd5cc048dc0aa2e1a6d23ecdb6'], @@ -35,8 +35,8 @@ exts_list = [ ('zict', '3.0.0', { 'checksums': ['e321e263b6a97aafc0790c3cfb3c04656b7066e6738c37fffcca95d803c9fba5'], }), - ('tblib', '2.0.0', { - 'checksums': ['a6df30f272c08bf8be66e0775fad862005d950a6b8449b94f7c788731d70ecd7'], + ('tblib', '3.0.0', { + 'checksums': ['93622790a0a29e04f0346458face1e144dc4d32f493714c6c3dff82a4adb77e6'], }), (name, version, { 'checksums': ['0ac3acd5bdbfacb5ad6401ac7663a1135955b3fa051a118e1b8a88e87b6b44a2'], From 2f8a4179c5326f32e233cbcd190273296a02a486 Mon Sep 17 00:00:00 2001 From: vsc47063 Date: Thu, 4 Jan 2024 11:37:31 +0100 Subject: [PATCH 311/356] add sanity check + sort exts_list --- .../easyconfigs/r/radian/radian-0.6.9-foss-2022b.eb | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/easybuild/easyconfigs/r/radian/radian-0.6.9-foss-2022b.eb b/easybuild/easyconfigs/r/radian/radian-0.6.9-foss-2022b.eb index 68f9bbf320c..ffdcacd21d2 100644 --- a/easybuild/easyconfigs/r/radian/radian-0.6.9-foss-2022b.eb +++ b/easybuild/easyconfigs/r/radian/radian-0.6.9-foss-2022b.eb @@ -17,9 +17,6 @@ use_pip = True sanity_pip_check = True exts_list = [ - (name, version, { - 'checksums': ['292cb074ffd37a6014e7c37490a182f61e1f6ab0ccd6d2313a0c25203833b774'], - }), ('rchitect', '0.4.4', { 'checksums': ['8762b47d8636774582c906891e5b0ec66ca4d48327fb7abf7db7d85d2c137df5'], }), @@ -27,6 +24,16 @@ exts_list = [ 'sources': ['prompt_toolkit-%(version)s.tar.gz'], 'checksums': ['3527b7af26106cbc65a040bcc84839a3566ec1b051bb0bfe953631e704b0ff7d'], }), + (name, version, { + 'checksums': ['292cb074ffd37a6014e7c37490a182f61e1f6ab0ccd6d2313a0c25203833b774'], + }), ] +sanity_check_paths = { + 'files': ['bin/radian'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["radian --help"] + moduleclass = 'devel' From a7581e4afe6a332505923d95b7bf802c2b540f72 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Thu, 4 Jan 2024 14:00:51 +0100 Subject: [PATCH 312/356] adding easyconfigs: dorado-0.5.1-foss-2022a-CUDA-11.7.0.eb --- .../dorado-0.5.1-foss-2022a-CUDA-11.7.0.eb | 74 +++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 easybuild/easyconfigs/d/dorado/dorado-0.5.1-foss-2022a-CUDA-11.7.0.eb diff --git a/easybuild/easyconfigs/d/dorado/dorado-0.5.1-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/d/dorado/dorado-0.5.1-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..54b39322710 --- /dev/null +++ b/easybuild/easyconfigs/d/dorado/dorado-0.5.1-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,74 @@ +easyblock = 'CMakeMake' + +name = 'dorado' +version = '0.5.1' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/nanoporetech/dorado' +description = """Dorado is a high-performance, easy-to-use, open source basecaller for Oxford Nanopore reads.""" + +toolchain = {'name': 'foss', 'version': '2022a'} +# -Wno-error option is required to fix: +# error: void {anonymous}::convert_f32_to_f16_impl(c10::Half*, const float*, std::size_t) defined but not used +toolchainopts = {'usempi': True, 'extra_cxxflags': "-Wno-error=unused-function"} + +source_urls = ['https://github.com/nanoporetech/dorado/archive/'] +sources = [{ + 'git_config': { + 'url': 'https://github.com/nanoporetech', + 'repo_name': name, + 'tag': 'v%(version)s', + 'recursive': True, + }, + 'filename': SOURCE_TAR_GZ, +}] +checksums = [None] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.24.3'), +] + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('OpenSSL', '1.1', '', SYSTEM), + ('PyTorch', '1.12.0', '-CUDA-%(cudaver)s'), + ('HDF5', '1.12.2'), + ('zstd', '1.5.2'), + ('HTSlib', '1.15.1'), + ('kineto', '0.4.0'), + ('libaec', '1.0.6'), +] + +# don't link to OpenSSL static libraries +# fix for CMake Error "missing: OPENSSL_CRYPTO_LIBRARY" (if only shared OpenSSL libraries are available) +preconfigopts = "sed -i '/OPENSSL_USE_STATIC_LIBS TRUE/d' ../dorado/cmake/OpenSSL.cmake && " +preconfigopts += "export OPENSSL_ROOT_DIR=$EBROOTOPENSSL && " +# link in the ssl and crypto libs, to fix: +# undefined reference to symbol 'SSL_get_peer_certificate@@OPENSSL_1_1_0' +preconfigopts += "sed -i 's/OpenSSL::SSL/ssl\\n crypto/g' ../dorado/dorado/utils/CMakeLists.txt && " + +# don't use vendored HTSlib, use provided HTSlib dependency +preconfigopts += "rm -r ../dorado/dorado/3rdparty/htslib/ && " +preconfigopts += "sed -i '/add_dependencies.*htslib_project/d' ../dorado/CMakeLists.txt && " +preconfigopts += "sed -i '/add_dependencies.*htslib_project/d' ../dorado/dorado/utils/CMakeLists.txt && " +preconfigopts += "sed -i '/Htslib.cmake/d' ../dorado/CMakeLists.txt && " +# link with -lhts, not -lhtslib +preconfigopts += "sed -i 's/htslib/hts/g' ../dorado/CMakeLists.txt && " +preconfigopts += "sed -i 's/htslib/hts/g' ../dorado/dorado/utils/CMakeLists.txt && " + +configopts = "-DDORADO_INSTALL_PATH=%(installdir)s " +configopts += "-DCUDA_TOOLKIT_ROOT_DIR=$EBROOTCUDA -DCMAKE_CUDA_COMPILER=$EBROOTCUDA/bin/nvcc " +configopts += "-DDORADO_LIBTORCH_DIR=$EBROOTPYTORCH/lib " +# add -pthread flag (in addition to -lpthread) to avoid linking error: +# in function `_GLOBAL__sub_I_mutex.cc': mutex.cc:(.text.startup+0x17): undefined reference to `pthread_atfork' +configopts += '-DCMAKE_C_FLAGS="$CFLAGS -pthread" ' + +sanity_check_paths = { + 'files': ['bin/dorado'], + 'dirs': [], +} + +sanity_check_commands = ["dorado basecaller --help"] + +moduleclass = 'bio' From b4c306c797703ca1b5fadcab1ea110261d5cddff Mon Sep 17 00:00:00 2001 From: Ake Sandgren Date: Thu, 4 Jan 2024 15:24:56 +0100 Subject: [PATCH 313/356] Build SUNDIAL using SuiteSparse and enable KLU --- .../s/SUNDIALS/SUNDIALS-6.6.0-foss-2022b.eb | 24 +++++++--- .../s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a.eb | 24 +++++++--- ...ALS-6.6.0_fix_bad_find_library_calls.patch | 45 +++++++++++++++++++ 3 files changed, 83 insertions(+), 10 deletions(-) create mode 100644 easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0_fix_bad_find_library_calls.patch diff --git a/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2022b.eb b/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2022b.eb index 043d83c6d48..47032021b89 100755 --- a/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2022b.eb +++ b/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2022b.eb @@ -12,11 +12,25 @@ toolchainopts = {'openmp': True, 'usempi': True, 'pic': True} source_urls = ['https://github.com/LLNL/sundials/releases/download/v%(version)s/'] sources = [SOURCELOWER_TAR_GZ] -checksums = ['f90029b8da846c8faff5530fd1fa4847079188d040554f55c1d5d1e04743d29d'] - -builddependencies = [('CMake', '3.24.3')] - -configopts = "-DMPI_ENABLE=ON -DOPENMP_ENABLE=ON -DLAPACK_ENABLE=ON" +patches = [ + '%(name)s-%(version)s_fix_bad_find_library_calls.patch', +] + +builddependencies = [ + ('CMake', '3.24.3'), +] + +dependencies = [ + ('SuiteSparse', '5.13.0', '-METIS-5.1.0'), +] + +_copts = [ + '-DENABLE_MPI=ON', + '-DENABLE_OPENMP=ON', + '-DENABLE_LAPACK=ON', + '-DENABLE_KLU=ON', +] +configopts = ' '.join(_copts) local_solvers = ['arkode', 'cvode', 'cvodes', 'ida', 'idas', 'kinsol'] diff --git a/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a.eb b/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a.eb index 02bb2f3f2fd..ad6e8fa5b00 100644 --- a/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a.eb +++ b/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a.eb @@ -12,11 +12,25 @@ toolchainopts = {'openmp': True, 'usempi': True, 'pic': True} source_urls = ['https://github.com/LLNL/sundials/releases/download/v%(version)s/'] sources = [SOURCELOWER_TAR_GZ] -checksums = ['f90029b8da846c8faff5530fd1fa4847079188d040554f55c1d5d1e04743d29d'] - -builddependencies = [('CMake', '3.26.3')] - -configopts = "-DMPI_ENABLE=ON -DOPENMP_ENABLE=ON -DLAPACK_ENABLE=ON" +patches = [ + '%(name)s-%(version)s_fix_bad_find_library_calls.patch', +] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('SuiteSparse', '7.1.0'), +] + +_copts = [ + '-DENABLE_MPI=ON', + '-DENABLE_OPENMP=ON', + '-DENABLE_LAPACK=ON', + '-DENABLE_KLU=ON', +] +configopts = ' '.join(_copts) local_solvers = ['arkode', 'cvode', 'cvodes', 'ida', 'idas', 'kinsol'] diff --git a/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0_fix_bad_find_library_calls.patch b/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0_fix_bad_find_library_calls.patch new file mode 100644 index 00000000000..a6b9d3fd5f8 --- /dev/null +++ b/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0_fix_bad_find_library_calls.patch @@ -0,0 +1,45 @@ +Make FindKLU use default search paths so it finds our SuiteSparse installation. + +Åke Sandgren, 2023-12-20 +diff -ru sundials-6.6.0.orig/cmake/tpl/FindKLU.cmake sundials-6.6.0/cmake/tpl/FindKLU.cmake +--- sundials-6.6.0.orig/cmake/tpl/FindKLU.cmake 2023-07-20 20:47:41.062113287 +0200 ++++ sundials-6.6.0/cmake/tpl/FindKLU.cmake 2023-12-20 13:27:56.974985727 +0100 +@@ -55,25 +55,25 @@ + else () + # find library with user provided directory path + set(KLU_LIBRARY_NAME klu) +- find_library(KLU_LIBRARY ${KLU_LIBRARY_NAME} ${KLU_LIBRARY_DIR} NO_DEFAULT_PATH) ++ find_library(KLU_LIBRARY ${KLU_LIBRARY_NAME} ${KLU_LIBRARY_DIR}) + endif () + mark_as_advanced(KLU_LIBRARY) + + if (NOT AMD_LIBRARY) + set(AMD_LIBRARY_NAME amd) +- find_library(AMD_LIBRARY ${AMD_LIBRARY_NAME} ${KLU_LIBRARY_DIR} NO_DEFAULT_PATH) ++ find_library(AMD_LIBRARY ${AMD_LIBRARY_NAME} ${KLU_LIBRARY_DIR}) + mark_as_advanced(AMD_LIBRARY) + endif () + + if (NOT COLAMD_LIBRARY) + set(COLAMD_LIBRARY_NAME colamd) +- find_library(COLAMD_LIBRARY ${COLAMD_LIBRARY_NAME} ${KLU_LIBRARY_DIR} NO_DEFAULT_PATH) ++ find_library(COLAMD_LIBRARY ${COLAMD_LIBRARY_NAME} ${KLU_LIBRARY_DIR}) + mark_as_advanced(COLAMD_LIBRARY) + endif () + + if (NOT BTF_LIBRARY) + set(BTF_LIBRARY_NAME btf) +- find_library( BTF_LIBRARY ${BTF_LIBRARY_NAME} ${KLU_LIBRARY_DIR} NO_DEFAULT_PATH) ++ find_library( BTF_LIBRARY ${BTF_LIBRARY_NAME} ${KLU_LIBRARY_DIR}) + mark_as_advanced(BTF_LIBRARY) + endif () + +@@ -83,7 +83,7 @@ + if(WIN32 AND NOT MSYS) + set(CMAKE_FIND_LIBRARY_PREFIXES "") + endif() +- find_library( SUITESPARSECONFIG_LIBRARY ${SUITESPARSECONFIG_LIBRARY_NAME} ${KLU_LIBRARY_DIR} NO_DEFAULT_PATH) ++ find_library( SUITESPARSECONFIG_LIBRARY ${SUITESPARSECONFIG_LIBRARY_NAME} ${KLU_LIBRARY_DIR}) + mark_as_advanced(SUITESPARSECONFIG_LIBRARY) + endif () + From 0ed8dab455085eba55b0f4a2413bdaeab5149b5c Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Thu, 4 Jan 2024 22:39:23 +0800 Subject: [PATCH 314/356] adding easyconfigs: BerkeleyGW-3.1.0-intel-2022a.eb --- .../BerkeleyGW-3.1.0-intel-2022a.eb | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-intel-2022a.eb diff --git a/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-intel-2022a.eb b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-intel-2022a.eb new file mode 100644 index 00000000000..52af177a2af --- /dev/null +++ b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0-intel-2022a.eb @@ -0,0 +1,33 @@ +name = 'BerkeleyGW' +version = '3.1.0' + +homepage = 'https://www.berkeleygw.org' +description = """The BerkeleyGW Package is a set of computer codes that calculates the quasiparticle + properties and the optical responses of a large variety of materials from bulk periodic crystals to + nanostructures such as slabs, wires and molecules.""" + +toolchain = {'name': 'intel', 'version': '2022a'} +toolchainopts = {'usempi': True, 'openmp': True} + +source_urls = ['https://app.box.com/shared/static/'] +sources = [{'download_filename': '2bik75lrs85zt281ydbup2xa7i5594gy.gz', 'filename': SOURCE_TAR_GZ}] +patches = [ + 'BerkeleyGW-3.1.0_tests.patch', + 'BerkeleyGW-3.1.0_makefile.patch', +] +checksums = [ + {'BerkeleyGW-3.1.0.tar.gz': '7e890a5faa5a6bb601aa665c73903b3af30df7bdd13ee09362b69793bbefa6d2'}, + {'BerkeleyGW-3.1.0_tests.patch': 'ef73cb7b69a6aad0da90538ef673e978e159d96e62147a304780b1ec25a4c156'}, + {'BerkeleyGW-3.1.0_makefile.patch': '7a8b4bb593d75cf51ca42f94cd2b0ae5440b80e53e0cd00f183821539bc43fc6'}, +] + +dependencies = [ + ('ELPA', '2021.11.001'), + ('Perl', '5.34.1'), + ('Python', '3.10.4'), + ('h5py', '3.7.0'), +] + +runtest = True + +moduleclass = 'phys' From 8db717f279b8f5a4564509ea3b2321eb344b3297 Mon Sep 17 00:00:00 2001 From: Miguel Dias Costa Date: Thu, 4 Jan 2024 22:51:05 +0800 Subject: [PATCH 315/356] add patches --- .../BerkeleyGW-3.1.0_makefile.patch | 24 ++++ .../b/BerkeleyGW/BerkeleyGW-3.1.0_tests.patch | 131 ++++++++++++++++++ 2 files changed, 155 insertions(+) create mode 100644 easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_makefile.patch create mode 100644 easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_tests.patch diff --git a/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_makefile.patch b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_makefile.patch new file mode 100644 index 00000000000..f5b9c258b23 --- /dev/null +++ b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_makefile.patch @@ -0,0 +1,24 @@ +* don't rebuild flavors when installing and checking, and check using MPI +author: Miguel Dias Costa (National University of Singapore) +--- Makefile.orig 2024-01-04 10:02:31.992454794 +0800 ++++ Makefile 2024-01-04 10:02:52.863330557 +0800 +@@ -130,7 +130,7 @@ + cp flavor_cplx.mk flavor.mk + $(MAKE) all + +-install: all ++install: + ifdef INSTDIR + mkdir -p $(INSTDIR)/bin + install bin/*.x $(INSTDIR)/bin/ +@@ -152,8 +152,8 @@ + $(error Error: Please define installation prefix INSTDIR via 'make install INSTDIR='.) + endif + +-check: all +- cd testsuite && $(MAKE) check ++check: ++ cd testsuite && $(MAKE) check-parallel + + check-save: all + cd testsuite && $(MAKE) check-save diff --git a/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_tests.patch b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_tests.patch new file mode 100644 index 00000000000..924cfdf2b00 --- /dev/null +++ b/easybuild/easyconfigs/b/BerkeleyGW/BerkeleyGW-3.1.0_tests.patch @@ -0,0 +1,131 @@ +* allow test scripts to inherit environment +* set stack size ulimit to unlimited +* slightly raise tolerance in some tests +author: Miguel Dias Costa (National University of Singapore) +--- testsuite/run_testsuite.sh.orig 2019-07-25 14:48:12.000000000 +0800 ++++ testsuite/run_testsuite.sh 2019-07-25 14:47:50.000000000 +0800 +@@ -1,4 +1,4 @@ +-#!/bin/bash -l ++#!/bin/bash + # + # Copyright (C) 2005-2009 Heiko Appel, David Strubbe + # +--- testsuite/run_testsuite.sh.orig 2021-01-14 13:52:07.312389000 +0800 ++++ testsuite/run_testsuite.sh 2021-01-14 14:00:31.592579000 +0800 +@@ -66,6 +66,8 @@ + # Run all tests. Takes as first argument a list of testfile names. + function run_testsuite() { + ++ulimit -s unlimited ++ + tests="$1" + + # Check for 'preserve working directories' flag. + +--- MeanField/Utilities/mf_convert_wrapper.sh.orig 2019-07-26 09:52:27.648341000 +0800 ++++ MeanField/Utilities/mf_convert_wrapper.sh 2019-07-26 09:52:39.922114228 +0800 +@@ -1,4 +1,4 @@ +-#!/bin/bash -l ++#!/bin/bash + + # David Strubbe, October 2010 + # Wrapper for mf_convert.x +--- testsuite/GaAs-EPM/GaAs.test.orig 2019-07-26 10:45:19.798520000 +0800 ++++ testsuite/GaAs-EPM/GaAs.test 2019-07-26 10:45:37.753775275 +0800 +@@ -32,7 +32,7 @@ + Output : WFN.out + Input : WFN.in PIPE + +-Precision : 8e-15 ++Precision : 9e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.2710614199849328 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.2565373697755460 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.1322637363008994 +--- testsuite/Si-EPM/Si.test.orig 2021-01-14 14:45:33.627112000 +0800 ++++ testsuite/Si-EPM/Si.test 2021-01-14 14:46:33.049539000 +0800 +@@ -16,7 +16,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/Si-EPM/Si_cplx_spin.test.orig 2019-07-17 07:20:29.000000000 +0800 ++++ testsuite/Si-EPM/Si_cplx_spin.test 2021-01-14 14:46:51.922928000 +0800 +@@ -17,7 +17,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/Si-EPM_subspace/Si_subspace.test.orig 2019-07-17 07:20:32.000000000 +0800 ++++ testsuite/Si-EPM_subspace/Si_subspace.test 2021-01-14 14:47:15.433562000 +0800 +@@ -20,7 +20,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/Si-EPM_subspace/Si_subspace_cplx_spin.test.orig 2019-07-17 07:20:32.000000000 +0800 ++++ testsuite/Si-EPM_subspace/Si_subspace_cplx_spin.test 2021-01-14 14:47:30.610030000 +0800 +@@ -21,7 +21,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/Si-EPM_subspace/Si_subspace_cplx.test.orig 2019-07-17 07:20:32.000000000 +0800 ++++ testsuite/Si-EPM_subspace/Si_subspace_cplx.test 2021-01-14 14:47:45.250225000 +0800 +@@ -20,7 +20,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/Si-EPM/Si_hdf5_cplx_spin.test.orig 2021-10-27 09:15:36.543399656 +0800 ++++ testsuite/Si-EPM/Si_hdf5_cplx_spin.test 2021-10-27 09:16:19.549009302 +0800 +@@ -17,7 +17,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/Si-EPM/Si_hdf5.test.orig 2021-10-27 09:17:11.134541236 +0800 ++++ testsuite/Si-EPM/Si_hdf5.test 2021-10-27 09:17:28.086387460 +0800 +@@ -16,7 +16,7 @@ + Output : WFN.out + Input : WFN.in PIPE NOCOPY + +-Precision : 6e-15 ++Precision : 7e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.1283435360829054 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.3282472551260550 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.3490532646407310 +--- testsuite/GaAs-EPM/GaAs.test.orig 2024-01-03 11:40:10.045425888 +0800 ++++ testsuite/GaAs-EPM/GaAs.test 2024-01-03 11:41:04.884166571 +0800 +@@ -32,7 +32,7 @@ + Output : WFN.out + Input : WFN.in PIPE + +-Precision : 9e-15 ++Precision : 9e-14 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.2710614199849328 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.2565373697755460 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.1322637363008994 From f6dfb970144fe170294ea5eeabe7635bd24c0606 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Thu, 4 Jan 2024 14:59:25 +0000 Subject: [PATCH 316/356] include suggested changes --- .../easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb b/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb index 36a0c27b225..0a8281d1708 100644 --- a/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb +++ b/easybuild/easyconfigs/p/phono3py/phono3py-2.7.0-foss-2023a.eb @@ -8,10 +8,11 @@ description = """A simulation package of phonon-phonon interaction related prope toolchain = {'name': 'foss', 'version': '2023a'} -source_urls = ['https://github.com/phonopy/phono3py/archive/refs/tags/'] +github_account = 'phonopy' +source_urls = [GITHUB_SOURCE] sources = ['v%(version)s.tar.gz'] -checksums = ['8d2c6d52d4b9a25783d69fb3a502394ed02eba7d573c5f1a3e43fd74ac1e5ed3'] +checksums = ['26c91740bac42e7f654f2929033efa82c3751c8bebd2d861cbe37a573be86e8c'] dependencies = [ ('Python', '3.11.3'), From 256d9f5569050e878c0b551ba4bf6022573eb5d0 Mon Sep 17 00:00:00 2001 From: Ake Sandgren Date: Thu, 4 Jan 2024 16:03:00 +0100 Subject: [PATCH 317/356] SUNDIALS: add missing checksums --- .../easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2022b.eb | 5 +++++ .../easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a.eb | 5 +++++ 2 files changed, 10 insertions(+) mode change 100755 => 100644 easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2022b.eb diff --git a/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2022b.eb b/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2022b.eb old mode 100755 new mode 100644 index 47032021b89..565de5bcd7c --- a/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2022b.eb +++ b/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2022b.eb @@ -15,6 +15,11 @@ sources = [SOURCELOWER_TAR_GZ] patches = [ '%(name)s-%(version)s_fix_bad_find_library_calls.patch', ] +checksums = [ + {'sundials-6.6.0.tar.gz': 'f90029b8da846c8faff5530fd1fa4847079188d040554f55c1d5d1e04743d29d'}, + {'SUNDIALS-6.6.0_fix_bad_find_library_calls.patch': + 'c5e3248bd036fee17436649280ff7156a2722698c33ec20a5e635e3a60d16823'}, +] builddependencies = [ ('CMake', '3.24.3'), diff --git a/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a.eb b/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a.eb index ad6e8fa5b00..d3a8e2b177d 100644 --- a/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a.eb +++ b/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a.eb @@ -15,6 +15,11 @@ sources = [SOURCELOWER_TAR_GZ] patches = [ '%(name)s-%(version)s_fix_bad_find_library_calls.patch', ] +checksums = [ + {'sundials-6.6.0.tar.gz': 'f90029b8da846c8faff5530fd1fa4847079188d040554f55c1d5d1e04743d29d'}, + {'SUNDIALS-6.6.0_fix_bad_find_library_calls.patch': + 'c5e3248bd036fee17436649280ff7156a2722698c33ec20a5e635e3a60d16823'}, +] builddependencies = [ ('CMake', '3.26.3'), From def2702cf047f961d50890117181b20bf889ee8f Mon Sep 17 00:00:00 2001 From: Alexander Grund Date: Thu, 4 Jan 2024 16:57:26 +0100 Subject: [PATCH 318/356] fix lapack test failures in OpenBLAS 0.3.23/24 --- .../o/OpenBLAS/OpenBLAS-0.3.23-GCC-12.3.0.eb | 8 +++--- ...AS-0.3.23_disable-xDRGES-LAPACK-test.patch | 26 +++++++++++++++++++ .../o/OpenBLAS/OpenBLAS-0.3.24-GCC-13.2.0.eb | 8 +++--- 3 files changed, 32 insertions(+), 10 deletions(-) create mode 100644 easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.23_disable-xDRGES-LAPACK-test.patch diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.23-GCC-12.3.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.23-GCC-12.3.0.eb index 490f623ac15..2cbbd45397e 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.23-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.23-GCC-12.3.0.eb @@ -19,10 +19,9 @@ patches = [ 'OpenBLAS-0.3.20_fix-x86-cpuid.patch', 'OpenBLAS-0.3.20_use-xASUM-microkernels-on-new-intel-cpus.patch', 'OpenBLAS-0.3.21_fix-order-vectorization.patch', + 'OpenBLAS-0.3.23_disable-xDRGES-LAPACK-test.patch', 'OpenBLAS-0.3.23_fix-parallel-build.patch', - 'OpenBLAS-0.3.23_fix-lapack-test.patch', 'OpenBLAS-0.3.23_fix-tests-hang.patch', - 'OpenBLAS-0.3.23_disable-DDRGES3-LAPACK-test.patch', ] checksums = [ {'v0.3.23.tar.gz': '5d9491d07168a5d00116cdc068a40022c3455bf9293c7cb86a65b1054d7e5114'}, @@ -35,11 +34,10 @@ checksums = [ '1dbd0f9473963dbdd9131611b455d8a801f1e995eae82896186d3d3ffe6d5f03'}, {'OpenBLAS-0.3.21_fix-order-vectorization.patch': '08af834e5d60441fd35c128758ed9c092ba6887c829e0471ecd489079539047d'}, + {'OpenBLAS-0.3.23_disable-xDRGES-LAPACK-test.patch': + 'ab7e0af05f9b2a2ced32f3875e1e3767d9c3531a455421a38f7324350178a0ff'}, {'OpenBLAS-0.3.23_fix-parallel-build.patch': 'abe10ba3b0ca54772dbf235596e35325a5159018f6a60cfc88824c2c220d99d9'}, - {'OpenBLAS-0.3.23_fix-lapack-test.patch': 'f6b3d81061f136e34aaf5359bb80fb9d2bba28825cc1dd26179b8dd01a9a0054'}, {'OpenBLAS-0.3.23_fix-tests-hang.patch': '9de1fdee6edf3b2bb55e4639fdd92d2877b5f0ac880f7df2cfea47ecebf16609'}, - {'OpenBLAS-0.3.23_disable-DDRGES3-LAPACK-test.patch': - '36a16b4d3b867897413b43b774f8b57d641ad9a1b452e9de33ced198ab25e461'}, ] builddependencies = [ diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.23_disable-xDRGES-LAPACK-test.patch b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.23_disable-xDRGES-LAPACK-test.patch new file mode 100644 index 00000000000..bdc1262873a --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.23_disable-xDRGES-LAPACK-test.patch @@ -0,0 +1,26 @@ +disable failing DDRGES3 test in LAPACK 3.10 test suite, fixes "Error code from DDRGES3 = 9"; +see also https://github.com/OpenMathLib/OpenBLAS/issues/4032 +author: Kenneth Hoste (HPC-UGent) +Similar for SDRGES: SGGES returned INFO= 9. +See https://github.com/OpenMathLib/OpenBLAS/issues/4415 +Author: Alexander Grund (TU Dresden) +--- OpenBLAS-0.3.23/lapack-netlib/TESTING/dgd.in.orig 2023-09-29 08:05:53.089031858 +0200 ++++ OpenBLAS-0.3.23/lapack-netlib/TESTING/dgd.in 2023-09-29 08:08:32.234680735 +0200 +@@ -1,6 +1,6 @@ + DGS Data for the Real Nonsymmetric Schur Form Driver + 5 Number of matrix dimensions +-2 6 10 12 20 30 Matrix dimensions ++2 10 12 20 30 Matrix dimensions + 1 1 1 2 1 Parameters NB, NBMIN, NXOVER, NS, NBCOL + 10 Threshold for test ratios + .TRUE. Put T to test the error exits +--- OpenBLAS-0.3.23/lapack-netlib/TESTING/sgd.in.orig 2023-06-06 11:01:50.512947527 +0000 ++++ OpenBLAS-0.3.23/lapack-netlib/TESTING/sgd.in 2023-06-06 11:02:05.318078733 +0000 +@@ -1,6 +1,6 @@ + SGS Data for the Real Nonsymmetric Schur Form Driver + 5 Number of matrix dimensions +-2 6 10 12 20 30 Matrix dimensions ++2 10 12 20 30 Matrix dimensions + 1 1 1 2 1 Parameters NB, NBMIN, NXOVER, NS, NBCOL + 10 Threshold for test ratios + .TRUE. Put T to test the error exits diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.24-GCC-13.2.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.24-GCC-13.2.0.eb index be80c46e97c..4835813e357 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.24-GCC-13.2.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.24-GCC-13.2.0.eb @@ -18,8 +18,7 @@ patches = [ 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', 'OpenBLAS-0.3.20_use-xASUM-microkernels-on-new-intel-cpus.patch', 'OpenBLAS-0.3.21_fix-order-vectorization.patch', - 'OpenBLAS-0.3.23_fix-lapack-test.patch', - 'OpenBLAS-0.3.23_disable-DDRGES3-LAPACK-test.patch', + 'OpenBLAS-0.3.23_disable-xDRGES-LAPACK-test.patch', 'OpenBLAS-0.3.24_fix-czasum.patch', ] checksums = [ @@ -32,9 +31,8 @@ checksums = [ '1dbd0f9473963dbdd9131611b455d8a801f1e995eae82896186d3d3ffe6d5f03'}, {'OpenBLAS-0.3.21_fix-order-vectorization.patch': '08af834e5d60441fd35c128758ed9c092ba6887c829e0471ecd489079539047d'}, - {'OpenBLAS-0.3.23_fix-lapack-test.patch': 'f6b3d81061f136e34aaf5359bb80fb9d2bba28825cc1dd26179b8dd01a9a0054'}, - {'OpenBLAS-0.3.23_disable-DDRGES3-LAPACK-test.patch': - '36a16b4d3b867897413b43b774f8b57d641ad9a1b452e9de33ced198ab25e461'}, + {'OpenBLAS-0.3.23_disable-xDRGES-LAPACK-test.patch': + 'ab7e0af05f9b2a2ced32f3875e1e3767d9c3531a455421a38f7324350178a0ff'}, {'OpenBLAS-0.3.24_fix-czasum.patch': '8132b87c519fb08caa3bd7291fe8a1d0e1afe6fcb667d16f3020b46122afe20c'}, ] From 2e409e1dfc2d5cc3240656e4563fbe491c3e750b Mon Sep 17 00:00:00 2001 From: WilleBell Date: Thu, 4 Jan 2024 17:05:59 +0100 Subject: [PATCH 319/356] adding easyconfigs: RHEIA-1.1.6-foss-2022a.eb --- .../r/RHEIA/RHEIA-1.1.6-foss-2022a.eb | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 easybuild/easyconfigs/r/RHEIA/RHEIA-1.1.6-foss-2022a.eb diff --git a/easybuild/easyconfigs/r/RHEIA/RHEIA-1.1.6-foss-2022a.eb b/easybuild/easyconfigs/r/RHEIA/RHEIA-1.1.6-foss-2022a.eb new file mode 100644 index 00000000000..bf5b3e406ba --- /dev/null +++ b/easybuild/easyconfigs/r/RHEIA/RHEIA-1.1.6-foss-2022a.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonBundle' + +name = 'RHEIA' +version = '1.1.6' + +homepage = 'https://github.com/rheia-framework/RHEIA' +description = "Robust design optimization of renewable Hydrogen and dErIved energy cArrier systems" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), # deap, numpy, pandas, scipy + ('h5py', '3.7.0'), + ('matplotlib', '3.5.2'), +] + +use_pip = True + +exts_list = [ + ('pvlib', '0.10.3', { + 'checksums': ['024a1b523d73a633323612e7f315a1709cf06d1fd43ff0821901f66a4068b2d9'], + }), + ('pyDOE', '0.3.8', { + 'modulename': '%(name)s', + 'source_tmpl': '%(name)s-%(version)s.zip', + 'checksums': ['cbd6f14ae26d3c9f736013205f53ea1191add4567033c3ee77b7dd356566c4b6'], + }), + ('SobolSequence', '0.2.1', { + 'modulename': 'sobol', + 'checksums': ['b2b4b57451b8d2e79ddb07efa23bc471dfdd436ea357d6368666bdc364df3eb1'], + }), + ('rheia', version, { + 'sources': ['%(namelower)s-%(version)s.tar.gz'], + 'checksums': ['4af382163ee3972881bc6ba59099c3f19965001d1c65eeeaea8343e0d3b77621'], + }), +] + +sanity_pip_check = True + +moduleclass = 'math' From 680f513a5dc5b52eee4b7308f3747a24b698392c Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Thu, 4 Jan 2024 21:10:01 +0100 Subject: [PATCH 320/356] adding easyconfigs: medaka-1.11.3-foss-2022a.eb --- .../m/medaka/medaka-1.11.3-foss-2022a.eb | 79 +++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2022a.eb diff --git a/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2022a.eb b/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2022a.eb new file mode 100644 index 00000000000..85c733711d1 --- /dev/null +++ b/easybuild/easyconfigs/m/medaka/medaka-1.11.3-foss-2022a.eb @@ -0,0 +1,79 @@ +# This is a contribution from HPCNow! (http://hpcnow.com) +# Copyright:: HPCNow! +# Authors:: Danilo Gonzalez +# License:: GPL-v3.0 +# Updated to foss-2020b to use with artic tool +# J. Sassmannshausen (GSTT/NHS UK) +# Updated to 1.5.0 +# Jasper Grimm (UoY) + +easyblock = 'PythonBundle' + +name = 'medaka' +version = '1.11.3' + +homepage = 'https://github.com/nanoporetech/medaka' +description = "medaka is a tool to create a consensus sequence from nanopore sequencing data." + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('Autotools', '20220317'), + ('CMake', '3.24.3'), +] + +_minimap_ver = '2.24' +dependencies = [ + ('Python', '3.10.4'), # includes cffi + # tensorflow~=2.10.0 required by medaka 1.11.3, see requirements.txt + ('TensorFlow', '2.11.0'), + ('Pysam', '0.19.1'), + ('SAMtools', '1.16.1'), + ('minimap2', _minimap_ver), + ('HTSlib', '1.15.1'), # for tabix, bgzip + ('Racon', '1.5.0'), + ('edlib', '1.3.9'), + ('python-parasail', '1.3.3'), + ('ont-fast5-api', '4.1.1'), + ('WhatsHap', '1.7'), + ('intervaltree-python', '3.1.0'), + ('BCFtools', '1.15.1'), + ('pybind11', '2.9.2'), + ('spoa', '4.0.7'), +] + +use_pip = True + +exts_list = [ + ('mappy', _minimap_ver, { + 'checksums': ['35a2fb73ef14173283d5abb31e7a318429e0330c3be95851df38dd83d4ff9af9'], + }), + # medaka 1.11.3 requires pyspoa >= 0.2.1 + ('pyspoa', '0.2.1', { + 'checksums': ['a8a7b7df3faa1b5bb16d6b4e82099b1c9aca604c8288bcf8ca4960d376f7ff8c'], + 'modulename': 'spoa', + }), + ('wurlitzer', '3.0.3', { + 'checksums': ['224f5fe70618be3872c05dfddc8c457191ec1870654596279fcc1edadebe3e5b'], + }), + (name, version, { + 'checksums': ['940568212d152f573270967b02f6e841561cc43138b6aa15783c371457fef7b9'], + # remove TensorFlow version requirement which is too strict + 'preinstallopts': "sed -i 's/tensorflow.*/tensorflow/g' requirements.txt && ", + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/medaka', 'bin/medaka_consensus', 'bin/medaka_version_report'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "medaka --help", + "medaka_version_report", +] + +moduleclass = 'bio' From 6cb05dc708bc818962ee6bf7e17f1e895d865850 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Thu, 4 Jan 2024 21:32:24 +0100 Subject: [PATCH 321/356] adding easyconfigs: XlsxWriter-3.1.9-GCCcore-13.2.0.eb --- .../XlsxWriter-3.1.9-GCCcore-13.2.0.eb | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 easybuild/easyconfigs/x/XlsxWriter/XlsxWriter-3.1.9-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/x/XlsxWriter/XlsxWriter-3.1.9-GCCcore-13.2.0.eb b/easybuild/easyconfigs/x/XlsxWriter/XlsxWriter-3.1.9-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..74d6a7ef4c5 --- /dev/null +++ b/easybuild/easyconfigs/x/XlsxWriter/XlsxWriter-3.1.9-GCCcore-13.2.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'XlsxWriter' +version = '3.1.9' + +homepage = 'https://xlsxwriter.readthedocs.io/' +description = "A Python module for creating Excel XLSX files" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['de810bf328c6a4550f4ffd6b0b34972aeb7ffcf40f3d285a0413734f9b63a929'] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.5'), +] + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': ['bin/vba_extract.py'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['vba_extract.py --help'] + +sanity_pip_check = True + +moduleclass = 'tools' From ee89bf66c7029eefae225eedf45e5c3065eb483a Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Fri, 5 Jan 2024 10:59:56 +0100 Subject: [PATCH 322/356] adding easyconfigs: Gerris-20131206-gompi-2023a.eb --- .../g/Gerris/Gerris-20131206-gompi-2023a.eb | 67 +++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 easybuild/easyconfigs/g/Gerris/Gerris-20131206-gompi-2023a.eb diff --git a/easybuild/easyconfigs/g/Gerris/Gerris-20131206-gompi-2023a.eb b/easybuild/easyconfigs/g/Gerris/Gerris-20131206-gompi-2023a.eb new file mode 100644 index 00000000000..935d3835a63 --- /dev/null +++ b/easybuild/easyconfigs/g/Gerris/Gerris-20131206-gompi-2023a.eb @@ -0,0 +1,67 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Authors:: David Quigley (University of Warwick) +# License:: MIT/GPL +# $Id$ +# +## +easyblock = 'Bundle' + +name = 'Gerris' +version = '20131206' + +homepage = 'http://gfs.sourceforge.net/wiki/index.php/Main_Page' +description = """Gerris is a Free Software program for the solution of the partial + differential equations describing fluid flow""" + +toolchain = {'name': 'gompi', 'version': '2023a'} + +builddependencies = [ + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('GLib', '2.77.1'), # for GTS + ('gnuplot', '5.4.8'), # for gfsplot +] + +components = [ + ('GTS', '121130', { + 'easyblock': 'ConfigureMake', + 'source_urls': ['https://gts.sourceforge.net/tarballs/'], + 'sources': ['gts-snapshot-%(version)s.tar.gz'], + 'checksums': ['c23f72ab74bbf65599f8c0b599d6336fabe1ec2a09c19b70544eeefdc069b73b'], + 'start_dir': 'gts-snapshot-%(version)s', + }), + (name, version, { + 'easyblock': 'ConfigureMake', + 'source_urls': ['http://gerris.dalembert.upmc.fr/gerris/tarballs'], + 'sources': ['gerris-snapshot-131206.tar.gz'], + 'checksums': ['d5346a362b104ccc858c4b79938727d56c4654b103c268e54cf3aa56d0b55b39'], + 'start_dir': 'gerris-snapshot-%s' % version[2:], + 'preconfigopts': "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && ", + 'prebuildopts': "sed -i 's/MPI_Errhandler_set/MPI_Comm_set_errhandler/g' src/init.c && ", + }), +] + +sanity_check_paths = { + 'files': ['bin/gerris2D', 'bin/gerris3D', 'bin/gfscompare2D', 'bin/gfscompare3D', + 'bin/gfsjoin', 'bin/gfsjoin2D', 'bin/gfsjoin3D', + 'include/gfs.h', 'include/gts.h', 'include/gtsconfig.h', + 'lib/libgfs2D.a', 'lib/libgfs2D.%s' % SHLIB_EXT, + 'lib/libgfs3D.a', 'lib/libgfs3D.%s' % SHLIB_EXT, 'lib/libgts.%s' % SHLIB_EXT], + 'dirs': ['share/gerris', 'include/gerris'] +} + +sanity_check_commands = [ + "gerris2D -h", + "gerris3D -h", + "gfscompare2D -h", + "gfscompare3D -h", + "gfsjoin -h", + "gfsjoin2D -h", + "gfsjoin3D -h", +] + +moduleclass = 'cae' From 36b4ca08761b920fa93f704713561cd579711c74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Fri, 5 Jan 2024 11:18:16 +0100 Subject: [PATCH 323/356] adding easyconfigs: AMS-2023.104-iimpi-2022b-intelmpi.eb --- .../AMS/AMS-2023.104-iimpi-2022b-intelmpi.eb | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 easybuild/easyconfigs/a/AMS/AMS-2023.104-iimpi-2022b-intelmpi.eb diff --git a/easybuild/easyconfigs/a/AMS/AMS-2023.104-iimpi-2022b-intelmpi.eb b/easybuild/easyconfigs/a/AMS/AMS-2023.104-iimpi-2022b-intelmpi.eb new file mode 100644 index 00000000000..95e08257026 --- /dev/null +++ b/easybuild/easyconfigs/a/AMS/AMS-2023.104-iimpi-2022b-intelmpi.eb @@ -0,0 +1,47 @@ +easyblock = 'Tarball' + +name = 'AMS' +version = '2023.104' +versionsuffix = '-intelmpi' + +homepage = 'https://www.scm.com/amsterdam-modeling-suite/' +description = """ +The Amsterdam Modeling Suite (AMS) provides a comprehensive set of modules for +computational chemistry and materials science, from quantum mechanics to fluid +thermodynamics. +""" + +toolchain = {'name': 'iimpi', 'version': '2022b'} + +sources = ['ams%(version)s.pc64_linux.intelmpi.bin.tgz'] +checksums = ['c977014f14291f7f210be7e48bc28f71ab0a076a5af257e92f2c873f54d208af'] + +dependencies = [('libGLU', '9.0.2')] + +keepsymlinks = True + +sanity_check_paths = { + 'files': [], + 'dirs': ['atomicdata', 'bin', 'examples'], +} + +# check if license file is installed +# sanity_check_commands = ['dirac check'] + +modextrapaths = { + 'AMSHOME': '', + 'AMSBIN': 'bin', + 'AMSRESOURCES': 'atomicdata', +} + +modextravars = { + # use Intel MPI from EasyBuild + 'SCM_USE_LOCAL_IMPI': '1', +} + +modloadmsg = """These environment variables need to be defined before using AMS: + * $SCMLICENSE: path to AMS license file + * $SCM_TMPDIR: path to user scratch directory +""" + +moduleclass = 'chem' From 3fca2a0632f1185f72438c60edac931c2c010116 Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Fri, 5 Jan 2024 12:16:11 +0100 Subject: [PATCH 324/356] Ghostscript v10.02.1: Improve style of EB file --- .../g/Ghostscript/Ghostscript-10.02.1-GCCcore-13.2.0.eb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.02.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.02.1-GCCcore-13.2.0.eb index 5e464e9cb8d..61620daade7 100644 --- a/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.02.1-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/g/Ghostscript/Ghostscript-10.02.1-GCCcore-13.2.0.eb @@ -10,7 +10,9 @@ description = """Ghostscript is a versatile processor for PostScript data with t toolchain = {'name': 'GCCcore', 'version': '13.2.0'} toolchainopts = {'pic': True} -source_urls = ['https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10021'] +source_urls = [ + 'https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs%s/' % version.replace('.', ''), +] sources = [SOURCELOWER_TAR_GZ] checksums = ['e429e4f5b01615a4f0f93a4128e8a1a4d932dff983b1774174c79c0630717ad9'] @@ -18,6 +20,7 @@ builddependencies = [ ('binutils', '2.40'), ('pkgconf', '2.0.3'), ] + dependencies = [ ('zlib', '1.2.13'), ('libpng', '1.6.40'), From e62ee26d6b0cbde3d63e57ffb04e24d20bbeaf3e Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Fri, 5 Jan 2024 15:33:44 +0100 Subject: [PATCH 325/356] f90nml: archive GCCcore/10.2.0 version and add GCCcore/13.2.0 version --- .../f/f90nml/f90nml-1.4.4-GCCcore-10.2.0.eb | 0 .../f/f90nml/f90nml-1.4.4-GCCcore-13.2.0.eb | 28 +++++++++++++++++++ 2 files changed, 28 insertions(+) rename easybuild/easyconfigs/{ => __archive__}/f/f90nml/f90nml-1.4.4-GCCcore-10.2.0.eb (100%) create mode 100644 easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-10.2.0.eb b/easybuild/easyconfigs/__archive__/f/f90nml/f90nml-1.4.4-GCCcore-10.2.0.eb similarity index 100% rename from easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-10.2.0.eb rename to easybuild/easyconfigs/__archive__/f/f90nml/f90nml-1.4.4-GCCcore-10.2.0.eb diff --git a/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-13.2.0.eb b/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..1e31e9ee12e --- /dev/null +++ b/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-13.2.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'f90nml' +version = '1.4.4' + +homepage = 'https://github.com/marshallward/f90nml' +description = """A Python module and command line tool for parsing + Fortran namelist files""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['65e8e135779895245238cbf6be5b1b80d6c2b8c9350c9cdce6183a31bdfd7622'] + +builddependencies = [ + ('binutils', '2.40'), +] +dependencies = [ + ('Python', '3.11.5'), + ('PyYAML', '6.0.1') +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'tools' From 542c8cb96a32ec50e37309dea0e96088fed67375 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Fri, 5 Jan 2024 21:57:39 +0100 Subject: [PATCH 326/356] {lib}[GCC/12.2.0] SentencePiece v0.1.99, gperftools v2.14 --- .../gperftools-2.14-GCCcore-12.2.0.eb | 38 +++++++++++ .../SentencePiece-0.1.99-GCC-12.2.0.eb | 65 +++++++++++++++++++ 2 files changed, 103 insertions(+) create mode 100644 easybuild/easyconfigs/g/gperftools/gperftools-2.14-GCCcore-12.2.0.eb create mode 100644 easybuild/easyconfigs/s/SentencePiece/SentencePiece-0.1.99-GCC-12.2.0.eb diff --git a/easybuild/easyconfigs/g/gperftools/gperftools-2.14-GCCcore-12.2.0.eb b/easybuild/easyconfigs/g/gperftools/gperftools-2.14-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..3b659f0b9c8 --- /dev/null +++ b/easybuild/easyconfigs/g/gperftools/gperftools-2.14-GCCcore-12.2.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'gperftools' +version = '2.14' + +homepage = 'https://github.com/gperftools/gperftools' +description = """ +gperftools is a collection of a high-performance multi-threaded malloc() +implementation, plus some pretty nifty performance analysis tools. +Includes TCMalloc, heap-checker, heap-profiler and cpu-profiler. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +github_account = 'gperftools' +source_urls = [GITHUB_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['ab456a74af2f57a3ee6c20462f73022d11f7ffc22e470fc06dec39692c0ee5f3'] + +builddependencies = [ + ('Autotools', '20220317'), + ('binutils', '2.39'), +] + +dependencies = [ + ('libunwind', '1.6.2'), +] + +preconfigopts = "autoreconf -f -i && " +configopts = '--enable-libunwind' + +sanity_check_paths = { + 'files': ['bin/pprof', 'lib/libprofiler.a', 'lib/libprofiler.%s' % SHLIB_EXT, + 'lib/libtcmalloc.a', 'lib/libtcmalloc.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/SentencePiece/SentencePiece-0.1.99-GCC-12.2.0.eb b/easybuild/easyconfigs/s/SentencePiece/SentencePiece-0.1.99-GCC-12.2.0.eb new file mode 100644 index 00000000000..b0776f524b6 --- /dev/null +++ b/easybuild/easyconfigs/s/SentencePiece/SentencePiece-0.1.99-GCC-12.2.0.eb @@ -0,0 +1,65 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'Bundle' + +name = 'SentencePiece' +version = '0.1.99' + +homepage = 'https://github.com/google/sentencepiece' +description = "Unsupervised text tokenizer for Neural Network-based text generation." +github_account = 'google' + +toolchain = {'name': 'GCC', 'version': '12.2.0'} + +builddependencies = [ + ('CMake', '3.24.3'), +] + +dependencies = [ + ('Python', '3.10.8'), + ('gperftools', '2.14'), +] + +default_component_specs = { + 'source_urls': [GITHUB_LOWER_SOURCE], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['63617eaf56c7a3857597dcd8780461f57dd21381b56a27716ef7d7e02e14ced4'], +} + +components = [ + (name, version, { + 'easyblock': 'CMakeMake', + 'separate_build_dir': True, + 'start_dir': '%(namelower)s-%(version)s', + }), + ('sentencepiece', version, { + 'easyblock': 'PythonPackage', + 'start_dir': '%(namelower)s-%(version)s/python', + 'prebuildopts': 'export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && ', + 'preinstallopts': 'export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && ', + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, + }), +] + +postinstallcmds = ['cp -a %(builddir)s/%(namelower)s-%(version)s/{data,doc} %(installdir)s/'] + +sanity_check_paths = { + 'files': ['bin/spm_%s' % x for x in ['decode', 'encode', 'export_vocab', 'normalize', 'train']] + + ['lib/libsentencepiece.%s' % SHLIB_EXT, 'lib/libsentencepiece_train.%s' % SHLIB_EXT] + + ['include/sentencepiece_processor.h', 'include/sentencepiece_trainer.h'], + 'dirs': ['lib/python%(pyshortver)s/site-packages', 'data', 'doc'], +} + +sanity_check_commands = [ + 'spm_train --help', + "python -c 'import sentencepiece'", +] + +modextrapaths = { + 'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages'] +} + +moduleclass = 'lib' From a7a41b9bf708040592061fb0a947d8e1524a4f1b Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Fri, 5 Jan 2024 21:59:54 +0100 Subject: [PATCH 327/356] {vis}[foss/2022b] torchvision v0.14.1, Pillow-SIMD v9.5.0 --- .../Pillow-SIMD-9.5.0-GCCcore-12.2.0.eb | 40 +++++++++++++++++++ .../torchvision-0.14.1-foss-2022b.eb | 21 ++++++++++ 2 files changed, 61 insertions(+) create mode 100644 easybuild/easyconfigs/p/Pillow-SIMD/Pillow-SIMD-9.5.0-GCCcore-12.2.0.eb create mode 100644 easybuild/easyconfigs/t/torchvision/torchvision-0.14.1-foss-2022b.eb diff --git a/easybuild/easyconfigs/p/Pillow-SIMD/Pillow-SIMD-9.5.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/Pillow-SIMD/Pillow-SIMD-9.5.0-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..cec85fa1ae6 --- /dev/null +++ b/easybuild/easyconfigs/p/Pillow-SIMD/Pillow-SIMD-9.5.0-GCCcore-12.2.0.eb @@ -0,0 +1,40 @@ +easyblock = 'PythonPackage' + +name = 'Pillow-SIMD' +version = '9.5.0' + +homepage = 'https://github.com/uploadcare/pillow-simd' +description = """Pillow is the 'friendly PIL fork' by Alex Clark and Contributors. + PIL is the Python Imaging Library by Fredrik Lundh and Contributors.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = ['https://github.com/uploadcare/pillow-simd/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['1a9819343b451b7faf34663156e2abca3ae69ab604f82e445478c8133422e4f0'] + +builddependencies = [('binutils', '2.39')] + +dependencies = [ + ('Python', '3.10.8'), + ('libjpeg-turbo', '2.1.4'), + ('libpng', '1.6.38'), + ('zlib', '1.2.12'), + ('LibTIFF', '4.4.0'), + ('freetype', '2.12.1'), + ('libwebp', '1.3.1'), +] + +use_pip = True +download_dep_fail = True + +options = {'modulename': 'PIL'} + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/PIL'], +} + +sanity_pip_check = True + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/t/torchvision/torchvision-0.14.1-foss-2022b.eb b/easybuild/easyconfigs/t/torchvision/torchvision-0.14.1-foss-2022b.eb new file mode 100644 index 00000000000..4b7c687138c --- /dev/null +++ b/easybuild/easyconfigs/t/torchvision/torchvision-0.14.1-foss-2022b.eb @@ -0,0 +1,21 @@ +name = 'torchvision' +version = '0.14.1' + +homepage = 'https://github.com/pytorch/vision' +description = " Datasets, Transforms and Models specific to Computer Vision" + +toolchain = {'name': 'foss', 'version': '2022b'} + +source_urls = ['https://github.com/pytorch/vision/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['ced67e1cf1f97e168cdf271851a4d0b6d382ab7936e7bcbb39aaa87239c324b6'] + +builddependencies = [('CMake', '3.24.3')] + +dependencies = [ + ('Python', '3.10.8'), + ('Pillow-SIMD', '9.5.0'), + ('PyTorch', '1.13.1'), +] + +moduleclass = 'vis' From 524642617ea99549d8ced10092477d01c3d2950e Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Fri, 5 Jan 2024 22:00:35 +0100 Subject: [PATCH 328/356] adding easyconfigs: NLTK-3.8.1-foss-2022b.eb --- .../n/NLTK/NLTK-3.8.1-foss-2022b.eb | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 easybuild/easyconfigs/n/NLTK/NLTK-3.8.1-foss-2022b.eb diff --git a/easybuild/easyconfigs/n/NLTK/NLTK-3.8.1-foss-2022b.eb b/easybuild/easyconfigs/n/NLTK/NLTK-3.8.1-foss-2022b.eb new file mode 100644 index 00000000000..df522f5fd0a --- /dev/null +++ b/easybuild/easyconfigs/n/NLTK/NLTK-3.8.1-foss-2022b.eb @@ -0,0 +1,53 @@ +easyblock = 'PythonBundle' + +name = 'NLTK' +version = '3.8.1' + +homepage = 'https://www.nltk.org/' +description = "NLTK is a leading platform for building Python programs to work with human language data." + +toolchain = {'name': 'foss', 'version': '2022b'} + +dependencies = [ + ('Python', '3.10.8'), + ('SciPy-bundle', '2023.02'), + ('scikit-learn', '1.2.1'), + ('matplotlib', '3.7.0'), + ('tqdm', '4.64.1'), +] + +local_nltk_data_install = [] +# Install NLTK data sets (7.4 GB) +# local_nltk_data = '/path/to/database/nltk_data' +# local_nltk_data_install = [ +# "mkdir -p %s && NLTK_DATA=%s python -m nltk.downloader all" % (local_nltk_data, local_nltk_data) +# ] +# modextravars = {'NLTK_DATA': local_nltk_data} + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('regex', '2023.12.25', { + 'checksums': ['29171aa128da69afdf4bde412d5bedc335f2ca8fcfe4489038577d05f16181e5'], + }), + ('python-crfsuite', '0.9.10', { + 'modulename': 'pycrfsuite', + 'checksums': ['f38524631e2b533341f10f2c77689270dc6ecd5985495dccf7aa37b1045bc2e5'], + }), + (name, version, { + 'postinstallcmds': [], + 'source_tmpl': '%(namelower)s-%(version)s.zip', + 'use_pip_extras': 'corenlp,machine_learning,plot,tgrep', + 'checksums': ['1834da3d0682cba4f2cede2f9aad6b0fafb6461ba451db0efb6f9c39798d64d3'], + }), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'], +} + +sanity_check_commands = [('%(namelower)s', '--version')] + +moduleclass = 'devel' From 1b042331168af2fe31223c837952bd7e9e363d34 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Fri, 5 Jan 2024 22:01:15 +0100 Subject: [PATCH 329/356] adding easyconfigs: Sentence-Transformers-2.2.2-foss-2022b.eb --- .../Sentence-Transformers-2.2.2-foss-2022b.eb | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 easybuild/easyconfigs/s/Sentence-Transformers/Sentence-Transformers-2.2.2-foss-2022b.eb diff --git a/easybuild/easyconfigs/s/Sentence-Transformers/Sentence-Transformers-2.2.2-foss-2022b.eb b/easybuild/easyconfigs/s/Sentence-Transformers/Sentence-Transformers-2.2.2-foss-2022b.eb new file mode 100644 index 00000000000..54f5df43bc6 --- /dev/null +++ b/easybuild/easyconfigs/s/Sentence-Transformers/Sentence-Transformers-2.2.2-foss-2022b.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'Sentence-Transformers' +version = '2.2.2' + +homepage = 'https://github.com/UKPLab/sentence-transformers' +description = """Sentence Transformers provides an easy method to compute dense vector representations for sentences, + paragraphs, and images""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +dependencies = [ + ('Python', '3.10.8'), + ('SciPy-bundle', '2023.02'), + ('Transformers', '4.30.2'), + ('tqdm', '4.64.1'), + ('scikit-learn', '1.2.1'), + ('SentencePiece', '0.1.99'), + ('PyTorch', '1.13.1'), + ('torchvision', '0.14.1'), + ('NLTK', '3.8.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('sentence-transformers', version, { + 'checksums': ['dbc60163b27de21076c9a30d24b5b7b6fa05141d68cf2553fa9a77bf79a29136'], + }), +] + +moduleclass = 'lib' From 7332864f8420e33b97c0d591c62346bb00562d95 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Fri, 5 Jan 2024 22:17:12 +0100 Subject: [PATCH 330/356] adding easyconfigs: typing-extensions-4.9.0-GCCcore-12.2.0.eb --- .../typing-extensions-4.9.0-GCCcore-12.2.0.eb | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 easybuild/easyconfigs/t/typing-extensions/typing-extensions-4.9.0-GCCcore-12.2.0.eb diff --git a/easybuild/easyconfigs/t/typing-extensions/typing-extensions-4.9.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/t/typing-extensions/typing-extensions-4.9.0-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..6d941d6f971 --- /dev/null +++ b/easybuild/easyconfigs/t/typing-extensions/typing-extensions-4.9.0-GCCcore-12.2.0.eb @@ -0,0 +1,22 @@ +easyblock = 'PythonPackage' + +name = 'typing-extensions' +version = '4.9.0' + +homepage = 'https://github.com/python/typing/blob/master/typing_extensions/README.rst' +description = 'Typing Extensions – Backported and Experimental Type Hints for Python' + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +sources = ['typing_extensions-%(version)s.tar.gz'] +checksums = ['23478f88c37f27d76ac8aee6c905017a143b0b1b886c3c9f66bc2fd94f9f5783'] + +builddependencies = [('binutils', '2.39')] + +dependencies = [('Python', '3.10.8')] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'devel' From d40ca3baf1f8a3974794c8d32f2ce52701503b1f Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Fri, 5 Jan 2024 22:17:42 +0100 Subject: [PATCH 331/356] adding easyconfigs: ONNX-Runtime-1.16.3-foss-2022b.eb, ONNX-1.15.0-foss-2022b.eb and patches: ONNX-1.15.0_fix-protobuf-linking.patch --- .../ONNX-Runtime-1.16.3-foss-2022b.eb | 50 +++++++++++++++ .../o/ONNX/ONNX-1.15.0-foss-2022b.eb | 64 +++++++++++++++++++ .../ONNX-1.15.0_fix-protobuf-linking.patch | 18 ++++++ 3 files changed, 132 insertions(+) create mode 100644 easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.16.3-foss-2022b.eb create mode 100644 easybuild/easyconfigs/o/ONNX/ONNX-1.15.0-foss-2022b.eb create mode 100644 easybuild/easyconfigs/o/ONNX/ONNX-1.15.0_fix-protobuf-linking.patch diff --git a/easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.16.3-foss-2022b.eb b/easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.16.3-foss-2022b.eb new file mode 100644 index 00000000000..a94de01f28e --- /dev/null +++ b/easybuild/easyconfigs/o/ONNX-Runtime/ONNX-Runtime-1.16.3-foss-2022b.eb @@ -0,0 +1,50 @@ +easyblock = 'PythonBundle' + +name = 'ONNX-Runtime' +version = '1.16.3' + +homepage = 'https://onnxruntime.ai' +description = """ONNX Runtime inference can enable faster customer experiences and lower costs, +supporting models from deep learning frameworks such as PyTorch and +TensorFlow/Keras as well as classical machine learning libraries such as +scikit-learn, LightGBM, XGBoost, etc. ONNX Runtime is compatible with different +hardware, drivers, and operating systems, and provides optimal performance by +leveraging hardware accelerators where applicable alongside graph optimizations +and transforms.""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +dependencies = [ + ('Python', '3.10.8'), + ('ONNX', '1.15.0'), + ('flatbuffers-python', '23.1.4'), + ('sympy', '1.12'), +] + +use_pip = True + +local_whl_tmpl = 'onnxruntime-%%(version)s-cp310-cp310-manylinux_2_17_%s.manylinux2014_%s.whl' + +exts_list = [ + ('humanfriendly', '10.0', { + 'checksums': ['6b0b831ce8f15f7300721aa49829fc4e83921a9a301cc7f606be6686a2288ddc'], + }), + ('coloredlogs', '15.0.1', { + 'checksums': ['7c991aa71a4577af2f82600d8f8f3a89f936baeaf9b50a9c197da014e5bf16b0'], + }), + (name, version, { + 'source_urls': ['http://pypi.python.org/packages/source/o/onnxruntime'], + 'sources': [local_whl_tmpl % ('%(arch)s', '%(arch)s')], + 'checksums': [{ + local_whl_tmpl % ('x86_64', 'x86_64'): + 'ef2b1fc269cabd27f129fb9058917d6fdc89b188c49ed8700f300b945c81f889', + local_whl_tmpl % ('aarch64', 'aarch64'): + '5f91f5497fe3df4ceee2f9e66c6148d9bfeb320cd6a71df361c66c5b8bac985a', + }], + 'modulename': 'onnxruntime', + }), +] + +sanity_pip_check = True + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/o/ONNX/ONNX-1.15.0-foss-2022b.eb b/easybuild/easyconfigs/o/ONNX/ONNX-1.15.0-foss-2022b.eb new file mode 100644 index 00000000000..0125931898c --- /dev/null +++ b/easybuild/easyconfigs/o/ONNX/ONNX-1.15.0-foss-2022b.eb @@ -0,0 +1,64 @@ +easyblock = 'PythonPackage' + +name = 'ONNX' +version = '1.15.0' + +homepage = 'https://onnx.ai' +description = """ +Open Neural Network Exchange (ONNX) is an open ecosystem that empowers AI +developers to choose the right tools as their project evolves. ONNX provides an +open source format for AI models, both deep learning and traditional ML. It +defines an extensible computation graph model, as well as definitions of +built-in operators and standard data types. Currently we focus on the +capabilities needed for inferencing (scoring).""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +sources = [SOURCELOWER_TAR_GZ] +patches = ['ONNX-1.15.0_fix-protobuf-linking.patch'] +checksums = [ + {'onnx-1.15.0.tar.gz': 'b18461a7d38f286618ca2a6e78062a2a9c634ce498e631e708a8041b00094825'}, + {'ONNX-1.15.0_fix-protobuf-linking.patch': '5c11eca5275a25d69f989571fe1f387b84c7334478356577f6f6349c5954f54d'}, +] + +builddependencies = [ + ('CMake', '3.24.3'), + # more recent setuptools required to fix: AttributeError: editable_mode + ('setuptools', '64.0.3'), +] + +dependencies = [ + ('Python', '3.10.8'), + ('SciPy-bundle', '2023.02'), + ('protobuf-python', '4.23.0'), + ('typing-extensions', '4.9.0'), +] + +use_pip = True +download_dep_fail = True + +# hardcode version in pyproject.toml rather than determining it dynamically +preinstallopts = """sed -i 's/"version",//g' pyproject.toml && """ +preinstallopts += """sed -i 's/readme = .*/version = "%(version)s"/g' pyproject.toml && """ + +# specify C++17 standard and link to protobuf shared library (also requires patch to use -DPROTOBUF_USE_DLLS); +# required to fix "error: 'string_view' in namespace 'std' does not name a type", +# see also https://github.com/onnx/onnx/issues/5430 +preinstallopts += "export CMAKE_ARGS='-DCMAKE_CXX_STANDARD=17 -DONNX_USE_PROTOBUF_SHARED_LIBS=ON' && " + +preinstallopts += 'env MAX_JOBS="%(parallel)s"' + +sanity_check_paths = { + 'files': ['bin/check-model', 'bin/check-node', 'bin/backend-test-tools'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + ('check-model', '-h'), + ('check-node', '-h'), + ('backend-test-tools', '-h'), +] + +sanity_pip_check = True + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/o/ONNX/ONNX-1.15.0_fix-protobuf-linking.patch b/easybuild/easyconfigs/o/ONNX/ONNX-1.15.0_fix-protobuf-linking.patch new file mode 100644 index 00000000000..5368859cb53 --- /dev/null +++ b/easybuild/easyconfigs/o/ONNX/ONNX-1.15.0_fix-protobuf-linking.patch @@ -0,0 +1,18 @@ +fix for: undefined symbol: _ZN6google8protobuf8internal15ThreadSafeArena13thread_cache_E +see also https://bugs.archlinux.org/task/75242 +author: Kenneth Hoste (HPC-UGent) +--- onnx-1.15.0/CMakeLists.txt.orig 2024-01-05 21:11:09.060853188 +0100 ++++ onnx-1.15.0/CMakeLists.txt 2024-01-05 21:11:21.587828423 +0100 +@@ -46,10 +46,10 @@ + endif() + + if(ONNX_USE_PROTOBUF_SHARED_LIBS) +- if(MSVC) ++ #if(MSVC) + #TODO: if ONNX_USE_MSVC_STATIC_RUNTIME is ON, it may not work + add_definitions(-DPROTOBUF_USE_DLLS) +- endif() ++ #endif() + set(Protobuf_USE_STATIC_LIBS OFF) + else() + set(Protobuf_USE_STATIC_LIBS ON) From a6f997b463033124f9c8d7acfc2497f56fdeb6e8 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Fri, 5 Jan 2024 22:18:34 +0100 Subject: [PATCH 332/356] adding easyconfigs: pydantic-2.5.3-GCCcore-12.2.0.eb, Rust-1.75.0-GCCcore-12.2.0.eb, maturin-1.4.0-GCCcore-12.2.0-Rust-1.75.0.eb --- ...aturin-1.4.0-GCCcore-12.2.0-Rust-1.75.0.eb | 647 ++++++++++++++++++ .../pydantic/pydantic-2.5.3-GCCcore-12.2.0.eb | 121 ++++ .../r/Rust/Rust-1.75.0-GCCcore-12.2.0.eb | 29 + 3 files changed, 797 insertions(+) create mode 100644 easybuild/easyconfigs/m/maturin/maturin-1.4.0-GCCcore-12.2.0-Rust-1.75.0.eb create mode 100644 easybuild/easyconfigs/p/pydantic/pydantic-2.5.3-GCCcore-12.2.0.eb create mode 100644 easybuild/easyconfigs/r/Rust/Rust-1.75.0-GCCcore-12.2.0.eb diff --git a/easybuild/easyconfigs/m/maturin/maturin-1.4.0-GCCcore-12.2.0-Rust-1.75.0.eb b/easybuild/easyconfigs/m/maturin/maturin-1.4.0-GCCcore-12.2.0-Rust-1.75.0.eb new file mode 100644 index 00000000000..7318a0d00fd --- /dev/null +++ b/easybuild/easyconfigs/m/maturin/maturin-1.4.0-GCCcore-12.2.0-Rust-1.75.0.eb @@ -0,0 +1,647 @@ +easyblock = 'CargoPythonPackage' + +name = 'maturin' +version = '1.4.0' +_rust_ver = '1.75.0' +versionsuffix = '-Rust-%s' % _rust_ver + +homepage = "https://github.com/pyo3/maturin" +description = """This project is meant as a zero configuration +replacement for setuptools-rust and milksnake. It supports building +wheels for python 3.5+ on windows, linux, mac and freebsd, can upload +them to pypi and has basic pypy and graalpy support.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +builddependencies = [('binutils', '2.39')] + +dependencies = [ + ('Python', '3.10.8'), + ('Rust', _rust_ver), +] + +crates = [ + ('adler', '1.0.2'), + ('ahash', '0.8.6'), + ('aho-corasick', '1.1.2'), + ('allocator-api2', '0.2.16'), + ('anstream', '0.3.2'), + ('anstream', '0.6.4'), + ('anstyle', '1.0.2'), + ('anstyle-parse', '0.2.1'), + ('anstyle-query', '1.0.0'), + ('anstyle-wincon', '1.0.2'), + ('anstyle-wincon', '3.0.1'), + ('anyhow', '1.0.75'), + ('autocfg', '1.1.0'), + ('base64', '0.13.1'), + ('base64', '0.21.5'), + ('bitflags', '1.3.2'), + ('bitflags', '2.4.1'), + ('block-buffer', '0.10.4'), + ('bstr', '1.8.0'), + ('byteorder', '1.5.0'), + ('bytes', '1.5.0'), + ('bytesize', '1.3.0'), + ('bzip2', '0.4.4'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cab', '0.4.1'), + ('camino', '1.1.6'), + ('cargo-config2', '0.1.16'), + ('cargo-options', '0.7.2'), + ('cargo-platform', '0.1.5'), + ('cargo-xwin', '0.16.2'), + ('cargo-zigbuild', '0.18.0'), + ('cargo_metadata', '0.18.1'), + ('cbindgen', '0.26.0'), + ('cc', '1.0.83'), + ('cfb', '0.9.0'), + ('cfg-if', '1.0.0'), + ('charset', '0.1.3'), + ('chumsky', '0.9.3'), + ('clap', '4.3.24'), + ('clap_builder', '4.3.24'), + ('clap_complete', '4.3.2'), + ('clap_complete_command', '0.5.1'), + ('clap_complete_fig', '4.3.1'), + ('clap_complete_nushell', '0.1.11'), + ('clap_derive', '4.3.12'), + ('clap_lex', '0.5.0'), + ('cli-table', '0.4.7'), + ('colorchoice', '1.0.0'), + ('configparser', '3.0.3'), + ('console', '0.15.7'), + ('content_inspector', '0.2.4'), + ('core-foundation', '0.9.3'), + ('core-foundation-sys', '0.8.4'), + ('cpufeatures', '0.2.11'), + ('crc32fast', '1.3.2'), + ('crossbeam-channel', '0.5.8'), + ('crossbeam-deque', '0.8.3'), + ('crossbeam-epoch', '0.9.15'), + ('crossbeam-utils', '0.8.16'), + ('crypto-common', '0.1.6'), + ('data-encoding', '2.5.0'), + ('deranged', '0.3.9'), + ('dialoguer', '0.11.0'), + ('diff', '0.1.13'), + ('digest', '0.10.7'), + ('dirs', '5.0.1'), + ('dirs-sys', '0.4.1'), + ('dissimilar', '1.0.7'), + ('dunce', '1.0.4'), + ('either', '1.9.0'), + ('encode_unicode', '0.3.6'), + ('encoding_rs', '0.8.33'), + ('equivalent', '1.0.1'), + ('errno', '0.3.8'), + ('expect-test', '1.4.1'), + ('fastrand', '2.0.1'), + ('fat-macho', '0.4.7'), + ('filetime', '0.2.22'), + ('flate2', '1.0.28'), + ('fnv', '1.0.7'), + ('foreign-types', '0.3.2'), + ('foreign-types-shared', '0.1.1'), + ('form_urlencoded', '1.2.1'), + ('fs-err', '2.11.0'), + ('generic-array', '0.14.7'), + ('getrandom', '0.2.11'), + ('glob', '0.3.1'), + ('globset', '0.4.14'), + ('goblin', '0.7.1'), + ('hashbrown', '0.12.3'), + ('hashbrown', '0.14.3'), + ('heck', '0.4.1'), + ('hermit-abi', '0.3.3'), + ('home', '0.5.5'), + ('humantime', '2.1.0'), + ('humantime-serde', '1.1.1'), + ('idna', '0.5.0'), + ('ignore', '0.4.20'), + ('indexmap', '1.9.3'), + ('indexmap', '2.1.0'), + ('indicatif', '0.17.7'), + ('indoc', '2.0.4'), + ('instant', '0.1.12'), + ('io-lifetimes', '1.0.11'), + ('is-terminal', '0.4.9'), + ('itertools', '0.11.0'), + ('itertools', '0.12.0'), + ('itoa', '1.0.9'), + ('keyring', '2.0.5'), + ('lazy_static', '1.4.0'), + ('lddtree', '0.3.3'), + ('libc', '0.2.150'), + ('libredox', '0.0.1'), + ('linux-keyutils', '0.2.3'), + ('linux-raw-sys', '0.3.8'), + ('linux-raw-sys', '0.4.11'), + ('lock_api', '0.4.11'), + ('log', '0.4.20'), + ('lzxd', '0.1.4'), + ('mailparse', '0.14.0'), + ('matchers', '0.1.0'), + ('memchr', '2.6.4'), + ('memoffset', '0.9.0'), + ('mime', '0.3.17'), + ('mime_guess', '2.0.4'), + ('minijinja', '1.0.10'), + ('minimal-lexical', '0.2.1'), + ('miniz_oxide', '0.7.1'), + ('msi', '0.7.0'), + ('multipart', '0.18.0'), + ('native-tls', '0.2.11'), + ('nom', '7.1.3'), + ('normalize-line-endings', '0.3.0'), + ('normpath', '1.1.1'), + ('nu-ansi-term', '0.46.0'), + ('number_prefix', '0.4.0'), + ('once_cell', '1.18.0'), + ('openssl', '0.10.60'), + ('openssl-macros', '0.1.1'), + ('openssl-probe', '0.1.5'), + ('openssl-sys', '0.9.96'), + ('option-ext', '0.2.0'), + ('os_pipe', '1.1.4'), + ('overload', '0.1.1'), + ('parking_lot', '0.12.1'), + ('parking_lot_core', '0.9.9'), + ('paste', '1.0.14'), + ('path-slash', '0.2.1'), + ('pep440_rs', '0.3.12'), + ('pep508_rs', '0.2.3'), + ('percent-encoding', '2.3.1'), + ('pin-project-lite', '0.2.13'), + ('pkg-config', '0.3.27'), + ('plain', '0.2.3'), + ('platform-info', '2.0.2'), + ('portable-atomic', '1.5.1'), + ('powerfmt', '0.2.0'), + ('ppv-lite86', '0.2.17'), + ('pretty_assertions', '1.4.0'), + ('proc-macro2', '1.0.70'), + ('psm', '0.1.21'), + ('pyproject-toml', '0.8.1'), + ('python-pkginfo', '0.6.0'), + ('quote', '1.0.33'), + ('quoted_printable', '0.4.8'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rayon', '1.8.0'), + ('rayon-core', '1.12.0'), + ('redox_syscall', '0.3.5'), + ('redox_syscall', '0.4.1'), + ('redox_users', '0.4.4'), + ('regex', '1.10.2'), + ('regex-automata', '0.1.10'), + ('regex-automata', '0.4.3'), + ('regex-syntax', '0.6.29'), + ('regex-syntax', '0.8.2'), + ('rfc2047-decoder', '0.2.2'), + ('ring', '0.17.6'), + ('rustc_version', '0.4.0'), + ('rustix', '0.37.27'), + ('rustix', '0.38.21'), + ('rustls', '0.21.9'), + ('rustls-pemfile', '2.0.0'), + ('rustls-pki-types', '1.0.0'), + ('rustls-webpki', '0.101.7'), + ('rustversion', '1.0.14'), + ('ryu', '1.0.15'), + ('same-file', '1.0.6'), + ('schannel', '0.1.22'), + ('scopeguard', '1.2.0'), + ('scroll', '0.11.0'), + ('scroll_derive', '0.11.1'), + ('sct', '0.7.1'), + ('security-framework', '2.9.2'), + ('security-framework-sys', '2.9.1'), + ('semver', '1.0.20'), + ('serde', '1.0.193'), + ('serde_derive', '1.0.193'), + ('serde_json', '1.0.108'), + ('serde_spanned', '0.6.4'), + ('sha2', '0.10.8'), + ('sharded-slab', '0.1.7'), + ('shell-words', '1.1.0'), + ('shlex', '1.2.0'), + ('similar', '2.3.0'), + ('smallvec', '1.11.2'), + ('smawk', '0.3.2'), + ('snapbox', '0.4.14'), + ('snapbox-macros', '0.3.6'), + ('socks', '0.3.4'), + ('spin', '0.9.8'), + ('stacker', '0.1.15'), + ('static_assertions', '1.1.0'), + ('strsim', '0.10.0'), + ('syn', '1.0.109'), + ('syn', '2.0.39'), + ('tar', '0.4.40'), + ('target-lexicon', '0.12.12'), + ('tempfile', '3.8.1'), + ('termcolor', '1.4.0'), + ('terminal_size', '0.2.6'), + ('textwrap', '0.16.0'), + ('thiserror', '1.0.50'), + ('thiserror-impl', '1.0.50'), + ('thread_local', '1.1.7'), + ('time', '0.3.30'), + ('time-core', '0.1.2'), + ('time-macros', '0.2.15'), + ('tinyvec', '1.6.0'), + ('tinyvec_macros', '0.1.1'), + ('toml', '0.5.11'), + ('toml', '0.8.8'), + ('toml_datetime', '0.6.5'), + ('toml_edit', '0.20.7'), + ('toml_edit', '0.21.0'), + ('tracing', '0.1.40'), + ('tracing-attributes', '0.1.27'), + ('tracing-core', '0.1.32'), + ('tracing-log', '0.2.0'), + ('tracing-serde', '0.1.3'), + ('tracing-subscriber', '0.3.18'), + ('trycmd', '0.14.19'), + ('twox-hash', '1.6.3'), + ('typenum', '1.17.0'), + ('unicase', '2.7.0'), + ('unicode-bidi', '0.3.13'), + ('unicode-ident', '1.0.12'), + ('unicode-linebreak', '0.1.5'), + ('unicode-normalization', '0.1.22'), + ('unicode-width', '0.1.11'), + ('untrusted', '0.9.0'), + ('ureq', '2.9.1'), + ('url', '2.5.0'), + ('utf8parse', '0.2.1'), + ('uuid', '1.6.1'), + ('valuable', '0.1.0'), + ('vcpkg', '0.2.15'), + ('version_check', '0.9.4'), + ('versions', '5.0.1'), + ('wait-timeout', '0.2.0'), + ('walkdir', '2.4.0'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('webpki-roots', '0.25.3'), + ('which', '5.0.0'), + ('wild', '2.2.0'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-util', '0.1.6'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), + ('windows-sys', '0.45.0'), + ('windows-sys', '0.48.0'), + ('windows-sys', '0.52.0'), + ('windows-targets', '0.42.2'), + ('windows-targets', '0.48.5'), + ('windows-targets', '0.52.0'), + ('windows_aarch64_gnullvm', '0.42.2'), + ('windows_aarch64_gnullvm', '0.48.5'), + ('windows_aarch64_gnullvm', '0.52.0'), + ('windows_aarch64_msvc', '0.42.2'), + ('windows_aarch64_msvc', '0.48.5'), + ('windows_aarch64_msvc', '0.52.0'), + ('windows_i686_gnu', '0.42.2'), + ('windows_i686_gnu', '0.48.5'), + ('windows_i686_gnu', '0.52.0'), + ('windows_i686_msvc', '0.42.2'), + ('windows_i686_msvc', '0.48.5'), + ('windows_i686_msvc', '0.52.0'), + ('windows_x86_64_gnu', '0.42.2'), + ('windows_x86_64_gnu', '0.48.5'), + ('windows_x86_64_gnu', '0.52.0'), + ('windows_x86_64_gnullvm', '0.42.2'), + ('windows_x86_64_gnullvm', '0.48.5'), + ('windows_x86_64_gnullvm', '0.52.0'), + ('windows_x86_64_msvc', '0.42.2'), + ('windows_x86_64_msvc', '0.48.5'), + ('windows_x86_64_msvc', '0.52.0'), + ('winnow', '0.5.19'), + ('xattr', '1.0.1'), + ('xwin', '0.5.0'), + ('yansi', '0.5.1'), + ('zerocopy', '0.7.28'), + ('zerocopy-derive', '0.7.28'), + ('zeroize', '1.7.0'), + ('zip', '0.6.6'), +] + +sources = [SOURCE_TAR_GZ] +checksums = [ + {'maturin-1.4.0.tar.gz': 'ed12e1768094a7adeafc3a74ebdb8dc2201fa64c4e7e31f14cfc70378bf93790'}, + {'adler-1.0.2.tar.gz': 'f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe'}, + {'ahash-0.8.6.tar.gz': '91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a'}, + {'aho-corasick-1.1.2.tar.gz': 'b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0'}, + {'allocator-api2-0.2.16.tar.gz': '0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5'}, + {'anstream-0.3.2.tar.gz': '0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163'}, + {'anstream-0.6.4.tar.gz': '2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44'}, + {'anstyle-1.0.2.tar.gz': '15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea'}, + {'anstyle-parse-0.2.1.tar.gz': '938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333'}, + {'anstyle-query-1.0.0.tar.gz': '5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b'}, + {'anstyle-wincon-1.0.2.tar.gz': 'c677ab05e09154296dd37acecd46420c17b9713e8366facafa8fc0885167cf4c'}, + {'anstyle-wincon-3.0.1.tar.gz': 'f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628'}, + {'anyhow-1.0.75.tar.gz': 'a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6'}, + {'autocfg-1.1.0.tar.gz': 'd468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa'}, + {'base64-0.13.1.tar.gz': '9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8'}, + {'base64-0.21.5.tar.gz': '35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bitflags-2.4.1.tar.gz': '327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07'}, + {'block-buffer-0.10.4.tar.gz': '3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71'}, + {'bstr-1.8.0.tar.gz': '542f33a8835a0884b006a0c3df3dadd99c0c3f296ed26c2fdc8028e01ad6230c'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'bytes-1.5.0.tar.gz': 'a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223'}, + {'bytesize-1.3.0.tar.gz': 'a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc'}, + {'bzip2-0.4.4.tar.gz': 'bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cab-0.4.1.tar.gz': 'ae6b4de23c7d39c0631fd3cc952d87951c86c75a13812d7247cb7a896e7b3551'}, + {'camino-1.1.6.tar.gz': 'c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c'}, + {'cargo-config2-0.1.16.tar.gz': '7f387366785e82c7ec7ef5b845a7f61324fbf5d467d6a878469eac30c1c44b1b'}, + {'cargo-options-0.7.2.tar.gz': 'cad71bf996c8e5b9d28ef3472d7ee41f277edf4e38cd597f51ad0438d05d76ea'}, + {'cargo-platform-0.1.5.tar.gz': 'e34637b3140142bdf929fb439e8aa4ebad7651ebf7b1080b3930aa16ac1459ff'}, + {'cargo-xwin-0.16.2.tar.gz': '02bb6bf59526935e47445f959a19c2168f151284dbf7e57f5577934334e9a61d'}, + {'cargo-zigbuild-0.18.0.tar.gz': 'edc9c2fe646a29983b5f7263bd789175f2aaad7ea42525affa40e2172be93286'}, + {'cargo_metadata-0.18.1.tar.gz': '2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037'}, + {'cbindgen-0.26.0.tar.gz': 'da6bc11b07529f16944307272d5bd9b22530bc7d05751717c9d416586cedab49'}, + {'cc-1.0.83.tar.gz': 'f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0'}, + {'cfb-0.9.0.tar.gz': 'b390793e912300f1aa713429f7fd0c391024e6c18b988962558bc4f96a349b1f'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'charset-0.1.3.tar.gz': '18e9079d1a12a2cc2bffb5db039c43661836ead4082120d5844f02555aca2d46'}, + {'chumsky-0.9.3.tar.gz': '8eebd66744a15ded14960ab4ccdbfb51ad3b81f51f3f04a80adac98c985396c9'}, + {'clap-4.3.24.tar.gz': 'fb690e81c7840c0d7aade59f242ea3b41b9bc27bcd5997890e7702ae4b32e487'}, + {'clap_builder-4.3.24.tar.gz': '5ed2e96bc16d8d740f6f48d663eddf4b8a0983e79210fd55479b7bcd0a69860e'}, + {'clap_complete-4.3.2.tar.gz': '5fc443334c81a804575546c5a8a79b4913b50e28d69232903604cada1de817ce'}, + {'clap_complete_command-0.5.1.tar.gz': '183495371ea78d4c9ff638bfc6497d46fed2396e4f9c50aebc1278a4a9919a3d'}, + {'clap_complete_fig-4.3.1.tar.gz': '99fee1d30a51305a6c2ed3fc5709be3c8af626c9c958e04dd9ae94e27bcbce9f'}, + {'clap_complete_nushell-0.1.11.tar.gz': '5d02bc8b1a18ee47c4d2eec3fb5ac034dc68ebea6125b1509e9ccdffcddce66e'}, + {'clap_derive-4.3.12.tar.gz': '54a9bb5758fc5dfe728d1019941681eccaf0cf8a4189b692a0ee2f2ecf90a050'}, + {'clap_lex-0.5.0.tar.gz': '2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b'}, + {'cli-table-0.4.7.tar.gz': 'adfbb116d9e2c4be7011360d0c0bee565712c11e969c9609b25b619366dc379d'}, + {'colorchoice-1.0.0.tar.gz': 'acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7'}, + {'configparser-3.0.3.tar.gz': 'e0e56e414a2a52ab2a104f85cd40933c2fbc278b83637facf646ecf451b49237'}, + {'console-0.15.7.tar.gz': 'c926e00cc70edefdc64d3a5ff31cc65bb97a3460097762bd23afb4d8145fccf8'}, + {'content_inspector-0.2.4.tar.gz': 'b7bda66e858c683005a53a9a60c69a4aca7eeaa45d124526e389f7aec8e62f38'}, + {'core-foundation-0.9.3.tar.gz': '194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146'}, + {'core-foundation-sys-0.8.4.tar.gz': 'e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa'}, + {'cpufeatures-0.2.11.tar.gz': 'ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0'}, + {'crc32fast-1.3.2.tar.gz': 'b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d'}, + {'crossbeam-channel-0.5.8.tar.gz': 'a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200'}, + {'crossbeam-deque-0.8.3.tar.gz': 'ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef'}, + {'crossbeam-epoch-0.9.15.tar.gz': 'ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7'}, + {'crossbeam-utils-0.8.16.tar.gz': '5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294'}, + {'crypto-common-0.1.6.tar.gz': '1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3'}, + {'data-encoding-2.5.0.tar.gz': '7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5'}, + {'deranged-0.3.9.tar.gz': '0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3'}, + {'dialoguer-0.11.0.tar.gz': '658bce805d770f407bc62102fca7c2c64ceef2fbcb2b8bd19d2765ce093980de'}, + {'diff-0.1.13.tar.gz': '56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8'}, + {'digest-0.10.7.tar.gz': '9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292'}, + {'dirs-5.0.1.tar.gz': '44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225'}, + {'dirs-sys-0.4.1.tar.gz': '520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c'}, + {'dissimilar-1.0.7.tar.gz': '86e3bdc80eee6e16b2b6b0f87fbc98c04bee3455e35174c0de1a125d0688c632'}, + {'dunce-1.0.4.tar.gz': '56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b'}, + {'either-1.9.0.tar.gz': 'a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07'}, + {'encode_unicode-0.3.6.tar.gz': 'a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f'}, + {'encoding_rs-0.8.33.tar.gz': '7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1'}, + {'equivalent-1.0.1.tar.gz': '5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5'}, + {'errno-0.3.8.tar.gz': 'a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245'}, + {'expect-test-1.4.1.tar.gz': '30d9eafeadd538e68fb28016364c9732d78e420b9ff8853fa5e4058861e9f8d3'}, + {'fastrand-2.0.1.tar.gz': '25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5'}, + {'fat-macho-0.4.7.tar.gz': '63fa117c7dcabeb8c83d5c229764cfa46518545d2dba5a9a08912014711f997b'}, + {'filetime-0.2.22.tar.gz': 'd4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0'}, + {'flate2-1.0.28.tar.gz': '46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e'}, + {'fnv-1.0.7.tar.gz': '3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1'}, + {'foreign-types-0.3.2.tar.gz': 'f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1'}, + {'foreign-types-shared-0.1.1.tar.gz': '00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b'}, + {'form_urlencoded-1.2.1.tar.gz': 'e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456'}, + {'fs-err-2.11.0.tar.gz': '88a41f105fe1d5b6b34b2055e3dc59bb79b46b48b2040b9e6c7b4b5de097aa41'}, + {'generic-array-0.14.7.tar.gz': '85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a'}, + {'getrandom-0.2.11.tar.gz': 'fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f'}, + {'glob-0.3.1.tar.gz': 'd2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b'}, + {'globset-0.4.14.tar.gz': '57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1'}, + {'goblin-0.7.1.tar.gz': 'f27c1b4369c2cd341b5de549380158b105a04c331be5db9110eef7b6d2742134'}, + {'hashbrown-0.12.3.tar.gz': '8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888'}, + {'hashbrown-0.14.3.tar.gz': '290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'hermit-abi-0.3.3.tar.gz': 'd77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7'}, + {'home-0.5.5.tar.gz': '5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb'}, + {'humantime-2.1.0.tar.gz': '9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4'}, + {'humantime-serde-1.1.1.tar.gz': '57a3db5ea5923d99402c94e9feb261dc5ee9b4efa158b0315f788cf549cc200c'}, + {'idna-0.5.0.tar.gz': '634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6'}, + {'ignore-0.4.20.tar.gz': 'dbe7873dab538a9a44ad79ede1faf5f30d49f9a5c883ddbab48bce81b64b7492'}, + {'indexmap-1.9.3.tar.gz': 'bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99'}, + {'indexmap-2.1.0.tar.gz': 'd530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f'}, + {'indicatif-0.17.7.tar.gz': 'fb28741c9db9a713d93deb3bb9515c20788cef5815265bee4980e87bde7e0f25'}, + {'indoc-2.0.4.tar.gz': '1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8'}, + {'instant-0.1.12.tar.gz': '7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c'}, + {'io-lifetimes-1.0.11.tar.gz': 'eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2'}, + {'is-terminal-0.4.9.tar.gz': 'cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b'}, + {'itertools-0.11.0.tar.gz': 'b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57'}, + {'itertools-0.12.0.tar.gz': '25db6b064527c5d482d0423354fcd07a89a2dfe07b67892e62411946db7f07b0'}, + {'itoa-1.0.9.tar.gz': 'af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38'}, + {'keyring-2.0.5.tar.gz': '9549a129bd08149e0a71b2d1ce2729780d47127991bfd0a78cc1df697ec72492'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'lddtree-0.3.3.tar.gz': '2f5bfec46830ad3a95199ae6804dfe9f51fdad43d7a95fbb6c185efa9824c295'}, + {'libc-0.2.150.tar.gz': '89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c'}, + {'libredox-0.0.1.tar.gz': '85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8'}, + {'linux-keyutils-0.2.3.tar.gz': '3f27bb67f6dd1d0bb5ab582868e4f65052e58da6401188a08f0da09cf512b84b'}, + {'linux-raw-sys-0.3.8.tar.gz': 'ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519'}, + {'linux-raw-sys-0.4.11.tar.gz': '969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829'}, + {'lock_api-0.4.11.tar.gz': '3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45'}, + {'log-0.4.20.tar.gz': 'b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f'}, + {'lzxd-0.1.4.tar.gz': '784462f20dddd9dfdb45de963fa4ad4a288cb10a7889ac5d2c34fb6481c6b213'}, + {'mailparse-0.14.0.tar.gz': '6b56570f5f8c0047260d1c8b5b331f62eb9c660b9dd4071a8c46f8c7d3f280aa'}, + {'matchers-0.1.0.tar.gz': '8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558'}, + {'memchr-2.6.4.tar.gz': 'f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167'}, + {'memoffset-0.9.0.tar.gz': '5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c'}, + {'mime-0.3.17.tar.gz': '6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a'}, + {'mime_guess-2.0.4.tar.gz': '4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef'}, + {'minijinja-1.0.10.tar.gz': '208758577ef2c86cf5dd3e85730d161413ec3284e2d73b2ef65d9a24d9971bcb'}, + {'minimal-lexical-0.2.1.tar.gz': '68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a'}, + {'miniz_oxide-0.7.1.tar.gz': 'e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7'}, + {'msi-0.7.0.tar.gz': '226b2404f03d2cf47375b9715c8adfae4e388bb2377cff908e8a40f31e421514'}, + {'multipart-0.18.0.tar.gz': '00dec633863867f29cb39df64a397cdf4a6354708ddd7759f70c7fb51c5f9182'}, + {'native-tls-0.2.11.tar.gz': '07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e'}, + {'nom-7.1.3.tar.gz': 'd273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a'}, + {'normalize-line-endings-0.3.0.tar.gz': '61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be'}, + {'normpath-1.1.1.tar.gz': 'ec60c60a693226186f5d6edf073232bfb6464ed97eb22cf3b01c1e8198fd97f5'}, + {'nu-ansi-term-0.46.0.tar.gz': '77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84'}, + {'number_prefix-0.4.0.tar.gz': '830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3'}, + {'once_cell-1.18.0.tar.gz': 'dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d'}, + {'openssl-0.10.60.tar.gz': '79a4c6c3a2b158f7f8f2a2fc5a969fa3a068df6fc9dbb4a43845436e3af7c800'}, + {'openssl-macros-0.1.1.tar.gz': 'a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c'}, + {'openssl-probe-0.1.5.tar.gz': 'ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf'}, + {'openssl-sys-0.9.96.tar.gz': '3812c071ba60da8b5677cc12bcb1d42989a65553772897a7e0355545a819838f'}, + {'option-ext-0.2.0.tar.gz': '04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d'}, + {'os_pipe-1.1.4.tar.gz': '0ae859aa07428ca9a929b936690f8b12dc5f11dd8c6992a18ca93919f28bc177'}, + {'overload-0.1.1.tar.gz': 'b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39'}, + {'parking_lot-0.12.1.tar.gz': '3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f'}, + {'parking_lot_core-0.9.9.tar.gz': '4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e'}, + {'paste-1.0.14.tar.gz': 'de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c'}, + {'path-slash-0.2.1.tar.gz': '1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42'}, + {'pep440_rs-0.3.12.tar.gz': '887f66cc62717ea72caac4f1eb4e6f392224da3ffff3f40ec13ab427802746d6'}, + {'pep508_rs-0.2.3.tar.gz': 'e4516b53d9ea6112ebb38b4af08d5707d30b994fb7f98ff133c5dcf7ed8fa854'}, + {'percent-encoding-2.3.1.tar.gz': 'e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e'}, + {'pin-project-lite-0.2.13.tar.gz': '8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58'}, + {'pkg-config-0.3.27.tar.gz': '26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964'}, + {'plain-0.2.3.tar.gz': 'b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6'}, + {'platform-info-2.0.2.tar.gz': 'd6259c4860e53bf665016f1b2f46a8859cadfa717581dc9d597ae4069de6300f'}, + {'portable-atomic-1.5.1.tar.gz': '3bccab0e7fd7cc19f820a1c8c91720af652d0c88dc9664dd72aef2614f04af3b'}, + {'powerfmt-0.2.0.tar.gz': '439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391'}, + {'ppv-lite86-0.2.17.tar.gz': '5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de'}, + {'pretty_assertions-1.4.0.tar.gz': 'af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66'}, + {'proc-macro2-1.0.70.tar.gz': '39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b'}, + {'psm-0.1.21.tar.gz': '5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874'}, + {'pyproject-toml-0.8.1.tar.gz': '46d4a5e69187f23a29f8aa0ea57491d104ba541bc55f76552c2a74962aa20e04'}, + {'python-pkginfo-0.6.0.tar.gz': '037469c164f08c891bf6d69ca02f1d56210011451e229618669777df82124cfa'}, + {'quote-1.0.33.tar.gz': '5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae'}, + {'quoted_printable-0.4.8.tar.gz': '5a3866219251662ec3b26fc217e3e05bf9c4f84325234dfb96bf0bf840889e49'}, + {'rand-0.8.5.tar.gz': '34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404'}, + {'rand_chacha-0.3.1.tar.gz': 'e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88'}, + {'rand_core-0.6.4.tar.gz': 'ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c'}, + {'rayon-1.8.0.tar.gz': '9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1'}, + {'rayon-core-1.12.0.tar.gz': '5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed'}, + {'redox_syscall-0.3.5.tar.gz': '567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29'}, + {'redox_syscall-0.4.1.tar.gz': '4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa'}, + {'redox_users-0.4.4.tar.gz': 'a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4'}, + {'regex-1.10.2.tar.gz': '380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343'}, + {'regex-automata-0.1.10.tar.gz': '6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132'}, + {'regex-automata-0.4.3.tar.gz': '5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f'}, + {'regex-syntax-0.6.29.tar.gz': 'f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1'}, + {'regex-syntax-0.8.2.tar.gz': 'c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f'}, + {'rfc2047-decoder-0.2.2.tar.gz': '61fc4b4e52897c3e30b12b7e9b04461215b647fbe66f6def60dd8edbce14ec2e'}, + {'ring-0.17.6.tar.gz': '684d5e6e18f669ccebf64a92236bb7db9a34f07be010e3627368182027180866'}, + {'rustc_version-0.4.0.tar.gz': 'bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366'}, + {'rustix-0.37.27.tar.gz': 'fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2'}, + {'rustix-0.38.21.tar.gz': '2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3'}, + {'rustls-0.21.9.tar.gz': '629648aced5775d558af50b2b4c7b02983a04b312126d45eeead26e7caa498b9'}, + {'rustls-pemfile-2.0.0.tar.gz': '35e4980fa29e4c4b212ffb3db068a564cbf560e51d3944b7c88bd8bf5bec64f4'}, + {'rustls-pki-types-1.0.0.tar.gz': 'eb0a1f9b9efec70d32e6d6aa3e58ebd88c3754ec98dfe9145c63cf54cc829b83'}, + {'rustls-webpki-0.101.7.tar.gz': '8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765'}, + {'rustversion-1.0.14.tar.gz': '7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4'}, + {'ryu-1.0.15.tar.gz': '1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741'}, + {'same-file-1.0.6.tar.gz': '93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502'}, + {'schannel-0.1.22.tar.gz': '0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88'}, + {'scopeguard-1.2.0.tar.gz': '94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49'}, + {'scroll-0.11.0.tar.gz': '04c565b551bafbef4157586fa379538366e4385d42082f255bfd96e4fe8519da'}, + {'scroll_derive-0.11.1.tar.gz': '1db149f81d46d2deba7cd3c50772474707729550221e69588478ebf9ada425ae'}, + {'sct-0.7.1.tar.gz': 'da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414'}, + {'security-framework-2.9.2.tar.gz': '05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de'}, + {'security-framework-sys-2.9.1.tar.gz': 'e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a'}, + {'semver-1.0.20.tar.gz': '836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090'}, + {'serde-1.0.193.tar.gz': '25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89'}, + {'serde_derive-1.0.193.tar.gz': '43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3'}, + {'serde_json-1.0.108.tar.gz': '3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b'}, + {'serde_spanned-0.6.4.tar.gz': '12022b835073e5b11e90a14f86838ceb1c8fb0325b72416845c487ac0fa95e80'}, + {'sha2-0.10.8.tar.gz': '793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8'}, + {'sharded-slab-0.1.7.tar.gz': 'f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6'}, + {'shell-words-1.1.0.tar.gz': '24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde'}, + {'shlex-1.2.0.tar.gz': 'a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380'}, + {'similar-2.3.0.tar.gz': '2aeaf503862c419d66959f5d7ca015337d864e9c49485d771b732e2a20453597'}, + {'smallvec-1.11.2.tar.gz': '4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970'}, + {'smawk-0.3.2.tar.gz': 'b7c388c1b5e93756d0c740965c41e8822f866621d41acbdf6336a6a168f8840c'}, + {'snapbox-0.4.14.tar.gz': '4b377c0b6e4715c116473d8e40d51e3fa5b0a2297ca9b2a931ba800667b259ed'}, + {'snapbox-macros-0.3.6.tar.gz': 'ed1559baff8a696add3322b9be3e940d433e7bb4e38d79017205fd37ff28b28e'}, + {'socks-0.3.4.tar.gz': 'f0c3dbbd9ae980613c6dd8e28a9407b50509d3803b57624d5dfe8315218cd58b'}, + {'spin-0.9.8.tar.gz': '6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67'}, + {'stacker-0.1.15.tar.gz': 'c886bd4480155fd3ef527d45e9ac8dd7118a898a46530b7b94c3e21866259fce'}, + {'static_assertions-1.1.0.tar.gz': 'a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f'}, + {'strsim-0.10.0.tar.gz': '73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.39.tar.gz': '23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a'}, + {'tar-0.4.40.tar.gz': 'b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb'}, + {'target-lexicon-0.12.12.tar.gz': '14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a'}, + {'tempfile-3.8.1.tar.gz': '7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5'}, + {'termcolor-1.4.0.tar.gz': 'ff1bc3d3f05aff0403e8ac0d92ced918ec05b666a43f83297ccef5bea8a3d449'}, + {'terminal_size-0.2.6.tar.gz': '8e6bf6f19e9f8ed8d4048dc22981458ebcf406d67e94cd422e5ecd73d63b3237'}, + {'textwrap-0.16.0.tar.gz': '222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d'}, + {'thiserror-1.0.50.tar.gz': 'f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2'}, + {'thiserror-impl-1.0.50.tar.gz': '266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8'}, + {'thread_local-1.1.7.tar.gz': '3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152'}, + {'time-0.3.30.tar.gz': 'c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5'}, + {'time-core-0.1.2.tar.gz': 'ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3'}, + {'time-macros-0.2.15.tar.gz': '4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20'}, + {'tinyvec-1.6.0.tar.gz': '87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50'}, + {'tinyvec_macros-0.1.1.tar.gz': '1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20'}, + {'toml-0.5.11.tar.gz': 'f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234'}, + {'toml-0.8.8.tar.gz': 'a1a195ec8c9da26928f773888e0742ca3ca1040c6cd859c919c9f59c1954ab35'}, + {'toml_datetime-0.6.5.tar.gz': '3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1'}, + {'toml_edit-0.20.7.tar.gz': '70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81'}, + {'toml_edit-0.21.0.tar.gz': 'd34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03'}, + {'tracing-0.1.40.tar.gz': 'c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef'}, + {'tracing-attributes-0.1.27.tar.gz': '34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7'}, + {'tracing-core-0.1.32.tar.gz': 'c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54'}, + {'tracing-log-0.2.0.tar.gz': 'ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3'}, + {'tracing-serde-0.1.3.tar.gz': 'bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1'}, + {'tracing-subscriber-0.3.18.tar.gz': 'ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b'}, + {'trycmd-0.14.19.tar.gz': 'ed009372a42fb103e6f8767b9222925485e03cca032b700d203e2c5b67bee4fb'}, + {'twox-hash-1.6.3.tar.gz': '97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675'}, + {'typenum-1.17.0.tar.gz': '42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825'}, + {'unicase-2.7.0.tar.gz': 'f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89'}, + {'unicode-bidi-0.3.13.tar.gz': '92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'unicode-linebreak-0.1.5.tar.gz': '3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f'}, + {'unicode-normalization-0.1.22.tar.gz': '5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921'}, + {'unicode-width-0.1.11.tar.gz': 'e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85'}, + {'untrusted-0.9.0.tar.gz': '8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1'}, + {'ureq-2.9.1.tar.gz': 'f8cdd25c339e200129fe4de81451814e5228c9b771d57378817d6117cc2b3f97'}, + {'url-2.5.0.tar.gz': '31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633'}, + {'utf8parse-0.2.1.tar.gz': '711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a'}, + {'uuid-1.6.1.tar.gz': '5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560'}, + {'valuable-0.1.0.tar.gz': '830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'version_check-0.9.4.tar.gz': '49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f'}, + {'versions-5.0.1.tar.gz': 'c73a36bc44e3039f51fbee93e39f41225f6b17b380eb70cc2aab942df06b34dd'}, + {'wait-timeout-0.2.0.tar.gz': '9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6'}, + {'walkdir-2.4.0.tar.gz': 'd71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'webpki-roots-0.25.3.tar.gz': '1778a42e8b3b90bff8d0f5032bf22250792889a5cdc752aa0020c84abe3aaf10'}, + {'which-5.0.0.tar.gz': '9bf3ea8596f3a0dd5980b46430f2058dfe2c36a27ccfbb1845d6fbfcd9ba6e14'}, + {'wild-2.2.0.tar.gz': '10d01931a94d5a115a53f95292f51d316856b68a035618eb831bbba593a30b67'}, + {'winapi-0.3.9.tar.gz': '5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419'}, + {'winapi-i686-pc-windows-gnu-0.4.0.tar.gz': 'ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6'}, + {'winapi-util-0.1.6.tar.gz': 'f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596'}, + {'winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz': '712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f'}, + {'windows-sys-0.45.0.tar.gz': '75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0'}, + {'windows-sys-0.48.0.tar.gz': '677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-targets-0.42.2.tar.gz': '8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071'}, + {'windows-targets-0.48.5.tar.gz': '9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c'}, + {'windows-targets-0.52.0.tar.gz': '8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd'}, + {'windows_aarch64_gnullvm-0.42.2.tar.gz': '597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8'}, + {'windows_aarch64_gnullvm-0.48.5.tar.gz': '2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8'}, + {'windows_aarch64_gnullvm-0.52.0.tar.gz': 'cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea'}, + {'windows_aarch64_msvc-0.42.2.tar.gz': 'e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43'}, + {'windows_aarch64_msvc-0.48.5.tar.gz': 'dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc'}, + {'windows_aarch64_msvc-0.52.0.tar.gz': 'bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef'}, + {'windows_i686_gnu-0.42.2.tar.gz': 'c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f'}, + {'windows_i686_gnu-0.48.5.tar.gz': 'a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e'}, + {'windows_i686_gnu-0.52.0.tar.gz': 'a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313'}, + {'windows_i686_msvc-0.42.2.tar.gz': '44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060'}, + {'windows_i686_msvc-0.48.5.tar.gz': '8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406'}, + {'windows_i686_msvc-0.52.0.tar.gz': 'ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a'}, + {'windows_x86_64_gnu-0.42.2.tar.gz': '8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36'}, + {'windows_x86_64_gnu-0.48.5.tar.gz': '53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e'}, + {'windows_x86_64_gnu-0.52.0.tar.gz': '3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd'}, + {'windows_x86_64_gnullvm-0.42.2.tar.gz': '26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3'}, + {'windows_x86_64_gnullvm-0.48.5.tar.gz': '0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc'}, + {'windows_x86_64_gnullvm-0.52.0.tar.gz': '1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e'}, + {'windows_x86_64_msvc-0.42.2.tar.gz': '9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0'}, + {'windows_x86_64_msvc-0.48.5.tar.gz': 'ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538'}, + {'windows_x86_64_msvc-0.52.0.tar.gz': 'dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04'}, + {'winnow-0.5.19.tar.gz': '829846f3e3db426d4cee4510841b71a8e58aa2a76b1132579487ae430ccd9c7b'}, + {'xattr-1.0.1.tar.gz': 'f4686009f71ff3e5c4dbcf1a282d0a44db3f021ba69350cd42086b3e5f1c6985'}, + {'xwin-0.5.0.tar.gz': 'c43e0202f5457b48558096cb7b36d0e473f267551a89c82ed72d73b01dfd4007'}, + {'yansi-0.5.1.tar.gz': '09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec'}, + {'zerocopy-0.7.28.tar.gz': '7d6f15f7ade05d2a4935e34a457b936c23dc70a05cc1d97133dc99e7a3fe0f0e'}, + {'zerocopy-derive-0.7.28.tar.gz': 'dbbad221e3f78500350ecbd7dfa4e63ef945c05f4c61cb7f4d3f84cd0bba649b'}, + {'zeroize-1.7.0.tar.gz': '525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d'}, + {'zip-0.6.6.tar.gz': '760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261'}, +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pydantic/pydantic-2.5.3-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/pydantic/pydantic-2.5.3-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..da3ebeae4eb --- /dev/null +++ b/easybuild/easyconfigs/p/pydantic/pydantic-2.5.3-GCCcore-12.2.0.eb @@ -0,0 +1,121 @@ +easyblock = 'CargoPythonBundle' + +name = 'pydantic' +version = '2.5.3' + +homepage = 'https://github.com/samuelcolvin/pydantic' +description = """Data validation and settings management using Python type hinting.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +builddependencies = [ + ('binutils', '2.39'), + ('Rust', '1.75.0'), + ('maturin', '1.4.0', '-Rust-1.75.0'), +] + +dependencies = [ + ('Python', '3.10.8'), + ('typing-extensions', '4.9.0'), +] + +use_pip = True +sanity_pip_check = True + +crates = [ + ('ahash', '0.8.6'), + ('aho-corasick', '1.0.2'), + ('autocfg', '1.1.0'), + ('base64', '0.21.5'), + ('bitflags', '1.3.2'), + ('cc', '1.0.79'), + ('cfg-if', '1.0.0'), + ('enum_dispatch', '0.3.12'), + ('equivalent', '1.0.1'), + ('form_urlencoded', '1.2.0'), + ('getrandom', '0.2.10'), + ('hashbrown', '0.14.0'), + ('heck', '0.4.1'), + ('idna', '0.4.0'), + ('indexmap', '2.0.0'), + ('indoc', '2.0.4'), + ('itoa', '1.0.8'), + ('jiter', '0.0.4'), + ('lexical-core', '0.8.5'), + ('lexical-parse-float', '0.8.5'), + ('lexical-parse-integer', '0.8.6'), + ('lexical-util', '0.8.5'), + ('lexical-write-float', '0.8.5'), + ('lexical-write-integer', '0.8.5'), + ('libc', '0.2.147'), + ('lock_api', '0.4.10'), + ('memchr', '2.6.3'), + ('memoffset', '0.9.0'), + ('num-bigint', '0.4.4'), + ('num-integer', '0.1.45'), + ('num-traits', '0.2.16'), + ('once_cell', '1.18.0'), + ('parking_lot', '0.12.1'), + ('parking_lot_core', '0.9.8'), + ('percent-encoding', '2.3.0'), + ('proc-macro2', '1.0.69'), + ('pyo3', '0.20.0'), + ('pyo3-build-config', '0.20.0'), + ('pyo3-ffi', '0.20.0'), + ('pyo3-macros', '0.20.0'), + ('pyo3-macros-backend', '0.20.0'), + ('python3-dll-a', '0.2.9'), + ('quote', '1.0.29'), + ('redox_syscall', '0.3.5'), + ('regex', '1.10.2'), + ('regex-automata', '0.4.3'), + ('regex-syntax', '0.8.2'), + ('rustversion', '1.0.13'), + ('ryu', '1.0.14'), + ('scopeguard', '1.1.0'), + ('serde', '1.0.190'), + ('serde_derive', '1.0.190'), + ('serde_json', '1.0.108'), + ('smallvec', '1.11.1'), + ('speedate', '0.13.0'), + ('static_assertions', '1.1.0'), + ('strum', '0.25.0'), + ('strum_macros', '0.25.3'), + ('syn', '2.0.38'), + ('target-lexicon', '0.12.9'), + ('tinyvec', '1.6.0'), + ('tinyvec_macros', '0.1.1'), + ('unicode-bidi', '0.3.13'), + ('unicode-ident', '1.0.10'), + ('unicode-normalization', '0.1.22'), + ('unindent', '0.2.3'), + ('url', '2.4.1'), + ('uuid', '1.5.0'), + ('version_check', '0.9.4'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('windows-targets', '0.48.1'), + ('windows_aarch64_gnullvm', '0.48.0'), + ('windows_aarch64_msvc', '0.48.0'), + ('windows_i686_gnu', '0.48.0'), + ('windows_i686_msvc', '0.48.0'), + ('windows_x86_64_gnu', '0.48.0'), + ('windows_x86_64_gnullvm', '0.48.0'), + ('windows_x86_64_msvc', '0.48.0'), + ('zerocopy', '0.7.20'), + ('zerocopy-derive', '0.7.20'), +] + +exts_list = [ + ('annotated_types', '0.6.0', { + 'checksums': ['563339e807e53ffd9c267e99fc6d9ea23eb8443c08f112651963e24e22f84a5d'], + }), + ('pydantic_core', '2.14.6', { + 'checksums': ['1fd0c1d395372843fba13a51c28e3bb9d59bd7aebfeb17358ffaaa1e4dbbe948'], + }), + (name, version, { + 'preinstallopts': "sed -i '/Framework :: Pydantic/d' pyproject.toml && ", + 'checksums': ['b3ef57c62535b0941697cce638c08900d87fcb67e29cfa99e8a68f747f393f7a'], + }), +] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/r/Rust/Rust-1.75.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/r/Rust/Rust-1.75.0-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..d9b3ab115e6 --- /dev/null +++ b/easybuild/easyconfigs/r/Rust/Rust-1.75.0-GCCcore-12.2.0.eb @@ -0,0 +1,29 @@ +name = 'Rust' +version = '1.75.0' + +homepage = 'https://www.rust-lang.org' +description = """Rust is a systems programming language that runs blazingly fast, prevents segfaults, + and guarantees thread safety.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = ['https://static.rust-lang.org/dist/'] +sources = ['rustc-%(version)s-src.tar.gz'] +patches = ['Rust-1.70_sysroot-fix-interpreter.patch'] +checksums = [ + {'rustc-1.75.0-src.tar.gz': '5b739f45bc9d341e2d1c570d65d2375591e22c2d23ef5b8a37711a0386abc088'}, + {'Rust-1.70_sysroot-fix-interpreter.patch': '220129db55e022a98d25028da5dcc9f26b252dd995c3ac92f6312dbb1e362cb1'}, +] + +builddependencies = [ + ('binutils', '2.39'), + ('CMake', '3.24.3'), + ('Python', '3.10.8', '-bare'), + ('pkgconf', '1.9.3'), +] + +dependencies = [ + ('OpenSSL', '1.1', '', SYSTEM), +] + +moduleclass = 'lang' From a3cd107dcedfe853c0101b1ce693b4c4269b832a Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Sat, 6 Jan 2024 17:20:23 +0100 Subject: [PATCH 333/356] adding easyconfigs: wrf-python-1.3.4.1-foss-2023a.eb --- .../wrf-python-1.3.4.1-foss-2023a.eb | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 easybuild/easyconfigs/w/wrf-python/wrf-python-1.3.4.1-foss-2023a.eb diff --git a/easybuild/easyconfigs/w/wrf-python/wrf-python-1.3.4.1-foss-2023a.eb b/easybuild/easyconfigs/w/wrf-python/wrf-python-1.3.4.1-foss-2023a.eb new file mode 100644 index 00000000000..26cf724496d --- /dev/null +++ b/easybuild/easyconfigs/w/wrf-python/wrf-python-1.3.4.1-foss-2023a.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'wrf-python' +version = '1.3.4.1' + +homepage = 'https://wrf-python.readthedocs.io' +description = """A collection of diagnostic and interpolation routines for use with output from + the Weather Research and Forecasting (WRF-ARW) Model.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +dependencies = [ + ('Python', '3.11.3'), + ('netcdf4-python', '1.6.4'), + ('xarray', '2023.9.0'), + ('matplotlib', '3.7.2'), + ('Cartopy', '0.22.0'), +] + +use_pip = True + +exts_list = [ + ('wrapt', '1.16.0', { + 'checksums': ['5f370f952971e7d17c7d1ead40e49f32345a7f7a5373571ef44d800d06b1899d'], + }), + (name, version, { + 'modulename': 'wrf', + 'checksums': ['e349578da8c3f108b8169c19d2186e72d79f610561f2e11c59fbf6eda3f9a2e7'], + }), +] + +moduleclass = 'geo' From f6c52440544d48c4911971006e086ecc7c02488e Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Sun, 7 Jan 2024 11:21:24 +0100 Subject: [PATCH 334/356] add missing basemap dependency + enable sanity_pip_check in easyconfig for wrf-python v1.3.4.1 --- .../b/basemap/basemap-1.3.9-foss-2023a.eb | 50 +++++++++++++++++++ .../wrf-python-1.3.4.1-foss-2023a.eb | 3 ++ 2 files changed, 53 insertions(+) create mode 100644 easybuild/easyconfigs/b/basemap/basemap-1.3.9-foss-2023a.eb diff --git a/easybuild/easyconfigs/b/basemap/basemap-1.3.9-foss-2023a.eb b/easybuild/easyconfigs/b/basemap/basemap-1.3.9-foss-2023a.eb new file mode 100644 index 00000000000..39b8785128d --- /dev/null +++ b/easybuild/easyconfigs/b/basemap/basemap-1.3.9-foss-2023a.eb @@ -0,0 +1,50 @@ +# The newer version require also the installation of basemap-data. +# Conveniently, the tarball contains that too, so that is the one +# being used here. +# Based on basemap-1.2.2-foss-2020a-Python-3.8.2.eb +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'PythonBundle' + +name = 'basemap' +version = '1.3.9' + +homepage = 'https://matplotlib.org/basemap/' +description = """The matplotlib basemap toolkit is a library for plotting +2D data on maps in Python""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('matplotlib', '3.7.2'), + ('GEOS', '3.12.0'), + ('Pillow', '10.0.0'), + ('pyproj', '3.6.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('pyshp', '2.3.1', { + 'modulename': 'shapefile', + 'checksums': ['4caec82fd8dd096feba8217858068bacb2a3b5950f43c048c6dc32a3489d5af1'], + }), + ('basemap_data', version, { + 'modulename': 'mpl_toolkits.basemap_data', + 'preinstallopts': "cd packages/%(name)s && GEOS_DIR=$EBROOTGEOS", + 'source_urls': ['https://github.com/matplotlib/basemap/archive/'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['44ae3764595778077d4bc40b0756c90f483b816927e82206e9f376e31a2dc533'], + }), + (name, version, { + 'modulename': 'mpl_toolkits.basemap', + 'preinstallopts': "cd packages/%(name)s && GEOS_DIR=$EBROOTGEOS", + 'source_urls': ['https://github.com/matplotlib/basemap/archive/'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['44ae3764595778077d4bc40b0756c90f483b816927e82206e9f376e31a2dc533'], + }), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/w/wrf-python/wrf-python-1.3.4.1-foss-2023a.eb b/easybuild/easyconfigs/w/wrf-python/wrf-python-1.3.4.1-foss-2023a.eb index 26cf724496d..bc0634647b0 100644 --- a/easybuild/easyconfigs/w/wrf-python/wrf-python-1.3.4.1-foss-2023a.eb +++ b/easybuild/easyconfigs/w/wrf-python/wrf-python-1.3.4.1-foss-2023a.eb @@ -16,6 +16,7 @@ dependencies = [ ('xarray', '2023.9.0'), ('matplotlib', '3.7.2'), ('Cartopy', '0.22.0'), + ('basemap', '1.3.9'), ] use_pip = True @@ -30,4 +31,6 @@ exts_list = [ }), ] +sanity_pip_check = True + moduleclass = 'geo' From b268bac1a617e486cec5472a22e828b68c4336c6 Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Sun, 7 Jan 2024 11:21:41 +0100 Subject: [PATCH 335/356] f90nml v1.4.4 for GCCcore/13.2.0: Remove default source_urls --- easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-13.2.0.eb | 1 - 1 file changed, 1 deletion(-) diff --git a/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-13.2.0.eb b/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-13.2.0.eb index 1e31e9ee12e..215dad71e8d 100644 --- a/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/f/f90nml/f90nml-1.4.4-GCCcore-13.2.0.eb @@ -9,7 +9,6 @@ description = """A Python module and command line tool for parsing toolchain = {'name': 'GCCcore', 'version': '13.2.0'} -source_urls = [PYPI_SOURCE] sources = [SOURCE_TAR_GZ] checksums = ['65e8e135779895245238cbf6be5b1b80d6c2b8c9350c9cdce6183a31bdfd7622'] From dd9ffb19d3c7060edb7327e29b9fe2c1cae49e2e Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Sun, 7 Jan 2024 13:57:33 +0100 Subject: [PATCH 336/356] stick to usual order of easyconfig parameters in Cython easyconfig --- .../easyconfigs/c/Cython/Cython-3.0.7-GCCcore-12.3.0.eb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/easybuild/easyconfigs/c/Cython/Cython-3.0.7-GCCcore-12.3.0.eb b/easybuild/easyconfigs/c/Cython/Cython-3.0.7-GCCcore-12.3.0.eb index 9bc9168fac1..c051049f2e3 100644 --- a/easybuild/easyconfigs/c/Cython/Cython-3.0.7-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/c/Cython/Cython-3.0.7-GCCcore-12.3.0.eb @@ -15,6 +15,9 @@ docurls = [ toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +sources = [SOURCE_TAR_GZ] +checksums = ['fb299acf3a578573c190c858d49e0cf9d75f4bc49c3f24c5a63804997ef09213'] + builddependencies = [ ('binutils', '2.40'), ] @@ -23,9 +26,6 @@ dependencies = [ ('Python', '3.11.3'), ] -sources = [SOURCE_TAR_GZ] -checksums = ['fb299acf3a578573c190c858d49e0cf9d75f4bc49c3f24c5a63804997ef09213'] - download_dep_fail = True use_pip = True sanity_pip_check = True From bc9758d0cc533fb64a787c260c7b088832e8d12c Mon Sep 17 00:00:00 2001 From: Leonard Nielsen <55690238+lcniel@users.noreply.github.com> Date: Mon, 8 Jan 2024 01:56:25 +0100 Subject: [PATCH 337/356] Rename XCrySDen-1.6.2-intel-compilers-2021.4.0.eb to XCrySDen-1.6.2-intel-2021b.eb --- ...-intel-compilers-2021.4.0.eb => XCrySDen-1.6.2-intel-2021b.eb} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename easybuild/easyconfigs/x/XCrySDen/{XCrySDen-1.6.2-intel-compilers-2021.4.0.eb => XCrySDen-1.6.2-intel-2021b.eb} (100%) diff --git a/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-compilers-2021.4.0.eb b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb similarity index 100% rename from easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-compilers-2021.4.0.eb rename to easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2021b.eb From 18aa7ea9b5dc939dc465e59fadf226688ff1d128 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Mon, 8 Jan 2024 10:50:45 +0100 Subject: [PATCH 338/356] Update pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb add SciPy-bundle dependency --- .../pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb index e0ca7a4f166..4b306a76b67 100644 --- a/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb +++ b/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb @@ -32,7 +32,8 @@ dependencies = [ ('CUDA', '11.7.0', '', SYSTEM), ('h5py', '3.7.0'), ('tensorboard', '2.10.0'), - ('scikit-image', '0.19.3') + ('scikit-image', '0.19.3'), + ('SciPy-bundle', '2022.05'), ] use_pip = True From 5bbd7a398b104aebd802905acd31f555c94431a0 Mon Sep 17 00:00:00 2001 From: Thomas Hoffmann <81254262+ThomasHoffmann77@users.noreply.github.com> Date: Mon, 8 Jan 2024 12:45:12 +0100 Subject: [PATCH 339/356] Update pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb reorder dependencies --- .../pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb index 4b306a76b67..7e56318d66d 100644 --- a/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb +++ b/easybuild/easyconfigs/p/pytorch-3dunet/pytorch-3dunet-1.6.0-foss-2022a-CUDA-11.7.0.eb @@ -28,12 +28,12 @@ builddependencies = [ dependencies = [ ('Python', '3.10.4'), - ('PyTorch', '1.12.0', versionsuffix), + ('SciPy-bundle', '2022.05'), ('CUDA', '11.7.0', '', SYSTEM), + ('PyTorch', '1.12.0', versionsuffix), ('h5py', '3.7.0'), ('tensorboard', '2.10.0'), ('scikit-image', '0.19.3'), - ('SciPy-bundle', '2022.05'), ] use_pip = True From 5ecc30a07a10d141670b683a1b76975a9bf31cfc Mon Sep 17 00:00:00 2001 From: Ake Sandgren Date: Mon, 8 Jan 2024 13:03:47 +0100 Subject: [PATCH 340/356] SUNDIALS: Add CUDA version --- .../SUNDIALS-6.6.0-foss-2023a-CUDA-12.1.1.eb | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a-CUDA-12.1.1.eb diff --git a/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..500d7fdeab1 --- /dev/null +++ b/easybuild/easyconfigs/s/SUNDIALS/SUNDIALS-6.6.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,56 @@ +easyblock = 'CMakeMake' + +name = 'SUNDIALS' +version = '6.6.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://computing.llnl.gov/projects/sundials' + +description = "SUNDIALS: SUite of Nonlinear and DIfferential/ALgebraic Equation Solvers" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'openmp': True, 'usempi': True, 'pic': True} + +source_urls = ['https://github.com/LLNL/sundials/releases/download/v%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + '%(name)s-%(version)s_fix_bad_find_library_calls.patch', +] +checksums = [ + {'sundials-6.6.0.tar.gz': 'f90029b8da846c8faff5530fd1fa4847079188d040554f55c1d5d1e04743d29d'}, + {'SUNDIALS-6.6.0_fix_bad_find_library_calls.patch': + 'c5e3248bd036fee17436649280ff7156a2722698c33ec20a5e635e3a60d16823'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('SuiteSparse', '7.1.0'), +] + +_copts = [ + '-DENABLE_MPI=ON', + '-DENABLE_OPENMP=ON', + '-DENABLE_LAPACK=ON', + '-DENABLE_KLU=ON', + '-DENABLE_CUDA=ON', + '-DCMAKE_CUDA_ARCHITECTURES="%(cuda_cc_cmake)s"', +] +configopts = ' '.join(_copts) + +local_solvers = ['arkode', 'cvode', 'cvodes', 'ida', 'idas', 'kinsol'] + +sanity_check_paths = { + 'files': ['lib/libsundials_%s.a' % s for s in local_solvers + + ['nvecopenmp', 'nvecparallel', 'nvecserial']] + + ['lib/libsundials_%s.%s' % (s, SHLIB_EXT) for s in local_solvers + + ['nvecopenmp', 'nvecparallel', 'nvecserial']], + 'dirs': ['examples/%s' % s for s in local_solvers] + + ['include/%s' % s for s in local_solvers] + + ['examples/nvector', 'include/nvector', 'include/sundials'], +} + +moduleclass = 'math' From eb0263032056baa7752262910f1ee667e3be8653 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Mon, 8 Jan 2024 13:42:14 +0100 Subject: [PATCH 341/356] adding easyconfigs: MiXCR-4.6.0-Java-17.eb --- .../m/MiXCR/MiXCR-4.6.0-Java-17.eb | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 easybuild/easyconfigs/m/MiXCR/MiXCR-4.6.0-Java-17.eb diff --git a/easybuild/easyconfigs/m/MiXCR/MiXCR-4.6.0-Java-17.eb b/easybuild/easyconfigs/m/MiXCR/MiXCR-4.6.0-Java-17.eb new file mode 100644 index 00000000000..e8836a4b99d --- /dev/null +++ b/easybuild/easyconfigs/m/MiXCR/MiXCR-4.6.0-Java-17.eb @@ -0,0 +1,28 @@ +easyblock = 'Tarball' + +name = 'MiXCR' +version = '4.6.0' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://milaboratory.com/software/mixcr' +description = """MiXCR is a universal software for fast and accurate extraction of T- and B- cell receptor repertoires +from any type of sequencing data.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/milaboratory/mixcr/releases/download/v%(version)s/'] +sources = [SOURCELOWER_ZIP] +checksums = ['05db1276951a2e656d0a7bf4e2b1fff326733a5f961a9d4829be139852fabe13'] + +dependencies = [('Java', '17')] + +sanity_check_paths = { + 'files': ['mixcr', 'mixcr.jar'], + 'dirs': [], +} + +sanity_check_commands = ["command -v mixcr"] + +modextrapaths = {'PATH': ''} + +moduleclass = 'bio' From c6f55e5dd044cb46401f52f1d737c7572f54c2a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Kr=C3=A1l?= Date: Mon, 8 Jan 2024 14:00:50 +0100 Subject: [PATCH 342/356] adding easyconfigs: PyInstaller-6.3.0-GCCcore-12.3.0.eb --- .../PyInstaller-6.3.0-GCCcore-12.3.0.eb | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 easybuild/easyconfigs/p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb diff --git a/easybuild/easyconfigs/p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..2a4ccf880ff --- /dev/null +++ b/easybuild/easyconfigs/p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonBundle' + +name = 'PyInstaller' +version = '6.3.0' + +homepage = 'https://pyinstaller.org/en/stable/' +description = """PyInstaller bundles a Python application and all its dependencies into a single package. + The user can run the packaged app without installing a Python interpreter or any modules.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +dependencies = [ + ('Python', '3.11.3'), + ('makeinfo', '7.0.3'), +] + +use_pip = True +sanity_pip_check = True + + +exts_list = [ + ('altgraph', '0.17.4', { + 'checksums': ['1b5afbb98f6c4dcadb2e2ae6ab9fa994bbb8c1d75f4fa96d340f9437ae454406'], + }), + ('packaging', '23.2', { + 'checksums': ['048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5'], + }), + ('pyinstaller-hooks-contrib', '2023.12', { + 'modulename': '_pyinstaller_hooks_contrib', + 'checksums': ['11a9d59d903723dd693e8c10b054f3ea1ecad390623c9fa527c731d715fc5b3f'], + }), + (name, version, { + 'sources': [SOURCELOWER_TAR_GZ], + 'modulename': name, + 'checksums': ['914d4c96cc99472e37ac552fdd82fbbe09e67bb592d0717fcffaa99ea74273df'], + }), +] + +sanity_check_commands = ["%(namelower)s --help"] + +moduleclass = 'devel' From aa29aba6c1c9f5f202d5056bf2d11c977bfa1fc8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Kr=C3=A1l?= Date: Mon, 8 Jan 2024 14:20:50 +0100 Subject: [PATCH 343/356] add missing dependency --- .../p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/easybuild/easyconfigs/p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb index 2a4ccf880ff..c89b4a0c04d 100644 --- a/easybuild/easyconfigs/p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb @@ -9,6 +9,8 @@ description = """PyInstaller bundles a Python application and all its dependenci toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +builddependencies = [('binutils', '2.40')] + dependencies = [ ('Python', '3.11.3'), ('makeinfo', '7.0.3'), From 2e52e2b987b78ca59f4d0d01d08e1ba5c98f9a3f Mon Sep 17 00:00:00 2001 From: Ake Sandgren Date: Mon, 8 Jan 2024 16:00:49 +0100 Subject: [PATCH 344/356] adding easyconfigs: GATK-4.5.0.0-GCCcore-12.3.0-Java-17.eb --- .../GATK-4.5.0.0-GCCcore-12.3.0-Java-17.eb | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 easybuild/easyconfigs/g/GATK/GATK-4.5.0.0-GCCcore-12.3.0-Java-17.eb diff --git a/easybuild/easyconfigs/g/GATK/GATK-4.5.0.0-GCCcore-12.3.0-Java-17.eb b/easybuild/easyconfigs/g/GATK/GATK-4.5.0.0-GCCcore-12.3.0-Java-17.eb new file mode 100644 index 00000000000..6f2cb5f5183 --- /dev/null +++ b/easybuild/easyconfigs/g/GATK/GATK-4.5.0.0-GCCcore-12.3.0-Java-17.eb @@ -0,0 +1,55 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2013 Cyprus Institute / CaSToRC, University of Luxembourg / LCSB +# Authors:: George Tsouloupas , Fotis Georgatos , +# Kenneth Hoste (UGent) +# License:: MIT/GPL +# $Id$ +# +# This work implements a part of the HPCBIOS project and is a component of the policy: +# http://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html +# Modified by: Adam Huffman, Jonas Demeulemeester +# The Francis Crick Institute +# Modified for version 4.0.5.1 by: Ruben van Dijk, University of Groningen +# Modified for version 4.2.3.0 by: J. Sassmannshausen / GSTT +# Modified for version 4.4.0.0 by: Thomas Eylenbosch / Gluo NV +## + +easyblock = 'Tarball' + +name = 'GATK' +version = '4.5.0.0' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://www.broadinstitute.org/gatk/' +description = """The Genome Analysis Toolkit or GATK is a software package developed at the Broad Institute + to analyse next-generation resequencing data. The toolkit offers a wide variety of tools, + with a primary focus on variant discovery and genotyping as well as strong emphasis on + data quality assurance. Its robust architecture, powerful processing engine and + high-performance computing features make it capable of taking on projects of any size.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/broadinstitute/gatk/releases/download/%(version)s/'] +sources = ['gatk-%(version)s.zip'] +checksums = ['dc1a4471e8bb566397db9894ca18acbf8f40f3fc312c8fad9a8c5390c218e916'] + +dependencies = [ + ('Java', '17', '', SYSTEM), + ('Python', '3.11.3'), +] + +modextrapaths = {'PATH': ''} + +sanity_check_paths = { + 'files': ['gatk'], + 'dirs': [], +} + +sanity_check_commands = [ + "gatk --help", + "gatk --list", +] + +moduleclass = 'bio' From c448437e2ff976401910159f8705296278e8947d Mon Sep 17 00:00:00 2001 From: Alexandre Strube Date: Mon, 8 Jan 2024 16:32:39 +0000 Subject: [PATCH 345/356] adding easyconfigs: Hydra-1.3.2-GCCcore-12.3.0.eb --- .../h/Hydra/Hydra-1.3.2-GCCcore-12.3.0.eb | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 easybuild/easyconfigs/h/Hydra/Hydra-1.3.2-GCCcore-12.3.0.eb diff --git a/easybuild/easyconfigs/h/Hydra/Hydra-1.3.2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/h/Hydra/Hydra-1.3.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..b337a4b9f63 --- /dev/null +++ b/easybuild/easyconfigs/h/Hydra/Hydra-1.3.2-GCCcore-12.3.0.eb @@ -0,0 +1,49 @@ +easyblock = 'PythonBundle' + +name = 'Hydra' +version = '1.3.2' + +homepage = "https://hydra.cc/" +description = """ +Hydra is an open-source Python framework that simplifies the development of +research and other complex applications. The key feature is the ability to +dynamically create a hierarchical configuration by composition and override it +through config files and the command line. The name Hydra comes from its +ability to run multiple similar jobs - much like a Hydra with multiple heads. +""" + +github_account = 'facebookresearch' + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('Java', '17', '', SYSTEM), # needed by ANTLR runtime +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('PyYAML', '6.0'), # needed by omegaconf +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('antlr4-python3-runtime', '4.9', { + 'modulename': 'antlr4', + 'checksums': ['02d9afb720c13c52b336234286966cdf5aff704f230a513e635adb0d94de97ae'], + }), + ('omegaconf', '2.3.0', { + 'checksums': ['d5d4b6d29955cc50ad50c46dc269bcd92c6e00f5f90d23ab5fee7bfca4ba4cc7'], + }), + + ('hydra', version, { + 'source_urls': ['https://github.com/%(github_account)s/%(namelower)s/archive'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['3f0f14305e9c6ae4b1dbcba344fe09dd0fc79c0a0656470c249f4f7ca46bf471'], + }), +] + +moduleclass = 'data' From 7bcbb769de98a27ffbf062a402e9ce9b497cd332 Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Mon, 8 Jan 2024 17:42:19 +0100 Subject: [PATCH 346/356] allow multiple versions of Rust as dependency if versionsuffix indicates alternate version being used --- test/easyconfigs/easyconfigs.py | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index f041f7f7b7d..28cfc1d99ad 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -456,7 +456,7 @@ def check_dep_vars(self, gen, dep, dep_vars): # for some dependencies, we allow exceptions for software that depends on a particular version, # as long as that's indicated by the versionsuffix versionsuffix_deps = ['ASE', 'Boost', 'CUDA', 'CUDAcore', 'Java', 'Lua', - 'PLUMED', 'PyTorch', 'R', 'TensorFlow'] + 'PLUMED', 'PyTorch', 'R', 'Rust', 'TensorFlow'] if dep in versionsuffix_deps and len(dep_vars) > 1: # check for '-CUDA-*' versionsuffix for CUDAcore dependency @@ -824,6 +824,29 @@ def test_check_dep_vars(self): 'version: 2020.03; versionsuffix:': ['matplotlib-3.2.1-foss-2020a.eb'], })) + # multiple dependency variants of specific software is OK, but only if indicated via versionsuffix + self.assertTrue(self.check_dep_vars('2019b', 'TensorFlow', { + 'version: 1.15.2; versionsuffix: -TensorFlow-1.15.2': ['Horovod-0.18.2-fosscuda-2019b-TensorFlow-1.15.2.eb'], + 'version: 2.2.0; versionsuffix: -TensorFlow-2.2.0-Python-3.7.4': + ['Horovod-0.19.5-fosscuda-2019b-TensorFlow-2.2.0-Python-3.7.4.eb'], + 'version: 2.1.0; versionsuffix: -Python-3.7.4': ['Keras-2.3.1-foss-2019b-Python-3.7.4.eb'], + })) + + self.assertFalse(self.check_dep_vars('2019b', 'TensorFlow', { + 'version: 1.15.2; versionsuffix: ': ['Horovod-0.18.2-fosscuda-2019b.eb'], + 'version: 2.1.0; versionsuffix: -Python-3.7.4': ['Keras-2.3.1-foss-2019b-Python-3.7.4.eb'], + })) + + self.assertTrue(self.check_dep_vars('2022b', 'Rust', { + 'version: 1.65.0; versionsuffix: ': ['maturin-1.1.0-GCCcore-12.2.0.eb'], + 'version: 1.75.0; versionsuffix: -Rust-1.75.0': ['maturin-1.4.0-GCCcore-12.2.0-Rust-1.75.0.eb'], + })) + + self.assertFalse(self.check_dep_vars('2022b', 'Rust', { + 'version: 1.65.0; versionsuffix: ': ['maturin-1.1.0-GCCcore-12.2.0.eb'], + 'version: 1.75.0; versionsuffix: ': ['maturin-1.4.0-GCCcore-12.2.0.eb'], + })) + def test_dep_versions_per_toolchain_generation(self): """ Check whether there's only one dependency version per toolchain generation actively used. From 83f5ed3dd6bb15357b2a591064996aa6f6677800 Mon Sep 17 00:00:00 2001 From: Sam Moors Date: Mon, 8 Jan 2024 18:28:26 +0100 Subject: [PATCH 347/356] remove empty line --- .../p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb | 1 - 1 file changed, 1 deletion(-) diff --git a/easybuild/easyconfigs/p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb index c89b4a0c04d..04ff0394098 100644 --- a/easybuild/easyconfigs/p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/PyInstaller/PyInstaller-6.3.0-GCCcore-12.3.0.eb @@ -19,7 +19,6 @@ dependencies = [ use_pip = True sanity_pip_check = True - exts_list = [ ('altgraph', '0.17.4', { 'checksums': ['1b5afbb98f6c4dcadb2e2ae6ab9fa994bbb8c1d75f4fa96d340f9437ae454406'], From 57943f5772b4afc0193b087eeaf582a132023d79 Mon Sep 17 00:00:00 2001 From: Sam Moors Date: Mon, 8 Jan 2024 21:46:24 +0100 Subject: [PATCH 348/356] fix line too long --- test/easyconfigs/easyconfigs.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index 28cfc1d99ad..76152b79d40 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -826,7 +826,8 @@ def test_check_dep_vars(self): # multiple dependency variants of specific software is OK, but only if indicated via versionsuffix self.assertTrue(self.check_dep_vars('2019b', 'TensorFlow', { - 'version: 1.15.2; versionsuffix: -TensorFlow-1.15.2': ['Horovod-0.18.2-fosscuda-2019b-TensorFlow-1.15.2.eb'], + 'version: 1.15.2; versionsuffix: -TensorFlow-1.15.2': + ['Horovod-0.18.2-fosscuda-2019b-TensorFlow-1.15.2.eb'], 'version: 2.2.0; versionsuffix: -TensorFlow-2.2.0-Python-3.7.4': ['Horovod-0.19.5-fosscuda-2019b-TensorFlow-2.2.0-Python-3.7.4.eb'], 'version: 2.1.0; versionsuffix: -Python-3.7.4': ['Keras-2.3.1-foss-2019b-Python-3.7.4.eb'], From 09367456e4d1d2ea4d6279c581bc8d2b62884881 Mon Sep 17 00:00:00 2001 From: Jakob Schiotz Date: Tue, 9 Jan 2024 10:51:20 +0100 Subject: [PATCH 349/356] adding easyconfigs: GPAW-24.1.0-foss-2023a.eb --- .../g/GPAW/GPAW-24.1.0-foss-2023a.eb | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 easybuild/easyconfigs/g/GPAW/GPAW-24.1.0-foss-2023a.eb diff --git a/easybuild/easyconfigs/g/GPAW/GPAW-24.1.0-foss-2023a.eb b/easybuild/easyconfigs/g/GPAW/GPAW-24.1.0-foss-2023a.eb new file mode 100644 index 00000000000..9c555311a5b --- /dev/null +++ b/easybuild/easyconfigs/g/GPAW/GPAW-24.1.0-foss-2023a.eb @@ -0,0 +1,50 @@ +easyblock = "PythonPackage" + +name = 'GPAW' +version = '24.1.0' + +homepage = 'https://wiki.fysik.dtu.dk/gpaw/' +description = """GPAW is a density-functional theory (DFT) Python code based on the projector-augmented wave (PAW) + method and the atomic simulation environment (ASE). It uses real-space uniform grids and multigrid methods or + atom-centered basis-functions.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True, 'openmp': False} + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + ('GPAW-20.1.0-Add-Easybuild-configuration-files.patch', 1), +] +checksums = [ + {'gpaw-24.1.0.tar.gz': '14150bdc4b098060164b569699577ff57769a42783d79d37c9eb6cfe9cd506ea'}, + {'GPAW-20.1.0-Add-Easybuild-configuration-files.patch': + '2b337399479bf018a86156ed073dd7a78ec8c0df1f28b015f9284c6bf9fa5f15'}, +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('ASE', '3.22.1'), + ('libxc', '6.2.2'), + ('libvdwxc', '0.4.0'), + ('ELPA', '2023.05.001'), + ('PyYAML', '6.0'), + ('GPAW-setups', '0.9.20000', '', SYSTEM), +] + +prebuildopts = 'GPAW_CONFIG=doc/platforms/Linux/EasyBuild/config_foss.py' +preinstallopts = prebuildopts + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/gpaw%s' % x for x in ['', '-analyse-basis', '-basis', '-plot-parallel-timings', + '-runscript', '-setup', '-upfplot']], + 'dirs': ['lib/python%(pyshortver)s/site-packages'] +} + +moduleclass = 'chem' From 106a39ea4d50d5fab9ad1e3b3f184ecd695b3b1b Mon Sep 17 00:00:00 2001 From: WilleBell Date: Tue, 9 Jan 2024 11:15:20 +0100 Subject: [PATCH 350/356] set maxparallel = 1 to avoid build error --- easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb b/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb index f41a09d3499..42e999a8fe0 100644 --- a/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb +++ b/easybuild/easyconfigs/g/GIMIC/GIMIC-2.2.1-foss-2022a.eb @@ -62,4 +62,7 @@ sanity_check_paths = { sanity_check_commands = ['gimic --help'] +# Sometimes building in parallel leads to error +maxparallel = 1 + moduleclass = 'chem' From ea34fe86f8125f686c7ea7c1d9e2a654330bbaef Mon Sep 17 00:00:00 2001 From: Leonard Nielsen <55690238+lcniel@users.noreply.github.com> Date: Tue, 9 Jan 2024 13:10:19 +0100 Subject: [PATCH 351/356] Update WIEN2k-23.2-intel-2021b.eb --- easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb index 256edac8785..a8881dbe118 100644 --- a/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb +++ b/easybuild/easyconfigs/w/WIEN2k/WIEN2k-23.2-intel-2021b.eb @@ -37,7 +37,7 @@ dependencies = [ osdependencies = [ ('glibc-devel', 'libc6-dev'), # required for libpthread. - ('tcsh', '6.24.01') + ('tcsh') ] # remote = 'pbsssh' From b2675413b409fe6ad91cf039d6e326a59bb1b685 Mon Sep 17 00:00:00 2001 From: Simon Pinches Date: Tue, 9 Jan 2024 14:09:43 +0100 Subject: [PATCH 352/356] adding easyconfigs: netCDF-4.9.2-iimpi-2023b.eb --- .../n/netCDF/netCDF-4.9.2-iimpi-2023b.eb | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 easybuild/easyconfigs/n/netCDF/netCDF-4.9.2-iimpi-2023b.eb diff --git a/easybuild/easyconfigs/n/netCDF/netCDF-4.9.2-iimpi-2023b.eb b/easybuild/easyconfigs/n/netCDF/netCDF-4.9.2-iimpi-2023b.eb new file mode 100644 index 00000000000..7d3a6e0f8ff --- /dev/null +++ b/easybuild/easyconfigs/n/netCDF/netCDF-4.9.2-iimpi-2023b.eb @@ -0,0 +1,59 @@ +name = 'netCDF' +version = '4.9.2' + +homepage = 'https://www.unidata.ucar.edu/software/netcdf/' +description = """NetCDF (network Common Data Form) is a set of software libraries + and machine-independent data formats that support the creation, access, and sharing of array-oriented + scientific data.""" + +toolchain = {'name': 'iimpi', 'version': '2023b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/Unidata/netcdf-c/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'netCDF-4.9.0_skip-nasa-test.patch', +] +checksums = [ + {'v4.9.2.tar.gz': 'bc104d101278c68b303359b3dc4192f81592ae8640f1aee486921138f7f88cb7'}, + {'netCDF-4.9.0_skip-nasa-test.patch': '19d99e03c048b037dc01f03f5b8ddc910ebaceb076d0f050540d348f26dfcd2a'}, +] + +builddependencies = [ + ('Autotools', '20220317'), + ('CMake', '3.27.6'), + ('Doxygen', '1.9.8'), +] + +dependencies = [ + ('HDF5', '1.14.3'), + ('cURL', '8.3.0'), + ('Szip', '2.1.1'), + ('zstd', '1.5.5'), + ('bzip2', '1.0.8'), + ('libxml2', '2.11.5'), +] + +# disable Szip, zlib parallel I/O tests, since these can hang on some systems, e.g. generoso +# see: https://github.com/easybuilders/easybuild-easyconfigs/pull/16834 +# and https://github.com/easybuilders/easybuild-easyconfigs/pull/17107#issuecomment-1432947172 +# and https://github.com/easybuilders/easybuild-easyconfigs/pull/18523#issuecomment-1675313158 +preconfigopts = ("sed -i -e 's|@MPIEXEC@ -n 16 ./tst_parallel3|echo \"skipped by EasyBuild\"|g'" + " -e 's|@MPIEXEC@ -n 4 ./tst_parallel5|echo \"skipped by EasyBuild\"|g'" + " -e 's|@MPIEXEC@ -n 4 ./tst_parallel_zlib|echo \"skipped by EasyBuild\"|g'" + " -e 's|@MPIEXEC@ -n 4 ./tst_parallel_compress|echo \"skipped by EasyBuild\"|g'" + " %(builddir)s/%(namelower)s-c-%(version)s/nc_test4/run_par_test.sh.in &&") + +# make sure both static and shared libs are built +# and disable "remote" tests that access a unreliable external test server over internet +configopts = [ + "-DENABLE_DAP_REMOTE_TESTS=OFF -DBUILD_SHARED_LIBS=OFF", + "-DENABLE_DAP_REMOTE_TESTS=OFF -DBUILD_SHARED_LIBS=ON", +] + +# some tests try to start 16 MPI ranks, so we need to allow oversubscription to avoid failing tests +pretestopts = "OMPI_MCA_rmaps_base_oversubscribe=1 " + +runtest = 'test' + +moduleclass = 'data' From bc49666794490f37b6eedc8d3567d5ad18596748 Mon Sep 17 00:00:00 2001 From: Pavel Tomanek Date: Tue, 9 Jan 2024 15:20:31 +0100 Subject: [PATCH 353/356] adding easyconfigs: zlib-1.3-intel-2023a.eb --- .../z/zlib/zlib-1.3-intel-2023a.eb | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb diff --git a/easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb b/easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb new file mode 100644 index 00000000000..b3c10600d2a --- /dev/null +++ b/easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb @@ -0,0 +1,23 @@ +easyblock = 'ConfigureMake' + +name = 'zlib' +version = '1.3' + +homepage = 'http://www.zlib.net/' +description = """zlib is designed to be a free, general-purpose, legally unencumbered -- that is, + not covered by any patents -- lossless data-compression library for use on virtually any + computer hardware and operating system.""" + +toolchain = {'name': 'intel', 'version': '2023a'} +toolchainopts = {'pic': True} + +source_urls = ['http://www.zlib.net/'] +sources = ['zlib-%(version)s.tar.gz'] +checksums = ['ff0ba4c292013dbc27530b3a81e1f9a813cd39de01ca5e0f8bf355702efa593e'] + +sanity_check_paths = { + 'files': ['include/zconf.h', 'include/zlib.h', 'lib/libz.a', 'lib/libz.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'lib' From 5fbba1dbafc7dbc4be5a610390dbc783023783cf Mon Sep 17 00:00:00 2001 From: Kenneth Hoste Date: Wed, 10 Jan 2024 09:24:04 +0100 Subject: [PATCH 354/356] use "mixcr -v" as sanity check command for MiXCR v4.6.0 Co-authored-by: Sam Moors --- easybuild/easyconfigs/m/MiXCR/MiXCR-4.6.0-Java-17.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/m/MiXCR/MiXCR-4.6.0-Java-17.eb b/easybuild/easyconfigs/m/MiXCR/MiXCR-4.6.0-Java-17.eb index e8836a4b99d..4c75c139e4e 100644 --- a/easybuild/easyconfigs/m/MiXCR/MiXCR-4.6.0-Java-17.eb +++ b/easybuild/easyconfigs/m/MiXCR/MiXCR-4.6.0-Java-17.eb @@ -21,7 +21,7 @@ sanity_check_paths = { 'dirs': [], } -sanity_check_commands = ["command -v mixcr"] +sanity_check_commands = ["mixcr -v"] modextrapaths = {'PATH': ''} From 704eeafd4167e45611ad5dd82580dc22b3ffa138 Mon Sep 17 00:00:00 2001 From: Sam Moors Date: Wed, 10 Jan 2024 09:39:07 +0100 Subject: [PATCH 355/356] use https instead of http --- easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb b/easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb index b3c10600d2a..425fb49cded 100644 --- a/easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb +++ b/easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb @@ -11,7 +11,7 @@ description = """zlib is designed to be a free, general-purpose, legally unencum toolchain = {'name': 'intel', 'version': '2023a'} toolchainopts = {'pic': True} -source_urls = ['http://www.zlib.net/'] +source_urls = ['https://www.zlib.net/'] sources = ['zlib-%(version)s.tar.gz'] checksums = ['ff0ba4c292013dbc27530b3a81e1f9a813cd39de01ca5e0f8bf355702efa593e'] From a631d20638ce976be180671a9fb6f34a8b7e52fb Mon Sep 17 00:00:00 2001 From: Sam Moors Date: Wed, 10 Jan 2024 09:40:15 +0100 Subject: [PATCH 356/356] https --- easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb b/easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb index 425fb49cded..e726074c711 100644 --- a/easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb +++ b/easybuild/easyconfigs/z/zlib/zlib-1.3-intel-2023a.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'zlib' version = '1.3' -homepage = 'http://www.zlib.net/' +homepage = 'https://www.zlib.net/' description = """zlib is designed to be a free, general-purpose, legally unencumbered -- that is, not covered by any patents -- lossless data-compression library for use on virtually any computer hardware and operating system."""