diff --git a/RELEASE_NOTES b/RELEASE_NOTES index 96daf16fe02..3a655a1b5b3 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -3,10 +3,99 @@ 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 77 new software packages: + - AICSImageIO (#19315), ANTIC (#19203), BiasAdjustCXX (#19341), BOPTEST (#19295), BRiAl (#19208), castor (#19176), + 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: + - 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) + - 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 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, #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 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) + - use existing patch in pybind11 2.6.2 and 2.7.1 to fix failing test due to extra whitespace (#19279) + - 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) + - 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) + - 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, #19425) + - allow ITK legacy code and Python wrappers in ITK v5.2.1 (#19431) + - 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) + - add versionsuffix `-param` to easyconfig for ReaxFF 2.0 (#19307) + - use `LooseVersion` from `easybuild.tools` (#19376) + + v4.8.2 (29 October 2023) ------------------------ diff --git a/easybuild/easyconfigs/0/4ti2/4ti2-1.6.9-GCC-11.3.0.eb b/easybuild/easyconfigs/0/4ti2/4ti2-1.6.9-GCC-11.3.0.eb new file mode 100644 index 00000000000..1fd0b976427 --- /dev/null +++ b/easybuild/easyconfigs/0/4ti2/4ti2-1.6.9-GCC-11.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = '4ti2' +version = '1.6.9' + +homepage = 'https://4ti2.github.io/' +description = """A software package for algebraic, geometric and combinatorial problems on linear spaces""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +github_account = '4ti2' +source_urls = [GITHUB_SOURCE] +sources = ['Release_%s.tar.gz' % '_'.join(version.split('.'))] +checksums = ['7b1015718102d8cd4dc2de64f69094fdba0bc69a1878ada5960979b171ff89e4'] + +dependencies = [ + ('GMP', '6.2.1'), + ('GLPK', '5.0'), +] + +builddependencies = [('Autotools', '20220317')] + +preconfigopts = './autogen.sh && ' + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['4ti2gmp', '4ti2int32', '4ti2int64']], + 'dirs': ['include/4ti2', 'lib', 'share/4ti2'] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/a/AICSImageIO/AICSImageIO-4.14.0-foss-2022a.eb b/easybuild/easyconfigs/a/AICSImageIO/AICSImageIO-4.14.0-foss-2022a.eb new file mode 100644 index 00000000000..ca6f96cab75 --- /dev/null +++ b/easybuild/easyconfigs/a/AICSImageIO/AICSImageIO-4.14.0-foss-2022a.eb @@ -0,0 +1,64 @@ +easyblock = 'PythonBundle' + +name = 'AICSImageIO' +version = '4.14.0' + +homepage = 'https://github.com/AllenCellModeling/aicsimageio' +description = """Image Reading, Metadata Conversion, and Image Writing for Microscopy Images in Pure Python""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('dask', '2022.10.0'), + ('imagecodecs', '2022.9.26'), + ('lxml', '4.9.1'), + ('SciPy-bundle', '2022.05'), + ('PyYAML', '6.0'), + ('wrapt', '1.15.0'), + ('xarray', '2022.6.0'), + ('zarr', '2.13.3'), + ('aiohttp', '3.8.3'), + ('scikit-image', '0.19.3'), + ('pydantic', '1.10.4'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('pydantic_compat', '0.1.2', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'checksums': ['37a4df48565a35aedc947f0fde5edbdff270a30836d995923287292bb59d5677'], + }), + ('xsdata', '23.8', { + 'checksums': ['55f03d4c88236f047266affe550ba0dd19476adfce6a01f3e0aefac7c8078e56'], + }), + ('ome_types', '0.4.3', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'checksums': ['3d97ce595d0f2f9c37dce3dd359fb30c7dbcad8c8c806604c40f18f99be8c1b2'], + }), + # Overwrites installed version because aicsimageio 4.14.0 has requirement fsspec<2023.9.0,>=2022.8.0 + ('fsspec', '2023.6.0', { + 'checksums': ['d0b2f935446169753e7a5c5c55681c54ea91996cc67be93c39a154fb3a2742af'], + }), + ('ome-zarr', '0.8.3', { + 'checksums': ['e98762e6a3cc82e8f6ef50c938e23fc579498d94d1991f3476ccf9726209997b'], + }), + ('resource_backed_dask_array', '0.1.0', { + 'checksums': ['8fabcccf5c7e29059b5badd6786dd7675a258a203c58babf10077d9c90ada54f'], + }), + ('elementpath', '4.1.5', { + 'checksums': ['c2d6dc524b29ef751ecfc416b0627668119d8812441c555d7471da41d4bacb8d'], + }), + ('xmlschema', '2.5.0', { + 'checksums': ['276a03e0fd3c94c148d528bff4d9482f9b99bf8c7b4056a2e8e703d28149d454'], + }), + ('%(namelower)s', version, { + 'checksums': ['0f6684587b1d833ce5b10f3e81314e2a89269cd94bd09747fcd6460f3119855c'], + }), +] + +sanity_check_commands = ["python -c 'from aicsimageio.writers import OmeTiffWriter'"] + +moduleclass = 'lib' 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' diff --git a/easybuild/easyconfigs/a/ANTIC/ANTIC-0.2.5-gfbf-2022a.eb b/easybuild/easyconfigs/a/ANTIC/ANTIC-0.2.5-gfbf-2022a.eb new file mode 100644 index 00000000000..8e320df93cd --- /dev/null +++ b/easybuild/easyconfigs/a/ANTIC/ANTIC-0.2.5-gfbf-2022a.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'ANTIC' +version = '0.2.5' + +homepage = 'https://github.com/flintlib/antic' +description = "Antic is an algebraic number theory library." + +toolchain = {'name': 'gfbf', 'version': '2022a'} +toolchainopts = {'pic': True} + +github_account = 'flintlib' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['7b236b6226d5730cf66d492f1562c34d4dcf1bdc8775fec2330f560332ab05c1'] + +dependencies = [('FLINT', '2.9.0')] + +configopts = "--with-gmp=$EBROOTGMP --with-mpfr=$EBROOTMPFR --with-flint=$EBROOTFLINT " + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libantic.%s' % e for e in ['a', SHLIB_EXT]] + + ['include/antic/%s.h' % h for h in ['nf', 'nf_elem', 'qfb']], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/a/ANTs/ANTs-2.5.0-foss-2022b.eb b/easybuild/easyconfigs/a/ANTs/ANTs-2.5.0-foss-2022b.eb new file mode 100644 index 00000000000..b201d23603f --- /dev/null +++ b/easybuild/easyconfigs/a/ANTs/ANTs-2.5.0-foss-2022b.eb @@ -0,0 +1,37 @@ +easyblock = 'CMakeMake' + +name = 'ANTs' +version = '2.5.0' + +homepage = 'https://stnava.github.io/ANTs/' +description = """ANTs extracts information from complex datasets that include imaging. ANTs is useful for managing, + interpreting and visualizing multidimensional data.""" + +toolchain = {'name': 'foss', 'version': '2022b'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/ANTsX/ANTs/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['326efda09608a19752e802acc46ed808a4fdb62765f11a4f26402a5aa8bc70ac'] + +builddependencies = [('CMake', '3.24.3')] + +dependencies = [ + ('Python', '3.10.8'), + ('VTK', '9.2.6'), +] + +configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' +configopts += '-DUSE_VTK=ON -DUSE_SYSTEM_VTK=ON ' +configopts += '-DSuperBuild_ANTS_USE_GIT_PROTOCOL=OFF' + +preinstallopts = "cd ANTS-build && " + +sanity_check_paths = { + 'files': ['bin/ANTS', 'bin/antsBrainExtraction.sh'], + 'dirs': ['lib'], +} + +modextravars = {'ANTSPATH': '%(installdir)s/bin'} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2022a.eb b/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2022a.eb index eeb528a357b..ada37c804a9 100644 --- a/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2022a.eb +++ b/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2022a.eb @@ -32,6 +32,11 @@ dependencies = [ ('libxml2', '2.9.13'), ] +# Without this, the wrong (system) python is picked up by cmake +# in cases where the system python is newer than the one used in these EasyConfigs +# See PR # 19119 +configopts = '-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' + sanity_check_paths = { 'files': ['include/aoflagger.h', 'bin/aoflagger'], 'dirs': ['bin'], diff --git a/easybuild/easyconfigs/a/ATK/ATK-2.38.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/a/ATK/ATK-2.38.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..6093e7836d8 --- /dev/null +++ b/easybuild/easyconfigs/a/ATK/ATK-2.38.0-GCCcore-13.2.0.eb @@ -0,0 +1,39 @@ +easyblock = 'MesonNinja' + +name = 'ATK' +version = '2.38.0' + +homepage = 'https://developer.gnome.org/atk/' +description = """ + ATK provides the set of accessibility interfaces that are implemented by other + toolkits and applications. Using the ATK interfaces, accessibility tools have + full access to view and control running applications. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['ac4de2a4ef4bd5665052952fe169657e65e895c5057dffb3c2a810f6191a0c36'] + +builddependencies = [ + ('binutils', '2.40'), + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('pkgconf', '2.0.3'), + ('GObject-Introspection', '1.78.1'), +] + +dependencies = [ + ('GLib', '2.78.1'), +] + +configopts = "--buildtype=release --default-library=both " +configopts += "-Dintrospection=true " + +sanity_check_paths = { + 'files': ['lib/libatk-1.0.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/a/Arriba/Arriba-2.4.0-GCC-12.2.0.eb b/easybuild/easyconfigs/a/Arriba/Arriba-2.4.0-GCC-12.2.0.eb new file mode 100644 index 00000000000..446ed4277cf --- /dev/null +++ b/easybuild/easyconfigs/a/Arriba/Arriba-2.4.0-GCC-12.2.0.eb @@ -0,0 +1,48 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +easyblock = 'MakeCp' + +name = 'Arriba' +version = '2.4.0' + +github_account = 'suhrig' +homepage = 'https://github.com/%(github_account)s/%(namelower)s' +description = """Arriba is a command-line tool for the detection of gene fusions from RNA-Seq data. + It was developed for the use in a clinical research setting. Therefore, short runtimes and high + sensitivity were important design criteria.""" + +toolchain = {'name': 'GCC', 'version': '12.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/%(github_account)s/%(namelower)s/releases/download/v%(version)s'] +sources = ['%(namelower)s_v%(version)s.tar.gz'] +checksums = ['a5173f44195d7f864aab95972d0cc3da85671c4b7e602e5a4e1a4fc143810e4a'] + +dependencies = [ + ('bzip2', '1.0.8'), + ('HTSlib', '1.17'), + ('libdeflate', '1.15'), + ('STAR', '2.7.10b'), + ('zlib', '1.2.12'), + ('XZ', '5.2.7'), +] + +# make target with dynamically linked libraries is called bioconda, default is a statically linked binary +build_cmd_targets = 'bioconda' +# otherwise it fails to find sam.h +buildopts = 'CPATH=${EBROOTHTSLIB}/include/htslib:CPATH' + +postinstallcmds = ['mkdir %(installdir)s/database'] +files_to_copy = ['%(namelower)s', 'documentation', 'download_references.sh', 'draw_fusions.R', 'LICENSE', + 'README.md', 'run_%(namelower)s.sh'] + +modextrapaths = {'PATH': ''} + +sanity_check_paths = { + 'files': ['%(namelower)s'], + 'dirs': [] +} + +sanity_check_commands = [('%(namelower)s', '-h')] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/Arrow/Arrow-14.0.1-gfbf-2023a.eb b/easybuild/easyconfigs/a/Arrow/Arrow-14.0.1-gfbf-2023a.eb new file mode 100644 index 00000000000..40327535b8b --- /dev/null +++ b/easybuild/easyconfigs/a/Arrow/Arrow-14.0.1-gfbf-2023a.eb @@ -0,0 +1,74 @@ +easyblock = 'CMakeMake' + +name = 'Arrow' +version = '14.0.1' + +homepage = 'https://arrow.apache.org' +description = """Apache Arrow (incl. PyArrow Python bindings), a cross-language development platform + for in-memory data.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +source_urls = ['https://archive.apache.org/dist/%(namelower)s/%(namelower)s-%(version)s'] +sources = ['apache-arrow-%(version)s.tar.gz'] +checksums = ['5c70eafb1011f9d124bafb328afe54f62cc5b9280b7080e1e3d668f78c0e407e'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Autotools', '20220317'), + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('pkgconf', '1.9.5'), +] + +# Arrow strongly prefers included jemalloc, so not including it as a dependency +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), # for numpy + ('Boost', '1.82.0'), + ('lz4', '1.9.4'), + ('zlib', '1.2.13'), + ('bzip2', '1.0.8'), + ('zstd', '1.5.5'), + ('snappy', '1.1.10'), + ('RapidJSON', '1.1.0-20230928'), + ('RE2', '2023-08-01'), + ('utf8proc', '2.8.0'), +] + +start_dir = 'cpp' + +# see https://arrow.apache.org/docs/developers/python.html +configopts = "-DARROW_DATASET=on -DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_WITH_SNAPPY=ON " +configopts += "-DCMAKE_INSTALL_LIBDIR=lib -DPython3_ROOT_DIR=$EBROOTPYTHON " +configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_ZSTD=ON -DARROW_WITH_LZ4=ON " +configopts += "-DZSTD_ROOT=$EBROOTZSTD " + +# also install Python bindings +local_install_pyarrow_cmds = "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && " +local_install_pyarrow_cmds += "export Arrow_DIR=%(installdir)s && export ArrowDataset_DIR=%(installdir)s && " +local_install_pyarrow_cmds += "export ArrowAcero_DIR=%(installdir)s && export Parquet_DIR=%(installdir)s && " +local_install_pyarrow_cmds += "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " +local_install_pyarrow_cmds += "cd %(builddir)s/*arrow-%(version)s/python && export XDG_CACHE_HOME=$TMPDIR && " +local_install_pyarrow_cmds += "sed -i 's/numpy==[0-9.]*/numpy/g' pyproject.toml && " +local_install_pyarrow_cmds += "Python3_ROOT_DIR=$EBROOTPYTHON " +local_install_pyarrow_cmds += "PYARROW_CMAKE_OPTIONS='-DZSTD_LIB=$EBROOTZSTD/lib/libzstd.%s ' " % SHLIB_EXT +local_install_pyarrow_cmds += "PYARROW_WITH_DATASET=1 PYARROW_WITH_PARQUET=1 " +local_install_pyarrow_cmds += "python -m pip install --prefix %(installdir)s --no-build-isolation ." +postinstallcmds = [local_install_pyarrow_cmds] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +sanity_check_paths = { + 'files': ['lib/libarrow.a', 'lib/libarrow.%s' % SHLIB_EXT, + 'lib/python%%(pyshortver)s/site-packages/pyarrow/libarrow_python.%s' % SHLIB_EXT], + 'dirs': ['include/arrow', 'lib/cmake/Arrow', 'lib/pkgconfig', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -c 'import pyarrow'", + "python -c 'import pyarrow.dataset'", + "python -c 'import pyarrow.parquet'", +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/a/Autoconf-archive/Autoconf-archive-2023.02.20-GCCcore-11.3.0.eb b/easybuild/easyconfigs/a/Autoconf-archive/Autoconf-archive-2023.02.20-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..7b10ea408dd --- /dev/null +++ b/easybuild/easyconfigs/a/Autoconf-archive/Autoconf-archive-2023.02.20-GCCcore-11.3.0.eb @@ -0,0 +1,53 @@ +## +# This is a contribution from DeepThought HPC Service, Flinders University, Adelaide, Australia +# Homepage: https://staff.flinders.edu.au/research/deep-thought +# +# Authors:: Robert Qiao +# License:: GNU Free Documentation License +# +# Notes:: +## + +easyblock = 'ConfigureMake' + +name = 'Autoconf-archive' +version = '2023.02.20' + +homepage = "https://www.gnu.org/software/autoconf-archive" + +description = """ +The GNU Autoconf Archive is a collection of more than 500 macros for GNU Autoconf +that have been contributed as free software by friendly supporters of the cause from +all over the Internet. Every single one of those macros can be re-used without +imposing any restrictions whatsoever on the licensing of the generated configure script. +In particular, it is possible to use all those macros in configure scripts that +are meant for non-free software. This policy is unusual for a Free Software Foundation +project. The FSF firmly believes that software ought to be free, and software licenses +like the GPL are specifically designed to ensure that derivative work based on free +software must be free as well. In case of Autoconf, however, an exception has been made, +because Autoconf is at such a pivotal position in the software development tool chain +that the benefits from having this tool available as widely as possible outweigh the +disadvantage that some authors may choose to use it, too, for proprietary software. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['71d4048479ae28f1f5794619c3d72df9c01df49b1c628ef85fde37596dc31a33'] + +builddependencies = [ + ('binutils', '2.38'), + ('Autotools', '20220317'), + ('makeinfo', '6.8'), +] + +preconfigopts = 'autoreconf -i -f &&' + +sanity_check_paths = { + 'files': [], + 'dirs': ['share/%s' % x for x in + ['aclocal', 'doc', 'info']], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/a/at-spi2-atk/at-spi2-atk-2.38.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/a/at-spi2-atk/at-spi2-atk-2.38.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..4f2a709e36b --- /dev/null +++ b/easybuild/easyconfigs/a/at-spi2-atk/at-spi2-atk-2.38.0-GCCcore-13.2.0.eb @@ -0,0 +1,37 @@ +easyblock = 'MesonNinja' + +name = 'at-spi2-atk' +version = '2.38.0' + +homepage = 'https://wiki.gnome.org/Accessibility' +description = "AT-SPI 2 toolkit bridge" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['cfa008a5af822b36ae6287f18182c40c91dd699c55faa38605881ed175ca464f'] + +builddependencies = [ + ('binutils', '2.40'), + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('GLib', '2.78.1'), + ('DBus', '1.15.8'), + ('at-spi2-core', '2.50.0'), + ('libxml2', '2.11.5'), + ('ATK', '2.38.0'), +] + +configopts = "--libdir lib " + +sanity_check_paths = { + 'files': ['lib/libatk-bridge-2.0.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/a/at-spi2-core/at-spi2-core-2.50.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/a/at-spi2-core/at-spi2-core-2.50.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..2a4ccd76bff --- /dev/null +++ b/easybuild/easyconfigs/a/at-spi2-core/at-spi2-core-2.50.0-GCCcore-13.2.0.eb @@ -0,0 +1,40 @@ +easyblock = 'MesonNinja' + +name = 'at-spi2-core' +version = '2.50.0' + +homepage = 'https://wiki.gnome.org/Accessibility' +description = """ + Assistive Technology Service Provider Interface. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['e9f5a8c8235c9dd963b2171de9120301129c677dde933955e1df618b949c4adc'] + +builddependencies = [ + ('binutils', '2.40'), + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('GObject-Introspection', '1.78.1'), + ('gettext', '0.22'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('GLib', '2.78.1'), + ('DBus', '1.15.8'), + ('X11', '20231019'), +] + +# Hard disable Dbus broker detection and (potential) use of systemd +configopts = "--libdir lib -Duse_systemd=false -Ddefault_bus=dbus-daemon" + +sanity_check_paths = { + 'files': ['lib/libatspi.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' 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' 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 diff --git a/easybuild/easyconfigs/b/BOPTEST/BOPTEST-0.3.0.eb b/easybuild/easyconfigs/b/BOPTEST/BOPTEST-0.3.0.eb new file mode 100644 index 00000000000..ef0ca5bd1a8 --- /dev/null +++ b/easybuild/easyconfigs/b/BOPTEST/BOPTEST-0.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'Tarball' + +name = 'BOPTEST' +version = '0.3.0' + +homepage = 'https://ibpsa.github.io/project1-boptest/' +description = """ +This repository contains code for the Building Optimization Performance Test +framework (BOPTEST) that is being developed as part of the IBPSA Project 1.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/ibpsa/project1-boptest/archive/'] +sources = [ + {'filename': 'v%(version)s.tar.gz', 'extract_cmd': "tar -xzf %s --strip-components=1"}, +] +checksums = ['0059769dcfbb512fcf69c6c65df413ba22e4159526650c1b54c8bc2ed7fa77c1'] + +buildininstalldir = True +skipsteps = ['install'] + +sanity_check_paths = { + 'files': ['restapi.py', 'testcase.py'], + 'dirs': ['data', 'docs', 'examples', 'forecast', 'kpis', 'parsing', 'testcases', 'testing'], +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/b/BRiAl/BRiAl-1.2.12-GCC-11.3.0.eb b/easybuild/easyconfigs/b/BRiAl/BRiAl-1.2.12-GCC-11.3.0.eb new file mode 100644 index 00000000000..fa9577e86b6 --- /dev/null +++ b/easybuild/easyconfigs/b/BRiAl/BRiAl-1.2.12-GCC-11.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'BRiAl' +version = '1.2.12' + +homepage = 'https://github.com/BRiAl/BRiAl' +description = """BRiAl is the legacy version of PolyBoRi maintained by sagemath developers.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/BRiAl/BRiAl/releases/download/%(version)s'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['ca009e3722dd3f0a60d15501caed1413146c80abced57423e32ae0116f407494'] + +dependencies = [ + ('Boost', '1.79.0'), + ('CUDD', '3.0.0'), + ('Python', '3.10.4'), + ('m4ri', '20200125'), +] + +configopts = "--with-boost=$EBROOTBOOST " + +sanity_check_paths = { + 'files': ['include/polybori.h'] + + ['lib/libbrial.%s' % e for e in ['a', SHLIB_EXT]], + 'dirs': [], +} + +moduleclass = 'math' 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' 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/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-gompi-2021b.eb b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-gompi-2021b.eb new file mode 100644 index 00000000000..650d8a2217b --- /dev/null +++ b/easybuild/easyconfigs/b/BiasAdjustCXX/BiasAdjustCXX-1.9.1-gompi-2021b.eb @@ -0,0 +1,38 @@ +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': 'gompi', 'version': '2021b'} + +source_urls = ['https://github.com/btschwertfeger/BiasAdjustCXX/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['9f2988d0b1676c57037cdb5cbb4e313b31c4fc08a1ea8a55ea5eccc5a2bc5861'] + +builddependencies = [ + ('CMake', '3.22.1'), +] + +dependencies = [ + ('netCDF', '4.8.1'), + ('netCDF-C++4', '4.3.1'), + ('CDO', '2.0.5'), +] + +preconfigopts = 'CXXFLAGS="$CXXFLAGS -lnetcdf -lpthread" ' + +sanity_check_paths = { + 'files': ['bin/BiasAdjustCXX'], + 'dirs': [] +} + +sanity_check_commands = ['BiasAdjustCXX --help'] + +moduleclass = 'geo' 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' 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' diff --git a/easybuild/easyconfigs/b/Boost/Boost-1.83.0-GCC-13.2.0.eb b/easybuild/easyconfigs/b/Boost/Boost-1.83.0-GCC-13.2.0.eb new file mode 100644 index 00000000000..feafb10645f --- /dev/null +++ b/easybuild/easyconfigs/b/Boost/Boost-1.83.0-GCC-13.2.0.eb @@ -0,0 +1,31 @@ +## +# Authors:: Denis Kristak +## +name = 'Boost' +version = '1.83.0' + +homepage = 'https://www.boost.org/' +description = """Boost provides free peer-reviewed portable C++ source libraries.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://boostorg.jfrog.io/artifactory/main/release/%(version)s/source/'] +sources = ['%%(namelower)s_%s.tar.gz' % '_'.join(version.split('.'))] +checksums = ['c0685b68dd44cc46574cce86c4e17c0f611b15e195be9848dfd0769a0a207628'] + +dependencies = [ + ('bzip2', '1.0.8'), + ('zlib', '1.2.13'), + ('XZ', '5.4.4'), + ('zstd', '1.5.5'), + ('ICU', '74.1'), +] + +configopts = '--without-libraries=python,mpi' + +# disable MPI, build Boost libraries with tagged layout +boost_mpi = False +tagged_layout = True + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/Bracken/Bracken-2.9-GCCcore-10.3.0.eb b/easybuild/easyconfigs/b/Bracken/Bracken-2.9-GCCcore-10.3.0.eb new file mode 100644 index 00000000000..f1643a5d4b6 --- /dev/null +++ b/easybuild/easyconfigs/b/Bracken/Bracken-2.9-GCCcore-10.3.0.eb @@ -0,0 +1,58 @@ +# 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 = 'MakeCp' + +name = 'Bracken' +version = '2.9' + +homepage = 'https://ccb.jhu.edu/software/bracken/' +description = """Bracken (Bayesian Reestimation of Abundance with KrakEN) +is a highly accurate statistical method that computes the abundance of +species in DNA sequences from a metagenomics sample. Braken uses the +taxonomy labels assigned by Kraken, a highly accurate metagenomics +classification algorithm, to estimate the number of reads originating +from each species present in a sample. Kraken classifies reads to the +best matching location in the taxonomic tree, but does not estimate +abundances of species. We use the Kraken database itself to derive +probabilities that describe how much sequence from each genome is +identical to other genomes in the database, and combine this information +with the assignments for a particular sample to estimate abundance at +the species level, the genus level, or above. Combined with the Kraken +classifier, Bracken produces accurate species- and genus-level abundance +estimates even when a sample contains two or more near-identical species. + +NOTE: Bracken is compatible with both Kraken 1 and Kraken 2. However, the +default kmer length is different depending on the version of Kraken used. +If you use Kraken 1 defaults, specify 31 as the kmer length. If you use +Kraken 2 defaults, specify 35 as the kmer length.""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +source_urls = ['https://github.com/jenniferlu717/Bracken/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['b8fd43fc396a2184d9351fb4a459f95ae9bb5865b195a18e22436f643044c788'] + +builddependencies = [('binutils', '2.36.1')] + +# no need to build in parallel +parallel = 1 + +start_dir = 'src' + +files_to_copy = ['bracken', 'bracken-build', 'src', 'analysis_scripts', 'sample_data'] + +sanity_check_paths = { + 'files': ['bracken', 'bracken-build'], + 'dirs': ['analysis_scripts', 'sample_data', 'src'], +} + +sanity_check_commands = [ + "bracken --help", + "bracken --version", +] + +modextrapaths = {'PATH': ''} + +moduleclass = 'bio' 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..65a7aed5498 --- /dev/null +++ b/easybuild/easyconfigs/b/bcbio-gff/bcbio-gff-0.7.0-foss-2022b.eb @@ -0,0 +1,43 @@ +# Contribution by +# DeepThought, Flinders University +# Updated to v0.6.7 +# R.QIAO +# Updated to v0.7.0 by Denis Kristak (Inuits) + +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/b/boto3/boto3-1.28.70-GCCcore-12.3.0.eb b/easybuild/easyconfigs/b/boto3/boto3-1.28.70-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..01896809767 --- /dev/null +++ b/easybuild/easyconfigs/b/boto3/boto3-1.28.70-GCCcore-12.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'PythonBundle' + +name = 'boto3' +version = '1.28.70' + +homepage = 'https://github.com/boto/boto3' +description = """Boto3 is the Amazon Web Services (AWS) Software Development Kit +(SDK) for Python, which allows Python developers to write software that makes +use of services like Amazon S3 and Amazon EC2.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), +] + +exts_list = [ + ('botocore', '1.31.70', { + 'checksums': ['5f49def4ec2e4216dd0195d23d9811027d02ee6c8a37b031e2b2fe38e8c77ddc'], + }), + ('jmespath', '1.0.1', { + 'checksums': ['90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe'], + }), + ('s3transfer', '0.7.0', { + 'checksums': ['fd3889a66f5fe17299fe75b82eae6cf722554edca744ca5d5fe308b104883d2e'], + }), + (name, version, { + 'checksums': ['89002e1d8411c7c54110f9f8fc4a11d57d6d7977c0cb4ba064887ca5d4c788f7'], + }), +] + +use_pip = True +sanity_pip_check = True + +moduleclass = 'lib' 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' diff --git a/easybuild/easyconfigs/c/CCL/CCL-1.12.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/CCL/CCL-1.12.2-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..79bc50566c2 --- /dev/null +++ b/easybuild/easyconfigs/c/CCL/CCL-1.12.2-GCCcore-11.3.0.eb @@ -0,0 +1,52 @@ +easyblock = 'MakeCp' +name = 'CCL' +version = '1.12.2' + +homepage = 'https://ccl.clozure.com/' +description = """Clozure CL (often called CCL for short) is a free Common Lisp + implementation with a long history. Some distinguishing features of the implementation + include fast compilation speed, native threads, a precise, generational, compacting + garbage collector, and a convenient foreign-function interface.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/Clozure/ccl/releases/download/v%(version)s'] +sources = ['%(namelower)s-%(version)s-linuxx86.tar.gz'] +checksums = ['a94fda3daf26ce8c3d08e0db0e6e9907995acc10e0f8aad2125790b93eaa1556'] + +builddependencies = [ + ('binutils', '2.38'), + ('M4', '1.4.19'), +] + +local_ccl_bin = 'lx86cl64' +local_ccl_dirs = [ + 'compiler', 'level-0', 'level-1', 'lib', 'library', 'lisp-kernel', 'scripts', 'tools', 'xdump', 'x86-headers64' +] + +# Build the kernel +buildopts = "-C lisp-kernel/linuxx8664 all CC=${CC} && " +# Rebuild CCL +buildopts += "./%s -n -b -Q -e '(ccl:rebuild-ccl :full t)' -e '(ccl:quit)'" % local_ccl_bin + +files_to_copy = [local_ccl_bin, '%s.image' % local_ccl_bin] + local_ccl_dirs + +postinstallcmds = [ + # Cleanup of build files + "find %(installdir)s -type f -name '*fsl' -delete", + "find %(installdir)s/lisp-kernel -type f -name '*.o' -delete", + # Link executable with generic name + "mkdir %(installdir)s/bin", + "cd %%(installdir)s/bin && ln -s ../%s ccl" % local_ccl_bin, +] + +sanity_check_paths = { + 'files': [local_ccl_bin, '%s.image' % local_ccl_bin, 'bin/ccl'], + 'dirs': local_ccl_dirs, +} + +sanity_check_commands = ["ccl --help"] + +modextrapaths = {'CCL_DEFAULT_DIRECTORY': ''} + +moduleclass = 'lang' 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..c3ee3e4a102 --- /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.23.1'), + ('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' 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..a2df0306e4a --- /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 EB_COMSOL_LICENSE_FILE or LMCOMSOL_LICENSE_FILE or LM_LICENSE_FILE + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/c/CP2K/CP2K-2023.1-foss-2023a.eb b/easybuild/easyconfigs/c/CP2K/CP2K-2023.1-foss-2023a.eb new file mode 100644 index 00000000000..d16e202463a --- /dev/null +++ b/easybuild/easyconfigs/c/CP2K/CP2K-2023.1-foss-2023a.eb @@ -0,0 +1,40 @@ +## +# Author: Robert Mijakovic +## +name = 'CP2K' +version = '2023.1' + +homepage = 'https://www.cp2k.org/' +description = """CP2K is a freely available (GPL) program, written in Fortran 95, to perform atomistic and molecular + simulations of solid state, liquid, molecular and biological systems. It provides a general framework for different + methods such as e.g. density functional theory (DFT) using a mixed Gaussian and plane waves approach (GPW), and + classical pair and many-body potentials. """ + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True, 'openmp': True} + +source_urls = ['https://github.com/cp2k/cp2k/releases/download/v%(version)s/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['dff343b4a80c3a79363b805429bdb3320d3e1db48e0ff7d20a3dfd1c946a51ce'] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.8.2'), +] + +dependencies = [ + ('Libint', '2.7.2', '-lmax-6-cp2k'), + ('libxc', '6.2.2'), + ('libxsmm', '1.17'), + ('libvori', '220621'), + ('FFTW', '3.3.10'), + ('PLUMED', '2.9.0'), +] + +type = 'psmp' + +# regression test reports handful of failures, +# we're assuming those are OK to ignore... +ignore_regtest_fails = True + +moduleclass = 'chem' 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' 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..4f2af99540d --- /dev/null +++ b/easybuild/easyconfigs/c/CPMD/CPMD-4.3-foss-2022a.eb @@ -0,0 +1,31 @@ +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 = "chmod +x ./configure.sh && ./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 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 438e0f44965..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 @@ -29,6 +29,9 @@ local_filters += "Samples/4_CUDA_Libraries/boxFilterNPP/Makefile " local_filters += "Samples/4_CUDA_Libraries/cannyEdgeDetectorNPP/Makefile " local_filters += "Samples/4_CUDA_Libraries/cudaNvSci/Makefile " local_filters += "Samples/4_CUDA_Libraries/cudaNvSciNvMedia/Makefile " +local_filters += "Samples/4_CUDA_Libraries/freeImageInteropNPP/Makefile " +local_filters += "Samples/4_CUDA_Libraries/histEqualizationNPP/Makefile " +local_filters += "Samples/4_CUDA_Libraries/FilterBorderControlNPP/Makefile " local_filters += "Samples/5_Domain_Specific/simpleGL/Makefile " local_filters += "Samples/5_Domain_Specific/simpleVulkan/Makefile " local_filters += "Samples/5_Domain_Specific/simpleVulkanMMAP/Makefile " @@ -40,10 +43,30 @@ local_filters += "Samples/3_CUDA_Features/bf16TensorCoreGemm/Makefile " local_filters += "Samples/3_CUDA_Features/dmmaTensorCoreGemm/Makefile " local_filters += "Samples/3_CUDA_Features/globalToShmemAsyncCopy/Makefile " +# This give a link error under EESSI (ignoring for now) +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' +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', ] diff --git a/easybuild/easyconfigs/c/CUDA/CUDA-12.3.0.eb b/easybuild/easyconfigs/c/CUDA/CUDA-12.3.0.eb new file mode 100644 index 00000000000..6510fce6366 --- /dev/null +++ b/easybuild/easyconfigs/c/CUDA/CUDA-12.3.0.eb @@ -0,0 +1,24 @@ +name = 'CUDA' +version = '12.3.0' +local_nv_version = '545.23.06' + +homepage = 'https://developer.nvidia.com/cuda-toolkit' +description = """CUDA (formerly Compute Unified Device Architecture) is a parallel + computing platform and programming model created by NVIDIA and implemented by the + graphics processing units (GPUs) that they produce. CUDA gives developers access + to the virtual instruction set and memory of the parallel computational elements in CUDA GPUs.""" + +toolchain = SYSTEM + +source_urls = ['https://developer.download.nvidia.com/compute/cuda/%(version)s/local_installers/'] +sources = ['cuda_%%(version)s_%s_linux%%(cudaarch)s.run' % local_nv_version] +checksums = [{ + 'cuda_%%(version)s_%s_linux.run' % local_nv_version: + '7c13face3af64d6e1648d6e3101d31c8111e747143acb0077d973c1690820422', + 'cuda_%%(version)s_%s_linux_ppc64le.run' % local_nv_version: + 'de15c04380ec35b194c07503bf434837bac5b427cf77b19a63962b1653d195d5', + 'cuda_%%(version)s_%s_linux_sbsa.run' % local_nv_version: + '9a8fb8acf46b88faf0d711bda3149e1706efbbae02fcb40ab72addfd0e9ce5df' +}] + +moduleclass = 'system' diff --git a/easybuild/easyconfigs/c/CUDD/CUDD-3.0.0-GCC-11.3.0.eb b/easybuild/easyconfigs/c/CUDD/CUDD-3.0.0-GCC-11.3.0.eb new file mode 100644 index 00000000000..c18f2d7cc9a --- /dev/null +++ b/easybuild/easyconfigs/c/CUDD/CUDD-3.0.0-GCC-11.3.0.eb @@ -0,0 +1,22 @@ +easyblock = 'ConfigureMake' + +name = 'CUDD' +version = '3.0.0' + +homepage = 'https://github.com/ivmai/cudd' +description = """The CUDD package is a package written in C for the manipulation of + decision diagrams. It supports binary decision diagrams (BDDs), algebraic decision + diagrams (ADDs), and Zero-Suppressed BDDs (ZDDs).""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/ivmai/cudd/archive/refs/tags'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['5fe145041c594689e6e7cf4cd623d5f2b7c36261708be8c9a72aed72cf67acce'] + +sanity_check_paths = { + 'files': ['include/cudd.h', 'lib/libcudd.a'], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/c/CVXPY/CVXPY-1.3.0-foss-2022a.eb b/easybuild/easyconfigs/c/CVXPY/CVXPY-1.3.0-foss-2022a.eb new file mode 100644 index 00000000000..81b5840c7b3 --- /dev/null +++ b/easybuild/easyconfigs/c/CVXPY/CVXPY-1.3.0-foss-2022a.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonBundle' + +name = 'CVXPY' +version = '1.3.0' + +homepage = 'https://www.cvxpy.org/' +description = """ +CVXPY is a Python-embedded modeling language for convex optimization problems. +It allows you to express your problem in a natural way that follows the math, +rather than in the restrictive standard form required by solvers. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +builddependencies = [ + ('CMake', '3.24.3'), + ('SWIG', '4.0.2'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), +] + +use_pip = True + +exts_list = [ + ('qdldl', '0.1.5.post3', { + 'checksums': ['69c092f6e1fc23fb779a80a62e6fcdfe2eba05c925860248c4d6754f4736938f'], + }), + ('osqp', '0.6.2.post8', { + 'checksums': ['23d6bae4a3612f60d5f652d0e5fa4b2ead507cabfff5d930d822057ae6ed6677'], + }), + ('ecos', '2.0.12', { + 'checksums': ['f48816d73b87ae325556ea537b7c8743187311403c80e3832035224156337c4e'], + }), + ('scs', '3.2.2', { + 'checksums': ['7206a2ad27ca031d693d65cbcbcfc661498f3983838079a66579bcc784b25293'], + }), + ('cvxpy', version, { + 'checksums': ['66cce67bdc635b9b29066510474392c0cfc0d95db8adda4010dc8cdd8e046250'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lang' 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/c/Catch2/Catch2-2.13.9-GCCcore-12.2.0.eb b/easybuild/easyconfigs/c/Catch2/Catch2-2.13.9-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..c049347b1c7 --- /dev/null +++ b/easybuild/easyconfigs/c/Catch2/Catch2-2.13.9-GCCcore-12.2.0.eb @@ -0,0 +1,30 @@ +easyblock = 'CMakeMake' + +name = 'Catch2' +version = '2.13.9' + +homepage = 'https://github.com/catchorg/Catch2' +description = """A modern, C++-native, header-only, + test framework for unit-tests, TDD and BDD + - using C++11, C++14, C++17 and later +""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = ['https://github.com/catchorg/Catch2/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['06dbc7620e3b96c2b69d57bf337028bf245a211b3cddb843835bfe258f427a52'] + +builddependencies = [ + ('binutils', '2.39'), # to make CMake compiler health check pass on old systems + ('CMake', '3.24.3'), +] + +separate_build_dir = True + +sanity_check_paths = { + 'files': [], + 'dirs': ['include/catch2', 'lib64/cmake'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/c/Catch2/Catch2-2.13.9-GCCcore-12.3.0.eb b/easybuild/easyconfigs/c/Catch2/Catch2-2.13.9-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..a9cbf99bf14 --- /dev/null +++ b/easybuild/easyconfigs/c/Catch2/Catch2-2.13.9-GCCcore-12.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'CMakeMake' + +name = 'Catch2' +version = '2.13.9' + +homepage = 'https://github.com/catchorg/Catch2' +description = """A modern, C++-native, header-only, + test framework for unit-tests, TDD and BDD + - using C++11, C++14, C++17 and later +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/catchorg/Catch2/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['06dbc7620e3b96c2b69d57bf337028bf245a211b3cddb843835bfe258f427a52'] + +builddependencies = [ + ('binutils', '2.40'), # to make CMake compiler health check pass on old systems + ('CMake', '3.26.3'), +] + +separate_build_dir = True + +sanity_check_paths = { + 'files': [], + 'dirs': ['include/catch2', 'lib64/cmake'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/c/Catch2/Catch2-2.13.9-GCCcore-13.2.0.eb b/easybuild/easyconfigs/c/Catch2/Catch2-2.13.9-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..e64ae6c440b --- /dev/null +++ b/easybuild/easyconfigs/c/Catch2/Catch2-2.13.9-GCCcore-13.2.0.eb @@ -0,0 +1,30 @@ +easyblock = 'CMakeMake' + +name = 'Catch2' +version = '2.13.9' + +homepage = 'https://github.com/catchorg/Catch2' +description = """A modern, C++-native, header-only, + test framework for unit-tests, TDD and BDD + - using C++11, C++14, C++17 and later +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/catchorg/Catch2/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['06dbc7620e3b96c2b69d57bf337028bf245a211b3cddb843835bfe258f427a52'] + +builddependencies = [ + ('binutils', '2.40'), # to make CMake compiler health check pass on old systems + ('CMake', '3.27.6'), +] + +separate_build_dir = True + +sanity_check_paths = { + 'files': ['include/catch2/catch.hpp'], + 'dirs': ['lib64/cmake'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/c/CellBender/CellBender-0.2.2-foss-2022a.eb b/easybuild/easyconfigs/c/CellBender/CellBender-0.2.2-foss-2022a.eb new file mode 100644 index 00000000000..64a314bf8cc --- /dev/null +++ b/easybuild/easyconfigs/c/CellBender/CellBender-0.2.2-foss-2022a.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'CellBender' +version = '0.2.2' + +homepage = 'http://github.com/broadinstitute/CellBender' +description = """ +CellBender is a software package for eliminating technical artifacts from +high-throughput single-cell RNA sequencing (scRNA-seq) data. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('scikit-learn', '1.1.2'), + ('matplotlib', '3.5.2'), + ('anndata', '0.8.0'), + ('PyTables', '3.8.0'), + ('pyro-ppl', '1.8.4'), +] + +exts_list = [ + ('cellbender', version, { + # remove optional doc dependency on sphinx + 'preinstallopts': "sed -i '/^sphinx/d' REQUIREMENTS.txt && ", + 'source_urls': ['https://github.com/broadinstitute/CellBender/archive/'], + 'sources': ['v0.2.2.tar.gz'], + 'checksums': ['296693df34619d8c93a41c634a932fdd6a3eca3b9413d986c94f6337abf82bdf'], + }), +] + +use_pip = True +sanity_pip_check = True + +moduleclass = 'bio' 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' 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/c/CoCoALib/CoCoALib-0.99818-GCC-11.3.0.eb b/easybuild/easyconfigs/c/CoCoALib/CoCoALib-0.99818-GCC-11.3.0.eb new file mode 100644 index 00000000000..845ea2a2ccc --- /dev/null +++ b/easybuild/easyconfigs/c/CoCoALib/CoCoALib-0.99818-GCC-11.3.0.eb @@ -0,0 +1,42 @@ +easyblock = 'ConfigureMake' + +name = 'CoCoALib' +version = '0.99818' + +homepage = 'https://cocoa.dima.unige.it/cocoa/cocoalib/' +description = "CoCoALib is a free GPL3 C++ library for doing Computations in Commutative Algebra." + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://cocoa.dima.unige.it/cocoa/cocoalib/tgz'] +sources = [SOURCE_TGZ] +checksums = ['7c7d6bb0bc3004ea76caaeb5f8de10ed09c8052a9131fd98716c36c6fc96d1ea'] + +dependencies = [ + ('GMP', '6.2.1'), + ('cddlib', '0.94m'), # optional +] + +# libreadline only needed for CoCoA-5 +configopts = "--only-cocoalib --no-readline --threadsafe-hack " +# Use cddlib and GMP from EB +configopts += "--with-libcddgmp=${EBROOTCDDLIB}/lib/libcddgmp.a --with-libgmp=$EBROOTGMP/lib/libgmp.a " + +buildopts = 'CXX="$CXX" CXXFLAGS="$CXXFLAGS"' + +# Makefile is not smart enough to create missing directories +preinstallopts = "mkdir %(installdir)s/{include,lib} && " + +# Move doc and examples from include to share +postinstallcmds = [ + "mkdir %(installdir)s/share", + "mv %(installdir)s/include/CoCoA-%(version)s/{doc,examples} %(installdir)s/share/", +] + +sanity_check_paths = { + 'files': ['lib/libcocoa.a'], + 'dirs': ['include/CoCoA-%(version)s', 'share/doc', 'share/examples'] +} + +moduleclass = 'math' 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..7279f966bb8 --- /dev/null +++ b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-11.3.0.eb @@ -0,0 +1,32 @@ +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] +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')] + +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..52a1be553ba --- /dev/null +++ b/easybuild/easyconfigs/c/Coreutils/Coreutils-9.1-GCCcore-12.2.0.eb @@ -0,0 +1,32 @@ +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] +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')] + +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_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 + 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/c/cairo/cairo-1.18.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/c/cairo/cairo-1.18.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..e1033ed8ada --- /dev/null +++ b/easybuild/easyconfigs/c/cairo/cairo-1.18.0-GCCcore-13.2.0.eb @@ -0,0 +1,51 @@ +easyblock = 'MesonNinja' + + +name = 'cairo' +version = '1.18.0' + +homepage = 'https://cairographics.org' +description = """Cairo is a 2D graphics library with support for multiple output devices. + Currently supported output targets include the X Window System (via both Xlib and XCB), Quartz, Win32, image buffers, + PostScript, PDF, and SVG file output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = [ + 'https://cairographics.org/releases/', + 'https://cairographics.org/snapshots/' +] +sources = [SOURCE_TAR_XZ] +checksums = ['243a0736b978a33dee29f9cca7521733b78a65b5418206fef7bd1c3d4cf10b64'] + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), + ('Ninja', '1.11.1'), + ('Meson', '1.2.3'), +] +dependencies = [ + ('bzip2', '1.0.8'), + ('zlib', '1.2.13'), + ('libpng', '1.6.40'), + ('freetype', '2.13.2'), + ('pixman', '0.42.2'), + ('expat', '2.5.0'), + ('GLib', '2.78.1'), + ('X11', '20231019'), +] + +configopts = "--default-library=both" # static and shared library + +sanity_check_paths = { + 'files': ['bin/cairo-trace', 'lib/cairo/libcairo-trace.%s' % SHLIB_EXT, 'lib/cairo/libcairo-trace.a', + 'lib/libcairo.a', 'lib/libcairo-gobject.a', 'lib/libcairo-script-interpreter.a', + 'lib/libcairo.%s' % SHLIB_EXT, 'lib/libcairo-gobject.%s' % SHLIB_EXT, + 'lib/libcairo-script-interpreter.%s' % SHLIB_EXT] + + ['include/cairo/cairo%s.h' % x for x in ['', '-deprecated', '-features', '-ft', '-gobject', '-pdf', '-ps', + '-script', '-script-interpreter', '-svg', '-version', '-xcb', + '-xlib', '-xlib-xrender']], + 'dirs': ['lib/pkgconfig'], +} + +moduleclass = 'vis' 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 new file mode 100644 index 00000000000..972787a1a18 --- /dev/null +++ b/easybuild/easyconfigs/c/cairomm/cairomm-1.16.2-GCC-11.3.0.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' + +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 = [ + ('Meson', '0.62.1'), + ('Ninja', '1.10.2'), + ('Doxygen', '1.9.4'), + ('M4', '1.4.19'), +] + +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' diff --git a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2022a.eb b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2022a.eb index 9c359a65e60..d98f5af249e 100644 --- a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2022a.eb +++ b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2022a.eb @@ -42,7 +42,11 @@ dependencies = [ ] configopts = '-DBUILD_PYTHON=NO -DBUILD_PYTHON3=YES -Wno-dev -DCXX11="ON" -DDATA_DIR=%(installdir)s/data ' -configopts += '-DUSE_OPENMP=ON -DUSE_HDF5=ON -DUSE_MPI=ON' +configopts += '-DUSE_OPENMP=ON -DUSE_HDF5=ON -DUSE_MPI=ON ' +# Without this, the wrong (system) python is picked up by cmake +# in cases where the system python is newer than the one used in these EasyConfigs +# See PR # 19119 +configopts += '-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' sanity_check_paths = { 'files': ['lib/libcasa_casa.%s' % SHLIB_EXT, 'lib/libcasa_mirlib.%s' % SHLIB_EXT, diff --git a/easybuild/easyconfigs/c/castor/castor-1.7.11-foss-2022a.eb b/easybuild/easyconfigs/c/castor/castor-1.7.11-foss-2022a.eb new file mode 100644 index 00000000000..5095a3d9cb2 --- /dev/null +++ b/easybuild/easyconfigs/c/castor/castor-1.7.11-foss-2022a.eb @@ -0,0 +1,36 @@ +easyblock = 'RPackage' + +name = 'castor' +version = '1.7.11' + +homepage = 'https://CRAN.R-project.org/package=castor' +description = """ +Efficient phylogenetic analyses on massive phylogenies comprising up to millions of tips. +Functions include pruning, rerooting, calculation of most-recent common ancestors, calculating +distances from the tree root and calculating pairwise distances. Calculation of phylogenetic +signal and mean trait depth (trait conservatism), ancestral state reconstruction and hidden +character prediction of discrete characters, simulating and fitting models of trait evolution, +fitting and simulating diversification models, dating trees, comparing trees, and +reading/writing trees in Newick format. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +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 +] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['c3fa63969ffbebc92878b857052110d3e22e9bbd06b28641604c32a5177fb2b3'] + +dependencies = [ + ('R', '4.2.1'), +] + +sanity_check_paths = { + 'files': ['%(name)s/R/%(name)s'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/cddlib/cddlib-0.94m-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/cddlib/cddlib-0.94m-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..d5ef7861ad7 --- /dev/null +++ b/easybuild/easyconfigs/c/cddlib/cddlib-0.94m-GCCcore-11.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'cddlib' +version = '0.94m' + +homepage = 'https://github.com/cddlib/cddlib' +description = "An efficient implementation of the Double Description Method" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +github_account = 'cddlib' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['766d8ec2135989830748e5e2fe57f307ed0706431c135541c3c081cbec0bc34f'] + +builddependencies = [ + ('Autotools', '20220317'), + ('binutils', '2.38'), +] + +dependencies = [('GMP', '6.2.1')] + +preconfigopts = "autoreconf -f -i && " + +buildopts = "SUBDIRS='lib-src src'" # build sources but spare the documentation in latex +installopts = buildopts + +local_exes = ['adjacency', 'allfaces', 'cddexec', 'fourier', 'lcdd', 'projection', 'redcheck', 'scdd', 'testcdd1', + 'testcdd2', 'testlp1', 'testlp2', 'testlp3', 'testshoot'] +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_exes] + ['bin/%s_gmp' % x for x in local_exes] + + ['lib/%s.%s' % (l, e) for l in ['libcdd', 'libcddgmp'] for e in ['a', SHLIB_EXT]] + + ['include/cddlib/%s.h' % h for h in ['cdd', 'cddmp', 'cddtypes', 'setoper', 'splitmix64']], + 'dirs': ['share/doc'] +} + +moduleclass = 'math' 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/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' diff --git a/easybuild/easyconfigs/c/cliquer/cliquer-1.21-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/cliquer/cliquer-1.21-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..0aef22c7496 --- /dev/null +++ b/easybuild/easyconfigs/c/cliquer/cliquer-1.21-GCCcore-11.3.0.eb @@ -0,0 +1,42 @@ +easyblock = 'MakeCp' + +name = 'cliquer' +version = '1.21' + +homepage = 'https://users.aalto.fi/~pat/cliquer.html' +description = """Cliquer is a set of C routines for finding cliques in an arbitrary weighted graph. + It uses an exact branch-and-bound algorithm developed by Patric Ostergard. It is designed with + the aim of being efficient while still being flexible and easy to use.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['http://users.aalto.fi/~pat/cliquer/'] +sources = [SOURCE_TAR_GZ] +checksums = ['ff306d27eda82383c0257065e3ffab028415ac9af73bccfdd9c2405b797ed1f1'] + +builddependencies = [('binutils', '2.38')] + +local_sharedlib = 'libcliquer.%s' % SHLIB_EXT + +prebuildopts = 'sed -i "s/^CFLAGS=/CFLAGS=$CFLAGS /" Makefile && ' + +buildopts = ' && $CC -shared $CFLAGS $LDFLAGS -o %s *.o' % local_sharedlib + +local_headers = ['cliquer', 'set', 'graph', 'misc', 'reorder', 'cliquerconf'] + +files_to_copy = [ + (['cl'], 'bin'), + ([local_sharedlib], 'lib'), + (['%s.h' % h for h in local_headers], 'include/cliquer'), +] + +sanity_check_paths = { + 'files': ['bin/cl', 'lib/%s' % local_sharedlib] + + ['include/cliquer/%s.h' % h for h in local_headers], + 'dirs': [], +} + +sanity_check_commands = ["cl --help"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/c/cppyy/cppyy-3.0.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/cppyy/cppyy-3.0.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..1747d5f73c6 --- /dev/null +++ b/easybuild/easyconfigs/c/cppyy/cppyy-3.0.0-GCCcore-11.3.0.eb @@ -0,0 +1,46 @@ +easyblock = 'PythonBundle' + +name = 'cppyy' +version = '3.0.0' + +homepage = "https://cppyy.readthedocs.io" +description = """cppyy is an automatic, run-time, Python-C++ bindings generator, + for calling C++ from Python and Python from C++.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.24.3'), +] + +dependencies = [ + ('Python', '3.10.4'), +] + +exts_list = [ + ('cppyy-cling', '6.28.0', { + 'modulename': False, + 'preinstallopts': 'export STDCXX=14 && ', + 'checksums': ['ae67fc338510d03b68dde08add5b519e2c6434d40fe07e23e7ebace3caa684e7'], + }), + ('cppyy-backend', '1.14.11', { + 'checksums': ['2d329adce65b421a4e8a1af36116fb1756571349dc6b22a9ac3dde54b2a30af1'], + }), + ('CPyCppyy', '1.12.13', { + 'modulename': False, + 'checksums': ['f8c8c05b1eb8f0ccaed07b5069efabecff791bbe5e1b5be86767d32974e833d4'], + }), + (name, version, { + 'checksums': ['9c7c1c113d771488cee0bf63f26d2bbf4f42de731eb63776e007cb0d9e23d3d8'], + }), + ('cppyythonizations', '1.2.2', { + 'source_tmpl': 'cppyythonizations-%(version)s-py3-none-any.whl', + 'checksums': ['fa7805cea410955583d0add18e6d5b2d17740310eed974fcc65271ee9ba6da20'], + }), +] + +use_pip = True +sanity_pip_check = True + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/c/cryptography/cryptography-41.0.5-GCCcore-13.2.0.eb b/easybuild/easyconfigs/c/cryptography/cryptography-41.0.5-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..396020d6259 --- /dev/null +++ b/easybuild/easyconfigs/c/cryptography/cryptography-41.0.5-GCCcore-13.2.0.eb @@ -0,0 +1,142 @@ +easyblock = 'CargoPythonPackage' + +name = 'cryptography' +version = '41.0.5' + +homepage = 'https://github.com/pyca/cryptography' +description = "cryptography is a package designed to expose cryptographic primitives and recipes to Python developers." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), + ('Rust', '1.73.0'), # required for cryptography + ('hatchling', '1.18.0'), + ('setuptools-rust', '1.8.0'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('cffi', '1.15.1'), +] + +crates = [ + ('Inflector', '0.11.4'), + ('aliasable', '0.1.3'), + ('asn1', '0.15.2'), + ('asn1_derive', '0.15.2'), + ('autocfg', '1.1.0'), + ('base64', '0.13.1'), + ('bitflags', '1.3.2'), + ('cc', '1.0.79'), + ('cfg-if', '1.0.0'), + ('foreign-types', '0.3.2'), + ('foreign-types-shared', '0.1.1'), + ('indoc', '1.0.9'), + ('libc', '0.2.144'), + ('lock_api', '0.4.9'), + ('memoffset', '0.8.0'), + ('once_cell', '1.17.2'), + ('openssl', '0.10.54'), + ('openssl-macros', '0.1.1'), + ('openssl-sys', '0.9.88'), + ('ouroboros', '0.15.6'), + ('ouroboros_macro', '0.15.6'), + ('parking_lot', '0.12.1'), + ('parking_lot_core', '0.9.7'), + ('pem', '1.1.1'), + ('pkg-config', '0.3.27'), + ('proc-macro-error', '1.0.4'), + ('proc-macro-error-attr', '1.0.4'), + ('proc-macro2', '1.0.64'), + ('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.28'), + ('redox_syscall', '0.2.16'), + ('scopeguard', '1.1.0'), + ('smallvec', '1.10.0'), + ('syn', '1.0.109'), + ('syn', '2.0.18'), + ('target-lexicon', '0.12.7'), + ('unicode-ident', '1.0.9'), + ('unindent', '0.1.11'), + ('vcpkg', '0.2.15'), + ('version_check', '0.9.4'), + ('windows-sys', '0.45.0'), + ('windows-targets', '0.42.2'), + ('windows_aarch64_gnullvm', '0.42.2'), + ('windows_aarch64_msvc', '0.42.2'), + ('windows_i686_gnu', '0.42.2'), + ('windows_i686_msvc', '0.42.2'), + ('windows_x86_64_gnu', '0.42.2'), + ('windows_x86_64_gnullvm', '0.42.2'), + ('windows_x86_64_msvc', '0.42.2'), +] +sources = [SOURCE_TAR_GZ] +checksums = [ + {'cryptography-41.0.5.tar.gz': '392cb88b597247177172e02da6b7a63deeff1937fa6fec3bbf902ebd75d97ec7'}, + {'Inflector-0.11.4.tar.gz': 'fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3'}, + {'aliasable-0.1.3.tar.gz': '250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd'}, + {'asn1-0.15.2.tar.gz': '28c19b9324de5b815b6487e0f8098312791b09de0dbf3d5c2db1fe2d95bab973'}, + {'asn1_derive-0.15.2.tar.gz': 'a045c3ccad89f244a86bd1e6cf1a7bf645296e7692698b056399b6efd4639407'}, + {'autocfg-1.1.0.tar.gz': 'd468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa'}, + {'base64-0.13.1.tar.gz': '9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'cc-1.0.79.tar.gz': '50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'foreign-types-0.3.2.tar.gz': 'f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1'}, + {'foreign-types-shared-0.1.1.tar.gz': '00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b'}, + {'indoc-1.0.9.tar.gz': 'bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306'}, + {'libc-0.2.144.tar.gz': '2b00cc1c228a6782d0f076e7b232802e0c5689d41bb5df366f2a6b6621cfdfe1'}, + {'lock_api-0.4.9.tar.gz': '435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df'}, + {'memoffset-0.8.0.tar.gz': 'd61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1'}, + {'once_cell-1.17.2.tar.gz': '9670a07f94779e00908f3e686eab508878ebb390ba6e604d3a284c00e8d0487b'}, + {'openssl-0.10.54.tar.gz': '69b3f656a17a6cbc115b5c7a40c616947d213ba182135b014d6051b73ab6f019'}, + {'openssl-macros-0.1.1.tar.gz': 'a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c'}, + {'openssl-sys-0.9.88.tar.gz': 'c2ce0f250f34a308dcfdbb351f511359857d4ed2134ba715a4eadd46e1ffd617'}, + {'ouroboros-0.15.6.tar.gz': 'e1358bd1558bd2a083fed428ffeda486fbfb323e698cdda7794259d592ca72db'}, + {'ouroboros_macro-0.15.6.tar.gz': '5f7d21ccd03305a674437ee1248f3ab5d4b1db095cf1caf49f1713ddf61956b7'}, + {'parking_lot-0.12.1.tar.gz': '3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f'}, + {'parking_lot_core-0.9.7.tar.gz': '9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521'}, + {'pem-1.1.1.tar.gz': 'a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8'}, + {'pkg-config-0.3.27.tar.gz': '26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964'}, + {'proc-macro-error-1.0.4.tar.gz': 'da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c'}, + {'proc-macro-error-attr-1.0.4.tar.gz': 'a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869'}, + {'proc-macro2-1.0.64.tar.gz': '78803b62cbf1f46fde80d7c0e803111524b9877184cfe7c3033659490ac7a7da'}, + {'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.28.tar.gz': '1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488'}, + {'redox_syscall-0.2.16.tar.gz': 'fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a'}, + {'scopeguard-1.1.0.tar.gz': 'd29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd'}, + {'smallvec-1.10.0.tar.gz': 'a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.18.tar.gz': '32d41677bcbe24c20c52e7c70b0d8db04134c5d1066bf98662e2871ad200ea3e'}, + {'target-lexicon-0.12.7.tar.gz': 'fd1ba337640d60c3e96bc6f0638a939b9c9a7f2c316a1598c279828b3d1dc8c5'}, + {'unicode-ident-1.0.9.tar.gz': 'b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0'}, + {'unindent-0.1.11.tar.gz': 'e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'version_check-0.9.4.tar.gz': '49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f'}, + {'windows-sys-0.45.0.tar.gz': '75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0'}, + {'windows-targets-0.42.2.tar.gz': '8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071'}, + {'windows_aarch64_gnullvm-0.42.2.tar.gz': '597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8'}, + {'windows_aarch64_msvc-0.42.2.tar.gz': 'e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43'}, + {'windows_i686_gnu-0.42.2.tar.gz': 'c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f'}, + {'windows_i686_msvc-0.42.2.tar.gz': '44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060'}, + {'windows_x86_64_gnu-0.42.2.tar.gz': '8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36'}, + {'windows_x86_64_gnullvm-0.42.2.tar.gz': '26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3'}, + {'windows_x86_64_msvc-0.42.2.tar.gz': '9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0'}, +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/ctffind/ctffind-4.1.14-foss-2022b.eb b/easybuild/easyconfigs/c/ctffind/ctffind-4.1.14-foss-2022b.eb new file mode 100644 index 00000000000..ff2bc24f2a4 --- /dev/null +++ b/easybuild/easyconfigs/c/ctffind/ctffind-4.1.14-foss-2022b.eb @@ -0,0 +1,41 @@ +easyblock = 'ConfigureMake' + +name = 'ctffind' +version = '4.1.14' + +homepage = 'https://grigoriefflab.umassmed.edu/ctffind4' +description = """Program for finding CTFs of electron micrographs.""" + +toolchain = {'name': 'foss', 'version': '2022b'} +toolchainopts = {'openmp': True} + +source_urls = ['https://grigoriefflab.umassmed.edu/sites/default/files/'] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + '%(name)s-%(version)s_asm-fix.patch', + '%(name)s-%(version)s_void-functions.patch' +] +checksums = [ + 'db17b2ebeb3c3b2b3764e42b820cd50d19ccccf6956c64257bfe5d5ba6b40cb5', # ctffind-4.1.14.tar.gz + 'e6d468b3f1569e2d42e077573529dbc3035a03715c436d2349ccaaab63b64f28', # ctffind-4.1.14_asm-fix.patch + '0a578328062881d86b10585f1b0efa81b7a1826baf3e7bcc5c749bba73e96d10', # ctffind-4.1.14_void-functions.patch +] + +dependencies = [ + ('zlib', '1.2.12'), + ('libjpeg-turbo', '2.1.4'), + ('LibTIFF', '4.4.0'), + ('GSL', '2.7',), + ('wxWidgets', '3.2.2.1'), +] + +configopts = '--enable-openmp ' + +parallel = 1 + +sanity_check_paths = { + 'files': ['bin/ctffind'], + 'dirs': [], +} + +moduleclass = 'bio' 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..29375b8b3a0 --- /dev/null +++ b/easybuild/easyconfigs/c/cysignals/cysignals-1.11.2-GCCcore-11.3.0.eb @@ -0,0 +1,38 @@ +# +# 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'] + +builddependencies = [ + ('Autotools', '20220317'), + ('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'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/d/DBus/DBus-1.15.8-GCCcore-13.2.0.eb b/easybuild/easyconfigs/d/DBus/DBus-1.15.8-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..21251602a0c --- /dev/null +++ b/easybuild/easyconfigs/d/DBus/DBus-1.15.8-GCCcore-13.2.0.eb @@ -0,0 +1,45 @@ +easyblock = 'CMakeMake' + +name = 'DBus' +version = '1.15.8' + +homepage = 'https://dbus.freedesktop.org/' + +description = """ + D-Bus is a message bus system, a simple way for applications to talk + to one another. In addition to interprocess communication, D-Bus helps + coordinate process lifecycle; it makes it simple and reliable to code + a "single instance" application or daemon, and to launch applications + and daemons on demand when their services are needed. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://dbus.freedesktop.org/releases/dbus'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['84fc597e6ec82f05dc18a7d12c17046f95bad7be99fc03c15bc254c4701ed204'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('expat', '2.5.0'), +] + +configopts = '-DENABLE_SYSTEMD=OFF ' +# disable documentation +configopts += '-DDBUS_ENABLE_XML_DOCS=OFF -DDBUS_ENABLE_QTHELP_DOCS=OFF -DDBUS_ENABLE_DOXYGEN_DOCS=OFF ' + +sanity_check_paths = { + 'files': ['bin/dbus-%s' % x for x in + ['cleanup-sockets', 'daemon', 'launch', 'monitor', + 'run-session', 'send', 'uuidgen']] + + ['lib/libdbus-1.%s' % SHLIB_EXT], + 'dirs': ['include', 'share'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/d/DFT-D3/DFT-D3-3.2.0-intel-compilers-2022.2.1.eb b/easybuild/easyconfigs/d/DFT-D3/DFT-D3-3.2.0-intel-compilers-2022.2.1.eb new file mode 100644 index 00000000000..60c33ea0a87 --- /dev/null +++ b/easybuild/easyconfigs/d/DFT-D3/DFT-D3-3.2.0-intel-compilers-2022.2.1.eb @@ -0,0 +1,34 @@ +easyblock = 'MakeCp' + +name = 'DFT-D3' +version = '3.2.0' + +homepage = 'https://www.chemie.uni-bonn.de/grimme/de/software/dft-d3' +description = """DFT-D3 implements a dispersion correction for density functionals, Hartree-Fock and semi-empirical + quantum chemical methods.""" + +toolchain = {'name': 'intel-compilers', 'version': '2022.2.1'} + +source_urls = ['https://www.chemie.uni-bonn.de/grimme/de/software/dft-d3'] +# Note that the DFT-D3 tarball is named as "dftd3.tgz" with no version +# numbering. Also, the authors are prone (alas) to stealth upgrades, so that two +# tarballs with the same version number can have different checksums. For this +# reason, it is suggested to manually download and rename the tarball. The +# checksum may also need updating from time to time. +# Checksum last updated: 20 September 2018 +# Date tarball was reported to have been modified: 14 June 2016 +sources = [{'download_filename': 'dftd3.tgz', 'filename': SOURCELOWER_TGZ}] +checksums = ['d97cf9758f61aa81fd85425448fbf4a6e8ce07c12e9236739831a3af32880f59'] + +prebuildopts = "sed -i 's/OSTYPE=LINUXL/OSTYPE=LINUXI/' Makefile && " + +files_to_copy = [(['dftd3'], 'bin'), (['man.pdf'], 'doc')] + +sanity_check_paths = { + 'files': ['bin/dftd3'], + 'dirs': [], +} + +sanity_check_commands = ['dftd3'] + +moduleclass = 'chem' 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' diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2022a.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2022a.eb index 41dbbeb6af1..c18f4974acf 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2022a.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2022a.eb @@ -36,6 +36,11 @@ dependencies = [ ('AOFlagger', '3.4.0') ] +# Without this, the wrong (system) python is picked up by cmake +# in cases where the system python is newer than the one used in these EasyConfigs +# See PR # 19119 +configopts = '-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' + sanity_check_paths = { 'files': ['include/include/dp3/base/DP3.h', 'bin/DP3'], 'dirs': ['bin'], diff --git a/easybuild/easyconfigs/d/DeepLabCut/DeepLabCut-2.2.0.6-foss-2021a.eb b/easybuild/easyconfigs/d/DeepLabCut/DeepLabCut-2.2.0.6-foss-2021a.eb new file mode 100644 index 00000000000..39f304ae009 --- /dev/null +++ b/easybuild/easyconfigs/d/DeepLabCut/DeepLabCut-2.2.0.6-foss-2021a.eb @@ -0,0 +1,67 @@ +# Loosely based on PR #7680 +# J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'PythonBundle' + +name = 'DeepLabCut' +version = '2.2.0.6' +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': '2021a'} +toolchainopts = {'pic': True} + +dependencies = [ + ('Python', '3.9.5'), + ('h5py', '3.2.1'), + ('IPython', '7.25.0'), + ('scikit-learn', '0.24.2'), + ('scikit-image', '0.18.3'), + ('TensorFlow', '2.6.0'), + ('PyYAML', '5.4.1'), + ('PyTables', '3.6.1'), + ('wxPython', '4.1.1'), + ('OpenCV', '4.5.3', '-contrib'), + ('numba', '0.53.1'), + ('libyaml', '0.2.5'), + ('imgaug', '0.4.0'), + ('tqdm', '4.61.2'), + ('ruamel.yaml', '0.17.21'), + ('statsmodels', '0.12.2'), + ('PyTorch', '1.10.0'), + ('MoviePy', '1.0.3'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('filterpy', '1.4.5', { + 'sources': ['%(name)s-%(version)s.zip'], + 'checksums': ['4f2a4d39e4ea601b9ab42b2db08b5918a9538c168cff1c6895ae26646f3d73b1'], + }), + ('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'], + }), + ('msgpack-numpy', '0.4.8', { + 'checksums': ['c667d3180513422f9c7545be5eec5d296dcbb357e06f72ed39cc683797556e69'], + 'sources': ['msgpack-numpy-0.4.8.tar.gz'], + }), + + (name, version, { + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'patches': ['deeplabcut-2.2.0.6-setup.py.patch'], + 'checksums': ['4aa6694201e2aa56b9bd3e97ab27b0bc54f1364303167216174d2376d8ae0f84', + # deeplabcut-2.2.0.6-setup.py.patch: + '1dbef23575b105a6b2fa39f28d67bf926701d4c0b4f48bed7a6b179b7e5df2b0'], + }), +] + +moduleclass = 'lib' 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..3a7d86ba8dc --- /dev/null +++ b/easybuild/easyconfigs/d/Demystify/Demystify-0.0.17-foss-2020b.eb @@ -0,0 +1,29 @@ +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 +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/d/datalad/datalad-0.18.4-GCCcore-12.2.0.eb b/easybuild/easyconfigs/d/datalad/datalad-0.18.4-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..8ec6b98f4fb --- /dev/null +++ b/easybuild/easyconfigs/d/datalad/datalad-0.18.4-GCCcore-12.2.0.eb @@ -0,0 +1,72 @@ +easyblock = 'PythonBundle' + +name = 'datalad' +version = "0.18.4" + +homepage = 'https://www.datalad.org/' +description = "DataLad is a free and open source distributed data management system that keeps track of your data, \ +creates structure, ensures reproducibility, supports collaboration, \ +and integrates with widely used data infrastructure." + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('binutils', '2.39') +] + +dependencies = [ + ('git-annex', '10.20230802'), + ('Python', '3.10.8'), + ('tqdm', '4.64.1'), + ('PLY', '3.11'), + ('scikit-build', '0.17.2'), +] + +use_pip = True + +exts_list = [ + ('humanize', '3.13.1', { + 'checksums': ['12f113f2e369dac7f35d3823f49262934f4a22a53a6d3d4c86b736f50db88c7b'], + }), + ('fasteners', '0.18', { + 'checksums': ['cb7c13ef91e0c7e4fe4af38ecaf6b904ec3f5ce0dda06d34924b6b74b869d953'], + }), + ('patool', '1.12', { + 'modulename': 'patoolib', + 'checksums': ['e3180cf8bfe13bedbcf6f5628452fca0c2c84a3b5ae8c2d3f55720ea04cb1097'], + }), + ('annexremote', '1.6.0', { + 'checksums': ['779a43e5b1b4afd294761c6587dee8ac68f453a5a8cc40f419e9ca777573ae84'], + }), + ('looseversion', '1.2.0', { + 'checksums': ['c64e71c0b29030683b4ea75aee431db2d25c4e6e533590e52129f1d9e51de204'], + }), + ('boto', '2.49.0', { + 'checksums': ['ea0d3b40a2d852767be77ca343b58a9e3a4b00d9db440efb8da74b4e58025e5a'], + }), + ('python-gitlab', '3.10.0', { + 'modulename': 'gitlab', + 'checksums': ['14930a16fdd7f36f67b9373e7d4d4720e8e374800028380289db3306e9f74614'], + }), + ('iso8601', '1.0.2', { + 'checksums': ['27f503220e6845d9db954fb212b95b0362d8b7e6c1b2326a87061c3de93594b1'], + }), + (name, version, { + 'checksums': ['d832f3d70b79b7b66519ca30315791a6a265bdf8a86ddac5846489b75385cb09'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/datalad'], + 'dirs': [], +} + +sanity_check_commands = [ + "datalad --help", + "datalad --version", +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/d/dftd4/dftd4-3.4.0-gfbf-2022b.eb b/easybuild/easyconfigs/d/dftd4/dftd4-3.4.0-gfbf-2022b.eb new file mode 100644 index 00000000000..ff0118de885 --- /dev/null +++ b/easybuild/easyconfigs/d/dftd4/dftd4-3.4.0-gfbf-2022b.eb @@ -0,0 +1,40 @@ +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeNinja' + +name = 'dftd4' +version = '3.4.0' + +homepage = 'https://github.com/dftd4/dftd4' +description = """Generally Applicable Atomic-Charge Dependent London Dispersion Correction.""" + +toolchain = {'name': 'gfbf', 'version': '2022b'} + +github_account = 'dftd4' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['f3b0a16a952817ae48e819626e13676fba3b61c8beea47b0f8ada2fbb679fb7b'] + +builddependencies = [ + ('CMake', '3.24.3'), + ('Ninja', '1.11.1'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), + ('mstore', '0.2.0'), + ('multicharge', '0.2.0'), +] +# +# run suite of tests with ctest +test_cmd = 'ctest --parallel 1' +runtest = '' + +sanity_check_paths = { + 'files': ['bin/dftd4', 'lib/libdftd4.a'], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["dftd4 --help"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/d/dftd4/dftd4-3.4.0-iimkl-2022b.eb b/easybuild/easyconfigs/d/dftd4/dftd4-3.4.0-iimkl-2022b.eb new file mode 100644 index 00000000000..4a780c10181 --- /dev/null +++ b/easybuild/easyconfigs/d/dftd4/dftd4-3.4.0-iimkl-2022b.eb @@ -0,0 +1,43 @@ +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeNinja' + +name = 'dftd4' +version = '3.4.0' + +homepage = 'https://github.com/dftd4/dftd4' +description = """Generally Applicable Atomic-Charge Dependent London Dispersion Correction.""" + +toolchain = {'name': 'iimkl', 'version': '2022b'} + +github_account = 'dftd4' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['f3b0a16a952817ae48e819626e13676fba3b61c8beea47b0f8ada2fbb679fb7b'] + +builddependencies = [ + ('CMake', '3.24.3'), + ('Ninja', '1.11.1'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), + ('mstore', '0.2.0'), + ('multicharge', '0.2.0'), +] + +configopts = '-DBLAS_LIBRARIES="-lmkl_sequential -lmkl_intel_lp64 -lmkl_core" ' +configopts += '-DLAPACK_LIBRARIES="-lmkl_sequential -lmkl_intel_lp64 -lmkl_core" ' + +# run suite of tests with ctest +test_cmd = 'ctest --parallel 2' +runtest = '' + +sanity_check_paths = { + 'files': ['bin/dftd4', 'lib/libdftd4.a'], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["dftd4 --help"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/d/dialog/dialog-1.3-20231002-GCCcore-10.3.0.eb b/easybuild/easyconfigs/d/dialog/dialog-1.3-20231002-GCCcore-10.3.0.eb new file mode 100644 index 00000000000..8800d1af1f0 --- /dev/null +++ b/easybuild/easyconfigs/d/dialog/dialog-1.3-20231002-GCCcore-10.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'dialog' +version = '1.3-20231002' + +homepage = 'https://invisible-island.net/' +description = 'A utility for creating TTY dialog boxes' + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +sources = ['https://invisible-island.net/archives/dialog/%(name)s-%(version)s.tgz'] +checksums = ['315640ab0719225d5cbcab130585c05f0791fcf073072a5fe9479969aa2b833b'] + +builddependencies = [ + ('Autotools', '20210128'), + ('binutils', '2.36.1'), +] + +dependencies = [ + ('ncurses', '6.2'), + ('zlib', '1.2.11'), +] + +sanity_check_paths = { + 'files': ["bin/dialog", "lib/libdialog.a"], + 'dirs': ["lib", "share"], +} + +sanity_check_commands = ['dialog --help'] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/d/dynesty/dynesty-2.1.3-foss-2023a.eb b/easybuild/easyconfigs/d/dynesty/dynesty-2.1.3-foss-2023a.eb new file mode 100644 index 00000000000..9835112f86e --- /dev/null +++ b/easybuild/easyconfigs/d/dynesty/dynesty-2.1.3-foss-2023a.eb @@ -0,0 +1,44 @@ +easyblock = 'PythonBundle' + +name = 'dynesty' +version = '2.1.3' + +homepage = 'https://dynesty.readthedocs.io/' +description = """dynesty is a Pure Python, MIT-licensed Dynamic Nested Sampling package +for estimating Bayesian posteriors and evidences.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('pytest', '7.4.2'), + ('pytest-xdist', '3.3.1'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('dill', '0.3.7'), + ('h5py', '3.9.0'), + ('tqdm', '4.66.1'), +] + +use_pip = True + +exts_list = [ + ('pytest-cov', '4.1.0', { + 'checksums': ['3904b13dfbfec47f003b8e77fd5b589cd11904a21ddf1ab38a64f204d6a10ef6'], + }), + ('coverage', '6.5.0', { + 'checksums': ['f642e90754ee3e06b0e7e51bce3379590e76b7f76b708e1a71ff043f87025c84'], + }), + ('coveralls', '3.3.1', { + 'checksums': ['b32a8bb5d2df585207c119d6c01567b81fba690c9c10a753bfe27a335bfc43ea'], + }), + (name, version, { + 'checksums': ['26b6c538ff59be4cfd27871b9b78e62c333052234f99c288e269ec022849a345'], + }), +] + +sanity_pip_check = True + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/e/E-ANTIC/E-ANTIC-1.3.0-gfbf-2022a.eb b/easybuild/easyconfigs/e/E-ANTIC/E-ANTIC-1.3.0-gfbf-2022a.eb new file mode 100644 index 00000000000..967a6c431d0 --- /dev/null +++ b/easybuild/easyconfigs/e/E-ANTIC/E-ANTIC-1.3.0-gfbf-2022a.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'E-ANTIC' +version = '1.3.0' + +homepage = 'https://github.com/flatsurf/e-antic' +description = """E-ANTIC is a C/C++ library to deal with real embedded number fields built on +top of ANTIC (https://github.com/wbhart/antic). Its aim is to have as fast as +possible exact arithmetic operations and comparisons.""" + +toolchain = {'name': 'gfbf', 'version': '2022a'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/flatsurf/e-antic/releases/download/%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ae12cb87f09478f49c4acdf0f3ff888dc556267614c0a5a3bc8bfaa41b22deef'] + +dependencies = [ + ('ANTIC', '0.2.5'), + ('FLINT', '2.9.0'), + ('Arb', '2.23.0'), + ('Boost', '1.79.0'), + ('Python', '3.10.4'), + ('cppyy', '3.0.0'), +] + +configopts = '--without-benchmark --without-byexample --without-pytest --without-doc' + +sanity_check_paths = { + 'files': ['lib/lib%s.%s' % (lib, ext) for lib in ['eantic', 'eanticxx'] for ext in ['a', SHLIB_EXT]] + + ['include/e-antic/%s.h' % h for h in ['e-antic', 'fmpq_poly_extra', 'renf', + 'renf_elem', 'renfxx']], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["python -c 'import pyeantic'"] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ECL/ECL-23.9.9-GCCcore-11.3.0.eb b/easybuild/easyconfigs/e/ECL/ECL-23.9.9-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..7785b55e3af --- /dev/null +++ b/easybuild/easyconfigs/e/ECL/ECL-23.9.9-GCCcore-11.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'ECL' +version = '23.9.9' + +homepage = 'https://ecl.common-lisp.dev/' +description = """ECL (Embeddable Common-Lisp) is an interpreter of the Common-Lisp language + as described in the X3J13 Ansi specification, featuring CLOS (Common-Lisp Object System), + conditions, loops, etc, plus a translator to C, which can produce standalone executables.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://common-lisp.net/project/ecl/static/files/release'] +sources = [SOURCELOWER_TGZ] +checksums = ['c51bdab4ca6c1173dd3fe9cfe9727bcefb97bb0a3d6434b627ca6bdaeb33f880'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [ + ('GMP', '6.2.1'), +] + +configopts = "--enable-manual=no " + +sanity_check_paths = { + 'files': ['bin/ecl', 'bin/ecl-config', 'include/ecl/ecl.h', 'lib/libecl.%s' % SHLIB_EXT], + 'dirs': ['share'], +} + +sanity_check_commands = ["ecl --help"] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/e/EUKulele/EUKulele-2.0.6-foss-2022a.eb b/easybuild/easyconfigs/e/EUKulele/EUKulele-2.0.6-foss-2022a.eb new file mode 100644 index 00000000000..ddaf11c8df9 --- /dev/null +++ b/easybuild/easyconfigs/e/EUKulele/EUKulele-2.0.6-foss-2022a.eb @@ -0,0 +1,78 @@ +easyblock = 'PythonBundle' + +name = 'EUKulele' +version = '2.0.6' + +homepage = 'https://github.com/AlexanderLabWHOI/EUKulele' +description = "Formalizing environmental eukaryotic taxonomic assignment" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('Biopython', '1.79'), + ('SciPy-bundle', '2022.05'), + ('Seaborn', '0.12.1'), + ('PyYAML', '6.0'), + ('coverage', '7.2.7'), + ('matplotlib', '3.5.2'), + ('pytest-xdist', '2.5.0'), +] + +use_pip = True + +local_oset_sed = 'sed -i "s/collections import MutableSet/collections.abc import MutableSet/g" ./src/oset/pyoset.py ' +exts_list = [ + ('oset', '0.1.3', { + 'preinstallopts': local_oset_sed + ' && ', + 'checksums': ['4c1fd7dec96eeff9d3260995a8e37f9f415d0bdb79975f57824e68716ac8f904'], + }), + ('dill', '0.3.6', { + 'checksums': ['e5db55f3687856d8fbdab002ed78544e1c4559a130302693d839dfe8f93f2373'], + }), + ('multiprocess', '0.70.14', { + 'checksums': ['3eddafc12f2260d27ae03fe6069b12570ab4764ab59a75e81624fac453fbf46a'], + }), + ('joblib', '1.3.1', { + 'checksums': ['1f937906df65329ba98013dc9692fe22a4c5e4a648112de500508b18a21b41e3'], + }), + ('python-coveralls', '2.9.3', { + 'modulename': 'coveralls', + 'checksums': ['bfaf7811e7dc5628e83b6b162962a4e2485dbff184b30e49f380374ed1bcee55'], + }), + ('pytest-cov', '4.1.0', { + 'checksums': ['3904b13dfbfec47f003b8e77fd5b589cd11904a21ddf1ab38a64f204d6a10ef6'], + }), + ('latexcodec', '2.0.1', { + 'checksums': ['2aa2551c373261cefe2ad3a8953a6d6533e68238d180eb4bb91d7964adb3fe9a'], + }), + ('pybtex', '0.24.0', { + 'checksums': ['818eae35b61733e5c007c3fcd2cfb75ed1bc8b4173c1f70b56cc4c0802d34755'], + }), + ('pybtex-docutils', '1.0.3', { + 'checksums': ['3a7ebdf92b593e00e8c1c538aa9a20bca5d92d84231124715acc964d51d93c6b'], + }), + ('sphinxcontrib-bibtex', '1.0.0', { + 'modulename': 'sphinxcontrib.bibtex', + 'checksums': ['629612b001f86784669d65e662377a482052decfd9a0a17c46860878eef7b9e0'], + }), + (name, version, { + 'modulename': 'EUKulele', + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/AlexanderLabWHOI/EUKulele/archive/'], + 'checksums': ['ab4efb692886f25c2b94e9405b98f3935d78b7c716b66b5f7d43f3bca02184b4'], + }), +] + +sanity_check_paths = { + 'files': ['bin/EUKulele', 'bin/create_protein_table.py'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "EUKulele --help" +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.8.2.eb b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.8.2.eb new file mode 100644 index 00000000000..3ee367b47ec --- /dev/null +++ b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.8.2.eb @@ -0,0 +1,44 @@ +easyblock = 'EB_EasyBuildMeta' + +name = 'EasyBuild' +version = '4.8.2' + +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/e5/40/17e4ddbe7aa160e67219a90c7c4f67baa4b0efc3a6c21ab0e2c858af8f4e/', + # easybuild-easyblocks + 'https://files.pythonhosted.org/packages/85/07/e59231a6f4a90f6bd7c24c9c3b923469024ab0072af95dac9409624796d1/', + # easybuild-easyconfigs + 'https://files.pythonhosted.org/packages/4b/1e/27f7d6785b35978ebb70a518bb1ea699ace8d05395c902a6d518de8590bb/', +] +sources = [ + 'easybuild-framework-%(version)s.tar.gz', + 'easybuild-easyblocks-%(version)s.tar.gz', + 'easybuild-easyconfigs-%(version)s.tar.gz', +] +checksums = [ + {'easybuild-framework-4.8.2.tar.gz': '87852289d099aed18e6778c556d8aed173ab1ff711c20e7d9ad32803336b3610'}, + {'easybuild-easyblocks-4.8.2.tar.gz': '796ba8268e2832c6cb78c681401ce401f4d3a6471e1407a3987e76e6f42b3fd7'}, + {'easybuild-easyconfigs-4.8.2.tar.gz': 'c191b09f68cc3a0be33d248edfb892a143424af119f6ae6fd076c7880343cd63'}, +] + +# 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' diff --git a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2022a.eb b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2022a.eb index 43f393b0dc7..b61f0c86167 100644 --- a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2022a.eb +++ b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2022a.eb @@ -36,6 +36,11 @@ dependencies = [ ('libxml2', '2.9.13'), ] +# Without this, the wrong (system) python is picked up by cmake +# in cases where the system python is newer than the one used in these EasyConfigs +# See PR # 19119 +configopts = '-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' + sanity_check_paths = { 'files': ['include/EveryBeam/beamformer.h', 'lib/libeverybeam.so'], 'dirs': [], diff --git a/easybuild/easyconfigs/e/e3nn/e3nn-0.3.3-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/e/e3nn/e3nn-0.3.3-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..0dd9d35d940 --- /dev/null +++ b/easybuild/easyconfigs/e/e3nn/e3nn-0.3.3-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,39 @@ +easyblock = 'PythonBundle' + +name = 'e3nn' +version = '0.3.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://e3nn.org/' +description = """ +Euclidean neural networks (e3nn) is a python library based on pytorch to create equivariant +neural networks for the group O(3). +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('PyTorch', '1.12.0', versionsuffix), + ('sympy', '1.10.1'), +] + +use_pip = True + +exts_list = [ + ('opt_einsum', '3.3.0', { + 'checksums': ['59f6475f77bbc37dcf7cd748519c0ec60722e91e63ca114e68821c0c54a46549'], + }), + ('opt_einsum_fx', '0.1.4', { + 'checksums': ['7eeb7f91ecb70be65e6179c106ea7f64fc1db6319e3d1289a4518b384f81e74f'], + }), + (name, version, { + 'checksums': ['532b34a5644153659253c59943fe4224cd9c3c46ce8a79f1dc7c00afccb44ecb'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' 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' diff --git a/easybuild/easyconfigs/e/eclib/eclib-20230424-GCC-11.3.0.eb b/easybuild/easyconfigs/e/eclib/eclib-20230424-GCC-11.3.0.eb new file mode 100644 index 00000000000..1c6d6c78a88 --- /dev/null +++ b/easybuild/easyconfigs/e/eclib/eclib-20230424-GCC-11.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'eclib' +version = '20230424' + +homepage = 'https://github.com/JohnCremona/eclib' +description = """The eclib package includes mwrank (for 2-descent on elliptic curves over Q) + and modular symbol code used to create the elliptic curve database.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/JohnCremona/eclib/releases/download/v%(version)s'] +sources = [SOURCE_TAR_BZ2] +checksums = ['1422decfcabebb0ad42f7f58c5aefe5bd8fa11757b45e31a186384fd037cd5c1'] + +builddependencies = [('Autotools', '20220317')] + +dependencies = [ + ('NTL', '11.5.1'), + ('PARI-GP', '2.15.4'), +] + +preconfigopts = "autoreconf --install && " + +configopts = "--with-ntl=$EBROOTNTL --with-pari=$EBROOTPARI" + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['ecnf', 'mwrank', 'pcurve', 'qexp']] + + ['include/eclib/%s.h' % h for h in ['curve', 'egr', 'vector']] + + ['lib/libec.%s' % e for e in ['a', SHLIB_EXT]], + 'dirs': ['share'], +} + +sanity_check_commands = ["mwrank -h"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/elfutils/elfutils-0.190-GCCcore-13.2.0.eb b/easybuild/easyconfigs/e/elfutils/elfutils-0.190-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..1e9d836097e --- /dev/null +++ b/easybuild/easyconfigs/e/elfutils/elfutils-0.190-GCCcore-13.2.0.eb @@ -0,0 +1,41 @@ +easyblock = 'ConfigureMake' + +name = 'elfutils' +version = '0.190' + +homepage = 'https://elfutils.org/' + +description = """ + The elfutils project provides libraries and tools for ELF files + and DWARF data. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://sourceware.org/elfutils/ftp/%(version)s/'] +sources = [SOURCE_TAR_BZ2] +checksums = ['8e00a3a9b5f04bc1dc273ae86281d2d26ed412020b391ffcc23198f10231d692'] + +builddependencies = [ + ('M4', '1.4.19'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('binutils', '2.40'), + ('bzip2', '1.0.8'), + ('libarchive', '3.7.2'), + ('XZ', '5.4.4'), + ('zstd', '1.5.5'), +] + +configopts = "--disable-debuginfod --disable-libdebuginfod" + +sanity_check_paths = { + 'files': ['bin/eu-elfcmp', 'include/dwarf.h', 'lib/libelf.%s' % SHLIB_EXT], + 'dirs': [] +} + +sanity_check_commands = ["eu-elfcmp --help"] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/e/epct/epct-3.2.0-foss-2022a.eb b/easybuild/easyconfigs/e/epct/epct-3.2.0-foss-2022a.eb new file mode 100644 index 00000000000..91db637d93a --- /dev/null +++ b/easybuild/easyconfigs/e/epct/epct-3.2.0-foss-2022a.eb @@ -0,0 +1,67 @@ +easyblock = 'PythonBundle' + +name = 'epct' +version = '3.2.0' + +homepage = 'https://gitlab.eumetsat.int/eumetlab/data-services/eumdac' +description = """ +This is the epct (EUMETSAT Product Customisation Toolbox) Python package for the EUMETSAT Data +Tailor. The EUMETSAT Data Tailor makes it possible for users to subset and aggregate EUMETSAT +data products in space and time, filter layers, generate quicklooks, project onto new +coordinate reference systems, and reformat into common GIS formats (netCDF, GeoTIFF, etc.). +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('dask', '2022.10.0'), + ('netcdf4-python', '1.6.1'), + ('xarray', '2022.6.0'), + ('GDAL', '3.5.0'), + ('h5py', '3.7.0'), + ('ecCodes', '2.27.0'), +] + +use_pip = True + +_fix_pkg_version = """sed -i 's/version = "0.0.0"/version = "%(version)s"/g' setup.py && """ +_relax_gdal_req = """sed -i 's/gdal==.*/gdal",/g' setup.py && """ + +exts_list = [ + ('findlibs', '0.0.2', { + 'checksums': ['6c7e038496f9a97783ab2cd5736bb68522d5bebd8b0eb17c976b6a4ae4032c8d'], + }), + ('Chameleon', '4.2.0', { + 'checksums': ['2a7bda67ba9f8fa31d1e17b8d1cefdae8687741293ffe0938e831e71843b4751'], + }), + ('cfgrib', '0.9.10.3', { + 'checksums': ['c10806058c80c48610c201bf05eb292401807806ab9423ab4965ae23dbb6b521'], + }), + ('eccodes', '1.5.0', { + 'checksums': ['e70c8f159140c343c215fd608ddf533be652ff05ad2ff17243c7b66cf92127fa'], + }), + ('structlog', '21.5.0', { + 'checksums': ['68c4c29c003714fe86834f347cb107452847ba52414390a7ee583472bde00fc9'], + }), + ('epct_plugin_gis', '3.1.0', { + 'preinstallopts': _fix_pkg_version + _relax_gdal_req, + 'source_tmpl': 'epct_plugin_gis-3.1.0.tar.bz2', + 'source_urls': [ + 'https://gitlab.eumetsat.int/open-source/data-tailor-plugins/epct_plugin_gis/-/archive/%(version)s/' + ], + 'checksums': ['05b292bbeae0870736f330126d6233dfc5d17031fa07714acb62854b0941f462'], + }), + (name, version, { + 'preinstallopts': _fix_pkg_version, + 'source_tmpl': '%(name)s-%(version)s.tar.bz2', + 'source_urls': ['https://gitlab.eumetsat.int/open-source/%(name)s/-/archive/%(version)s/'], + 'start_dir': 'epct', + 'checksums': ['e5ce1699a71bb446a5739c1b531bfefcf2956e5f1afba5d956b80bb187725b1f'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCC-10.3.0.eb b/easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCC-10.3.0.eb new file mode 100644 index 00000000000..c235f2a1bfb --- /dev/null +++ b/easybuild/easyconfigs/f/FACE/FACE-1.1.1-GCC-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': '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'] +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 = [ + ('FoBiS', '3.0.5'), +] + +build_cmd = 'FoBiS.py build' +buildopts = '-mode face-shared-gnu ' +buildopts += '-verbose ' + +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/FFLAS-FFPACK/FFLAS-FFPACK-2.5.0-gfbf-2022a.eb b/easybuild/easyconfigs/f/FFLAS-FFPACK/FFLAS-FFPACK-2.5.0-gfbf-2022a.eb new file mode 100644 index 00000000000..75c22cfa096 --- /dev/null +++ b/easybuild/easyconfigs/f/FFLAS-FFPACK/FFLAS-FFPACK-2.5.0-gfbf-2022a.eb @@ -0,0 +1,41 @@ +## +# This file is an EasyBuild recipe; see https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright (c) 2016 Riccardo Murri +# Authors:: Riccardo Murri +# License:: GPL +# +## + +easyblock = 'ConfigureMake' + +name = 'FFLAS-FFPACK' +version = '2.5.0' + +homepage = 'https://linbox-team.github.io/fflas-ffpack/' +description = "Finite Field Linear Algebra Subroutines / Package" + +toolchain = {'name': 'gfbf', 'version': '2022a'} + +source_urls = ['https://github.com/linbox-team/fflas-ffpack/releases/download/v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['dafb4c0835824d28e4f823748579be6e4c8889c9570c6ce9cce1e186c3ebbb23'] + +dependencies = [ + ('GMP', '6.2.1'), + ('Givaro', '4.2.0'), +] + +configopts = '--with-blas-libs="$LIBBLAS_MT" --with-blas-cflags="-I$BLAS_INC_DIR" ' +configopts += '--with-gmp=$EBROOTGMP --with-givaro=$EBROOTGIVARO --enable-openmp' + +buildopts = " && make autotune " + +sanity_check_paths = { + 'files': ['bin/fflas-ffpack-config', 'include/fflas-ffpack/fflas-ffpack.h'], + 'dirs': ['bin', 'include', 'lib'], +} + +sanity_check_commands = ["fflas-ffpack-config --help"] + +moduleclass = 'math' 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/FFmpeg/FFmpeg-6.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/f/FFmpeg/FFmpeg-6.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..fab8972c089 --- /dev/null +++ b/easybuild/easyconfigs/f/FFmpeg/FFmpeg-6.0-GCCcore-13.2.0.eb @@ -0,0 +1,45 @@ +easyblock = 'ConfigureMake' + +name = 'FFmpeg' +version = '6.0' + +homepage = 'https://www.ffmpeg.org/' +description = "A complete, cross-platform solution to record, convert and stream audio and video." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://%(namelower)s.org/releases/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['47d062731c9f66a78380e35a19aac77cebceccd1c7cc309b9c82343ffc430c3d'] + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), + ('ffnvcodec', '12.1.14.0', '', SYSTEM), # optional nvenc/dec support +] +dependencies = [ + ('NASM', '2.16.01'), + ('zlib', '1.2.13'), + ('bzip2', '1.0.8'), + ('x264', '20231019'), + ('LAME', '3.100'), + ('x265', '3.5'), + ('X11', '20231019'), + ('freetype', '2.13.2'), + ('fontconfig', '2.14.2'), + ('FriBidi', '1.0.13'), + ('SDL2', '2.28.5'), +] + +configopts = '--enable-pic --enable-shared --enable-gpl --enable-version3 --enable-nonfree --cc="$CC" --cxx="$CXX" ' +configopts += '--enable-libx264 --enable-libx265 --enable-libmp3lame --enable-libfreetype --enable-fontconfig ' +configopts += '--enable-libfribidi --enable-sdl2' + +sanity_check_paths = { + 'files': ['bin/ff%s' % x for x in ['mpeg', 'probe', 'play']] + + ['lib/lib%s.%s' % (x, y) for x in ['avdevice', 'avfilter', 'avformat', 'avcodec', 'postproc', + 'swresample', 'swscale', 'avutil'] for y in [SHLIB_EXT, 'a']], + 'dirs': ['include'] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/f/FLINT/FLINT-2.9.0-gcc-12.patch b/easybuild/easyconfigs/f/FLINT/FLINT-2.9.0-gcc-12.patch new file mode 100644 index 00000000000..53b39cf316d --- /dev/null +++ b/easybuild/easyconfigs/f/FLINT/FLINT-2.9.0-gcc-12.patch @@ -0,0 +1,18 @@ +Patch to run t-sdiv_qrnnd.c test with gcc-12.x compilers +See here: +https://github.com/flintlib/flint2/commit/fb8ddbcc06afa2a8f25637032fbb8211f6c6c122 +https://github.com/flintlib/flint2/issues/1175 +Author: J. Sassmannshausen (University College London/UK) +diff --git a/flint-2.9.0.orig/test/t-sdiv_qrnnd.c b/flint-2.9.0/test/t-sdiv_qrnnd.c +index 2e9822e..e2d65cd 100644 +--- a/flint-2.9.0.orig/test/t-sdiv_qrnnd.c ++++ b/flint-2.9.0/test/t-sdiv_qrnnd.c +@@ -33,7 +33,7 @@ int main(void) + { + d = n_randtest_not_zero(state); + nh = n_randtest(state); +- } while ((FLINT_ABS(nh) >= FLINT_ABS(d)/2) || (nh == WORD_MIN)); ++ } while ((nh == WORD_MIN) || (FLINT_ABS(nh) >= FLINT_ABS(d)/2)); + + nl = n_randtest(state); + diff --git a/easybuild/easyconfigs/f/FLINT/FLINT-2.9.0-gfbf-2022b.eb b/easybuild/easyconfigs/f/FLINT/FLINT-2.9.0-gfbf-2022b.eb new file mode 100644 index 00000000000..b07b543281d --- /dev/null +++ b/easybuild/easyconfigs/f/FLINT/FLINT-2.9.0-gfbf-2022b.eb @@ -0,0 +1,48 @@ +easyblock = 'CMakeMake' + +name = 'FLINT' +version = '2.9.0' + +homepage = 'https://www.flintlib.org/' + +description = """FLINT (Fast Library for Number Theory) is a C library in support of computations + in number theory. Operations that can be performed include conversions, arithmetic, computing GCDs, + factoring, solving linear systems, and evaluating special functions. In addition, FLINT provides + various low-level routines for fast arithmetic. FLINT is extensively documented and tested.""" + +toolchain = {'name': 'gfbf', 'version': '2022b'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.flintlib.org'] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + '%(name)s-2.8.4_find_flexiblas.patch', + '%(name)s-%(version)s-gcc-12.patch', +] +checksums = [ + {'flint-2.9.0.tar.gz': '2fc090d51033c93208e6c10d406397a53c983ae5343b958eb25f72a57a4ce76a'}, + {'FLINT-2.8.4_find_flexiblas.patch': '35a3db14646daf584449f2b9c6880b66e7b082a665eba56234230610bab77c6e'}, + {'FLINT-2.9.0-gcc-12.patch': 'c253f0353eea129fab70e055b0fdee0d23ec391df03d1689503540c97d5432fb'}, +] + +builddependencies = [ + ('CMake', '3.24.3'), + ('Python', '3.10.8'), +] + +dependencies = [ + ('GMP', '6.2.1'), + ('MPFR', '4.2.0'), + ('NTL', '11.5.1'), +] + +configopts = '-DWITH_NTL=on -DBUILD_TESTING=yes' + +runtest = 'test' + +sanity_check_paths = { + 'files': ['lib/lib%%(namelower)s.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/f/FLTK/FLTK-1.3.8-GCCcore-12.3.0.eb b/easybuild/easyconfigs/f/FLTK/FLTK-1.3.8-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..fc14c7747d5 --- /dev/null +++ b/easybuild/easyconfigs/f/FLTK/FLTK-1.3.8-GCCcore-12.3.0.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'FLTK' +version = '1.3.8' + +homepage = 'https://www.fltk.org' +description = """FLTK is a cross-platform C++ GUI toolkit for UNIX/Linux (X11), Microsoft Windows, + and MacOS X. FLTK provides modern GUI functionality without the bloat and supports 3D graphics via OpenGL + and its built-in GLUT emulation.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://fltk.org/pub/%(namelower)s/%(version)s/'] +sources = ['%(namelower)s-%(version)s-source.tar.gz'] +patches = ['FLTK-1.3.6_fix-LDFLAGS.patch'] +checksums = [ + 'f3c1102b07eb0e7a50538f9fc9037c18387165bc70d4b626e94ab725b9d4d1bf', # fltk-1.3.8-source.tar.gz + 'f8af2414a1ee193a186b0d98d1e3567add0ee003f44ec64dce2ce2dfd6d95ebf', # FLTK-1.3.6_fix-LDFLAGS.patch +] + +configopts = '--enable-shared --enable-threads --enable-xft' + +builddependencies = [ + ('binutils', '2.40'), + ('groff', '1.22.4'), +] + +dependencies = [ + ('Mesa', '23.1.4'), + ('libGLU', '9.0.3'), + ('libpng', '1.6.39'), + ('libjpeg-turbo', '2.1.5.1'), + ('xprop', '1.2.6'), + ('zlib', '1.2.13'), +] + +sanity_check_paths = { + 'files': ['bin/fltk-config', 'bin/fluid', 'lib/libfltk.a', 'lib/libfltk.%s' % SHLIB_EXT], + 'dirs': ['lib'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/f/FPM/FPM-1.15.1-GCCcore-12.2.0.eb b/easybuild/easyconfigs/f/FPM/FPM-1.15.1-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..2ffd9eef466 --- /dev/null +++ b/easybuild/easyconfigs/f/FPM/FPM-1.15.1-GCCcore-12.2.0.eb @@ -0,0 +1,72 @@ +easyblock = 'Bundle' + +name = 'FPM' +version = '1.15.1' + +homepage = 'https://github.com/jordansissel/fpm' +description = """Effing package management! Build packages for multiple platforms (deb, rpm, etc) with great ease + and sanity.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +builddependencies = [ + ('binutils', '2.39'), +] + +dependencies = [ + ('Ruby', '3.2.2'), +] + +exts_default_options = { + 'source_urls': ['https://rubygems.org/downloads/'], + 'source_tmpl': '%(name)s-%(version)s.gem', +} + +exts_defaultclass = 'RubyGem' + +exts_list = [ + ('stud', '0.0.23', { + 'checksums': ['6ba26fa28fc50a8d59229b296a733b48d50f1473b1e3e7f5e339d5bbd829eb62'], + }), + ('dotenv', '2.8.1', { + 'checksums': ['c5944793349ae03c432e1780a2ca929d60b88c7d14d52d630db0508c3a8a17d8'], + }), + ('insist', '1.0.0', { + 'checksums': ['6f6759eee583dc4e00a6cc3f713cfa7c570572958ba1f5d65595046d795b832f'], + }), + ('mustache', '0.99.8', { + 'checksums': ['826a96db895819c13fffa4fa3c20b85e80b60aaec1f28f79e7db80092abdb0bc'], + }), + ('clamp', '1.0.1', { + 'checksums': ['5fa57e4337c30b384fc162a6391f477ce21e9b73ba2c16a18b3d99cb34a16649'], + }), + ('cabin', '0.9.0', { + 'checksums': ['91c5394289e993e7037a6c869e3f212f31a5984d2b1811ac934f591c87446b2c'], + }), + ('pleaserun', '0.0.32', { + 'checksums': ['4dd8db18b81b48e2a875ec0c7fff3869454d1f93a9f5e2e6c4eb88812870d3ab'], + }), + ('rexml', '3.2.6', { + 'checksums': ['e0669a2d4e9f109951cb1fde723d8acd285425d81594a2ea929304af50282816'], + }), + ('arr-pm', '0.0.12', { + 'checksums': ['fdff482f75239239201f4d667d93424412639aad0b3b0ad4d827e7c637e0ad39'], + }), + ('backports', '3.24.1', { + 'checksums': ['83a720ea9a3ee0cf5eab18b866e9282293ab4f54eb6430291b3c238481677fb8'], + }), + ('%(namelower)s', version, { + 'checksums': ['1ffbf342a89ca97fb5c02e66946c97e2bd5413810f7f440ddf32f00a16052dbf'], + }), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': ['gems/%(namelower)s-%(version)s'], +} + +sanity_check_commands = ["%(namelower)s --help"] + +modextrapaths = {'GEM_PATH': ['']} + +moduleclass = 'tools' 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' 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..af203d81f3d --- /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'] + +builddependencies = [ + ('Autotools', '20220317'), +] + +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.2'), + ('tcsh', '6.24.01'), + ('Java', '11', '', SYSTEM), +] + +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' diff --git a/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.12-GCCcore-11.3.0.eb b/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.12-GCCcore-11.3.0.eb index 65c4eb01b1c..5bcf88c38fe 100644 --- a/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.12-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.12-GCCcore-11.3.0.eb @@ -21,8 +21,6 @@ builddependencies = [ ('pkgconf', '1.8.0'), ] -configopts = '--disable-docs' - sanity_check_paths = { 'files': ['bin/%(namelower)s', 'include/%(namelower)s/%(namelower)s.h', 'lib/lib%%(namelower)s.%s' % SHLIB_EXT], diff --git a/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.12-GCCcore-12.2.0.eb b/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.12-GCCcore-12.2.0.eb index 97c8eece78b..357b9f24de3 100644 --- a/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.12-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.12-GCCcore-12.2.0.eb @@ -21,8 +21,6 @@ builddependencies = [ ('pkgconf', '1.9.3'), ] -configopts = '--disable-docs' - sanity_check_paths = { 'files': ['bin/%(namelower)s', 'include/%(namelower)s/%(namelower)s.h', 'lib/lib%%(namelower)s.%s' % SHLIB_EXT], diff --git a/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.12-GCCcore-12.3.0.eb b/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.12-GCCcore-12.3.0.eb index df4dacf597f..4df1d5562a9 100644 --- a/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.12-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.12-GCCcore-12.3.0.eb @@ -21,8 +21,6 @@ builddependencies = [ ('Autotools', '20220317'), ] -configopts = '--disable-docs' - sanity_check_paths = { 'files': ['bin/%(namelower)s', 'include/%(namelower)s/%(namelower)s.h', 'lib/lib%%(namelower)s.%s' % SHLIB_EXT], diff --git a/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.13-GCCcore-13.2.0.eb b/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.13-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..bd7cef70af5 --- /dev/null +++ b/easybuild/easyconfigs/f/FriBidi/FriBidi-1.0.13-GCCcore-13.2.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'FriBidi' +version = '1.0.13' + +homepage = 'https://github.com/fribidi/fribidi' + +description = """ + The Free Implementation of the Unicode Bidirectional Algorithm. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/fribidi/fribidi/releases/download/v%(version)s'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['7fa16c80c81bd622f7b198d31356da139cc318a63fc7761217af4130903f54a2'] + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), + ('Autotools', '20220317'), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s', 'include/%(namelower)s/%(namelower)s.h', + 'lib/lib%%(namelower)s.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'lang' 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/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..58a5162ab77 --- /dev/null +++ b/easybuild/easyconfigs/f/fastml/fastml-2.3-GCC-11.3.0.eb @@ -0,0 +1,39 @@ +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 + +# increase maximum template depth +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' diff --git a/easybuild/easyconfigs/f/ffnvcodec/ffnvcodec-12.1.14.0.eb b/easybuild/easyconfigs/f/ffnvcodec/ffnvcodec-12.1.14.0.eb new file mode 100644 index 00000000000..cf37dfdf36b --- /dev/null +++ b/easybuild/easyconfigs/f/ffnvcodec/ffnvcodec-12.1.14.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'ffnvcodec' +version = '12.1.14.0' + +homepage = 'https://git.videolan.org/?p=ffmpeg/nv-codec-headers.git' + +description = """FFmpeg nvidia headers. Adds support for nvenc and nvdec. Requires Nvidia GPU and drivers to be present +(picked up dynamically).""" + +toolchain = SYSTEM + +sources = [{ + 'git_config': { + 'url': 'https://git.videolan.org/git/ffmpeg/', + 'repo_name': 'nv-codec-headers', + 'tag': 'n%(version)s', + }, + 'filename': SOURCE_TAR_GZ, +}] +checksums = [None] + +skipsteps = ['configure'] + +preinstallopts = 'sed -i "s|PREFIX =.*|PREFIX ?= %(installdir)s|" Makefile && ' + +sanity_check_paths = { + 'files': ['include/ffnvcodec/nvEncodeAPI.h', 'lib/pkgconfig/ffnvcodec.pc'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..79b1a625e7e --- /dev/null +++ b/easybuild/easyconfigs/f/flit/flit-3.9.0-GCCcore-13.2.0.eb @@ -0,0 +1,71 @@ +easyblock = 'PythonBundle' + +name = 'flit' +version = '3.9.0' + +homepage = 'https://github.com/pypa/flit' +description = "A simple packaging tool for simple packages." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('binutils', '2.40'), + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.5'), +] + +exts_default_options = { + 'download_dep_fail': True, + 'sanity_pip_check': True, + 'use_pip': True, +} + +exts_list = [ + ('idna', '3.4', { + 'checksums': ['814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4'], + }), + ('certifi', '2023.7.22', { + 'checksums': ['539cc1d13202e33ca466e88b2807e29f4c13049d6d87031a3c110744495cb082'], + }), + ('urllib3', '2.0.7', { + 'checksums': ['c97dfde1f7bd43a71c8d2a58e369e9b2bf692d1334ea9f9cae55add7d0dd0f84'], + }), + ('charset-normalizer', '3.3.1', { + 'checksums': ['d9137a876020661972ca6eec0766d81aef8a5627df628b664b234b73396e727e'], + }), + ('packaging', '23.2', { + 'checksums': ['048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5'], + }), + ('setuptools-scm', '8.0.4', { + 'checksums': ['b5f43ff6800669595193fd09891564ee9d1d7dcb196cab4b2506d53a2e1c95c7'], + }), + ('typing_extensions', '4.8.0', { + 'checksums': ['df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef'], + }), + ('flit_scm', '1.7.0', { + 'checksums': ['961bd6fb24f31bba75333c234145fff88e6de0a90fc0f7e5e7c79deca69f6bb2'], + }), + ('requests', '2.31.0', { + 'checksums': ['942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1'], + }), + ('docutils', '0.20.1', { + 'checksums': ['f08a4e276c3a1583a86dce3e34aba3fe04d02bba2dd51ed16106244e8a923e3b'], + }), + ('tomli_w', '1.0.0', { + 'checksums': ['f463434305e0336248cac9c2dc8076b707d8a12d019dd349f5c1e382dd1ae1b9'], + }), + (name, version, { + 'checksums': ['d75edf5eb324da20d53570a6a6f87f51e606eee8384925cd66a90611140844c7'], + }), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'], +} + +moduleclass = 'tools' 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 new file mode 100644 index 00000000000..bf12e82517f --- /dev/null +++ b/easybuild/easyconfigs/f/flook/flook-0.8.1-GCC-11.3.0.eb @@ -0,0 +1,23 @@ +name = 'flook' +version = '0.8.1' + +homepage = 'https://github.com/ElectronicStructureLibrary/flook' +description = """The fortran-Lua-hook library.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/ElectronicStructureLibrary/flook/archive/'] +sources = ['v%(version)s/flook-%(version)s.tar.gz'] +patches = [ + ('flook-%(version)s_setup.make', './setup.make'), + 'flook-%(version)s_flook.pc.in.patch', +] +checksums = [ + {'flook-0.8.1.tar.gz': 'beb15b8cb57b7a2facc7a5094326aaa877fda4fe35f8aabac023232c2e12d97e'}, + {'flook-0.8.1_setup.make': '6df3f53faa8a8fe61534ded997c5e748d0327c13b18972fbbf49eacbda30d6e0'}, + {'flook-0.8.1_flook.pc.in.patch': '73ff61d8bc224c32cb285313615a465c0ce0a6b34e22ef5cf08291a27cee8796'}, +] + +dependencies = [('Lua', '5.4.4')] + +moduleclass = 'data' 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 new file mode 100644 index 00000000000..485caf113fa --- /dev/null +++ b/easybuild/easyconfigs/f/flook/flook-0.8.1_flook.pc.in.patch @@ -0,0 +1,14 @@ +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 ++++ b/flook.pc.in +@@ -10,5 +10,5 @@ Version: @PROJECT_VERSION@ + URL: https://github.com/ElectronicStructureLibrary/flook + Cflags: -I${includedir} + Libs.private: -ldl +-Libs: -L${libdir} -lflookall ++Libs: -L${libdir} -lflookall -llua -ldl + diff --git a/easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCC-10.3.0.eb b/easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCC-10.3.0.eb new file mode 100644 index 00000000000..4b66aff9361 --- /dev/null +++ b/easybuild/easyconfigs/f/forbear/forbear-1.2.0-GCC-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': 'GCC', 'version': '10.3.0'} + +source_urls = ['https://github.com/szaghi/forbear/archive'] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'forbear-1.2.0_use_external_FACE.patch', +] +checksums = [ + '3cff81c27c33edada152cca8429b0d6e45ac109f1f135561cd01aacf4d5fd3be', # v1.2.0.tar.gz + '99e5dd2d901b1b70eb9a89a5754de56dfe705c15c45cd69e83d6c52ff5a9c80b', # forbear-1.2.0_use_external_FACE.patch +] + +builddependencies = [ + ('FoBiS', '3.0.5'), +] + +dependencies = [ + ('FACE', '1.1.1'), +] + +build_cmd = 'FoBiS.py build' +buildopts = '-mode shared-gnu ' +buildopts += '-verbose ' + +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..70cdcb09067 --- /dev/null +++ b/easybuild/easyconfigs/f/forbear/forbear-1.2.0_use_external_FACE.patch @@ -0,0 +1,97 @@ +Use external FACE build + +Åke Sandgren, 2022-01-25 +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 ++include = $EBROOTFACE/include ++ext_libs = face + + [template-static-gnu] + compiler = gnu +@@ -130,6 +132,8 @@ colors = True + quiet = False + log = True + jobs = 2 ++include = $EBROOTFACE/include ++ext_libs = face + + [template-shared-gnu-debug] + compiler = gnu +@@ -144,6 +148,8 @@ colors = True + quiet = False + log = True + jobs = 2 ++include = $EBROOTFACE/include ++ext_libs = face + + [template-static-gnu-debug] + compiler = gnu +@@ -158,6 +164,8 @@ colors = True + quiet = False + log = True + jobs = 2 ++include = $EBROOTFACE/include ++ext_libs = face + + [template-shared-intel] + compiler = intel +@@ -171,6 +179,8 @@ colors = True + quiet = False + log = True + jobs = 2 ++include = $EBROOTFACE/include ++ext_libs = face + + [template-static-intel] + compiler = intel +@@ -184,6 +194,8 @@ colors = True + quiet = False + log = True + jobs = 2 ++include = $EBROOTFACE/include ++ext_libs = face + + [template-shared-intel-debug] + compiler = intel +@@ -198,6 +210,8 @@ colors = True + quiet = False + log = True + jobs = 2 ++include = $EBROOTFACE/include ++ext_libs = face + + [template-static-intel-debug] + compiler = intel +@@ -212,6 +226,8 @@ colors = True + quiet = False + log = True + jobs = 2 ++include = $EBROOTFACE/include ++ext_libs = face + + [template-static-pgi] + compiler = pgi +@@ -225,6 +241,8 @@ colors = True + quiet = False + log = True + jobs = 2 ++include = $EBROOTFACE/include ++ext_libs = face + + [template-static-pgi-debug] + compiler = pgi +@@ -239,6 +257,8 @@ colors = True + quiet = False + log = True + jobs = 2 ++include = $EBROOTFACE/include ++ext_libs = face + + # rules + [rule-makedoc] 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/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..229958da639 --- /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' diff --git a/easybuild/easyconfigs/f/freeglut/freeglut-3.4.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/f/freeglut/freeglut-3.4.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..c583a0ee0ab --- /dev/null +++ b/easybuild/easyconfigs/f/freeglut/freeglut-3.4.0-GCCcore-12.3.0.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeMake' + +name = 'freeglut' +version = '3.4.0' + +homepage = 'http://freeglut.sourceforge.net/' +description = "freeglut is a completely OpenSourced alternative to the OpenGL Utility Toolkit (GLUT) library." + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['3c0bcb915d9b180a97edaebd011b7a1de54583a838644dcd42bb0ea0c6f3eaec'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), +] + +dependencies = [ + ('X11', '20230603'), + ('Mesa', '23.1.4'), + ('libGLU', '9.0.3'), +] + +configopts = ' -DX11_X11_LIB="$EBROOTX11/lib/libX11.%s" ' % SHLIB_EXT +configopts += ' -DX11_X11_INCLUDE_PATH="$EBROOTX11/include/X11" ' +configopts += ' -DX11_Xext_LIB="$EBROOTX11/lib/libXext.%s" ' % SHLIB_EXT +configopts += ' -DX11_Xrandr_LIB="$EBROOTX11/lib/libXrandr.%s" ' % SHLIB_EXT +configopts += ' -DX11_Xrandr_INCLUDE_PATH="$EBROOTX11/include/X11/extensions/" ' +configopts += ' -DX11_Xi_LIB="$EBROOTX11/lib/libXrandr.%s" ' % SHLIB_EXT +configopts += ' -DX11_Xi_INCLUDE_PATH="$EBROOTX11/include/X11/extensions/" ' + +sanity_check_paths = { + 'files': [('lib/libglut.a', 'lib64/libglut.a'), ('lib/libglut.%s' % SHLIB_EXT, 'lib64/libglut.%s' % SHLIB_EXT)], + 'dirs': ['include/GL'], +} + +moduleclass = 'lib' 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..5e0c755cc15 --- /dev/null +++ b/easybuild/easyconfigs/f/ftfy/ftfy-6.1.1-GCCcore-11.3.0.eb @@ -0,0 +1,33 @@ +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'} + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('Python', '3.10.4'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'checksums': ['bfc2019f84fcd851419152320a6375604a0f1459c281b5b199b2cd0d2e727f8f'], + }), +] + +moduleclass = "tools" diff --git a/easybuild/easyconfigs/f/futile/futile-1.8.3-foss-2022a.eb b/easybuild/easyconfigs/f/futile/futile-1.8.3-foss-2022a.eb new file mode 100644 index 00000000000..988ef7be561 --- /dev/null +++ b/easybuild/easyconfigs/f/futile/futile-1.8.3-foss-2022a.eb @@ -0,0 +1,46 @@ +easyblock = 'ConfigureMake' + +name = 'futile' +version = '1.8.3' + +homepage = 'https://launchpad.net/futile' +description = """ + The FUTILE project (Fortran Utilities for the Treatment of Innermost Level of Executables) is a set of modules + and wrapper that encapsulate the most common low-level operations of a Fortran code. + """ + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'pic': True, 'usempi': True, 'openmp': True} + +source_urls = ['https://launchpad.net/bigdft/%(version_major_minor)s/%(version)s/+download/'] +sources = ['bigdft-suite-%(version)s.tar.gz'] +patches = ['futile_index_bug.patch'] +checksums = [ + '39aeae8bd62ad5d82ed20a47006aa478d93b3751ae7929027088c2e6b8439388', # bigdft-suite-1.8.3.tar.gz + '5ef5f8ad7644259da0d2d2bcb64c44b923cb64b1eedf03898d0da18228ea392f', # futile_index_bug.patch +] + +unpack_options = " spred-suite/futile-%(version_major_minor)s.tar.gz --strip 1 && " +unpack_options += "tar xzf futile-%(version_major_minor)s.tar.gz --transform='s,%(version_major_minor)s,%(version)s,'" +start_dir = "futile-%(version)s" + +builddependencies = [ + ('pkg-config', '0.29.2'), +] +dependencies = [ + ('libyaml', '0.2.5'), +] + +preconfigopts = 'export FCFLAGS="$FCLAGS -fallow-argument-mismatch" && ' + +configopts = '--enable-dynamic-libraries ' +configopts += '--with-ext-linalg="$LIBSCALAPACK" ' +configopts += '--with-yaml-path=$EBROOTLIBYAML ' + +sanity_check_paths = { + 'files': ['include/futile.mod', 'include/futile.h', 'bin/futilevars.sh'] + + ['lib/libfutile-1.a', 'lib/libfutile-1.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/g/GCCcore/GCCcore-12.1.0.eb b/easybuild/easyconfigs/g/GCCcore/GCCcore-12.1.0.eb index 3482f6f3c16..bfbba25110c 100644 --- a/easybuild/easyconfigs/g/GCCcore/GCCcore-12.1.0.eb +++ b/easybuild/easyconfigs/g/GCCcore/GCCcore-12.1.0.eb @@ -34,7 +34,9 @@ patches = [ 'GCCcore-6.2.0-fix-find-isl.patch', 'GCCcore-9.3.0_gmp-c99.patch', 'GCCcore-12.1.0_allow-pragma-wself-init.patch', + 'GCCcore-12.1.0_fix-double-destruct.patch', 'GCCcore-12.1.0_fix-Wuninitialized-in-AVX-headers.patch', + 'GCCcore-12.2.0_fix-avx512-misoptimization.patch', 'GCCcore-12.2.0_fix-vectorizer.patch', ] checksums = [ @@ -49,8 +51,11 @@ checksums = [ {'GCCcore-9.3.0_gmp-c99.patch': '0e135e1cc7cec701beea9d7d17a61bab34cfd496b4b555930016b98db99f922e'}, {'GCCcore-12.1.0_allow-pragma-wself-init.patch': '464f5faa9b23e805995d10dcdacca83df6321cac70826e9a3bc5bc9cd737f6a1'}, + {'GCCcore-12.1.0_fix-double-destruct.patch': '2e09c125318b6c15ec60f1807d77fb7d1f32b64a4e5d1c9a3da89ba2ca738d35'}, {'GCCcore-12.1.0_fix-Wuninitialized-in-AVX-headers.patch': '0ea675960795e238a43ae7d685a0082b21f0b63cf2fe499f6d55e89e0aaee392'}, + {'GCCcore-12.2.0_fix-avx512-misoptimization.patch': + 'bb3db707727b9975b0005346ef04230a96b3ad896f004a34262a82a244b5d436'}, {'GCCcore-12.2.0_fix-vectorizer.patch': '0b76fc379308fd189ee39c4a3a49facacf8ede08dbec4280f289341083f1632b'}, ] diff --git a/easybuild/easyconfigs/g/GCCcore/GCCcore-12.1.0_fix-double-destruct.patch b/easybuild/easyconfigs/g/GCCcore/GCCcore-12.1.0_fix-double-destruct.patch new file mode 100644 index 00000000000..55c77a2427d --- /dev/null +++ b/easybuild/easyconfigs/g/GCCcore/GCCcore-12.1.0_fix-double-destruct.patch @@ -0,0 +1,195 @@ +Backport of upstream commit 7fae9873a74c7a5a62044bb6a4cde8e3ac1a5e5d (by Jason Merrill ) +Fixes a misoptimization in C++ where an object might get destroyed twice +when an exception is throw while it is returned. +See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112301 + +Author: Alexander Grund (TU Dresden) + +diff --git a/gcc/cp/except.cc b/gcc/cp/except.cc +index da0a65c613d..31138ebc75f 100644 +--- a/gcc/cp/except.cc ++++ b/gcc/cp/except.cc +@@ -1355,6 +1355,14 @@ maybe_splice_retval_cleanup (tree compound_stmt) + tsi_delink (&iter); + } + tree dtor = build_cleanup (retval); ++ if (!function_body) ++ { ++ /* Clear the sentinel so we don't try to destroy the retval again on ++ rethrow (c++/112301). */ ++ tree clear = build2 (MODIFY_EXPR, boolean_type_node, ++ current_retval_sentinel, boolean_false_node); ++ dtor = build2 (COMPOUND_EXPR, void_type_node, clear, dtor); ++ } + tree cond = build3 (COND_EXPR, void_type_node, current_retval_sentinel, + dtor, void_node); + tree cleanup = build_stmt (loc, CLEANUP_STMT, +diff --git a/gcc/cp/semantics.cc b/gcc/cp/semantics.cc +index ab48f11c9be..3520360225c 100644 +--- a/gcc/cp/semantics.cc ++++ b/gcc/cp/semantics.cc +@@ -4817,6 +4817,7 @@ public: + tree var; + tree result; + hash_table > visited; ++ bool in_nrv_cleanup; + }; + + /* Helper function for walk_tree, used by finalize_nrv below. */ +@@ -4840,7 +4841,35 @@ finalize_nrv_r (tree* tp, int* walk_subtrees, void* data) + thrown. */ + else if (TREE_CODE (*tp) == CLEANUP_STMT + && CLEANUP_DECL (*tp) == dp->var) +- CLEANUP_EH_ONLY (*tp) = 1; ++ { ++ dp->in_nrv_cleanup = true; ++ cp_walk_tree (&CLEANUP_BODY (*tp), finalize_nrv_r, data, 0); ++ dp->in_nrv_cleanup = false; ++ cp_walk_tree (&CLEANUP_EXPR (*tp), finalize_nrv_r, data, 0); ++ *walk_subtrees = 0; ++ ++ CLEANUP_EH_ONLY (*tp) = true; ++ ++ /* If a cleanup might throw, we need to clear current_retval_sentinel on ++ the exception path so an outer cleanup added by ++ maybe_splice_retval_cleanup doesn't run. */ ++ if (cp_function_chain->throwing_cleanup) ++ { ++ tree clear = build2 (MODIFY_EXPR, boolean_type_node, ++ current_retval_sentinel, ++ boolean_false_node); ++ ++ /* We're already only on the EH path, just prepend it. */ ++ tree &exp = CLEANUP_EXPR (*tp); ++ exp = build2 (COMPOUND_EXPR, void_type_node, clear, exp); ++ } ++ } ++ /* Disable maybe_splice_retval_cleanup within the NRV cleanup scope, we don't ++ want to destroy the retval before the variable goes out of scope. */ ++ else if (TREE_CODE (*tp) == CLEANUP_STMT ++ && dp->in_nrv_cleanup ++ && CLEANUP_DECL (*tp) == dp->result) ++ CLEANUP_EXPR (*tp) = void_node; + /* Replace the DECL_EXPR for the NRV with an initialization of the + RESULT_DECL, if needed. */ + else if (TREE_CODE (*tp) == DECL_EXPR +@@ -4896,6 +4925,7 @@ finalize_nrv (tree *tp, tree var, tree result) + + data.var = var; + data.result = result; ++ data.in_nrv_cleanup = false; + cp_walk_tree (tp, finalize_nrv_r, &data, 0); + } + +diff --git a/gcc/testsuite/g++.dg/eh/return1.C b/gcc/testsuite/g++.dg/eh/return1.C +index ac2225405da..7224b2c162e 100644 +--- a/gcc/testsuite/g++.dg/eh/return1.C ++++ b/gcc/testsuite/g++.dg/eh/return1.C +@@ -16,13 +16,14 @@ extern "C" int printf (const char *, ...); + + struct X + { +- X(bool throws) : throws_(throws) { ++c; DEBUG; } +- X(const X& x); // not defined ++ X(bool throws) : i(-42), throws_(throws) { ++c; DEBUG; } ++ X(const X& x): i(x.i), throws_(x.throws_) { ++c; DEBUG; } + ~X() THROWS + { +- ++d; DEBUG; ++ i = ++d; DEBUG; + if (throws_) { throw 1; } + } ++ int i; + private: + bool throws_; + }; +@@ -54,6 +55,75 @@ X i() + return X(false); + } + ++// c++/112301 ++X i3() ++{ ++ try { ++ X x(true); ++ return X(false); ++ } catch(...) { throw; } ++} ++ ++X i4() ++{ ++ try { ++ X x(true); ++ X x2(false); ++ return x2; ++ } catch(...) { throw; } ++} ++ ++X i4a() ++{ ++ try { ++ X x2(false); ++ X x(true); ++ return x2; ++ } catch(...) { throw; } ++} ++ ++X i4b() ++{ ++ X x(true); ++ X x2(false); ++ return x2; ++} ++ ++X i4c() ++{ ++ X x2(false); ++ X x(true); ++ return x2; ++} ++ ++X i5() ++{ ++ X x2(false); ++ ++ try { ++ X x(true); ++ return x2; ++ } catch(...) { ++ if (x2.i != -42) ++ d += 42; ++ throw; ++ } ++} ++ ++X i6() ++{ ++ X x2(false); ++ ++ try { ++ X x(true); ++ return x2; ++ } catch(...) { ++ if (x2.i != -42) ++ d += 42; ++ } ++ return x2; ++} ++ + X j() + { + try { +@@ -92,6 +162,13 @@ int main() + + try { i(); } + catch (...) {} ++ try { i3(); } catch (...) {} ++ try { i4(); } catch (...) {} ++ try { i4a(); } catch (...) {} ++ try { i4b(); } catch (...) {} ++ try { i4c(); } catch (...) {} ++ try { i5(); } catch (...) {} ++ try { i6(); } catch (...) {} + + try { j(); } catch (...) {} + diff --git a/easybuild/easyconfigs/g/GCCcore/GCCcore-12.2.0.eb b/easybuild/easyconfigs/g/GCCcore/GCCcore-12.2.0.eb index aa2a7e328a2..77c3d798705 100644 --- a/easybuild/easyconfigs/g/GCCcore/GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/g/GCCcore/GCCcore-12.2.0.eb @@ -34,7 +34,9 @@ patches = [ 'GCCcore-6.2.0-fix-find-isl.patch', 'GCCcore-9.3.0_gmp-c99.patch', 'GCCcore-12.1.0_allow-pragma-wself-init.patch', + 'GCCcore-12.1.0_fix-double-destruct.patch', 'GCCcore-12.1.0_fix-Wuninitialized-in-AVX-headers.patch', + 'GCCcore-12.2.0_fix-avx512-misoptimization.patch', 'GCCcore-12.2.0_fix-vectorizer.patch', 'GCCcore-12.2.0_improve-cuda-compatibility.patch', ] @@ -50,8 +52,11 @@ checksums = [ {'GCCcore-9.3.0_gmp-c99.patch': '0e135e1cc7cec701beea9d7d17a61bab34cfd496b4b555930016b98db99f922e'}, {'GCCcore-12.1.0_allow-pragma-wself-init.patch': '464f5faa9b23e805995d10dcdacca83df6321cac70826e9a3bc5bc9cd737f6a1'}, + {'GCCcore-12.1.0_fix-double-destruct.patch': '2e09c125318b6c15ec60f1807d77fb7d1f32b64a4e5d1c9a3da89ba2ca738d35'}, {'GCCcore-12.1.0_fix-Wuninitialized-in-AVX-headers.patch': '0ea675960795e238a43ae7d685a0082b21f0b63cf2fe499f6d55e89e0aaee392'}, + {'GCCcore-12.2.0_fix-avx512-misoptimization.patch': + 'bb3db707727b9975b0005346ef04230a96b3ad896f004a34262a82a244b5d436'}, {'GCCcore-12.2.0_fix-vectorizer.patch': '0b76fc379308fd189ee39c4a3a49facacf8ede08dbec4280f289341083f1632b'}, {'GCCcore-12.2.0_improve-cuda-compatibility.patch': '91d00122554b56381592229398540e63baa26d03633292a7fdf338407a4a62d5'}, diff --git a/easybuild/easyconfigs/g/GCCcore/GCCcore-12.2.0_fix-avx512-misoptimization.patch b/easybuild/easyconfigs/g/GCCcore/GCCcore-12.2.0_fix-avx512-misoptimization.patch new file mode 100644 index 00000000000..04f468739d8 --- /dev/null +++ b/easybuild/easyconfigs/g/GCCcore/GCCcore-12.2.0_fix-avx512-misoptimization.patch @@ -0,0 +1,25 @@ +Fix a typo causing inverted semantics when (even AVX2) code is compiled for AVX512 systems, e.g. via -march=native +See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112443 where the changeset is from. + +diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md +index 2ce1aed4ad9..d7e058c2517 100644 +--- a/gcc/config/i386/sse.md ++++ b/gcc/config/i386/sse.md +@@ -16350,7 +16350,7 @@ + (match_dup 4))] + UNSPEC_BLENDV))] + { +- if (INTVAL (operands[5]) == 1) ++ if (INTVAL (operands[5]) == 5) + std::swap (operands[1], operands[2]); + operands[3] = gen_lowpart (mode, operands[3]); + }) +@@ -16380,7 +16380,7 @@ + (match_dup 4))] + UNSPEC_BLENDV))] + { +- if (INTVAL (operands[5]) == 1) ++ if (INTVAL (operands[5]) == 5) + std::swap (operands[1], operands[2]); + }) + diff --git a/easybuild/easyconfigs/g/GCCcore/GCCcore-12.3.0.eb b/easybuild/easyconfigs/g/GCCcore/GCCcore-12.3.0.eb index c9fe0e62a87..91dd99aa90d 100644 --- a/easybuild/easyconfigs/g/GCCcore/GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/g/GCCcore/GCCcore-12.3.0.eb @@ -33,6 +33,8 @@ sources = [ patches = [ 'GCCcore-6.2.0-fix-find-isl.patch', 'GCCcore-9.3.0_gmp-c99.patch', + 'GCCcore-12.1.0_fix-double-destruct.patch', + 'GCCcore-12.2.0_fix-avx512-misoptimization.patch', 'GCCcore-12.2.0_improve-cuda-compatibility.patch', ] checksums = [ @@ -45,6 +47,9 @@ checksums = [ {'nvptx-tools-20230122.tar.gz': 'af05fac26e9a83d337758a5495dc35f7a7bbfd90cd09f4a5d3242d059f235e08'}, {'GCCcore-6.2.0-fix-find-isl.patch': '5ad909606d17d851c6ad629b4fddb6c1621844218b8d139fed18c502a7696c68'}, {'GCCcore-9.3.0_gmp-c99.patch': '0e135e1cc7cec701beea9d7d17a61bab34cfd496b4b555930016b98db99f922e'}, + {'GCCcore-12.1.0_fix-double-destruct.patch': '2e09c125318b6c15ec60f1807d77fb7d1f32b64a4e5d1c9a3da89ba2ca738d35'}, + {'GCCcore-12.2.0_fix-avx512-misoptimization.patch': + 'bb3db707727b9975b0005346ef04230a96b3ad896f004a34262a82a244b5d436'}, {'GCCcore-12.2.0_improve-cuda-compatibility.patch': '91d00122554b56381592229398540e63baa26d03633292a7fdf338407a4a62d5'}, ] diff --git a/easybuild/easyconfigs/g/GCCcore/GCCcore-13.1.0.eb b/easybuild/easyconfigs/g/GCCcore/GCCcore-13.1.0.eb index 5805f7d8a96..6b8e8a19de6 100644 --- a/easybuild/easyconfigs/g/GCCcore/GCCcore-13.1.0.eb +++ b/easybuild/easyconfigs/g/GCCcore/GCCcore-13.1.0.eb @@ -33,6 +33,8 @@ sources = [ patches = [ 'GCCcore-6.2.0-fix-find-isl.patch', 'GCCcore-9.3.0_gmp-c99.patch', + 'GCCcore-12.1.0_fix-double-destruct.patch', + 'GCCcore-12.2.0_fix-avx512-misoptimization.patch', ] checksums = [ {'gcc-13.1.0.tar.gz': 'bacd4c614d8bd5983404585e53478d467a254249e0f1bb747c8bc6d787bd4fa2'}, @@ -44,6 +46,9 @@ checksums = [ {'nvptx-tools-20230122.tar.gz': 'af05fac26e9a83d337758a5495dc35f7a7bbfd90cd09f4a5d3242d059f235e08'}, {'GCCcore-6.2.0-fix-find-isl.patch': '5ad909606d17d851c6ad629b4fddb6c1621844218b8d139fed18c502a7696c68'}, {'GCCcore-9.3.0_gmp-c99.patch': '0e135e1cc7cec701beea9d7d17a61bab34cfd496b4b555930016b98db99f922e'}, + {'GCCcore-12.1.0_fix-double-destruct.patch': '2e09c125318b6c15ec60f1807d77fb7d1f32b64a4e5d1c9a3da89ba2ca738d35'}, + {'GCCcore-12.2.0_fix-avx512-misoptimization.patch': + 'bb3db707727b9975b0005346ef04230a96b3ad896f004a34262a82a244b5d436'}, ] builddependencies = [ diff --git a/easybuild/easyconfigs/g/GCCcore/GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/GCCcore/GCCcore-13.2.0.eb index c71dc05e7aa..85c2772cbfa 100644 --- a/easybuild/easyconfigs/g/GCCcore/GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/g/GCCcore/GCCcore-13.2.0.eb @@ -33,6 +33,8 @@ sources = [ patches = [ 'GCCcore-6.2.0-fix-find-isl.patch', 'GCCcore-9.3.0_gmp-c99.patch', + 'GCCcore-12.1.0_fix-double-destruct.patch', + 'GCCcore-12.2.0_fix-avx512-misoptimization.patch', ] checksums = [ {'gcc-13.2.0.tar.gz': '8cb4be3796651976f94b9356fa08d833524f62420d6292c5033a9a26af315078'}, @@ -44,6 +46,9 @@ checksums = [ {'nvptx-tools-20230725.tar.gz': '17ce1f2c64f09c6f1cb709e3af869bb90b0102c412f25da55f338e35bc74b2e2'}, {'GCCcore-6.2.0-fix-find-isl.patch': '5ad909606d17d851c6ad629b4fddb6c1621844218b8d139fed18c502a7696c68'}, {'GCCcore-9.3.0_gmp-c99.patch': '0e135e1cc7cec701beea9d7d17a61bab34cfd496b4b555930016b98db99f922e'}, + {'GCCcore-12.1.0_fix-double-destruct.patch': '2e09c125318b6c15ec60f1807d77fb7d1f32b64a4e5d1c9a3da89ba2ca738d35'}, + {'GCCcore-12.2.0_fix-avx512-misoptimization.patch': + 'bb3db707727b9975b0005346ef04230a96b3ad896f004a34262a82a244b5d436'}, ] builddependencies = [ diff --git a/easybuild/easyconfigs/g/GDB/GDB-10.1-GCCcore-10.2.0.eb b/easybuild/easyconfigs/g/GDB/GDB-10.1-GCCcore-10.2.0.eb index ce542957783..0300093f744 100644 --- a/easybuild/easyconfigs/g/GDB/GDB-10.1-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/g/GDB/GDB-10.1-GCCcore-10.2.0.eb @@ -41,4 +41,9 @@ sanity_check_paths = { 'dirs': [], } +sanity_check_commands = [ + 'gdb --help', + 'gdbserver --help', +] + moduleclass = 'debugger' diff --git a/easybuild/easyconfigs/g/GDB/GDB-10.2-GCCcore-10.3.0.eb b/easybuild/easyconfigs/g/GDB/GDB-10.2-GCCcore-10.3.0.eb index a036bbe3b5d..887741cbd05 100644 --- a/easybuild/easyconfigs/g/GDB/GDB-10.2-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/g/GDB/GDB-10.2-GCCcore-10.3.0.eb @@ -41,4 +41,9 @@ sanity_check_paths = { 'dirs': [], } +sanity_check_commands = [ + 'gdb --help', + 'gdbserver --help', +] + moduleclass = 'debugger' diff --git a/easybuild/easyconfigs/g/GDB/GDB-10.2-GCCcore-9.3.0-Python-3.8.2.eb b/easybuild/easyconfigs/g/GDB/GDB-10.2-GCCcore-9.3.0-Python-3.8.2.eb index a232a09da3b..2ee9015802d 100644 --- a/easybuild/easyconfigs/g/GDB/GDB-10.2-GCCcore-9.3.0-Python-3.8.2.eb +++ b/easybuild/easyconfigs/g/GDB/GDB-10.2-GCCcore-9.3.0-Python-3.8.2.eb @@ -42,4 +42,9 @@ sanity_check_paths = { 'dirs': [], } +sanity_check_commands = [ + 'gdb --help', + 'gdbserver --help', +] + moduleclass = 'debugger' diff --git a/easybuild/easyconfigs/g/GDB/GDB-11.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/g/GDB/GDB-11.1-GCCcore-11.2.0.eb index fe451504a66..a456f0500a8 100644 --- a/easybuild/easyconfigs/g/GDB/GDB-11.1-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/g/GDB/GDB-11.1-GCCcore-11.2.0.eb @@ -41,4 +41,9 @@ sanity_check_paths = { 'dirs': [], } +sanity_check_commands = [ + 'gdb --help', + 'gdbserver --help', +] + moduleclass = 'debugger' diff --git a/easybuild/easyconfigs/g/GDB/GDB-12.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/GDB/GDB-12.1-GCCcore-11.3.0.eb index 0ff055c409e..3ade2afc70d 100644 --- a/easybuild/easyconfigs/g/GDB/GDB-12.1-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/g/GDB/GDB-12.1-GCCcore-11.3.0.eb @@ -41,4 +41,9 @@ sanity_check_paths = { 'dirs': [], } +sanity_check_commands = [ + 'gdb --help', + 'gdbserver --help', +] + moduleclass = 'debugger' diff --git a/easybuild/easyconfigs/g/GDB/GDB-13.2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/g/GDB/GDB-13.2-GCCcore-12.3.0.eb index df3bd632ae8..431a3fa995e 100644 --- a/easybuild/easyconfigs/g/GDB/GDB-13.2-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/g/GDB/GDB-13.2-GCCcore-12.3.0.eb @@ -41,4 +41,9 @@ sanity_check_paths = { 'dirs': [], } +sanity_check_commands = [ + 'gdb --help', + 'gdbserver --help', +] + moduleclass = 'debugger' diff --git a/easybuild/easyconfigs/g/GDB/GDB-13.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/GDB/GDB-13.2-GCCcore-13.2.0.eb index 574aef91ec3..ac981628400 100644 --- a/easybuild/easyconfigs/g/GDB/GDB-13.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/g/GDB/GDB-13.2-GCCcore-13.2.0.eb @@ -41,4 +41,9 @@ sanity_check_paths = { 'dirs': [], } +sanity_check_commands = [ + 'gdb --help', + 'gdbserver --help', +] + moduleclass = 'debugger' diff --git a/easybuild/easyconfigs/g/GFF3-toolkit/GFF3-toolkit-2.1.0-foss-2022a.eb b/easybuild/easyconfigs/g/GFF3-toolkit/GFF3-toolkit-2.1.0-foss-2022a.eb new file mode 100644 index 00000000000..6698ca78b96 --- /dev/null +++ b/easybuild/easyconfigs/g/GFF3-toolkit/GFF3-toolkit-2.1.0-foss-2022a.eb @@ -0,0 +1,35 @@ +easyblock = 'PythonPackage' + +name = 'GFF3-toolkit' +version = '2.1.0' + +homepage = 'https://gff3toolkit.readthedocs.io' +description = "Python programs for processing GFF3 files" + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = ['https://pypi.python.org/packages/source/g/gff3tool'] +sources = ['gff3tool-%(version)s.tar.gz'] +patches = ['GFF3-toolkit-2.1.0-remove-hardcode.patch'] +checksums = [ + {'gff3tool-2.1.0.tar.gz': 'e842ef4afdb66926a2b63bf2619c7ef30bd9b76a5f1084a5c57bf8b39cc4f15d'}, + {'GFF3-toolkit-2.1.0-remove-hardcode.patch': '03696635af25ab1e3d650b46c7aeaaaadb31e7eac766039c758150f3f3162cb7'}, +] + +dependencies = [ + ('Python', '3.10.4'), + ('BLAST+', '2.13.0'), +] + +# GFF3-toolkit has hardcoded path to BLAST+ libraries, so we have to add a symlink to the required path for this to work +local_blast_path = '%(installdir)s/lib/python%(pyshortver)s/site-packages/gff3tool/lib/ncbi-blast+' +preinstallopts = "mkdir -p %s && " % local_blast_path +preinstallopts += "ln -s $EBROOTBLASTPLUS/bin %s && " % local_blast_path + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +options = {'modulename': 'gff3tool'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GFF3-toolkit/GFF3-toolkit-2.1.0-remove-hardcode.patch b/easybuild/easyconfigs/g/GFF3-toolkit/GFF3-toolkit-2.1.0-remove-hardcode.patch new file mode 100644 index 00000000000..99aa1e1e734 --- /dev/null +++ b/easybuild/easyconfigs/g/GFF3-toolkit/GFF3-toolkit-2.1.0-remove-hardcode.patch @@ -0,0 +1,88 @@ +This patch removes the hardcoded part of the setup.py that downloads and installs BLAST+ +Author: Orient Kružík (INUITS) +diff -ruN gff3tool-2.1.0_orig/setup.py gff3tool-2.1.0/setup.py +--- gff3tool-2.1.0_orig/setup.py 2023-10-22 17:15:12.175583000 +0200 ++++ gff3tool-2.1.0/setup.py 2023-10-22 17:20:48.098956000 +0200 +@@ -6,69 +6,12 @@ + """ + # Always prefer setuptools over distutils + from setuptools import setup, find_packages +-from distutils.command.build import build + # To use a consistent encoding + from codecs import open +-from os import path, remove, mkdir +-import shutil +-import tarfile +-try: +- from urllib.request import urlretrieve +-except ImportError: +- from urllib import urlretrieve +- +-import platform +-import sys +-from wheel.bdist_wheel import bdist_wheel as _bdist_wheel +- ++from os import path + + here = path.abspath(path.dirname(__file__)) + +- +-class bdist_wheel(_bdist_wheel): +- def finalize_options(self): +- _bdist_wheel.finalize_options(self) +- # Mark us as not a pure python package +- self.root_is_pure = False +- +-class CustomBuildCommand(build): +- def run(self): +- platform_system = platform.system( +- ) # Linux: Linux; Mac:Darwin; Windows: Windows +- +- blast_path = path.join(here, 'gff3tool', 'lib', 'ncbi-blast+') +- blast_file = path.join(blast_path, 'blast.tgz') +- +- mkdir(blast_path) +- +- if platform_system == 'Linux': +- urlretrieve( +- 'https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.2.31/ncbi-blast-2.2.31+-x64-linux.tar.gz', +- blast_file) +- elif platform_system == 'Windows': +- urlretrieve( +- 'https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.2.31/ncbi-blast-2.2.31+-x64-win64.tar.gz', +- blast_file) +- elif platform_system == 'Darwin': +- urlretrieve( +- 'https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.2.31/ncbi-blast-2.2.31+-universal-macosx.tar.gz', +- blast_file) +- else: +- sys.error( +- 'GFF3 Toolkit currently only supports linux, windows, and MacOS' +- ) +- +- tar = tarfile.open(blast_file, 'r:gz') +- tar.extractall(blast_path) +- tar.close() +- +- extract_path = path.join(blast_path, 'ncbi-blast-2.2.31+') +- shutil.move(path.join(extract_path, 'bin'), blast_path) +- if path.exists(blast_file): +- remove(blast_file) +- if path.exists(extract_path): +- shutil.rmtree(extract_path) +- + # Get the long description from the README file + with open(path.join(here, 'README.md'), encoding='utf-8') as f: + long_description = f.read() +@@ -170,11 +113,6 @@ + # + packages=find_packages(exclude=['contrib', 'docs', 'tests']), # Required + +- cmdclass={ +- 'build': CustomBuildCommand, +- 'bdist_wheel': bdist_wheel +- }, +- + # This field lists other packages that your project depends on to run. + # Any package you put here will be installed by pip when your project is + # installed, so they must be valid existing projects. diff --git a/easybuild/easyconfigs/g/GLib/GLib-2.78.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/GLib/GLib-2.78.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..44fbd9759a5 --- /dev/null +++ b/easybuild/easyconfigs/g/GLib/GLib-2.78.1-GCCcore-13.2.0.eb @@ -0,0 +1,53 @@ +easyblock = 'MesonNinja' + +name = 'GLib' +version = '2.78.1' + +homepage = 'https://www.gtk.org/' +description = """GLib is one of the base libraries of the GTK+ project""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['915bc3d0f8507d650ead3832e2f8fb670fce59aac4d7754a7dab6f1e6fed78b2'] + +builddependencies = [ + # Python is required for building against GLib, at least when + # gdbus-codegen or one of the other python scripts are used. + # Since Meson 0.50 and later are Python >=3.5 only we can't build + # Python specific versions of GLib that uses Python 2.x + # thus Python should not be a runtime dependency for GLib. + # Packages that use GLib should either have an explicit + # (build)dependency on Python or it will use the system version + # EasyBuild itself uses. + ('Python', '3.11.5'), + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('libffi', '3.4.4'), + ('gettext', '0.22'), + ('libxml2', '2.11.5'), + ('PCRE2', '10.42'), + ('util-linux', '2.39'), +] + +# avoid using hardcoded path to Python binary in build step +preconfigopts = "export PYTHON=python && " + +configopts = "--buildtype=release --default-library=both " + +fix_python_shebang_for = ['bin/*'] + +sanity_check_paths = { + 'files': ['lib/libglib-%(version_major)s.0.a', 'lib/libglib-%%(version_major)s.0.%s' % SHLIB_EXT], + 'dirs': ['bin', 'include'], +} + + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/GMP-ECM/GMP-ECM-7.0.5-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/GMP-ECM/GMP-ECM-7.0.5-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..fcd43ea1f12 --- /dev/null +++ b/easybuild/easyconfigs/g/GMP-ECM/GMP-ECM-7.0.5-GCCcore-11.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'GMP-ECM' +version = '7.0.5' + +homepage = 'https://gitlab.inria.fr/zimmerma/ecm' +description = "Yet another implementation of the Elliptic Curve Method." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://gitlab.inria.fr/zimmerma/ecm/uploads/89f6f0d65d3e980cef33dc922004e4b2'] +sources = ['ecm-%(version)s.tar.gz'] +checksums = ['c721dd22e557c4a5dac9ac7e156a400cd2298812dd1f9b56e89966de01471ba8'] + +builddependencies = [ + ('M4', '1.4.19'), + ('binutils', '2.38'), +] + +dependencies = [('GMP', '6.2.1')] + +configopts = "--with-gmp=$EBROOTGMP --enable-shared " + +sanity_check_paths = { + 'files': ['bin/ecm', 'include/ecm.h'] + ['lib/libecm.%s' % e for e in ['a', SHLIB_EXT]], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.78.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.78.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..1a8a0f4320b --- /dev/null +++ b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.78.1-GCCcore-13.2.0.eb @@ -0,0 +1,44 @@ +easyblock = 'MesonNinja' + +name = 'GObject-Introspection' +version = '1.78.1' + +homepage = 'https://gi.readthedocs.io/en/latest/' +description = """GObject introspection is a middleware layer between C libraries + (using GObject) and language bindings. The C library can be scanned at + compile time and generate a metadata file, in addition to the actual + native C library. Then at runtime, language bindings can read this + metadata and automatically provide bindings to call into the C library.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['bd7babd99af7258e76819e45ba4a6bc399608fe762d83fde3cac033c50841bb4'] + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('cairo', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('GLib', '2.78.1'), + ('libffi', '3.4.4'), + ('util-linux', '2.39'), +] + +preconfigopts = "env GI_SCANNER_DISABLE_CACHE=true " + +sanity_check_paths = { + 'files': ['bin/g-ir-%s' % x for x in ['annotation-tool', 'compiler', 'generate', 'scanner']] + + ['lib/libgirepository-1.0.' + SHLIB_EXT], + 'dirs': ['include', 'share'] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/GPyTorch/GPyTorch-1.10-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/g/GPyTorch/GPyTorch-1.10-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..7ac2f0969e8 --- /dev/null +++ b/easybuild/easyconfigs/g/GPyTorch/GPyTorch-1.10-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'GPyTorch' +version = '1.10' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://gpytorch.ai' +description = "GPyTorch is a Gaussian process library implemented using PyTorch." + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('PyTorch', '1.12.0', versionsuffix), + ('scikit-learn', '1.1.2'), +] + +use_pip = True + +exts_list = [ + ('linear-operator', '0.4.0', { + 'source_tmpl': 'linear_operator-%(version)s.tar.gz', + 'checksums': ['7c57c9f8f258c9785c0db4dd7625f4dd03a340313d7314cba0b633644909f5c6'], + }), + (name, version, { + 'sources': ['%(namelower)s-%(version)s.tar.gz'], + 'checksums': ['6dc978ab9fbf220a845a4f1ea13104180fc50e6934081f421b37f6120afb7f18'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.3-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.3-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..e2b86108e93 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.3-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,88 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski +# * Fotis Georgatos +# * George Tsouloupas +# * Kenneth Hoste +# * Adam Huffman +# * Ake Sandgren +# * J. Sassmannshausen +# * Dugan Witherick +# * Christoph Siegert +# License:: MIT/GPL + +name = 'GROMACS' +version = '2023.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a GPU enabled build, containing both MPI and threadMPI binaries. + +It also contains the gmxapi extension for the single precision MPI build. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch', + 'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch', +] +checksums = [ + {'gromacs-2023.3.tar.gz': '4ec8f8d0c7af76b13f8fd16db8e2c120e749de439ae9554d9f653f812d78d1cb'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': + '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': + '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, +] + +builddependencies = [ + ('CMake', '3.24.3'), + ('scikit-build', '0.15.0'), +] + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('UCX-CUDA', '1.12.1', versionsuffix), + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('networkx', '2.8.4'), +] + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'source_tmpl': 'gromacs-2023.3.tar.gz', + 'start_dir': 'python_packaging/gmxapi', + 'checksums': ['4ec8f8d0c7af76b13f8fd16db8e2c120e749de439ae9554d9f653f812d78d1cb'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.3-foss-2022a.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.3-foss-2022a.eb new file mode 100644 index 00000000000..9a72a3c43d4 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.3-foss-2022a.eb @@ -0,0 +1,86 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski +# * Fotis Georgatos +# * George Tsouloupas +# * Kenneth Hoste +# * Adam Huffman +# * Ake Sandgren +# * J. Sassmannshausen +# * Dugan Witherick +# * Christoph Siegert +# License:: MIT/GPL + +name = 'GROMACS' +version = '2023.3' + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a CPU only build, containing both MPI and threadMPI binaries +for both single and double precision. + +It also contains the gmxapi extension for the single precision MPI build. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch', + 'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch', +] +checksums = [ + {'gromacs-2023.3.tar.gz': '4ec8f8d0c7af76b13f8fd16db8e2c120e749de439ae9554d9f653f812d78d1cb'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': + '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': + '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, +] + +builddependencies = [ + ('CMake', '3.24.3'), + ('scikit-build', '0.15.0'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('networkx', '2.8.4'), +] + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'source_tmpl': 'gromacs-2023.3.tar.gz', + 'start_dir': 'python_packaging/gmxapi', + 'checksums': ['4ec8f8d0c7af76b13f8fd16db8e2c120e749de439ae9554d9f653f812d78d1cb'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.3-foss-2023a.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.3-foss-2023a.eb new file mode 100644 index 00000000000..1b95cb75a41 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.3-foss-2023a.eb @@ -0,0 +1,87 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski +# * Fotis Georgatos +# * George Tsouloupas +# * Kenneth Hoste +# * Adam Huffman +# * Ake Sandgren +# * J. Sassmannshausen +# * Dugan Witherick +# * Christoph Siegert +# License:: MIT/GPL + +name = 'GROMACS' +version = '2023.3' + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a CPU only build, containing both MPI and threadMPI binaries +for both single and double precision. + +It also contains the gmxapi extension for the single precision MPI build. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch', + 'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch', +] +checksums = [ + {'gromacs-2023.3.tar.gz': '4ec8f8d0c7af76b13f8fd16db8e2c120e749de439ae9554d9f653f812d78d1cb'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': + '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': + '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('scikit-build', '0.17.6'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('networkx', '3.1'), + ('mpi4py', '3.1.4'), +] + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.4.2', { + 'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' + + '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ', + 'source_tmpl': 'gromacs-2023.3.tar.gz', + 'start_dir': 'python_packaging/gmxapi', + 'checksums': ['4ec8f8d0c7af76b13f8fd16db8e2c120e749de439ae9554d9f653f812d78d1cb'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.42.10-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.42.10-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..ac99b2584dd --- /dev/null +++ b/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.42.10-GCCcore-13.2.0.eb @@ -0,0 +1,46 @@ +easyblock = 'MesonNinja' + +name = 'Gdk-Pixbuf' +version = '2.42.10' + +homepage = 'https://docs.gtk.org/gdk-pixbuf/' +description = """ + The Gdk Pixbuf is a toolkit for image loading and pixel buffer manipulation. + It is used by GTK+ 2 and GTK+ 3 to load and manipulate images. In the past it + was distributed as part of GTK+ 2 but it was split off into a separate package + in preparation for the change to GTK+ 3. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['ee9b6c75d13ba096907a2e3c6b27b61bcd17f5c7ebeab5a5b439d2f2e39fe44b'] + +builddependencies = [ + ('binutils', '2.40'), + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('pkgconf', '2.0.3'), + ('GObject-Introspection', '1.78.1'), +] + +dependencies = [ + ('GLib', '2.78.1'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.40'), + ('LibTIFF', '4.6.0'), + ('X11', '20231019'), +] + +configopts = "--buildtype=release --default-library=both " +configopts += "-Dgio_sniffing=false -Dintrospection=enabled -Dman=false" + +sanity_check_paths = { + 'files': ['lib/libgdk_pixbuf-%(version_major)s.0.a', 'lib/libgdk_pixbuf-%%(version_major)s.0.%s' % SHLIB_EXT], + 'dirs': ['bin', 'include/gdk-pixbuf-%(version_major)s.0', 'lib/gdk-pixbuf-%(version_major)s.0', 'share'], +} + +sanity_check_commands = ["gdk-pixbuf-pixdata --help"] + +moduleclass = 'vis' 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' 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/g/Givaro/Givaro-4.2.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/Givaro/Givaro-4.2.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..ee09ead5dc2 --- /dev/null +++ b/easybuild/easyconfigs/g/Givaro/Givaro-4.2.0-GCCcore-11.3.0.eb @@ -0,0 +1,43 @@ +## +# This file is an EasyBuild recipe; see https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright (c) 2016 Riccardo Murri +# Authors:: Riccardo Murri +# License:: GPL +# +## + +easyblock = 'ConfigureMake' + +name = 'Givaro' +version = '4.2.0' + +homepage = 'https://github.com/linbox-team/givaro' +description = "C++ library for arithmetic and algebraic computations" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/linbox-team/givaro/archive'] +sources = ['v%(version)s.zip'] +checksums = ['bf51b47ac9a02be233fc39ac78d959d13630bcc78997007ffec410d940ed4c64'] + +builddependencies = [ + ('Autotools', '20220317'), + ('binutils', '2.38'), +] + +dependencies = [ + ('GMP', '6.2.1'), +] + +preconfigopts = "env NOCONFIGURE=1 ./autogen.sh && " +configopts = "--with-gmp=$EBROOTGMP --enable-inline" + +sanity_check_paths = { + 'files': ['bin/givaro-config', 'include/givaro-config.h'], + 'dirs': ['bin', 'include', 'lib'], +} + +sanity_check_commands = ["givaro-config --help"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/g/Graphene/Graphene-1.10.8-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/Graphene/Graphene-1.10.8-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..b8b16bdc898 --- /dev/null +++ b/easybuild/easyconfigs/g/Graphene/Graphene-1.10.8-GCCcore-13.2.0.eb @@ -0,0 +1,32 @@ +easyblock = 'MesonNinja' + +name = 'Graphene' +version = '1.10.8' + +homepage = 'https://ebassi.github.io/graphene/' +description = "Graphene is a thin layer of types for graphic libraries" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +github_account = 'ebassi' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['922dc109d2dc5dc56617a29bd716c79dd84db31721a8493a13a5f79109a4a4ed'] + +builddependencies = [ + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('pkgconf', '2.0.3'), + ('GObject-Introspection', '1.78.1'), + ('binutils', '2.40'), +] +dependencies = [('GLib', '2.78.1')] + +configopts = "-Dgobject_types=true -Dintrospection=enabled" + +sanity_check_paths = { + 'files': ['lib/libgraphene-1.0.%s' % SHLIB_EXT, 'share/gir-1.0/Graphene-1.0.gir'], + 'dirs': ['include/graphene-1.0', 'lib/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/gap/gap-4.12.2-foss-2022a.eb b/easybuild/easyconfigs/g/gap/gap-4.12.2-foss-2022a.eb new file mode 100644 index 00000000000..581ded19e05 --- /dev/null +++ b/easybuild/easyconfigs/g/gap/gap-4.12.2-foss-2022a.eb @@ -0,0 +1,57 @@ +easyblock = 'ConfigureMake' + +name = 'gap' +version = '4.12.2' + +homepage = 'https://www.gap-system.org' +description = """GAP is a system for computational discrete algebra, +with particular emphasis on Computational Group Theory.""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.gap-system.org/pub/gap/gap-%(version_major_minor)s/tar.gz/'] +sources = [SOURCE_TAR_GZ] +checksums = ['672308745eb78a222494ee8dd6786edd5bc331456fcc6456ac064bdb28d587a8'] + +unpack_options = '--strip-components=1' + +builddependencies = [ + ('Perl', '5.34.1'), # needed to install NormalizInterface +] + +dependencies = [ + ('GMP', '6.2.1'), + ('libreadline', '8.1.2'), + ('zlib', '1.2.12'), + ('4ti2', '1.6.9'), # needed by 4ti2Interface, HeLP + ('cddlib', '0.94m'), # needed by CddInterface + ('cURL', '7.83.0'), # needed by curlInterface + ('lrslib', '7.2'), # needed by HeLP + ('ncurses', '6.3'), # needed by Browse + ('Normaliz', '3.10.1'), # needed by NormalizInterface, HeLP + ('Singular', '4.3.2p10'), # needed by singular + ('ZeroMQ', '4.3.4'), # needed by ZeroMQInterface +] + +# install target is incomplete and hardcodes the build path +buildininstalldir = True + +# Disable bundled script to download and build Normaliz +prebuildopts = "sed -i 's|./build-normaliz.sh|continue # build-normaliz.sh|' bin/BuildPackages.sh && " +# BuildPackages.sh tries to build any GAP packages that require compilation +# If one fails due to missing dependencies, it's skipped automatically +buildopts = ' && cd pkg && ../bin/BuildPackages.sh' + +runtest = "testinstall" + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['gap', 'gac']] + + ['include/gap/%s.h' % h for h in ['gap', 'system', 'version']] + + ['lib/libgap.%s' % SHLIB_EXT], + 'dirs': ['share/gap'] +} + +sanity_check_commands = ["gap --help"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/g/gettext/gettext-0.22-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/gettext/gettext-0.22-GCCcore-13.2.0.eb index 2f4d3b3096a..3bf5207d463 100644 --- a/easybuild/easyconfigs/g/gettext/gettext-0.22-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/g/gettext/gettext-0.22-GCCcore-13.2.0.eb @@ -19,6 +19,7 @@ builddependencies = [('binutils', '2.40')] dependencies = [ ('libxml2', '2.11.5'), ('ncurses', '6.4'), + ('libiconv', '1.17'), ] configopts = '--without-emacs --with-libxml2-prefix=$EBROOTLIBXML2' 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/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' diff --git a/easybuild/easyconfigs/g/giac/giac-1.9.0-69-gfbf-2022a.eb b/easybuild/easyconfigs/g/giac/giac-1.9.0-69-gfbf-2022a.eb new file mode 100644 index 00000000000..91ec9e19713 --- /dev/null +++ b/easybuild/easyconfigs/g/giac/giac-1.9.0-69-gfbf-2022a.eb @@ -0,0 +1,42 @@ +easyblock = 'ConfigureMake' + +name = 'giac' +version = '1.9.0-69' + +homepage = 'https://www-fourier.ujf-grenoble.fr/~parisse/giac.html' +description = """Giac is a C++ library, it is the CAS computing kernel. + It may be used inside other C++ programs, and also Python, Java and Javascript programs.""" + +toolchain = {'name': 'gfbf', 'version': '2022a'} +toolchainopts = {'cstd': 'gnu++14'} + +source_urls = ['https://www-fourier.ujf-grenoble.fr/~parisse/debian/dists/stable/main/source/'] +sources = ['giac_%(version)s.tar.gz'] +checksums = ['3cc1de5d19896d8da9a71da632264937901d5d4047f159bf9450b5ea5fe6d9c8'] + +dependencies = [ + ('FLTK', '1.3.8'), + ('GLPK', '5.0'), + ('GMP-ECM', '7.0.5'), + ('GSL', '2.7'), + ('MPFI', '1.5.4'), + ('NTL', '11.5.1'), + ('PARI-GP', '2.15.4'), + ('CoCoALib', '0.99818'), + ('cURL', '7.83.0'), + ('cliquer', '1.21'), + ('libpng', '1.6.37'), + ('libreadline', '8.1.2'), + ('nauty', '2.8.6'), +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['cas_help', 'hevea2mml', 'icas', 'pgiac', 'xcas']] + + ['lib/libgiac.%s' % e for e in ['a', SHLIB_EXT]] + + ['include/giac/giac.h'], + 'dirs': ['share'], +} + +sanity_check_commands = ["giac <(echo '?findhelp') | grep \"Returns the help about the command\""] + +moduleclass = 'math' 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..9d16d16f7e1 --- /dev/null +++ b/easybuild/easyconfigs/g/git-lfs/git-lfs-3.4.0.eb @@ -0,0 +1,28 @@ +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'] +checksums = ['fa93f65cc5c15b96037a72cf243bc2cc04c94ea5cccc346664425d6d4bac66c2'] + +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' 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..3eea2ff72c4 --- /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' diff --git a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.1-GCCcore-10.2.0.eb b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.1-GCCcore-10.2.0.eb index cd32053b881..afa4c64d21f 100644 --- a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.1-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.1-GCCcore-10.2.0.eb @@ -44,6 +44,9 @@ dependencies = [ preconfigopts = 'autoreconf && ' +# make sure that right Lua library is used (bypassing pkg-config) +preconfigopts += 'export LUA_CFLAGS="-I$EBROOTLUA/include" && export LUA_LIBS="$EBROOTLUA/lib/liblua.a" && ' + configopts = '--with-qt=qt5 --without-latex ' sanity_check_paths = { diff --git a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.2-GCCcore-10.3.0.eb b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.2-GCCcore-10.3.0.eb index f4127746086..1022e3122d1 100644 --- a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.2-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.2-GCCcore-10.3.0.eb @@ -33,6 +33,9 @@ dependencies = [ preconfigopts = 'autoreconf && ' +# make sure that right Lua library is used (bypassing pkg-config) +preconfigopts += 'export LUA_CFLAGS="-I$EBROOTLUA/include" && export LUA_LIBS="$EBROOTLUA/lib/liblua.a" && ' + configopts = '--with-qt=qt5 --without-latex ' sanity_check_paths = { diff --git a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.2-GCCcore-11.2.0.eb b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.2-GCCcore-11.2.0.eb index c2af06feb4c..b932c85048e 100644 --- a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.2-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.2-GCCcore-11.2.0.eb @@ -33,6 +33,9 @@ dependencies = [ preconfigopts = 'autoreconf && ' +# make sure that right Lua library is used (bypassing pkg-config) +preconfigopts += 'export LUA_CFLAGS="-I$EBROOTLUA/include" && export LUA_LIBS="$EBROOTLUA/lib/liblua.a" && ' + configopts = '--with-qt=qt5 --without-latex ' sanity_check_paths = { diff --git a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.4-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.4-GCCcore-11.3.0.eb index ca1bcabdf53..899f0ad50be 100644 --- a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.4-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.4-GCCcore-11.3.0.eb @@ -33,6 +33,9 @@ dependencies = [ preconfigopts = 'autoreconf && ' +# make sure that right Lua library is used (bypassing pkg-config) +preconfigopts += 'export LUA_CFLAGS="-I$EBROOTLUA/include" && export LUA_LIBS="$EBROOTLUA/lib/liblua.a" && ' + configopts = '--with-qt=qt5 --without-latex ' sanity_check_paths = { diff --git a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.6-GCCcore-12.2.0.eb b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.6-GCCcore-12.2.0.eb index 2dcbf8e9d5a..ee98f8ad3ad 100644 --- a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.6-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.6-GCCcore-12.2.0.eb @@ -33,6 +33,9 @@ dependencies = [ preconfigopts = 'autoreconf && ' +# make sure that right Lua library is used (bypassing pkg-config) +preconfigopts += 'export LUA_CFLAGS="-I$EBROOTLUA/include" && export LUA_LIBS="$EBROOTLUA/lib/liblua.a" && ' + configopts = '--with-qt=qt5 --without-latex --disable-wxwidgets' sanity_check_paths = { diff --git a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.8-GCCcore-12.3.0.eb b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.8-GCCcore-12.3.0.eb index f49a0f13ec5..db4fa67aa22 100644 --- a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.8-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.8-GCCcore-12.3.0.eb @@ -33,6 +33,9 @@ dependencies = [ preconfigopts = 'autoreconf && ' +# make sure that right Lua library is used (bypassing pkg-config) +preconfigopts += 'export LUA_CFLAGS="-I$EBROOTLUA/include" && export LUA_LIBS="$EBROOTLUA/lib/liblua.a" && ' + configopts = '--with-qt=qt5 --without-latex --disable-wxwidgets' sanity_check_paths = { diff --git a/easybuild/easyconfigs/g/gomkl/gomkl-2023a.eb b/easybuild/easyconfigs/g/gomkl/gomkl-2023a.eb new file mode 100644 index 00000000000..38c7bb778e8 --- /dev/null +++ b/easybuild/easyconfigs/g/gomkl/gomkl-2023a.eb @@ -0,0 +1,19 @@ +easyblock = "Toolchain" + +name = 'gomkl' +version = '2023a' + +homepage = '(none)' +description = """GNU Compiler Collection (GCC) based compiler toolchain with OpenMPI and MKL""" + +toolchain = SYSTEM + +local_comp = ('GCC', '12.3.0') + +dependencies = [ + local_comp, + ('OpenMPI', '4.1.5', '', local_comp), + ('imkl', '2023.1.0', '', ('gompi', version)), +] + +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/g/gperftools/gperftools-2.13-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/gperftools/gperftools-2.13-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..73a117d1b30 --- /dev/null +++ b/easybuild/easyconfigs/g/gperftools/gperftools-2.13-GCCcore-13.2.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'gperftools' +version = '2.13' + +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': '13.2.0'} + +github_account = 'gperftools' +source_urls = [GITHUB_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['fd43adbe0419cb0eaaa3e439845cc89fe7d42c22eff7fd2d6b7e87ae2acbce1d'] + +builddependencies = [ + ('Autotools', '20220317'), + ('binutils', '2.40'), +] + +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/g/graphite2/graphite2-1.3.14-GCCcore-13.2.0.eb b/easybuild/easyconfigs/g/graphite2/graphite2-1.3.14-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..f72fbb4cc7a --- /dev/null +++ b/easybuild/easyconfigs/g/graphite2/graphite2-1.3.14-GCCcore-13.2.0.eb @@ -0,0 +1,27 @@ +easyblock = 'CMakeMake' + +name = 'graphite2' +version = '1.3.14' + +homepage = 'https://scripts.sil.org/cms/scripts/page.php?site_id=projects&item_id=graphite_home' +description = """Graphite is a "smart font" system developed specifically to + handle the complexities of lesser-known languages of the world.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/silnrsi/graphite/archive/'] +sources = ['%(version)s.zip'] +checksums = ['36e15981af3bf7a3ca3daf53295c8ffde04cf7d163e3474e4d0836e2728b4149'] + +builddependencies = [ + ('CMake', '3.27.6'), + ('binutils', '2.40'), +] + +sanity_check_paths = { + 'files': ['bin/gr2fonttest'] + + ['lib/lib%%(name)s.%s' % x for x in [SHLIB_EXT, 'la']], + 'dirs': ['include/%(name)s', 'share'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/h/HPCC/HPCC-1.5.0-foss-2022a.eb b/easybuild/easyconfigs/h/HPCC/HPCC-1.5.0-foss-2022a.eb new file mode 100644 index 00000000000..ed86b442b73 --- /dev/null +++ b/easybuild/easyconfigs/h/HPCC/HPCC-1.5.0-foss-2022a.eb @@ -0,0 +1,24 @@ +name = 'HPCC' +version = '1.5.0' + +homepage = 'https://hpcchallenge.org/' +description = """ +HPC Challenge is a benchmark suite that measures a range memory access +patterns. The HPC Challenge benchmark consists of basically 7 tests: HPL, +DGEMM, STREAM, PTRANS, RandomAccess, FFT, Communication bandwidth and latency +""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://hpcchallenge.org/projectsfiles/hpcc/download/'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['%(name)s-%(version)s_fix_recent_mpi.patch'] +checksums = [ + {'hpcc-1.5.0.tar.gz': '0a6fef7ab9f3347e549fed65ebb98234feea9ee18aea0c8f59baefbe3cf7ffb8'}, + {'HPCC-1.5.0_fix_recent_mpi.patch': '56f1e48af423dea3b78f5614fe102586a1da7c951d6959c26e359ca1e6ad8066'}, +] + +parallel = 1 + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/h/HPCC/HPCC-1.5.0_fix_recent_mpi.patch b/easybuild/easyconfigs/h/HPCC/HPCC-1.5.0_fix_recent_mpi.patch new file mode 100644 index 00000000000..8f73d442794 --- /dev/null +++ b/easybuild/easyconfigs/h/HPCC/HPCC-1.5.0_fix_recent_mpi.patch @@ -0,0 +1,51 @@ +Fix build error with recent MPI version +https://github.com/icl-utk-edu/hpcc/commit/d2b9a19b4498fdced2860f3394c03f27714b6160 +From d71a04d69c727b9baf0a78bb445db3ffc4ab4c91 Mon Sep 17 00:00:00 2001 +From: Francois Mazen +Date: Sat, 15 May 2021 14:49:14 +0200 +Subject: [PATCH] Apply debian patch. + +--- + hpl/src/comm/HPL_packL.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/hpl/src/comm/HPL_packL.c b/hpl/src/comm/HPL_packL.c +index ddfa230..948c08d 100644 +--- a/hpl/src/comm/HPL_packL.c ++++ b/hpl/src/comm/HPL_packL.c +@@ -169,7 +169,7 @@ int HPL_packL + type[nbufs] = MPI_DOUBLE; + blen[nbufs] = m1; + if( ierr == MPI_SUCCESS ) +- ierr = MPI_Address( bufs[nbufs], &disp[nbufs] ); ++ ierr = MPI_Get_address( bufs[nbufs], &disp[nbufs] ); + + nbufs++; len -= m1; j1++; ibuf += m1; + /* +@@ -183,7 +183,7 @@ int HPL_packL + type[nbufs] = MPI_DOUBLE; + blen[nbufs] = m1; + if( ierr == MPI_SUCCESS ) +- ierr = MPI_Address( bufs[nbufs], &disp[nbufs] ); ++ ierr = MPI_Get_address( bufs[nbufs], &disp[nbufs] ); + + nbufs++; len -= m1; j1++; ibuf += m1; + } +@@ -197,7 +197,7 @@ int HPL_packL + type[nbufs] = MPI_DOUBLE; + blen[nbufs] = len; + if( ierr == MPI_SUCCESS ) +- ierr = MPI_Address( bufs[nbufs], &disp[nbufs] ); ++ ierr = MPI_Get_address( bufs[nbufs], &disp[nbufs] ); + nbufs++; + } + +@@ -208,7 +208,7 @@ int HPL_packL + * construct the struct type + */ + if( ierr == MPI_SUCCESS ) +- ierr = MPI_Type_struct( nbufs, blen, disp, type, ++ ierr = MPI_Type_create_struct( nbufs, blen, disp, type, + &PANEL->dtypes[IBUF] ); + /* + * release temporaries 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/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/h/HarfBuzz/HarfBuzz-5.3.1-GCCcore-12.2.0.eb b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-5.3.1-GCCcore-12.2.0.eb index e39adfe0f43..413af61094b 100644 --- a/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-5.3.1-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-5.3.1-GCCcore-12.2.0.eb @@ -27,7 +27,8 @@ dependencies = [ ('freetype', '2.12.1'), ] -preconfigopts = "./autogen.sh && " +# define $GTKDOCIZE to 'echo' as workaround for https://github.com/easybuilders/easybuild-easyconfigs/issues/16567 +preconfigopts = "GTKDOCIZE=echo ./autogen.sh && " configopts = "--enable-introspection=yes --with-gobject=yes --enable-static --enable-shared --with-cairo " sanity_check_paths = { diff --git a/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-5.3.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-5.3.1-GCCcore-12.3.0.eb index a97ce9c0a87..2ffe6643c7c 100644 --- a/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-5.3.1-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-5.3.1-GCCcore-12.3.0.eb @@ -27,7 +27,8 @@ dependencies = [ ('freetype', '2.13.0'), ] -preconfigopts = "./autogen.sh && " +# define $GTKDOCIZE to 'echo' as workaround for https://github.com/easybuilders/easybuild-easyconfigs/issues/16567 +preconfigopts = "GTKDOCIZE=echo ./autogen.sh && " configopts = "--enable-introspection=yes --with-gobject=yes --enable-static --enable-shared --with-cairo " sanity_check_paths = { diff --git a/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-8.2.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-8.2.2-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..efab63ddcc6 --- /dev/null +++ b/easybuild/easyconfigs/h/HarfBuzz/HarfBuzz-8.2.2-GCCcore-13.2.0.eb @@ -0,0 +1,39 @@ +easyblock = 'ConfigureMake' + +name = 'HarfBuzz' +version = '8.2.2' + +homepage = 'https://www.freedesktop.org/wiki/Software/HarfBuzz' +description = """HarfBuzz is an OpenType text shaping engine.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +github_account = 'harfbuzz' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['0546aac7b2493b3681047914550860157f8799fc80bf5cb528927a9643d6ab3d'] + +builddependencies = [ + ('binutils', '2.40'), + ('GObject-Introspection', '1.78.1'), + ('pkgconf', '2.0.3'), + ('Autotools', '20220317'), +] + +dependencies = [ + ('GLib', '2.78.1'), + ('ICU', '74.1'), + ('cairo', '1.18.0'), + ('freetype', '2.13.2'), +] + +# define $GTKDOCIZE to 'echo' as workaround for https://github.com/easybuilders/easybuild-easyconfigs/issues/16567 +preconfigopts = "GTKDOCIZE=echo ./autogen.sh && " +configopts = "--enable-introspection=yes --with-gobject=yes --enable-static --enable-shared --with-cairo " + +sanity_check_paths = { + 'files': ['lib/libharfbuzz.%s' % SHLIB_EXT, 'bin/hb-view'], + 'dirs': [] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/h/HepMC/HepMC-2.06.11-gompi-2022a.eb b/easybuild/easyconfigs/h/HepMC/HepMC-2.06.11-gompi-2022a.eb new file mode 100644 index 00000000000..ca033f0fd1c --- /dev/null +++ b/easybuild/easyconfigs/h/HepMC/HepMC-2.06.11-gompi-2022a.eb @@ -0,0 +1,27 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Alexander Puck Neuwirth + +easyblock = 'CMakeMake' + +name = 'HepMC' +version = '2.06.11' + +homepage = 'http://hepmc.web.cern.ch/hepmc/' +description = """HepMC is a standard for storing Monte Carlo event data.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} + +source_urls = ['https://hepmc.web.cern.ch/hepmc/releases/'] +sources = ['hepmc%(version)s.tgz'] +checksums = ['86b66ea0278f803cde5774de8bd187dd42c870367f1cbf6cdaec8dc7cf6afc10'] + +builddependencies = [('CMake', '3.23.1')] + +configopts = '-Dmomentum=GEV -Dlength=MM' + +sanity_check_paths = { + 'files': ['lib/libHepMC.so'], + 'dirs': ['include/HepMC'] +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/h/HiC-Pro/HiC-Pro-3.1.0-foss-2022a-R-4.2.1.eb b/easybuild/easyconfigs/h/HiC-Pro/HiC-Pro-3.1.0-foss-2022a-R-4.2.1.eb new file mode 100644 index 00000000000..815a40116be --- /dev/null +++ b/easybuild/easyconfigs/h/HiC-Pro/HiC-Pro-3.1.0-foss-2022a-R-4.2.1.eb @@ -0,0 +1,59 @@ +easyblock = 'MakeCp' + +name = 'HiC-Pro' +version = '3.1.0' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://nservant.github.io/HiC-Pro' +description = """HiC-Pro was designed to process Hi-C data, from raw fastq files (paired-end Illumina data) + to the normalized contact maps.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = ['https://github.com/nservant/HiC-Pro/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['25a88d89813e8e9653f59ca0bd6eaad8b0c8dbb5e578e233f2b3db7b04256f2f'] + +dependencies = [ + ('R', '4.2.1'), + ('Bowtie2', '2.4.5'), + ('Pysam', '0.19.1'), + ('SAMtools', '1.16.1'), + ('bx-python', '0.9.0'), + ('iced', '0.5.10'), +] + +# there's no configure script, "configure" is a Makefile target +skipsteps = ['configure'] + +# "configure" target only takes prefix as argument, the rest is read from config-install.txt +prebuildopts = 'sed -i "s|BOWTIE2_PATH = |BOWTIE2_PATH = $EBROOTBOWTIE2|" config-install.txt && ' +prebuildopts += 'sed -i "s|SAMTOOLS_PATH = |SAMTOOLS_PATH = $EBROOTSAMTOOLS|" config-install.txt && ' +prebuildopts += 'sed -i "s|R_PATH = |R_PATH = $EBROOTR|" config-install.txt && ' +prebuildopts += 'sed -i "s|PYTHON_PATH = |PYTHON_PATH = $EBROOTPYTHON|" config-install.txt && ' + +# configure +prebuildopts += 'make configure prefix=%(installdir)s && ' + +# install +files_to_copy = [ + 'annotation', + 'doc', + 'scripts', + (['bin/utils', 'bin/HiC-Pro'], 'bin'), + 'config-system.txt', +] + +modextrapaths = { + 'PATH': ['bin/utils', 'scripts'], + 'SCRIPTS': ['scripts'] +} + +sanity_check_paths = { + 'files': ['config-system.txt', 'scripts/build_matrix', 'scripts/cutsite_trimming', 'bin/HiC-Pro'], + 'dirs': ['annotation', 'bin/utils', 'doc'], +} + +sanity_check_commands = ["HiC-Pro --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/Horovod/Horovod-0.28.1-foss-2022a-PyTorch-1.12.0.eb b/easybuild/easyconfigs/h/Horovod/Horovod-0.28.1-foss-2022a-PyTorch-1.12.0.eb new file mode 100644 index 00000000000..089c87eaf0a --- /dev/null +++ b/easybuild/easyconfigs/h/Horovod/Horovod-0.28.1-foss-2022a-PyTorch-1.12.0.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'Horovod' +version = '0.28.1' +local_pt_version = '1.12.0' +versionsuffix = '-PyTorch-%s' % local_pt_version + +homepage = 'https://github.com/uber/horovod' +description = """Horovod is a distributed training framework for TensorFlow, PyTorch and MXnet. +This build only has PyTorch enabled.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +builddependencies = [ + ('CMake', '3.23.1'), +] +dependencies = [ + ('Python', '3.10.4'), + ('PyYAML', '6.0'), + ('PyTorch', local_pt_version), +] + +use_pip = True +sanity_pip_check = True + +preinstallopts = 'HOROVOD_WITH_MPI=1 ' +preinstallopts += 'HOROVOD_WITHOUT_TENSORFLOW=1 HOROVOD_WITH_PYTORCH=1 HOROVOD_WITHOUT_MXNET=1 ' + +exts_list = [ + ('cloudpickle', '2.2.1', { + 'checksums': ['d89684b8de9e34a2a43b3460fbca07d09d6e25ce858df4d5a44240403b6178f5'], + }), + ('horovod', version, { + 'checksums': ['92a43f5a94c43907a56805bad15f19700c62ffc83b7ca483f9e104e229f67ef0'], + }), +] + +sanity_check_paths = { + 'files': ['bin/horovodrun'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["horovodrun --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/h/hatchling/hatchling-1.18.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/h/hatchling/hatchling-1.18.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..765badccfff --- /dev/null +++ b/easybuild/easyconfigs/h/hatchling/hatchling-1.18.0-GCCcore-13.2.0.eb @@ -0,0 +1,65 @@ +easyblock = 'PythonBundle' + +name = 'hatchling' +version = '1.18.0' + +homepage = 'https://hatch.pypa.io' +description = """Extensible, standards compliant build backend used by Hatch, +a modern, extensible Python project manager.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.5'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('tomli', '2.0.1', { + 'checksums': ['de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f'], + }), + ('packaging', '23.2', { + 'checksums': ['048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5'], + }), + ('setuptools-scm', '8.0.4', { + 'checksums': ['b5f43ff6800669595193fd09891564ee9d1d7dcb196cab4b2506d53a2e1c95c7'], + }), + ('typing_extensions', '4.8.0', { + 'checksums': ['df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef'], + }), + ('pathspec', '0.11.2', { + 'checksums': ['e0d8d0ac2f12da61956eb2306b69f9469b42f4deb0f3cb6ed47b9cce9996ced3'], + }), + ('pluggy', '1.3.0', { + 'checksums': ['cf61ae8f126ac6f7c451172cf30e3e43d3ca77615509771b3a984a0730651e12'], + }), + ('editables', '0.5', { + 'checksums': ['309627d9b5c4adc0e668d8c6fa7bac1ba7c8c5d415c2d27f60f081f8e80d1de2'], + }), + ('trove_classifiers', '2023.10.18', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'checksums': ['20a3da8e3cb65587cc9f5d5b837bf74edeb480bba9bd8cd4f03ab056d6b06c4c'], + }), + (name, version, { + 'checksums': ['50e99c3110ce0afc3f7bdbadff1c71c17758e476731c27607940cfa6686489ca'], + }), + ('hatch_vcs', '0.3.0', { + 'checksums': ['cec5107cfce482c67f8bc96f18bbc320c9aa0d068180e14ad317bbee5a153fee'], + }), + ('hatch_fancy_pypi_readme', '23.1.0', { + 'checksums': ['b1df44063094af1e8248ceacd47a92c9cf313d6b9823bf66af8a927c3960287d'], + }), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/h/hic-straw/hic-straw-1.3.1-foss-2022a.eb b/easybuild/easyconfigs/h/hic-straw/hic-straw-1.3.1-foss-2022a.eb new file mode 100644 index 00000000000..e713ea63376 --- /dev/null +++ b/easybuild/easyconfigs/h/hic-straw/hic-straw-1.3.1-foss-2022a.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'hic-straw' +version = '1.3.1' + +homepage = 'https://github.com/aidenlab/straw' +description = "Straw is a library which allows rapid streaming of contact data from .hic files." + +toolchain = {'name': 'foss', 'version': '2022a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['fb0f878127f6b1d096303c67793477c83fddf3f4a1a8e29a9d92952634989876'] + +builddependencies = [('pybind11', '2.9.2')] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('cURL', '7.83.0'), +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +options = {'modulename': 'hicstraw'} + +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..15f778b5880 --- /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), Denis Kristak (Inuits) + +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/h/hypothesis/hypothesis-6.90.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/h/hypothesis/hypothesis-6.90.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..c47eee7e268 --- /dev/null +++ b/easybuild/easyconfigs/h/hypothesis/hypothesis-6.90.0-GCCcore-13.2.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'hypothesis' +version = '6.90.0' + +homepage = "https://github.com/HypothesisWorks/hypothesis" +description = """Hypothesis is an advanced testing library for Python. It lets you write tests which are parametrized + by a source of examples, and then generates simple and comprehensible examples that make your tests fail. This lets + you find more bugs in your code with less work.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['0ab33900b9362318bd03d911a77a0dda8629c1877420074d87ae466919f6e4c0'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), # required for attrs, sortedcontainers +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/i/ICU/ICU-74.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/i/ICU/ICU-74.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..db1bede945b --- /dev/null +++ b/easybuild/easyconfigs/i/ICU/ICU-74.1-GCCcore-13.2.0.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'ICU' +version = '74.1' + +homepage = 'https://icu.unicode.org' +description = """ICU is a mature, widely used set of C/C++ and Java libraries providing Unicode and Globalization + support for software applications.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/unicode-org/icu/releases/download/release-%(version_major)s-%(version_minor)s'] +sources = ['icu4c-%(version_major)s_%(version_minor)s-src.tgz'] +checksums = ['86ce8e60681972e60e4dcb2490c697463fcec60dd400a5f9bffba26d0b52b8d0'] + +builddependencies = [ + ('binutils', '2.40'), + ('Python', '3.11.5'), +] + +start_dir = 'source' + +sanity_check_paths = { + 'files': ['lib/libicu%s.%s' % (x, SHLIB_EXT) for x in ['data', 'i18n', 'io', 'test', 'tu', 'uc']], + 'dirs': ['bin', 'include/unicode', 'share/icu', 'share/man'], +} + +moduleclass = 'lib' 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' diff --git a/easybuild/easyconfigs/i/IML/IML-1.0.5-gfbf-2022a.eb b/easybuild/easyconfigs/i/IML/IML-1.0.5-gfbf-2022a.eb new file mode 100644 index 00000000000..246ea7b40b6 --- /dev/null +++ b/easybuild/easyconfigs/i/IML/IML-1.0.5-gfbf-2022a.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'IML' +version = '1.0.5' + +homepage = 'https://cs.uwaterloo.ca/~astorjoh/iml.html' +description = """IML is a free library of C source code which implements algorithms for computing + exact solutions to dense systems of linear equations over the integers.""" + +toolchain = {'name': 'gfbf', 'version': '2022a'} + +source_urls = ['http://www.cs.uwaterloo.ca/~astorjoh'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['1dad666850895a5709b00b97422e2273f293cfadea7697a9f90b90953e847c2a'] + +dependencies = [('GMP', '6.2.1')] + +configopts = '--with-cblas="$LIBBLAS" --with-gmp-include=$EBROOTGMP/include --with-gmp-lib=$EBROOTGMP/lib ' + +sanity_check_paths = { + 'files': ['include/iml.h', 'lib/libiml.a'], + 'dirs': ['share'], +} + +moduleclass = 'math' 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'], } 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..d0cfdfb2d8c --- /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/i/ISA-L/ISA-L-2.30.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/i/ISA-L/ISA-L-2.30.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..2ab89e8f71e --- /dev/null +++ b/easybuild/easyconfigs/i/ISA-L/ISA-L-2.30.0-GCCcore-12.3.0.eb @@ -0,0 +1,46 @@ +# Author: Jasper Grimm (UoY) + +easyblock = 'ConfigureMake' + +name = 'ISA-L' +version = '2.30.0' + +homepage = 'https://github.com/intel/isa-l' +description = "Intelligent Storage Acceleration Library" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +github_account = 'intel' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['bcf592c04fdfa19e723d2adf53d3e0f4efd5b956bb618fed54a1108d76a6eb56'] + +builddependencies = [ + ('Autotools', '20220317'), + ('binutils', '2.40'), + ('pkgconf', '1.9.5'), +] + +dependencies = [('NASM', '2.16.01')] + +preconfigopts = 'autoreconf -i -f &&' + +runtest = 'check' + +local_bins = ['bin/igzip'] +local_includes = ['include/%(namelower)s.h'] +local_includes += ['include/isa-l/%s.h' % i for i in ['crc64', 'crc', 'erasure_code', 'gf_vect_mul', 'igzip_lib', + 'mem_routines', 'raid', 'test', 'types']] +local_libs = ['lib/libisal.%s' % k for k in ['a', 'la', SHLIB_EXT]] + +sanity_check_paths = { + 'files': local_bins + local_includes + local_libs, + 'dirs': ['bin', 'include', 'lib', 'share'], +} + +sanity_check_commands = [ + "igzip --help", + "igzip --version", +] + +moduleclass = 'lib' 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..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 @@ -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'), @@ -43,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 " 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. 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/i/iced/iced-0.5.10-foss-2022a.eb b/easybuild/easyconfigs/i/iced/iced-0.5.10-foss-2022a.eb new file mode 100644 index 00000000000..74e5869b557 --- /dev/null +++ b/easybuild/easyconfigs/i/iced/iced-0.5.10-foss-2022a.eb @@ -0,0 +1,30 @@ +easyblock = 'PythonPackage' + +name = 'iced' +version = '0.5.10' + +homepage = 'https://github.com/hiclib/iced' +description = "Implements the ICE normalization of hic data." + +toolchain = {'name': 'foss', 'version': '2022a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['e8cb680c26117c11378be422e632a0dd806f653bfa9fcc647b97f523c9dea6bf'] + +dependencies = [ + ('Python', '3.10.4'), + ('scikit-learn', '1.1.2'), +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["ice --help"] + +moduleclass = 'bio' 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' diff --git a/easybuild/easyconfigs/i/iimpi/iimpi-2023.11.eb b/easybuild/easyconfigs/i/iimpi/iimpi-2023.11.eb new file mode 100644 index 00000000000..93f36545c50 --- /dev/null +++ b/easybuild/easyconfigs/i/iimpi/iimpi-2023.11.eb @@ -0,0 +1,18 @@ +# This is an easyconfig file for EasyBuild, see http://easybuilders.github.io/easybuild +easyblock = 'Toolchain' + +name = 'iimpi' +version = '2023.11' + +homepage = 'https://software.intel.com/parallel-studio-xe' +description = """Intel C/C++ and Fortran compilers, alongside Intel MPI.""" + +toolchain = SYSTEM + +local_comp_ver = '2024.0.0' +dependencies = [ + ('intel-compilers', local_comp_ver), + ('impi', '2021.11.0', '', ('intel-compilers', local_comp_ver)), +] + +moduleclass = 'toolchain' 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/imageio/imageio-2.33.1-gfbf-2023a.eb b/easybuild/easyconfigs/i/imageio/imageio-2.33.1-gfbf-2023a.eb new file mode 100644 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/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/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-2023.1.0-gompi-2023a.eb b/easybuild/easyconfigs/i/imkl/imkl-2023.1.0-gompi-2023a.eb new file mode 100644 index 00000000000..5e4f3cb8b1d --- /dev/null +++ b/easybuild/easyconfigs/i/imkl/imkl-2023.1.0-gompi-2023a.eb @@ -0,0 +1,19 @@ +## +# Author: Robert Mijakovic +## +name = 'imkl' +version = '2023.1.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onemkl.html' +description = "Intel oneAPI Math Kernel Library" + +toolchain = {'name': 'gompi', 'version': '2023a'} + +# 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/18721/'] +sources = ['l_onemkl_p_%(version)s.46342_offline.sh'] +checksums = ['cc28c94cab23c185520b93c5a04f3979d8da6b4c90cee8c0681dd89819d76167'] + +installopts = "--download-cache=%(builddir)s/cache --download-dir=%(builddir)s/download --log-dir=%(builddir)s/log" + +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/impi/impi-2021.11.0-intel-compilers-2024.0.0.eb b/easybuild/easyconfigs/i/impi/impi-2021.11.0-intel-compilers-2024.0.0.eb new file mode 100644 index 00000000000..7186cfcf051 --- /dev/null +++ b/easybuild/easyconfigs/i/impi/impi-2021.11.0-intel-compilers-2024.0.0.eb @@ -0,0 +1,16 @@ +name = 'impi' +version = '2021.11.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/mpi-library.html' +description = "Intel MPI Library, compatible with MPICH ABI" + +toolchain = {'name': 'intel-compilers', 'version': '2024.0.0'} + +# 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/2c45ede0-623c-4c8e-9e09-bed27d70fa33'] +sources = ['l_mpi_oneapi_p_%(version)s.49513_offline.sh'] +checksums = ['9a96caeb7abcf5aa08426216db38a2c7936462008b9825036266bc79cb0e30d8'] + +dependencies = [('UCX', '1.15.0')] + +moduleclass = 'mpi' diff --git a/easybuild/easyconfigs/i/intel-compilers/intel-compilers-2024.0.0.eb b/easybuild/easyconfigs/i/intel-compilers/intel-compilers-2024.0.0.eb new file mode 100644 index 00000000000..1a5031d0409 --- /dev/null +++ b/easybuild/easyconfigs/i/intel-compilers/intel-compilers-2024.0.0.eb @@ -0,0 +1,37 @@ +name = 'intel-compilers' +version = '2024.0.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/hpc-toolkit.html' +description = "Intel C, C++ & Fortran compilers (classic and oneAPI)" + +toolchain = SYSTEM + +# see https://software.intel.com/content/www/us/en/develop/articles/oneapi-standalone-components.html +sources = [ + { + 'source_urls': [ + 'https://registrationcenter-download.intel.com/akdlm/IRC_NAS/5c8e686a-16a7-4866-b585-9cf09e97ef36/', + ], + 'filename': 'l_dpcpp-cpp-compiler_p_%(version)s.49524_offline.sh', + }, + { + 'source_urls': [ + 'https://registrationcenter-download.intel.com/akdlm/IRC_NAS/89b0fcf9-5c00-448a-93a1-5ee4078e008e/', + ], + 'filename': 'l_fortran-compiler_p_%(version)s.49493_offline.sh', + }, +] +checksums = [ + {'l_dpcpp-cpp-compiler_p_2024.0.0.49524_offline.sh': + 'd10bad2009c98c631fbb834aae62012548daeefc806265ea567316cd9180a684'}, + {'l_fortran-compiler_p_2024.0.0.49493_offline.sh': + '57faf854b8388547ee4ef2db387a9f6f3b4d0cebd67b765cf5e844a0a970d1f9'}, +] + +local_gccver = '13.2.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.40', '', ('GCCcore', local_gccver)), +] + +moduleclass = 'compiler' 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' 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' 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..baf0cfe8d03 --- /dev/null +++ b/easybuild/easyconfigs/i/iperf/iperf-2.1.9-GCCcore-10.2.0.eb @@ -0,0 +1,36 @@ +## +# 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 = 'https://sourceforge.net/projects/iperf2/' +description = """Iperf 2: TCP and UDP bandwidth performance measurement tool""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +sources = [SOURCE_TAR_GZ] +source_urls = [('https://sourceforge.net/projects/iperf2/files', 'download')] +checksums = ['5c0771aab00ef14520013aef01675977816e23bb8f5d9fde016f90eb2f1be788'] + +builddependencies = [('binutils', '2.35')] + +sanity_check_paths = { + 'files': ['bin/iperf'], + 'dirs': [] +} + +sanity_check_commands = ["iperf --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/i/iperf/iperf-3.15.eb b/easybuild/easyconfigs/i/iperf/iperf-3.15.eb new file mode 100644 index 00000000000..2135aea41dc --- /dev/null +++ b/easybuild/easyconfigs/i/iperf/iperf-3.15.eb @@ -0,0 +1,24 @@ +easyblock = 'ConfigureMake' + +name = 'iperf' +version = '3.15' + +homepage = 'https://software.es.net/iperf' +description = "iperf is a tool for active measurements of the maximum achievable bandwidth on IP networks." + +toolchain = SYSTEM + +source_urls = ['https://downloads.es.net/pub/iperf/'] +sources = [SOURCE_TAR_GZ] +checksums = ['bdb77c11f72bce90214883159577fa24412013e62b2083cf5f54391d79b1d8ff'] + +postinstallcmds = ["cd %(installdir)s/bin && ln -s iperf3 iperf"] + +sanity_check_paths = { + 'files': ['bin/iperf', 'include/iperf_api.h', 'lib/libiperf.a', 'lib/libiperf.%s' % SHLIB_EXT], + 'dirs': ['share/man'] +} + +sanity_check_commands = ["iperf --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/JasPer/JasPer-4.0.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/j/JasPer/JasPer-4.0.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..ab5a601586c --- /dev/null +++ b/easybuild/easyconfigs/j/JasPer/JasPer-4.0.0-GCCcore-13.2.0.eb @@ -0,0 +1,36 @@ +easyblock = 'CMakeMake' + +name = 'JasPer' +version = '4.0.0' + +homepage = 'https://www.ece.uvic.ca/~frodo/jasper/' + +description = """ + The JasPer Project is an open-source initiative to provide a free + software-based reference implementation of the codec specified in + the JPEG-2000 Part-1 standard. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +github_account = 'jasper-software' +source_urls = [GITHUB_SOURCE] +sources = ['version-%(version)s.tar.gz'] +checksums = ['977c4c2e4210f4e37313cd2232d99e73d57ab561917b3c060bcdd5e83a0a13f1'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), +] + +configopts = '-DJAS_ENABLE_DOC=OFF ' + +sanity_check_paths = { + 'files': ['bin/jasper', ('lib/libjasper.%s' % SHLIB_EXT, 'lib64/libjasper.%s' % SHLIB_EXT)], + 'dirs': ['include'], +} + +sanity_check_commands = ['jasper --version'] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/j/jedi-language-server/jedi-language-server-0.39.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/j/jedi-language-server/jedi-language-server-0.39.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..add060e8df7 --- /dev/null +++ b/easybuild/easyconfigs/j/jedi-language-server/jedi-language-server-0.39.0-GCCcore-11.3.0.eb @@ -0,0 +1,61 @@ +easyblock = 'PythonBundle' + +name = 'jedi-language-server' +version = "0.39.0" + +homepage = 'https://github.com/pappasam/jedi-language-server' +description = """ + A Python Language Server powered by Jedi. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +builddependencies = [ + ('binutils', '2.38'), +] +dependencies = [ + ('Python', '3.10.4'), + ('jedi', '0.18.1'), + ('poetry', '1.2.2'), + ('pydantic', '1.10.4'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('exceptiongroup', '1.1.1', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'checksums': ['232c37c63e4f682982c8b6459f33a8981039e5fb8756b2074364e5055c498c9e'], + }), + ('cattrs', '22.2.0', { + 'checksums': ['f0eed5642399423cf656e7b66ce92cdc5b963ecafd041d1b24d136fdde7acf6d'], + }), + ('attrs', '21.4.0', { + 'modulename': 'attr', + 'checksums': ['626ba8234211db98e869df76230a137c4c40a12d72445c45d5f5b716f076e2fd'], + }), + ('docstring-to-markdown', '0.13', { + 'checksums': ['3025c428638ececae920d6d26054546a20335af3504a145327e657e7ad7ce1ce'], + }), + ('lsprotocol', '2023.0.0', { + 'checksums': ['c9d92e12a3f4ed9317d3068226592860aab5357d93cf5b2451dc244eee8f35f2'], + }), + ('pygls', '0.12.4', { + 'checksums': ['63b859411307ed6f99fb9dd0e71be507a17ae9b3de5c5d07c497f5bddadcc46a'], + }), + ('typeguard', '2.13.3', { + 'checksums': ['00edaa8da3a133674796cf5ea87d9f4b4c367d77476e185e80251cc13dfbb8c4'], + }), + (name, version, { + 'source_tmpl': 'jedi_language_server-%(version)s.tar.gz', + 'checksums': ['8ae12605f934cf9c3fc60d02ec6d8ee5ef66441ea4f117d87e3f634bf0e6e48e'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/jedi/jedi-0.18.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/j/jedi/jedi-0.18.1-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..5b2a8950603 --- /dev/null +++ b/easybuild/easyconfigs/j/jedi/jedi-0.18.1-GCCcore-11.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'jedi' +version = "0.18.1" + +homepage = 'https://jedi.readthedocs.io/en/latest/' +description = """ + Jedi is a static analysis tool for Python that is typically used in IDEs/editors plugins. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +builddependencies = [ + ('binutils', '2.38'), +] +dependencies = [ + ('Python', '3.10.4'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('parso', '0.8.3', { + 'checksums': ['8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0'], + }), + (name, version, { + 'checksums': ['74137626a64a99c8eb6ae5832d99b3bdd7d29a3850fe2aa80a4126b2a7d949ab'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib'], +} + +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/j/json-fortran/json-fortran-8.3.0-GCC-10.2.0.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-10.2.0.eb new file mode 100644 index 00000000000..fdd554d13d3 --- /dev/null +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-10.2.0.eb @@ -0,0 +1,34 @@ +# 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': 'GCC', 'version': '10.2.0'} + +source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['5fe9ad709a726416cec986886503e0526419742e288c4e43f63c1c22026d1e8a'] + +builddependencies = [ + ('binutils', '2.35'), + ('CMake', '3.20.1'), +] + +configopts = [ + '-DUSE_GNU_INSTALL_CONVENTION=TRUE', +] + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libjsonfortran.a', 'lib/libjsonfortran.%s' % SHLIB_EXT, + 'include/json_module.mod', 'include/json_parameters.mod'], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-10.3.0.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-10.3.0.eb new file mode 100644 index 00000000000..f3c50666fd3 --- /dev/null +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-10.3.0.eb @@ -0,0 +1,33 @@ +# 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': 'GCC', 'version': '10.3.0'} + +source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['5fe9ad709a726416cec986886503e0526419742e288c4e43f63c1c22026d1e8a'] + +builddependencies = [ + ('binutils', '2.36.1'), + ('CMake', '3.20.1'), +] + +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/j/json-fortran/json-fortran-8.3.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-11.2.0.eb similarity index 93% rename from easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCCcore-11.2.0.eb rename to easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-11.2.0.eb index ea4820fb0a6..084d0843686 100644 --- a/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-11.2.0.eb @@ -8,7 +8,7 @@ version = '8.3.0' homepage = 'https://github.com/jacobwilliams/json-fortran' description = "JSON-Fortran: A Modern Fortran JSON API" -toolchain = {'name': 'GCCcore', 'version': '11.2.0'} +toolchain = {'name': 'GCC', 'version': '11.2.0'} source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] sources = ['%(version)s.tar.gz'] diff --git a/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-11.3.0.eb similarity index 93% rename from easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCCcore-11.3.0.eb rename to easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-11.3.0.eb index 4570b385ff2..7ba292f3ba8 100644 --- a/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-11.3.0.eb @@ -8,7 +8,7 @@ version = '8.3.0' homepage = 'https://github.com/jacobwilliams/json-fortran' description = "JSON-Fortran: A Modern Fortran JSON API" -toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchain = {'name': 'GCC', 'version': '11.3.0'} source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] sources = ['%(version)s.tar.gz'] diff --git a/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-12.2.0.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-12.2.0.eb new file mode 100644 index 00000000000..c5227d71731 --- /dev/null +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCC-12.2.0.eb @@ -0,0 +1,32 @@ +# 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': 'GCC', 'version': '12.2.0'} + +source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['5fe9ad709a726416cec986886503e0526419742e288c4e43f63c1c22026d1e8a'] + +builddependencies = [ + ('binutils', '2.39'), + ('CMake', '3.24.3'), +] + +configopts = '-DUSE_GNU_INSTALL_CONVENTION=TRUE' + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libjsonfortran.a', 'lib/libjsonfortran.%s' % SHLIB_EXT, + 'include/json_module.mod', 'include/json_parameters.mod'], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-iccifort-2020.4.304.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-iccifort-2020.4.304.eb new file mode 100644 index 00000000000..074e64ca5ca --- /dev/null +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-iccifort-2020.4.304.eb @@ -0,0 +1,34 @@ +# 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': 'iccifort', 'version': '2020.4.304'} + +source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['5fe9ad709a726416cec986886503e0526419742e288c4e43f63c1c22026d1e8a'] + +builddependencies = [ + ('binutils', '2.35'), + ('CMake', '3.20.1'), +] + +configopts = [ + '-DUSE_GNU_INSTALL_CONVENTION=TRUE', +] + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libjsonfortran.a', 'lib/libjsonfortran.%s' % SHLIB_EXT, + 'include/json_module.mod', 'include/json_parameters.mod'], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.0.1.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.0.1.eb new file mode 100644 index 00000000000..877f807c977 --- /dev/null +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.0.1.eb @@ -0,0 +1,34 @@ +# 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.0.1'} + +source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['5fe9ad709a726416cec986886503e0526419742e288c4e43f63c1c22026d1e8a'] + +builddependencies = [ + ('binutils', '2.37'), + ('CMake', '3.21.1'), +] + +configopts = [ + '-DUSE_GNU_INSTALL_CONVENTION=TRUE', +] + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libjsonfortran.a', 'lib/libjsonfortran.%s' % SHLIB_EXT, + 'include/json_module.mod', 'include/json_parameters.mod'], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.2.1.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.2.1.eb new file mode 100644 index 00000000000..5dd55223ef0 --- /dev/null +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-intel-compilers-2022.2.1.eb @@ -0,0 +1,32 @@ +# 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.2.1'} + +source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['5fe9ad709a726416cec986886503e0526419742e288c4e43f63c1c22026d1e8a'] + +builddependencies = [ + ('binutils', '2.39'), + ('CMake', '3.24.3'), +] + +configopts = '-DUSE_GNU_INSTALL_CONVENTION=TRUE' + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libjsonfortran.a', 'lib/libjsonfortran.%s' % SHLIB_EXT, + 'include/json_module.mod', 'include/json_parameters.mod'], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/jupyter-rsession-proxy/jupyter-rsession-proxy-2.1.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/j/jupyter-rsession-proxy/jupyter-rsession-proxy-2.1.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..858508c7559 --- /dev/null +++ b/easybuild/easyconfigs/j/jupyter-rsession-proxy/jupyter-rsession-proxy-2.1.0-GCCcore-11.3.0.eb @@ -0,0 +1,30 @@ +easyblock = "PythonPackage" + +name = 'jupyter-rsession-proxy' +version = '2.1.0' + +homepage = 'https://github.com/jupyterhub/jupyter-rsession-proxy' +description = "Jupyter extensions for running an RStudio rsession proxy" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ddbae33bb8a3e8915b76206b9255ba8517c56c1b021241f59d5448fcce2cd64e'] + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('JupyterLab', '3.5.0'), + ('jupyter-server-proxy', '3.2.2'), +] + +download_dep_fail = True + +use_pip = True +sanity_pip_check = True + +moduleclass = 'tools' 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' 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' 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. ] 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. ] 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' 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. ] 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. ] diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-12.2.0.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-12.2.0.eb new file mode 100644 index 00000000000..c6034f2db8b --- /dev/null +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCC-12.2.0.eb @@ -0,0 +1,43 @@ +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': 'GCC', 'version': '12.2.0'} + +source_urls = ['https://s3.openkim.org/kim-api/'] +sources = ['%(name)s-%(version)s.txz'] +checksums = ['93673bb8fbc0625791f2ee67915d1672793366d10cabc63e373196862c14f991'] + +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' 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. ] diff --git a/easybuild/easyconfigs/l/LAME/LAME-3.100-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/LAME/LAME-3.100-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..7b163dff699 --- /dev/null +++ b/easybuild/easyconfigs/l/LAME/LAME-3.100-GCCcore-13.2.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'LAME' +version = '3.100' + +homepage = 'http://lame.sourceforge.net/' +description = """LAME is a high quality MPEG Audio Layer III (MP3) encoder licensed under the LGPL.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://sourceforge.net/projects/lame/files/lame/%(version_major_minor)s/'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['LAME-3.99.5_check-tgetent.patch'] +checksums = [ + 'ddfe36cab873794038ae2c1210557ad34857a4b6bdc515785d1da9e175b1da1e', # lame-3.100.tar.gz + '8bfb6a73f2db1511baf90fbd7174f11043ec4b592a4917edc30ccfb53bf37256', # LAME-3.99.5_check-tgetent.patch +] + +builddependencies = [ + ('binutils', '2.40'), + ('Autotools', '20220317'), +] + +dependencies = [('ncurses', '6.4')] + +preconfigopts = "autoconf && " + +# configure is broken: add workaround to find libncurses... +configure_cmd_prefix = "FRONTEND_LDADD='-L${EBROOTNCURSES}/lib' " + +sanity_check_paths = { + 'files': ['bin/lame', 'include/lame/lame.h', 'lib/libmp3lame.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos-CUDA-11.3.1.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos-CUDA-11.3.1.eb index ccd6b3b79e2..8586d51a9bc 100644 --- a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos-CUDA-11.3.1.eb +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos-CUDA-11.3.1.eb @@ -24,7 +24,12 @@ source_urls = [GITHUB_LOWER_SOURCE] sources = [ 'stable_%(version)s_update1.tar.gz', ] -checksums = ['58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'] +patches = ['LAMMPS-23June2022_fix-timestep-balance-example.patch'] +checksums = [ + {'stable_23Jun2022_update1.tar.gz': '58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'}, + {'LAMMPS-23June2022_fix-timestep-balance-example.patch': + '0ad6c953f08b0d539b189b7aa7cef76774aebb9d633b07d5b6001ac0fcea3081'}, +] builddependencies = [ ('CMake', '3.20.1'), diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos.eb index ccd13ed25c0..b0e9ecf29df 100644 --- a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos.eb +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos.eb @@ -22,7 +22,12 @@ source_urls = [GITHUB_LOWER_SOURCE] sources = [ 'stable_%(version)s_update1.tar.gz', ] -checksums = ['58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'] +patches = ['LAMMPS-23June2022_fix-timestep-balance-example.patch'] +checksums = [ + {'stable_23Jun2022_update1.tar.gz': '58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'}, + {'LAMMPS-23June2022_fix-timestep-balance-example.patch': + '0ad6c953f08b0d539b189b7aa7cef76774aebb9d633b07d5b6001ac0fcea3081'}, +] builddependencies = [ ('CMake', '3.20.1'), diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos-CUDA-11.4.1.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos-CUDA-11.4.1.eb index aeba49e36ce..52a83a2780b 100644 --- a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos-CUDA-11.4.1.eb +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos-CUDA-11.4.1.eb @@ -24,7 +24,12 @@ source_urls = [GITHUB_LOWER_SOURCE] sources = [ 'stable_%(version)s_update1.tar.gz', ] -checksums = ['58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'] +patches = ['LAMMPS-23June2022_fix-timestep-balance-example.patch'] +checksums = [ + {'stable_23Jun2022_update1.tar.gz': '58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'}, + {'LAMMPS-23June2022_fix-timestep-balance-example.patch': + '0ad6c953f08b0d539b189b7aa7cef76774aebb9d633b07d5b6001ac0fcea3081'}, +] builddependencies = [ ('CMake', '3.22.1'), diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos.eb index e464d600e94..02df689ed2a 100644 --- a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos.eb +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos.eb @@ -20,7 +20,12 @@ toolchainopts = {'openmp': True, 'usempi': True} # 'https://github.com/lammps/lammps/archive/' source_urls = [GITHUB_LOWER_SOURCE] sources = ['stable_%(version)s_update1.tar.gz'] -checksums = ['58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'] +patches = ['LAMMPS-23June2022_fix-timestep-balance-example.patch'] +checksums = [ + {'stable_23Jun2022_update1.tar.gz': '58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'}, + {'LAMMPS-23June2022_fix-timestep-balance-example.patch': + '0ad6c953f08b0d539b189b7aa7cef76774aebb9d633b07d5b6001ac0fcea3081'}, +] builddependencies = [ ('CMake', '3.22.1'), @@ -44,14 +49,16 @@ dependencies = [ ('kim-api', '2.3.0'), ('Eigen', '3.4.0'), ('PLUMED', '2.7.3'), - ('ScaFaCoS', '1.0.1'), ('SciPy-bundle', '2021.10'), # VTK package is auto-disabled if this dep is not available ('VTK', '9.1.0'), ] if ARCH == 'x86_64': - # TBB is an optional dependency when building on Intel arch - dependencies += [('tbb', '2020.3'), ] + # TBB and ScaFaCoSis an optional dependency when building on Intel arch + dependencies += [ + ('tbb', '2020.3'), + ('ScaFaCoS', '1.0.1'), + ] # To use additional custom configuration options, use the 'configopts' easyconfig parameter # See docs and lammps easyblock for more information. diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2022a-kokkos.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2022a-kokkos.eb index afb1af60e3a..49d6a09592c 100644 --- a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2022a-kokkos.eb +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2022a-kokkos.eb @@ -20,7 +20,12 @@ toolchainopts = {'openmp': True, 'usempi': True} # 'https://github.com/lammps/lammps/archive/' source_urls = [GITHUB_LOWER_SOURCE] sources = ['stable_%(version)s_update4.tar.gz'] -checksums = ['42541b4dbd0d339d16ddb377e76d192bc3d1d5712fdf9e2cdc838fc980d0a0cf'] +patches = ['LAMMPS-23June2022_fix-timestep-balance-example.patch'] +checksums = [ + {'stable_23Jun2022_update4.tar.gz': '42541b4dbd0d339d16ddb377e76d192bc3d1d5712fdf9e2cdc838fc980d0a0cf'}, + {'LAMMPS-23June2022_fix-timestep-balance-example.patch': + '0ad6c953f08b0d539b189b7aa7cef76774aebb9d633b07d5b6001ac0fcea3081'}, +] builddependencies = [ ('CMake', '3.23.1'), diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23June2022_fix-timestep-balance-example.patch b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23June2022_fix-timestep-balance-example.patch new file mode 100644 index 00000000000..d01f00767ce --- /dev/null +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23June2022_fix-timestep-balance-example.patch @@ -0,0 +1,32 @@ +reduce timestep to fix sanity check commands, +see https://github.com/lammps/lammps/commit/9b88ba595d0f05e384cbe6c94cd42870ad15f3bc + https://github.com/lammps/lammps/pull/3950 +diff -ru lammps-stable_23Jun2022_update1.orig/examples/balance/in.balance lammps-stable_23Jun2022_update1/examples/balance/in.balance +--- lammps-stable_23Jun2022_update1.orig/examples/balance/in.balance 2022-08-05 22:57:43.000000000 +0200 ++++ lammps-stable_23Jun2022_update1/examples/balance/in.balance 2023-11-16 15:12:32.007322455 +0100 +@@ -50,5 +50,6 @@ + + thermo_style custom step temp epair press f_10[3] f_10 + thermo 100 ++timestep 0.001 + + run 10000 +diff -ru lammps-stable_23Jun2022_update1.orig/examples/balance/in.balance.bond.fast lammps-stable_23Jun2022_update1/examples/balance/in.balance.bond.fast +--- lammps-stable_23Jun2022_update1.orig/examples/balance/in.balance.bond.fast 2022-08-05 22:57:43.000000000 +0200 ++++ lammps-stable_23Jun2022_update1/examples/balance/in.balance.bond.fast 2023-11-16 15:12:42.151429264 +0100 +@@ -59,5 +59,6 @@ + + thermo_style custom step temp epair press f_10[3] f_10 + thermo 100 ++timestep 0.001 + + run 10000 +diff -ru lammps-stable_23Jun2022_update1.orig/examples/balance/in.balance.bond.slow lammps-stable_23Jun2022_update1/examples/balance/in.balance.bond.slow +--- lammps-stable_23Jun2022_update1.orig/examples/balance/in.balance.bond.slow 2022-08-05 22:57:43.000000000 +0200 ++++ lammps-stable_23Jun2022_update1/examples/balance/in.balance.bond.slow 2023-11-16 15:12:51.438706639 +0100 +@@ -58,5 +58,6 @@ + + thermo_style custom step temp epair press f_10[3] f_10 + thermo 100 ++timestep 0.001 + + run 40000 diff --git a/easybuild/easyconfigs/l/LERC/LERC-3.0-GCCcore-10.2.0.eb b/easybuild/easyconfigs/l/LERC/LERC-3.0-GCCcore-10.2.0.eb index 6e3105ea152..a75e046b3d0 100644 --- a/easybuild/easyconfigs/l/LERC/LERC-3.0-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/l/LERC/LERC-3.0-GCCcore-10.2.0.eb @@ -21,13 +21,19 @@ builddependencies = [ ('CMake', '3.18.4'), ] +configopts = '-DCMAKE_INSTALL_LIBDIR=lib' + postinstallcmds = [ + # copy the LercTest source file to a LercTest subdir in the installation directory and compile it + # (needs to be done here instead of in the sanity check, else it won't work when RPATH linking is enabled) "cd %(builddir)s/lerc-%(version)s/src/LercTest && sed -i -e 's@../LercLib/include/@@' main.cpp", - "cp %(builddir)s/lerc-%(version)s/src/LercTest/main.cpp %(installdir)s/test.c", + "mkdir %(installdir)s/LercTest", + "cp %(builddir)s/lerc-%(version)s/src/LercTest/main.cpp %(installdir)s/LercTest/main.cpp", + "cd %(installdir)s/LercTest && ${CXX} ${CXXFLAGS} main.cpp -o LercTest -I../include -L../lib -lLerc", ] sanity_check_commands = [ - "mkdir -p %(builddir)s && cd %(builddir)s && g++ %(installdir)s/test.c -o lerctest -lLerc && ./lerctest", + "%(installdir)s/LercTest/LercTest", ] sanity_check_paths = { diff --git a/easybuild/easyconfigs/l/LERC/LERC-3.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/l/LERC/LERC-3.0-GCCcore-10.3.0.eb index b1976a9c3c2..244ff0d0dde 100644 --- a/easybuild/easyconfigs/l/LERC/LERC-3.0-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/l/LERC/LERC-3.0-GCCcore-10.3.0.eb @@ -22,13 +22,19 @@ builddependencies = [ ('CMake', '3.20.1'), ] +configopts = '-DCMAKE_INSTALL_LIBDIR=lib' + postinstallcmds = [ + # copy the LercTest source file to a LercTest subdir in the installation directory and compile it + # (needs to be done here instead of in the sanity check, else it won't work when RPATH linking is enabled) "cd %(builddir)s/lerc-%(version)s/src/LercTest && sed -i -e 's@../LercLib/include/@@' main.cpp", - "cp %(builddir)s/lerc-%(version)s/src/LercTest/main.cpp %(installdir)s/test.c", + "mkdir %(installdir)s/LercTest", + "cp %(builddir)s/lerc-%(version)s/src/LercTest/main.cpp %(installdir)s/LercTest/main.cpp", + "cd %(installdir)s/LercTest && ${CXX} ${CXXFLAGS} main.cpp -o LercTest -I../include -L../lib -lLerc", ] sanity_check_commands = [ - "mkdir -p %(builddir)s && cd %(builddir)s && g++ %(installdir)s/test.c -o lerctest -lLerc && ./lerctest", + "%(installdir)s/LercTest/LercTest", ] sanity_check_paths = { diff --git a/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-11.3.0.eb index fa7d3b7baa5..0e4b8e45445 100644 --- a/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-11.3.0.eb @@ -22,13 +22,19 @@ builddependencies = [ ('CMake', '3.23.1'), ] +configopts = '-DCMAKE_INSTALL_LIBDIR=lib' + postinstallcmds = [ + # copy the LercTest source file to a LercTest subdir in the installation directory and compile it + # (needs to be done here instead of in the sanity check, else it won't work when RPATH linking is enabled) "cd %(builddir)s/lerc-%(version)s/src/LercTest && sed -i -e 's@../LercLib/include/@@' main.cpp", - "cp %(builddir)s/lerc-%(version)s/src/LercTest/main.cpp %(installdir)s/test.c", + "mkdir %(installdir)s/LercTest", + "cp %(builddir)s/lerc-%(version)s/src/LercTest/main.cpp %(installdir)s/LercTest/main.cpp", + "cd %(installdir)s/LercTest && ${CXX} ${CXXFLAGS} main.cpp -o LercTest -I../include -L../lib -lLerc", ] sanity_check_commands = [ - "mkdir -p %(builddir)s && cd %(builddir)s && g++ %(installdir)s/test.c -o lerctest -lLerc && ./lerctest", + "%(installdir)s/LercTest/LercTest", ] sanity_check_paths = { diff --git a/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-12.2.0.eb index 6c38a24f2d4..195f472bdb3 100644 --- a/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-12.2.0.eb @@ -22,13 +22,19 @@ builddependencies = [ ('CMake', '3.24.3'), ] +configopts = '-DCMAKE_INSTALL_LIBDIR=lib' + postinstallcmds = [ + # copy the LercTest source file to a LercTest subdir in the installation directory and compile it + # (needs to be done here instead of in the sanity check, else it won't work when RPATH linking is enabled) "cd %(builddir)s/lerc-%(version)s/src/LercTest && sed -i -e 's@../LercLib/include/@@' main.cpp", - "cp %(builddir)s/lerc-%(version)s/src/LercTest/main.cpp %(installdir)s/test.c", + "mkdir %(installdir)s/LercTest", + "cp %(builddir)s/lerc-%(version)s/src/LercTest/main.cpp %(installdir)s/LercTest/main.cpp", + "cd %(installdir)s/LercTest && ${CXX} ${CXXFLAGS} main.cpp -o LercTest -I../include -L../lib -lLerc", ] sanity_check_commands = [ - "mkdir -p %(builddir)s && cd %(builddir)s && g++ %(installdir)s/test.c -o lerctest -lLerc && ./lerctest", + "%(installdir)s/LercTest/LercTest", ] sanity_check_paths = { diff --git a/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-12.3.0.eb index f02f2cfe6ab..20a4a92f02a 100644 --- a/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/l/LERC/LERC-4.0.0-GCCcore-12.3.0.eb @@ -22,13 +22,19 @@ builddependencies = [ ('CMake', '3.26.3'), ] +configopts = '-DCMAKE_INSTALL_LIBDIR=lib' + postinstallcmds = [ + # copy the LercTest source file to a LercTest subdir in the installation directory and compile it + # (needs to be done here instead of in the sanity check, else it won't work when RPATH linking is enabled) "cd %(builddir)s/lerc-%(version)s/src/LercTest && sed -i -e 's@../LercLib/include/@@' main.cpp", - "cp %(builddir)s/lerc-%(version)s/src/LercTest/main.cpp %(installdir)s/test.c", + "mkdir %(installdir)s/LercTest", + "cp %(builddir)s/lerc-%(version)s/src/LercTest/main.cpp %(installdir)s/LercTest/main.cpp", + "cd %(installdir)s/LercTest && ${CXX} ${CXXFLAGS} main.cpp -o LercTest -I../include -L../lib -lLerc", ] sanity_check_commands = [ - "mkdir -p %(builddir)s && cd %(builddir)s && g++ %(installdir)s/test.c -o lerctest -lLerc && ./lerctest", + "%(installdir)s/LercTest/LercTest", ] sanity_check_paths = { 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..083cb931db2 --- /dev/null +++ b/easybuild/easyconfigs/l/LHAPDF/LHAPDF-6.5.4-GCC-12.3.0.eb @@ -0,0 +1,51 @@ +# 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 $LHAPDF_DATA_PATH: +`export LHAPDF_DATA_PATH=/local/.../path/:$LHAPDF_DATA_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' diff --git a/easybuild/easyconfigs/l/Libint/Libint-2.7.2-GCC-12.3.0-lmax-6-cp2k.eb b/easybuild/easyconfigs/l/Libint/Libint-2.7.2-GCC-12.3.0-lmax-6-cp2k.eb new file mode 100644 index 00000000000..6ff9830cca2 --- /dev/null +++ b/easybuild/easyconfigs/l/Libint/Libint-2.7.2-GCC-12.3.0-lmax-6-cp2k.eb @@ -0,0 +1,52 @@ +## +# This easyconfig is based on the easy config written originally by Robert Mijakovic +# Author: Ben Czaja (SURF) +## +name = 'Libint' +version = '2.7.2' +local_lmax = 6 +# custom configuration, to be used as dependency for CP2K +versionsuffix = '-lmax-%s-cp2k' % local_lmax + +homepage = 'https://github.com/evaleev/libint' +description = """Libint library is used to evaluate the traditional (electron repulsion) and certain novel two-body + matrix elements (integrals) over Cartesian Gaussian functions used in modern atomic and molecular theory.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True, 'cstd': 'c++11'} + +source_urls = ['https://github.com/evaleev/libint/archive'] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'Libint-2.7.2_remove-test-permute.patch', + 'Libint-2.7.2_remove-test-eri.patch', +] +checksums = [ + 'fd0466ce9eb6786b8c5bbe3d510e387ed44b198a163264dfd7e60b337e295fd9', # v2.7.2.tar.gz + 'b019e66a2a3dc7e83ee8a60aa1ae78955a8af4df90ab07b7e57d2ee004ce3677', # Libint-2.7.2_remove-test-permute.patch + '4dd7b2993b6fdebb57e5c14faa9bf46117ae42100c686ace82fe26b7cb0312ab', # Libint-2.7.2_remove-test-eri.patch +] + +builddependencies = [ + ('Autotools', '20220317'), + ('GMP', '6.2.1'), + ('Boost', '1.82.0'), + ('Eigen', '3.4.0'), + ('Python', '3.11.3'), + ('CMake', '3.26.3'), +] + +# configure options as required by CP2K, +# see Jenkinsfile in https://github.com/cp2k/libint-cp2k +local_eri_max_am = '%s,%s' % (local_lmax, local_lmax - 1) +local_eri23_max_am = '%s,%s' % (local_lmax + 2, local_lmax + 1) + +libint_compiler_configopts = '--enable-eri=1 --enable-eri2=1 --enable-eri3=1 --with-max-am=%s ' % local_lmax +libint_compiler_configopts += '--with-eri-max-am=%s ' % local_eri_max_am +libint_compiler_configopts += '--with-eri2-max-am=%s ' % local_eri23_max_am +libint_compiler_configopts += '--with-eri3-max-am=%s ' % local_eri23_max_am +libint_compiler_configopts += '--enable-generic-code --disable-unrolling' + +with_fortran = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/LinBox/LinBox-1.7.0-gfbf-2022a.eb b/easybuild/easyconfigs/l/LinBox/LinBox-1.7.0-gfbf-2022a.eb new file mode 100644 index 00000000000..b8c32471efc --- /dev/null +++ b/easybuild/easyconfigs/l/LinBox/LinBox-1.7.0-gfbf-2022a.eb @@ -0,0 +1,44 @@ +## +# This file is an EasyBuild recipe; see https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright (c) 2016 Riccardo Murri +# Authors:: Riccardo Murri +# License:: GPL +# +## + +easyblock = 'ConfigureMake' + +name = 'LinBox' +version = '1.7.0' + +homepage = 'https://linalg.org/' +description = "C++ library for exact, high-performance linear algebra" + +toolchain = {'name': 'gfbf', 'version': '2022a'} + +source_urls = ['https://github.com/linbox-team/linbox/releases/download/v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['6d2159fd395be0298362dd37f6c696676237bc8e2757341fbc46520e3b466bcc'] + +dependencies = [ + ('FFLAS-FFPACK', '2.5.0'), + ('FLINT', '2.9.0'), + ('Givaro', '4.2.0'), + ('IML', '1.0.5'), + ('NTL', '11.5.1'), +] + +configopts = "--with-fflas-ffpack=$EBROOTFFLASMINFFPACK --with-flint=$EBROOTFLINT " +configopts += "--with-givaro=$EBROOTGIVARO --with-iml=$EBROOTIML --with-ntl=$EBROOTNTL " +configopts += "--enable-openmp --enable-shared " + +sanity_check_paths = { + 'files': ['bin/linbox-config', 'include/linbox/linbox-config.h'] + + ['lib/liblinbox.%s' % e for e in ['a', SHLIB_EXT]], + 'dirs': ['bin', 'include', 'lib'], +} + +sanity_check_commands = ["linbox-config --help"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/l/LittleCMS/LittleCMS-2.15-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/LittleCMS/LittleCMS-2.15-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..31e22ec7db5 --- /dev/null +++ b/easybuild/easyconfigs/l/LittleCMS/LittleCMS-2.15-GCCcore-13.2.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'LittleCMS' +version = '2.15' + +homepage = 'https://www.littlecms.com/' +description = """ Little CMS intends to be an OPEN SOURCE small-footprint color management engine, + with special focus on accuracy and performance. """ + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://sourceforge.net/projects/lcms/files/lcms/%s/' % '.'.join(version.split('.')[:2])] +sources = ['lcms2-%(version)s.tar.gz'] +checksums = ['b20cbcbd0f503433be2a4e81462106fa61050a35074dc24a4e356792d971ab39'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [('libjpeg-turbo', '3.0.1')] + +sanity_check_paths = { + 'files': ['bin/jpgicc', 'bin/linkicc', 'bin/psicc', 'bin/transicc', 'include/lcms2.h', 'include/lcms2_plugin.h', + 'lib/liblcms2.a', 'lib/liblcms2.%s' % SHLIB_EXT, 'lib/pkgconfig/lcms2.pc'], + 'dirs': ['share/man'], +} + +moduleclass = 'vis' 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..44a0bc2bc79 --- /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': 'e15c3c3c1dfb2e321f9ac253b56e3051dd3e72afa30e0587fe61493436c110fa'}, +] + +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' 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..2b17fdba46e --- /dev/null +++ b/easybuild/easyconfigs/l/LoopTools/LoopTools-2.15_makefile.patch @@ -0,0 +1,102 @@ +# 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 @@ + 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) diff --git a/easybuild/easyconfigs/l/lcalc/lcalc-2.0.5-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/lcalc/lcalc-2.0.5-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..8833e01d498 --- /dev/null +++ b/easybuild/easyconfigs/l/lcalc/lcalc-2.0.5-GCCcore-11.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'lcalc' +version = '2.0.5' + +homepage = 'https://gitlab.com/sagemath/lcalc' +description = "Lcalc is a package for working with L-functions." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://gitlab.com/sagemath/lcalc/uploads/25f029f3c02fcb6c3174972e0ac0e192/'] +sources = [SOURCE_TAR_XZ] +checksums = ['d780c385579cc6ee45fa27ccd2d3a3c4157fbb5ef8cd1b8951d1028bbc64c035'] + +builddependencies = [ + ('Autotools', '20220317'), + ('binutils', '2.38'), + ('gengetopt', '2.23'), + ('pkgconf', '1.8.0'), +] + +preconfigopts = "autoreconf -f -i && " + +configopts = "--with-pari " + +dependencies = [ + ('MPFR', '4.1.0'), + ('PARI-GP', '2.15.4'), +] + +sanity_check_paths = { + 'files': ['bin/lcalc', 'include/lcalc/L.h', 'lib/libLfunction.%s' % SHLIB_EXT], + 'dirs': ['share'], +} + +sanity_check_commands = ["lcalc --help"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-12.3.0.eb index c636b6c6a9d..326dfd2626e 100644 --- a/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-12.3.0.eb @@ -13,9 +13,12 @@ source_urls = ['https://mesa.freedesktop.org/archive/glu/'] sources = ['glu-%(version)s.tar.xz'] checksums = ['bd43fe12f374b1192eb15fe20e45ff456b9bc26ab57f0eee919f96ca0f8a330f'] -builddependencies = [('binutils', '2.40'), - ('Ninja', '1.11.1'), - ('Meson', '1.1.1')] +builddependencies = [ + ('pkgconf', '1.9.5'), + ('binutils', '2.40'), + ('Ninja', '1.11.1'), + ('Meson', '1.1.1'), +] dependencies = [('Mesa', '23.1.4')] diff --git a/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-13.2.0.eb index 6de3d5baea2..b2c0581c7f6 100644 --- a/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/l/libGLU/libGLU-9.0.3-GCCcore-13.2.0.eb @@ -13,9 +13,12 @@ source_urls = ['https://mesa.freedesktop.org/archive/glu/'] sources = ['glu-%(version)s.tar.xz'] checksums = ['bd43fe12f374b1192eb15fe20e45ff456b9bc26ab57f0eee919f96ca0f8a330f'] -builddependencies = [('binutils', '2.40'), - ('Ninja', '1.11.1'), - ('Meson', '1.2.3')] +builddependencies = [ + ('pkgconf', '2.0.3'), + ('binutils', '2.40'), + ('Ninja', '1.11.1'), + ('Meson', '1.2.3'), +] dependencies = [('Mesa', '23.1.9')] 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..9274a05f2cd --- /dev/null +++ b/easybuild/easyconfigs/l/libaed2/libaed2-1.3.0-GCC-10.3.0.eb @@ -0,0 +1,32 @@ +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'] +checksums = ['9152c2a5ac6da4162f73dc37c4a98e1cbd19a106195441b3d27a6df1911242f5'] + +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/l/libepoxy/libepoxy-1.5.10-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libepoxy/libepoxy-1.5.10-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..a3a41bd2a7a --- /dev/null +++ b/easybuild/easyconfigs/l/libepoxy/libepoxy-1.5.10-GCCcore-13.2.0.eb @@ -0,0 +1,37 @@ +easyblock = 'MesonNinja' + +name = 'libepoxy' +version = '1.5.10' + +homepage = 'https://github.com/anholt/libepoxy' +description = "Epoxy is a library for handling OpenGL function pointer management for you" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +github_account = 'anholt' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['a7ced37f4102b745ac86d6a70a9da399cc139ff168ba6b8002b4d8d43c900c15'] + +builddependencies = [ + ('binutils', '2.40'), + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('X11', '20231019'), + ('Mesa', '23.1.9'), +] + +configopts = '-Degl=yes --libdir %(installdir)s/lib ' + +sanity_check_paths = { + 'files': ['include/epoxy/%s.h' % x for x in ['common', 'egl_generated', 'egl', 'gl_generated', + 'gl', 'glx_generated', 'glx']] + + ['lib/libepoxy.%s' % SHLIB_EXT], + 'dirs': ['lib'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libfdf/libfdf-0.5.0-GCC-11.3.0.eb b/easybuild/easyconfigs/l/libfdf/libfdf-0.5.0-GCC-11.3.0.eb new file mode 100644 index 00000000000..245b4e41e57 --- /dev/null +++ b/easybuild/easyconfigs/l/libfdf/libfdf-0.5.0-GCC-11.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeMake' + +name = 'libfdf' +version = '0.5.0' + +homepage = 'https://gitlab.com/siesta-project/libraries/libfdf' +description = """LibFDF is the official implementation of the FDF specifications for use in client codes.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://gitlab.com/siesta-project/libraries/libfdf/-/archive/%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['a8ac07a0d27ec9a96ee0691221cee8a18b5c60aaa001fcdc6858a9bfa0782f5f'] + +builddependencies = [ + ('CMake', '3.23.1'), +] + +sanity_check_paths = { + 'files': ['lib/libfdf.a'], + 'dirs': ['include', 'lib/pkgconfig', 'lib/cmake/libfdf'], +} + +runtest = 'test' + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/l/libjxl/libjxl-0.8.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libjxl/libjxl-0.8.2-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..d5b0cc38223 --- /dev/null +++ b/easybuild/easyconfigs/l/libjxl/libjxl-0.8.2-GCCcore-13.2.0.eb @@ -0,0 +1,52 @@ +easyblock = 'CMakeMake' + +name = 'libjxl' +version = '0.8.2' + +homepage = 'https://github.com/libjxl/libjxl' +description = "JPEG XL image format reference implementation" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +github_account = 'libjxl' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['c70916fb3ed43784eb840f82f05d390053a558e2da106e40863919238fa7b420'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), + ('googletest', '1.14.0'), + ('pkgconf', '2.0.3'), + ('Highway', '1.0.7'), # Highway only has a static library +] + +dependencies = [ + ('LittleCMS', '2.15'), + ('Brotli', '1.1.0'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.40'), + ('zlib', '1.2.13'), + ('giflib', '5.2.1'), + ('libwebp', '1.3.2'), + ('OpenEXR', '3.2.0'), + ('gperftools', '2.13'), +] + +configopts = '-DJPEGXL_WARNINGS_AS_ERRORS=OFF -DJPEGXL_ENABLE_SJPEG=OFF -DJPEGXL_ENABLE_SKCMS=OFF ' +# building man pages requires/uses asciidoc (which may be installed in OS, and may fail) +configopts += '-DJPEGXL_ENABLE_MANPAGES=OFF ' +configopts += '-DJPEGXL_FORCE_SYSTEM_BROTLI=ON -DJPEGXL_FORCE_SYSTEM_HWY=ON ' +configopts += '-DJPEGXL_FORCE_SYSTEM_GTEST=ON -DJPEGXL_FORCE_SYSTEM_LCMS2=ON ' + +sanity_check_paths = { + 'files': ['bin/cjxl', 'bin/djxl', 'lib/libjxl.%s' % SHLIB_EXT], + 'dirs': ['include/jxl'], +} + +sanity_check_commands = [ + "cjxl --help", + "djxl --help", +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libvori/libvori-220621-GCCcore-12.3.0.eb b/easybuild/easyconfigs/l/libvori/libvori-220621-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..b7185080887 --- /dev/null +++ b/easybuild/easyconfigs/l/libvori/libvori-220621-GCCcore-12.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'CMakeMake' + +name = 'libvori' +version = '220621' + +homepage = 'https://brehm-research.de/libvori.php' +description = """C++ library implementing the Voronoi integration as well as the compressed bqb +file format. The present version of libvori is a very early development +version, which is hard-coded to work with the CP2k program package.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://brehm-research.de/files/'] +sources = [SOURCE_TAR_GZ] +checksums = ['1cfa98c564814bddacf1c0e7f11582137d758668f6307e6eb392c72317984c14'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('binutils', '2.40'), +] + +sanity_check_paths = { + 'files': ['lib/libvori.a'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libxslt/libxslt-1.1.38-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libxslt/libxslt-1.1.38-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..7f763c378c9 --- /dev/null +++ b/easybuild/easyconfigs/l/libxslt/libxslt-1.1.38-GCCcore-13.2.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'libxslt' +version = '1.1.38' + +homepage = 'http://xmlsoft.org/' +description = """Libxslt is the XSLT C library developed for the GNOME project + (but usable outside of the Gnome platform).""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://download.gnome.org/sources/libxslt/%(version_major_minor)s/'] +sources = [SOURCE_TAR_XZ] +checksums = ['1f32450425819a09acaff2ab7a5a7f8a2ec7956e505d7beeb45e843d0e1ecab1'] + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('zlib', '1.2.13'), + ('libxml2', '2.11.5'), +] + +# Make sure it doesn't pick up OS installed libgcrypt or Python +# enable building static libs +configopts = '--with-crypto=no --with-python=no --enable-static=yes ' + +sanity_check_paths = { + 'files': ['bin/xsltproc', 'include/libxslt/xslt.h', 'lib/%%(name)s.%s' % SHLIB_EXT, 'lib/%(name)s.a', + 'lib/libexslt.%s' % SHLIB_EXT, 'lib/libexslt.a'], + 'dirs': ['include/libxslt', 'include/libexslt'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libxsmm/libxsmm-1.17-GCC-12.3.0.eb b/easybuild/easyconfigs/l/libxsmm/libxsmm-1.17-GCC-12.3.0.eb new file mode 100644 index 00000000000..b20b327f489 --- /dev/null +++ b/easybuild/easyconfigs/l/libxsmm/libxsmm-1.17-GCC-12.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'libxsmm' +version = '1.17' + +homepage = 'https://github.com/hfp/libxsmm' +description = """LIBXSMM is a library for small dense and small sparse matrix-matrix multiplications +targeting Intel Architecture (x86).""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/hfp/libxsmm/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['8b642127880e92e8a75400125307724635ecdf4020ca4481e5efe7640451bb92'] + +# install both static and dynamic version +installopts = ['PREFIX=%(installdir)s', 'PREFIX=%(installdir)s STATIC=0'] + +skipsteps = ['configure'] +maxparallel = 1 + +sanity_check_paths = { + 'files': ['bin/libxsmm_gemm_generator', 'include/libxsmm.h', 'lib/libxsmm.a', 'lib/libxsmm.%s' % SHLIB_EXT], + 'dirs': ['share'] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/l/lrslib/lrslib-7.2-gompi-2022a.eb b/easybuild/easyconfigs/l/lrslib/lrslib-7.2-gompi-2022a.eb new file mode 100644 index 00000000000..e9c03887918 --- /dev/null +++ b/easybuild/easyconfigs/l/lrslib/lrslib-7.2-gompi-2022a.eb @@ -0,0 +1,41 @@ +easyblock = 'ConfigureMake' + +name = 'lrslib' +version = '7.2' + +homepage = 'http://cgm.cs.mcgill.ca/~avis/C/lrs.html' +description = """lrslib is a self-contained ANSI C implementation of the +reverse search algorithm for vertex enumeration/convex hull problems""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = ['http://cgm.cs.mcgill.ca/~avis/C/lrslib/archive/'] +sources = ['lrslib-0%(version_major)s%(version_minor)s.tar.gz'] +patches = ['lrslib-%(version)s-use-EB-values.patch'] +checksums = [ + {'lrslib-072.tar.gz': 'fc48754a1ded1d8445d40ecfbe3546e4f27d53aaee95dc2c8c0c79fb9cd532f0'}, + {'lrslib-7.2-use-EB-values.patch': '16b0b4d987a751a45c7961bb7e0cb12aac50410a562dab3299335186456ab2ad'}, +] + +dependencies = [ + ('GMP', '6.2.1'), +] + +skipsteps = ['configure'] + +# Default built plus mplrs +buildopts = 'lrs lrsgmp mplrs CFLAGS="$CFLAGS"' + +installopts = 'prefix=%(installdir)s' + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['lrs', 'lrsnash']] + + ['include/lrslib/lrs%s.h' % h for h in ['driver', 'gmp', 'lib', 'long', 'mp', 'restart']] + + ['lib/liblrs.%s' % SHLIB_EXT], + 'dirs': [] +} + +sanity_check_commands = ["lrsnash --help 2>&1 | grep 'usage.*lrsnash'"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/l/lrslib/lrslib-7.2-use-EB-values.patch b/easybuild/easyconfigs/l/lrslib/lrslib-7.2-use-EB-values.patch new file mode 100644 index 00000000000..c84ecf21b05 --- /dev/null +++ b/easybuild/easyconfigs/l/lrslib/lrslib-7.2-use-EB-values.patch @@ -0,0 +1,183 @@ +# Fix makefile to use EB environment +# Ward Poelmans, Alex Domingo (Vrije Universiteit Brussel) +# updated to version 7.2 by Miguel Dias Costa (National University of Singapore) +--- lrslib-072/makefile.orig 2023-11-06 13:50:57.098070000 +0800 ++++ lrslib-072/makefile 2023-11-06 13:58:17.056703000 +0800 +@@ -30,8 +30,8 @@ + #LIBDIR = /usr/lib + + #Kyoto machines usage +-INCLUDEDIR = /usr/local/include +-LIBDIR = /usr/local/lib ++#INCLUDEDIR = /usr/local/include ++#LIBDIR = /usr/local/lib + + CFLAGS ?= -O3 -Wall + #CFLAGS = -g -Wall +@@ -61,7 +61,7 @@ + MPLRSOBJ64=lrslong1-mplrs.o lrslib1-mplrs.o lrslibgmp-mplrs.o lrsgmp-mplrs.o lrsdriver-mplrs.o mplrs64.o + + lrs: ${LRSOBJ} +- $(CC) ${CFLAGS} -DMA ${BITS} -L${LIBDIR} -o lrs ${LRSOBJ} -lgmp ++ $(CC) ${CFLAGS} -DMA ${BITS} $(LDFLAGS) -o lrs ${LRSOBJ} -lgmp + $(CC) -O3 hvref.c -o hvref + ln -s -f lrs redund + +@@ -71,7 +71,7 @@ + ln -s -f lrs redund + + lrs64: ${LRSOBJ64} +- $(CC) ${CFLAGS} -DMA -L${LIBDIR} -o lrs ${LRSOBJ64} -lgmp ++ $(CC) ${CFLAGS} -DMA $(LDFLAGS) -o lrs ${LRSOBJ64} -lgmp + + lrs.o: lrs.c + $(CC) ${CFLAGS} -DMA ${BITS} -c -o lrs.o lrs.c +@@ -92,22 +92,22 @@ + $(CC) ${CFLAGS} -DMA -DSAFE ${BITS} -DLRSLONG -c -o lrslib2.o lrslib.c + + lrslibgmp.o: lrslib.c lrslib.h +- $(CC) ${CFLAGS} -DMA -DGMP -I${INCLUDEDIR} -c -o lrslibgmp.o lrslib.c ++ $(CC) ${CFLAGS} -DMA -DGMP $(CPPFLAGS) -c -o lrslibgmp.o lrslib.c + + lrslibmp.o: lrslib.c lrslib.h + $(CC) ${CFLAGS} -DMA -DMP -c -o lrslibmp.o lrslib.c + + lrsgmp.o: lrsgmp.c lrsgmp.h +- $(CC) ${CFLAGS} -DMA -DGMP -I${INCLUDEDIR} -c -o lrsgmp.o lrsgmp.c ++ $(CC) ${CFLAGS} -DMA -DGMP $(CPPFLAGS) -c -o lrsgmp.o lrsgmp.c + + lrsmp.o: lrsmp.c lrsmp.h + $(CC) ${CFLAGS} -DMA -DMP -c -o lrsmp.o lrsmp.c + + inedel: inedel.c lrsgmp.h lrsgmp.c +- $(CC) ${CFLAGS} -I${INCLUDEDIR} -L${LIBDIR} -DGMP -o inedel inedel.c lrsgmp.c -lgmp ++ $(CC) ${CFLAGS} $(CPPFLAGS) $(LDFLAGS) -DGMP -o inedel inedel.c lrsgmp.c -lgmp + + checkpred: checkpred.c lrsgmp.h lrsgmp.c +- $(CC) $(CFLAGS) -I${INCLUDEDIR} -L${LIBDIR} -DGMP -o checkpred checkpred.c lrsgmp.c -lgmp ++ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -DGMP -o checkpred checkpred.c lrsgmp.c -lgmp + + lrslong1-mplrs.o: lrslong.c lrslong.h + $(mpicxx) ${CFLAGS} -DTIMES -DSIGNALS -DMA -DSAFE -DLRSLONG -DPLRS -c -o lrslong1-mplrs.o lrslong.c +@@ -122,28 +122,28 @@ + $(mpicxx) ${CFLAGS} -DTIMES -DSIGNALS -DMA -DSAFE ${BITS} -DLRSLONG -DPLRS -c -o lrslib2-mplrs.o lrslib.c + + lrslibgmp-mplrs.o: lrslib.c lrslib.h +- $(mpicxx) ${CFLAGS} -DMA -DTIMES -DSIGNALS -DGMP -DPLRS -I${INCLUDEDIR} -c -o lrslibgmp-mplrs.o lrslib.c ++ $(mpicxx) ${CFLAGS} -DMA -DTIMES -DSIGNALS -DGMP -DPLRS $(CPPFLAGS) -c -o lrslibgmp-mplrs.o lrslib.c + + lrsgmp-mplrs.o: lrsgmp.c lrsgmp.h +- $(mpicxx) ${CFLAGS} -DMA -DTIMES -DSIGNALS -DGMP -DPLRS -I${INCLUDEDIR} -c -o lrsgmp-mplrs.o lrsgmp.c ++ $(mpicxx) ${CFLAGS} -DMA -DTIMES -DSIGNALS -DGMP -DPLRS $(CPPFLAGS) -c -o lrsgmp-mplrs.o lrsgmp.c + + lrsdriver-mplrs.o: lrsdriver.c lrsdriver.h lrslib.h + $(mpicxx) $(CFLAGS) -c -o lrsdriver-mplrs.o lrsdriver.c + + mplrs.o: mplrs.c mplrs.h lrslib.h lrsgmp.h +- $(mpicxx) ${CFLAGS} -I${INCLUDEDIR} -DMA -DPLRS -DTIMES ${BITS} -DSIGNALS -D_WITH_GETLINE -c -o mplrs.o mplrs.c ++ $(mpicxx) ${CFLAGS} $(CPPFLAGS) -DMA -DPLRS -DTIMES ${BITS} -DSIGNALS -D_WITH_GETLINE -c -o mplrs.o mplrs.c + + mplrs64.o: mplrs.c mplrs.h lrslib.h lrsgmp.h +- $(mpicxx) ${CFLAGS} -I${INCLUDEDIR} -DMA -DPLRS -DTIMES -DSIGNALS -D_WITH_GETLINE -c -o mplrs64.o mplrs.c ++ $(mpicxx) ${CFLAGS} $(CPPFLAGS) -DMA -DPLRS -DTIMES -DSIGNALS -D_WITH_GETLINE -c -o mplrs64.o mplrs.c + + mplrs: ${MPLRSOBJ} mplrsgmp +- $(mpicxx) ${CFLAGS} -DTIMES -DSIGNALS -D_WITH_GETLINE -DPLRS -DMA ${BITS} -L${LIBDIR} -o mplrs ${MPLRSOBJ} -lgmp ++ $(mpicxx) ${CFLAGS} -DTIMES -DSIGNALS -D_WITH_GETLINE -DPLRS -DMA ${BITS} $(LDFLAGS) -o mplrs ${MPLRSOBJ} -lgmp + + mplrs64: ${MPLRSOBJ64} mplrsgmp +- $(mpicxx) ${CFLAGS} -DTIMES -DSIGNALS -D_WITH_GETLINE -DPLRS -DMA -L${LIBDIR} -o mplrs ${MPLRSOBJ64} -lgmp ++ $(mpicxx) ${CFLAGS} -DTIMES -DSIGNALS -D_WITH_GETLINE -DPLRS -DMA $(LDFLAGS) -o mplrs ${MPLRSOBJ64} -lgmp + + mplrsgmp: mplrs.c mplrs.h lrslib.c lrslib.h lrsgmp.c lrsgmp.h lrsdriver.h lrsdriver.c +- $(mpicxx) ${CFLAGS} -DTIMES -DSIGNALS -D_WITH_GETLINE -DPLRS -DGMP -I${INCLUDEDIR} mplrs.c lrslib.c lrsgmp.c lrsdriver.c -L${LIBDIR} -o mplrsgmp -lgmp ++ $(mpicxx) ${CFLAGS} -DTIMES -DSIGNALS -D_WITH_GETLINE -DPLRS -DGMP $(CPPFLAGS) mplrs.c lrslib.c lrsgmp.c lrsdriver.c $(LDFLAGS) -o mplrsgmp -lgmp + + mplrs1: mplrs.c mplrs.h lrslib.c lrslib.h lrslong.c lrslong.h lrsdriver.h lrsdriver.c + $(mpicxx) ${CFLAGS} -DTIMES -DSIGNALS -D_WITH_GETLINE -DPLRS -DSAFE -DLRSLONG mplrs.c lrslib.c lrslong.c lrsdriver.c -o mplrs1 +@@ -157,17 +157,17 @@ + singlemplrs: mplrsgmp mplrs1 mplrs2 + + flint: lrs.c lrslib.c lrslib.h lrsgmp.c lrsgmp.h +- @test -d ${INCLUDEDIR}/flint || { echo ${INCLUDEDIR}/flint not found; exit 1; } +- $(CC) -O3 -DFLINT -I/usr/local/include/flint lrs.c lrslib.c lrsgmp.c lrsdriver.c -L/usr/local/lib -Wl,-rpath=/usr/local/lib -lflint -o lrsflint -lgmp +-# $(CC) -O3 -DFLINT -I${INCLUDEDIR} -I${INCLUDEDIR}/flint lrs.c lrsdriver.c lrslib.c lrsgmp.c -L${LIBDIR} -lflint -o lrsflint -lgmp ++# @test -d ${INCLUDEDIR}/flint || { echo ${INCLUDEDIR}/flint not found; exit 1; } ++ $(CC) -O3 -DFLINT lrs.c lrslib.c lrsgmp.c lrsdriver.c -Wl,-lflint -o lrsflint -lgmp ++# $(CC) -O3 -DFLINT $(CPPFLAGS) lrs.c lrsdriver.c lrslib.c lrsgmp.c $(LDFLAGS) -lflint -o lrsflint -lgmp + + mplrsflint: mplrs.c mplrs.h lrslib.c lrslib.h lrsgmp.c lrsgmp.h lrsdriver.c lrsdriver.h +- ${mpicxx} ${CFLAGS} -DTIMES -DSIGNALS -D_WITH_GETLINE -DFLINT -I${INCLUDEDIR}/flint -DPLRS -o mplrsflint mplrs.c lrsdriver.c lrslib.c lrsgmp.c -L${LIBDIR} -lflint -lgmp ++ ${mpicxx} ${CFLAGS} -DTIMES -DSIGNALS -D_WITH_GETLINE -DFLINT -DPLRS -o mplrsflint mplrs.c lrsdriver.c lrslib.c lrsgmp.c $(LDFLAGS) -lflint -lgmp + + #comment out lines with ${BITS} if __int128 not supported by your C compiler + + lrsgmp: lrs.c lrslib.c lrslib.h lrsgmp.c lrsgmp.h lrsdriver.h lrsdriver.c +- $(CC) ${CFLAGS} -DGMP -I${INCLUDEDIR} -o lrsgmp lrs.c lrslib.c lrsgmp.c lrsdriver.c -L${LIBDIR} -lgmp ++ $(CC) ${CFLAGS} -DGMP $(CPPFLAGS) -o lrsgmp lrs.c lrslib.c lrsgmp.c lrsdriver.c $(LDFLAGS) -lgmp + ln -s -f lrsgmp redundgmp + + single: lrs.c lrslong.c lrslong.h lrslib.c lrslib.h lrsgmp.c lrsgmp.h lrsdriver.h lrsdriver.c +@@ -188,23 +188,23 @@ + $(CC) -O3 -o 2nash 2nash.c + + demo: lpdemo1.c lrslib.c lrsdriver.c lrslib.h lrsgmp.c lrsgmp.h +- $(CC) -O3 -I${INCLUDEDIR} -L${LIBDIR} -o lpdemo1 lpdemo1.c lrslib.c lrsdriver.c lrsgmp.c -lgmp -DGMP +- $(CC) -O3 -I${INCLUDEDIR} -L${LIBDIR} -o lpdemo lpdemo.c lrslib.c lrsdriver.c lrsgmp.c -lgmp -DGMP +- $(CC) -O3 -I${INCLUDEDIR} -L${LIBDIR} -o lpdemo2 lpdemo2.c lrslib.c lrsdriver.c lrsgmp.c -lgmp -DGMP +- $(CC) -O3 -I${INCLUDEDIR} -L${LIBDIR} -o vedemo vedemo.c lrslib.c lrsdriver.c lrsgmp.c -lgmp -DGMP +- $(CC) -O3 -I${INCLUDEDIR} -L${LIBDIR} -o chdemo chdemo.c lrslib.c lrsdriver.c lrsgmp.c -lgmp -DGMP ++ $(CC) -O3 $(CPPFLAGS) $(LDFLAGS) -o lpdemo1 lpdemo1.c lrslib.c lrsdriver.c lrsgmp.c -lgmp -DGMP ++ $(CC) -O3 $(CPPFLAGS) $(LDFLAGS) -o lpdemo lpdemo.c lrslib.c lrsdriver.c lrsgmp.c -lgmp -DGMP ++ $(CC) -O3 $(CPPFLAGS) $(LDFLAGS) -o lpdemo2 lpdemo2.c lrslib.c lrsdriver.c lrsgmp.c -lgmp -DGMP ++ $(CC) -O3 $(CPPFLAGS) $(LDFLAGS) -o vedemo vedemo.c lrslib.c lrsdriver.c lrsgmp.c -lgmp -DGMP ++ $(CC) -O3 $(CPPFLAGS) $(LDFLAGS) -o chdemo chdemo.c lrslib.c lrsdriver.c lrsgmp.c -lgmp -DGMP + + lrsnash: lrsnash.c lrsnashlib.c lrslib.c lrsnashlib.h lrslib.h lrsgmp.c lrsgmp.h lrsdriver.h lrsdriver.c +- $(CC) -O3 -I${INCLUDEDIR} -L${LIBDIR} -o lrsnash lrsnash.c lrsnashlib.c lrslib.c lrsgmp.c lrsdriver.c -lgmp -DGMP ++ $(CC) -O3 $(CPPFLAGS) $(LDFLAGS) -o lrsnash lrsnash.c lrsnashlib.c lrslib.c lrsgmp.c lrsdriver.c -lgmp -DGMP + + alllrsnash: lrsnash.c nashdemo.c lrsnashlib.c lrslib.c lrsnashlib.h lrslib.h lrsgmp.c lrsgmp.h lrslong.h lrsdriver.h lrsdriver.c +- $(CC) -O3 -I${INCLUDEDIR} -L${LIBDIR} -o lrsnashgmp lrsnash.c lrsnashlib.c lrslib.c lrsgmp.c lrsdriver.c -lgmp -DGMP +- $(CC) -O3 -I${INCLUDEDIR} -L${LIBDIR} -o lrsnash1 lrsnash.c lrsnashlib.c lrslib.c lrslong.c lrsdriver.c -DLRSLONG -DSAFE +- $(CC) -O3 -I${INCLUDEDIR} -L${LIBDIR} -o lrsnash2 lrsnash.c lrsnashlib.c lrslib.c lrslong.c lrsdriver.c -DLRSLONG -DSAFE ${BITS} +- $(CC) -O3 -I${INCLUDEDIR} -L${LIBDIR} -o nashdemo nashdemo.c lrsnashlib.c lrslib.c lrsgmp.c lrsdriver.c -lgmp -DGMP ++ $(CC) -O3 $(CPPFLAGS) $(LDFLAGS) -o lrsnashgmp lrsnash.c lrsnashlib.c lrslib.c lrsgmp.c lrsdriver.c -lgmp -DGMP ++ $(CC) -O3 $(CPPFLAGS) $(LDFLAGS) -o lrsnash1 lrsnash.c lrsnashlib.c lrslib.c lrslong.c lrsdriver.c -DLRSLONG -DSAFE ++ $(CC) -O3 $(CPPFLAGS) $(LDFLAGS) -o lrsnash2 lrsnash.c lrsnashlib.c lrslib.c lrslong.c lrsdriver.c -DLRSLONG -DSAFE ${BITS} ++ $(CC) -O3 $(CPPFLAGS) $(LDFLAGS) -o nashdemo nashdemo.c lrsnashlib.c lrslib.c lrsgmp.c lrsdriver.c -lgmp -DGMP + $(CC) -O3 -DMP -o setupnash setupnash.c lrslib.c lrsdriver.c lrsmp.c + $(CC) -O3 -DMP -o setupnash2 setupnash2.c lrslib.c lrsdriver.c lrsmp.c +- $(CC) -O3 -I${INCLUDEDIR} -L${LIBDIR} -o 2nash 2nash.c ++ $(CC) -O3 $(CPPFLAGS) $(LDFLAGS) -o 2nash 2nash.c + cp lrsnashgmp lrsnash + + ###################################################################### +@@ -248,12 +248,12 @@ + + + lrsnash-shared: ${SHLINK} lrsnash.c +- $(CC) ${CFLAGS} -DGMP -DMA lrsnash.c lrsnashlib.c -I${INCLUDEDIR} -o $@ -L . -llrs -lgmp ++ $(CC) ${CFLAGS} -DGMP -DMA lrsnash.c lrsnashlib.c $(CPPFLAGS) -o $@ -L . -llrs -lgmp + + # driver object files + + lrs-shared.o: lrs.c +- $(CC) ${CFLAGS} -DMA ${BITS} -L${LIBDIR} -c -o $@ lrs.c ++ $(CC) ${CFLAGS} -DMA ${BITS} $(LDFLAGS) -c -o $@ lrs.c + + # build object files for the shared library + +@@ -270,10 +270,10 @@ + $(CC) ${CFLAGS} ${SHLIB_CFLAGS} -DMA -DSAFE ${BITS} -DLRSLONG -c -o $@ lrslong.c + + lrslibgmp-shr.o: lrslib.c lrslib.h +- $(CC) ${CFLAGS} ${SHLIB_CFLAGS} -DMA -DGMP -I${INCLUDEDIR} -c -o $@ lrslib.c ++ $(CC) ${CFLAGS} ${SHLIB_CFLAGS} -DMA -DGMP $(CPPFLAGS) -c -o $@ lrslib.c + + lrsgmp-shr.o: lrsgmp.c lrsgmp.h +- $(CC) ${CFLAGS} ${SHLIB_CFLAGS} -DMA -DGMP -I${INCLUDEDIR} -c -o $@ lrsgmp.c ++ $(CC) ${CFLAGS} ${SHLIB_CFLAGS} -DMA -DGMP $(CPPFLAGS) -c -o $@ lrsgmp.c + + lrslib2-shr.o: lrslib.c lrslib.h + $(CC) ${CFLAGS} ${SHLIB_CFLAGS} -DMA -DSAFE ${BITS} -DLRSLONG -c -o $@ lrslib.c 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' diff --git a/easybuild/easyconfigs/m/MACS2/MACS2-2.2.9.1-foss-2022a.eb b/easybuild/easyconfigs/m/MACS2/MACS2-2.2.9.1-foss-2022a.eb new file mode 100644 index 00000000000..6de5339c98c --- /dev/null +++ b/easybuild/easyconfigs/m/MACS2/MACS2-2.2.9.1-foss-2022a.eb @@ -0,0 +1,35 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +easyblock = 'PythonPackage' + +name = 'MACS2' +version = '2.2.9.1' + +homepage = 'https://github.com/taoliu/MACS' +description = "Model Based Analysis for ChIP-Seq data" + +toolchain = {'name': 'foss', 'version': '2022a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['8d56bc37fb823fc6387d78138ce968405c54a0a8cd9776682705fd0983252d16'] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), +] + +use_pip = True +download_dep_fail = True + +sanity_check_paths = { + 'files': ['bin/macs2'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [('%(namelower)s --version')] + +options = {'modulename': name} + +sanity_pip_check = True + +moduleclass = 'bio' 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/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' 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..9bf0a45a676 --- /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' 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/m/MPFI/MPFI-1.5.4-GCCcore-11.3.0.eb b/easybuild/easyconfigs/m/MPFI/MPFI-1.5.4-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..f0a59fc53cf --- /dev/null +++ b/easybuild/easyconfigs/m/MPFI/MPFI-1.5.4-GCCcore-11.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'MPFI' +version = '1.5.4' + +homepage = 'https://perso.ens-lyon.fr/nathalie.revol/software.html' +description = "MPFI stands for Multiple Precision Floating-point Interval library." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://perso.ens-lyon.fr/nathalie.revol/softwares/'] +sources = ['mpfi-%(version)s.tar.bz2'] +checksums = ['d20ba56a8d57d0816f028be8b18a4aa909a068efcb9a260e69577939e4199752'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [ + ('MPFR', '4.1.0'), +] + +sanity_check_paths = { + 'files': ['include/mpfi.h'] + ['lib/libmpfi.%s' % e for e in ['a', SHLIB_EXT]], + 'dirs': ['share'], +} + +moduleclass = 'math' 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'), diff --git a/easybuild/easyconfigs/m/Miniconda3/Miniconda3-23.9.0-0.eb b/easybuild/easyconfigs/m/Miniconda3/Miniconda3-23.9.0-0.eb new file mode 100644 index 00000000000..890e89a8b08 --- /dev/null +++ b/easybuild/easyconfigs/m/Miniconda3/Miniconda3-23.9.0-0.eb @@ -0,0 +1,27 @@ +easyblock = 'EB_Anaconda' + +name = 'Miniconda3' +version = '23.9.0-0' + +homepage = 'https://docs.conda.io/en/latest/miniconda.html' +description = """Miniconda is a free minimal installer for conda. It is a small, + bootstrap version of Anaconda that includes only conda, Python, the packages they + depend on, and a small number of other useful packages.""" + +toolchain = SYSTEM + +source_urls = ['https://repo.anaconda.com/miniconda/'] +local_arch = {'arm64': 'aarch64'}.get(ARCH, ARCH) +sources = ['%%(name)s-py311_%%(version)s-Linux-%s.sh' % local_arch] +checksums = [ + { + '%(name)s-py311_%(version)s-Linux-x86_64.sh': + '43651393236cb8bb4219dcd429b3803a60f318e5507d8d84ca00dafa0c69f1bb', + '%(name)s-py311_%(version)s-Linux-ppc64le.sh': + '07b53e411c2e4423bd34c3526d6644b916c4b2143daa8fbcb36b8ead412239b9', + '%(name)s-py311_%(version)s-Linux-aarch64.sh': + '1242847b34b23353d429fcbcfb6586f0c373e63070ad7d6371c23ddbb577778a', + } +] + +moduleclass = 'lang' 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..b1209baa6e0 --- /dev/null +++ b/easybuild/easyconfigs/m/MitoHiFi/MitoHiFi-3.2-foss-2022b.eb @@ -0,0 +1,72 @@ +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'), + ('BLAST+', '2.14.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'], + }), +] + +# 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", + "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' 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; + diff --git a/easybuild/easyconfigs/m/Molden/Molden-7.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/m/Molden/Molden-7.3-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..f7c651b05eb --- /dev/null +++ b/easybuild/easyconfigs/m/Molden/Molden-7.3-GCCcore-12.3.0.eb @@ -0,0 +1,50 @@ +easyblock = 'MakeCp' + +name = 'Molden' +version = '7.3' + +homepage = 'https://www.theochem.ru.nl/molden/' +description = """Molden is a package for displaying Molecular Density from the + Ab Initio packages GAMESS-UK, GAMESS-US and GAUSSIAN and the Semi-Empirical + packages Mopac/Ampac""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://ftp.science.ru.nl/Molden/'] +sources = ['%(namelower)s%(version)s.tar.gz'] +patches = [ + 'Molden-7.3_fix_makefile_for_easybuild.patch', + 'Molden-7.3_fix_arg_handling.patch', +] +checksums = [ + {'molden7.3.tar.gz': '870f4fa6635229791bb09bbbd07f51456b2c90101d73564dc47ed7769b8c07a1'}, + {'Molden-7.3_fix_makefile_for_easybuild.patch': 'b97d794cf92978d151d70485250367eebf719885c6a909ca3404a800903e3f7a'}, + {'Molden-7.3_fix_arg_handling.patch': 'e7d0654a7c7a0b069ff4a904d3334ea19f6b0147003bc460745db8b8d5f931cf'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('makedepend', '1.0.7'), +] + +dependencies = [ + ('X11', '20230603'), + ('libglvnd', '1.6.0'), + ('libGLU', '9.0.3'), +] + +buildopts = 'CC="$CC" FC="$F90" FFLAGS="$FFLAGS -fallow-argument-mismatch" all' + +parallel = 1 + +files_to_copy = [(['bin/%s' % x for x in ['ambfor', 'ambmd', 'gmolden', 'molden', 'surf']], 'bin'), + 'CopyRight', 'README', 'REGISTER'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['ambfor', 'ambmd', 'gmolden', 'molden', 'surf']] + ['README', 'REGISTER'], + 'dirs': [], +} + +sanity_check_commands = ["molden -h"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/Molden/Molden-7.3_fix_arg_handling.patch b/easybuild/easyconfigs/m/Molden/Molden-7.3_fix_arg_handling.patch new file mode 100644 index 00000000000..1893f4a7798 --- /dev/null +++ b/easybuild/easyconfigs/m/Molden/Molden-7.3_fix_arg_handling.patch @@ -0,0 +1,24 @@ +# Use F2003 functions for argument handling. +# Author: xinan1911 (SURF) +diff -ruN molden7.3.orig/src/molden.f molden7.3/src/molden.f +--- molden7.3.orig/src/molden.f 2023-08-09 15:22:58.503993000 +0200 ++++ molden7.3/src/molden.f 2023-09-26 20:13:01.426339279 +0200 +@@ -3814,15 +3814,15 @@ + endif + + iredir = 0 +- nargs = iargc() +- call getarg(0,liris) ++ nargs = COMMAND_ARGUMENT_COUNT() ++ call GET_COMMAND_ARGUMENT(0,liris) + call parsfn(liris,linlen(liris),20) + + ntargs = 0 + n = 0 + if (nargs.gt.0) then + 2013 n = n + 1 +- call getarg(n,liris) ++ call GET_COMMAND_ARGUMENT(n,liris) + if (liris(1:1).eq.'-') then + if (liris(1:2).eq.'-5') ido5d = 1 + if (liris(1:2).eq.'-7') ido7f = 1 diff --git a/easybuild/easyconfigs/m/Molden/Molden-7.3_fix_makefile_for_easybuild.patch b/easybuild/easyconfigs/m/Molden/Molden-7.3_fix_makefile_for_easybuild.patch new file mode 100644 index 00000000000..96b975e97a5 --- /dev/null +++ b/easybuild/easyconfigs/m/Molden/Molden-7.3_fix_makefile_for_easybuild.patch @@ -0,0 +1,80 @@ +# Make makefile EasyBuild friendly. +# Author: xinan1911 (SURF) +diff -ruN molden7.3.orig/makefile molden7.3/makefile +--- molden7.3.orig/makefile 2023-08-09 15:22:58.725188000 +0200 ++++ molden7.3/makefile 2023-09-26 20:29:25.276603201 +0200 +@@ -13,10 +13,10 @@ + # Disregard compiler warnings on rdmolf.f + # + # +-CC = cc ++#CC = cc + LIBS = -lX11 -lm + LDR = ${FC} +-LIBSG = -L/usr/X11R6/lib -lGLU -lGL -lXmu -lX11 -lm ++LIBSG = -lGLU -lGL -lXmu -lX11 -lm + ARCH := $(shell getconf LONG_BIT) + AFLAG= -m$(ARCH) + EXTEN= +@@ -29,19 +29,6 @@ + uname := $(shell uname -s) + os := + +-ifeq ($(uname), Linux) +- os := $(shell head -n 1 /etc/issue | cut -d" " -f1) +- ifeq ($(os), Ubuntu) +- EXTEN = exten +- EXTENZ = exten2 +- LIBSG = -L/usr/X11R6/lib -lGLU -lGL -lX11 -lm +- endif +- ifeq ($(os), Debian) +- LIBSG = -L/usr/lib/X11 -lGLU -lGL -lX11 -lm +- endif +- +- choosefc := 'yes' +-endif + + ifneq (,$(findstring CYGWIN,$(uname))) + uname := Linux +@@ -53,17 +40,6 @@ + endif + + +-ifneq ($(choosefc), $(empty)) +- comg77 := $(shell which g77 | grep -i g77) +- comgfort := $(shell which gfortran | grep -i gfortran) +- ifneq ($(comg77), $(empty)) +- FC = g77 +- endif +- ifneq ($(comgfort), $(empty)) +- FC = gfortran +- endif +-endif +- + print-% : ; @echo $* = $($*) + # + # Linux version +@@ -109,17 +85,17 @@ + endif + #FFLAGS = -g ${AFLAG} + FFLAGS += -g ${AFLAG} +-LIBS = -L/usr/X11R6/lib -lX11 -lm ++LIBS = -lX11 -lm + ifeq ($(AFLAG),"-m64") +-LIBS = -L/usr/X11R6/lib64 -lX11 -lm ++LIBS = -lX11 -lm + endif + LDR = ${FC} -g ${AFLAG} +-CFLAGS = ${AFLAG} ${EXTRAZ} -c -g -I/usr/X11R6/include -DDOBACK -DHASTIMER -DCOLOR_OFFSET=0.0 ++CFLAGS = ${AFLAG} ${EXTRAZ} -c -g -DDOBACK -DHASTIMER -DCOLOR_OFFSET=0.0 + ifeq ($(os), Debian) +- CFLAGS = ${AFLAG} ${EXTRAZ} -c -I/usr/include/X11 -DDOBACK -DHASTIMER -DCOLOR_OFFSET=0.0 +- LIBS = -L/usr/lib/X11 -lX11 -lm ++ CFLAGS = ${AFLAG} ${EXTRAZ} -c -DDOBACK -DHASTIMER -DCOLOR_OFFSET=0.0 ++ LIBS = -lX11 -lm + ifeq ($(AFLAG),"-m64") +- LIBS = -L/usr/X11R6/lib64 -lX11 -lm ++ LIBS = -lX11 -lm + endif + endif + ifeq ($(os), FreeBSD) diff --git a/easybuild/easyconfigs/m/m4ri/m4ri-20200125-GCC-11.3.0.eb b/easybuild/easyconfigs/m/m4ri/m4ri-20200125-GCC-11.3.0.eb new file mode 100644 index 00000000000..25596bcadc4 --- /dev/null +++ b/easybuild/easyconfigs/m/m4ri/m4ri-20200125-GCC-11.3.0.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'm4ri' +version = '20200125' + +homepage = 'https://github.com/malb/m4ri' +description = "M4RI is a library for fast arithmetic with dense matrices over F2." + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/malb/m4ri/archive/refs/tags/'] +sources = ['release-%(version)s.tar.gz'] +checksums = ['7369adcecb72d4dacfb23fd437a6b59a956f76b26dee07f32558cb915a9d6e9d'] + +builddependencies = [('Autotools', '20220317')] + +preconfigopts = "autoreconf --install && " +configopts = "--enable-openmp " + +sanity_check_paths = { + 'files': ['include/m4ri/m4ri.h', 'lib/libm4ri.a', 'lib/libm4ri.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/m4rie/m4rie-20200125-GCC-11.3.0.eb b/easybuild/easyconfigs/m/m4rie/m4rie-20200125-GCC-11.3.0.eb new file mode 100644 index 00000000000..4fbe407e8aa --- /dev/null +++ b/easybuild/easyconfigs/m/m4rie/m4rie-20200125-GCC-11.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'm4rie' +version = '20200125' + +homepage = 'https://github.com/malb/m4rie' +description = "M4RIE is a library for fast arithmetic with dense matrices." + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/malb/m4rie/archive/refs/tags/'] +sources = ['release-%(version)s.tar.gz'] +checksums = ['bc5c515e6151203b7a483f6ca84a22ec8c0407ea3621d8e11de3c997b5009d69'] + +builddependencies = [('Autotools', '20220317')] + +dependencies = [('m4ri', version)] + +preconfigopts = "autoreconf --install && " +configopts = "--enable-openmp " + +sanity_check_paths = { + 'files': ['include/m4rie/m4rie.h'] + ['lib/libm4rie.%s' % e for e in ['a', SHLIB_EXT]], + 'dirs': [], +} + +moduleclass = 'math' 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..6f1484e887f --- /dev/null +++ b/easybuild/easyconfigs/m/magma/magma-2.7.2-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,44 @@ +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] +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': '2996485844d7e199ea57eaebf59903d3514a03536f82b655ce30de480e28b828'}, +] + +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 = [ + '-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..5b78a3f229e --- /dev/null +++ b/easybuild/easyconfigs/m/magma/magma-2.7.2_allow-all-sms.patch @@ -0,0 +1,217 @@ +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 @@ + + 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" ) diff --git a/easybuild/easyconfigs/m/maturin/maturin-1.3.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/m/maturin/maturin-1.3.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..db1645e18a5 --- /dev/null +++ b/easybuild/easyconfigs/m/maturin/maturin-1.3.1-GCCcore-13.2.0.eb @@ -0,0 +1,616 @@ +easyblock = 'CargoPythonPackage' + +name = 'maturin' +version = '1.3.1' + +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': '13.2.0'} + +crates = [ + ('adler', '1.0.2'), + ('ahash', '0.7.6'), + ('aho-corasick', '0.7.20'), + ('anstream', '0.3.2'), + ('anstyle', '1.0.1'), + ('anstyle-parse', '0.2.1'), + ('anstyle-query', '1.0.0'), + ('anstyle-wincon', '1.0.2'), + ('anyhow', '1.0.75'), + ('autocfg', '1.1.0'), + ('base64', '0.13.1'), + ('base64', '0.21.2'), + ('bitflags', '1.3.2'), + ('block-buffer', '0.10.4'), + ('bstr', '1.6.0'), + ('bumpalo', '3.13.0'), + ('byteorder', '1.4.3'), + ('bytes', '1.4.0'), + ('bytesize', '1.2.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.9'), + ('cargo-options', '0.6.0'), + ('cargo-platform', '0.1.3'), + ('cargo-xwin', '0.14.8'), + ('cargo-zigbuild', '0.17.3'), + ('cargo_metadata', '0.18.0'), + ('cbindgen', '0.25.0'), + ('cc', '1.0.82'), + ('cfb', '0.7.3'), + ('cfg-expr', '0.15.4'), + ('cfg-if', '1.0.0'), + ('charset', '0.1.3'), + ('chumsky', '0.9.2'), + ('clap', '4.1.14'), + ('clap_builder', '4.1.14'), + ('clap_complete', '4.2.3'), + ('clap_complete_command', '0.5.1'), + ('clap_complete_fig', '4.2.0'), + ('clap_complete_nushell', '0.1.11'), + ('clap_derive', '4.1.14'), + ('clap_lex', '0.4.1'), + ('cli-table', '0.4.7'), + ('colorchoice', '1.0.0'), + ('configparser', '3.0.2'), + ('console', '0.15.7'), + ('content_inspector', '0.2.4'), + ('core-foundation', '0.9.3'), + ('core-foundation-sys', '0.8.4'), + ('cpufeatures', '0.2.9'), + ('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.4.0'), + ('dialoguer', '0.10.4'), + ('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.32'), + ('errno', '0.3.2'), + ('errno-dragonfly', '0.1.2'), + ('expect-test', '1.4.1'), + ('fastrand', '1.9.0'), + ('fat-macho', '0.4.7'), + ('filetime', '0.2.22'), + ('flate2', '1.0.27'), + ('fnv', '1.0.7'), + ('foreign-types', '0.3.2'), + ('foreign-types-shared', '0.1.1'), + ('form_urlencoded', '1.2.0'), + ('fs-err', '2.9.0'), + ('generic-array', '0.14.7'), + ('getrandom', '0.2.10'), + ('glob', '0.3.1'), + ('globset', '0.4.10'), + ('goblin', '0.7.1'), + ('hashbrown', '0.12.3'), + ('heck', '0.4.1'), + ('hermit-abi', '0.3.2'), + ('home', '0.5.5'), + ('humantime', '2.1.0'), + ('humantime-serde', '1.1.1'), + ('idna', '0.4.0'), + ('ignore', '0.4.20'), + ('indexmap', '1.9.3'), + ('indicatif', '0.17.6'), + ('indoc', '2.0.3'), + ('instant', '0.1.12'), + ('io-lifetimes', '1.0.11'), + ('is-terminal', '0.4.7'), + ('itertools', '0.11.0'), + ('itoa', '1.0.9'), + ('js-sys', '0.3.64'), + ('keyring', '2.0.5'), + ('lazy_static', '1.4.0'), + ('lddtree', '0.3.3'), + ('libc', '0.2.147'), + ('linux-keyutils', '0.2.3'), + ('linux-raw-sys', '0.3.8'), + ('lock_api', '0.4.10'), + ('log', '0.4.20'), + ('lzxd', '0.1.4'), + ('mailparse', '0.14.0'), + ('matchers', '0.1.0'), + ('memchr', '2.5.0'), + ('memoffset', '0.9.0'), + ('mime', '0.3.17'), + ('mime_guess', '2.0.4'), + ('minijinja', '1.0.8'), + ('minimal-lexical', '0.2.1'), + ('miniz_oxide', '0.7.1'), + ('msi', '0.6.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'), + ('num_cpus', '1.16.0'), + ('number_prefix', '0.4.0'), + ('once_cell', '1.18.0'), + ('openssl', '0.10.56'), + ('openssl-macros', '0.1.1'), + ('openssl-probe', '0.1.5'), + ('openssl-src', '111.27.0+1.1.1v'), + ('openssl-sys', '0.9.91'), + ('option-ext', '0.2.0'), + ('os_pipe', '1.1.4'), + ('overload', '0.1.1'), + ('parking_lot', '0.12.1'), + ('parking_lot_core', '0.9.8'), + ('paste', '1.0.14'), + ('path-slash', '0.2.1'), + ('pep440_rs', '0.3.6'), + ('pep508_rs', '0.2.1'), + ('percent-encoding', '2.3.0'), + ('pin-project-lite', '0.2.12'), + ('pkg-config', '0.3.27'), + ('plain', '0.2.3'), + ('platform-info', '2.0.2'), + ('portable-atomic', '1.4.2'), + ('ppv-lite86', '0.2.17'), + ('pretty_assertions', '1.4.0'), + ('proc-macro2', '1.0.66'), + ('psm', '0.1.21'), + ('pyproject-toml', '0.6.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.7.0'), + ('rayon-core', '1.11.0'), + ('redox_syscall', '0.2.16'), + ('redox_syscall', '0.3.5'), + ('redox_users', '0.4.3'), + ('regex', '1.7.3'), + ('regex-automata', '0.1.10'), + ('regex-syntax', '0.6.29'), + ('rfc2047-decoder', '0.2.2'), + ('ring', '0.16.20'), + ('rustc_version', '0.4.0'), + ('rustix', '0.37.25'), + ('rustls', '0.21.2'), + ('rustls-pemfile', '1.0.3'), + ('rustls-webpki', '0.100.2'), + ('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.0'), + ('security-framework', '2.9.2'), + ('security-framework-sys', '2.9.1'), + ('semver', '1.0.18'), + ('serde', '1.0.183'), + ('serde_derive', '1.0.183'), + ('serde_json', '1.0.105'), + ('serde_spanned', '0.6.3'), + ('sha2', '0.10.7'), + ('sharded-slab', '0.1.4'), + ('shell-escape', '0.1.5'), + ('shell-words', '1.1.0'), + ('shlex', '1.1.0'), + ('similar', '2.2.1'), + ('smallvec', '1.11.0'), + ('smawk', '0.3.1'), + ('snapbox', '0.4.11'), + ('snapbox-macros', '0.3.4'), + ('socks', '0.3.4'), + ('spin', '0.5.2'), + ('stacker', '0.1.15'), + ('static_assertions', '1.1.0'), + ('strsim', '0.10.0'), + ('syn', '1.0.109'), + ('syn', '2.0.29'), + ('tar', '0.4.40'), + ('target-lexicon', '0.12.11'), + ('tempfile', '3.6.0'), + ('termcolor', '1.2.0'), + ('terminal_size', '0.2.6'), + ('textwrap', '0.16.0'), + ('thiserror', '1.0.47'), + ('thiserror-impl', '1.0.47'), + ('thread_local', '1.1.7'), + ('time', '0.3.20'), + ('time-core', '0.1.0'), + ('time-macros', '0.2.8'), + ('tinyvec', '1.6.0'), + ('tinyvec_macros', '0.1.1'), + ('toml', '0.5.11'), + ('toml', '0.7.4'), + ('toml_datetime', '0.6.2'), + ('toml_edit', '0.19.10'), + ('tracing', '0.1.37'), + ('tracing-attributes', '0.1.26'), + ('tracing-core', '0.1.31'), + ('tracing-log', '0.1.3'), + ('tracing-serde', '0.1.3'), + ('tracing-subscriber', '0.3.17'), + ('trycmd', '0.14.16'), + ('twox-hash', '1.6.3'), + ('typenum', '1.16.0'), + ('unicase', '2.6.0'), + ('unicode-bidi', '0.3.13'), + ('unicode-ident', '1.0.11'), + ('unicode-linebreak', '0.1.5'), + ('unicode-normalization', '0.1.22'), + ('unicode-width', '0.1.10'), + ('untrusted', '0.7.1'), + ('ureq', '2.7.1'), + ('url', '2.4.0'), + ('utf8parse', '0.2.1'), + ('uuid', '1.4.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.3.3'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.87'), + ('wasm-bindgen-backend', '0.2.87'), + ('wasm-bindgen-macro', '0.2.87'), + ('wasm-bindgen-macro-support', '0.2.87'), + ('wasm-bindgen-shared', '0.2.87'), + ('web-sys', '0.3.64'), + ('webpki-roots', '0.23.1'), + ('which', '4.4.0'), + ('wild', '2.1.0'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-util', '0.1.5'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), + ('windows-sys', '0.45.0'), + ('windows-sys', '0.48.0'), + ('windows-targets', '0.42.2'), + ('windows-targets', '0.48.2'), + ('windows_aarch64_gnullvm', '0.42.2'), + ('windows_aarch64_gnullvm', '0.48.2'), + ('windows_aarch64_msvc', '0.42.2'), + ('windows_aarch64_msvc', '0.48.2'), + ('windows_i686_gnu', '0.42.2'), + ('windows_i686_gnu', '0.48.2'), + ('windows_i686_msvc', '0.42.2'), + ('windows_i686_msvc', '0.48.2'), + ('windows_x86_64_gnu', '0.42.2'), + ('windows_x86_64_gnu', '0.48.2'), + ('windows_x86_64_gnullvm', '0.42.2'), + ('windows_x86_64_gnullvm', '0.48.2'), + ('windows_x86_64_msvc', '0.42.2'), + ('windows_x86_64_msvc', '0.48.2'), + ('winnow', '0.4.7'), + ('xattr', '1.0.1'), + ('xwin', '0.3.1'), + ('yansi', '0.5.1'), + ('zeroize', '1.6.0'), + ('zip', '0.6.6'), +] +sources = [SOURCE_TAR_GZ] +checksums = [ + {'maturin-1.3.1.tar.gz': 'efa194e99ae5fff185263d8244acacb12ae256ea73aba62c9446f6075ffc7ac1'}, + {'adler-1.0.2.tar.gz': 'f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe'}, + {'ahash-0.7.6.tar.gz': 'fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47'}, + {'aho-corasick-0.7.20.tar.gz': 'cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac'}, + {'anstream-0.3.2.tar.gz': '0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163'}, + {'anstyle-1.0.1.tar.gz': '3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd'}, + {'anstyle-parse-0.2.1.tar.gz': '938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333'}, + {'anstyle-query-1.0.0.tar.gz': '5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b'}, + {'anstyle-wincon-1.0.2.tar.gz': 'c677ab05e09154296dd37acecd46420c17b9713e8366facafa8fc0885167cf4c'}, + {'anyhow-1.0.75.tar.gz': 'a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6'}, + {'autocfg-1.1.0.tar.gz': 'd468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa'}, + {'base64-0.13.1.tar.gz': '9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8'}, + {'base64-0.21.2.tar.gz': '604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'block-buffer-0.10.4.tar.gz': '3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71'}, + {'bstr-1.6.0.tar.gz': '6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05'}, + {'bumpalo-3.13.0.tar.gz': 'a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1'}, + {'byteorder-1.4.3.tar.gz': '14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610'}, + {'bytes-1.4.0.tar.gz': '89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be'}, + {'bytesize-1.2.0.tar.gz': '38fcc2979eff34a4b84e1cf9a1e3da42a7d44b3b690a40cdcb23e3d556cfb2e5'}, + {'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.9.tar.gz': 'a393492158d1198da424057afeadc96af9330d76d12e56d131a7a5302524ac65'}, + {'cargo-options-0.6.0.tar.gz': '9b8e8daa6b2b84aa7cccd57317d9a9b36d969d75bb95923471f4eabbd36f2955'}, + {'cargo-platform-0.1.3.tar.gz': '2cfa25e60aea747ec7e1124f238816749faa93759c6ff5b31f1ccdda137f4479'}, + {'cargo-xwin-0.14.8.tar.gz': '11c08ee57b16103990269874220c0e8a4613b8096a314ce2f29ad1b54d4b6d02'}, + {'cargo-zigbuild-0.17.3.tar.gz': '2307bb523befb01f7e8cf299c2219439339316964c3a4e95e29bd1c7831fae89'}, + {'cargo_metadata-0.18.0.tar.gz': 'fb9ac64500cc83ce4b9f8dafa78186aa008c8dea77a09b94cd307fd0cd5022a8'}, + {'cbindgen-0.25.0.tar.gz': 'faeaa693e5a727975a79211b8f35c0cb09b031fdb6eaa4a788bc6713d01488ca'}, + {'cc-1.0.82.tar.gz': '305fe645edc1442a0fa8b6726ba61d422798d37a52e12eaecf4b022ebbb88f01'}, + {'cfb-0.7.3.tar.gz': 'd38f2da7a0a2c4ccf0065be06397cc26a81f4e528be095826eee9d4adbb8c60f'}, + {'cfg-expr-0.15.4.tar.gz': 'b40ccee03b5175c18cde8f37e7d2a33bcef6f8ec8f7cc0d81090d1bb380949c9'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'charset-0.1.3.tar.gz': '18e9079d1a12a2cc2bffb5db039c43661836ead4082120d5844f02555aca2d46'}, + {'chumsky-0.9.2.tar.gz': '23170228b96236b5a7299057ac284a321457700bc8c41a4476052f0f4ba5349d'}, + {'clap-4.1.14.tar.gz': '906f7fe1da4185b7a282b2bc90172a496f9def1aca4545fe7526810741591e14'}, + {'clap_builder-4.1.14.tar.gz': '351f9ad9688141ed83dfd8f5fb998a06225ef444b48ff4dc43de6d409b7fd10b'}, + {'clap_complete-4.2.3.tar.gz': '1594fe2312ec4abf402076e407628f5c313e54c32ade058521df4ee34ecac8a8'}, + {'clap_complete_command-0.5.1.tar.gz': '183495371ea78d4c9ff638bfc6497d46fed2396e4f9c50aebc1278a4a9919a3d'}, + {'clap_complete_fig-4.2.0.tar.gz': 'f3af28956330989baa428ed4d3471b853715d445c62de21b67292e22cf8a41fa'}, + {'clap_complete_nushell-0.1.11.tar.gz': '5d02bc8b1a18ee47c4d2eec3fb5ac034dc68ebea6125b1509e9ccdffcddce66e'}, + {'clap_derive-4.1.14.tar.gz': '81d7dc0031c3a59a04fc2ba395c8e2dd463cba1859275f065d225f6122221b45'}, + {'clap_lex-0.4.1.tar.gz': '8a2dd5a6fe8c6e3502f568a6353e5273bbb15193ad9a89e457b9970798efbea1'}, + {'cli-table-0.4.7.tar.gz': 'adfbb116d9e2c4be7011360d0c0bee565712c11e969c9609b25b619366dc379d'}, + {'colorchoice-1.0.0.tar.gz': 'acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7'}, + {'configparser-3.0.2.tar.gz': '5458d9d1a587efaf5091602c59d299696a3877a439c8f6d461a2d3cce11df87a'}, + {'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.9.tar.gz': 'a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1'}, + {'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.4.0.tar.gz': 'c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308'}, + {'dialoguer-0.10.4.tar.gz': '59c6f2989294b9a498d3ad5491a79c6deb604617378e1cdc4bfc1c1361fe2f87'}, + {'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.32.tar.gz': '071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394'}, + {'errno-0.3.2.tar.gz': '6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f'}, + {'errno-dragonfly-0.1.2.tar.gz': 'aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf'}, + {'expect-test-1.4.1.tar.gz': '30d9eafeadd538e68fb28016364c9732d78e420b9ff8853fa5e4058861e9f8d3'}, + {'fastrand-1.9.0.tar.gz': 'e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be'}, + {'fat-macho-0.4.7.tar.gz': '63fa117c7dcabeb8c83d5c229764cfa46518545d2dba5a9a08912014711f997b'}, + {'filetime-0.2.22.tar.gz': 'd4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0'}, + {'flate2-1.0.27.tar.gz': 'c6c98ee8095e9d1dcbf2fcc6d95acccb90d1c81db1e44725c6a984b1dbdfb010'}, + {'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.0.tar.gz': 'a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652'}, + {'fs-err-2.9.0.tar.gz': '0845fa252299212f0389d64ba26f34fa32cfe41588355f21ed507c59a0f64541'}, + {'generic-array-0.14.7.tar.gz': '85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a'}, + {'getrandom-0.2.10.tar.gz': 'be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427'}, + {'glob-0.3.1.tar.gz': 'd2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b'}, + {'globset-0.4.10.tar.gz': '029d74589adefde59de1a0c4f4732695c32805624aec7b68d91503d4dba79afc'}, + {'goblin-0.7.1.tar.gz': 'f27c1b4369c2cd341b5de549380158b105a04c331be5db9110eef7b6d2742134'}, + {'hashbrown-0.12.3.tar.gz': '8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'hermit-abi-0.3.2.tar.gz': '443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b'}, + {'home-0.5.5.tar.gz': '5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb'}, + {'humantime-2.1.0.tar.gz': '9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4'}, + {'humantime-serde-1.1.1.tar.gz': '57a3db5ea5923d99402c94e9feb261dc5ee9b4efa158b0315f788cf549cc200c'}, + {'idna-0.4.0.tar.gz': '7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c'}, + {'ignore-0.4.20.tar.gz': 'dbe7873dab538a9a44ad79ede1faf5f30d49f9a5c883ddbab48bce81b64b7492'}, + {'indexmap-1.9.3.tar.gz': 'bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99'}, + {'indicatif-0.17.6.tar.gz': '0b297dc40733f23a0e52728a58fa9489a5b7638a324932de16b41adc3ef80730'}, + {'indoc-2.0.3.tar.gz': '2c785eefb63ebd0e33416dfcb8d6da0bf27ce752843a45632a67bf10d4d4b5c4'}, + {'instant-0.1.12.tar.gz': '7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c'}, + {'io-lifetimes-1.0.11.tar.gz': 'eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2'}, + {'is-terminal-0.4.7.tar.gz': 'adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f'}, + {'itertools-0.11.0.tar.gz': 'b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57'}, + {'itoa-1.0.9.tar.gz': 'af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38'}, + {'js-sys-0.3.64.tar.gz': 'c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a'}, + {'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.147.tar.gz': 'b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3'}, + {'linux-keyutils-0.2.3.tar.gz': '3f27bb67f6dd1d0bb5ab582868e4f65052e58da6401188a08f0da09cf512b84b'}, + {'linux-raw-sys-0.3.8.tar.gz': 'ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519'}, + {'lock_api-0.4.10.tar.gz': 'c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16'}, + {'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.5.0.tar.gz': '2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d'}, + {'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.8.tar.gz': '80084fa3099f58b7afab51e5f92e24c2c2c68dcad26e96ad104bd6011570461d'}, + {'minimal-lexical-0.2.1.tar.gz': '68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a'}, + {'miniz_oxide-0.7.1.tar.gz': 'e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7'}, + {'msi-0.6.0.tar.gz': 'a7124fc3188eff23916d20d82bcbbb993914b22fba5603f9e7745e347a86cf67'}, + {'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'}, + {'num_cpus-1.16.0.tar.gz': '4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43'}, + {'number_prefix-0.4.0.tar.gz': '830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3'}, + {'once_cell-1.18.0.tar.gz': 'dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d'}, + {'openssl-0.10.56.tar.gz': '729b745ad4a5575dd06a3e1af1414bd330ee561c01b3899eb584baeaa8def17e'}, + {'openssl-macros-0.1.1.tar.gz': 'a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c'}, + {'openssl-probe-0.1.5.tar.gz': 'ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf'}, + {'openssl-src-111.27.0+1.1.1v.tar.gz': '06e8f197c82d7511c5b014030c9b1efeda40d7d5f99d23b4ceed3524a5e63f02'}, + {'openssl-sys-0.9.91.tar.gz': '866b5f16f90776b9bb8dc1e1802ac6f0513de3a7a7465867bfbc563dc737faac'}, + {'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.8.tar.gz': '93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447'}, + {'paste-1.0.14.tar.gz': 'de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c'}, + {'path-slash-0.2.1.tar.gz': '1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42'}, + {'pep440_rs-0.3.6.tar.gz': '3d6f6ead185985925c7e2b5ddb57ed5ef9d95835bf3994a5ce74403653898ab6'}, + {'pep508_rs-0.2.1.tar.gz': 'c0713d7bb861ca2b7d4c50a38e1f31a4b63a2e2df35ef1e5855cc29e108453e2'}, + {'percent-encoding-2.3.0.tar.gz': '9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94'}, + {'pin-project-lite-0.2.12.tar.gz': '12cc1b0bf1727a77a54b6654e7b5f1af8604923edc8b81885f8ec92f9e3f0a05'}, + {'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.4.2.tar.gz': 'f32154ba0af3a075eefa1eda8bb414ee928f62303a54ea85b8d6638ff1a6ee9e'}, + {'ppv-lite86-0.2.17.tar.gz': '5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de'}, + {'pretty_assertions-1.4.0.tar.gz': 'af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66'}, + {'proc-macro2-1.0.66.tar.gz': '18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9'}, + {'psm-0.1.21.tar.gz': '5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874'}, + {'pyproject-toml-0.6.1.tar.gz': 'ee79feaa9d31e1c417e34219e610b67db4e786ce9b49d77dda549640abb9dc5f'}, + {'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.7.0.tar.gz': '1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b'}, + {'rayon-core-1.11.0.tar.gz': '4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d'}, + {'redox_syscall-0.2.16.tar.gz': 'fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a'}, + {'redox_syscall-0.3.5.tar.gz': '567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29'}, + {'redox_users-0.4.3.tar.gz': 'b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b'}, + {'regex-1.7.3.tar.gz': '8b1f693b24f6ac912f4893ef08244d70b6067480d2f1a46e950c9691e6749d1d'}, + {'regex-automata-0.1.10.tar.gz': '6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132'}, + {'regex-syntax-0.6.29.tar.gz': 'f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1'}, + {'rfc2047-decoder-0.2.2.tar.gz': '61fc4b4e52897c3e30b12b7e9b04461215b647fbe66f6def60dd8edbce14ec2e'}, + {'ring-0.16.20.tar.gz': '3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc'}, + {'rustc_version-0.4.0.tar.gz': 'bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366'}, + {'rustix-0.37.25.tar.gz': 'd4eb579851244c2c03e7c24f501c3432bed80b8f720af1d6e5b0e0f01555a035'}, + {'rustls-0.21.2.tar.gz': 'e32ca28af694bc1bbf399c33a516dbdf1c90090b8ab23c2bc24f834aa2247f5f'}, + {'rustls-pemfile-1.0.3.tar.gz': '2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2'}, + {'rustls-webpki-0.100.2.tar.gz': 'e98ff011474fa39949b7e5c0428f9b4937eda7da7848bbb947786b7be0b27dab'}, + {'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.0.tar.gz': 'd53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4'}, + {'security-framework-2.9.2.tar.gz': '05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de'}, + {'security-framework-sys-2.9.1.tar.gz': 'e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a'}, + {'semver-1.0.18.tar.gz': 'b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918'}, + {'serde-1.0.183.tar.gz': '32ac8da02677876d532745a130fc9d8e6edfa81a269b107c5b00829b91d8eb3c'}, + {'serde_derive-1.0.183.tar.gz': 'aafe972d60b0b9bee71a91b92fee2d4fb3c9d7e8f6b179aa99f27203d99a4816'}, + {'serde_json-1.0.105.tar.gz': '693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360'}, + {'serde_spanned-0.6.3.tar.gz': '96426c9936fd7a0124915f9185ea1d20aa9445cc9821142f0a73bc9207a2e186'}, + {'sha2-0.10.7.tar.gz': '479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8'}, + {'sharded-slab-0.1.4.tar.gz': '900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31'}, + {'shell-escape-0.1.5.tar.gz': '45bb67a18fa91266cc7807181f62f9178a6873bfad7dc788c42e6430db40184f'}, + {'shell-words-1.1.0.tar.gz': '24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde'}, + {'shlex-1.1.0.tar.gz': '43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3'}, + {'similar-2.2.1.tar.gz': '420acb44afdae038210c99e69aae24109f32f15500aa708e81d46c9f29d55fcf'}, + {'smallvec-1.11.0.tar.gz': '62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9'}, + {'smawk-0.3.1.tar.gz': 'f67ad224767faa3c7d8b6d91985b78e70a1324408abcb1cfcc2be4c06bc06043'}, + {'snapbox-0.4.11.tar.gz': 'f6bccd62078347f89a914e3004d94582e13824d4e3d8a816317862884c423835'}, + {'snapbox-macros-0.3.4.tar.gz': 'eaaf09df9f0eeae82be96290918520214530e738a7fe5a351b0f24cf77c0ca31'}, + {'socks-0.3.4.tar.gz': 'f0c3dbbd9ae980613c6dd8e28a9407b50509d3803b57624d5dfe8315218cd58b'}, + {'spin-0.5.2.tar.gz': '6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d'}, + {'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.29.tar.gz': 'c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a'}, + {'tar-0.4.40.tar.gz': 'b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb'}, + {'target-lexicon-0.12.11.tar.gz': '9d0e916b1148c8e263850e1ebcbd046f333e0683c724876bb0da63ea4373dc8a'}, + {'tempfile-3.6.0.tar.gz': '31c0432476357e58790aaa47a8efb0c5138f137343f3b5f23bd36a27e3b0a6d6'}, + {'termcolor-1.2.0.tar.gz': 'be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6'}, + {'terminal_size-0.2.6.tar.gz': '8e6bf6f19e9f8ed8d4048dc22981458ebcf406d67e94cd422e5ecd73d63b3237'}, + {'textwrap-0.16.0.tar.gz': '222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d'}, + {'thiserror-1.0.47.tar.gz': '97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f'}, + {'thiserror-impl-1.0.47.tar.gz': '6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b'}, + {'thread_local-1.1.7.tar.gz': '3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152'}, + {'time-0.3.20.tar.gz': 'cd0cbfecb4d19b5ea75bb31ad904eb5b9fa13f21079c3b92017ebdf4999a5890'}, + {'time-core-0.1.0.tar.gz': '2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd'}, + {'time-macros-0.2.8.tar.gz': 'fd80a657e71da814b8e5d60d3374fc6d35045062245d80224748ae522dd76f36'}, + {'tinyvec-1.6.0.tar.gz': '87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50'}, + {'tinyvec_macros-0.1.1.tar.gz': '1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20'}, + {'toml-0.5.11.tar.gz': 'f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234'}, + {'toml-0.7.4.tar.gz': 'd6135d499e69981f9ff0ef2167955a5333c35e36f6937d382974566b3d5b94ec'}, + {'toml_datetime-0.6.2.tar.gz': '5a76a9312f5ba4c2dec6b9161fdf25d87ad8a09256ccea5a556fef03c706a10f'}, + {'toml_edit-0.19.10.tar.gz': '2380d56e8670370eee6566b0bfd4265f65b3f432e8c6d85623f728d4fa31f739'}, + {'tracing-0.1.37.tar.gz': '8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8'}, + {'tracing-attributes-0.1.26.tar.gz': '5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab'}, + {'tracing-core-0.1.31.tar.gz': '0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a'}, + {'tracing-log-0.1.3.tar.gz': '78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922'}, + {'tracing-serde-0.1.3.tar.gz': 'bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1'}, + {'tracing-subscriber-0.3.17.tar.gz': '30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77'}, + {'trycmd-0.14.16.tar.gz': '2925e71868a12b173c1eb166018c2d2f9dfaedfcaec747bdb6ea2246785d258e'}, + {'twox-hash-1.6.3.tar.gz': '97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675'}, + {'typenum-1.16.0.tar.gz': '497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba'}, + {'unicase-2.6.0.tar.gz': '50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6'}, + {'unicode-bidi-0.3.13.tar.gz': '92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460'}, + {'unicode-ident-1.0.11.tar.gz': '301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c'}, + {'unicode-linebreak-0.1.5.tar.gz': '3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f'}, + {'unicode-normalization-0.1.22.tar.gz': '5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921'}, + {'unicode-width-0.1.10.tar.gz': 'c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b'}, + {'untrusted-0.7.1.tar.gz': 'a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a'}, + {'ureq-2.7.1.tar.gz': '0b11c96ac7ee530603dcdf68ed1557050f374ce55a5a07193ebf8cbc9f8927e9'}, + {'url-2.4.0.tar.gz': '50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb'}, + {'utf8parse-0.2.1.tar.gz': '711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a'}, + {'uuid-1.4.1.tar.gz': '79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d'}, + {'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.3.3.tar.gz': '36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wasm-bindgen-0.2.87.tar.gz': '7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342'}, + {'wasm-bindgen-backend-0.2.87.tar.gz': '5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd'}, + {'wasm-bindgen-macro-0.2.87.tar.gz': 'dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d'}, + {'wasm-bindgen-macro-support-0.2.87.tar.gz': '54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b'}, + {'wasm-bindgen-shared-0.2.87.tar.gz': 'ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1'}, + {'web-sys-0.3.64.tar.gz': '9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b'}, + {'webpki-roots-0.23.1.tar.gz': 'b03058f88386e5ff5310d9111d53f48b17d732b401aeb83a8d5190f2ac459338'}, + {'which-4.4.0.tar.gz': '2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269'}, + {'wild-2.1.0.tar.gz': '05b116685a6be0c52f5a103334cbff26db643826c7b3735fc0a3ba9871310a74'}, + {'winapi-0.3.9.tar.gz': '5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419'}, + {'winapi-i686-pc-windows-gnu-0.4.0.tar.gz': 'ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6'}, + {'winapi-util-0.1.5.tar.gz': '70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178'}, + {'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-targets-0.42.2.tar.gz': '8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071'}, + {'windows-targets-0.48.2.tar.gz': 'd1eeca1c172a285ee6c2c84c341ccea837e7c01b12fbb2d0fe3c9e550ce49ec8'}, + {'windows_aarch64_gnullvm-0.42.2.tar.gz': '597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8'}, + {'windows_aarch64_gnullvm-0.48.2.tar.gz': 'b10d0c968ba7f6166195e13d593af609ec2e3d24f916f081690695cf5eaffb2f'}, + {'windows_aarch64_msvc-0.42.2.tar.gz': 'e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43'}, + {'windows_aarch64_msvc-0.48.2.tar.gz': '571d8d4e62f26d4932099a9efe89660e8bd5087775a2ab5cdd8b747b811f1058'}, + {'windows_i686_gnu-0.42.2.tar.gz': 'c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f'}, + {'windows_i686_gnu-0.48.2.tar.gz': '2229ad223e178db5fbbc8bd8d3835e51e566b8474bfca58d2e6150c48bb723cd'}, + {'windows_i686_msvc-0.42.2.tar.gz': '44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060'}, + {'windows_i686_msvc-0.48.2.tar.gz': '600956e2d840c194eedfc5d18f8242bc2e17c7775b6684488af3a9fff6fe3287'}, + {'windows_x86_64_gnu-0.42.2.tar.gz': '8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36'}, + {'windows_x86_64_gnu-0.48.2.tar.gz': 'ea99ff3f8b49fb7a8e0d305e5aec485bd068c2ba691b6e277d29eaeac945868a'}, + {'windows_x86_64_gnullvm-0.42.2.tar.gz': '26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3'}, + {'windows_x86_64_gnullvm-0.48.2.tar.gz': '8f1a05a1ece9a7a0d5a7ccf30ba2c33e3a61a30e042ffd247567d1de1d94120d'}, + {'windows_x86_64_msvc-0.42.2.tar.gz': '9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0'}, + {'windows_x86_64_msvc-0.48.2.tar.gz': 'd419259aba16b663966e29e6d7c6ecfa0bb8425818bb96f6f1f3c3eb71a6e7b9'}, + {'winnow-0.4.7.tar.gz': 'ca0ace3845f0d96209f0375e6d367e3eb87eb65d27d445bdc9f1843a26f39448'}, + {'xattr-1.0.1.tar.gz': 'f4686009f71ff3e5c4dbcf1a282d0a44db3f021ba69350cd42086b3e5f1c6985'}, + {'xwin-0.3.1.tar.gz': '79db6a9fc6b665feccd1984e4e21ff588102652c317176fab0d6706b55d3e208'}, + {'yansi-0.5.1.tar.gz': '09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec'}, + {'zeroize-1.6.0.tar.gz': '2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9'}, + {'zip-0.6.6.tar.gz': '760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('setuptools-rust', '1.8.0'), +] +dependencies = [ + ('Python', '3.11.5'), + ('Rust', '1.73.0'), +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-11.3.0.eb similarity index 80% rename from easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCCcore-11.3.0.eb rename to easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-11.3.0.eb index f54225c862b..516118c5988 100644 --- a/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-11.3.0.eb @@ -9,7 +9,7 @@ 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': 'GCCcore', 'version': '11.3.0'} +toolchain = {'name': 'GCC', 'version': '11.3.0'} toolchainopts = {'pic': True} github_account = 'grimme-lab' @@ -22,7 +22,11 @@ builddependencies = [ ('CMake', '3.23.1'), ] -configopts = '-DBUILD_SHARED_LIBS=ON' +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], @@ -31,4 +35,7 @@ sanity_check_paths = { sanity_check_commands = ["mctc-convert --help"] +# run suite of tests with ctest +runtest = True + moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-12.2.0.eb b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-12.2.0.eb new file mode 100644 index 00000000000..0adbf4db991 --- /dev/null +++ b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-GCC-12.2.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': 'GCC', 'version': '12.2.0'} +toolchainopts = {'pic': True} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['03dc8ccba37413da70e55a07cef8e8de53bce33f5bb52c1f8db5fec326abe083'] + +builddependencies = [ + ('binutils', '2.39'), + ('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/mctc-lib/mctc-lib-0.3.1-intel-compilers-2022.2.1.eb b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-intel-compilers-2022.2.1.eb new file mode 100644 index 00000000000..cee2009f267 --- /dev/null +++ b/easybuild/easyconfigs/m/mctc-lib/mctc-lib-0.3.1-intel-compilers-2022.2.1.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.2.1'} +toolchainopts = {'pic': True} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['03dc8ccba37413da70e55a07cef8e8de53bce33f5bb52c1f8db5fec326abe083'] + +builddependencies = [ + ('binutils', '2.39'), + ('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/mdust/mdust-20150102-GCC-10.3.0.eb b/easybuild/easyconfigs/m/mdust/mdust-20150102-GCC-10.3.0.eb new file mode 100644 index 00000000000..5dea5b1bc57 --- /dev/null +++ b/easybuild/easyconfigs/m/mdust/mdust-20150102-GCC-10.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'MakeCp' + +name = 'mdust' +version = '20150102' + +homepage = 'https://github.com/lh3/mdust' +description = "mdust from DFCI Gene Indices Software Tools (archived for a historical record only)" + +toolchain = {'name': 'GCC', 'version': '10.3.0'} + +sources = [{ + 'filename': 'mdust.tar.gz', + 'git_config': { + 'url': 'https://github.com/lh3', + 'repo_name': 'mdust', + 'commit': '3e3fed8', + }, +}] +checksums = [None] + +files_to_copy = [(['mdust'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/mdust'], + 'dirs': [] +} + +sanity_check_commands = ["mdust < /dev/null"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/meson-python/meson-python-0.15.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/m/meson-python/meson-python-0.15.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..3f1997e81f9 --- /dev/null +++ b/easybuild/easyconfigs/m/meson-python/meson-python-0.15.0-GCCcore-13.2.0.eb @@ -0,0 +1,36 @@ +easyblock = 'PythonBundle' + +name = 'meson-python' +version = '0.15.0' + +homepage = 'https://github.com/mesonbuild/meson-python' +description = "Python build backend (PEP 517) for Meson projects" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), # provides 'packaging' + ('Meson', '1.2.3'), +] + +use_pip = True + +exts_list = [ + ('pyproject-metadata', '0.7.1', { + 'checksums': ['0a94f18b108b9b21f3a26a3d541f056c34edcb17dc872a144a15618fed7aef67'], + }), + (name, version, { + 'modulename': 'mesonpy', + 'sources': ['meson_python-%(version)s.tar.gz'], + 'checksums': ['fddb73eecd49e89c1c41c87937cd89c2d0b65a1c63ba28238681d4bd9484d26f'], + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' 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..29f68f317f9 --- /dev/null +++ b/easybuild/easyconfigs/m/motif/motif-2.3.8-GCCcore-10.2.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': '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'), + ('binutils', '2.35'), + ('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/mrcfile/mrcfile-1.4.3-foss-2022a.eb b/easybuild/easyconfigs/m/mrcfile/mrcfile-1.4.3-foss-2022a.eb new file mode 100644 index 00000000000..dae89bc115f --- /dev/null +++ b/easybuild/easyconfigs/m/mrcfile/mrcfile-1.4.3-foss-2022a.eb @@ -0,0 +1,40 @@ +# Thomas Hoffmann, EMBL Heidelberg, structures-it@embl.de, 2022/11 +easyblock = 'PythonPackage' +name = 'mrcfile' +version = '1.4.3' +homepage = 'https://github.com/ccpem/mrcfile' +description = """mrcfile is a Python implementation of the MRC2014 file format, which is used in +structural biology to store image and volume data. + +It allows MRC files to be created and opened easily using a very simple API, +which exposes the file’s header and data as numpy arrays. The code runs in +Python 2 and 3 and is fully unit-tested. + +This library aims to allow users and developers to read and write standard- +compliant MRC files in Python as easily as possible, and with no dependencies on +any compiled libraries except numpy. You can use it interactively to inspect +files, correct headers and so on, or in scripts and larger software packages to +provide basic MRC file I/O functions. """ + + +toolchain = {'name': 'foss', 'version': '2022a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['43c358c59ff8f583fc4dc2079a0099028719109ebf92066e388772bab389c5f5'] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), +] + +download_dep_fail = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'] +} + + +use_pip = True +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/mstore/mstore-0.2.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/m/mstore/mstore-0.2.0-GCC-11.3.0.eb similarity index 94% rename from easybuild/easyconfigs/m/mstore/mstore-0.2.0-GCCcore-11.3.0.eb rename to easybuild/easyconfigs/m/mstore/mstore-0.2.0-GCC-11.3.0.eb index 09ee525de2c..beaa1fe7caa 100644 --- a/easybuild/easyconfigs/m/mstore/mstore-0.2.0-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/m/mstore/mstore-0.2.0-GCC-11.3.0.eb @@ -8,7 +8,7 @@ version = '0.2.0' homepage = 'https://github.com/grimme-lab/mstore' description = """Molecular structure store for testing""" -toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchain = {'name': 'GCC', 'version': '11.3.0'} toolchainopts = {'pic': True} github_account = 'grimme-lab' diff --git a/easybuild/easyconfigs/m/mstore/mstore-0.2.0-GCC-12.2.0.eb b/easybuild/easyconfigs/m/mstore/mstore-0.2.0-GCC-12.2.0.eb new file mode 100644 index 00000000000..4c21efbeba4 --- /dev/null +++ b/easybuild/easyconfigs/m/mstore/mstore-0.2.0-GCC-12.2.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': 'GCC', 'version': '12.2.0'} +toolchainopts = {'pic': True} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['95edba88afbc8013f57f4c818a97c0500cc40b158bed11234c061b2b6d7e480d'] + +builddependencies = [ + ('binutils', '2.39'), + ('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' diff --git a/easybuild/easyconfigs/m/mstore/mstore-0.2.0-intel-compilers-2022.2.1.eb b/easybuild/easyconfigs/m/mstore/mstore-0.2.0-intel-compilers-2022.2.1.eb new file mode 100644 index 00000000000..22c6dc7cd21 --- /dev/null +++ b/easybuild/easyconfigs/m/mstore/mstore-0.2.0-intel-compilers-2022.2.1.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.2.1'} +toolchainopts = {'pic': True} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['95edba88afbc8013f57f4c818a97c0500cc40b158bed11234c061b2b6d7e480d'] + +builddependencies = [ + ('binutils', '2.39'), + ('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' diff --git a/easybuild/easyconfigs/m/multicharge/multicharge-0.2.0-gfbf-2022b.eb b/easybuild/easyconfigs/m/multicharge/multicharge-0.2.0-gfbf-2022b.eb new file mode 100644 index 00000000000..8f15e71b4d5 --- /dev/null +++ b/easybuild/easyconfigs/m/multicharge/multicharge-0.2.0-gfbf-2022b.eb @@ -0,0 +1,39 @@ +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeNinja' + +name = 'multicharge' +version = '0.2.0' + +homepage = 'https://github.com/grimme-lab/multicharge' +description = """Electronegativity equilibration model for atomic partial charges.""" + +toolchain = {'name': 'gfbf', 'version': '2022b'} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['953e2ace2f4035b1fa8ecf680f90b5ce6ad5caae17c8d8ccbc2578b92b69d3e7'] + +builddependencies = [ + ('CMake', '3.24.3'), + ('Ninja', '1.11.1'), + ('binutils', '2.39'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), + ('mstore', '0.2.0'), +] + +sanity_check_paths = { + 'files': ['bin/multicharge', 'lib/libmulticharge.a'], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["multicharge --help"] + +# run suite of tests with ctest +runtest = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/multicharge/multicharge-0.2.0-iimkl-2022b.eb b/easybuild/easyconfigs/m/multicharge/multicharge-0.2.0-iimkl-2022b.eb new file mode 100644 index 00000000000..1f88ad11b35 --- /dev/null +++ b/easybuild/easyconfigs/m/multicharge/multicharge-0.2.0-iimkl-2022b.eb @@ -0,0 +1,42 @@ +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeNinja' + +name = 'multicharge' +version = '0.2.0' + +homepage = 'https://github.com/grimme-lab/multicharge' +description = """Electronegativity equilibration model for atomic partial charges.""" + +toolchain = {'name': 'iimkl', 'version': '2022b'} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['953e2ace2f4035b1fa8ecf680f90b5ce6ad5caae17c8d8ccbc2578b92b69d3e7'] + +builddependencies = [ + ('CMake', '3.24.3'), + ('Ninja', '1.11.1'), + ('binutils', '2.39'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), + ('mstore', '0.2.0'), +] + +configopts = '-DBLAS_LIBRARIES="-lmkl_sequential -lmkl_intel_lp64 -lmkl_core" ' +configopts += '-DLAPACK_LIBRARIES="-lmkl_sequential -lmkl_intel_lp64 -lmkl_core" ' + +sanity_check_paths = { + 'files': ['bin/multicharge', 'lib/libmulticharge.a'], + 'dirs': ['include/%(name)s', 'lib/cmake', 'lib/pkgconfig'], +} + +sanity_check_commands = ["multicharge --help"] + +# run suite of tests with ctest +runtest = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/n/NCCL/NCCL-2.10.3-GCCcore-10.3.0-CUDA-11.3.1.eb b/easybuild/easyconfigs/n/NCCL/NCCL-2.10.3-GCCcore-10.3.0-CUDA-11.3.1.eb index 16e18e8e36e..d4fb6614198 100644 --- a/easybuild/easyconfigs/n/NCCL/NCCL-2.10.3-GCCcore-10.3.0-CUDA-11.3.1.eb +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.10.3-GCCcore-10.3.0-CUDA-11.3.1.eb @@ -11,7 +11,11 @@ toolchain = {'name': 'GCCcore', 'version': '10.3.0'} github_account = 'NVIDIA' source_urls = [GITHUB_SOURCE] sources = ['v%(version)s-1.tar.gz'] -checksums = ['55de166eb7dcab9ecef2629cdb5fb0c5ebec4fae03589c469ebe5dcb5716b3c5'] +patches = ['NCCL-2.16.2_fix-cpuid.patch'] +checksums = [ + {'v2.10.3-1.tar.gz': '55de166eb7dcab9ecef2629cdb5fb0c5ebec4fae03589c469ebe5dcb5716b3c5'}, + {'NCCL-2.16.2_fix-cpuid.patch': '0459ecadcd32b2a7a000a2ce4f675afba908b2c0afabafde585330ff4f83e277'}, +] builddependencies = [('binutils', '2.36.1')] diff --git a/easybuild/easyconfigs/n/NCCL/NCCL-2.10.3-GCCcore-11.2.0-CUDA-11.4.1.eb b/easybuild/easyconfigs/n/NCCL/NCCL-2.10.3-GCCcore-11.2.0-CUDA-11.4.1.eb index 63927a18ac1..5dec7af894e 100644 --- a/easybuild/easyconfigs/n/NCCL/NCCL-2.10.3-GCCcore-11.2.0-CUDA-11.4.1.eb +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.10.3-GCCcore-11.2.0-CUDA-11.4.1.eb @@ -11,7 +11,11 @@ toolchain = {'name': 'GCCcore', 'version': '11.2.0'} github_account = 'NVIDIA' source_urls = [GITHUB_SOURCE] sources = ['v%(version)s-1.tar.gz'] -checksums = ['55de166eb7dcab9ecef2629cdb5fb0c5ebec4fae03589c469ebe5dcb5716b3c5'] +patches = ['NCCL-2.16.2_fix-cpuid.patch'] +checksums = [ + {'v2.10.3-1.tar.gz': '55de166eb7dcab9ecef2629cdb5fb0c5ebec4fae03589c469ebe5dcb5716b3c5'}, + {'NCCL-2.16.2_fix-cpuid.patch': '0459ecadcd32b2a7a000a2ce4f675afba908b2c0afabafde585330ff4f83e277'}, +] builddependencies = [('binutils', '2.37')] diff --git a/easybuild/easyconfigs/n/NCCL/NCCL-2.10.3-GCCcore-11.2.0-CUDA-11.5.2.eb b/easybuild/easyconfigs/n/NCCL/NCCL-2.10.3-GCCcore-11.2.0-CUDA-11.5.2.eb index e3a29b13334..da1b8400a0f 100644 --- a/easybuild/easyconfigs/n/NCCL/NCCL-2.10.3-GCCcore-11.2.0-CUDA-11.5.2.eb +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.10.3-GCCcore-11.2.0-CUDA-11.5.2.eb @@ -11,7 +11,11 @@ toolchain = {'name': 'GCCcore', 'version': '11.2.0'} github_account = 'NVIDIA' source_urls = [GITHUB_SOURCE] sources = ['v%(version)s-1.tar.gz'] -checksums = ['55de166eb7dcab9ecef2629cdb5fb0c5ebec4fae03589c469ebe5dcb5716b3c5'] +patches = ['NCCL-2.16.2_fix-cpuid.patch'] +checksums = [ + {'v2.10.3-1.tar.gz': '55de166eb7dcab9ecef2629cdb5fb0c5ebec4fae03589c469ebe5dcb5716b3c5'}, + {'NCCL-2.16.2_fix-cpuid.patch': '0459ecadcd32b2a7a000a2ce4f675afba908b2c0afabafde585330ff4f83e277'}, +] builddependencies = [('binutils', '2.37')] diff --git a/easybuild/easyconfigs/n/NCCL/NCCL-2.11.4-gcccuda-2019b.eb b/easybuild/easyconfigs/n/NCCL/NCCL-2.11.4-gcccuda-2019b.eb index a80da45c38a..407de136e21 100644 --- a/easybuild/easyconfigs/n/NCCL/NCCL-2.11.4-gcccuda-2019b.eb +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.11.4-gcccuda-2019b.eb @@ -10,6 +10,10 @@ toolchain = {'name': 'gcccuda', 'version': '2019b'} github_account = 'NVIDIA' source_urls = [GITHUB_SOURCE] sources = ['v%(version)s-1.tar.gz'] -checksums = ['db4e9a0277a64f9a31ea9b5eea22e63f10faaed36dded4587bbc8a0d8eceed10'] +patches = ['NCCL-2.16.2_fix-cpuid.patch'] +checksums = [ + {'v2.11.4-1.tar.gz': 'db4e9a0277a64f9a31ea9b5eea22e63f10faaed36dded4587bbc8a0d8eceed10'}, + {'NCCL-2.16.2_fix-cpuid.patch': '0459ecadcd32b2a7a000a2ce4f675afba908b2c0afabafde585330ff4f83e277'}, +] moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/NCCL/NCCL-2.12.12-GCCcore-11.3.0-CUDA-11.7.0.eb b/easybuild/easyconfigs/n/NCCL/NCCL-2.12.12-GCCcore-11.3.0-CUDA-11.7.0.eb index 2282286a915..89fcfe9a013 100644 --- a/easybuild/easyconfigs/n/NCCL/NCCL-2.12.12-GCCcore-11.3.0-CUDA-11.7.0.eb +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.12.12-GCCcore-11.3.0-CUDA-11.7.0.eb @@ -11,7 +11,11 @@ toolchain = {'name': 'GCCcore', 'version': '11.3.0'} github_account = 'NVIDIA' source_urls = [GITHUB_SOURCE] sources = ['v%(version)s-1.tar.gz'] -checksums = ['49b4fbfeebf1f62f6ceb69e72504045d8d1b4e7609e3c2477906f3004c7e2d82'] +patches = ['NCCL-2.16.2_fix-cpuid.patch'] +checksums = [ + {'v2.12.12-1.tar.gz': '49b4fbfeebf1f62f6ceb69e72504045d8d1b4e7609e3c2477906f3004c7e2d82'}, + {'NCCL-2.16.2_fix-cpuid.patch': '0459ecadcd32b2a7a000a2ce4f675afba908b2c0afabafde585330ff4f83e277'}, +] builddependencies = [('binutils', '2.38')] diff --git a/easybuild/easyconfigs/n/NCCL/NCCL-2.16.2-GCCcore-12.2.0-CUDA-12.0.0.eb b/easybuild/easyconfigs/n/NCCL/NCCL-2.16.2-GCCcore-12.2.0-CUDA-12.0.0.eb index cd576dcb0e7..17636f6fb8b 100644 --- a/easybuild/easyconfigs/n/NCCL/NCCL-2.16.2-GCCcore-12.2.0-CUDA-12.0.0.eb +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.16.2-GCCcore-12.2.0-CUDA-12.0.0.eb @@ -11,7 +11,11 @@ toolchain = {'name': 'GCCcore', 'version': '12.2.0'} github_account = 'NVIDIA' source_urls = [GITHUB_SOURCE] sources = ['v%(version)s-1.tar.gz'] -checksums = ['7f7c738511a8876403fc574d13d48e7c250d934d755598d82e14bab12236fc64'] +patches = ['NCCL-2.16.2_fix-cpuid.patch'] +checksums = [ + {'v2.16.2-1.tar.gz': '7f7c738511a8876403fc574d13d48e7c250d934d755598d82e14bab12236fc64'}, + {'NCCL-2.16.2_fix-cpuid.patch': '0459ecadcd32b2a7a000a2ce4f675afba908b2c0afabafde585330ff4f83e277'}, +] builddependencies = [('binutils', '2.39')] diff --git a/easybuild/easyconfigs/n/NCCL/NCCL-2.16.2_fix-cpuid.patch b/easybuild/easyconfigs/n/NCCL/NCCL-2.16.2_fix-cpuid.patch new file mode 100644 index 00000000000..de293c36e76 --- /dev/null +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.16.2_fix-cpuid.patch @@ -0,0 +1,43 @@ +The 2nd CPUID asm code modifies registers used by other variables due to failure to list +EBX, ECX & EDX in the "clobbers" list. +This causes corruption leading to segfaults or wrong results depending on compiler optimization/register allocation. + +Fix by using the __cpuid GCC function. +See https://github.com/NVIDIA/nccl/pull/1070 + +Author: Alexander Grund (TU Dresden) + +diff --git a/src/graph/xml.cc b/src/graph/xml.cc +index 316d20f..d0d1272 100644 +--- a/src/graph/xml.cc ++++ b/src/graph/xml.cc +@@ -12,6 +12,9 @@ + #include "core.h" + #include "nvmlwrap.h" + #include "xml.h" ++#if defined(__x86_64__) ++#include ++#endif + + /*******************/ + /* XML File Parser */ +@@ -408,7 +411,8 @@ ncclResult_t ncclTopoGetXmlFromCpu(struct ncclXmlNode* cpuNode, struct ncclXml* + char vendor[12]; + } cpuid0; + +- asm volatile("cpuid" : "=b" (cpuid0.ebx), "=c" (cpuid0.ecx), "=d" (cpuid0.edx) : "a" (0) : "memory"); ++ unsigned unused; ++ __cpuid(0, unused, cpuid0.ebx, cpuid0.ecx, cpuid0.edx); + char vendor[13]; + strncpy(vendor, cpuid0.vendor, 12); + vendor[12] = '\0'; +@@ -430,7 +434,8 @@ ncclResult_t ncclTopoGetXmlFromCpu(struct ncclXmlNode* cpuNode, struct ncclXml* + }; + uint32_t val; + } cpuid1; +- asm volatile("cpuid" : "=a" (cpuid1.val) : "a" (1) : "memory"); ++ unsigned unused; ++ __cpuid(1, cpuid1.val, unused, unused, unused); + int familyId = cpuid1.familyId + (cpuid1.extFamilyId << 4); + int modelId = cpuid1.modelId + (cpuid1.extModelId << 4); + NCCLCHECK(xmlSetAttrInt(cpuNode, "familyid", familyId)); diff --git a/easybuild/easyconfigs/n/NCCL/NCCL-2.18.3-GCCcore-12.3.0-CUDA-12.1.1.eb b/easybuild/easyconfigs/n/NCCL/NCCL-2.18.3-GCCcore-12.3.0-CUDA-12.1.1.eb index d23741aa2c8..c85b7a97e48 100644 --- a/easybuild/easyconfigs/n/NCCL/NCCL-2.18.3-GCCcore-12.3.0-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.18.3-GCCcore-12.3.0-CUDA-12.1.1.eb @@ -11,8 +11,12 @@ toolchain = {'name': 'GCCcore', 'version': '12.3.0'} github_account = 'NVIDIA' source_urls = [GITHUB_SOURCE] sources = ['v%(version)s-1.tar.gz'] -checksums = [('6477d83c9edbb34a0ebce6d751a1b32962bc6415d75d04972b676c6894ceaef9', - 'b4f5d7d9eea2c12e32e7a06fe138b2cfc75969c6d5c473aa6f819a792db2fc96')] +patches = ['NCCL-2.16.2_fix-cpuid.patch'] +checksums = [ + ('6477d83c9edbb34a0ebce6d751a1b32962bc6415d75d04972b676c6894ceaef9', + 'b4f5d7d9eea2c12e32e7a06fe138b2cfc75969c6d5c473aa6f819a792db2fc96'), + {'NCCL-2.16.2_fix-cpuid.patch': '0459ecadcd32b2a7a000a2ce4f675afba908b2c0afabafde585330ff4f83e277'}, +] builddependencies = [('binutils', '2.40')] diff --git a/easybuild/easyconfigs/n/NCCL/NCCL-2.8.3-GCCcore-10.2.0-CUDA-11.1.1.eb b/easybuild/easyconfigs/n/NCCL/NCCL-2.8.3-GCCcore-10.2.0-CUDA-11.1.1.eb index 81fa9b3dfaa..3c825519ba4 100644 --- a/easybuild/easyconfigs/n/NCCL/NCCL-2.8.3-GCCcore-10.2.0-CUDA-11.1.1.eb +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.8.3-GCCcore-10.2.0-CUDA-11.1.1.eb @@ -16,10 +16,14 @@ dependencies = [('CUDAcore', local_cuda_version, '', SYSTEM)] github_account = 'NVIDIA' source_urls = [GITHUB_SOURCE] sources = ['v%(version)s-1.tar.gz'] -patches = ['NCCL-2.8.3_fix-isend-irecv.patch'] +patches = [ + 'NCCL-2.8.3_fix-isend-irecv.patch', + 'NCCL-2.16.2_fix-cpuid.patch', +] checksums = [ - '3ae89ddb2956fff081e406a94ff54ae5e52359f5d645ce977c7eba09b3b782e6', # v2.8.3-1.tar.gz - '04d61ea9b9f0954bed05494017649a68950b6b5e5851d969244f9ab67d5ecc92', # NCCL-2.8.3_fix-isend-irecv.patch + {'v2.8.3-1.tar.gz': '3ae89ddb2956fff081e406a94ff54ae5e52359f5d645ce977c7eba09b3b782e6'}, + {'NCCL-2.8.3_fix-isend-irecv.patch': '04d61ea9b9f0954bed05494017649a68950b6b5e5851d969244f9ab67d5ecc92'}, + {'NCCL-2.16.2_fix-cpuid.patch': '0459ecadcd32b2a7a000a2ce4f675afba908b2c0afabafde585330ff4f83e277'}, ] moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/NCCL/NCCL-2.8.3-GCCcore-9.3.0-CUDA-11.0.2.eb b/easybuild/easyconfigs/n/NCCL/NCCL-2.8.3-GCCcore-9.3.0-CUDA-11.0.2.eb index 140a12a4575..700f896be0e 100644 --- a/easybuild/easyconfigs/n/NCCL/NCCL-2.8.3-GCCcore-9.3.0-CUDA-11.0.2.eb +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.8.3-GCCcore-9.3.0-CUDA-11.0.2.eb @@ -16,10 +16,14 @@ dependencies = [('CUDAcore', local_cuda_version, '', SYSTEM)] github_account = 'NVIDIA' source_urls = [GITHUB_SOURCE] sources = ['v%(version)s-1.tar.gz'] -patches = ['NCCL-2.8.3_fix-isend-irecv.patch'] +patches = [ + 'NCCL-2.8.3_fix-isend-irecv.patch', + 'NCCL-2.16.2_fix-cpuid.patch', +] checksums = [ - '3ae89ddb2956fff081e406a94ff54ae5e52359f5d645ce977c7eba09b3b782e6', # v2.8.3-1.tar.gz - '04d61ea9b9f0954bed05494017649a68950b6b5e5851d969244f9ab67d5ecc92', # NCCL-2.8.3_fix-isend-irecv.patch + {'v2.8.3-1.tar.gz': '3ae89ddb2956fff081e406a94ff54ae5e52359f5d645ce977c7eba09b3b782e6'}, + {'NCCL-2.8.3_fix-isend-irecv.patch': '04d61ea9b9f0954bed05494017649a68950b6b5e5851d969244f9ab67d5ecc92'}, + {'NCCL-2.16.2_fix-cpuid.patch': '0459ecadcd32b2a7a000a2ce4f675afba908b2c0afabafde585330ff4f83e277'}, ] moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/NSPR/NSPR-4.35-GCCcore-13.2.0.eb b/easybuild/easyconfigs/n/NSPR/NSPR-4.35-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..dd289fea3b1 --- /dev/null +++ b/easybuild/easyconfigs/n/NSPR/NSPR-4.35-GCCcore-13.2.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'NSPR' +version = '4.35' + +homepage = 'https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR' +description = """Netscape Portable Runtime (NSPR) provides a platform-neutral API for system level + and libc-like functions.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://ftp.mozilla.org/pub/nspr/releases/v%(version)s/src/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['7ea3297ea5969b5d25a5dd8d47f2443cda88e9ee746301f6e1e1426f8a6abc8f'] + +builddependencies = [('binutils', '2.40')] + +configopts = "--disable-debug --enable-optimize --enable-64bit" + +sanity_check_paths = { + 'files': ['bin/nspr-config', 'lib/libnspr%(version_major)s.a', 'lib/libnspr%%(version_major)s.%s' % SHLIB_EXT, + 'lib/libplc%(version_major)s.a', 'lib/libplc%%(version_major)s.%s' % SHLIB_EXT, + 'lib/libplds%(version_major)s.a', 'lib/libplds%%(version_major)s.%s' % SHLIB_EXT, + 'lib/pkgconfig/nspr.pc'], + 'dirs': ['include/nspr'], +} + +sanity_check_commands = ["nspr-config --version"] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/NSS/NSS-3.94-GCCcore-13.2.0.eb b/easybuild/easyconfigs/n/NSS/NSS-3.94-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..98dcf8eb5b5 --- /dev/null +++ b/easybuild/easyconfigs/n/NSS/NSS-3.94-GCCcore-13.2.0.eb @@ -0,0 +1,61 @@ +easyblock = 'MakeCp' + +name = 'NSS' +version = '3.94' + +homepage = 'https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS' +description = """Network Security Services (NSS) is a set of libraries designed to support cross-platform development + of security-enabled client and server applications.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://ftp.mozilla.org/pub/security/nss/releases/NSS_%s_RTM/src/' % version.replace('.', '_')] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'NSS-3.39_pkgconfig.patch', + 'NSS-3.55_fix-ftbfs-glibc-invalid-oob-error.patch', +] +checksums = [ + {'nss-3.94.tar.gz': '463ae180ee9e5ee9e3ad4f629326657e236780cc865572a930a16520abad9dd8'}, + {'NSS-3.39_pkgconfig.patch': '5c4b55842e5afd1e8e67b90635f6474510b89242963c4ac2622d3e3da9062774'}, + {'NSS-3.55_fix-ftbfs-glibc-invalid-oob-error.patch': + '15768297c5dd6918132af281531afcfe3e358f45a00bc2655d20a6cbe4310a9b'}, +] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('NSPR', '4.35'), + ('zlib', '1.2.13'), +] + +# building in parallel fails +parallel = 1 + +# disable use of -Werror to work around compilation errors with newer glibc versions, +# see also https://sourceware.org/bugzilla/show_bug.cgi?id=27476 +buildopts = "NSS_ENABLE_WERROR=0 " +# fix for not being able to find header files +buildopts += 'BUILD_OPT=1 USE_64=1 CPATH="$EBROOTNSPR/include/nspr:$CPATH" ' +# fix c standard causing missing functions +buildopts += 'OS_REL_CFLAGS="-D_XOPEN_SOURCE " && ' +# also install pkgconfig file (see patch) +buildopts += "cd config && make PREFIX=%(installdir)s BUILD_OPT=1 USE_64=1 && cd -" +# optional testsuite (takes a long time) +# buildopts += " && cd %(builddir)s/%(namelower)s-%(version)s/%(namelower)s/tests && BUILD_OPT=1 USE_64=1 ./all.sh " + +files_to_copy = ['../dist/Linux*.OBJ/*', (['../dist/public/*'], 'include')] + +sanity_check_paths = { + 'files': ['bin/nss-config', 'bin/multinit', 'lib/libnss.a'], + 'dirs': ['include/dbm', 'include/nss'], +} + +sanity_check_commands = [ + "multinit --help", + "nss-config --version", +] + +modextrapaths = {'CPATH': 'include/nss'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/NVHPC/NVHPC-23.7-CUDA-12.1.1.eb b/easybuild/easyconfigs/n/NVHPC/NVHPC-23.7-CUDA-12.1.1.eb index 02aab8eea28..7b88fabc35f 100644 --- a/easybuild/easyconfigs/n/NVHPC/NVHPC-23.7-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/n/NVHPC/NVHPC-23.7-CUDA-12.1.1.eb @@ -13,7 +13,16 @@ local_tarball_tmpl = 'nvhpc_2023_%%(version_major)s%%(version_minor)s_Linux_%s_c # accept_eula = True source_urls = ['https://developer.download.nvidia.com/hpc-sdk/%(version)s/'] sources = [local_tarball_tmpl % '%(arch)s'] -checksums = ['fea91d95ff18bca1ce7afde50371caa02001ade8bed6ddfc5ff70862ccbebece'] +checksums = [ + { + local_tarball_tmpl % 'aarch64': + 'd3b9b674045e6e17156b298941be4e1e1e7dea6a3c1938f14ad653b180860ff2', + local_tarball_tmpl % 'ppc64le': + '67b137cf67e2c8556ef3952d1ee35f4966c9d1968626825924fb8e4b198a532b', + local_tarball_tmpl % 'x86_64': + 'fea91d95ff18bca1ce7afde50371caa02001ade8bed6ddfc5ff70862ccbebece', + } +] local_gccver = '12.3.0' dependencies = [ diff --git a/easybuild/easyconfigs/n/NVHPC/NVHPC-23.7-CUDA-12.2.0.eb b/easybuild/easyconfigs/n/NVHPC/NVHPC-23.7-CUDA-12.2.0.eb new file mode 100644 index 00000000000..f0a51a9c986 --- /dev/null +++ b/easybuild/easyconfigs/n/NVHPC/NVHPC-23.7-CUDA-12.2.0.eb @@ -0,0 +1,75 @@ +name = 'NVHPC' +version = '23.7' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://developer.nvidia.com/hpc-sdk/' +description = """C, C++ and Fortran compilers included with the NVIDIA HPC SDK (previously: PGI)""" + +toolchain = SYSTEM + +local_tarball_tmpl = 'nvhpc_2023_%%(version_major)s%%(version_minor)s_Linux_%s_cuda_multi.tar.gz' +# By downloading, you accept the HPC SDK Software License Agreement +# https://docs.nvidia.com/hpc-sdk/eula/index.html +# accept_eula = True +source_urls = ['https://developer.download.nvidia.com/hpc-sdk/%(version)s/'] +sources = [local_tarball_tmpl % '%(arch)s'] +checksums = [ + { + local_tarball_tmpl % 'aarch64': + 'd3b9b674045e6e17156b298941be4e1e1e7dea6a3c1938f14ad653b180860ff2', + local_tarball_tmpl % 'ppc64le': + '67b137cf67e2c8556ef3952d1ee35f4966c9d1968626825924fb8e4b198a532b', + local_tarball_tmpl % 'x86_64': + 'fea91d95ff18bca1ce7afde50371caa02001ade8bed6ddfc5ff70862ccbebece', + } +] + +local_gccver = '12.3.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.40', '', ('GCCcore', local_gccver)), + # This is necessary to avoid cases where just libnuma.so.1 is present in the system and -lnuma fails + ('numactl', '2.0.16', '', ('GCCcore', local_gccver)), + ('CUDA', '12.2.0', '', SYSTEM), +] + +module_add_cuda = False + +# specify default CUDA version that should be used by NVHPC +# should match one of the CUDA versions that are included with this NVHPC version +# (see install_components/Linux_x86_64/$version/cuda/) where $version is the NVHPC version +# this version can be tweaked from the EasyBuild command line with +# --try-amend=default_cuda_version="11.0" (for example) +default_cuda_version = '%(cudaver)s' + +# NVHPC EasyBlock supports some features, which can be set via CLI or this easyconfig. +# The following list gives examples for the easyconfig +# +# NVHPC needs CUDA to work. Two options are available: 1) Use NVHPC-bundled CUDA, 2) use system CUDA +# 1) Bundled CUDA +# If no easybuild dependency to CUDA is present, the bundled CUDA is taken. A version needs to be specified with +# default_cuda_version = "11.0" +# in this easyconfig file; alternatively, it can be specified through the command line during installation with +# --try-amend=default_cuda_version="10.2" +# 2) CUDA provided via EasyBuild +# Use CUDA as a dependency, for example +# dependencies = [('CUDA', '11.5.0')] +# The parameter default_cuda_version still can be set as above. +# If not set, it will be deduced from the CUDA module (via $EBVERSIONCUDA) +# +# Define a NVHPC-default Compute Capability +# cuda_compute_capabilities = "8.0" +# Can also be specified on the EasyBuild command line via --cuda-compute-capabilities=8.0 +# Only single values supported, not lists of values! +# +# Options to add/remove things to/from environment module (defaults shown) +# module_byo_compilers = False # Remove compilers from PATH (Bring-your-own compilers) +# module_nvhpc_own_mpi = False # Add NVHPC's own pre-compiled OpenMPI +# module_add_math_libs = False # Add NVHPC's math libraries (which should be there from CUDA anyway) +# module_add_profilers = False # Add NVHPC's NVIDIA Profilers +# module_add_nccl = False # Add NVHPC's NCCL library +# module_add_nvshmem = False # Add NVHPC's NVSHMEM library +# module_add_cuda = False # Add NVHPC's bundled CUDA + +# this bundle serves as a compiler-only toolchain, so it should be marked as compiler (important for HMNS) +moduleclass = 'compiler' 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' diff --git a/easybuild/easyconfigs/n/Nextflow/Nextflow-23.10.0.eb b/easybuild/easyconfigs/n/Nextflow/Nextflow-23.10.0.eb new file mode 100644 index 00000000000..2c6f2b030c8 --- /dev/null +++ b/easybuild/easyconfigs/n/Nextflow/Nextflow-23.10.0.eb @@ -0,0 +1,35 @@ +easyblock = 'Binary' + +name = 'Nextflow' +version = '23.10.0' + +homepage = 'https://www.nextflow.io/' +description = """Nextflow is a reactive workflow framework and a programming DSL + that eases writing computational pipelines with complex data""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/nextflow-io/nextflow/releases/download/v%(version)s/'] +sources = ['nextflow-%(version)s-all'] +checksums = ['c69f6055c97741b828b6ee67de38125a42f1774f1621afd34c0eb72ffea171a6'] + +dependencies = [('Java', '11')] + +install_cmds = [ + "mkdir -p %(installdir)s/bin", + "cp %(builddir)s/nextflow-%(version)s-all %(installdir)s/bin", + "cd %(installdir)s/bin && ln -s nextflow-%(version)s-all nextflow", + "cd %(installdir)s/bin && chmod +x %(installdir)s/bin/nextflow-%(version)s-all", +] + +sanity_check_paths = { + 'files': ['bin/nextflow-%(version)s-all', 'bin/nextflow'], + 'dirs': [] +} + +sanity_check_commands = [ + "nextflow -v", + "nextflow help", +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/n/Normaliz/Normaliz-3.10.1-gfbf-2022a.eb b/easybuild/easyconfigs/n/Normaliz/Normaliz-3.10.1-gfbf-2022a.eb new file mode 100644 index 00000000000..18e3d880567 --- /dev/null +++ b/easybuild/easyconfigs/n/Normaliz/Normaliz-3.10.1-gfbf-2022a.eb @@ -0,0 +1,52 @@ +easyblock = 'ConfigureMake' + +name = 'Normaliz' +version = '3.10.1' + +homepage = 'https://www.normaliz.uni-osnabrueck.de/' +description = """Normaliz is a open source tool for computations in affine monoids, vector +configurations, rational polyhedra and rational cones. Normaliz now computes +rational and algebraic polyhedra, i.e., polyhedra defined over real algebraic +extensions of QQ.""" + +toolchain = {'name': 'gfbf', 'version': '2022a'} +toolchainopts = {'pic': True, 'openmp': True, 'cstd': 'c++14'} + +github_account = 'Normaliz' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = ['Normaliz-3.10.1_fix_tests.patch'] +checksums = [ + {'v3.10.1.tar.gz': '761b28884fa2af00498251803a3ce4e03fcb843b7471e77e4be9b9bcd3cd0a15'}, + {'Normaliz-3.10.1_fix_tests.patch': '51bc6ee071ea3777ef30db704e80d31d684883ed3c2c05e3c346f256332c22cc'}, +] + +builddependencies = [ + ('Autotools', '20220317'), +] + +dependencies = [ + ('Boost', '1.79.0'), + ('GMP', '6.2.1'), + ('CoCoALib', '0.99818'), + ('FLINT', '2.9.0'), + ('Arb', '2.23.0'), + ('E-ANTIC', '1.3.0'), + ('nauty', '2.8.6'), +] + +preconfigopts = "autoreconf -f -i && " + +configopts = "--with-gmp=$EBROOTGMP --with-cocoalib=$EBROOTCOCOALIB --with-flint=$EBROOTFLINT " +configopts += "--with-e-antic=$EBROOTEMINANTIC --with-nauty=$EBROOTNAUTY" + +runtest = 'check' + +sanity_check_paths = { + 'files': ['bin/normaliz'] + ['lib/libnormaliz.%s' % e for e in ['a', SHLIB_EXT]], + 'dirs': ['include/libnormaliz'] +} + +sanity_check_commands = ["normaliz --help"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/n/Normaliz/Normaliz-3.10.1_fix_tests.patch b/easybuild/easyconfigs/n/Normaliz/Normaliz-3.10.1_fix_tests.patch new file mode 100644 index 00000000000..cf775ac69a4 --- /dev/null +++ b/easybuild/easyconfigs/n/Normaliz/Normaliz-3.10.1_fix_tests.patch @@ -0,0 +1,432 @@ +From 132415b96c57f6dc4d45fb4e8de62bdc8df18dae Mon Sep 17 00:00:00 2001 +From: Winfried Bruns +Date: Mon, 3 Jul 2023 12:29:21 +0200 +Subject: [PATCH] More NoLLL + +--- + test/test-/ChF_8_1024.in | 1 + + test/test-/ChF_8_1024Nr.in | 1 + + test/test-/ThierryPF.in | 3 +- + test/test-/smallPF.in | 1 + + test/test-mrk/Kwak10-mrk.in | 1 + + test/test-mrk/Kwak10-mrk.mrk.ref | 308 +++++++++++++++---------------- + 6 files changed, 160 insertions(+), 155 deletions(-) + +diff --git a/test/test-/ChF_8_1024.in b/test/test-/ChF_8_1024.in +index 9ecd13845..4fd83ae5c 100644 +--- a/test/test-/ChF_8_1024.in ++++ b/test/test-/ChF_8_1024.in +@@ -18,4 +18,5 @@ constraints 16 + 0.10976576 -0.2153132834 0.2028206781 -0.1825337879 0.1552322265 -0.1219651777 0.0840110756 -0.04282847494 <= 1/2 + ProjectionFloat + LatticePoints ++NoLLL + +diff --git a/test/test-/ChF_8_1024Nr.in b/test/test-/ChF_8_1024Nr.in +index e713f7521..c2e05c38a 100644 +--- a/test/test-/ChF_8_1024Nr.in ++++ b/test/test-/ChF_8_1024Nr.in +@@ -18,4 +18,5 @@ constraints 16 + 0.10976576 -0.2153132834 0.2028206781 -0.1825337879 0.1552322265 -0.1219651777 0.0840110756 -0.04282847494 <= 1/2 + ProjectionFloat + NumberLatticePoints ++NoLLL + +diff --git a/test/test-/ThierryPF.in b/test/test-/ThierryPF.in +index ffea2e14c..ebd7ba996 100644 +--- a/test/test-/ThierryPF.in ++++ b/test/test-/ThierryPF.in +@@ -4,4 +4,5 @@ vertices + [1, -1, 1000], [1789345001, 37121001, 1000], [1789345001, 37120999, 1000], + [1789344999, 37121001, 1000]] + ModuleGenerators +-ProjectionFloat +\ No newline at end of file ++ProjectionFloat ++NoLLL +diff --git a/test/test-/smallPF.in b/test/test-/smallPF.in +index 9f14e9442..43e93d6f5 100644 +--- a/test/test-/smallPF.in ++++ b/test/test-/smallPF.in +@@ -192,5 +192,6 @@ cone 190 + 0 0 0 16 7 1 + ProjectionFloat + LatticePoints ++NoLLL + + +diff --git a/test/test-mrk/Kwak10-mrk.in b/test/test-mrk/Kwak10-mrk.in +index d384a5584..114a75240 100644 +--- a/test/test-mrk/Kwak10-mrk.in ++++ b/test/test-mrk/Kwak10-mrk.in +@@ -206,3 +206,4 @@ toric_ideal 205 + 0 0 0 -1 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 -1 1 1 + -5 -2 0 -5 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 2 0 + MarkovBasis ++NoLLL +diff --git a/test/test-mrk/Kwak10-mrk.mrk.ref b/test/test-mrk/Kwak10-mrk.mrk.ref +index f78875e83..7d74447f9 100644 +--- a/test/test-mrk/Kwak10-mrk.mrk.ref ++++ b/test/test-mrk/Kwak10-mrk.mrk.ref +@@ -1,207 +1,207 @@ + 205 + 21 +-1 -5 4 1 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++-1 5 -4 -1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + -1 -6 2 -1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + 0 -3 1 0 0 -1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 + 0 -3 2 0 0 0 0 0 -1 0 0 0 1 0 0 0 0 0 0 0 0 + -2 -1 -2 -2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + -1 -1 2 -1 0 -1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 + -2 -4 -1 -2 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 +-1 -2 -1 1 0 0 0 -1 1 0 0 0 0 0 0 0 0 0 0 0 0 ++-1 2 1 -1 0 0 0 1 -1 0 0 0 0 0 0 0 0 0 0 0 0 + -1 -1 -1 -1 1 -1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 + 0 -1 2 0 0 0 0 0 0 0 0 1 0 0 0 -1 0 0 0 0 0 +-1 0 -1 1 0 0 0 0 0 0 0 0 1 0 0 -1 0 0 0 0 0 +-0 -5 2 0 0 0 0 -1 0 0 0 0 0 0 0 1 0 0 0 0 0 +-0 -5 0 0 0 2 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 ++-1 0 1 -1 0 0 0 0 0 0 0 0 -1 0 0 1 0 0 0 0 0 ++-1 0 -1 -1 0 2 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 ++-1 5 -1 -1 0 0 0 1 0 0 0 0 -1 0 0 0 0 0 0 0 0 + -3 -2 0 -3 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 + -1 -1 0 -1 1 0 0 -1 0 0 0 1 0 0 0 0 0 0 0 0 0 +-0 -3 -1 0 0 1 0 0 1 0 0 0 0 0 0 -1 0 0 0 0 0 ++-1 -3 0 -1 0 1 0 0 1 0 0 0 -1 0 0 0 0 0 0 0 0 + 0 -5 -1 0 0 1 0 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 ++-5 2 -5 1 -2 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 + -2 -1 0 -2 1 -1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 +-5 -2 5 -1 2 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 +-6 -7 9 0 1 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 ++-6 7 -9 0 -1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 + 0 -6 0 0 0 0 0 0 2 0 0 0 0 0 0 -1 0 0 0 0 0 + -1 -1 0 -1 0 1 0 1 0 0 0 0 0 0 0 -1 0 0 0 0 0 +-0 -8 0 0 0 0 0 0 1 0 0 -1 1 0 0 0 0 0 0 0 0 ++-6 -1 -9 0 -1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 + -6 -4 -7 0 -1 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 +-4 -3 8 -2 2 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 + -4 -3 -1 2 -3 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 ++-4 3 -8 2 -2 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 + -6 -4 -3 0 -2 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 +-5 -8 12 -1 1 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 +--1 -3 -1 -1 0 0 0 1 1 0 0 -1 0 0 0 0 0 0 0 0 0 +-6 -13 16 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 ++-5 8 -12 1 -1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 ++-6 -1 -6 0 -2 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 ++-6 13 -16 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 + -6 -4 -4 0 -2 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 + -4 -2 -3 2 -3 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 +--1 -5 0 -1 0 1 0 0 0 0 0 -1 0 0 0 1 0 0 0 0 0 + -3 -2 -4 3 -3 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 +-4 -3 5 -2 3 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 +-3 -1 6 -3 3 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 +--4 -3 1 -3 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 +--6 -7 -2 0 -2 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 +--4 -3 1 -2 -2 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 +--6 -10 0 0 -2 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 ++-6 -3 -5 0 -2 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 ++-4 3 -5 2 -3 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 ++-3 1 -6 3 -3 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 ++4 3 -1 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 ++-7 -2 -6 -1 -1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 ++4 3 -1 2 2 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 ++-8 0 -8 -2 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 + 5 -2 3 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 + -6 -4 -1 0 -3 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 + -3 -2 -1 3 -4 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 + 0 0 -1 6 -5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +--6 -6 -4 0 -2 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 ++-7 -1 -8 -1 -1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 + -4 -3 1 -1 -3 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 + 5 -2 3 3 1 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 + -2 -1 -3 4 -4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-1 -5 5 -5 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +--6 -9 -2 0 -2 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 +-5 -2 3 2 2 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 +-2 -10 9 -4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +--7 -5 -1 -1 -2 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 +-3 -15 13 -3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-1 -2 2 1 4 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++-1 5 -5 5 -4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++-7 -4 -6 -1 -1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 ++-5 2 -3 -2 -2 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 ++-2 10 -9 4 -3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++-8 0 -5 -2 -1 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 ++-3 15 -13 3 -2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++-1 2 -2 -1 -4 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + 0 -3 2 0 -5 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-2 -1 2 2 3 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 +-4 -20 17 -2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-0 1 -1 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 0 0 ++-2 1 -2 -2 -3 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 ++0 -1 1 0 0 0 0 0 0 1 -1 0 0 0 0 0 0 0 0 0 0 ++-4 20 -17 2 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + -2 -4 -2 4 -4 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 + -1 -3 1 -1 -4 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 +-3 -1 2 3 2 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 +--8 -6 -1 -2 -1 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 ++-3 1 -2 -3 -2 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 ++-9 -1 -5 -3 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 ++0 -1 1 0 0 0 0 0 0 0 0 0 0 1 -1 0 0 0 0 0 0 + -7 -4 -3 -1 -2 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 +-0 1 -1 0 0 0 0 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 ++-5 25 -21 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + 4 -1 2 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 +--2 -3 1 -2 -3 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 +-5 -25 21 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +--1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 -1 0 ++2 3 -1 2 3 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 ++0 1 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 -1 + -1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 -1 0 +-0 -1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 1 +--3 -3 1 -3 -2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 ++-1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 -1 0 ++3 3 -1 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 + -2 0 0 0 1 0 0 0 0 0 0 0 0 0 -1 0 0 1 0 0 0 + -2 0 0 1 0 0 0 0 0 0 0 0 0 0 -1 0 1 0 0 0 0 +--8 -5 -3 -2 -1 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 ++-9 0 -7 -3 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 + -3 0 0 0 1 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 +--7 -9 -1 -1 -2 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 +-1 1 0 1 -1 0 1 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 ++-8 -4 -5 -2 -1 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 ++-1 -1 0 -1 1 0 -1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 + -1 0 -1 -1 1 0 -1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 + -1 0 0 -1 1 0 0 0 0 -1 0 0 0 1 0 0 0 0 0 0 0 + 1 0 0 1 -1 0 0 0 0 0 1 0 0 0 -1 0 0 0 0 0 0 +--6 -4 -1 -5 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 +--1 0 0 -1 1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 1 +--1 0 0 -1 1 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 1 0 +--6 -4 -1 -4 -1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 +--6 -4 -1 -3 -2 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 +--6 -7 0 -5 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 +--1 0 -2 -1 0 1 1 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 +--7 -5 -3 0 -4 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 +--6 -7 0 -4 -1 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 +--7 -5 -2 -5 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 +--6 -7 0 -3 -2 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 +-1 1 2 1 0 -1 0 0 0 -1 0 0 0 1 0 0 0 0 0 0 0 +--1 0 -3 -1 0 1 0 0 0 0 1 0 0 -1 0 0 0 0 0 0 0 +-4 5 0 4 2 -1 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 +--4 -4 -1 -4 -2 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 +--1 -3 -1 -1 0 0 1 0 1 -1 0 0 0 0 0 0 0 0 0 0 0 ++6 4 1 5 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 ++1 0 0 1 -1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 -1 ++1 0 0 1 -1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 -1 0 ++-2 -1 -2 -1 0 1 0 0 0 0 0 0 0 0 0 0 0 1 -1 0 0 ++-3 0 -3 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 -1 ++7 2 5 0 4 0 0 0 -1 0 0 0 0 0 0 0 0 0 -1 0 0 ++0 -1 -1 0 -1 1 1 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 ++8 0 7 1 3 0 0 0 0 0 0 0 -1 0 0 0 0 0 -1 0 0 ++-2 -4 -1 -1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 -1 0 0 ++-1 -1 -1 0 0 -1 0 0 0 0 0 0 1 0 0 0 0 1 -1 0 0 ++-3 -3 -2 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 -1 ++0 -1 -2 0 -1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 -1 ++0 0 -3 0 -1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 -1 ++-1 -1 -2 -1 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 -1 ++-1 0 -3 -1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 -1 ++0 -4 0 0 -1 0 1 0 1 0 0 0 0 0 -1 0 0 0 0 0 0 + -3 -6 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 -1 +--5 -5 0 -5 -1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 +--5 -4 -1 -5 -1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 +--7 -5 0 0 -5 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 +--4 -3 0 3 -6 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 +-0 0 -1 0 0 -1 1 0 0 -1 0 0 1 0 0 0 0 0 0 0 0 ++1 2 1 2 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 -1 ++8 0 4 1 4 0 0 -1 0 0 0 0 0 0 0 0 0 0 -1 0 0 ++1 1 2 2 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 1 -1 0 ++4 3 0 -3 6 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 ++0 -1 -3 0 -1 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 -1 + -3 -2 0 -2 0 0 0 1 0 0 0 0 0 0 0 0 0 1 -1 0 0 +-1 4 1 1 0 0 0 0 -1 -1 0 0 0 1 0 0 0 0 0 0 0 +-0 -2 0 0 0 -1 0 0 1 -1 1 0 0 0 0 0 0 0 0 0 0 +-1 5 0 1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 0 1 0 +--7 -2 -2 0 0 0 0 0 0 -1 0 1 0 0 0 0 0 0 1 0 0 +--4 -2 0 -1 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 -1 0 +-0 -2 0 0 0 -1 0 0 1 0 0 0 0 -1 1 0 0 0 0 0 0 +-0 1 1 0 0 1 0 0 0 -1 0 0 -1 1 0 0 0 0 0 0 0 +--1 -5 0 -2 0 0 0 0 1 0 0 0 0 0 0 0 0 0 -1 0 1 +--1 -6 0 -1 0 0 0 0 0 0 1 0 1 -1 0 0 0 0 0 0 0 +--5 -7 0 -5 -1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 +--2 -1 0 -2 0 0 1 1 0 -1 0 0 0 0 0 0 0 0 0 0 0 +--8 -6 0 0 -5 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 +-5 6 1 5 1 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 0 0 ++0 -4 -1 0 -1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 -1 ++0 -3 -2 0 -1 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 -1 ++9 1 4 2 3 0 0 0 0 0 0 -1 0 0 0 0 0 0 -1 0 0 ++-1 -4 -1 -1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 -1 ++-4 -1 -1 -1 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 -1 ++-1 -3 -2 -1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 -1 ++1 5 0 2 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 1 0 -1 ++-1 -2 -3 -1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 -1 ++0 -2 0 0 0 -1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 -1 ++-1 -1 -4 -1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 -1 ++0 -1 0 0 -2 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 -1 ++-1 -1 0 0 0 0 0 -1 0 0 0 1 0 0 0 0 0 1 -1 0 0 ++0 -1 -1 0 0 -1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 -1 + -1 -6 0 -1 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 -1 +--6 -6 -2 0 -5 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 +--6 -5 -3 0 -5 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 +--7 -1 -4 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 0 1 0 0 ++0 2 0 1 0 1 0 0 0 0 0 0 -1 0 0 0 0 0 1 0 -1 ++0 1 1 1 0 1 0 0 0 0 0 0 -1 0 0 0 0 0 1 -1 0 ++9 0 6 2 3 0 0 0 0 0 0 0 0 0 0 -1 0 0 -1 0 0 + -4 -3 0 -2 0 0 0 0 0 0 0 1 0 0 0 0 1 0 -1 0 0 +-0 0 0 0 0 0 1 -1 0 -1 0 1 0 0 0 0 0 0 0 0 0 +--8 -5 -2 0 -5 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 +-2 2 0 2 0 0 0 -1 0 -1 0 0 0 1 0 0 0 0 0 0 0 +--2 -1 -1 -2 0 0 0 1 0 0 1 0 0 -1 0 0 0 0 0 0 0 +-2 2 0 2 0 0 0 -1 0 0 0 0 0 -1 0 0 0 0 0 0 1 +--2 -2 0 -2 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 -1 0 +--6 -3 -1 0 -1 0 -1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 +--8 -5 -1 -5 -1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 +--6 -5 0 0 -6 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 +--3 -1 -1 3 -2 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 +--3 -3 0 3 -7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 +--1 0 0 -1 0 -1 1 0 0 -1 0 0 0 0 0 1 0 0 0 0 0 +-0 1 0 0 0 0 0 1 0 -1 0 -1 0 1 0 0 0 0 0 0 0 +-0 0 -1 0 0 0 0 -1 0 0 1 1 0 -1 0 0 0 0 0 0 0 +-6 4 1 0 1 0 1 0 0 0 0 -1 0 -1 0 0 0 0 0 0 0 +--6 -6 0 0 -6 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 +--6 -3 -1 0 -1 0 0 0 0 -1 0 1 0 0 0 0 0 0 0 0 1 +--6 -2 -2 0 -1 0 0 0 0 -1 0 1 0 0 0 0 0 0 0 1 0 +-1 1 0 1 0 1 0 0 0 -1 0 0 0 1 0 -1 0 0 0 0 0 +--1 0 -1 -1 0 -1 0 0 0 0 1 0 0 -1 0 1 0 0 0 0 0 +-6 6 1 0 6 0 0 0 0 0 0 0 0 -1 0 -1 0 0 0 0 0 +--6 -5 -2 0 -6 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 +--6 -2 -3 0 -1 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 0 1 +--6 -1 -4 0 -1 0 0 0 0 -1 0 0 0 0 0 1 0 0 0 1 0 +-2 1 1 -4 3 0 1 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 +--2 -3 0 4 -8 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 +--3 0 0 -1 0 0 0 -1 0 0 0 0 0 -1 0 0 0 0 2 0 0 +--4 0 0 -1 0 0 0 -1 0 -1 0 0 0 0 0 0 0 1 1 0 0 +-1 1 1 -5 4 0 1 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 +--7 -2 0 -3 0 0 0 0 0 -1 0 0 0 0 0 0 0 2 0 0 0 +--7 -2 0 -3 0 0 0 0 0 -1 0 0 0 0 0 0 1 0 1 0 0 ++-1 -2 0 -1 -1 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 -1 ++-1 -2 0 -1 -1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 -1 ++-2 -1 0 -1 0 -1 0 0 0 0 0 0 0 0 0 1 0 1 -1 0 0 ++-1 -1 -1 -1 -1 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 -1 ++-2 -2 0 -2 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 -1 ++-2 -1 -1 -2 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 -1 ++7 1 3 1 5 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 -1 ++-3 0 -1 0 0 -1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 -1 ++2 2 0 3 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 1 -1 0 ++3 1 1 -3 2 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 ++3 3 0 -3 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 ++-2 -3 0 -2 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 -1 ++-1 -1 -2 -1 -1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 -1 ++-2 -2 -1 -2 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 -1 ++0 -1 0 0 0 0 0 -1 0 0 0 1 0 1 0 0 0 0 0 0 -1 ++0 0 -1 0 0 0 0 -1 0 0 0 1 0 0 1 0 0 0 0 0 -1 ++8 2 3 2 4 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 -1 ++0 1 0 1 0 0 0 1 0 0 0 -1 0 0 0 0 0 0 1 -1 0 ++-2 -2 -2 -2 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 -1 ++-2 -1 -3 -2 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 -1 ++-1 -1 0 -1 0 -1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 -1 ++-1 0 -1 -1 0 -1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 -1 ++0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 -1 0 0 0 1 -1 ++1 1 0 2 0 1 0 0 0 0 0 0 0 0 0 -1 0 0 1 -1 0 ++-2 -1 -1 4 -3 0 -1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 ++2 3 0 -4 8 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 ++-5 -2 0 -3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 -1 ++-5 -2 0 -2 -1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 -1 ++-5 -2 0 -1 -2 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 -1 ++-1 -1 -1 5 -4 0 -1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 ++-5 -2 0 -1 -2 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 -1 + -1 -3 0 5 -9 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 +--5 -1 -1 -4 -5 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 +--7 -2 0 -2 -1 0 0 0 0 -1 0 0 0 0 0 0 1 1 0 0 0 +--5 -1 -1 -3 -6 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 +--7 -2 0 -1 -2 0 0 0 0 -1 0 0 0 0 0 0 2 0 0 0 0 ++5 1 1 4 5 0 -1 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 ++-5 -2 0 0 -3 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 -1 ++5 1 1 3 6 0 -1 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 ++-9 -1 -2 -3 -5 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 + 6 2 1 5 4 0 0 0 0 -1 0 0 0 0 0 0 0 0 -1 0 0 + -5 -1 -1 -2 -7 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 +--4 -2 0 -3 -1 0 0 0 0 -1 1 0 0 0 0 0 0 0 1 0 0 ++-2 -2 0 -1 -3 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 -1 + 7 2 2 0 8 0 0 0 0 0 0 0 0 -1 0 0 0 0 -1 0 0 +--5 -2 0 -4 0 0 0 0 0 -1 0 0 0 0 1 0 0 0 1 0 0 ++-3 -2 0 -2 -2 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 -1 ++8 2 2 1 7 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 -1 + -1 -1 0 -1 -9 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +-6 2 1 4 5 0 0 0 0 -1 0 0 0 0 0 0 0 -1 0 0 0 +--7 -4 0 0 -3 0 -1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 +--3 0 0 -2 0 0 0 -1 0 -1 0 0 0 0 0 0 0 0 1 1 0 +--4 -2 0 -2 -2 0 0 0 0 -1 1 0 0 0 0 0 0 1 0 0 0 ++-1 -1 0 0 0 0 -1 0 0 1 0 0 0 0 0 0 0 1 -1 0 0 ++-4 -2 0 -3 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 -1 ++-2 -2 0 0 -4 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 -1 + -1 0 0 0 0 0 0 0 0 -1 0 0 0 1 0 0 0 1 -1 0 0 +--5 -2 0 -3 -1 0 0 0 0 -1 0 0 0 0 1 0 0 1 0 0 0 +-6 2 1 3 6 0 0 0 0 -1 0 0 0 0 0 0 -1 0 0 0 0 +--1 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 1 -1 0 1 +--6 -2 0 -4 0 0 0 0 0 -1 0 0 0 0 0 0 0 1 0 1 0 +--4 -2 0 -1 -3 0 0 0 0 -1 1 0 0 0 0 0 1 0 0 0 0 +--1 0 0 0 0 0 0 0 0 -1 0 0 0 1 0 0 1 -1 0 0 0 +--5 -2 0 -2 -2 0 0 0 0 -1 0 0 0 0 1 0 1 0 0 0 0 +-2 2 0 2 8 0 -1 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 +--2 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 1 0 -1 0 1 ++-3 -2 0 -1 -3 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 -1 ++1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 -1 1 0 -1 ++-1 -1 0 0 0 0 -1 0 0 1 0 0 0 0 0 0 1 -1 0 0 0 ++-4 -2 0 -2 -2 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 -1 ++-1 0 -1 0 0 0 -1 0 0 0 1 0 0 0 0 0 1 -1 0 0 0 ++-2 -1 0 0 0 0 -1 0 0 0 0 0 0 1 0 0 1 0 -1 0 0 ++-3 -2 0 0 -4 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 -1 ++2 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 -1 0 1 0 -1 ++-2 -2 0 -2 -8 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 + -2 -1 -1 -2 -8 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 +--6 -2 0 -3 -1 0 0 0 0 -1 0 0 0 0 0 0 1 0 0 1 0 +-3 2 0 3 7 0 -1 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 +--3 -1 -1 -3 -7 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 +--4 -2 0 -4 -6 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 +--4 -1 -1 -4 -6 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 +-0 1 0 0 0 0 1 0 0 -2 0 0 0 1 0 0 0 0 0 0 0 +-0 0 1 0 0 0 1 0 0 -1 -1 0 0 1 0 0 0 0 0 0 0 +--1 -2 0 -1 -4 0 0 0 0 -1 2 0 0 0 0 0 0 0 0 0 0 +-4 3 0 4 6 0 0 0 0 -1 0 0 0 -1 0 0 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 -1 1 0 0 1 -1 0 0 0 0 0 0 +-4 2 1 4 6 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 0 0 ++-4 -2 0 -1 -3 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 -1 ++-3 -2 0 -3 -7 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 ++3 1 1 3 7 0 -1 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 ++4 2 0 4 6 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 ++4 1 1 4 6 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 ++0 0 -1 0 -5 0 0 0 0 2 0 0 0 0 0 0 0 0 0 -1 0 ++0 -1 0 0 0 0 -1 0 0 1 1 0 0 0 -1 0 0 0 0 0 0 ++0 0 -1 0 0 0 -1 0 0 0 2 0 0 0 -1 0 0 0 0 0 0 ++0 -1 0 0 0 0 -1 0 0 1 0 0 0 1 0 0 0 0 0 0 -1 ++0 0 -1 0 0 0 -1 0 0 1 0 0 0 0 1 0 0 0 0 0 -1 ++0 0 -1 0 0 0 -1 0 0 0 1 0 0 1 0 0 0 0 0 0 -1 ++2 0 1 2 3 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 1 -1 ++0 -2 0 0 -5 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 -1 + 0 0 0 0 0 0 0 0 0 -1 0 0 0 2 0 0 0 0 0 0 -1 +-5 3 0 5 5 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 -1 +--2 -2 0 -2 -3 0 0 0 0 -1 1 0 0 0 1 0 0 0 0 0 0 +-0 0 0 0 0 0 0 0 0 -1 0 0 0 1 1 0 0 0 0 -1 0 +-5 2 1 5 5 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 -1 0 +-0 0 0 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 -1 1 +-6 3 1 0 9 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 -1 +--3 -2 0 -3 -2 0 0 0 0 -1 0 0 0 0 2 0 0 0 0 0 0 +--3 -2 0 -3 -2 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 1 0 +-0 0 0 -1 0 0 0 0 0 -1 0 0 0 1 0 0 0 0 -1 1 0 +-0 0 0 -1 0 0 0 0 0 -1 0 0 0 0 1 0 0 0 -1 0 1 +--4 -2 0 -4 -1 0 0 0 0 -1 0 0 0 0 1 0 0 0 0 1 0 +--7 -3 -1 -1 -8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 +-0 0 0 -1 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 -1 1 1 +--5 -2 0 -5 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 2 0 ++0 1 0 1 0 0 1 0 0 0 -1 0 0 0 0 0 0 0 1 0 -1 ++0 0 0 0 0 0 0 0 0 1 -1 0 0 0 0 0 0 0 0 1 -1 ++0 0 0 0 0 0 0 0 0 0 -1 0 0 1 1 0 0 0 0 0 -1 ++3 0 1 3 2 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 1 -1 ++-1 -2 0 -1 -4 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 -1 ++-1 -2 0 -1 -4 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 -1 ++6 2 2 0 9 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 -1 ++0 0 0 0 0 0 0 0 0 0 0 0 0 1 -1 0 0 0 0 1 -1 ++-2 -2 0 -2 -3 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 -1 ++4 0 1 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 -2 ++0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 -1 -1 ++-3 -2 0 -3 -2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 -1 diff --git a/easybuild/easyconfigs/n/nanoflann/nanoflann-1.5.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/n/nanoflann/nanoflann-1.5.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..0c8b8032290 --- /dev/null +++ b/easybuild/easyconfigs/n/nanoflann/nanoflann-1.5.0-GCCcore-11.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'CMakeMake' + +name = 'nanoflann' +version = '1.5.0' + +homepage = 'https://github.com/jlblancoc/nanoflann' +description = "nanoflann is a C++11 header-only library for building KD-Trees of datasets with different topologies." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'optarch': False} # optarch causes test error on zen2 + +github_account = 'jlblancoc' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = ['nanoflann-1.4.0_use_external_googletest.patch'] +checksums = [ + {'v1.5.0.tar.gz': '89aecfef1a956ccba7e40f24561846d064f309bc547cc184af7f4426e42f8e65'}, + {'nanoflann-1.4.0_use_external_googletest.patch': + '5f0b99b0558bdf76c19d52eb82d10cdcc104eb6c2fb1891e033b5c96fb47f7b9'}, +] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.24.3'), + ('googletest', '1.11.0'), +] + +configopts = '-DNANOFLANN_BUILD_TESTS=ON' + +runtest = 'test' + +sanity_check_paths = { + 'files': ['include/nanoflann.hpp', 'lib/pkgconfig/nanoflann.pc'], + 'dirs': ['share/nanoflann/cmake'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/nauty/nauty-2.8.6-GCC-11.3.0.eb b/easybuild/easyconfigs/n/nauty/nauty-2.8.6-GCC-11.3.0.eb new file mode 100644 index 00000000000..1fe2879b3c8 --- /dev/null +++ b/easybuild/easyconfigs/n/nauty/nauty-2.8.6-GCC-11.3.0.eb @@ -0,0 +1,53 @@ +easyblock = 'MakeCp' + +name = 'nauty' +version = '2.8.6' + +homepage = 'https://pallini.di.uniroma1.it/' +description = """nauty and Traces are programs for computing automorphism groups of graphs and +digraphs. They can also produce a canonical label.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://pallini.di.uniroma1.it'] +sources = ['nauty%s.tar.gz' % version.replace('.', '_')] +checksums = ['f2ce98225ca8330f5bce35f7d707b629247e09dda15fc479dc00e726fee5e6fa'] + +local_executables = [ + 'addedgeg', 'amtog', 'assembleg', 'biplabg', 'catg', 'complg', 'converseg', 'copyg', 'countg', 'cubhamg', + 'deledgeg', 'delptg', 'directg', 'dreadnaut', 'dretodot', 'dretog', 'edgetransg', 'genbg', 'genbgL', 'geng', + 'gengL', 'genquarticg', 'genrang', 'genspecialg', 'gentourng', 'gentreeg', 'hamheuristic', 'labelg', 'linegraphg', + 'listg', 'multig', 'newedgeg', 'NRswitchg', 'pickg', 'planarg', 'ranlabg', 'shortg', 'showg', 'subdivideg', + 'twohamg', 'underlyingg', 'vcolg', 'watercluster2' +] +local_headers = [ + 'gtools.h', 'gutils.h', 'naugroup.h', 'naugstrings.h', 'naurng.h', 'nausparse.h', 'nautaux.h', 'nautinv.h', + 'naututil.h', 'nautycliquer.h', 'nauty.h', 'planarity.h', 'quarticirred28.h', 'schreier.h', 'traces.h' +] +local_libs = ['nauty%s.a' % l for l in ['', '1', 'L', 'L1', 'W', 'W1']] + +# Configure and enable thread-local variables +prebuildopts = "./configure --enable-tls && " + +runtest = "checks" + +files_to_copy = [ + (local_executables, "bin"), + (local_headers, "include/%(name)s"), + (local_libs, "lib"), +] + +# prepend "lib" to library files to standarize their name +postinstallcmds = ["cd %%(installdir)s/lib/ && mv %s lib%s" % (l, l) for l in local_libs] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_executables] + + ['include/%%(name)s/%s' % h for h in local_headers] + + ['lib/lib%s' % l for l in local_libs], + 'dirs': [''] +} + +sanity_check_commands = ["dreadnaut --help"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/n/nettle/nettle-3.9.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/n/nettle/nettle-3.9.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..d29fc015efd --- /dev/null +++ b/easybuild/easyconfigs/n/nettle/nettle-3.9.1-GCCcore-13.2.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'nettle' +version = '3.9.1' + +homepage = 'https://www.lysator.liu.se/~nisse/nettle/' +description = """Nettle is a cryptographic library that is designed to fit easily + in more or less any context: In crypto toolkits for object-oriented + languages (C++, Python, Pike, ...), in applications like LSH or GNUPG, + or even in kernel space.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['ccfeff981b0ca71bbd6fbcb054f407c60ffb644389a5be80d6716d5b550c6ce3'] + +builddependencies = [ + ('binutils', '2.40'), + ('Autotools', '20220317'), +] + +dependencies = [ + ('GMP', '6.3.0'), +] + +configopts = '--disable-openssl ' # openssl is just used for the nettle-openssl example and requires openssl 1.1 + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['nettle-hash', 'nettle-lfib-stream', 'pkcs1-conv', 'sexp-conv']] + + [('lib/libhogweed.a', 'lib64/libhogweed.a'), + ('lib/libhogweed.%s' % SHLIB_EXT, 'lib64/libhogweed.%s' % SHLIB_EXT), + ('lib/libnettle.a', 'lib64/libnettle.a'), + ('lib/libnettle.%s' % SHLIB_EXT, 'lib64/libnettle.%s' % SHLIB_EXT)], + 'dirs': ['include/nettle'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/nglview/nglview-3.0.3-foss-2022a.eb b/easybuild/easyconfigs/n/nglview/nglview-3.0.3-foss-2022a.eb new file mode 100644 index 00000000000..a515d80a568 --- /dev/null +++ b/easybuild/easyconfigs/n/nglview/nglview-3.0.3-foss-2022a.eb @@ -0,0 +1,43 @@ +easyblock = 'PythonBundle' + +name = 'nglview' +version = '3.0.3' + +homepage = 'https://github.com/arose/nglview' +description = "IPython widget to interactively view molecular structures and trajectories." + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('JupyterLab', '3.5.0'), + ('nodejs', '16.15.1'), + ('MDAnalysis', '2.2.0'), # optional +] + +use_pip = True + +exts_list = [ + ('versioneer', '0.28', { + 'checksums': ['7175ca8e7bb4dd0e3c9779dd2745e5b4a6036304af3f5e50bd896f10196586d6'], + }), + (name, version, { + 'use_pip_extras': 'MDAnalysis', + 'checksums': ['3253c44bd071e4701c288de44997471608487d5191ab3d3b7736c8651335c1af'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/nglview'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +modextrapaths = { + 'JUPYTER_PATH': 'share/jupyter', + 'JUPYTER_CONFIG_PATH': 'etc/jupyter', +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/n/nodejs/nodejs-20.9.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/n/nodejs/nodejs-20.9.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..24be2bb275b --- /dev/null +++ b/easybuild/easyconfigs/n/nodejs/nodejs-20.9.0-GCCcore-13.2.0.eb @@ -0,0 +1,54 @@ +easyblock = 'ConfigureMake' + +name = 'nodejs' +version = '20.9.0' # LTS on 2023-11-03 +local_libversion = '115' + +homepage = 'https://nodejs.org' +description = """Node.js is a platform built on Chrome's JavaScript runtime + for easily building fast, scalable network applications. Node.js uses an + event-driven, non-blocking I/O model that makes it lightweight and efficient, + perfect for data-intensive real-time applications that run across distributed devices.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://nodejs.org/dist/v%(version)s/'] +sources = ['node-v%(version)s.tar.gz'] +checksums = ['a7e6547a951406e4e546a74160ed27b26f9abd4baf7c44dd5a0fa992852d0cfa'] + +builddependencies = [ + ('binutils', '2.40'), + ('Python', '3.11.5'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('ICU', '74.1'), + ('OpenSSL', '1.1', '', SYSTEM), +] + +# Use ICU and OpenSSL from EasyBuild +local_common_configopts = "--with-intl=system-icu --shared-openssl " + +configopts = [ + local_common_configopts, # Static build + '--shared %s' % local_common_configopts, # Build libnode.so in a second run +] + +# Link libv8 libs to libnode +local_extra_sonames = ['libnode', 'libv8', 'libv8_libbase', 'libv8_libplatform'] +local_extra_libs = ['%s.%s' % (x, SHLIB_EXT) for x in local_extra_sonames] +local_libnode_real = "libnode.%s.%s" % (SHLIB_EXT, local_libversion) + +postinstallcmds = [ + "cd %%(installdir)s/lib && ln -s %s %s" % (local_libnode_real, x) for x in local_extra_libs +] + +sanity_check_paths = { + 'files': ['bin/node', 'bin/npm'] + ['lib/%s' % x for x in [local_libnode_real] + local_extra_libs], + 'dirs': ['lib/node_modules', 'include/node'] +} + +sanity_check_commands = ["node --help"] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/o/OMERO.insight/OMERO.insight-5.8.3-Java-11.eb b/easybuild/easyconfigs/o/OMERO.insight/OMERO.insight-5.8.3-Java-11.eb new file mode 100644 index 00000000000..8c0e3aba949 --- /dev/null +++ b/easybuild/easyconfigs/o/OMERO.insight/OMERO.insight-5.8.3-Java-11.eb @@ -0,0 +1,27 @@ +easyblock = 'PackedBinary' + +name = 'OMERO.insight' +version = '5.8.3' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://github.com/ome/omero-insight' +description = """The OMERO.insight Project is a sub-project of the Open Microscopy Environment Project, OME that +focuses on delivering a client for the visualization and manipulation of both image data and metadata maintained +at an OMERO server site.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/ome/omero-insight/releases/download/v%(version)s/'] +sources = [SOURCE_ZIP] +checksums = ['9c4e48daff6e1bfe3d297ea0fd9a302730796f38cfa6d17729036e080ebeb173'] + +dependencies = [('Java', '11')] + +postinstallcmds = ["rm %(installdir)s/bin/omero-insight.bat"] + +sanity_check_paths = { + 'files': ['bin/omero-insight'], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/o/OMERO.py/OMERO.py-5.17.0-gfbf-2023a.eb b/easybuild/easyconfigs/o/OMERO.py/OMERO.py-5.17.0-gfbf-2023a.eb new file mode 100644 index 00000000000..77e990a66c7 --- /dev/null +++ b/easybuild/easyconfigs/o/OMERO.py/OMERO.py-5.17.0-gfbf-2023a.eb @@ -0,0 +1,48 @@ +easyblock = 'PythonBundle' + +name = 'OMERO.py' +version = '5.17.0' + +homepage = 'https://github.com/ome/omero-py' +description = """OMERO.py provides Python bindings to the OMERO.blitz server as well as a pluggable command-line +interface.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('SciPy-bundle', '2023.07'), + ('Pillow', '10.0.0'), + ('PyYAML', '6.0'), +] + +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('portalocker', '2.8.2', { + 'checksums': ['2b035aa7828e46c58e9b31390ee1f169b98e1066ab10b9a6a861fe7e25ee4f33'], + }), + ('zeroc-ice', '3.6.5', { + 'patches': ['zeroc-ice-3.6.5-py311.patch'], + 'modulename': 'Ice', + 'checksums': [ + {'zeroc-ice-3.6.5.tar.gz': '4235ffeb605bcd4e22e716577f7d61e4aa1bc82f65276bb542701a81b7933356'}, + {'zeroc-ice-3.6.5-py311.patch': 'b0d78cea8348e8685d1c87c294b41d03a89b71ac754275f3c518bf3f85c0d9ee'}, + ], + }), + ('omero-py', version, { + 'modulename': 'omero', + 'checksums': ['138120adfb500b6a3c85fd2160aefd10371f8080486d18231a6b6a55551e7aa1'], + }), +] + +sanity_check_paths = { + 'files': ['bin/omero'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/omero'], +} + +sanity_check_commands = ['omero -h'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/o/OMERO.py/zeroc-ice-3.6.5-py311.patch b/easybuild/easyconfigs/o/OMERO.py/zeroc-ice-3.6.5-py311.patch new file mode 100644 index 00000000000..8e98cf37048 --- /dev/null +++ b/easybuild/easyconfigs/o/OMERO.py/zeroc-ice-3.6.5-py311.patch @@ -0,0 +1,25 @@ +Fixes for python 3.11 +Author: micketeer@gmail.com + +--- src/Util.cpp.orig 2023-11-30 15:37:41.303679907 +0000 ++++ src/Util.cpp 2023-11-30 15:38:10.439525959 +0000 +@@ -214,7 +214,7 @@ + // + // Get name of current function. + // +- PyFrameObject *f = PyThreadState_GET()->frame; ++ PyFrameObject *f = PyEval_GetFrame(); + PyObjectHandle code = PyObject_GetAttrString(reinterpret_cast(f), STRCAST("f_code")); + assert(code.get()); + PyObjectHandle func = PyObject_GetAttrString(code.get(), STRCAST("co_name")); +--- src/Slice.cpp.orig 2023-11-30 15:37:31.530731550 +0000 ++++ src/Slice.cpp 2019-07-31 19:49:38.000000000 +0000 +@@ -21,7 +21,7 @@ + // Python headers needed for PyEval_EvalCode. + // + #include +-#include ++#include + + using namespace std; + using namespace IcePy; 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/o/Oases/Oases-20180312-GCC-12.3.0.eb b/easybuild/easyconfigs/o/Oases/Oases-20180312-GCC-12.3.0.eb new file mode 100644 index 00000000000..ff28b8169fa --- /dev/null +++ b/easybuild/easyconfigs/o/Oases/Oases-20180312-GCC-12.3.0.eb @@ -0,0 +1,42 @@ +easyblock = 'MakeCp' + +name = 'Oases' +version = '20180312' +local_commit = '1b4c14c' + +homepage = 'http://www.ebi.ac.uk/~zerbino/oases/' +description = """Oases is a de novo transcriptome assembler designed to produce transcripts from + short read sequencing technologies, such as Illumina, SOLiD, or 454 in the absence of any genomic assembly.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +# This is taken from the Oases repo to avoid setting git_config in sources +local_velvet_commit = '9adf09f7ded7fedaf6b0e5e4edf9f46602e263d3' + +source_urls = [ + 'https://github.com/dzerbino/%(namelower)s/archive/', + 'https://github.com/dzerbino/velvet/archive/', +] +sources = [ + {'download_filename': '%s.tar.gz' % local_commit, 'filename': '%(namelower)s-%(version)s.tar.gz'}, + {'download_filename': '%s.tar.gz' % local_velvet_commit, 'filename': 'velvet-20140815.tar.gz'} +] +checksums = [ + {'oases-20180312.tar.gz': 'f526b84e9fa3e5f89b728f4a71b8bd23b336b8a6cd83a2d88414710592ec5e4e'}, + {'velvet-20140815.tar.gz': '8e952e3a4bf2ffae586a64e5e97029c9fdd53b5e1991106ef832d73e499b163b'}, +] + +# listed make targets exclude 'doc' on purpose +buildopts = "VELVET_DIR=../velvet-%s cleanobj velvet oases" % local_velvet_commit +parallel = 1 + +files_to_copy = [(['oases'], 'bin'), 'data', 'scripts', 'src', 'doc', 'LICENSE.txt', 'README.md'] + +sanity_check_paths = { + 'files': ['bin/oases', 'LICENSE.txt', 'README.md'], + 'dirs': ['data', 'scripts', 'src', 'doc'] +} + +sanity_check_commands = ["oases --version"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.2.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.2.0.eb index ad53aa70e6b..48991f92ef5 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.2.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.2.0.eb @@ -16,6 +16,8 @@ patches = [ ('large.tgz', '.'), ('timing.tgz', '.'), 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', + '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.21_disable-fma-in-cscal-zscal.patch', 'OpenBLAS-0.3.21_avoid-crash-in-zdot.patch', @@ -26,6 +28,9 @@ checksums = [ {'timing.tgz': '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af'}, {'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch': 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971'}, + {'OpenBLAS-0.3.20_fix-x86-cpuid.patch': '57e8384404e136b9f0dafc26573adeb7dc69e60d84a7e189643b91d6299888fc'}, + {'OpenBLAS-0.3.20_use-xASUM-microkernels-on-new-intel-cpus.patch': + '1dbd0f9473963dbdd9131611b455d8a801f1e995eae82896186d3d3ffe6d5f03'}, {'OpenBLAS-0.3.21_fix-order-vectorization.patch': '08af834e5d60441fd35c128758ed9c092ba6887c829e0471ecd489079539047d'}, {'OpenBLAS-0.3.21_disable-fma-in-cscal-zscal.patch': diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.3.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.3.0.eb index 1041b4ef6d3..96a3218f027 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.3.0.eb @@ -16,10 +16,12 @@ patches = [ ('large.tgz', '.'), ('timing.tgz', '.'), 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', + 'OpenBLAS-0.3.20_fix-cpuid-neoverse-v1-n2.patch', + '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.21_disable-fma-in-cscal-zscal.patch', 'OpenBLAS-0.3.21_avoid-crash-in-zdot.patch', - 'OpenBLAS-0.3.20_fix-cpuid-neoverse-v1-n2.patch', ] checksums = [ {'v0.3.20.tar.gz': '8495c9affc536253648e942908e88e097f2ec7753ede55aca52e5dead3029e3c'}, @@ -27,13 +29,16 @@ checksums = [ {'timing.tgz': '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af'}, {'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch': 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971'}, + {'OpenBLAS-0.3.20_fix-cpuid-neoverse-v1-n2.patch': + '1b495465f8dd1e151d74cf5aa4288120361d29164d6a377228a8d51c255b8a9e'}, + {'OpenBLAS-0.3.20_fix-x86-cpuid.patch': '57e8384404e136b9f0dafc26573adeb7dc69e60d84a7e189643b91d6299888fc'}, + {'OpenBLAS-0.3.20_use-xASUM-microkernels-on-new-intel-cpus.patch': + '1dbd0f9473963dbdd9131611b455d8a801f1e995eae82896186d3d3ffe6d5f03'}, {'OpenBLAS-0.3.21_fix-order-vectorization.patch': '08af834e5d60441fd35c128758ed9c092ba6887c829e0471ecd489079539047d'}, {'OpenBLAS-0.3.21_disable-fma-in-cscal-zscal.patch': 'bd6836206a883208dc8bc997946f97e4c97d91d8e101fc54db414aaa56902fc3'}, {'OpenBLAS-0.3.21_avoid-crash-in-zdot.patch': '3dac2c1ec896df574f1b37cde81a16f24550b7f1eb81fbfacb0c4449b0dc7894'}, - {'OpenBLAS-0.3.20_fix-cpuid-neoverse-v1-n2.patch': - '1b495465f8dd1e151d74cf5aa4288120361d29164d6a377228a8d51c255b8a9e'}, ] builddependencies = [ diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-NVHPC-22.7-CUDA-11.7.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-NVHPC-22.7-CUDA-11.7.0.eb index 7b49821c348..d7442a5c7d8 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-NVHPC-22.7-CUDA-11.7.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-NVHPC-22.7-CUDA-11.7.0.eb @@ -16,6 +16,8 @@ patches = [ ('large.tgz', '.'), ('timing.tgz', '.'), 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', + '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.21_disable-fma-in-cscal-zscal.patch', 'OpenBLAS-0.3.21_avoid-crash-in-zdot.patch', @@ -26,6 +28,9 @@ checksums = [ {'timing.tgz': '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af'}, {'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch': 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971'}, + {'OpenBLAS-0.3.20_fix-x86-cpuid.patch': '57e8384404e136b9f0dafc26573adeb7dc69e60d84a7e189643b91d6299888fc'}, + {'OpenBLAS-0.3.20_use-xASUM-microkernels-on-new-intel-cpus.patch': + '1dbd0f9473963dbdd9131611b455d8a801f1e995eae82896186d3d3ffe6d5f03'}, {'OpenBLAS-0.3.21_fix-order-vectorization.patch': '08af834e5d60441fd35c128758ed9c092ba6887c829e0471ecd489079539047d'}, {'OpenBLAS-0.3.21_disable-fma-in-cscal-zscal.patch': diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20_fix-x86-cpuid.patch b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20_fix-x86-cpuid.patch new file mode 100644 index 00000000000..a26c184754c --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20_fix-x86-cpuid.patch @@ -0,0 +1,54 @@ +Fix C&P error causing misdetection of CPUs. +Allows auto-detection of Intel SapphireRapids +Backport from https://github.com/OpenMathLib/OpenBLAS/pull/4002 + +Author: Alexander Grund (TU Dresden) + +diff --git a/cpuid_x86.c b/cpuid_x86.c +index d7d85eb20..9a37aa3f1 100644 +--- a/cpuid_x86.c ++++ b/cpuid_x86.c +@@ -1900,7 +1900,8 @@ static char *corename[] = { + "ZEN", + "SKYLAKEX", + "DHYANA", +- "COOPERLAKE" ++ "COOPERLAKE", ++ "SAPPHIRERAPIDS", + }; + + static char *corename_lower[] = { +@@ -1934,7 +1935,8 @@ static char *corename_lower[] = { + "zen", + "skylakex", + "dhyana", +- "cooperlake" ++ "cooperlake", ++ "sapphirerapids", + }; + + +@@ -2240,16 +2242,18 @@ int get_coretype(void){ + return CORE_NEHALEM; + } + if (model == 15) { // Sapphire Rapids ++ if(support_amx_bf16()) ++ return CORE_SAPPHIRERAPIDS; + if(support_avx512_bf16()) +- return CPUTYPE_COOPERLAKE; ++ return CORE_COOPERLAKE; + if(support_avx512()) +- return CPUTYPE_SKYLAKEX; ++ return CORE_SKYLAKEX; + if(support_avx2()) +- return CPUTYPE_HASWELL; ++ return CORE_HASWELL; + if(support_avx()) +- return CPUTYPE_SANDYBRIDGE; ++ return CORE_SANDYBRIDGE; + else +- return CPUTYPE_NEHALEM; ++ return CORE_NEHALEM; + } + break; + diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20_use-xASUM-microkernels-on-new-intel-cpus.patch b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20_use-xASUM-microkernels-on-new-intel-cpus.patch new file mode 100644 index 00000000000..a342b04b79f --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20_use-xASUM-microkernels-on-new-intel-cpus.patch @@ -0,0 +1,65 @@ +From 9019bc494514a74c2042152cdca0a36adea7b42f Mon Sep 17 00:00:00 2001 +From: Martin Kroeker +Date: Sat, 4 Nov 2023 22:10:06 +0100 +Subject: [PATCH] Use SkylakeX ?ASUM microkernel for Cooperlake/Sapphirerapids + as well + +--- + kernel/x86_64/casum.c | 2 +- + kernel/x86_64/dasum.c | 2 +- + kernel/x86_64/sasum.c | 2 +- + kernel/x86_64/zasum.c | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/kernel/x86_64/casum.c b/kernel/x86_64/casum.c +index 60feec0ceb..e4d0543114 100644 +--- a/kernel/x86_64/casum.c ++++ b/kernel/x86_64/casum.c +@@ -4,7 +4,7 @@ + #define ABS_K(a) ((a) > 0 ? (a) : (-(a))) + #endif + +-#if defined(SKYLAKEX) ++#if defined(SKYLAKEX) || defined(COOPERLAKE) || defined(SAPPHIRERAPIDS) + #include "casum_microk_skylakex-2.c" + #endif + +diff --git a/kernel/x86_64/dasum.c b/kernel/x86_64/dasum.c +index a9c40f38f0..0147c6978a 100644 +--- a/kernel/x86_64/dasum.c ++++ b/kernel/x86_64/dasum.c +@@ -4,7 +4,7 @@ + #define ABS_K(a) ((a) > 0 ? (a) : (-(a))) + #endif + +-#if defined(SKYLAKEX) ++#if defined(SKYLAKEX) || defined(COOPERLAKE) || defined(SAPPHIRERAPIDS) + #include "dasum_microk_skylakex-2.c" + #elif defined(HASWELL) || defined(ZEN) + #include "dasum_microk_haswell-2.c" +diff --git a/kernel/x86_64/sasum.c b/kernel/x86_64/sasum.c +index 37a92468ff..3f22cb97a1 100644 +--- a/kernel/x86_64/sasum.c ++++ b/kernel/x86_64/sasum.c +@@ -9,7 +9,7 @@ + + #endif + +-#if defined(SKYLAKEX) ++#if defined(SKYLAKEX) || defined(COOPERLAKE) || defined(SAPPHIRERAPIDS) + #include "sasum_microk_skylakex-2.c" + #elif defined(HASWELL) || defined(ZEN) + #include "sasum_microk_haswell-2.c" +diff --git a/kernel/x86_64/zasum.c b/kernel/x86_64/zasum.c +index 80e95a2c89..3f17ab1cfa 100644 +--- a/kernel/x86_64/zasum.c ++++ b/kernel/x86_64/zasum.c +@@ -4,7 +4,7 @@ + #define ABS_K(a) ((a) > 0 ? (a) : (-(a))) + #endif + +-#if defined(SKYLAKEX) ++#if defined(SKYLAKEX) || defined(COOPERLAKE) || defined(SAPPHIRERAPIDS) + #include "zasum_microk_skylakex-2.c" + #endif + 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 274aeeec351..7e7d8c4b75f 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 @@ -16,6 +16,8 @@ patches = [ ('large.tgz', '.'), ('timing.tgz', '.'), 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', + '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.21-GCC-12.2.0_disable-fma-in-cscal-zscal.patch', 'OpenBLAS-0.3.21_avoid-crash-in-zdot.patch', @@ -26,6 +28,9 @@ checksums = [ {'timing.tgz': '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af'}, {'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch': 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971'}, + {'OpenBLAS-0.3.20_fix-x86-cpuid.patch': '57e8384404e136b9f0dafc26573adeb7dc69e60d84a7e189643b91d6299888fc'}, + {'OpenBLAS-0.3.20_use-xASUM-microkernels-on-new-intel-cpus.patch': + '1dbd0f9473963dbdd9131611b455d8a801f1e995eae82896186d3d3ffe6d5f03'}, {'OpenBLAS-0.3.21_fix-order-vectorization.patch': '08af834e5d60441fd35c128758ed9c092ba6887c829e0471ecd489079539047d'}, {'OpenBLAS-0.3.21-GCC-12.2.0_disable-fma-in-cscal-zscal.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 abbc1f81fe9..490f623ac15 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 @@ -16,6 +16,8 @@ patches = [ ('large.tgz', '.'), ('timing.tgz', '.'), 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', + '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_fix-parallel-build.patch', 'OpenBLAS-0.3.23_fix-lapack-test.patch', @@ -28,6 +30,9 @@ checksums = [ {'timing.tgz': '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af'}, {'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch': 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971'}, + {'OpenBLAS-0.3.20_fix-x86-cpuid.patch': '57e8384404e136b9f0dafc26573adeb7dc69e60d84a7e189643b91d6299888fc'}, + {'OpenBLAS-0.3.20_use-xASUM-microkernels-on-new-intel-cpus.patch': + '1dbd0f9473963dbdd9131611b455d8a801f1e995eae82896186d3d3ffe6d5f03'}, {'OpenBLAS-0.3.21_fix-order-vectorization.patch': '08af834e5d60441fd35c128758ed9c092ba6887c829e0471ecd489079539047d'}, {'OpenBLAS-0.3.23_fix-parallel-build.patch': 'abe10ba3b0ca54772dbf235596e35325a5159018f6a60cfc88824c2c220d99d9'}, 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 f3358f87771..be80c46e97c 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 @@ -16,9 +16,11 @@ patches = [ ('large.tgz', '.'), ('timing.tgz', '.'), '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.24_fix-czasum.patch', ] checksums = [ {'v0.3.24.tar.gz': 'ceadc5065da97bd92404cac7254da66cc6eb192679cf1002098688978d4d5132'}, @@ -26,11 +28,15 @@ checksums = [ {'timing.tgz': '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af'}, {'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch': 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971'}, + {'OpenBLAS-0.3.20_use-xASUM-microkernels-on-new-intel-cpus.patch': + '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.24_fix-czasum.patch': + '8132b87c519fb08caa3bd7291fe8a1d0e1afe6fcb667d16f3020b46122afe20c'}, ] builddependencies = [ diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.24_fix-czasum.patch b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.24_fix-czasum.patch new file mode 100644 index 00000000000..ae926d20167 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.24_fix-czasum.patch @@ -0,0 +1,76 @@ +From f8ad5344c210960fc399ca5b0ad8559ab5ca253e Mon Sep 17 00:00:00 2001 +From: Bart Oldeman +Date: Fri, 17 Nov 2023 23:49:34 +0000 +Subject: [PATCH] Fix casum fallback kernel. + +This kernel is only used on Skylake+ if the kernel with AVX512 +intrinsics can't be used, but used the variable x1 incorrectly +in the tail end of the loop, as it is still at the initial +value instead of where x points to. + +This caused 55 "other error"s in the LAPACK tests +(https://github.com/OpenMathLib/OpenBLAS/issues/4282) + +This change makes casum.c as similar as possible as zasum.c, +because zasum.c does this correctly. +--- + kernel/x86_64/casum.c | 24 ++++++++++++------------ + 1 file changed, 12 insertions(+), 12 deletions(-) + +diff --git a/kernel/x86_64/casum.c b/kernel/x86_64/casum.c +index e4d0543114..28d78d2797 100644 +--- a/kernel/x86_64/casum.c ++++ b/kernel/x86_64/casum.c +@@ -9,12 +9,12 @@ + #endif + + #ifndef HAVE_CASUM_KERNEL +-static FLOAT casum_kernel(BLASLONG n, FLOAT *x1) ++static FLOAT casum_kernel(BLASLONG n, FLOAT *x) + { + + BLASLONG i=0; + BLASLONG n_8 = n & -8; +- FLOAT *x = x1; ++ FLOAT *x1 = x; + FLOAT temp0, temp1, temp2, temp3; + FLOAT temp4, temp5, temp6, temp7; + FLOAT sum0 = 0.0; +@@ -24,14 +24,14 @@ static FLOAT casum_kernel(BLASLONG n, FLOAT *x1) + FLOAT sum4 = 0.0; + + while (i < n_8) { +- temp0 = ABS_K(x[0]); +- temp1 = ABS_K(x[1]); +- temp2 = ABS_K(x[2]); +- temp3 = ABS_K(x[3]); +- temp4 = ABS_K(x[4]); +- temp5 = ABS_K(x[5]); +- temp6 = ABS_K(x[6]); +- temp7 = ABS_K(x[7]); ++ temp0 = ABS_K(x1[0]); ++ temp1 = ABS_K(x1[1]); ++ temp2 = ABS_K(x1[2]); ++ temp3 = ABS_K(x1[3]); ++ temp4 = ABS_K(x1[4]); ++ temp5 = ABS_K(x1[5]); ++ temp6 = ABS_K(x1[6]); ++ temp7 = ABS_K(x1[7]); + + sum0 += temp0; + sum1 += temp1; +@@ -43,12 +43,12 @@ static FLOAT casum_kernel(BLASLONG n, FLOAT *x1) + sum2 += temp6; + sum3 += temp7; + +- x+=8; ++ x1+=8; + i+=4; + } + + while (i < n) { +- sum4 += (ABS_K(x1[0]) + ABS_K(x1[1])); ++ sum4 += ABS_K(x1[0]) + ABS_K(x1[1]); + x1 += 2; + i++; + } 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/OpenImageIO/OpenImageIO-2.4.14.0-GCC-12.3.0.eb b/easybuild/easyconfigs/o/OpenImageIO/OpenImageIO-2.4.14.0-GCC-12.3.0.eb index 3ca74380746..b0bc036fc2c 100644 --- a/easybuild/easyconfigs/o/OpenImageIO/OpenImageIO-2.4.14.0-GCC-12.3.0.eb +++ b/easybuild/easyconfigs/o/OpenImageIO/OpenImageIO-2.4.14.0-GCC-12.3.0.eb @@ -11,7 +11,8 @@ toolchain = {'name': 'GCC', 'version': '12.3.0'} source_urls = ['https://github.com/OpenImageIO/oiio/archive/refs/tags/'] sources = ['v%(version)s.tar.gz'] -checksums = ['92ad4b107394b273397baa1abe90207e1f8ef9fd52ffbfc23b46e3b0005d4439'] +checksums = [('92ad4b107394b273397baa1abe90207e1f8ef9fd52ffbfc23b46e3b0005d4439', + '40c2e6fe38f0460a92e3f9d24bf75bcc310c74585760a3b0ac1b1727582bb46c')] builddependencies = [ ('CMake', '3.26.3'), 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' diff --git a/easybuild/easyconfigs/o/Optuna/Optuna-3.1.0-foss-2022a.eb b/easybuild/easyconfigs/o/Optuna/Optuna-3.1.0-foss-2022a.eb index c22e7e088b0..ea4f9599187 100644 --- a/easybuild/easyconfigs/o/Optuna/Optuna-3.1.0-foss-2022a.eb +++ b/easybuild/easyconfigs/o/Optuna/Optuna-3.1.0-foss-2022a.eb @@ -42,7 +42,7 @@ exts_list = [ ('SQLAlchemy', '2.0.3', { 'checksums': ['c2b924f6d0162ed1c0d8f47db1e56498702b1c3c953ad84f0eefbf5b4e53bb05'], }), - ('%(namelower)s', version, { + ('optuna', version, { 'use_pip_extras': 'optional', 'checksums': ['96c7c92860c8692d3aa569d749e72b121422cb4af0ed3ad4bfbc445b61416919'], }), 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'), ] 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'), ] diff --git a/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0-GCCcore-10.2.0.eb b/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0-GCCcore-10.2.0.eb index f94945b4214..3c3d70d453b 100644 --- a/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0-GCCcore-10.2.0.eb @@ -34,9 +34,9 @@ builddependencies = [ start_dir = 'src' -parallel = 1 - -runtest = 'fulltest' +# There is also "fulltest" that is a superset of "test" but hangs on some processors +# indefinitely with a defunct `make` process. So use only "test". +runtest = 'test' sanity_check_paths = { 'files': ["bin/papi_%s" % x diff --git a/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0-GCCcore-8.3.0.eb b/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0-GCCcore-8.3.0.eb index 20a338a83fa..2ae6afcc42b 100644 --- a/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0-GCCcore-8.3.0.eb @@ -39,9 +39,9 @@ builddependencies = [ start_dir = 'src' -parallel = 1 - -runtest = 'fulltest' +# There is also "fulltest" that is a superset of "test" but hangs on some processors +# indefinitely with a defunct `make` process. So use only "test". +runtest = 'test' sanity_check_paths = { 'files': ["bin/papi_%s" % x diff --git a/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0-GCCcore-9.3.0.eb index aa17aa17a18..04c0b353db8 100644 --- a/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0-GCCcore-9.3.0.eb @@ -39,9 +39,9 @@ builddependencies = [ start_dir = 'src' -parallel = 1 - -runtest = 'fulltest' +# There is also "fulltest" that is a superset of "test" but hangs on some processors +# indefinitely with a defunct `make` process. So use only "test". +runtest = 'test' sanity_check_paths = { 'files': ["bin/papi_%s" % x diff --git a/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0.1-GCCcore-10.3.0.eb b/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0.1-GCCcore-10.3.0.eb index fdcf96e3727..806d3db3021 100644 --- a/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0.1-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0.1-GCCcore-10.3.0.eb @@ -31,9 +31,11 @@ builddependencies = [ start_dir = 'src' -parallel = 1 +configopts = "--with-components=rapl " # for energy measurements -runtest = 'fulltest' +# There is also "fulltest" that is a superset of "test" but hangs on some processors +# indefinitely with a defunct `make` process. So use only "test". +runtest = 'test' sanity_check_paths = { 'files': ["bin/papi_%s" % x diff --git a/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0.1-GCCcore-11.2.0.eb index 448668097f0..772871241ee 100644 --- a/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0.1-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/p/PAPI/PAPI-6.0.0.1-GCCcore-11.2.0.eb @@ -33,9 +33,9 @@ start_dir = 'src' configopts = "--with-components=rapl " # for energy measurements -parallel = 1 - -runtest = 'fulltest' +# There is also "fulltest" that is a superset of "test" but hangs on some processors +# indefinitely with a defunct `make` process. So use only "test". +runtest = 'test' sanity_check_paths = { 'files': ["bin/papi_%s" % x diff --git a/easybuild/easyconfigs/p/PAPI/PAPI-7.0.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/PAPI/PAPI-7.0.0-GCCcore-11.3.0.eb index 57ba7388d94..f44e4f12f92 100644 --- a/easybuild/easyconfigs/p/PAPI/PAPI-7.0.0-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/p/PAPI/PAPI-7.0.0-GCCcore-11.3.0.eb @@ -37,9 +37,9 @@ start_dir = 'src' configopts = "--with-components=rapl " # for energy measurements -parallel = 1 - -runtest = 'fulltest' +# There is also "fulltest" that is a superset of "test" but hangs on some processors +# indefinitely with a defunct `make` process. So use only "test". +runtest = 'test' sanity_check_paths = { 'files': ["bin/papi_%s" % x diff --git a/easybuild/easyconfigs/p/PAPI/PAPI-7.0.1-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/PAPI/PAPI-7.0.1-GCCcore-12.2.0.eb index 77f6a424cdc..56d42a5680b 100644 --- a/easybuild/easyconfigs/p/PAPI/PAPI-7.0.1-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/p/PAPI/PAPI-7.0.1-GCCcore-12.2.0.eb @@ -33,7 +33,9 @@ start_dir = 'src' configopts = "--with-components=rapl " # for energy measurements -runtest = 'fulltest' +# There is also "fulltest" that is a superset of "test" but hangs on some processors +# indefinitely with a defunct `make` process. So use only "test". +runtest = 'test' sanity_check_paths = { 'files': ["bin/papi_%s" % x diff --git a/easybuild/easyconfigs/p/PAPI/PAPI-7.0.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/PAPI/PAPI-7.0.1-GCCcore-12.3.0.eb index 4db6443b5c6..43913981892 100644 --- a/easybuild/easyconfigs/p/PAPI/PAPI-7.0.1-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/PAPI/PAPI-7.0.1-GCCcore-12.3.0.eb @@ -33,7 +33,9 @@ start_dir = 'src' configopts = "--with-components=rapl " # for energy measurements -runtest = 'fulltest' +# There is also "fulltest" that is a superset of "test" but hangs on some processors +# indefinitely with a defunct `make` process. So use only "test". +runtest = 'test' sanity_check_paths = { 'files': ["bin/papi_%s" % x diff --git a/easybuild/easyconfigs/p/PARI-GP/PARI-GP-2.15.4-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/PARI-GP/PARI-GP-2.15.4-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..44c09806f4d --- /dev/null +++ b/easybuild/easyconfigs/p/PARI-GP/PARI-GP-2.15.4-GCCcore-11.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'PARI-GP' +version = '2.15.4' + +homepage = 'https://pari.math.u-bordeaux.fr' +description = """PARI/GP is a widely used computer algebra system designed for fast computations in number theory + (factorizations, algebraic number theory, elliptic curves...), but also contains a large number of other useful + functions to compute with mathematical entities such as matrices, polynomials, power series, algebraic numbers etc., + and a lot of transcendental functions. PARI is also available as a C library to allow for faster computations. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://pari.math.u-bordeaux.fr/pub/pari/unix/'] +sources = ['pari-%(version)s.tar.gz'] +checksums = ['c3545bfee0c6dfb40b77fb4bbabaf999d82e60069b9f6d28bcb6cf004c8c5c0f'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [ + ('libreadline', '8.1.2'), + ('ncurses', '6.3'), +] + +skipsteps = ['configure'] + +prebuildopts = './Configure --prefix=%(installdir)s &&' + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['gp', 'gp-2.15', 'gphelp', 'tex2mail']] + + ['include/pari/%s' % x for x in ['pari.h', 'genpari.h']], + 'dirs': ['bin', 'include'] +} + +sanity_check_commands = ["gp --help"] + +moduleclass = 'math' 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..07ac613932c --- /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' diff --git a/easybuild/easyconfigs/p/PICRUSt2/PICRUSt2-2.5.2-foss-2022a.eb b/easybuild/easyconfigs/p/PICRUSt2/PICRUSt2-2.5.2-foss-2022a.eb new file mode 100644 index 00000000000..9f766d3ffeb --- /dev/null +++ b/easybuild/easyconfigs/p/PICRUSt2/PICRUSt2-2.5.2-foss-2022a.eb @@ -0,0 +1,49 @@ +easyblock = 'PythonBundle' + +name = 'PICRUSt2' +version = '2.5.2' + +homepage = 'https://github.com/picrust/picrust2' +description = """PICRUSt2 (Phylogenetic Investigation of Communities by + Reconstruction of Unobserved States) is a software for predicting + functional abundances based only on marker gene sequences.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('h5py', '3.7.0'), + ('biom-format', '2.1.14'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('joblib', '1.3.1', { + 'checksums': ['1f937906df65329ba98013dc9692fe22a4c5e4a648112de500508b18a21b41e3'], + }), + (name, version, { + 'modulename': '%(namelower)s', + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/picrust/%(namelower)s/archive'], + 'checksums': ['a8c3832bf759233b52b41c56a0ffef72491e431fee347a7c05695596c76a1a4c'], + }), +] + +postinstallcmds = [ + "cp -a %(start_dir)s%(name)s/%(namelower)s-%(version)s/%(namelower)s/default_files" + " %(installdir)s/lib/python%(pyshortver)s/site-packages/%(namelower)s/" +] + +sanity_check_commands = [ + "python -c 'from picrust2.default import default_tables'" +] + +sanity_check_paths = { + 'files': ['bin/picrust2_pipeline.py'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/picrust2/default_files'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.6.2-foss-2020b.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.6.2-foss-2020b.eb index da1d6cc2774..73cd893be22 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.6.2-foss-2020b.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.6.2-foss-2020b.eb @@ -35,7 +35,9 @@ dependencies = [ preconfigopts = 'env FC=$MPIF90 LIBS="$LIBLAPACK $LIBS" ' configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --enable-python ' configopts += '--enable-boost_graph --enable-boost_serialization ' -configopts += '--enable-asmjit ' +if ARCH == 'x86_64': + # the flag is not supported on aarch64 + configopts += '--enable-asmjit ' prebuildopts = 'source sourceme.sh && ' # make sure that ld.gold linker is used diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.0-foss-2020b.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.0-foss-2020b.eb index efbec7485f0..dc860859939 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.0-foss-2020b.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.0-foss-2020b.eb @@ -33,7 +33,9 @@ dependencies = [ preconfigopts = 'env FC=$MPIF90 LIBS="$LIBLAPACK $LIBS" ' configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --enable-python ' configopts += '--enable-boost_graph --enable-boost_serialization ' -configopts += '--enable-asmjit ' +if ARCH == 'x86_64': + # the flag is not supported on aarch64 + configopts += '--enable-asmjit ' prebuildopts = 'source sourceme.sh && ' # make sure that ld.gold linker is used diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.2-foss-2021a.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.2-foss-2021a.eb index 886f07ba021..3a0b31731ee 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.2-foss-2021a.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.2-foss-2021a.eb @@ -33,7 +33,9 @@ dependencies = [ preconfigopts = 'env FC=$MPIF90 LIBS="$LIBLAPACK $LIBS" ' configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --enable-python ' configopts += '--enable-boost_graph --enable-boost_serialization ' -configopts += '--enable-asmjit ' +if ARCH == 'x86_64': + # the flag is not supported on aarch64 + configopts += '--enable-asmjit ' prebuildopts = 'source sourceme.sh && ' # make sure that ld.gold linker is used diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.3-foss-2021b.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.3-foss-2021b.eb index c7f467034e0..c653aa77c5b 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.3-foss-2021b.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.7.3-foss-2021b.eb @@ -33,7 +33,9 @@ dependencies = [ preconfigopts = 'env FC=$MPIF90 LIBS="$LIBLAPACK $LIBS" ' configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --enable-python ' configopts += '--enable-boost_graph --enable-boost_serialization ' -configopts += '--enable-asmjit ' +if ARCH == 'x86_64': + # the flag is not supported on aarch64 + configopts += '--enable-asmjit ' prebuildopts = 'source sourceme.sh && ' # make sure that ld.gold linker is used diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.0-foss-2021b.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.0-foss-2021b.eb index 675fa899a60..8dcdc9293d7 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.0-foss-2021b.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.0-foss-2021b.eb @@ -33,7 +33,6 @@ dependencies = [ preconfigopts = 'env FC=$MPIF90 LIBS="$LIBLAPACK $LIBS" ' configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --enable-python ' configopts += '--enable-boost_graph --enable-boost_serialization ' -configopts += '--enable-asmjit ' prebuildopts = 'source sourceme.sh && ' # make sure that ld.gold linker is used diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.1-foss-2022a.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.1-foss-2022a.eb index 39272200991..846670014d4 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.1-foss-2022a.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.8.1-foss-2022a.eb @@ -33,7 +33,6 @@ dependencies = [ preconfigopts = 'env FC=$MPIF90 LIBS="$LIBLAPACK $LIBS" ' configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --enable-python ' configopts += '--enable-boost_graph --enable-boost_serialization ' -configopts += '--enable-asmjit ' prebuildopts = 'source sourceme.sh && ' # make sure that ld.gold linker is used diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2022b.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2022b.eb index c0b69eef9b1..a2971db49f7 100644 --- a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2022b.eb +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2022b.eb @@ -33,7 +33,6 @@ dependencies = [ preconfigopts = 'env FC=$MPIF90 LIBS="$LIBLAPACK $LIBS" ' configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --enable-python ' configopts += '--enable-boost_graph --enable-boost_serialization ' -configopts += '--enable-asmjit ' prebuildopts = 'source sourceme.sh && ' # make sure that ld.gold linker is used diff --git a/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2023a.eb b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2023a.eb new file mode 100644 index 00000000000..8ca97130960 --- /dev/null +++ b/easybuild/easyconfigs/p/PLUMED/PLUMED-2.9.0-foss-2023a.eb @@ -0,0 +1,59 @@ +easyblock = 'ConfigureMake' + +name = 'PLUMED' +version = '2.9.0' + +homepage = 'https://www.plumed.org' +description = """PLUMED is an open source library for free energy calculations in molecular systems which + works together with some of the most popular molecular dynamics engines. Free energy calculations can be + performed as a function of many order parameters with a particular focus on biological problems, using + state of the art methods such as metadynamics, umbrella sampling and Jarzynski-equation based steered MD. + The software, written in C++, can be easily interfaced with both fortran and C/C++ codes. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': 'True'} + +source_urls = ['https://github.com/plumed/plumed2/releases/download/v%(version)s/'] +sources = [SOURCE_TGZ] +checksums = ['534db9ccb9446844f3e99ecdff091ad79c014ce9c4afe212c1536e19f85ab0d1'] + +builddependencies = [ + ('xxd', '9.0.2112'), +] + +dependencies = [ + ('zlib', '1.2.13'), + ('GSL', '2.7'), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Boost', '1.82.0'), +] + +preconfigopts = 'env FC=$MPIF90 LIBS="$LIBLAPACK $LIBS" ' +configopts = '--exec-prefix=%(installdir)s --enable-gsl --enable-modules=all --enable-python ' +configopts += '--enable-boost_graph --enable-boost_serialization ' +prebuildopts = 'source sourceme.sh && ' + +# make sure that ld.gold linker is used +# required to work around problems like "ld: BFD (GNU Binutils) 2.30 assertion fail elf.c:3564" +# (problem with intel build but maintain consistency between easyconfigs) +buildopts = 'LD_RO="ld.gold -r -o"' + +# install path for PLUMED libraries must be included in $LD_LIBRARY_PATH when Python bindings get built/installed +preinstallopts = 'LD_LIBRARY_PATH="%(installdir)s/lib:$LD_LIBRARY_PATH" ' + +sanity_check_paths = { + 'files': ['bin/plumed', 'lib/libplumedKernel.%s' % SHLIB_EXT, 'lib/libplumed.%s' % SHLIB_EXT], + 'dirs': [], +} + +sanity_check_commands = ["python -c 'import plumed'"] + +modextrapaths = { + 'PLUMED_KERNEL': 'lib/libplumedKernel.%s' % SHLIB_EXT, + 'PLUMED_ROOT': 'lib/plumed', + 'PYTHONPATH': 'lib/plumed/python', +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/p/Pango/Pango-1.51.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/Pango/Pango-1.51.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..9040f4ef2dc --- /dev/null +++ b/easybuild/easyconfigs/p/Pango/Pango-1.51.0-GCCcore-13.2.0.eb @@ -0,0 +1,41 @@ +easyblock = 'MesonNinja' + +name = 'Pango' +version = '1.51.0' + +homepage = 'https://www.pango.org/' +description = """Pango is a library for laying out and rendering of text, with an emphasis on internationalization. +Pango can be used anywhere that text layout is needed, though most of the work on Pango so far has been done in the +context of the GTK+ widget toolkit. Pango forms the core of text and font handling for GTK+-2.x.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['74efc109ae6f903bbe6af77eaa2ac6094b8ee245a2e23f132a7a8f0862d1a9f5'] + +builddependencies = [ + ('binutils', '2.40'), + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('GObject-Introspection', '1.78.1'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('X11', '20231019'), + ('GLib', '2.78.1'), + ('cairo', '1.18.0'), + ('HarfBuzz', '8.2.2'), + ('FriBidi', '1.0.13'), +] + +configopts = "--buildtype=release --default-library=both " + +sanity_check_paths = { + 'files': ['bin/pango-view', 'lib/libpango-1.0.%s' % SHLIB_EXT, 'lib/libpangocairo-1.0.%s' % SHLIB_EXT, + 'lib/libpangoft2-1.0.%s' % SHLIB_EXT, 'lib/libpangoxft-1.0.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/Parallel-Hashmap/Parallel-Hashmap-1.36-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/Parallel-Hashmap/Parallel-Hashmap-1.36-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..2d88702f8ee --- /dev/null +++ b/easybuild/easyconfigs/p/Parallel-Hashmap/Parallel-Hashmap-1.36-GCCcore-11.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'CMakeMake' + +name = 'Parallel-Hashmap' +version = '1.36' + +homepage = 'https://github.com/greg7mdp/parallel-hashmap' +description = """Parallel Hashmap is built on a modified version of +Abseil's flat_hash_map. Parallel Hashmap has lower space requirements, +is nearly as fast as the underlying flat_hash_map, and can be used from +multiple threads with high levels of concurrency.""" + +# There is no actual library built, so it can be at GCCcore level despite being a C++ "library" +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +github_account = 'greg7mdp' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['33acf44158a9661a9d630d13f9250a2aa27a770cb3771df77b1ba1a661c0b766'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.24.3'), +] + +configopts = '-DPHMAP_BUILD_TESTS=OFF' # The test code doesn't build + +sanity_check_paths = { + 'files': ['include/parallel_hashmap/phmap%s.h' % x for x in [ + '', '_base', '_bits', '_config', '_dump', '_fwd_decl', '_utils' + ]], + 'dirs': [], +} + +moduleclass = 'lib' 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'], diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-10.0.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-10.0.0-GCCcore-12.3.0.eb index 21d8071c49b..a630306348f 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-10.0.0-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-10.0.0-GCCcore-12.3.0.eb @@ -24,8 +24,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-6.0.0-GCCcore-8.2.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-6.0.0-GCCcore-8.2.0.eb index fa078fe683a..c1a23a994d9 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-6.0.0-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-6.0.0-GCCcore-8.2.0.eb @@ -25,8 +25,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-6.2.1-GCCcore-8.3.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-6.2.1-GCCcore-8.3.0.eb index 5bd030dd974..e52c6bc4335 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-6.2.1-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-6.2.1-GCCcore-8.3.0.eb @@ -25,8 +25,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-7.0.0-GCCcore-9.3.0-Python-3.8.2.eb b/easybuild/easyconfigs/p/Pillow/Pillow-7.0.0-GCCcore-9.3.0-Python-3.8.2.eb index 0e9cf1b4445..986c3ab5bc0 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-7.0.0-GCCcore-9.3.0-Python-3.8.2.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-7.0.0-GCCcore-9.3.0-Python-3.8.2.eb @@ -29,8 +29,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-8.0.1-GCCcore-10.2.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-8.0.1-GCCcore-10.2.0.eb index 6c8f256ce9a..40bd77d8b9b 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-8.0.1-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-8.0.1-GCCcore-10.2.0.eb @@ -28,8 +28,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-8.2.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-8.2.0-GCCcore-10.3.0.eb index 6274b50e9b0..af1fe6d1c72 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-8.2.0-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-8.2.0-GCCcore-10.3.0.eb @@ -28,8 +28,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-8.3.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-8.3.1-GCCcore-11.2.0.eb index 4b4a35c2651..f84075db32f 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-8.3.1-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-8.3.1-GCCcore-11.2.0.eb @@ -28,8 +28,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-8.3.2-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-8.3.2-GCCcore-11.2.0.eb index 098deac80fa..9f40a113629 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-8.3.2-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-8.3.2-GCCcore-11.2.0.eb @@ -24,8 +24,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-9.1.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-9.1.0-GCCcore-10.3.0.eb index caa9fcf574f..77514256550 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-9.1.0-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-9.1.0-GCCcore-10.3.0.eb @@ -24,8 +24,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-9.1.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-9.1.1-GCCcore-11.2.0.eb index 6516e4b933b..9105a050425 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-9.1.1-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-9.1.1-GCCcore-11.2.0.eb @@ -24,8 +24,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-9.1.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-9.1.1-GCCcore-11.3.0.eb index 1105bf2154e..59ee6af6b89 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-9.1.1-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-9.1.1-GCCcore-11.3.0.eb @@ -24,8 +24,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-9.2.0-GCCcore-10.2.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-9.2.0-GCCcore-10.2.0.eb index f925080a099..f3df005a939 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-9.2.0-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-9.2.0-GCCcore-10.2.0.eb @@ -26,8 +26,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/Pillow/Pillow-9.4.0-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/Pillow/Pillow-9.4.0-GCCcore-12.2.0.eb index cb1ef19b3f0..bf3b09e45a7 100644 --- a/easybuild/easyconfigs/p/Pillow/Pillow-9.4.0-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/p/Pillow/Pillow-9.4.0-GCCcore-12.2.0.eb @@ -24,8 +24,16 @@ dependencies = [ ] download_dep_fail = True + +# patch setup.py to prefix hardcoded /usr/* and /lib paths with value of %(sysroot) template +# (which will be empty if EasyBuild is not configured to use an alternate sysroot); +# see also https://gitlab.com/eessi/support/-/issues/9 +preinstallopts = """sed -i 's@"/usr/@"%(sysroot)s/usr/@g' setup.py && """ +preinstallopts += """sed -i 's@"/lib@"%(sysroot)s/lib@g' setup.py && """ + # avoid that hardcoded paths like /usr/include are used in build commands installopts = "--global-option=build_ext --global-option='--disable-platform-guessing' " + use_pip = True sanity_pip_check = True diff --git a/easybuild/easyconfigs/p/PostgreSQL/PostgreSQL-16.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/PostgreSQL/PostgreSQL-16.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..9d55f4f92ac --- /dev/null +++ b/easybuild/easyconfigs/p/PostgreSQL/PostgreSQL-16.1-GCCcore-12.3.0.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'PostgreSQL' +version = '16.1' + +homepage = 'https://www.postgresql.org/' +description = """PostgreSQL is a powerful, open source object-relational database system. + It is fully ACID compliant, has full support for foreign keys, + joins, views, triggers, and stored procedures (in multiple languages). + It includes most SQL:2008 data types, including INTEGER, + NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. + It also supports storage of binary large objects, including pictures, + sounds, or video. It has native programming interfaces for C/C++, Java, + .Net, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['http://ftp.postgresql.org/pub/source/v%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['bf0564725613f7c57f1c3ebf5c909b3ec58b9cfb3d81b4bb1209d88767065a87'] + +builddependencies = [ + ('binutils', '2.40'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('Perl', '5.36.1'), + ('Python', '3.11.3'), +] + +dependencies = [ + ('libreadline', '8.2'), + ('zlib', '1.2.13'), + ('OpenSSL', '1.1', '', SYSTEM), +] + +configopts = '--with-python --with-openssl --without-icu' + +sanity_check_paths = { + 'files': ['bin/psql', 'bin/pg_config', 'lib/libpq.a', 'lib/libpq.%s' % SHLIB_EXT], + 'dirs': ['share/postgresql'], +} + +moduleclass = 'data' 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..37d94fab76b --- /dev/null +++ b/easybuild/easyconfigs/p/PyAV/PyAV-10.0.0-GCCcore-11.3.0.eb @@ -0,0 +1,31 @@ +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'} + +builddependencies = [ + ('binutils', '2.38'), +] + +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/PyCairo/PyCairo-1.25.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PyCairo/PyCairo-1.25.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..2f139f4093d --- /dev/null +++ b/easybuild/easyconfigs/p/PyCairo/PyCairo-1.25.1-GCCcore-13.2.0.eb @@ -0,0 +1,38 @@ +# Need to use Meson instead of the "pip" installation +# See: https://github.com/pygobject/pycairo/issues/312 +easyblock = 'MesonNinja' + +name = 'PyCairo' +version = '1.25.1' + +homepage = 'https://pycairo.readthedocs.io/' +description = """Python bindings for the cairo library""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/pygobject/%(namelower)s/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['fabe2a6ae082e7970084ce61b29087f2211f098a099b0d6de68caac4be1263fb'] + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('cairo', '1.18.0'), +] + +sanity_check_paths = { + 'files': ['%s/py3cairo.%s' % (p, e) for (p, e) in [('include/pycairo', 'h'), ('lib/pkgconfig', 'pc')]], + 'dirs': ['lib/python%(pyshortver)s/site-packages/cairo'], +} + +modextrapaths = { + 'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/PyGObject/PyGObject-3.46.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PyGObject/PyGObject-3.46.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..a70381c6579 --- /dev/null +++ b/easybuild/easyconfigs/p/PyGObject/PyGObject-3.46.0-GCCcore-13.2.0.eb @@ -0,0 +1,38 @@ +easyblock = 'PythonPackage' + +name = 'PyGObject' +version = '3.46.0' + +homepage = 'https://pygobject.readthedocs.io/' +description = """PyGObject is a Python package which provides bindings for GObject based +libraries such as GTK, GStreamer, WebKitGTK, GLib, GIO and many more.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['481437b05af0a66b7c366ea052710eb3aacbb979d22d30b797f7ec29347ab1e6'] + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('GLib', '2.78.1'), + ('GObject-Introspection', '1.78.1'), + ('PyCairo', '1.25.1'), +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +sanity_check_paths = { + 'files': ['include/pygobject-%(version_major)s.0/pygobject.h'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +options = {'modulename': 'gi'} + +moduleclass = 'vis' 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..0987fcacdf5 --- /dev/null +++ b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb @@ -0,0 +1,119 @@ +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' +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], + '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': 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], + 'sources': [SOURCE_TAR_GZ], + 'easyblock': 'ConfigureMakePythonPackage', + 'start_dir': '%(name)s-%(version)s', + 'preconfigopts': local_setup_env, + 'configopts': local_pyqt_configopts, + 'checksums': ['755121a52b3a08cb07275c10ebb96576d36e320e572591db16cfdbc558101594'], + }), + ('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': ['ae241ef2a61c782939c58b52c2aea53ad99b30f3934c8358d5e0a6ebb3fd0721'], + }), +] + +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 { diff --git a/easybuild/easyconfigs/p/PySINDy/PySINDy-1.7.3-foss-2022a.eb b/easybuild/easyconfigs/p/PySINDy/PySINDy-1.7.3-foss-2022a.eb new file mode 100644 index 00000000000..e04c3e96c9a --- /dev/null +++ b/easybuild/easyconfigs/p/PySINDy/PySINDy-1.7.3-foss-2022a.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'PySINDy' +version = '1.7.3' + +homepage = 'https://pysindy.readthedocs.io/en/latest/' +description = """" +PySINDy is a sparse regression package with several implementations for the +Sparse Identification of Nonlinear Dynamical systems (SINDy) method introduced +in Brunton et al. (2016a), including the unified optimization approach of +Champion et al. (2019), SINDy with control from Brunton et al. (2016b), +Trapping SINDy from Kaptanoglu et al. (2021), SINDy-PI from Kaheman et al. +(2020), PDE-FIND from Rudy et al. (2017), and so on. A comprehensive literature +review is given in de Silva et al. (2020) and Kaptanoglu, de Silva et al. +(2021). +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('scikit-learn', '1.1.2'), + ('matplotlib', '3.5.2'), + ('CVXPY', '1.3.0'), # optional +] + + +use_pip = True +sanity_pip_check = True + +# relax scikit-learn version requirements for derivative +# remove cmake requirement from pysindy: not needed at all +exts_list = [ + ('derivative', '0.5.3', { + 'preinstallopts': """sed -i 's/scikit-learn = .*/scikit-learn = "~1"/g' pyproject.toml && """, + 'checksums': ['4ce766a85a2d2cb65d7046ef4fdc953348a12b31809768df60b424a23090de27'], + }), + (name, version, { + 'preinstallopts': "sed -i 's/cmake.*//g' requirements.txt && ", + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'checksums': ['a99937853d81eef375b4c4b56091d900e94bd63465a0b4e768472333850bcff7'], + }), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.13.1-foss-2022b.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.13.1-foss-2022b.eb index 896e238a874..e567f93765a 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.13.1-foss-2022b.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.13.1-foss-2022b.eb @@ -25,6 +25,7 @@ patches = [ 'PyTorch-1.12.1_fix-vsx-vector-funcs.patch', 'PyTorch-1.12.1_skip-test_round_robin.patch', 'PyTorch-1.13.1_disable-test-sharding.patch', + 'PyTorch-1.13.1_fix-duplicate-kDefaultTimeout-definition.patch', 'PyTorch-1.13.1_fix-flaky-jit-test.patch', 'PyTorch-1.13.1_fix-fsdp-fp16-test.patch', 'PyTorch-1.13.1_fix-gcc-12-missing-includes.patch', @@ -42,6 +43,7 @@ patches = [ 'PyTorch-1.13.1_skip-failing-grad-test.patch', 'PyTorch-1.13.1_skip-failing-singular-grad-test.patch', 'PyTorch-1.13.1_skip-tests-without-fbgemm.patch', + 'PyTorch-1.13.1_workaround-gcc12-destructor-exception-bug.patch', ] checksums = [ {'pytorch-v1.13.1.tar.gz': 'dbc229ee9750b02b514937d017744443a269ea0241ed3f32b9af0703589d25d4'}, @@ -67,6 +69,8 @@ checksums = [ {'PyTorch-1.12.1_fix-vsx-vector-funcs.patch': 'caccbf60f62eac313896c1eaec78b08f5d0fdfcb907079087490bb13d1561aa2'}, {'PyTorch-1.12.1_skip-test_round_robin.patch': '63d4849b78605aa088fdff695637d9473ea60dee603a3ff7f788690d70c55349'}, {'PyTorch-1.13.1_disable-test-sharding.patch': 'df2074adeba47998ce2993d99ca64eb6f1c79ab7057f553b436efdec264d3572'}, + {'PyTorch-1.13.1_fix-duplicate-kDefaultTimeout-definition.patch': + '882f8cfaf33490a4372928fb6673cbbfa40e5be1b64bf7e0cc2924d73cf872e8'}, {'PyTorch-1.13.1_fix-flaky-jit-test.patch': '71efdeb29b5e5b4982c9f5cb2182733654a34d52f85bb5487bc4d7d99b86101b'}, {'PyTorch-1.13.1_fix-fsdp-fp16-test.patch': '8ae68e60d6e1f92f50322b7f0381c7e65251fba32d7606e3a238a36a2f55b5cf'}, {'PyTorch-1.13.1_fix-gcc-12-missing-includes.patch': @@ -95,6 +99,8 @@ checksums = [ '72688a57b2bb617665ad1a1d5e362c5111ae912c10936bb38a089c0204729f48'}, {'PyTorch-1.13.1_skip-tests-without-fbgemm.patch': '481e595f673baf8ae58b41697a6792b83048b0264aa79b422f48cd8c22948bb7'}, + {'PyTorch-1.13.1_workaround-gcc12-destructor-exception-bug.patch': + 'a09a2d7ebd428c65988729578bb3fa372565ba176ab9ed7abf11f6fcb15e903e'}, ] osdependencies = [OS_PKG_IBVERBS_DEV] @@ -123,8 +129,6 @@ dependencies = [ ('expecttest', '0.1.3'), ] -custom_opts = ['CMAKE_CXX_STANDARD=17'] - excluded_tests = { '': [ # This test seems to take too long on NVIDIA Ampere at least. diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.13.1_fix-duplicate-kDefaultTimeout-definition.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.13.1_fix-duplicate-kDefaultTimeout-definition.patch new file mode 100644 index 00000000000..6e211b1f3a8 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.13.1_fix-duplicate-kDefaultTimeout-definition.patch @@ -0,0 +1,31 @@ +From 9a18968253e28ba8d8bdf646731087000c7876b7 Mon Sep 17 00:00:00 2001 +From: sclarkson +Date: Tue, 21 Mar 2023 21:44:49 +0000 +Subject: [PATCH] Fix kDefaultTimeout multiple definition build failure + (#97270) + +Make the namespace explicit to avoid the constexpr conflict on GCC 11. + +Fixes #90448 + +@ezyang + +Pull Request resolved: https://github.com/pytorch/pytorch/pull/97270 +Approved by: https://github.com/ezyang +--- + torch/csrc/distributed/c10d/ProcessGroupGloo.hpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/torch/csrc/distributed/c10d/ProcessGroupGloo.hpp b/torch/csrc/distributed/c10d/ProcessGroupGloo.hpp +index a64bc37c4de522..e4d2967c8604ea 100644 +--- a/torch/csrc/distributed/c10d/ProcessGroupGloo.hpp ++++ b/torch/csrc/distributed/c10d/ProcessGroupGloo.hpp +@@ -125,7 +125,7 @@ class TORCH_API ProcessGroupGloo : public Backend { + } + + void wait(const std::vector& keys) override { +- store_->wait(keys, Store::kDefaultTimeout); ++ store_->wait(keys, ::c10d::Store::kDefaultTimeout); + } + + void wait( diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.13.1_workaround-gcc12-destructor-exception-bug.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.13.1_workaround-gcc12-destructor-exception-bug.patch new file mode 100644 index 00000000000..63c3ab6c425 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.13.1_workaround-gcc12-destructor-exception-bug.patch @@ -0,0 +1,75 @@ +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 5210d6f713d..3c91ed378e1 100644 +--- a/torch/csrc/Exceptions.cpp ++++ b/torch/csrc/Exceptions.cpp +@@ -226,6 +226,10 @@ PyWarningHandler::PyWarningHandler() noexcept(true) + /// NOLINTNEXTLINE(bugprone-exception-escape) + PyWarningHandler::~PyWarningHandler() noexcept(false) { + c10::Warning::set_warning_handler(prev_handler_); ++ process_warnings(); ++} ++ ++void PyWarningHandler::process_warnings() { + auto& warning_buffer = internal_handler_.warning_buffer_; + + if (warning_buffer.size() > 0) { +diff --git a/torch/csrc/Exceptions.h b/torch/csrc/Exceptions.h +index 89256c64bba..8514d08c8d0 100644 +--- a/torch/csrc/Exceptions.h ++++ b/torch/csrc/Exceptions.h +@@ -110,6 +110,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 (...) { \ +@@ -381,6 +388,9 @@ struct PyWarningHandler { + in_exception_ = true; + } + ++ // Trigger processing of warnings ++ TORCH_API void process_warnings(); ++ + private: + InternalHandler internal_handler_; + at::WarningHandler* prev_handler_; +@@ -394,12 +404,20 @@ using Arg = typename function_traits::template arg::type; + template + auto wrap_pybind_function_impl_(Func&& f, std::index_sequence) { + using traits = function_traits; ++ using result_type = typename traits::result_type; + namespace py = pybind11; + + // f=f is needed to handle function references on older compilers +- return [f = f](Arg... args) -> typename traits::result_type { ++ return [f = f](Arg... args) -> result_type { + HANDLE_TH_ERRORS +- return f(std::forward>(args)...); ++ if constexpr (std::is_void::value) { ++ c10::guts::invoke(f, std::forward>(args)...); ++ FLUSH_TH_ERRORS ++ } else { ++ auto res = c10::guts::invoke(f, std::forward>(args)...); ++ FLUSH_TH_ERRORS ++ return res; ++ } + END_HANDLE_TH_ERRORS_PYBIND + }; + } 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..9253a982717 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-2.0.1-foss-2022b.eb @@ -0,0 +1,152 @@ +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-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', + '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_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', + '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', +] +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': + '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'}, + {'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_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'}, + {'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': + '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 = 3 + +tests = ['PyTorch-check-cpp-extension.py'] + +moduleclass = 'ai' 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 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: 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 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' 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/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/Python-bundle-PyPI/Python-bundle-PyPI-2023.10-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2023.10-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..f1c29800a58 --- /dev/null +++ b/easybuild/easyconfigs/p/Python-bundle-PyPI/Python-bundle-PyPI-2023.10-GCCcore-13.2.0.eb @@ -0,0 +1,480 @@ +easyblock = 'PythonBundle' + +name = 'Python-bundle-PyPI' +version = '2023.10' + +homepage = 'https://python.org/' +description = "Bundle of Python packages from PyPI" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('binutils', '2.40'), + ('UnZip', '6.0'), + ('pkgconf', '2.0.3'), + ('git', '2.42.0'), # required for pbr + ('hatchling', '1.18.0'), + ('poetry', '1.6.1'), + ('scikit-build', '0.17.6'), + ('flit', '3.9.0'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('cryptography', '41.0.5'), + ('virtualenv', '20.24.6'), +] + +exts_default_options = { + 'download_dep_fail': True, + 'sanity_pip_check': True, + 'use_pip': True, +} + +# order is important! +# package versions updated 2023-10-29 +exts_list = [ + ('blist', '1.3.6', { + 'patches': [ + 'Python-3_9-blist-1.3.6-fix-undefined_symbol_PyObject_GC_IS_TRACKED.patch', + 'Python-3.10-bist-1.3.6-compatibility.patch', + 'Python-3.11-bist-1.3.6-compatibility.patch', + ], + 'checksums': [ + {'blist-1.3.6.tar.gz': '3a12c450b001bdf895b30ae818d4d6d3f1552096b8c995f0fe0c74bef04d1fc3'}, + {'Python-3_9-blist-1.3.6-fix-undefined_symbol_PyObject_GC_IS_TRACKED.patch': + '18a643d1d1565b05df7dcc9a612a86dcf7b3b352435032f6425a61b597f911d0'}, + {'Python-3.10-bist-1.3.6-compatibility.patch': + '0fb2d92e06b2c39bfc79e229e6fde6053f9aa9538733029377c9a743650a4741'}, + {'Python-3.11-bist-1.3.6-compatibility.patch': + 'da283300bc5f0524b9982c9d9de4670908711634667849d3d81ccd87fc82c4ee'}, + ], + }), + ('pbr', '5.11.1', { + 'checksums': ['aefc51675b0b533d56bb5fd1c8c6c0522fe31896679882e1c4c63d5e4a0fccb3'], + }), + ('Cython', '3.0.4', { + 'checksums': ['2e379b491ee985d31e5faaf050f79f4a8f59f482835906efe4477b33b4fbe9ff'], + }), + ('six', '1.16.0', { + 'checksums': ['1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926'], + }), + ('toml', '0.10.2', { + 'checksums': ['b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f'], + }), + ('tomli', '2.0.1', { + 'checksums': ['de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f'], + }), + ('packaging', '23.2', { + 'checksums': ['048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5'], + }), + ('python-dateutil', '2.8.2', { + 'modulename': 'dateutil', + 'checksums': ['0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86'], + }), + ('decorator', '5.1.1', { + 'checksums': ['637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330'], + }), + ('liac-arff', '2.5.0', { + 'modulename': 'arff', + 'checksums': ['3220d0af6487c5aa71b47579be7ad1d94f3849ff1e224af3bf05ad49a0b5c4da'], + }), + ('pycryptodome', '3.19.0', { + 'modulename': 'Crypto.PublicKey.RSA', + 'checksums': ['bc35d463222cdb4dbebd35e0784155c81e161b9284e567e7e933d722e533331e'], + }), + ('ecdsa', '0.18.0', { + 'checksums': ['190348041559e21b22a1d65cee485282ca11a6f81d503fddb84d5017e9ed1e49'], + }), + ('ipaddress', '1.0.23', { + 'checksums': ['b7f8e0369580bb4a24d5ba1d7cc29660a4a6987763faf1d8a8046830e020e7e2'], + }), + ('asn1crypto', '1.5.1', { + 'checksums': ['13ae38502be632115abf8a24cbe5f4da52e3b5231990aff31123c805306ccb9c'], + }), + ('idna', '3.4', { + 'checksums': ['814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4'], + }), + ('pycparser', '2.21', { + 'checksums': ['e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206'], + }), + ('cffi', '1.16.0', { + 'checksums': ['bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0'], + }), + ('semantic_version', '2.10.0', { + 'checksums': ['bdabb6d336998cbb378d4b9db3a4b56a1e3235701dc05ea2690d9a997ed5041c'], + }), + ('typing_extensions', '4.8.0', { + 'checksums': ['df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef'], + }), + ('pyasn1', '0.5.0', { + 'checksums': ['97b7290ca68e62a832558ec3976f15cbf911bf5d7c7039d8b861c2a0ece69fde'], + }), + ('PyNaCl', '1.5.0', { + 'modulename': 'nacl', + 'checksums': ['8ac7448f09ab85811607bdd21ec2464495ac8b7c66d146bf545b0f08fb9220ba'], + }), + ('pyparsing', '3.1.1', { + 'checksums': ['ede28a1a32462f5a9705e07aea48001a08f7cf81a021585011deba701581a0db'], + }), + ('netifaces', '0.11.0', { + 'checksums': ['043a79146eb2907edf439899f262b3dfe41717d34124298ed281139a8b93ca32'], + }), + ('netaddr', '0.9.0', { + 'checksums': ['7b46fa9b1a2d71fd5de9e4a3784ef339700a53a08c8040f08baf5f1194da0128'], + }), + ('mock', '5.1.0', { + 'checksums': ['5e96aad5ccda4718e0a229ed94b2024df75cc2d55575ba5762d31f5767b8767d'], + }), + ('pytz', '2023.3.post1', { + 'checksums': ['7b4fddbeb94a1eba4b557da24f19fdf9db575192544270a9101d8509f9f43d7b'], + }), + ('bitarray', '2.8.2', { + 'checksums': ['f90b2f44b5b23364d5fbade2c34652e15b1fcfe813c46f828e008f68a709160f'], + }), + ('bitstring', '4.1.2', { + 'checksums': ['c22283d60fd3e1a8f386ccd4f1915d7fe13481d6349db39711421e24d4a9cccf'], + }), + ('appdirs', '1.4.4', { + 'checksums': ['7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41'], + }), + ('distlib', '0.3.7', { + 'checksums': ['9dafe54b34a028eafd95039d5e5d4851a13734540f1331060d31c9916e7147a8'], + }), + ('zipp', '3.17.0', { + 'checksums': ['84e64a1c28cf7e91ed2078bb8cc8c259cb19b76942096c8d7b84947690cabaf0'], + }), + ('importlib_metadata', '6.8.0', { + 'checksums': ['dbace7892d8c0c4ac1ad096662232f831d4e64f4c4545bd53016a3e9d4654743'], + }), + ('backports.entry-points-selectable', '1.2.0', { + 'sources': ['backports.entry_points_selectable-%(version)s.tar.gz'], + 'checksums': ['4706f59179657ca7c1d325a543ee1370f8f46331f432bcac62fab242fdf0afa5'], + }), + ('pathspec', '0.11.2', { + 'checksums': ['e0d8d0ac2f12da61956eb2306b69f9469b42f4deb0f3cb6ed47b9cce9996ced3'], + }), + ('pluggy', '1.3.0', { + 'checksums': ['cf61ae8f126ac6f7c451172cf30e3e43d3ca77615509771b3a984a0730651e12'], + }), + ('editables', '0.5', { + 'checksums': ['309627d9b5c4adc0e668d8c6fa7bac1ba7c8c5d415c2d27f60f081f8e80d1de2'], + }), + ('filelock', '3.13.0', { + 'checksums': ['63c6052c82a1a24c873a549fbd39a26982e8f35a3016da231ead11a5be9dad44'], + }), + ('platformdirs', '3.11.0', { + 'checksums': ['cf8ee52a3afdb965072dcc652433e0c7e3e40cf5ea1477cd4b3b1d2eb75495b3'], + }), + ('scandir', '1.10.0', { + 'checksums': ['4d4631f6062e658e9007ab3149a9b914f3548cb38bfb021c64f39a025ce578ae'], + }), + ('pathlib2', '2.3.7.post1', { + 'checksums': ['9fe0edad898b83c0c3e199c842b27ed216645d2e177757b2dd67384d4113c641'], + }), + ('importlib_resources', '6.1.0', { + 'checksums': ['9d48dcccc213325e810fd723e7fbb45ccb39f6cf5c31f00cf2b965f5f10f3cb9'], + }), + ('docopt', '0.6.2', { + 'checksums': ['49b3a825280bd66b3aa83585ef59c4a8c82f2c8a522dbe754a8bc8d08c85c491'], + }), + ('joblib', '1.3.2', { + 'checksums': ['92f865e621e17784e7955080b6d042489e3b8e294949cc44c6eac304f59772b1'], + }), + ('chardet', '5.2.0', { + 'checksums': ['1b3b6ff479a8c414bc3fa2c0852995695c4a026dcd6d0633b2dd092ca39c1cf7'], + }), + ('certifi', '2023.7.22', { + 'checksums': ['539cc1d13202e33ca466e88b2807e29f4c13049d6d87031a3c110744495cb082'], + }), + ('urllib3', '2.0.7', { + 'checksums': ['c97dfde1f7bd43a71c8d2a58e369e9b2bf692d1334ea9f9cae55add7d0dd0f84'], + }), + ('charset-normalizer', '3.3.1', { + 'checksums': ['d9137a876020661972ca6eec0766d81aef8a5627df628b664b234b73396e727e'], + }), + ('requests', '2.31.0', { + 'checksums': ['942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1'], + }), + ('xlrd', '2.0.1', { + 'checksums': ['f72f148f54442c6b056bf931dbc34f986fd0c3b0b6b5a58d013c9aef274d0c88'], + }), + ('py_expression_eval', '0.3.14', { + 'checksums': ['ea60f9404a18346d5a63854db21c50666dfb4274ae111000165b31c6f8ab93f1'], + }), + ('tabulate', '0.9.0', { + 'checksums': ['0095b12bf5966de529c0feb1fa08671671b3368eec77d7ef7ab114be2c068b3c'], + }), + ('ujson', '5.8.0', { + 'checksums': ['78e318def4ade898a461b3d92a79f9441e7e0e4d2ad5419abed4336d702c7425'], + }), + ('atomicwrites', '1.4.1', { + 'checksums': ['81b2c9071a49367a7f770170e5eec8cb66567cfbbc8c73d20ce5ca4a8d71cf11'], + }), + ('py', '1.11.0', { + 'checksums': ['51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719'], + }), + ('more-itertools', '10.1.0', { + 'checksums': ['626c369fa0eb37bac0291bce8259b332fd59ac792fa5497b59837309cd5b114a'], + }), + ('attrs', '23.1.0', { + 'modulename': 'attr', + 'checksums': ['6279836d581513a26f1bf235f9acd333bc9115683f14f7e8fae46c98fc50e015'], + }), + ('backports.functools_lru_cache', '1.6.6', { + 'checksums': ['7b70e701ba4db58c0ed8671a9d3391b0abb9bd1bc24d4e90c3480f4baafcc2dc'], + }), + ('wcwidth', '0.2.8', { + 'checksums': ['8705c569999ffbb4f6a87c6d1b80f324bd6db952f5eb0b95bc07517f4c1813d4'], + }), + ('iniconfig', '2.0.0', { + 'checksums': ['2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3'], + }), + ('colorama', '0.4.6', { + 'checksums': ['08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44'], + }), + ('exceptiongroup', '1.1.3', { + 'checksums': ['097acd85d473d75af5bb98e41b61ff7fe35efe6675e4f9370ec6ec5126d160e9'], + }), + ('pytest', '7.4.3', { + 'checksums': ['d989d136982de4e3b29dabcc838ad581c64e8ed52c11fbe86ddebd9da0818cd5'], + }), + ('MarkupSafe', '2.1.3', { + 'checksums': ['af598ed32d6ae86f1b747b82783958b1a4ab8f617b06fe68795c7f026abbdcad'], + }), + ('Jinja2', '3.1.2', { + 'checksums': ['31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852'], + }), + ('sphinxcontrib_serializinghtml', '1.1.9', { + 'modulename': 'sphinxcontrib.serializinghtml', + 'checksums': ['0c64ff898339e1fac29abd2bf5f11078f3ec413cfe9c046d3120d7ca65530b54'], + }), + ('sphinxcontrib_websupport', '1.2.6', { + 'modulename': 'sphinxcontrib.websupport', + 'checksums': ['d592be8e11261bbbc64668f258efc4fd42c93ab617411143b5245fe30c633d8c'], + }), + ('Pygments', '2.16.1', { + 'checksums': ['1daff0494820c69bc8941e407aa20f577374ee88364ee10a98fdbe0aece96e29'], + }), + ('imagesize', '1.4.1', { + 'checksums': ['69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a'], + }), + ('docutils', '0.20.1', { + 'checksums': ['f08a4e276c3a1583a86dce3e34aba3fe04d02bba2dd51ed16106244e8a923e3b'], + }), + ('snowballstemmer', '2.2.0', { + 'checksums': ['09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1'], + }), + ('alabaster', '0.7.13', { + 'checksums': ['a27a4a084d5e690e16e01e03ad2b2e552c61a65469419b907243193de1a84ae2'], + }), + ('sphinxcontrib_applehelp', '1.0.7', { + 'modulename': 'sphinxcontrib.applehelp', + 'checksums': ['39fdc8d762d33b01a7d8f026a3b7d71563ea3b72787d5f00ad8465bd9d6dfbfa'], + }), + ('sphinxcontrib_devhelp', '1.0.5', { + 'modulename': 'sphinxcontrib.devhelp', + 'checksums': ['63b41e0d38207ca40ebbeabcf4d8e51f76c03e78cd61abe118cf4435c73d4212'], + }), + ('sphinxcontrib_htmlhelp', '2.0.4', { + 'modulename': 'sphinxcontrib.htmlhelp', + 'checksums': ['6c26a118a05b76000738429b724a0568dbde5b72391a688577da08f11891092a'], + }), + ('sphinxcontrib-jsmath', '1.0.1', { + 'modulename': 'sphinxcontrib.jsmath', + 'checksums': ['a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8'], + }), + ('sphinxcontrib_qthelp', '1.0.6', { + 'modulename': 'sphinxcontrib.qthelp', + 'checksums': ['62b9d1a186ab7f5ee3356d906f648cacb7a6bdb94d201ee7adf26db55092982d'], + }), + ('Babel', '2.13.1', { + 'checksums': ['33e0952d7dd6374af8dbf6768cc4ddf3ccfefc244f9986d4074704f2fbd18900'], + }), + ('sphinx', '7.2.6', { + 'checksums': ['9a5160e1ea90688d5963ba09a2dcd8bdd526620edbb65c328728f1b2228d5ab5'], + }), + ('sphinx-bootstrap-theme', '0.8.1', { + 'checksums': ['683e3b735448dadd0149f76edecf95ff4bd9157787e9e77e0d048ca6f1d680df'], + }), + ('click', '8.1.7', { + 'checksums': ['ca9853ad459e787e2192211578cc907e7594e294c7ccc834310722b41b9ca6de'], + }), + ('psutil', '5.9.6', { + 'checksums': ['e4b92ddcd7dd4cdd3f900180ea1e104932c7bce234fb88976e2a3b296441225a'], + }), + ('future', '0.18.3', { + 'checksums': ['34a17436ed1e96697a86f9de3d15a3b0be01d8bc8de9c1dffd59fb8234ed5307'], + }), + ('sortedcontainers', '2.4.0', { + 'checksums': ['25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88'], + }), + ('intervaltree', '3.1.0', { + 'checksums': ['902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d'], + }), + ('pytoml', '0.1.21', { + 'checksums': ['8eecf7c8d0adcff3b375b09fe403407aa9b645c499e5ab8cac670ac4a35f61e7'], + }), + ('zipfile36', '0.1.3', { + 'checksums': ['a78a8dddf4fa114f7fe73df76ffcce7538e23433b7a6a96c1c904023f122aead'], + }), + ('tomli_w', '1.0.0', { + 'checksums': ['f463434305e0336248cac9c2dc8076b707d8a12d019dd349f5c1e382dd1ae1b9'], + }), + ('regex', '2023.10.3', { + 'checksums': ['3fef4f844d2290ee0ba57addcec17eec9e3df73f10a2748485dfd6a3a188cc0f'], + }), + ('intreehooks', '1.0', { + 'checksums': ['87e600d3b16b97ed219c078681260639e77ef5a17c0e0dbdd5a302f99b4e34e1'], + }), + ('pylev', '1.4.0', { + 'checksums': ['9e77e941042ad3a4cc305dcdf2b2dec1aec2fbe3dd9015d2698ad02b173006d1'], + }), + ('pastel', '0.2.1', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['4349225fcdf6c2bb34d483e523475de5bb04a5c10ef711263452cb37d7dd4364'], + }), + ('crashtest', '0.4.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['8d23eac5fa660409f57472e3851dab7ac18aba459a8d19cbbba86d3d5aecd2a5'], + }), + # clikit 0.6.2 has requirement crashtest<0.4.0,>=0.3.0 + # but poetry 1.5.1 has requirement crashtest>=0.4.1 + # and cleo 2.0.1 has requirement crashtest>=0.4.1 + # ('clikit', '0.6.2', { + # 'source_tmpl': SOURCE_WHL, + # 'checksums': ['71268e074e68082306e23d7369a7b99f824a0ef926e55ba2665e911f7208489e'], + # }), + ('jeepney', '0.8.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['c0a454ad016ca575060802ee4d590dd912e35c122fa04e70306de3d076cce755'], + }), + ('SecretStorage', '3.3.3', { + 'checksums': ['2403533ef369eca6d2ba81718576c5e0f564d5cca1b58f73a8b23e7d4eeebd77'], + }), + ('keyring', '24.2.0', { + 'modulename': False, + 'checksums': ['ca0746a19ec421219f4d713f848fa297a661a8a8c1504867e55bfb5e09091509'], + }), + ('jaraco.classes', '3.3.0', { + 'checksums': ['c063dd08e89217cee02c8d5e5ec560f2c8ce6cdc2fcdc2e68f7b2e5547ed3621'], + }), + ('keyrings.alt', '5.0.0', { + 'modulename': False, + 'checksums': ['9d446cb47bbcea90ffa2ecc3e8003acf41573fc201bf44b4bf13bd0e11484828'], + }), + ('tomlkit', '0.12.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['712cbd236609acc6a3e2e97253dfc52d4c2082982a88f61b640ecf0817eab899'], + }), + ('shellingham', '1.5.4', { + 'checksums': ['8dbca0739d487e5bd35ab3ca4b36e11c4078f3a234bfce294b0a0291363404de'], + }), + ('requests-toolbelt', '1.0.0', { + 'checksums': ['7681a0a3d047012b5bdc0ee37d7f8f07ebe76ab08caeccfc3921ce23c88d5bc6'], + }), + ('pyrsistent', '0.20.0', { + 'checksums': ['4c48f78f62ab596c679086084d0dd13254ae4f3d6c72a83ffdf5ebdef8f265a4'], + }), + ('pkginfo', '1.9.6', { + 'checksums': ['8fd5896e8718a4372f0ea9cc9d96f6417c9b986e23a4d116dda26b62cc29d046'], + }), + ('ptyprocess', '0.7.0', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35'], + }), + ('pexpect', '4.8.0', { + 'checksums': ['fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c'], + }), + ('jsonschema', '4.17.3', { + 'checksums': ['0f864437ab8b6076ba6707453ef8f98a6a0d512a80e93f8abdb676f737ecb60d'], + }), + ('simplejson', '3.19.2', { + 'checksums': ['9eb442a2442ce417801c912df68e1f6ccfcd41577ae7274953ab3ad24ef7d82c'], + }), + ('webencodings', '0.5.1', { + 'checksums': ['b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923'], + }), + ('html5lib', '1.1', { + 'checksums': ['b2e5b40261e20f354d198eae92afc10d750afb487ed5e50f9c4eaf07c184146f'], + }), + ('distro', '1.8.0', { + 'checksums': ['02e111d1dc6a50abb8eed6bf31c3e48ed8b0830d1ea2a1b78c61765c2513fdd8'], + }), + ('rapidfuzz', '2.15.2', { + 'checksums': ['bfc1d38a7adcbe8912f980a5f46f27a801dd8655582ff0d4a2c0431c02b7ce33'], + }), + ('cleo', '2.0.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['6eb133670a3ed1f3b052d53789017b6e50fca66d1287e6e6696285f4cb8ea448'], + }), + ('cachy', '0.3.0', { + 'checksums': ['186581f4ceb42a0bbe040c407da73c14092379b1e4c0e327fdb72ae4a9b269b1'], + }), + ('msgpack', '1.0.7', { + 'checksums': ['572efc93db7a4d27e404501975ca6d2d9775705c2d922390d878fcf768d92c87'], + }), + ('cachecontrol', '0.13.1', { + 'checksums': ['f012366b79d2243a6118309ce73151bf52a38d4a5dac8ea57f09bd29087e506b'], + }), + ('lockfile', '0.12.2', { + 'checksums': ['6aed02de03cba24efabcd600b30540140634fc06cfa603822d508d5361e9f799'], + }), + ('glob2', '0.7', { + 'checksums': ['85c3dbd07c8aa26d63d7aacee34fa86e9a91a3873bc30bf62ec46e531f92ab8c'], + }), + ('dulwich', '0.21.6', { + 'checksums': ['30fbe87e8b51f3813c131e2841c86d007434d160bd16db586b40d47f31dd05b0'], + }), + ('fsspec', '2023.10.0', { + 'checksums': ['330c66757591df346ad3091a53bd907e15348c2ba17d63fd54f5c39c4457d2a5'], + }), + ('threadpoolctl', '3.2.0', { + 'checksums': ['c96a0ba3bdddeaca37dc4cc7344aafad41cdb8c313f74fdfe387a867bba93355'], + }), + ('simplegeneric', '0.8.1', { + 'source_tmpl': 'simplegeneric-%(version)s.zip', + 'checksums': ['dc972e06094b9af5b855b3df4a646395e43d1c9d0d39ed345b7393560d0b9173'], + }), + ('pooch', '1.8.0', { + 'checksums': ['f59981fd5b9b5d032dcde8f4a11eaa492c2ac6343fae3596a2fdae35fc54b0a0'], + }), + ('doit', '0.36.0', { + 'checksums': ['71d07ccc9514cb22fe59d98999577665eaab57e16f644d04336ae0b4bae234bc'], + }), + ('cloudpickle', '3.0.0', { + 'checksums': ['996d9a482c6fb4f33c1a35335cf8afd065d2a56e973270364840712d9131a882'], + }), + ('pydevtool', '0.3.0', { + 'checksums': ['25e3ba4f3d33ccac33ee2b9775995848d49e9b318b7a146477fb5d52f786fc8a'], + }), + ('Pygments', '2.16.1', { + 'checksums': ['1daff0494820c69bc8941e407aa20f577374ee88364ee10a98fdbe0aece96e29'], + }), + ('mdurl', '0.1.2', { + 'checksums': ['bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba'], + }), + ('markdown-it-py', '3.0.0', { + 'modulename': 'markdown_it', + 'checksums': ['e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb'], + }), + ('rich', '13.6.0', { + 'checksums': ['5c14d22737e6d5084ef4771b62d5d4363165b403455a30a1c8ca39dc7b644bef'], + }), + ('rich-click', '1.7.0', { + 'checksums': ['ab34e5d9f7733c4e6072f4de79eb3b35ac9ae78e692ea8a543f3b2828b30fee4'], + }), + ('commonmark', '0.9.1', { + 'checksums': ['452f9dc859be7f06631ddcb328b6919c67984aca654e5fefb3914d54691aed60'], + }), + ('execnet', '2.0.2', { + 'checksums': ['cc59bc4423742fd71ad227122eb0dd44db51efb3dc4095b45ac9a08c770096af'], + }), + ('pytest-xdist', '3.3.1', { + 'modulename': 'xdist', + 'checksums': ['d5ee0520eb1b7bcca50a60a518ab7a7707992812c578198f8b44fdfac78e8c93'], + }), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/pFUnit/pFUnit-4.2.0-iimpi-2021a.eb b/easybuild/easyconfigs/p/pFUnit/pFUnit-4.2.0-iimpi-2021a.eb new file mode 100644 index 00000000000..6015cd42608 --- /dev/null +++ b/easybuild/easyconfigs/p/pFUnit/pFUnit-4.2.0-iimpi-2021a.eb @@ -0,0 +1,66 @@ +easyblock = 'CMakeMake' + +name = 'pFUnit' +version = '4.2.0' +local_fargparse_major_minor_version = '1.1' +local_gftl_major_minor_version = '1.3' +local_gftl_shared_major_minor_version = '1.2' + +homepage = 'https://github.com/Goddard-Fortran-Ecosystem/pFUnit' +description = """pFUnit is a unit testing framework enabling JUnit-like testing of serial + and MPI-parallel software written in Fortran.""" + +toolchain = {'name': 'iimpi', 'version': '2021a'} + +source_urls = ['https://github.com/Goddard-Fortran-Ecosystem/pFUnit/releases/download/v%(version)s'] +sources = [SOURCE_TAR] +checksums = ['33df62f80cf03827455508b67d53f820ddffa2ec0f1ba999790ff1f87592ce16'] + +builddependencies = [ + ('CMake', '3.20.1'), + ('M4', '1.4.18'), +] + +dependencies = [ + ('Python', '3.9.5'), +] + +sanity_check_paths = { + 'files': [ + 'PFUNIT-%(version_major_minor)s/bin/funitproc', + 'PFUNIT-%(version_major_minor)s/lib/libpfunit.a' + ], + 'dirs': [ + 'FARGPARSE-%s' % local_fargparse_major_minor_version, + 'GFTL-%s' % local_gftl_major_minor_version, + 'GFTL_SHARED-%s' % local_gftl_shared_major_minor_version, + ], +} + +sanity_check_commands = ["funitproc --help"] + +modextrapaths = { + 'PATH': ['PFUNIT-%(version_major_minor)s/bin'], + 'CPATH': [ + 'FARGPARSE-%s/include' % local_fargparse_major_minor_version, + 'GFTL-%s/include' % local_gftl_major_minor_version, + 'GFTL_SHARED-%s/include' % local_gftl_shared_major_minor_version, + 'PFUNIT-%(version_major_minor)s/include', + ], + 'LD_LIBRARY_PATH': [ + 'FARGPARSE-%s/lib' % local_fargparse_major_minor_version, + 'GFTL-%s/lib' % local_gftl_major_minor_version, + 'GFTL_SHARED-%s/lib' % local_gftl_shared_major_minor_version, + 'PFUNIT-%(version_major_minor)s/lib', + ], + 'CMAKE_PREFIX_PATH': [ + 'FARGPARSE-%s/cmake' % local_fargparse_major_minor_version, + 'GFTL-%s/cmake' % local_gftl_major_minor_version, + 'GFTL_SHARED-%s/cmake' % local_gftl_shared_major_minor_version, + 'PFUNIT-%(version_major_minor)s/cmake', + ], +} + +modextravars = {'PFUNIT': '%(installdir)s'} + +moduleclass = 'tools' 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' 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..aa68af8a495 --- /dev/null +++ b/easybuild/easyconfigs/p/phonopy/phonopy-2.20.0-foss-2023a.eb @@ -0,0 +1,35 @@ +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] +checksums = ['a5e2f9d1bd6efad051c6dfd4d9296846f4bd2d378c5c48eb179177656849999e'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), # for numpy + ('matplotlib', '3.7.2'), + ('PyYAML', '6.0'), + ('h5py', '3.9.0'), + ('spglib-python', '2.1.0'), +] + +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' diff --git a/easybuild/easyconfigs/p/pigz/pigz-2.8-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pigz/pigz-2.8-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..99723204e1e --- /dev/null +++ b/easybuild/easyconfigs/p/pigz/pigz-2.8-GCCcore-12.3.0.eb @@ -0,0 +1,45 @@ +easyblock = 'MakeCp' + +name = 'pigz' +version = '2.8' + +homepage = 'https://zlib.net/pigz/' + +description = """ + pigz, which stands for parallel implementation of gzip, is a fully + functional replacement for gzip that exploits multiple processors and multiple + cores to the hilt when compressing data. pigz was written by Mark Adler, and + uses the zlib and pthread libraries. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = [ + 'https://zlib.net/pigz/', + 'https://zlib.net/pigz/fossils/', +] +sources = [SOURCE_TAR_GZ] +patches = ['%(name)s-2.6_makefile.patch'] +checksums = [ + {'pigz-2.8.tar.gz': 'eb872b4f0e1f0ebe59c9f7bd8c506c4204893ba6a8492de31df416f0d5170fd0'}, + {'pigz-2.6_makefile.patch': '7e37175714d43c946373d07c522ec98a77c0f8572a9d448f759c41f6f060275d'}, +] + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('zlib', '1.2.13'), +] + +buildopts = 'CC="$CC" CFLAGS="$CFLAGS" LDFLAGS="-L$EBROOTZLIB/lib"' + +files_to_copy = [(["pigz", "unpigz"], "bin")] + +sanity_check_paths = { + 'files': ['bin/pigz', 'bin/unpigz'], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pixman/pixman-0.42.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/pixman/pixman-0.42.2-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..2d5befc2cf5 --- /dev/null +++ b/easybuild/easyconfigs/p/pixman/pixman-0.42.2-GCCcore-13.2.0.eb @@ -0,0 +1,28 @@ +easyblock = 'ConfigureMake' + +name = 'pixman' +version = '0.42.2' + +homepage = 'http://www.pixman.org/' +description = """ + Pixman is a low-level software library for pixel manipulation, providing + features such as image compositing and trapezoid rasterization. Important + users of pixman are the cairo graphics library and the X server. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://cairographics.org/releases/'] +sources = [SOURCE_TAR_GZ] +checksums = ['ea1480efada2fd948bc75366f7c349e1c96d3297d09a3fe62626e38e234a625e'] + +builddependencies = [ + ('binutils', '2.40'), +] + +sanity_check_paths = { + 'files': ['lib/libpixman-1.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'vis' 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' 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' diff --git a/easybuild/easyconfigs/p/poetry/poetry-1.6.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/poetry/poetry-1.6.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..b55799d2110 --- /dev/null +++ b/easybuild/easyconfigs/p/poetry/poetry-1.6.1-GCCcore-13.2.0.eb @@ -0,0 +1,161 @@ +easyblock = 'PythonBundle' + +name = 'poetry' +version = '1.6.1' + +homepage = 'https://python-poetry.org' +description = """Python packaging and dependency management made easy. Poetry helps you declare, manage and install + dependencies of Python projects, ensuring you have the right stack everywhere.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), + ('scikit-build', '0.17.6'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('hatchling', '1.18.0'), + ('cryptography', '41.0.5'), + ('virtualenv', '20.24.6'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('six', '1.16.0', { + 'checksums': ['1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926'], + }), + ('idna', '3.4', { + 'checksums': ['814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4'], + }), + ('certifi', '2023.7.22', { + 'checksums': ['539cc1d13202e33ca466e88b2807e29f4c13049d6d87031a3c110744495cb082'], + }), + ('urllib3', '2.0.7', { + 'checksums': ['c97dfde1f7bd43a71c8d2a58e369e9b2bf692d1334ea9f9cae55add7d0dd0f84'], + }), + ('charset-normalizer', '3.3.1', { + 'checksums': ['d9137a876020661972ca6eec0766d81aef8a5627df628b664b234b73396e727e'], + }), + ('dulwich', '0.21.6', { + 'checksums': ['30fbe87e8b51f3813c131e2841c86d007434d160bd16db586b40d47f31dd05b0'], + }), + ('crashtest', '0.4.1', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'checksums': ['8d23eac5fa660409f57472e3851dab7ac18aba459a8d19cbbba86d3d5aecd2a5'], + }), + ('zipp', '3.17.0', { + 'checksums': ['84e64a1c28cf7e91ed2078bb8cc8c259cb19b76942096c8d7b84947690cabaf0'], + }), + ('importlib_metadata', '6.8.0', { + 'checksums': ['dbace7892d8c0c4ac1ad096662232f831d4e64f4c4545bd53016a3e9d4654743'], + }), + ('jeepney', '0.8.0', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'checksums': ['c0a454ad016ca575060802ee4d590dd912e35c122fa04e70306de3d076cce755'], + }), + ('SecretStorage', '3.3.3', { + 'checksums': ['2403533ef369eca6d2ba81718576c5e0f564d5cca1b58f73a8b23e7d4eeebd77'], + }), + ('more-itertools', '10.1.0', { + 'checksums': ['626c369fa0eb37bac0291bce8259b332fd59ac792fa5497b59837309cd5b114a'], + }), + ('jaraco.classes', '3.3.0', { + 'checksums': ['c063dd08e89217cee02c8d5e5ec560f2c8ce6cdc2fcdc2e68f7b2e5547ed3621'], + }), + ('keyring', '24.2.0', { + 'modulename': False, + 'checksums': ['ca0746a19ec421219f4d713f848fa297a661a8a8c1504867e55bfb5e09091509'], + }), + ('pyproject_hooks', '1.0.0', { + 'checksums': ['f271b298b97f5955d53fb12b72c1fb1948c22c1a6b70b315c54cedaca0264ef5'], + }), + # poetry 1.6.1 has requirement build<0.11.0,>=0.10.0 + ('build', '0.10.0', { + 'checksums': ['d5b71264afdb5951d6704482aac78de887c80691c52b88a9ad195983ca2c9269'], + }), + ('installer', '0.7.0', { + 'checksums': ['a26d3e3116289bb08216e0d0f7d925fcef0b0194eedfa0c944bcaaa106c4b631'], + }), + ('webencodings', '0.5.1', { + 'checksums': ['b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923'], + }), + ('html5lib', '1.1', { + 'checksums': ['b2e5b40261e20f354d198eae92afc10d750afb487ed5e50f9c4eaf07c184146f'], + }), + # poetry 1.5.1 has requirement rapidfuzz<3.0.0,>=2.2.0 + ('rapidfuzz', '2.15.2', { + 'checksums': ['bfc1d38a7adcbe8912f980a5f46f27a801dd8655582ff0d4a2c0431c02b7ce33'], + }), + ('cleo', '2.0.1', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'checksums': ['6eb133670a3ed1f3b052d53789017b6e50fca66d1287e6e6696285f4cb8ea448'], + }), + ('attrs', '23.1.0', { + 'modulename': 'attr', + 'checksums': ['6279836d581513a26f1bf235f9acd333bc9115683f14f7e8fae46c98fc50e015'], + }), + ('pyrsistent', '0.20.0', { + 'checksums': ['4c48f78f62ab596c679086084d0dd13254ae4f3d6c72a83ffdf5ebdef8f265a4'], + }), + ('requests-toolbelt', '1.0.0', { + 'checksums': ['7681a0a3d047012b5bdc0ee37d7f8f07ebe76ab08caeccfc3921ce23c88d5bc6'], + }), + ('pkginfo', '1.9.6', { + 'checksums': ['8fd5896e8718a4372f0ea9cc9d96f6417c9b986e23a4d116dda26b62cc29d046'], + }), + ('ptyprocess', '0.7.0', { + 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-any.whl', + 'checksums': ['4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35'], + }), + ('pexpect', '4.8.0', { + 'checksums': ['fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c'], + }), + # poetry 1.6.1 has requirement jsonschema<4.18.0,>=4.10.0 + ('jsonschema', '4.17.3', { + 'checksums': ['0f864437ab8b6076ba6707453ef8f98a6a0d512a80e93f8abdb676f737ecb60d'], + }), + ('platformdirs', '3.11.0', { + 'checksums': ['cf8ee52a3afdb965072dcc652433e0c7e3e40cf5ea1477cd4b3b1d2eb75495b3'], + }), + ('shellingham', '1.5.4', { + 'checksums': ['8dbca0739d487e5bd35ab3ca4b36e11c4078f3a234bfce294b0a0291363404de'], + }), + ('tomlkit', '0.12.1', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'checksums': ['712cbd236609acc6a3e2e97253dfc52d4c2082982a88f61b640ecf0817eab899'], + }), + ('requests', '2.31.0', { + 'checksums': ['942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1'], + }), + ('msgpack', '1.0.7', { + 'checksums': ['572efc93db7a4d27e404501975ca6d2d9775705c2d922390d878fcf768d92c87'], + }), + ('cachecontrol', '0.13.1', { + 'checksums': ['f012366b79d2243a6118309ce73151bf52a38d4a5dac8ea57f09bd29087e506b'], + }), + ('lockfile', '0.12.2', { + 'checksums': ['6aed02de03cba24efabcd600b30540140634fc06cfa603822d508d5361e9f799'], + }), + ('poetry_core', '1.7.0', { + 'modulename': 'poetry.core', + 'checksums': ['8f679b83bd9c820082637beca1204124d5d2a786e4818da47ec8acefd0353b74'], + }), + ('poetry_plugin_export', '1.5.0', { + 'checksums': ['ecc8738da0c81c3758e36b4e72e04ae59648a547492af2ffe6245af3594bb00f'], + }), + (name, version, { + 'checksums': ['0ab9b1a592731cc8b252b8d6aaeea19c72cc0a109d7468b829ad57e6c48039d2'], + }), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'], +} + +moduleclass = 'tools' 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..956def8cb4a --- /dev/null +++ b/easybuild/easyconfigs/p/ppl/ppl-1.2-GCCcore-11.3.0.eb @@ -0,0 +1,30 @@ +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 = [ + ('M4', '1.4.19'), + ('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.9-GCC-11.3.0.eb b/easybuild/easyconfigs/p/pplpy/pplpy-0.8.9-GCC-11.3.0.eb new file mode 100644 index 00000000000..553da922263 --- /dev/null +++ b/easybuild/easyconfigs/p/pplpy/pplpy-0.8.9-GCC-11.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'pplpy' +version = '0.8.9' + +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 = ['db7a3b571d6ef053f75137975e947c3a1c1e45a30bab90eaf215b4e5cc15797e'] + +# 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 +sanity_pip_check = True + +options = {'modulename': 'ppl'} + +moduleclass = 'tools' 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..51b021780f2 --- /dev/null +++ b/easybuild/easyconfigs/p/primecountpy/primecountpy-0.1.0-GCCcore-11.3.0.eb @@ -0,0 +1,26 @@ +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'] + +builddependencies = [('binutils', '2.38')] + +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' diff --git a/easybuild/easyconfigs/p/pybind11/pybind11-2.10.3-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/pybind11/pybind11-2.10.3-GCCcore-12.2.0.eb index d3655ac1928..f46106ed058 100644 --- a/easybuild/easyconfigs/p/pybind11/pybind11-2.10.3-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/p/pybind11/pybind11-2.10.3-GCCcore-12.2.0.eb @@ -24,7 +24,7 @@ builddependencies = [ ('CMake', '3.24.3'), # Test dependencies ('Eigen', '3.4.0'), - ('Catch2', '2.13.9', '', SYSTEM), + ('Catch2', '2.13.9'), ] dependencies = [('Python', '3.10.8')] diff --git a/easybuild/easyconfigs/p/pybind11/pybind11-2.11.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pybind11/pybind11-2.11.1-GCCcore-12.3.0.eb index ef87962e756..489231503eb 100644 --- a/easybuild/easyconfigs/p/pybind11/pybind11-2.11.1-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/pybind11/pybind11-2.11.1-GCCcore-12.3.0.eb @@ -24,7 +24,7 @@ builddependencies = [ ('CMake', '3.26.3'), # Test dependencies ('Eigen', '3.4.0'), - ('Catch2', '2.13.9', '', SYSTEM), + ('Catch2', '2.13.9'), ('Python-bundle-PyPI', '2023.06'), # to provide pytest ] dependencies = [('Python', '3.11.3')] diff --git a/easybuild/easyconfigs/p/pybind11/pybind11-2.11.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/pybind11/pybind11-2.11.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..a7e27c52618 --- /dev/null +++ b/easybuild/easyconfigs/p/pybind11/pybind11-2.11.1-GCCcore-13.2.0.eb @@ -0,0 +1,35 @@ +name = 'pybind11' +version = '2.11.1' + +homepage = 'https://pybind11.readthedocs.io' +description = """pybind11 is a lightweight header-only library that exposes C++ types in Python and vice versa, + mainly to create Python bindings of existing C++ code.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/pybind/pybind11/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'pybind11-2.10.3_fix-nvcc-compat.patch', + 'pybind11-2.10.3_require-catch.patch', +] +checksums = [ + {'v2.11.1.tar.gz': 'd475978da0cdc2d43b73f30910786759d593a9d8ee05b1b6846d1eb16c6d2e0c'}, + {'pybind11-2.10.3_fix-nvcc-compat.patch': '510a23dac47b8b440c06c101d269451c95e09907d9034b6b8a16aeb8b89364ae'}, + {'pybind11-2.10.3_require-catch.patch': '4a27ba3ef1d5c535d120d6178a6e876ae678e4899a07500aab37908357b0b60b'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.27.6'), + # Test dependencies + ('Eigen', '3.4.0'), + ('Catch2', '2.13.9'), + ('Python-bundle-PyPI', '2023.10'), # to provide pytest +] + +dependencies = [ + ('Python', '3.11.5'), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/pybind11/pybind11-2.6.2-GCCcore-10.3.0.eb b/easybuild/easyconfigs/p/pybind11/pybind11-2.6.2-GCCcore-10.3.0.eb index ad21aadc19b..2c22e302221 100644 --- a/easybuild/easyconfigs/p/pybind11/pybind11-2.6.2-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/p/pybind11/pybind11-2.6.2-GCCcore-10.3.0.eb @@ -9,7 +9,12 @@ toolchain = {'name': 'GCCcore', 'version': '10.3.0'} source_urls = ['https://github.com/pybind/pybind11/archive/'] sources = ['v%(version)s.tar.gz'] -checksums = ['8ff2fff22df038f5cd02cea8af56622bc67f5b64534f1b83b9f133b8366acff2'] +patches = ['pybind11-2.6.0_fix-test-extra-whitespace.patch'] +checksums = [ + {'v2.6.2.tar.gz': '8ff2fff22df038f5cd02cea8af56622bc67f5b64534f1b83b9f133b8366acff2'}, + {'pybind11-2.6.0_fix-test-extra-whitespace.patch': + 'f0ff7416d14f9589b5d100ad021e18690cb08cb662df9d0ac21327d04bdb96fc'}, +] builddependencies = [ ('binutils', '2.36.1'), diff --git a/easybuild/easyconfigs/p/pybind11/pybind11-2.7.1-GCCcore-11.2.0-Python-2.7.18.eb b/easybuild/easyconfigs/p/pybind11/pybind11-2.7.1-GCCcore-11.2.0-Python-2.7.18.eb index f393fb93837..e08f29369de 100644 --- a/easybuild/easyconfigs/p/pybind11/pybind11-2.7.1-GCCcore-11.2.0-Python-2.7.18.eb +++ b/easybuild/easyconfigs/p/pybind11/pybind11-2.7.1-GCCcore-11.2.0-Python-2.7.18.eb @@ -10,7 +10,12 @@ toolchain = {'name': 'GCCcore', 'version': '11.2.0'} source_urls = ['https://github.com/pybind/pybind11/archive/'] sources = ['v%(version)s.tar.gz'] -checksums = ['616d1c42e4cf14fa27b2a4ff759d7d7b33006fdc5ad8fd603bb2c22622f27020'] +patches = ['pybind11-2.6.0_fix-test-extra-whitespace.patch'] +checksums = [ + {'v2.7.1.tar.gz': '616d1c42e4cf14fa27b2a4ff759d7d7b33006fdc5ad8fd603bb2c22622f27020'}, + {'pybind11-2.6.0_fix-test-extra-whitespace.patch': + 'f0ff7416d14f9589b5d100ad021e18690cb08cb662df9d0ac21327d04bdb96fc'}, +] builddependencies = [ ('binutils', '2.37'), diff --git a/easybuild/easyconfigs/p/pybind11/pybind11-2.7.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/pybind11/pybind11-2.7.1-GCCcore-11.2.0.eb index b04d5c7b9b4..29ae717308d 100644 --- a/easybuild/easyconfigs/p/pybind11/pybind11-2.7.1-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/p/pybind11/pybind11-2.7.1-GCCcore-11.2.0.eb @@ -9,7 +9,12 @@ toolchain = {'name': 'GCCcore', 'version': '11.2.0'} source_urls = ['https://github.com/pybind/pybind11/archive/'] sources = ['v%(version)s.tar.gz'] -checksums = ['616d1c42e4cf14fa27b2a4ff759d7d7b33006fdc5ad8fd603bb2c22622f27020'] +patches = ['pybind11-2.6.0_fix-test-extra-whitespace.patch'] +checksums = [ + {'v2.7.1.tar.gz': '616d1c42e4cf14fa27b2a4ff759d7d7b33006fdc5ad8fd603bb2c22622f27020'}, + {'pybind11-2.6.0_fix-test-extra-whitespace.patch': + 'f0ff7416d14f9589b5d100ad021e18690cb08cb662df9d0ac21327d04bdb96fc'}, +] builddependencies = [ ('binutils', '2.37'), diff --git a/easybuild/easyconfigs/p/pycubescd/pycubescd-20220704-foss-2022a.eb b/easybuild/easyconfigs/p/pycubescd/pycubescd-20220704-foss-2022a.eb new file mode 100644 index 00000000000..319aa9dcc54 --- /dev/null +++ b/easybuild/easyconfigs/p/pycubescd/pycubescd-20220704-foss-2022a.eb @@ -0,0 +1,57 @@ +easyblock = 'Tarball' + +name = 'pycubescd' +version = '20220704' +_commit = 'a254c1a' + +homepage = 'https://github.com/BERTHA-4c-DKS/pycubescd' +description = """Charge-displacement analysis via natural orbitals for chemical +valence in the four-component relativistic framework""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +sources = [ + { + 'source_urls': ['https://github.com/BERTHA-4c-DKS/pycubescd/archive'], + 'download_filename': '%s.tar.gz' % _commit, + 'filename': SOURCE_TAR_GZ, + }, +] +checksums = ['4747d63eae7d368c89a29f7e1864aa3e7c1a89fffde923154331187022aa7e7f'] +unpack_options = '--strip-components=1' + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('matplotlib', '3.5.2'), +] + +postinstallcmds = [ + 'mv %(installdir)s/PY3 %(installdir)s/bin', + 'mv %(installdir)s/*.sh %(installdir)s/bin/', + 'chmod a+x %(installdir)s/bin/{*.py,*.sh}', + 'rm %(installdir)s/*.py', + 'rm -r %(installdir)s/modules/load_cube.py', +] + +fix_python_shebang_for = ['bin/*.py'] + +_bins = ['pycd.py', 'pycd_simple.py', 'pybader.py', 'pycdfrags.py', 'pycdexct.py', 'pyct.py', 'pydens_iso.py', + 'py_spherical.py', 'pyadd_cube.py', 'pysub_cube.py', 'py_central.py', 'py_sphere.py'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _bins], + 'dirs': ['modules', 'Tools', 'test'], +} + +sanity_check_commands = [ + 'pycd.py --help', + 'pycd_simple.py --help', + 'py_central.py --help', +] + +modextrapaths = { + 'PYTHONPATH': 'modules', +} + +moduleclass = 'chem' 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 new file mode 100644 index 00000000000..4afab6a8441 --- /dev/null +++ b/easybuild/easyconfigs/p/pylipid/pylipid-1.5.14-foss-2021b.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.1'), + ('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' 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' 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' 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/p/pytest-xdist/pytest-xdist-3.3.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-3.3.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..e9fc2a36b36 --- /dev/null +++ b/easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-3.3.1-GCCcore-12.3.0.eb @@ -0,0 +1,63 @@ +easyblock = 'PythonBundle' + +name = 'pytest-xdist' +version = '3.3.1' + +homepage = 'https://github.com/pytest-dev/pytest-xdist' +description = """xdist: pytest distributed testing plugin + +The pytest-xdist plugin extends pytest with some unique test execution modes: + + * test run parallelization: if you have multiple CPUs or hosts you + can use those for a combined test run. This allows to speed up + development or to use special resources of remote machines. + + * --looponfail: run your tests repeatedly in a subprocess. After + each run pytest waits until a file in your project changes and + then re-runs the previously failing tests. This is repeated + until all tests pass after which again a full run is + performed. + + * Multi-Platform coverage: you can specify different Python + interpreters or different platforms and run tests in parallel on + all of them. + +Before running tests remotely, pytest efficiently “rsyncs” your +program source code to the remote place. All test results are reported +back and displayed to your local terminal. You may specify different +Python versions and interpreters.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('pytest', '7.4.2'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('apipkg', '3.0.2', { + 'checksums': ['c7aa61a4f82697fdaa667e70af1505acf1f7428b1c27b891d204ba7a8a3c5e0d'], + }), + ('execnet', '2.0.2', { + 'checksums': ['cc59bc4423742fd71ad227122eb0dd44db51efb3dc4095b45ac9a08c770096af'], + }), + (name, version, { + 'modulename': 'xdist', + 'checksums': ['d5ee0520eb1b7bcca50a60a518ab7a7707992812c578198f8b44fdfac78e8c93'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pytest/pytest-7.4.2-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pytest/pytest-7.4.2-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..9d0b6f0c25d --- /dev/null +++ b/easybuild/easyconfigs/p/pytest/pytest-7.4.2-GCCcore-12.3.0.eb @@ -0,0 +1,71 @@ +easyblock = 'PythonBundle' + +name = 'pytest' +version = '7.4.2' + +homepage = 'https://docs.pytest.org/en/latest/' +description = """The pytest framework makes it easy to write small, +readable tests, and can scale to support complex functional testing for +applications and libraries.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), +] + +use_pip = True + +exts_default_options = {'source_urls': [PYPI_LOWER_SOURCE]} + +# Note! Some of the file system related tests may fail on shared file systems. +# Notably TestPOSIXLocalPath.test_copy_stat_file, TestPOSIXLocalPath.test_copy_stat_dir +# and test_source_mtime_long_long are known to fail on GPFS +# Build with buildpath and tmpdir set to a local file system to avoid this +# or use --ignore-test-failures +_skip_tests = [ + 'testing/io/test_terminalwriter.py', + 'testing/test_terminal.py', + 'testing/test_debugging.py', + 'testing/test_config.py', + 'testing/test_helpconfig.py', +] +_ignore_tests = ' --ignore='.join(_skip_tests) + +exts_list = [ + ('setuptools-scm', '8.0.4', { + 'checksums': ['b5f43ff6800669595193fd09891564ee9d1d7dcb196cab4b2506d53a2e1c95c7'], + }), + ('flit-core', '3.9.0', { + 'source_tmpl': 'flit_core-%(version)s.tar.gz', + 'checksums': ['72ad266176c4a3fcfab5f2930d76896059851240570ce9a98733b658cb786eba'], + }), + ('hypothesis', '6.88.1', { + 'checksums': ['f4c2c004b9ec3e0e25332ad2cb6b91eba477a855557a7b5c6e79068809ff8b51'], + }), + ('elementpath', '4.1.5', { + 'checksums': ['c2d6dc524b29ef751ecfc416b0627668119d8812441c555d7471da41d4bacb8d'], + }), + ('xmlschema', '2.5.0', { + 'checksums': ['276a03e0fd3c94c148d528bff4d9482f9b99bf8c7b4056a2e8e703d28149d454'], + }), + (name, version, { + 'checksums': ['a766259cfab564a2ad52cb1aae1b881a75c3eb7e34ca3779697c23ed47c47069'], + }), +] + +sanity_check_commands = [ + "python -c 'import pytest'", + 'cd %%(builddir)s/%%(name)s/%%(name)s-%%(version)s && %%(installdir)s/bin/pytest --ignore=%s testing' + % _ignore_tests, +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/pythermalcomfort/pythermalcomfort-2.8.10-foss-2022a.eb b/easybuild/easyconfigs/p/pythermalcomfort/pythermalcomfort-2.8.10-foss-2022a.eb new file mode 100644 index 00000000000..f3c3fa164c0 --- /dev/null +++ b/easybuild/easyconfigs/p/pythermalcomfort/pythermalcomfort-2.8.10-foss-2022a.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonPackage' + +name = 'pythermalcomfort' +version = '2.8.10' + +homepage = 'https://github.com/CenterForTheBuiltEnvironment/pythermalcomfort' +description = """Package to calculate several thermal comfort + indices (e.g. PMV, PPD, SET, adaptive) and convert physical variables.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['ff6ff88476bff23619411bc90656f1ae54354a30d5b3a554434adc68a18d76c6'] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('numba', '0.56.4'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/pythermalcomfort'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["pythermalcomfort --help"] + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/p/python-isal/python-isal-1.1.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/python-isal/python-isal-1.1.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..77edd20e032 --- /dev/null +++ b/easybuild/easyconfigs/p/python-isal/python-isal-1.1.0-GCCcore-12.3.0.eb @@ -0,0 +1,36 @@ +# Author: Jasper Grimm (UoY) + +easyblock = 'PythonPackage' + +name = 'python-isal' +version = '1.1.0' + +homepage = 'https://github.com/pycompression/python-isal' +description = """Faster zlib and gzip compatible compression and decompression + by providing python bindings for the isa-l library. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +github_account = 'pycompression' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['3fa7f5ac22350cf9c4370aa725dea39c4155123864fff4bf6e6392f83976c86f'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Python', '3.11.3'), + ('ISA-L', '2.30.0'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +preinstallopts = 'PYTHON_ISAL_LINK_DYNAMIC=true' +installopts = '--no-binary isal' + +options = {'modulename': 'isal'} + +moduleclass = 'lib' 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..393d5ade5b9 --- /dev/null +++ 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' 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' diff --git a/easybuild/easyconfigs/p/python-xxhash/python-xxhash-3.1.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/python-xxhash/python-xxhash-3.1.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..cae096c79f5 --- /dev/null +++ b/easybuild/easyconfigs/p/python-xxhash/python-xxhash-3.1.0-GCCcore-11.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +name = 'python-xxhash' +version = '3.1.0' + +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': '11.3.0'} + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('xxHash', '0.8.1'), +] + +use_pip = True + +exts_list = [ + ('xxhash', version, { + 'checksums': ['ac21b1e21dc6fdfee9a57b53f4777539d53a84f2e1546a3f802f159f9966bdc1'], + 'preinstallopts': 'XXHASH_LINK_SO=1', # use xxHash library from EB + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' 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 }), ] 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.12-foss-2023a.eb b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb new file mode 100644 index 00000000000..61f2a58a16a --- /dev/null +++ b/easybuild/easyconfigs/r/R-bundle-CRAN/R-bundle-CRAN-2023.12-foss-2023a.eb @@ -0,0 +1,3395 @@ +easyblock = 'Bundle' + +name = 'R-bundle-CRAN' +version = '2023.12' + +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'), + ('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.1'), # for RPostgreSQL +] + +# 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', +} + +# 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 10th December 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.1', { + 'checksums': ['51e1f40ac947fb1b43bc178bc5d82e23facaaefe6c66acbddf715165e1f5ee08'], + }), + ('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.5', { + 'checksums': ['dee9b6c1152db1a5dc427d074b32bbbb738708683f17a95e0e95e4d79fdf174b'], + }), + ('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.12', { + 'checksums': ['7ddce3e8f08ce2e5feaa9fab30b50671ea200a8cfe2be230a98601d940124ba0'], + }), + ('mlbench', '2.1-3.1', { + 'checksums': ['7afec6d58968ab526ea642e1df39bead2f479c14486b0a62032c999ba73d5cf0'], + }), + ('NLP', '0.2-1', { + 'checksums': ['05eaa453ad2757311c073fd30093c738b20a977c5089031eb454345a1d01f2b6'], + }), + ('mclust', '6.0.1', { + 'checksums': ['0e92de6fd1bd2a13de2c94eae84fba0d3762099a2505e05b887f1c2a7242537f'], + }), + ('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-164', { + 'checksums': ['79a5a020ce7037b83ee6c28336e35a1310058c13fc59f7fcb11eca0bc9bdd4e8'], + }), + ('segmented', '2.0-0', { + 'checksums': ['8dbb31d85f116f53f08de53c30bc225d27e8be429dfd07ca838d1ab1d5a7eec8'], + }), + ('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-2', { + 'checksums': ['bfdbb4a62f9fe0c554f88c75af6f214dc9a550da09bd3aefe1115ac6963e0dc5'], + }), + ('hms', '1.1.3', { + 'checksums': ['e626f4c60af46efd53ea631b316a103e089470d8fd63c0e0c0efb99364990282'], + }), + ('progress', '1.2.3', { + 'checksums': ['ea2b079b894de85c3ab12088c9c52aec06432245047a961d5b4b8aa6889f9276'], + }), + ('RcppArmadillo', '0.12.6.6.1', { + 'checksums': ['9a6abd298ac1a87c2c85722f7561c40c424d27909cb014bf421b13f7050dffc0'], + }), + ('ade4', '1.7-22', { + 'checksums': ['007df54e83a2a6cb8d6da8006f0aace011e7eaa7744dc5f8230ac2c002b393b4'], + }), + ('AlgDesign', '1.2.1', { + 'checksums': ['5989626c526bd7c3d9bdda326c962056879be03392065a0b7ddb9b8cf9309d05'], + }), + ('BH', '1.81.0-1', { + 'checksums': ['f51c8badd6f181e06353314e1d15a6ec1495cc498ee74b6fa4ea8aba6e97ff64'], + }), + ('Matrix', '1.6-4', { + 'checksums': ['70ca7bdaece68d4837da0523d067e1553947c3c81b0b55206223bb647617bb01'], + }), + ('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.1', { + 'checksums': ['e7e6ba0cca400137f352a599ea29cf35a83f40a5ad26e7c4f06e6c35471884f6'], + }), + ('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-1', { + 'checksums': ['21b8d7d747c07aaf8a82d61ec98fe0539afcaa5a565d9c2fc55be65b6af2c91b'], + }), + ('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-4', { + 'checksums': ['e6a22d93ab61c67af21cbbe1fe333c06934cf576a44745bf2beee59bceaae8d6'], + }), + ('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-10', { + 'checksums': ['b5826818e5c5819d8117f692073e5bd3cc93320a6d6c2ccc34eb5c96b193396b'], + }), + ('RColorBrewer', '1.1-3', { + 'checksums': ['4f42f5423c45688b39f492c7892d93f37b4541831c8ffb140364d2bd89031ac0'], + }), + ('png', '0.1-8', { + 'checksums': ['5a36fabb6d62ba2533d3fc4cececd07891942cfb76fe689ec0d550d08762f61c'], + }), + ('jpeg', '0.1-10', { + 'checksums': ['c8d9f609c3088f91ec4853d6cc0e66511038a465811dea79ca6a0c09519178ca'], + }), + ('deldir', '2.0-2', { + 'checksums': ['e9bf787f0c5877a8dc6b6c62c8f99b77dd9130337f946a4802f90eed0ec1eee3'], + }), + ('RcppEigen', '0.3.3.9.4', { + 'checksums': ['41eabb8d034ffae0fcfcf23ca92b8f0fba5aec8f1ba108d922e19db7e10d5fb9'], + }), + ('interp', '1.1-5', { + 'checksums': ['0c520971a10156162e4430873066e73b798be2f45aa0f222d64c987aba0e4b20'], + }), + ('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.3.0', { + 'checksums': ['b33e0f6b44259551ce02befd52eac53602509fbfdd903920620c658c50f35888'], + }), + ('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.10', { + 'checksums': ['014b41eb71a8ddad504baeaa3a2fbbf03406783f00f3adcce48567692978627e'], + }), + ('BBmisc', '1.13', { + 'checksums': ['1145dcf9fed15e7beeaa4a5c7075d8a8badd17c8246838cd63e40cd9551e4405'], + }), + ('fail', '1.3', { + 'checksums': ['ede8aa2a9f2371aff5874cd030ac625adb35c33954835b54ab4abf7aeb34d56d'], + }), + ('rlecuyer', '0.3-8', { + 'checksums': ['66bed3543337535fe2cf2d3eee4165472599c14d3c5e4402f7a1ebf5112c75c9'], + }), + ('snow', '0.4-4', { + 'checksums': ['84587f46f222a96f3e2fde10ad6ec6ddbd878f4e917cd926d632f61a87db13c9'], + }), + ('tree', '1.0-43', { + 'checksums': ['9b0a996d013cce4f457abdbdc54bd2f8f4dbe4ef0b33e0a53925509c509d5287'], + }), + ('pls', '2.8-3', { + 'checksums': ['e6eb728dd38cd4867698df06e02601ed767e69098b1daadde5beef634ae66be3'], + }), + ('class', '7.3-22', { + 'checksums': ['b6994164e93843fcc7e08dfdc8c8b4af6a5a10ef7153d2e72a6855342508d15c'], + }), + ('proxy', '0.4-27', { + 'checksums': ['249991a4c4d70ad139e93f3a24e17f161ad1ec854951813ea192daf79478563f'], + }), + ('e1071', '1.7-14', { + 'checksums': ['754d97ab073acc07b909a190f87f021e31e07269c8632c53166a6c2843e65195'], + }), + ('nnet', '7.3-19', { + 'checksums': ['a9241f469270d3b03bbab7dc0d3c6a06a84010af16ba82fd3bd6660b35382ce7'], + }), + ('minqa', '1.2.6', { + 'checksums': ['51a7b8850e5f2fee79e8f460b9d9eca4221d9702087cca5fab5851ad3d594110'], + }), + ('MatrixModels', '0.5-3', { + 'checksums': ['c2db5406c6b0b9d348b44eea215a39c64fc087099fea1342a04d50326577f20f'], + }), + ('matrixStats', '1.1.0', { + 'checksums': ['b4671875d80903aabbb8d6a7750f93886eb1a67703c9263d1c1ab1aab7840541'], + }), + ('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.4', { + 'checksums': ['cf730414d5d4ab387b4e9890a4b1df9d17a3903488e8da8df1cf2e11e44558cb'], + }), + ('gower', '1.0.1', { + 'checksums': ['296a9d8e5efa8c3a8cc6b92cf38880915753afdef30281629af9dc8eae8315fc'], + }), + ('rpart', '4.1.23', { + 'checksums': ['f9b89aed6aa6cea656a2dcb271574e969ce2b1c98beb07bd91e17339f6daabaf'], + }), + ('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-1', { + 'checksums': ['ae1a1bece804172e30c1aa6ee7dafb638b53123bed1e906b4863c2310cef7858'], + }), + ('zoo', '1.8-12', { + 'checksums': ['e6c3862668f9e3422bced3b6fba485c76a1e91b48f5d6153822d6a61863b2fb8'], + }), + ('lmtest', '0.9-40', { + 'checksums': ['64400d4d6cc635316531042971f1783539686e9015c76f5741c07304fa14d997'], + }), + ('vcd', '1.4-11', { + 'checksums': ['7a54e855689e1429d46e0d4d7a956f96b0ad2fd0c7084fa023902c55849e0932'], + }), + ('snowfall', '1.84-6.3', { + 'checksums': ['2641932b01041e34b7afb1261f649755b4c8d6560080e0e2ee549ffdf3b8b143'], + }), + ('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-86', { + 'checksums': ['a729120108b29ca9744cadd61e3e6a9dc4188a007055c22b6b9a30a676e8c3e1'], + }), + ('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', '2023.12-4', { + 'checksums': ['f5582ad983dfd2ffbaf1e90b49af6f2cc319953d1fcb33f31c6c6f335cbd9fa2'], + }), + ('jomo', '2.7-6', { + 'checksums': ['3ffa2a5521d4969fe77b23cd3ab201afdf8db3f8f708b1276c33083c01d7e2da'], + }), + ('bit64', '4.0.5', { + 'checksums': ['25df6826ea5e93241c4874cad4fa8dadc87a40f4ff74c9107aa12a9e033e1578'], + }), + ('vroom', '1.6.5', { + 'checksums': ['7bdca21e58c9c5049d7445d182f59fd399193cb2f4318d083de0a559ec9b5761'], + }), + ('readr', '2.1.4', { + 'checksums': ['98144fa48c4fa61ef8c73ede8f87a2d2c5c44e9502b7875b266eb79984fbeb0d'], + }), + ('forcats', '1.0.0', { + 'checksums': ['c5bb157909d92e1e1a427c0dc5cb358ea00a43a14918a9088fa4f6630962254e'], + }), + ('haven', '2.5.4', { + 'checksums': ['9e1531bb37aa474abd91db5e0ed9e3a355c03faa65f4e653b3ea68b7c61ea835'], + }), + ('pan', '1.9', { + 'checksums': [ + ('e37e184c3c1b7a34f54dd95335e6bc730fd5716d2d2dc20c24279401aa673c52', + 'cd91232d653783ea7f34c0eebaa80c472b5501b21eea500c4c1a8e57116c6eea'), + ], + }), + ('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.1', { + 'checksums': ['680cf08416d6d5a1194dd85ee5695c268af9d4d01b201448e1d486c6e06014f1'], + }), + ('plotly', '4.10.3', { + 'checksums': ['8b7a6c26443088c8aae4624e01cf726a91fee875c2e60b6c439375d1adaa5d8f'], + }), + ('mixtools', '2.0.0', { + 'checksums': ['854e7482230b9a5dde61bab191b78e06aa8f9b0cdfe3c03e046afa133b317e0d'], + }), + ('cluster', '2.1.6', { + 'checksums': ['d1c50efafd35a55387cc5b36086b97d5591e0b33c48dc718005d2f5907113164'], + }), + ('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-3', { + 'checksums': ['66cd688e3b86b9a4ee8ec565ebc8a19aa45e0a282e6de40ef2b78d6846787194'], + }), + ('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.4', { + 'checksums': ['89732b9c359bae2f41cd23db649f0897c10fab0702d780c4c25a997322710284'], + }), + ('quantmod', '0.4.25', { + 'checksums': ['3f1896d45fbd4daea438fd2824bf4c91aba1a6729d93d20e6a0e60d2a0f95b32'], + }), + ('mvtnorm', '1.2-4', { + 'checksums': ['848287bb0016eaeab7cef474087ed4e6fadb805e26c767c816c204037d3d9aff'], + }), + ('pcaPP', '2.0-4', { + 'checksums': ['d6c5670611d92ffa11904746a62191e6bcf294fb96afee10cb25ebbbd8458133'], + }), + ('pscl', '1.5.5.1', { + 'checksums': ['611367c3d34c78f2d4db79e630e38d7a5df8296bd7e72d258f6a115fbbe78d5b'], + }), + ('blob', '1.2.4', { + 'checksums': ['d08922ebc4147d930fe4762b1b289935217308c6d3fcaa5ae028ce3f5cf2728f'], + }), + ('RSQLite', '2.3.4', { + 'checksums': ['73cdc81bb3cfce6f680a8ee384927867520a883e6d0705f6d6c79dccd4fbc4eb'], + }), + ('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.40', { + 'checksums': ['8c09ae6bb6875b569b9844eede30b790f39fc227f5c9d045fa63ce1b22f500ef'], + }), + ('tseriesChaos', '0.1-13.1', { + 'checksums': ['23cb5fea56409a305e02a523ff8b7642ec383942d415c9cffdc92208dacfd961'], + }), + ('tseries', '0.10-55', { + 'checksums': ['97c7822b06533de0b208be4ae7429fc208bc13290a3e109f5f197a4964144b0e'], + }), + ('fastICA', '1.2-4', { + 'checksums': ['ed6988ea410d1a75bf4f4925edcac5a660a417e33ba0a939bc0351e534df5f2f'], + }), + ('R.methodsS3', '1.8.2', { + 'checksums': ['822d5e61dad4c91e8883be2b38d7b89f87492046d0fe345704eb5d2658927c2e'], + }), + ('R.oo', '1.25.0', { + 'checksums': ['b8b19061774918ee7d9d4330c16c0ea505f7cd02d01343df1e8b2e4fb847beef'], + }), + ('cgdsr', '1.3.0', { + 'checksums': ['4aa2a3564cee2449c3ff39ab2ad631deb165d4c78b8107e0ff77a9095340cc1f'], + }), + ('R.utils', '2.12.3', { + 'checksums': ['74d6e77a95a23381a490fea54be01b653d4b938a2dc75e749a694ab48302c40c'], + }), + ('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.9', { + 'checksums': ['f173034b0c28873f417ee804b9e278aedd92e76eb56c7c6d71b1c02fa1193ece'], + }), + ('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-36', { + 'checksums': ['931a62a091a7aaaa5efadb1fe85f29e861e2506b75710ba3a6be9b58cb14b225'], + }), + ('LearnBayes', '2.15.1', { + 'checksums': ['9b110858456523ca0b2a63f22013c4e1fbda6674b9d84dc1f4de8bffc5260532'], + }), + ('gmodels', '2.18.1.1', { + 'checksums': ['da7d48021b7cd2fd8a7cd8d0bb9658b12342a32698a13877b25ca94aa03f1e95'], + }), + ('expm', '0.999-8', { + 'checksums': ['79e22a9fd17392c360b21d4d42c17d968a11e3c073cb8c50f4691f4bef700552'], + }), + ('terra', '1.7-55', { + 'checksums': ['7000bdfd8591be64921cf841ef29b2aad74661781865f29e1540e57a7d7231ec'], + }), + ('raster', '3.6-26', { + 'checksums': ['c65777225a46ada699e70098f54c60cf191d15e454fac9440aca439a4dbd5592'], + }), + ('spData', '2.3.0', { + 'checksums': ['4b2c1f597049f2c78a7e2b7538c067e2b57e2f12291d19210b1eef702664848b'], + }), + ('units', '0.8-5', { + 'checksums': ['d95e80af760b053e10a1e33ce1f0c1280a84e84bd4b1d9c34d1fe9fc153603b1'], + }), + ('classInt', '0.4-10', { + 'checksums': ['c3561eafbc493ac02840191d4f1e4d2ef437ca8eb20f41fc5eca28f00ee42b8b'], + }), + ('vegan', '2.6-4', { + 'checksums': ['5d8ad4bebe79ae2bbd840a34100cf54c62f089c66ea484a542a201afcba21d06'], + }), + ('rncl', '0.8.7', { + 'checksums': ['1d876e4f5f2b8a24cc3ea1002c29eedbc0ca96011b0fa15b085e5b75cfc7993a'], + }), + ('XML', '3.99-0.16', { + 'checksums': ['350d37bab99ba3dac03313fa3901cc053ab2d962a94a9c3404fb3ad0a91cc95b'], + }), + ('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', '2.0-3', { + 'checksums': ['a10f5ceba81d5f8dc8e1b80e4cd00c7878842ee312ecd266809f60f70b23e82e'], + }), + ('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.8', { + 'checksums': ['e535e738702d0babe043c1fec3d358c7bfdfe202ad95d68971b28ad7a81717f4'], + }), + ('Rtsne', '0.17', { + 'checksums': ['3aae6814d6c6d406785145f07374135652f2b26a58690dfd4bfbc8365dc5590b'], + }), + ('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-14', { + 'checksums': ['bc30975c97826aa68a839df63a2fc977473a8a144ec66ae95618e385da470867'], + }), + ('inum', '1.0-5', { + 'checksums': ['e696b7e0b31b3bbf405112e60691b6a72fedcaa02e08ee517c59f6bf9cd36bbd'], + }), + ('partykit', '1.2-20', { + 'checksums': ['63509aa3ed2d7417ad284c037cef66bc837fdb7a97967957e79b9fee8ed2e0da'], + }), + ('mboost', '2.9-9', { + 'checksums': ['bf3a83f124d28bd9167a6aafa4cd25f107d3db8a1e7e1d5ca13065dd416aecaa'], + }), + ('msm', '1.7.1', { + 'checksums': ['d134782b966eed33742819595119ab1a61bec4416cc3fa7630a0f34c4e7f785b'], + }), + ('nor1mix', '1.3-2', { + 'checksums': ['463636ceab6512e8ef0a57dbbba23461e9da0c0bf5a6c27424675cdd209ea208'], + }), + ('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.6', { + 'checksums': ['6a75d98c651778358732429258056a327def2be4d2af244a8daaac5b500c220a'], + }), + ('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'], + }), + ('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'], + }), + ('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.31', { + 'checksums': ['956f42a784d1c426ddc75ebfb22a854886e2d6ae8b7014b95669aed0cd699c87'], + }), + ('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.77-0', { + 'checksums': ['c3c835155e6bddce730623c4e9b4eeed00624c26d493076e79db203a55f8ca32'], + }), + ('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.5', { + 'checksums': ['1298172d2fe67d8d6b742ce7e792f6b897f081da5c94d34f14970ab531f04b3a'], + }), + ('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-2', { + 'checksums': ['48c6ee4c51ac50e4bf939118f9e5f94470529c0ee608b628ce4de79bfe813a07'], + }), + ('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.4', { + 'checksums': ['1a4ef3af2197f999dbaa614bf5a70f09ec463d8c91feb5aa0d995de24ec6ba7f'], + }), + ('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-17', { + 'checksums': ['424557d7326889e09e31e04d2a9b7224bed0bb4aa6f9e5433d7ce4fe04a35afc'], + }), + ('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.33.0', { + 'checksums': ['1855b68d0e22566f1c255fdcb8e13282a2bebf55cbc804a8591dc8047f0e1895'], + }), + ('clisymbols', '1.2.0', { + 'checksums': ['0649f2ce39541820daee3ed408d765eddf83db5db639b493561f4e5fbf88efe0'], + }), + ('covr', '3.6.4', { + 'checksums': ['2b6204036510c629d0b1d58daaee34d4e38baf54164f8d4c9afd6d6b1fb1862a'], + }), + ('Rook', '1.2', { + 'checksums': ['c79ae4b5164daffd4e7cf74bd23c1b08a3948bf343dfe9570d57f39cbf8e5f62'], + }), + ('Cairo', '1.6-2', { + 'checksums': ['6b6f4c6f93178a1295860a9dc6dc45e60fec70f684d5c8d0b59baf5b8dd44d62'], + }), + ('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', '1.0.0', { + 'checksums': ['4fb08e97d59da8d53730bc72ddabcb04f84ac7965f1e590e5ed1973f7861913d'], + }), + ('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.1.0', { + 'checksums': ['b0b554e9220f7abeb8e40af7617802509bf49aa4b2b58882330cde54c20bad63'], + }), + ('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.3', { + 'checksums': ['8ca24f235f4e0036d6c767e0b7c8597c404b91ab7cd88d4a6a1c3accd46d4f6f'], + }), + ('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.2', { + 'checksums': ['bf33892db9cabba9cd1597f09ef0e1277d63520a8cebd2d919e0d41fc706a27b'], + }), + ('rle', '0.9.2', { + 'checksums': ['803cbe310af6e882e27be61d37d660dbe5910ac1ee1eff61a480bcf724a04f69'], + }), + ('sna', '2.7-2', { + 'checksums': ['7b214626967feb9389e743e50b919dd4b00e7436b2355fd068c873c45ac7a7cd'], + }), + ('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-12', { + 'checksums': ['df10ce719f92597572763182f7cb03686b8d7fb9123d036a4daf5b10738e815c'], + }), + ('readbitmap', '0.1.5', { + 'checksums': ['737d7d585eb33de2c200da64d16781e3c9522400fe2af352e1460c6a402a0291'], + }), + ('imager', '0.45.2', { + 'checksums': ['49848bcb03dd3fc3605799893d39986b521921faaa5647815274eb204bb9bf56'], + }), + ('signal', '1.8-0', { + 'checksums': ['89cba854167a2b051a58cf3b73ccbf74eeb47c890ac39720611cd41f86b94684'], + }), + ('tuneR', '1.4.6', { + 'checksums': ['c5441fb56dc84cafb6aa6b47d83839da1e1a4e5b19eafbb63b268d1a660647d0'], + }), + ('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.1', { + 'checksums': ['b7a0af51c0e04175dc359d1fb0e852ac55097b4105d876b58d3cf995c0f2bf7b'], + }), + ('s2', '1.1.4', { + 'checksums': ['be0b4925eaade52cf85b1cb6e851430bd4fe6ca30722dffcc3f9107e7a4e404c'], + }), + ('sf', '1.0-14', { + 'checksums': ['8b535648d537a1a95920c938e43692c1dfaac8d293ff3f506334001352c339f7'], + }), + ('oce', '1.8-2', { + 'checksums': ['cf5fee1b44f1f972d496c005993eab5267878177c4ce8bf74a3b018047a33fa9'], + }), + ('ineq', '0.2-13', { + 'checksums': ['e0876403f59a3dfc2ea7ffc0d965416e1ecfdecf154e5856e5f54800b3efda25'], + }), + ('soundecology', '1.3.3', { + 'checksums': ['276164d5eb92c78726c647be16232d2443acbf7061371ddde2672b4fdb7a069a'], + }), + ('memuse', '4.2-3', { + 'checksums': ['906fdff665e2aed0e98ee3181233a5c62bd521abfce6ab1cb215c71c95d12620'], + }), + ('pinfsc50', '1.3.0', { + 'checksums': ['971627cf4567fdb34db26010f2db44cfac5ff07f327d3247e778638cc4e849bf'], + }), + ('vcfR', '1.15.0', { + 'checksums': ['df17e48b961d96f2a78a1a15037df674f57d0445f2669e401543d8082f0b49fa'], + }), + ('glmmML', '1.1.6', { + 'checksums': ['2710f56530de37a52a042645da76c8af075d66e04eaee9e18bf1e5f32f0b7958'], + }), + ('cowplot', '1.1.1', { + 'checksums': ['c7dce625b456dffc59ba100c816e16226048d12fdd29a7335dc1f6f6e12eed48'], + }), + ('tsne', '0.1-3.1', { + 'checksums': ['14abc65bc0a3f3ed63c04dda19620e483a21d1f5f33feb74aba9f3221434d888'], + }), + ('sn', '2.1.1', { + 'checksums': ['f9f6b56d91dc7cb18dc8308d0875b9648c90b268d1aaf8f4c5164ff016df22bd'], + }), + ('tclust', '1.5-5', { + 'checksums': ['fc8dbf2626cab50a06e037423fa005431202edd6782ea770c9a002abb30e5496'], + }), + ('ranger', '0.16.0', { + 'checksums': ['0395f93afdb807a7882c1fa8f183a26a871c5168ea0903566951298ef1138589'], + }), + ('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-13', { + 'checksums': ['5e356189885390f47f21eedfb93726e2920b679da480a07823c44012b689aaa5'], + }), + ('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.6', { + 'checksums': ['2d9b2c5330d11a62384b4c0c1c012be34806b48683898045a4a40fdb9a8e1bba'], + }), + ('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.9', { + 'checksums': ['04398a620d7e383793e2e8e139e680289138294675be378c8d78a7e9aeee674c'], + }), + ('glmmTMB', '1.1.8', { + 'checksums': ['4248f6c37a2f82543bc0160c71d6d409ff742a4b1b29b417a42f34460489bd14'], + }), + ('gmp', '0.7-3', { + 'checksums': ['606d0f7fbbf81ad61dcfa5e83002fc274a5ebf6b4ff5c9a9b69f141f886ac665'], + }), + ('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.5', { + 'checksums': ['e20139794ad1a8c7d7fdffb8dac068c6fbdc8f0b65929341cb5c4d2ff1f98cc6'], + }), + ('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-26', { + 'checksums': ['9a8553b5ab51f3aa929ce80597b0b5cecd8a8bdb2ea3c578edd1c608c5c6438c'], + }), + ('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.7', { + 'checksums': ['330fc251ebe6901a6fbf931457943ee113bc882f786b2b14d837cd59f4327d1d'], + }), + ('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', '2.0', { + 'checksums': ['88f35521b755ed73aebc7d4139ed149487731cdd8a97c0efa4c048b65dafe84b'], + }), + ('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.1', { + 'checksums': ['b5f2496e596e3fd140ace69c4837085e13f3abb850f5eb57d496380691fdd117'], + }), + ('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.11', { + 'checksums': ['b08d6cae4fc17575adf5df0113ea5f4f819bb2c7f87987e0d66c8eabfc933fa4'], + }), + ('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-8', { + 'checksums': ['6a06440d4b58e8a7f122747d92046ff40da4bb58a20bf642228a648a0c826ea7'], + }), + ('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-13', { + 'checksums': ['7e5d312fca8029d746f60e7d9e701129561942f97dfc33b036b123f159d69a4c'], + }), + ('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.1', { + 'checksums': ['d92a0cf819fe4c08b8eb17f5e03275c8accde7f3b54f990cbba5ab926575b60b'], + }), + ('emdbook', '1.3.13', { + 'checksums': ['26044b7ea1b42304b4dfde48afa94dd487acf979da4db2bf670ba41222083c19'], + }), + ('SOAR', '0.99-11', { + 'checksums': ['d5a0fba3664087308ce5295a1d57d10bad149eb9771b4fe67478deae4b7f68d8'], + }), + ('rasterVis', '0.51.6', { + 'checksums': ['61bd0d19d045b50c6764f3a7c95ce1e734af9e5f964449825d002afe02109489'], + }), + ('tictoc', '1.2', { + 'checksums': ['f05ea4b4142a90b0dc5d10356be3748625ef86bbd0e4399c56455654165ff20c'], + }), + ('ISOcodes', '2023.12.07', { + 'checksums': ['73631fec5822d256e91d7b929ab7f5d7c2312749990d4031f65e0408c366d90e'], + }), + ('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-15', { + 'checksums': ['71b50f78e4d7b95b5c3663d766eb15ad2061cc49d58436dc3aa56960cdaf77d0'], + }), + ('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.1', { + 'installopts': '--configure-vars="INCLUDE_DIR=$CPATH LIB_DIR=$LIBRARY_PATH"', + 'preinstallopts': "export CPATH=$EBROOTNODEJS/include/node:$CPATH && ", + 'checksums': ['5b6dd6133d83f3cc7297d0369706070f26c376d6ce6fb4cfcf2ad5308abd3a89'], + }), + ('QuickJSR', '1.0.8', { + 'checksums': ['7697faa26d7c67b7d218ae6be74c86e7249842d6f0ea8a3932920825398a9e81'], + }), + ('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'], + }), + ('leiden', '0.4.3.1', { + 'checksums': ['a9ecbbcfa2724d8fdd0133af569278e036b25b6e2cbb23d453092cc6b3fc30e2'], + }), + ('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-3', { + 'checksums': ['4055b5f1fc12917b9f812c056e6a2dbf23bbd0169e468f567306ddf29d699f7a'], + }), + ('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.6.1', { + 'checksums': ['f23dd6b6ca7a58ef3236d8bdc7b4928591507cf41133fc8053d32ab91b3d3d60'], + }), + ('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-25', { + 'checksums': ['39a78228ead17c92bd88fe5f959c888412a22a7cbbc0edfa9c09072b4182d870'], + }), + ('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'], + }), + ('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.52', { + 'checksums': ['94997df960b572a46c625fac5338099d0df51bb08c97809d5b11fa6ff34af790'], + }), + ('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.3', { + 'checksums': ['dc6447d311cc1edda581bb696252d9062363d03e0a6227825868f81e0833d56d'], + }), + ('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.1', { + 'checksums': ['a59405c8b08f8072210b2e2817b8d0fcc52c8c2ecbb14533695035ba75a87e65'], + }), + ('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.12', { + 'checksums': ['e1843452ff4184b8d3bc5168732c0c65d3fce11f0df9fcf92173a22ef92e66c4'], + }), + ('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.34', { + 'checksums': ['fdcf875e6440fd049a78171db2594d6d963c484eca9387f852c5c8b3208a5bdf'], + }), + ('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.6', { + 'checksums': ['0b28382af11cebf675cdffc66990e011d751e9703d27e2ed41895ead5e667fdb'], + }), + ('neuralnet', '1.44.2', { + 'checksums': ['5f66cd255db633322c0bd158b9320cac5ceff2d56f93e4864a0540f936028826'], + }), + ('PCAmatchR', '0.3.3', { + 'checksums': ['5dc9d8bb4c0020b5e51a53a4fa71afa9adc6b907ea618b231f5cfc2877a49779'], + }), + ('origami', '1.0.7', { + 'checksums': ['b44034541ac358e0686682684c40e9a1de8d78c7913e56e4d3dbe41a2a55c62c'], + }), + ('hal9001', '0.4.6', { + 'checksums': ['1123288b603f97de98b42178ab5b4809536f64d7884a46b829795245eacd08dd'], + }), + ('cobalt', '4.5.2', { + 'checksums': ['f15a2113d837ecd59f011603a31afde411b9315b6399793861d308ab72716ec9'], + }), + ('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.7', { + 'checksums': ['4fb9fa3a8eae9ea80277ca3f256947d6f9485ab66ad2e3bbe429a586e79eda12'], + }), + ('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.22', { + 'checksums': ['b9a9a2004f4c008d665afbe617f4e4b45e57dc70e303c8ec341aa5a51fbb1210'], + }), + ('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.1', { + 'checksums': ['01c53031cb6456d08bdcd6fed92ec76feff27a8865de47f64781dcaad771dabd'], + }), + ('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.7', { + 'checksums': ['6c854941a96822d28f2a25d5c205483b86b547b364df1c2e83d17febc8bbfb6b'], + }), + ('genoPlotR', '0.8.11', { + 'checksums': ['f127f7fe8b19c899ecfdf98bf69d2e18926afb593a72fc40097acca66d401607'], + }), + ('VineCopula', '2.5.0', { + 'checksums': ['51b99e6fe0a1f4c32c860fc24b0164f0ade5d81aee7235e0ef5b5256e2115b68'], + }), + ('Rmpfr', '0.9-4', { + 'checksums': ['cec798f46e6331ef90bf04ee0338cb60d5f566e3f15c4995a2ffc6b504a1a8bb'], + }), + ('scam', '1.2-14', { + 'checksums': ['cc5086aaab35d0e1969760af191ed7e76f97b65a26a9be623ac8cf0c45a93771'], + }), + ('copula', '1.1-3', { + 'checksums': ['9b196cb4f1d6faa46ae6f80a4639b4044c98aaf9dcc02face6e04a51003677a6'], + }), + ('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.11-1', { + 'checksums': ['e2d71c2ee4696dc39e44b58099be5d5dc8bf0600cc663315ee76f33884354b3f'], + }), + ('dcurver', '0.9.2', { + 'checksums': ['cc6c55090d3607910515981ea0c7221e40e7a29e0da0c5a5f42c3847012290ec'], + }), + ('mirt', '1.41', { + 'checksums': ['d01b2d2e8caf0f1569f1db9138839e698e17c46020dfaaab8a5496f649c6a863'], + }), + ('rpf', '1.0.14', { + 'checksums': ['e4bb090a810ec4e70a23547f95e1e07ce0229e38fbbbbe22abfad98e9b33f796'], + }), + ('OpenMx', '2.21.11', { + 'checksums': ['152570b9cdb2d6b91f309b352458ed1b29ae2f7ce1f97c091f84c617a14071cc'], + }), + ('matlab', '1.0.4', { + 'checksums': ['1988a2220703444a575f2bad4eb090a0da71478599eb53081dd7237b7ec216ea'], + }), + ('FactorCopula', '0.9.3', { + 'checksums': ['df1675bb96431417cdbb9000ab80e15e12d82c8ed9809eeb3d7fe7b4855178d3'], + }), + ('rpact', '3.4.0', { + 'checksums': ['447e142f53437c070ad11b04a7d549207635114312147f358249be0d49b83674'], + }), + ('ldbounds', '2.0.2', { + 'checksums': ['a98d8498e46fd814957e7d47a6bf3d27649885ed840c0753469f268b8942bda7'], + }), + ('catlearn', '1.0', { + 'checksums': ['c6ef66257b8a6968599876f53bd431b5d836f125b32cdb829b53fb972ffeffaf'], + }), + ('MetaUtility', '2.1.2', { + 'checksums': ['e38c21588c239aa8926e64d916aa0f3b04108c2992f0e801095e4c7920b9ad5d'], + }), + ('EValue', '4.1.3', { + 'checksums': ['52a8d4df8ddc80eddf7c2f6684ed6f0fd71f3bd1bfc096ed07cfe875a367e446'], + }), + ('dagitty', '0.3-4', { + 'checksums': ['796f1424fc75800f1818f427809730f43eb798614ac570af1c301e951b2d3c82'], + }), + ('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.2.0', { + 'checksums': ['a63c7d7cbbc5d183e8f919552e9d73044e0a89660856e80861a00eb5d25ac7b5'], + }), + ('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.3', { + 'checksums': ['3fea881f6edfae76016d9135a57eb690a5eedf91a2d3afada6b378352aa75017'], + }), + ('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-12', { + 'checksums': ['56f8b1bdb392f8fb679a343b2ad5b4656c4f21d4ead85d6d81900d2f8b63ceea'], + }), + ('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.12.0', { + 'checksums': ['d569f83e059f9e4836bd513f92706fb8a614300f744dcc47bf86e8dafd8e776d'], + }), + ('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.2.0', { + 'checksums': ['51243a1d7843dbb3968e7725c2266e1d68dcec43b919c320033f611ff9ca7f3c'], + }), + ('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-25', { + 'checksums': ['ff22d4a633957479e0ecdb1c0223df09f9321017aade6a28b2f264fe7bbd8e90'], + }), + ('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.3', { + 'checksums': ['f0a8564e6f9127f4d1e05cf5a5f36b4e244aee0008e27473e504c63873ef0a54'], + }), + ('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.5', { + 'checksums': ['8cb46da05b87440aadf6958baa37dd9b62d526c558622285146ea7cc4b51b894'], + }), + ('flextable', '0.9.4', { + 'checksums': ['55ad11660325cf470cedf532df774f99748583eb53c0162e2dede8e1c3539ab6'], + }), + ('ridge', '3.3', { + 'checksums': ['5c2daecf6f97aa099ef5fa54f8448518c4f2ed6e44dd29fc60621a70721c60f5'], + }), +] + +modextrapaths = {'R_LIBS_SITE': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': ['abind', 'base64', 'calibrate'], +} + +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 + diff --git a/easybuild/easyconfigs/r/R/R-4.3.2-gfbf-2023a.eb b/easybuild/easyconfigs/r/R/R-4.3.2-gfbf-2023a.eb new file mode 100644 index 00000000000..ed664162bf5 --- /dev/null +++ b/easybuild/easyconfigs/r/R/R-4.3.2-gfbf-2023a.eb @@ -0,0 +1,375 @@ +name = 'R' +version = '4.3.2' + +homepage = 'https://www.r-project.org/' +description = """R is a free software environment for statistical computing + and graphics.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +source_urls = ['https://cloud.r-project.org/src/base/R-%(version_major)s'] +sources = [SOURCE_TAR_GZ] +checksums = ['b3f5760ac2eee8026a3f0eefcb25b47723d978038eee8e844762094c860c452a'] + +builddependencies = [ + ('pkgconf', '1.9.5'), + ('Autotools', '20220317'), +] +dependencies = [ + ('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), + ('libgit2', '1.7.1'), + ('OpenSSL', '1.1', '', SYSTEM), + ('cURL', '8.0.1'), + ('Tk', '8.6.13'), # for tcltk + ('HarfBuzz', '5.3.1'), # for textshaping + ('FriBidi', '1.0.12'), # for textshaping + +] + +# 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_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 = [ + # include packages that are part of the base installation of R, + # both to make sure they are available (via sanity check), + # and to be able to pass the check for required dependencies when installing extensions in parallel + 'base', + 'compiler', + 'datasets', + 'graphics', + 'grDevices', + 'grid', + 'methods', + 'parallel', + 'splines', + 'stats', + 'stats4', + 'tcltk', + 'tools', + 'utils', + ('rlang', '1.1.2', { + 'checksums': ['2a0ee1dc6e5c59b283c32db5e74e869922a336197cb406fe92622b6ec66f8092'], + }), + ('Rcpp', '1.0.11', { + 'checksums': ['df757c3068599c6c05367900bcad93547ba3422d59802dbaca20fd74d4d2fa5f'], + }), + ('R6', '2.5.1', { + 'checksums': ['8d92bd29c2ed7bf15f2778618ffe4a95556193d21d8431a7f75e7e5fc102bf48'], + }), + ('cli', '3.6.1', { + 'checksums': ['be3006cec7e67f9ae25e21b4658c4bec680038c2ef7467df5f14da3311a05e36'], + }), + ('base64enc', '0.1-3', { + 'checksums': ['6d856d8a364bcdc499a0bf38bfd283b7c743d08f0b288174fba7dbf0a04b688d'], + }), + ('rprojroot', '2.0.4', { + 'checksums': ['b5f463fb25a24dac7a4ca916be57dbe22b5262e1f41e53871ca83e57d4336e99'], + }), + ('xfun', '0.41', { + 'checksums': ['2374c3b8f141f1e5ff01b291d8aa5c3dc807dd8e99ab4dc7a048c9534a7e3b02'], + }), + ('commonmark', '1.9.0', { + 'checksums': ['6dd01a5a26c8d436486abf69c2f6ad0f8dd1c811f575c31983aeb4dbd376548f'], + }), + ('highr', '0.10', { + 'checksums': ['ec55bc1ff66390ed66806dc2a7b6c17dbfd089b3d73fe2e369017f8cb4bc347b'], + }), + ('digest', '0.6.33', { + 'checksums': ['be702c886b1639be7eda4ea25a4261b30ce418c580f79bd78ec8d6cb4d327819'], + }), + ('desc', '1.4.2', { + 'checksums': ['758acf14be478c09ba7e84ade3a7ce512becf35d44e5e6a997b932065f2a227c'], + }), + ('ellipsis', '0.3.2', { + 'checksums': ['a90266e5eb59c7f419774d5c6d6bd5e09701a26c9218c5933c9bce6765aa1558'], + }), + ('prettyunits', '1.2.0', { + 'checksums': ['f059f27e2a5c82e351fe05b87ad712f7afc273c651450453f59d99af5deeacea'], + }), + ('crayon', '1.5.2', { + 'checksums': ['70a9a505b5b3c0ee6682ad8b965e28b7e24d9f942160d0a2bad18eec22b45a7a'], + }), + ('stringi', '1.7.12', { + 'checksums': ['efe8ac2900001f986a75db5641fbb24587a6d23de274a6a85c39dfa58921e009'], + }), + ('magrittr', '2.0.3', { + 'checksums': ['a2bff83f792a1acb801bfe6330bb62724c74d5308832f2cb6a6178336ace55d2'], + }), + ('evaluate', '0.23', { + 'checksums': ['c9cf9c37502b8fbfa78e4eb96b8c3d1789060e49505c86c07cb7476da804a45c'], + }), + ('ps', '1.7.5', { + 'checksums': ['1abc3ae3c55797b994973f7e43bf5c7bbb4da649a0dcfad36675e196dba4cb4e'], + }), + ('processx', '3.8.2', { + 'checksums': ['e91b87af5b23c14b71003ec880f749dca81fd74f0601ab59ea1847c7fe857ecd'], + }), + ('callr', '3.7.3', { + 'checksums': ['567bfedf073a1d4c5785f0553341608a214938110567b9a6495ff20ebb2fd04e'], + }), + ('pkgbuild', '1.4.2', { + 'checksums': ['2334a245d75420b2adf9f217a6bc4a5f7faaa4244a6aac2b774b26f199fc82c5'], + }), + ('fs', '1.6.3', { + 'checksums': ['fa82061e50d7a4d94b7e404f9f2b699e75ae8fbfb575fabdfc2c39f536c0f971'], + }), + ('utf8', '1.2.4', { + 'checksums': ['418f824bbd9cd868d2d8a0d4345545c62151d321224cdffca8b1ffd98a167b7d'], + }), + ('fansi', '1.0.5', { + 'checksums': ['c616ce357fbfd43253c366da578549a38066459058c22fb99c82fc05992e23f6'], + }), + ('pkgconfig', '2.0.3', { + 'checksums': ['330fef440ffeb842a7dcfffc8303743f1feae83e8d6131078b5a44ff11bc3850'], + }), + ('withr', '2.5.2', { + 'checksums': ['d5b6fa6d728fda5201310d6ad5921a43aae1c23029c25334bfc1e54cb13d4205'], + }), + ('glue', '1.6.2', { + 'checksums': ['9da518f12be584c90e75fe8e07f711ee3f6fc0d03d817f72c25dc0f66499fdbf'], + }), + ('rstudioapi', '0.15.0', { + 'checksums': ['935bc81dca37d3d6e77982bfe6e7fbd779e8606e5b7e00d0ba4c80fec0416ccf'], + }), + ('pkgload', '1.3.3', { + 'checksums': ['b0898122876479cc4a35cd566654b3a7b50f8ac105565dbf3f8b9d4283816959'], + }), + ('fastmap', '1.1.1', { + 'checksums': ['3623809dd016ae8abd235200ba7834effc4b916915a059deb76044137c5c7173'], + }), + ('htmltools', '0.5.7', { + 'checksums': ['ecb0d82619063f49e4d001c44fcc1b811a06928fd66c2bb8c86632798d98b386'], + }), + ('yaml', '2.3.7', { + 'checksums': ['d20cb219e0f9c48aba02f132f81cfa9ecda5e22c925e36726840218ed56680ab'], + }), + ('knitr', '1.45', { + 'checksums': ['ee2edea53bc53efa51d131ab5a0b0c829c0f950b79d3c6ee34705354bf7584fb'], + }), + ('mime', '0.12', { + 'checksums': ['a9001051d6c1e556e881910b1816b42872a1ee41ab76d0040ce66a27135e3849'], + }), + ('praise', '1.0.0', { + 'checksums': ['5c035e74fd05dfa59b03afe0d5f4c53fbf34144e175e90c53d09c6baedf5debd'], + }), + ('brio', '1.1.3', { + 'checksums': ['eaa89041856189bee545bf1c42c7920a0bb0f1f70bb477487c467ee3e8fedcc6'], + }), + ('jsonlite', '1.8.7', { + 'checksums': ['7d42b7784b72d728698ea02b97818df51e2015ffa39fec2eaa2400771b0f601c'], + }), + ('lifecycle', '1.0.3', { + 'checksums': ['6459fdc3211585c0cdf120427579c12149b02161efe273a64b825c05e9aa69c2'], + }), + ('vctrs', '0.6.4', { + 'checksums': ['8a80192356e724d21bd89a0ce3e5835856fd5bb1651e7fc205c6fee58fd001c8'], + }), + ('stringr', '1.5.0', { + 'checksums': ['52b159d7700a139111b4caf939e7c9c6ab3e01185181400d70a74c552826633a'], + }), + ('pillar', '1.9.0', { + 'checksums': ['f23eb486c087f864c2b4072d5cba01d5bebf2f554118bcba6886d8dbceb87acc'], + }), + ('tibble', '3.2.1', { + 'checksums': ['65a72d0c557fd6e7c510d150c935ed6ced5db7d05fc20236b370f11428372131'], + }), + ('diffobj', '0.3.5', { + 'checksums': ['d860a79b1d4c9e369282d7391b539fe89228954854a65ba47181407c53e3cf60'], + }), + ('rematch2', '2.1.2', { + 'checksums': ['fe9cbfe99dd7731a0a2a310900d999f80e7486775b67f3f8f388c30737faf7bb'], + }), + ('waldo', '0.5.2', { + 'checksums': ['82cdae1ab2c5e7e5dbf5c6bdf832020b46e152732053fb45de7c9a81afdf2e05'], + }), + ('testthat', '3.2.0', { + 'checksums': ['5b0be53295fe509042e48711df091f7021e23512d1339a4f6f6d9f36d145650e'], + }), + ('xml2', '1.3.5', { + 'checksums': ['3d6a10a7ab76e0cc024b73d3fb8af65a662efe0e707681d9ffc2b3ff1f09e282'], + }), + ('curl', '5.1.0', { + 'checksums': ['57218da84b85bd01ce7daa4bca3e271eda1bf688e0cdb211c397ccb272ecba97'], + }), + ('sys', '3.4.2', { + 'checksums': ['b7bdce66f0fb681830ea6fb77b5a2c6babb43920abb1eddc733f95c0a63ce5b3'], + }), + ('askpass', '1.2.0', { + 'checksums': ['b922369781934d0ffc8d0c0177e8ace56796c2e6a726f65e460c16f792592cef'], + }), + ('openssl', '2.1.1', { + 'checksums': ['faa726f9af2a97d5fa1e1044f4a38ee2edd4c81f0beb5830f6a36ff249b64bdc'], + }), + ('httr', '1.4.7', { + 'checksums': ['1555e6c2fb67bd38ff11b479f74aa287b2d93f4add487aec53b836ff07de3a3a'], + }), + ('jquerylib', '0.1.4', { + 'checksums': ['f0bcc11dcde3a6ff180277e45c24642d3da3c8690900e38f44495efbc9064411'], + }), + ('rappdirs', '0.3.3', { + 'checksums': ['49959f65b45b0b189a2792d6c1339bef59674ecae92f8c2ed9f26ff9e488c184'], + }), + ('sass', '0.4.7', { + 'checksums': ['717a08b63615a4fd9e494f775c33f0f965db83677cf1cc37849afc3da1c5e9ee'], + }), + ('purrr', '1.0.2', { + 'checksums': ['2c1bc6bb88433dff0892b41136f2f5c23573b335ff35a4775c72aa57b48bbb63'], + }), + ('cachem', '1.0.8', { + 'checksums': ['ea9ca919fe615dce8770758ecc2fc88ac99074f66ff1cde3a0b95d40007f45c2'], + }), + ('memoise', '2.0.1', { + 'checksums': ['f85034ee98c8ca07fb3cd826142c1cd1e1e5747075a94c75a45783bbc4fe2deb'], + }), + ('bslib', '0.5.1', { + 'checksums': ['b175612322e3ba929cf67a9261dd253346a981ce15bbb63d4a6874f54d5ef00e'], + }), + ('fontawesome', '0.5.2', { + 'checksums': ['da3de2a9717084d1400d48edd783f06c66b8c910ce9c8d753d1b7d99be1c5cc9'], + }), + ('tinytex', '0.48', { + 'checksums': ['1d0b989fa781a50a560b8d785f20c28bffc63b5b2e0fcd937c57fdd61d597695'], + }), + ('rmarkdown', '2.25', { + 'checksums': ['06e4662666fe018fbe3bef3531280a461c7bc24bb00f34b9d4c7b08d52210155'], + }), + ('downlit', '0.4.3', { + 'checksums': ['6c0fbe98ece8a511973263f8e8a35574df0cfc45edea7452b53b8d326436b3bd'], + }), + ('cpp11', '0.4.6', { + 'checksums': ['d1c56954671d3398078ad52aaa4efce0864e8166465c8c5e5e9a1e40599055b3'], + }), + ('systemfonts', '1.0.5', { + 'checksums': ['840ffb1d8293739c79cbc868101d9f9a84f4a9de4c7b3625e30af2fb63e15823'], + }), + ('textshaping', '0.3.7', { + 'checksums': ['fa924dbe1fb4138b80d6c26ee42f4203843f1d34f77e2a5e42514e6fcc97ec42'], + }), + ('ragg', '1.2.6', { + 'checksums': ['1014dc493ab52e98e4114fbabfca753bebd4d64db7ef7946bd064fb404e0f7c7'], + }), + ('whisker', '0.4.1', { + 'checksums': ['bf5151494508032f68ac41e211bda80da9087c65c7068ffdd12f16669bf1f2bc'], + }), + ('pkgdown', '2.0.7', { + 'checksums': ['f33872869dfa8319182d87e90eab3245ff69293b3b791471bf9538afb81b356a'], + }), + ('htmlwidgets', '1.6.2', { + 'checksums': ['7fda1672a4c0fbc203c790677b6ee7c40d2c2d72be4f6772f75288fc712b10bc'], + }), + ('profvis', '0.3.8', { + 'checksums': ['ec02c75bc9907a73564e691adfa8e06651ca0bd73b7915412960231cd265b4b2'], + }), + ('urlchecker', '1.0.1', { + 'checksums': ['62165ddbe1b748b58c71a50c8f07fdde6f3d19a7b39787b9fa2b4f9216250318'], + }), + ('later', '1.3.1', { + 'checksums': ['23eed681f0b9eacebbc3c6a5ba14ee0b676a4bf6e69af194c5a36edfe11464ac'], + }), + ('promises', '1.2.1', { + 'checksums': ['3ce0a26df39ea27536877ec6db13083b2952108245024baa8b40ae856d2ce5be'], + }), + ('xtable', '1.8-4', { + 'checksums': ['5abec0e8c27865ef0880f1d19c9f9ca7cc0fd24eadaa72bcd270c3fb4075fd1c'], + }), + ('httpuv', '1.6.12', { + 'checksums': ['b1d972b1c240702c38cb844a1040670d62876abf462256764b49c120a52f5e74'], + }), + ('sourcetools', '0.1.7-1', { + 'checksums': ['96812bdb7a0dd99690d84e4b0a3def91389e4290f53f01919ef28a50554e31d1'], + }), + ('shiny', '1.7.5.1', { + 'checksums': ['2023d91cc8039580752f6ecc5010d4419b7d928724ce5b10b93a3b48e1e6fb46'], + }), + ('miniUI', '0.1.1.1', { + 'checksums': ['452b41133289f630d8026507263744e385908ca025e9a7976925c1539816b0c0'], + }), + ('brew', '1.0-8', { + 'checksums': ['11652d5a7042d645cc5be5f9f97ff4d46083cea7d3ad2dd6ad1570b52c097826'], + }), + ('roxygen2', '7.2.3', { + 'checksums': ['d844fab977d2575ab942fa1309ac7ff67f35f099a75d8b41c79efe6ea10416da'], + }), + ('rversions', '2.1.2', { + 'checksums': ['de5818233e8271132fe8ea70145618950b35786e0d2f270e39bf3338f3b8b160'], + }), + ('sessioninfo', '1.2.2', { + 'checksums': ['f56283857c53ac8691e3747ed48fe03e893d8ff348235bff7364658bcfb0c7cb'], + }), + ('xopen', '1.0.0', { + 'checksums': ['e207603844d69c226142be95281ba2f4a056b9d8cbfae7791ba60535637b3bef'], + }), + ('rcmdcheck', '1.4.0', { + 'checksums': ['bbd4ef7d514b8c2076196a7c4a6041d34623d55fbe73f2771758ce61fd32c9d0'], + }), + ('remotes', '2.4.2.1', { + 'checksums': ['7ba8ca9a652d60bcdea25dbd43bd1e055e97b031c05e0bc3fac43bf245c1209d'], + }), + ('clipr', '0.8.0', { + 'checksums': ['32c2931992fbec9c31b71de3e27059f1cbb45b4b1f45fd42e0e8dbcec6de3be9'], + }), + ('ini', '0.3.1', { + 'checksums': ['7b191a54019c8c52d6c2211c14878c95564154ec4865f57007953742868cd813'], + }), + ('gitcreds', '0.1.2', { + 'checksums': ['41c6abcca5635062b123ffb5af2794770eca5ebd97b05c5a64b24fa1c803c75d'], + }), + ('httr2', '0.2.3', { + 'checksums': ['352032029512f28f6f440ace0078e859ad3945d6b20841963b372523b6974b3d'], + }), + ('gh', '1.4.0', { + 'checksums': ['68c69fcd18429b378e639a09652465a4e92b7b5b5704804d0c5b1ca2b9b58b71'], + }), + ('credentials', '2.0.1', { + 'checksums': ['2c7cfc45bd4afa9a2c2b85d43e907b212da3468781e1b617737bd095253c358b'], + }), + ('zip', '2.3.0', { + 'checksums': ['33eba844922af9981732ee6ec1582d46cf04c562344f09a0f0f14a22c6f74543'], + }), + ('gert', '2.0.0', { + 'checksums': ['7c147c3740e7ece8764e6197f311d84e6191fddead1d96fbbfb29816ef5d6391'], + }), + ('usethis', '2.2.2', { + 'checksums': ['d9d8c1a789ae6fd0e717e174ac29da2e4a925df321e5cc0bfb3d65c87e4cbe46'], + }), + ('devtools', '2.4.5', { + 'checksums': ['38160ebd839acdec7ebf0699a085b4ab1ebd5500d3c57a9fa7ae484f1909904b'], + }), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/r/RASPA2/RASPA2-2.0.47-foss-2022a.eb b/easybuild/easyconfigs/r/RASPA2/RASPA2-2.0.47-foss-2022a.eb new file mode 100644 index 00000000000..e9a6ba45203 --- /dev/null +++ b/easybuild/easyconfigs/r/RASPA2/RASPA2-2.0.47-foss-2022a.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'RASPA2' +version = '2.0.47' + +homepage = 'https://iraspa.org/raspa/' +description = """RASPA is a software package for simulating adsorption and diffusion of +molecules in flexible nanoporous materials.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = ['https://github.com/iRASPA/RASPA2/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['1a14524f95ab86e7a2910b53641262ec98ec23f794f1c3665982c32efc1997ed'] + +builddependencies = [ + ('Autotools', '20220317') +] + +preconfigopts = 'rm -rf autom4te.cache && ' +preconfigopts += 'mkdir m4 && ' +preconfigopts += 'aclocal && ' +preconfigopts += 'autoreconf -if && ' + +sanity_check_paths = { + 'files': ['bin/simulate', 'lib/libraspa2.%s' % SHLIB_EXT], + 'dirs': [] +} + +sanity_check_commands = ['simulate -h'] + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/r/RFdiffusion/RFdiffusion-1.1.0-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/r/RFdiffusion/RFdiffusion-1.1.0-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..9ebc11b3bd2 --- /dev/null +++ b/easybuild/easyconfigs/r/RFdiffusion/RFdiffusion-1.1.0-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,61 @@ +easyblock = 'PythonBundle' + +name = 'RFdiffusion' +version = '1.1.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/RosettaCommons/RFdiffusion' +description = """ +RFdiffusion is an open source method for structure generation, with or without conditional information +(a motif, target etc). It can perform a whole range of protein design challenges as we have outlined +in the RFdiffusion paper. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('e3nn', '0.3.3', versionsuffix), + ('wandb', '0.13.4'), +] + +use_pip = True + +exts_list = [ + ('pynvml', '11.0.0', { + 'checksums': ['d5fc4a22d355b40c341d6ba0aa888a2d4d2253177d243900f8401b7e6cacb1bb'], + }), + ('dllogger', '1.0.0', { + 'source_urls': ['https://github.com/NVIDIA/dllogger/archive/refs/tags'], + 'sources': ['v%(version)s.zip'], + 'checksums': ['07d0cd9b9b56f454f0c186a0889137e9f94e1979fca3d35911967c874c93c191'], + }), + ('decorator', '5.1.1', { + 'checksums': ['637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330'], + }), + ('se3-transformer', version, { + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/RosettaCommons/RFdiffusion/archive/refs/tags'], + 'start_dir': 'env/SE3Transformer', + 'checksums': ['57d82f0d43540c2912eda3f1d34ad90b13db14966ee069c427e217fe78f0297f'], + }), + (name, version, { + 'patches': ['%(name)s-%(version)s_fix-find-packages.patch'], + 'sources': { + 'filename': '%(name)s-%(version)s.tar.gz', + 'download_filename': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/RosettaCommons/RFdiffusion/archive/refs/tags'], + }, + 'checksums': [ + {'RFdiffusion-1.1.0.tar.gz': '57d82f0d43540c2912eda3f1d34ad90b13db14966ee069c427e217fe78f0297f'}, + {'RFdiffusion-1.1.0_fix-find-packages.patch': + 'e25da7f476acacb6af58bd84f40aca712538900b0b48532b22f9a133d6886da2'}, + ], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/RapidJSON/RapidJSON-1.1.0-20230928-GCCcore-12.3.0.eb b/easybuild/easyconfigs/r/RapidJSON/RapidJSON-1.1.0-20230928-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..92555adb82a --- /dev/null +++ b/easybuild/easyconfigs/r/RapidJSON/RapidJSON-1.1.0-20230928-GCCcore-12.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'CMakeMake' + +name = 'RapidJSON' +# no new release since Aug'16 so using latest commit; +# see also https://github.com/Tencent/rapidjson/issues/2202 +version = '1.1.0-20230928' +local_commit = 'f9d5341' + +homepage = 'https://rapidjson.org' +description = "A fast JSON parser/generator for C++ with both SAX/DOM style API" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/Tencent/%(namelower)s/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': 'v%(version)s.tar.gz'}] +checksums = ['2b521dba5c22eaae6e6e7d4d304cb317e2cf8c687c70046b02792c02f78c127e'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), +] + +# strip out hardcoded use of -march=native, EasyBuild should be in control of this +preconfigopts = "sed -i 's/-march=native//g' ../rapidjson-*/CMakeLists.txt && " + +sanity_check_paths = { + 'files': ['lib/pkgconfig/%(name)s.pc'], + 'dirs': ['include/%(namelower)s', 'lib/cmake', 'share'], +} + +moduleclass = 'lib' 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 55% 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..c1b34919ce4 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,21 @@ 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' 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'] +sources = ['%(name)s-param-%(version)s.tar.gz'] +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..7c566136239 --- /dev/null +++ b/easybuild/easyconfigs/r/ReaxFF/ReaxFF-2.0-GCC-11.3.0-sim.eb @@ -0,0 +1,41 @@ +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' + +description = """ +simulation code of the REAXFF Reactive force field program +""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +sources = ['%(name)s-sim-%(version)s.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' diff --git a/easybuild/easyconfigs/r/Restrander/Restrander-20230713-GCCcore-12.2.0.eb b/easybuild/easyconfigs/r/Restrander/Restrander-20230713-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..4580daeecca --- /dev/null +++ b/easybuild/easyconfigs/r/Restrander/Restrander-20230713-GCCcore-12.2.0.eb @@ -0,0 +1,39 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +easyblock = 'MakeCp' + +name = 'Restrander' +# No release or tag, so using the date of the last commit +version = '20230713' +github_account = 'mritchielab' +local_commit = '54a61fa' + +homepage = "https://github.com/mritchielab/restrander" +description = "A fast, accurate program for orienting and quality-checking cDNA sequencing reads." + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = ['https://github.com/%(github_account)s/%(name)s/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['8b23c9992f81896b54d73c05b447f9002fe9482d848de16e1622e09961196237'] + +builddependencies = [ + ('binutils', '2.39'), +] + +files_to_copy = [ + (["restrander"], "bin/"), + 'README.md', + 'config', + 'figures', + 'LICENSE', +] + +sanity_check_paths = { + 'files': ['bin/restrander', 'README.md'], + 'dirs': ['config', 'figures'], +} + +sanity_check_commands = ['restrander --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/re2c/re2c-3.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/r/re2c/re2c-3.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..4db6f2daf45 --- /dev/null +++ b/easybuild/easyconfigs/r/re2c/re2c-3.1-GCCcore-13.2.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 're2c' +version = '3.1' + +homepage = 'https://re2c.org' +description = """re2c is a free and open-source lexer generator for C and C++. Its main goal is generating +fast lexers: at least as fast as their reasonably optimized hand-coded counterparts. Instead of using +traditional table-driven approach, re2c encodes the generated finite state automata directly in the form +of conditional jumps and comparisons.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://github.com/skvadrik/re2c/releases/download/%(version)s'] +sources = ['%(name)s-%(version)s.tar.xz'] +checksums = ['0ac299ad359e3f512b06a99397d025cfff81d3be34464ded0656f8a96676c029'] + +builddependencies = [ + ('binutils', '2.40'), + ('Python', '3.11.5') +] + +configopts = "--disable-rust" + +sanity_check_paths = { + 'files': ['bin/re2c'], + 'dirs': [], +} + +sanity_check_commands = ["re2c --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/SBCL/SBCL-2.3.11-GCCcore-11.3.0.eb b/easybuild/easyconfigs/s/SBCL/SBCL-2.3.11-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..958501f55a8 --- /dev/null +++ b/easybuild/easyconfigs/s/SBCL/SBCL-2.3.11-GCCcore-11.3.0.eb @@ -0,0 +1,46 @@ +easyblock = 'ConfigureMake' +name = 'SBCL' +version = '2.3.11' + +homepage = 'http://sbcl.sourceforge.net/' +description = """ +Steel Bank Common Lisp (SBCL) is a high performance Common Lisp compiler. It is +open source / free software, with a permissive license. In addition to the +compiler and runtime system for ANSI Common Lisp, it provides an interactive +environment including a debugger, a statistical profiler, a code coverage tool, +and many other extensions.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['%(namelower)s-%(version)s-source.tar.bz2'] +checksums = ['84beeb8d72c87897847fc0285adcb3fa4f481bdb39102c4fb9ab79684184ad29'] + +builddependencies = [ + ('binutils', '2.38'), + ('CCL', '1.12.2'), +] + +parallel = False +skipsteps = ['configure'] +local_prefixarg = '--prefix=%(installdir)s' + +# Build SBCL with Clozure CL +# Using the binary distribution of SBCL to build SBCL is not trivial because +# it needs GLIBC v2.28 +build_cmd = "sh make.sh" +buildopts = "%s --xc-host=ccl" % local_prefixarg + +install_cmd = "sh install.sh" +installopts = local_prefixarg + +sanity_check_paths = { + 'files': ['bin/sbcl'], + 'dirs': ['lib/sbcl'], +} + +sanity_check_commands = ["sbcl --help"] + +modextrapaths = {'SBCL_HOME': 'lib/sbcl'} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/s/SCENIC/SCENIC-1.3.0-foss-2022a-R-4.2.1.eb b/easybuild/easyconfigs/s/SCENIC/SCENIC-1.3.0-foss-2022a-R-4.2.1.eb new file mode 100644 index 00000000000..2d3db4d9748 --- /dev/null +++ b/easybuild/easyconfigs/s/SCENIC/SCENIC-1.3.0-foss-2022a-R-4.2.1.eb @@ -0,0 +1,26 @@ +easyblock = 'RPackage' + +name = 'SCENIC' +version = '1.3.0' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://scenic.aertslab.org' +description = "SCENIC Suite is a set of tools to study and decipher gene regulation." + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = ['https://github.com/aertslab/SCENIC/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['dcae14b1008cb11a34b03cd7c0830e2f00567bd073ff27da11d57501360965f8'] + +dependencies = [ + ('R', '4.2.1'), + ('R-bundle-Bioconductor', '3.15', versionsuffix), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['SCENIC'], +} + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/s/SCopeLoomR/SCopeLoomR-0.13.0_20220408-foss-2022a-R-4.2.1.eb b/easybuild/easyconfigs/s/SCopeLoomR/SCopeLoomR-0.13.0_20220408-foss-2022a-R-4.2.1.eb new file mode 100644 index 00000000000..8a5877d00bd --- /dev/null +++ b/easybuild/easyconfigs/s/SCopeLoomR/SCopeLoomR-0.13.0_20220408-foss-2022a-R-4.2.1.eb @@ -0,0 +1,48 @@ +easyblock = 'Bundle' + +name = 'SCopeLoomR' +local_commit = '20f4e0a' +version = '0.13.0_20220408' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://github.com/aertslab/SCopeLoomR' +description = """An R package (compatible with SCope) to create generic .loom files and extend them with other data +e.g.: SCENIC regulons, Seurat clusters and markers, ...""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('R', '4.2.1'), + ('HDF5', '1.12.2'), +] + +exts_defaultclass = 'RPackage' +exts_filter = ("R -q --no-save", "library(%(ext_name)s)") +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', +} + +exts_list = [ + ('rlist', '0.4.6.2', { + 'checksums': ['ebde658d897c8a27a90ebb892b9e2bad15e2ad75557a7352fb08cbb5604e0997'], + }), + (name, version, { + 'source_urls': ['https://github.com/aertslab/%(name)s/archive'], + 'sources': [{'download_filename': '%s.tar.gz' % local_commit, 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['4189f7d29d695139a96894f0549e68921ade9843f6dbbccb56cc9834fe889391'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +modextrapaths = {'R_LIBS_SITE': ''} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/SDL2/SDL2-2.28.5-GCCcore-13.2.0.eb b/easybuild/easyconfigs/s/SDL2/SDL2-2.28.5-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..5b5d1835fcb --- /dev/null +++ b/easybuild/easyconfigs/s/SDL2/SDL2-2.28.5-GCCcore-13.2.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'SDL2' +version = '2.28.5' + +homepage = 'https://www.libsdl.org/' +description = "SDL: Simple DirectMedia Layer, a cross-platform multimedia library" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://www.libsdl.org/release/'] +sources = [SOURCE_TAR_GZ] +checksums = ['332cb37d0be20cb9541739c61f79bae5a477427d79ae85e352089afdaf6666e4'] + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('X11', '20231019'), +] + +sanity_check_paths = { + 'files': ['bin/sdl2-config', 'lib/libSDL2.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'lib' 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..5d184b0d518 --- /dev/null +++ b/easybuild/easyconfigs/s/SEACells/SEACells-20230731-foss-2021a.eb @@ -0,0 +1,77 @@ +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'], + 'checksums': ['b75ddc264f0ba5615db7ba217daeb99701ad295353c45f9e95963337ceeeffb2'], + }), + ('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' 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 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' diff --git a/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-18.06.006-r8.eb b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-18.06.006-r8.eb new file mode 100644 index 00000000000..49cda6093eb --- /dev/null +++ b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-18.06.006-r8.eb @@ -0,0 +1,15 @@ +name = 'STAR-CCM+' +version = '18.06.006' +versionsuffix = '-r8' + +homepage = 'https://mdx.plm.automation.siemens.com/star-ccm-plus' +description = """STAR-CCM+ is a multiphysics computational fluid dynamics (CFD) software for the simulation of products +operating under real-world conditions.""" + +toolchain = SYSTEM + +download_instructions = 'Manually obtain tarball from Siemens' +sources = ['%%(name)s%%(version)s_01_linux-x86_64%s.tar.gz' % versionsuffix] +checksums = ['77a46b81e93d427a1c33b78fa9ae3fa0c1de4636c749e2f2692728b0f5bb1296'] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-18.06.006.eb b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-18.06.006.eb new file mode 100644 index 00000000000..7368da66b4e --- /dev/null +++ b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-18.06.006.eb @@ -0,0 +1,14 @@ +name = 'STAR-CCM+' +version = '18.06.006' + +homepage = 'https://mdx.plm.automation.siemens.com/star-ccm-plus' +description = """STAR-CCM+ is a multiphysics computational fluid dynamics (CFD) software for the simulation of products +operating under real-world conditions.""" + +toolchain = SYSTEM + +download_instructions = 'Manually obtain tarball from Siemens' +sources = ['%(name)s%(version)s_01_linux-x86_64.tar.gz'] +checksums = ['476b75b859612cf816ba62ac36fdf98b47dd606114c612dea6869031582db4a5'] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-2302-r8.eb b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-2302-r8.eb new file mode 100644 index 00000000000..ad6e29a31b6 --- /dev/null +++ b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-2302-r8.eb @@ -0,0 +1,18 @@ +easyblock = 'ModuleRC' + +name = 'STAR-CCM+' +version = '2302' +versionsuffix = '-r8' +local_version = '18.02.008' + +homepage = 'https://mdx.plm.automation.siemens.com/star-ccm-plus' +description = """STAR-CCM+ is a multiphysics computational fluid dynamics (CFD) software for the simulation of products +operating under real-world conditions.""" + +toolchain = SYSTEM + +dependencies = [('STAR-CCM+', local_version, versionsuffix)] + +check_version = False + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-2302.eb b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-2302.eb new file mode 100644 index 00000000000..3f1ac40dc79 --- /dev/null +++ b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-2302.eb @@ -0,0 +1,17 @@ +easyblock = 'ModuleRC' + +name = 'STAR-CCM+' +version = '2302' +local_version = '18.02.008' + +homepage = 'https://mdx.plm.automation.siemens.com/star-ccm-plus' +description = """STAR-CCM+ is a multiphysics computational fluid dynamics (CFD) software for the simulation of products +operating under real-world conditions.""" + +toolchain = SYSTEM + +dependencies = [('STAR-CCM+', local_version)] + +check_version = False + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-2310-r8.eb b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-2310-r8.eb new file mode 100644 index 00000000000..408462f98ca --- /dev/null +++ b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-2310-r8.eb @@ -0,0 +1,18 @@ +easyblock = 'ModuleRC' + +name = 'STAR-CCM+' +version = '2310' +versionsuffix = '-r8' +local_version = '18.06.006' + +homepage = 'https://mdx.plm.automation.siemens.com/star-ccm-plus' +description = """STAR-CCM+ is a multiphysics computational fluid dynamics (CFD) software for the simulation of products +operating under real-world conditions.""" + +toolchain = SYSTEM + +dependencies = [('STAR-CCM+', local_version, versionsuffix)] + +check_version = False + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-2310.eb b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-2310.eb new file mode 100644 index 00000000000..706662fbe6d --- /dev/null +++ b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-2310.eb @@ -0,0 +1,17 @@ +easyblock = 'ModuleRC' + +name = 'STAR-CCM+' +version = '2310' +local_version = '18.06.006' + +homepage = 'https://mdx.plm.automation.siemens.com/star-ccm-plus' +description = """STAR-CCM+ is a multiphysics computational fluid dynamics (CFD) software for the simulation of products +operating under real-world conditions.""" + +toolchain = SYSTEM + +dependencies = [('STAR-CCM+', local_version)] + +check_version = False + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/s/STAR/STAR-2.7.11a-GCC-12.2.0.eb b/easybuild/easyconfigs/s/STAR/STAR-2.7.11a-GCC-12.2.0.eb new file mode 100644 index 00000000000..42f094bb67b --- /dev/null +++ b/easybuild/easyconfigs/s/STAR/STAR-2.7.11a-GCC-12.2.0.eb @@ -0,0 +1,51 @@ +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# Based on STAR-2.7.7a-GCC-10.2.0.eb +# uploaded by J. Sassmannshausen +# modified by Thomas Eylenbosch + +easyblock = 'MakeCp' + +name = 'STAR' +version = '2.7.11a' + +homepage = 'https://github.com/alexdobin/STAR' +description = "STAR aligns RNA-seq reads to a reference genome using uncompressed suffix arrays." + +toolchain = {'name': 'GCC', 'version': '12.2.0'} +toolchainopts = {'openmp': True} + +github_account = 'alexdobin' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +patches = ['STAR-%(version)s_use-external-htslib.patch'] +checksums = [ + {'%(version)s.tar.gz': '542457b1a4fee73f27a581b1776e9f73ad2b4d7e790388b6dc71147bd039f99a'}, + {'STAR-%(version)s_use-external-htslib.patch': '2fdc3ed9372d983f77d861d6f16a60a553598358dce9ff8216f96eb20e63ce4e'}, +] + +dependencies = [ + ('HTSlib', '1.17'), + ('zlib', '1.2.12'), +] + +start_dir = 'source' + +buildopts = ' STAR && make STARlong' + +files_to_copy = [ + (['source/%(name)s', 'source/%(name)slong'], 'bin'), + 'CHANGES.md', 'doc', 'extras', 'LICENSE', 'README.md', 'RELEASEnotes.md', +] + +sanity_check_paths = { + 'files': ['bin/%(name)s', 'bin/%(name)slong'], + 'dirs': [], +} + +sanity_check_commands = [ + "STAR --help", + "STARlong --help", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SUPPA/SUPPA-2.3-20231005-foss-2022b.eb b/easybuild/easyconfigs/s/SUPPA/SUPPA-2.3-20231005-foss-2022b.eb new file mode 100644 index 00000000000..d27830b9c97 --- /dev/null +++ b/easybuild/easyconfigs/s/SUPPA/SUPPA-2.3-20231005-foss-2022b.eb @@ -0,0 +1,41 @@ +easyblock = 'Tarball' + +name = 'SUPPA' +version = '2.3-20231005' +local_commit = 'a5d5e89' + +homepage = 'https://github.com/comprna/SUPPA' +description = """Fast, accurate, and uncertainty-aware differential + splicing analysis across multiple conditions.""" + +toolchain = {'name': 'foss', 'version': '2022b'} + +github_account = 'comprna' +source_urls = [GITHUB_SOURCE] +sources = ['%s.tar.gz' % local_commit] +checksums = ['5e55911be2727c7abc7a4e3b6179f2f7cb0e3126bb443bce102fa7af97249e5d'] + +dependencies = [ + ('Python', '3.10.8'), + ('SciPy-bundle', '2023.02'), + ('statsmodels', '0.14.0'), + ('scikit-learn', '1.2.1'), +] + +postinstallcmds = ['cd %(installdir)s && mkdir bin && ln -r -s suppa.py bin/suppa.py && chmod a+x suppa.py'] + +fix_python_shebang_for = ['suppa.py'] + +modextrapaths = { + 'PATH': '', + 'PYTHONPATH': '', +} + +sanity_check_paths = { + 'files': ['bin/suppa.py'], + 'dirs': [], +} + +sanity_check_commands = ['suppa.py --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SYMMETRICA/SYMMETRICA-2.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/s/SYMMETRICA/SYMMETRICA-2.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..ef8e3284f2d --- /dev/null +++ b/easybuild/easyconfigs/s/SYMMETRICA/SYMMETRICA-2.0-GCCcore-11.3.0.eb @@ -0,0 +1,43 @@ +easyblock = 'MakeCp' + +name = 'SYMMETRICA' +version = '2.0' + +homepage = 'https://www.algorithm.uni-bayreuth.de/en/research/SYMMETRICA' +description = "Symmetrica is a Collection of C routines for representation theory." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = [homepage] +sources = [{'download_filename': 'SYM2_0_tar.gz', 'filename': SOURCE_TAR_GZ}] +patches = ['SYMMETRICA-2.0_makefile.patch'] +checksums = [ + {'SYMMETRICA-2.0.tar.gz': 'bf52788dedc14c482e89f5e7efe8c60864a633314ddd446dd4602d5fdaca0ee2'}, + {'SYMMETRICA-2.0_makefile.patch': 'd38a8935a3c1e7d9fbafd941e43f933b241fbe8bc012ef8b3a32610ab3be25df'}, +] + +builddependencies = [('binutils', '2.38')] + +local_sharedlib = 'libsymmetrica.%s' % SHLIB_EXT + +buildopts = 'test && $CC -shared $CFLAGS $LDFLAGS -o %s *.o' % local_sharedlib + +files_to_copy = [ + (['factorial'], 'bin'), + (['*.doc'], 'share/doc'), + ([local_sharedlib], 'lib'), + (['def.h', 'macro.h'], 'include/symmetrica'), +] + +sanity_check_paths = { + 'files': ['bin/factorial', + 'share/doc/intro.doc', + 'lib/%s' % local_sharedlib, + 'include/symmetrica/def.h', 'include/symmetrica/macro.h'], + 'dirs': [], +} + +sanity_check_commands = ["echo 5 | %(installdir)s/bin/factorial | grep 120"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/SYMMETRICA/SYMMETRICA-2.0_makefile.patch b/easybuild/easyconfigs/s/SYMMETRICA/SYMMETRICA-2.0_makefile.patch new file mode 100644 index 00000000000..ed3568ab50a --- /dev/null +++ b/easybuild/easyconfigs/s/SYMMETRICA/SYMMETRICA-2.0_makefile.patch @@ -0,0 +1,11 @@ +use variables set by EasyBuild and rename the test executable to factorial, which is what it calculates +author: Miguel Dias Costa (National University of Singapore) +--- makefile.orig 2023-11-26 16:42:23.701017757 +0800 ++++ makefile 2023-11-26 16:43:00.373849323 +0800 +@@ -1,4 +1,4 @@ + .c.o: +- cc -c -O2 -DFAST -DALLTRUE $< ++ $(CC) -c $(CFLAGS) -DFAST -DALLTRUE $< + test: test.c bar.o bi.o boe.o bruch.o classical.o de.o di.o ff.o galois.o ga.o gra.o hash.o hiccup.o io.o ko.o list.o lo.o ma.o mee.o mem.o mes.o mhe.o mhh.o mhm.o mhp.o mhs.o mmm.o mms.o mod_dg_sbd.o mo.o mpp.o mps.o mse.o msh.o msm.o mss.o muir.o na.o nb.o nc.o nu.o part.o pee.o peh.o pem.o perm.o pes.o phe.o phh.o phm.o phs.o plet.o pme.o pmh.o poly.o ppe.o pph.o ppm.o ppp.o pps.o pr.o pse.o psh.o psm.o pss.o rest.o rh.o sab.o sb.o sc.o sr.o ta.o teh.o tem.o tep.o tes.o the.o thm.o thp.o ths.o tme.o tmh.o tmp.o tms.o tpe.o tph.o tpm.o tps.o tse.o tsh.o tsm.o tsp.o vc.o zo.o zykelind.o zyk.o +- gcc -DALLTRUE -DFAST test.c bar.o bi.o boe.o bruch.o classical.o de.o di.o ff.o galois.o ga.o gra.o hash.o hiccup.o io.o ko.o list.o lo.o ma.o mee.o mem.o mes.o mhe.o mhh.o mhm.o mhp.o mhs.o mmm.o mms.o mod_dg_sbd.o mo.o mpp.o mps.o mse.o msh.o msm.o mss.o muir.o na.o nb.o nc.o nu.o part.o pee.o peh.o pem.o perm.o pes.o phe.o phh.o phm.o phs.o plet.o pme.o pmh.o poly.o ppe.o pph.o ppm.o ppp.o pps.o pr.o pse.o psh.o psm.o pss.o rest.o rh.o sab.o sb.o sc.o sr.o ta.o teh.o tem.o tep.o tes.o the.o thm.o thp.o ths.o tme.o tmh.o tmp.o tms.o tpe.o tph.o tpm.o tps.o tse.o tsh.o tsm.o tsp.o vc.o zo.o zykelind.o zyk.o -o test -lm ++ $(CC) $(CFLAGS) $(LDFLAGS) -DALLTRUE -DFAST test.c bar.o bi.o boe.o bruch.o classical.o de.o di.o ff.o galois.o ga.o gra.o hash.o hiccup.o io.o ko.o list.o lo.o ma.o mee.o mem.o mes.o mhe.o mhh.o mhm.o mhp.o mhs.o mmm.o mms.o mod_dg_sbd.o mo.o mpp.o mps.o mse.o msh.o msm.o mss.o muir.o na.o nb.o nc.o nu.o part.o pee.o peh.o pem.o perm.o pes.o phe.o phh.o phm.o phs.o plet.o pme.o pmh.o poly.o ppe.o pph.o ppm.o ppp.o pps.o pr.o pse.o psh.o psm.o pss.o rest.o rh.o sab.o sb.o sc.o sr.o ta.o teh.o tem.o tep.o tes.o the.o thm.o thp.o ths.o tme.o tmh.o tmp.o tms.o tpe.o tph.o tpm.o tps.o tse.o tsh.o tsm.o tsp.o vc.o zo.o zykelind.o zyk.o -o factorial -lm 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' 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.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/SciPy-bundle-2023.11-gfbf-2023.09.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023.09.eb new file mode 100644 index 00000000000..397f6751a61 --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2023.11-gfbf-2023.09.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': '2023.09'} +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' 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' 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 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' 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..8b66869c1ce --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-8.3-gompi-2022b.eb @@ -0,0 +1,59 @@ +## +# 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 = [ + ('CubeLib', '4.8.2'), + ('CubeWriter', '4.8.2'), + ('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' diff --git a/easybuild/easyconfigs/s/Seurat/Seurat-4.4.0-foss-2022b-R-4.2.2.eb b/easybuild/easyconfigs/s/Seurat/Seurat-4.4.0-foss-2022b-R-4.2.2.eb new file mode 100644 index 00000000000..2b65e56b170 --- /dev/null +++ b/easybuild/easyconfigs/s/Seurat/Seurat-4.4.0-foss-2022b-R-4.2.2.eb @@ -0,0 +1,76 @@ +easyblock = 'Bundle' + +name = 'Seurat' +version = '4.4.0' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://satijalab.org/seurat' +description = "Seurat is an R package designed for QC, analysis, and exploration of single cell RNA-seq data." + +toolchain = {'name': 'foss', 'version': '2022b'} + +dependencies = [ + ('R', '4.2.2'), + ('R-bundle-Bioconductor', '3.16', 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 = [ + ('Matrix', '1.6-1.1', { + 'checksums': ['331eb1f1fe9441d4224d8551072443596001b50e8c15618f59cb938b46ee8cc2'], + }), + ('sp', '1.5-1', { + 'checksums': ['69b9eab481d389bbb736d2adcf50c180aca248c3ffc4ebda8ffe2accc5f229df'], + }), + ('SeuratObject', '4.1.4', { + 'checksums': ['74e7649ad9795c962c0b12d039d7bf9b11a8a275a63c3a0fa1205b684e5310ef'], + }), + ('sctransform', '0.4.0', { + 'checksums': ['9aef10c196a9578e0d7a8e244c55cf28eb0685947d9df9e2d7790c2b99c6b4b3'], + }), + ('uwot', '0.1.14', { + 'checksums': ['8016e8192b7e72604ca71840cbe43fa1d2caed8a8ad7cbf20e85cd3b384a9fe0'], + }), + ('spatstat.utils', '3.0-1', { + 'checksums': ['cba1c7806564fd9145ca15edf77233d6ba5609f0989f7812221f5fc1ece0b91a'], + }), + ('spatstat.data', '3.0-0', { + 'checksums': ['cff9058a88489020a4a05b9576cd452f37fa9b42084873c474d06931f5187057'], + }), + ('spatstat.geom', '3.0-3', { + 'checksums': ['6e5b56c60e774a0cdcaa5a8ffde071225f233832446a341588bd8a7840913c84'], + }), + ('spatstat.random', '3.0-1', { + 'checksums': ['938c845c063b8781bf894c0a67537e7b2a7c425a4beba4a95ec9d2c37b43e5b6'], + }), + ('spatstat.sparse', '3.0-0', { + 'checksums': ['99be0a3c7592760fdf1668dc0811f75ed91c400390d1ecc3d5e643255f501ad2'], + }), + ('spatstat.explore', '3.0-5', { + 'checksums': ['9f438a12fac3f3e1d0bd550b1393c1e5732be694517b0878db09da557d6dc862'], + }), + ('scattermore', '1.2', { + 'checksums': ['5534a87b0bdd1375f0fbffc1a5c980ad64e33a108435a67469b8324b580602d1'], + }), + (name, version, { + 'checksums': ['0f17df9597642cfc1db4d8718f0b59ebab9fbed328b1f885f42ee85ea0dcb4dd'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +modextrapaths = {'R_LIBS_SITE': ''} + +moduleclass = 'bio' 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' 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] diff --git a/easybuild/easyconfigs/s/Singular/Singular-4.3.2p10-gfbf-2022a.eb b/easybuild/easyconfigs/s/Singular/Singular-4.3.2p10-gfbf-2022a.eb new file mode 100644 index 00000000000..9cbd46cd597 --- /dev/null +++ b/easybuild/easyconfigs/s/Singular/Singular-4.3.2p10-gfbf-2022a.eb @@ -0,0 +1,47 @@ +easyblock = 'ConfigureMake' + +name = 'Singular' +version = '4.3.2p10' + +homepage = 'https://www.singular.uni-kl.de/' +description = """Singular is a computer algebra system for polynomial computations, +with special emphasis on commutative and non-commutative algebra, algebraic geometry, +and singularity theory.""" + +toolchain = {'name': 'gfbf', 'version': '2022a'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/Singular/Singular/archive/refs/tags/'] +sources = ['Release-%s.tar.gz' % version.replace('.', '-')] +checksums = ['692a09ef87be731f21b792721edd671ee98f1a4048539e628d92f123714279ab'] + +builddependencies = [ + ('Autotools', '20220317'), + ('Doxygen', '1.9.4'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('libreadline', '8.1.2'), + ('GMP', '6.2.1'), + ('MPFR', '4.1.0'), + ('FLINT', '2.9.0'), + ('NTL', '11.5.1'), + ('cddlib', '0.94m'), + ('4ti2', '1.6.9'), +] + +preconfigopts = "./autogen.sh && " +configopts = "--with-gmp=$EBROOTGMP --with-flint=$EBROOTFLINT --with-ntl=$EBROOTNTL" + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['ESingular', 'Singular', 'TSingular', 'libpolys-config', 'libsingular-config']] + + ['lib/lib%s.%s' % (l, e) for l in ['Singular', 'factory', 'omalloc', 'polys', 'singular_resources'] + for e in ['a', SHLIB_EXT]], + 'dirs': ['include/%s' % h for h in ['factory', 'omalloc', 'resources', 'singular']] + + ['libexec/singular', 'share'], +} + +sanity_check_commands = ["Singular --help"] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/Spark/Spark-3.5.0-foss-2023a.eb b/easybuild/easyconfigs/s/Spark/Spark-3.5.0-foss-2023a.eb new file mode 100644 index 00000000000..21fc8a3448e --- /dev/null +++ b/easybuild/easyconfigs/s/Spark/Spark-3.5.0-foss-2023a.eb @@ -0,0 +1,52 @@ +# Author: Denis Krišťák (INUITS) + +easyblock = 'Tarball' + +name = 'Spark' +version = '3.5.0' +homepage = 'https://spark.apache.org' +description = """Spark is Hadoop MapReduce done in memory""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = [ + 'https://archive.apache.org/dist//%(namelower)s/%(namelower)s-%(version)s/', + 'https://downloads.apache.org/%(namelower)s/%(namelower)s-%(version)s/' +] +sources = ['%(namelower)s-%(version)s-bin-hadoop3.tgz'] +checksums = ['ac064ec620129b4b9630e180e25ac2b71a8ccd4c6912bf5b5631943b742f0379'] + +dependencies = [ + ('Python', '3.11.3'), + ('Java', '11', '', SYSTEM), + ('Arrow', '14.0.1'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'download_dep_fail': True, + 'use_pip': True, +} + +exts_list = [ + ('py4j', '0.10.9.7', { + 'checksums': ['0b6e5315bb3ada5cf62ac651d107bb2ebc02def3dee9d9548e3baac644ea8dbb'], + }), +] + +sanity_check_paths = { + 'files': ['bin/pyspark', 'bin/spark-shell'], + 'dirs': ['python'] +} + +sanity_check_commands = [ + "pyspark -h", + "python -c 'import pyspark'", +] + +modextrapaths = {'PYTHONPATH': ['python', 'lib/python%(pyshortver)s/site-packages']} + +modextravars = {'SPARK_HOME': '%(installdir)s'} + +moduleclass = 'devel' 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 new file mode 100644 index 00000000000..359a382e7ff --- /dev/null +++ b/easybuild/easyconfigs/s/SuiteSparse/SuiteSparse-7.1.0-foss-2023a.eb @@ -0,0 +1,26 @@ +name = 'SuiteSparse' +version = '7.1.0' + +homepage = 'https://faculty.cse.tamu.edu/davis/suitesparse.html' +description = """SuiteSparse is a collection of libraries to manipulate sparse matrices.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'unroll': True, 'pic': True} + +source_urls = ['https://github.com/DrTimothyAldenDavis/SuiteSparse/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['4cd3d161f9aa4f98ec5fa725ee5dc27bca960a3714a707a7d12b3d0abb504679'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('MPFR', '4.2.0'), +] + +# uncomment the next row if need customization +# cmake_options = '' + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/s/scikit-build/scikit-build-0.17.6-GCCcore-13.2.0.eb b/easybuild/easyconfigs/s/scikit-build/scikit-build-0.17.6-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..d42d1fe3d0c --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-build/scikit-build-0.17.6-GCCcore-13.2.0.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'scikit-build' +version = '0.17.6' + +homepage = 'https://scikit-build.readthedocs.io/en/latest' +description = """Scikit-Build, or skbuild, is an improved build system generator +for CPython C/C++/Fortran/Cython extensions.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.5'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('packaging', '23.1', { + 'checksums': ['a392980d2b6cffa644431898be54b0045151319d1e7ec34f0cfed48767dd334f'], + }), + ('distro', '1.8.0', { + 'checksums': ['02e111d1dc6a50abb8eed6bf31c3e48ed8b0830d1ea2a1b78c61765c2513fdd8'], + }), + ('scikit_build', version, { + 'modulename': 'skbuild', + 'checksums': ['b51a51a36b37c42650994b5047912f59b22e3210b23e321f287611f9ef6e5c9d'], + }), +] + +moduleclass = 'lib' 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' diff --git a/easybuild/easyconfigs/s/scikit-lego/scikit-lego-0.6.16-foss-2022a.eb b/easybuild/easyconfigs/s/scikit-lego/scikit-lego-0.6.16-foss-2022a.eb new file mode 100644 index 00000000000..5ea30879467 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-lego/scikit-lego-0.6.16-foss-2022a.eb @@ -0,0 +1,48 @@ +easyblock = 'PythonBundle' + +name = 'scikit-lego' +version = '0.6.16' + +homepage = 'https://github.com/koaning/scikit-lego' +description = """ +We love scikit learn but very often we find ourselves writing custom transformers, metrics and +models. The goal of this project is to attempt to consolidate these into a package that offers +code quality/testing. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +github_account = 'koaning' + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('scikit-learn', '1.1.2'), + ('matplotlib', '3.5.2'), + ('umap-learn', '0.5.3'), + ('wrapt', '1.15.0'), +] + +use_pip = True + +exts_list = [ + ('autograd', '1.6.2', { + 'checksums': ['8731e08a0c4e389d8695a40072ada4512641c113b6cace8f4cfbe8eb7e9aedeb'], + }), + ('Deprecated', '1.2.14', { + 'checksums': ['e5323eb936458dccc2582dc6f9c322c852a775a27065ff2b0c4970b9d53d01b3'], + }), + ('patsy', '0.5.3', { + 'checksums': ['bdc18001875e319bc91c812c1eb6a10be4bb13cb81eb763f466179dca3b67277'], + }), + (name, version, { + 'modulename': 'sklego', + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/%(github_account)s/%(name)s/archive'], + 'checksums': ['bf58f66518e9e8dca54cac634d7642b1e1a6c9984e17af6f1f71e0312dbe4a69'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/scrublet/scrublet-0.2.3-foss-2022a.eb b/easybuild/easyconfigs/s/scrublet/scrublet-0.2.3-foss-2022a.eb new file mode 100644 index 00000000000..9e63514905b --- /dev/null +++ b/easybuild/easyconfigs/s/scrublet/scrublet-0.2.3-foss-2022a.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonBundle' + +name = 'scrublet' +version = '0.2.3' + +homepage = 'https://github.com/swolock/scrublet' +description = "Single-Cell Remover of Doublets - Python code for identifying doublets in single-cell RNA-seq data" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('scikit-learn', '1.1.2'), + ('scikit-image', '0.19.3'), + ('matplotlib', '3.5.2'), + ('numba', '0.56.4'), + ('tqdm', '4.64.0'), +] + +use_pip = True + +exts_list = [ + ('annoy', '1.17.1', { + 'checksums': ['bf177dbeafb81f63b2ac1e1246b1f26a2acc82e73ba46638734d29d8258122da'], + }), + ('pynndescent', '0.5.7', { + 'checksums': ['ecb395255fa36a748b5870b4ba0300ea0f7da8b1964864b8edd62577a84dfd7d'], + }), + ('umap-learn', '0.5.3', { + 'modulename': 'umap', + 'checksums': ['dbd57cb181c2b66d238acb5635697526bf24c798082daed0cf9b87f6a3a6c0c7'], + }), + (name, version, { + 'checksums': ['2185f63070290267f82a36e5b4cae8c321f10415d2d0c9f7e5e97b1126bf653a'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/segmentation-models-pytorch/segmentation-models-pytorch-0.3.3-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/s/segmentation-models-pytorch/segmentation-models-pytorch-0.3.3-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..b82795350a9 --- /dev/null +++ b/easybuild/easyconfigs/s/segmentation-models-pytorch/segmentation-models-pytorch-0.3.3-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,46 @@ +easyblock = 'PythonBundle' + +name = 'segmentation-models-pytorch' +version = '0.3.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/qubvel/segmentation_models.pytorch' +description = "Python library with Neural Networks for Image Segmentation based on PyTorch." + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('PyTorch', '1.12.0', versionsuffix), + ('torchvision', '0.13.1', versionsuffix), + ('Safetensors', '0.3.1', versionsuffix), + ('tqdm', '4.64.0'), +] + +use_pip = True + +exts_list = [ + ('munch', '2.5.0', { + 'checksums': ['2d735f6f24d4dba3417fa448cae40c6e896ec1fdab6cdb5e6510999758a4dbd2'], + }), + ('pretrainedmodels', '0.7.4', { + 'checksums': ['7e77ead4619a3e11ab3c41982c8ad5b86edffe37c87fd2a37ec3c2cc6470b98a'], + }), + ('efficientnet_pytorch', '0.7.1', { + 'checksums': ['00b9b261effce59d2d47aae2ad238c29a2a65175470f41ada7ecac439b7c1ee1'], + }), + ('huggingface_hub', '0.15.1', { + 'checksums': ['a61b7d1a7769fe10119e730277c72ab99d95c48d86a3d6da3e9f3d0f632a4081'], + }), + ('timm', '0.9.2', { + 'checksums': ['d0977cc5e02c69bda979fca8b52aa315a5f2cb64ebf8ad2c4631b1e452762c14'], + }), + ('segmentation_models_pytorch', version, { + 'checksums': ['b3b21ab4cd26a6b2b9e7a6ed466ace6452eb26ed3c31ae491ea2d7cbb01e384b'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.8.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.8.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..669229c8f11 --- /dev/null +++ b/easybuild/easyconfigs/s/setuptools-rust/setuptools-rust-1.8.0-GCCcore-13.2.0.eb @@ -0,0 +1,39 @@ +easyblock = 'PythonBundle' + +name = 'setuptools-rust' +version = '1.8.0' + +homepage = 'https://github.com/PyO3/setuptools-rust' +description = """setuptools-rust is a plugin for setuptools to build Rust Python extensions +implemented with PyO3 or rust-cpython.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('binutils', '2.40'), +] + +dependencies = [ + ('Python', '3.11.5'), +] + +exts_default_options = { + 'download_dep_fail': True, + 'sanity_pip_check': True, + 'use_pip': True, +} + +exts_list = [ + ('typing_extensions', '4.8.0', { + 'checksums': ['df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef'], + }), + ('semantic_version', '2.10.0', { + 'checksums': ['bdabb6d336998cbb378d4b9db3a4b56a1e3235701dc05ea2690d9a997ed5041c'], + }), + (name, version, { + 'checksums': ['5e02b7a80058853bf64127314f6b97d0efed11e08b94c88ca639a20976f6adc4'], + }), +] + +moduleclass = 'tools' 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" diff --git a/easybuild/easyconfigs/s/solo/solo-1.3-foss-2022a.eb b/easybuild/easyconfigs/s/solo/solo-1.3-foss-2022a.eb new file mode 100644 index 00000000000..a9560982884 --- /dev/null +++ b/easybuild/easyconfigs/s/solo/solo-1.3-foss-2022a.eb @@ -0,0 +1,90 @@ +easyblock = 'PythonBundle' + +name = 'solo' +version = '1.3' + +homepage = 'https://github.com/calico/solo' +description = "Doublet detection via semi-supervised deep learning" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('IPython', '8.5.0'), + ('PyTorch', '1.12.0'), + ('tqdm', '4.64.0'), + ('Seaborn', '0.12.1'), + ('leidenalg', '0.9.1'), + ('scanpy', '1.9.1'), + ('openpyxl', '3.0.10'), + ('tensorboard', '2.10.0'), +] + +use_pip = True + +exts_list = [ + ('ConfigArgParse', '1.5.3', { + 'checksums': ['1b0b3cbf664ab59dada57123c81eff3d9737e0d11d8cf79e3d6eb10823f1739f'], + }), + ('docrep', '0.3.2', { + 'checksums': ['ed8a17e201abd829ef8da78a0b6f4d51fb99a4cbd0554adbed3309297f964314'], + }), + ('opt-einsum', '3.3.0', { + 'sources': ['opt_einsum-%(version)s.tar.gz'], + 'checksums': ['59f6475f77bbc37dcf7cd748519c0ec60722e91e63ca114e68821c0c54a46549'], + }), + ('pyro-api', '0.1.2', { + 'modulename': 'pyroapi', + 'checksums': ['a1b900d9580aa1c2fab3b123ab7ff33413744da7c5f440bd4aadc4d40d14d920'], + }), + ('pyro-ppl', '1.8.4', { + 'modulename': 'pyro', + 'checksums': ['766fad61e52df48885de96d41213da1f8e8c1b79ecf308ad53189fcd15c1cb41'], + }), + ('commonmark', '0.9.1', { + 'checksums': ['452f9dc859be7f06631ddcb328b6919c67984aca654e5fefb3914d54691aed60'], + }), + ('rich', '12.6.0', { + 'checksums': ['ba3a3775974105c221d31141f2c116f4fd65c5ceb0698657a11e9f295ec93fd0'], + }), + ('pyDeprecate', '0.3.2', { + 'modulename': 'deprecate', + 'checksums': ['d481116cc5d7f6c473e7c4be820efdd9b90a16b594b350276e9e66a6cb5bdd29'], + }), + ('torchmetrics', '0.7.3', { + 'checksums': ['875e744a6db63c88757260d63cb80919d0398734a7f456f8ea4181bb2db957d8'], + }), + ('PyYAML', '5.4.1', { + 'modulename': 'yaml', + 'checksums': ['607774cbba28732bfa802b54baa7484215f530991055bb562efbed5b2f20a45e'], + }), + ('pytorch-lightning', '1.3.8', { + 'preinstallopts': "sed -i 's/pyDeprecate==/pyDeprecate>=/g' requirements.txt && ", + 'checksums': ['60b0a3e464d394864dae4c8d251afa7aa453644a19bb7672f5ee400343cdf7b0'], + }), + ('scvi-tools', '0.14.6', { + 'modulename': 'scvi', + 'preinstallopts': "sed -i '/^setuptools/d' pyproject.toml && ", + 'checksums': ['f30a8a685624e49fa8a0d9b9d53152eb7b95e28b020ebd1c564387b2250bc38a'], + }), + ('solo-sc', version, { + 'modulename': 'solo', + 'preinstallopts': "sed -i 's/==/>=/g' requirements.txt && ", + 'checksums': ['e19e5697ad5e12b39dd2549682356171a438dfe70ec46277d4502bab047b624d'], + }), +] + +sanity_check_paths = { + 'files': ['bin/hashsolo', 'bin/solo'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "hashsolo --help", + "solo --help", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/strace/strace-6.6-GCCcore-12.2.0.eb b/easybuild/easyconfigs/s/strace/strace-6.6-GCCcore-12.2.0.eb new file mode 100644 index 00000000000..d3187e80ef7 --- /dev/null +++ b/easybuild/easyconfigs/s/strace/strace-6.6-GCCcore-12.2.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'strace' +version = '6.6' + +homepage = 'https://strace.io/' +description = """ +strace is a diagnostic, debugging and instructional userspace utility for Linux. It is used to monitor and tamper with +interactions between processes and the Linux kernel, which include system calls, signal deliveries, and changes of +process state. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = ['https://github.com/strace/strace/releases/download/v%(version)s/'] +sources = [SOURCE_TAR_XZ] +checksums = ['421b4186c06b705163e64dc85f271ebdcf67660af8667283147d5e859fc8a96c'] + +builddependencies = [ + ('binutils', '2.39'), +] + +configopts = "--enable-mpers=check" + +sanity_check_paths = { + 'files': ['bin/strace-log-merge', 'bin/strace'], + 'dirs': ['share'] +} + +sanity_check_commands = ['strace --help'] + +moduleclass = 'system' diff --git a/easybuild/easyconfigs/t/TOML-Fortran/TOML-Fortran-0.4.1-GCC-12.2.0.eb b/easybuild/easyconfigs/t/TOML-Fortran/TOML-Fortran-0.4.1-GCC-12.2.0.eb new file mode 100644 index 00000000000..e3b1d6f709e --- /dev/null +++ b/easybuild/easyconfigs/t/TOML-Fortran/TOML-Fortran-0.4.1-GCC-12.2.0.eb @@ -0,0 +1,24 @@ +easyblock = 'CMakeMake' + +name = 'TOML-Fortran' +version = '0.4.1' + +homepage = 'https://github.com/toml-f/toml-f' +description = 'TOML parser for Fortran projects' + +toolchain = {'name': 'GCC', 'version': '12.2.0'} + +source_urls = ['https://github.com/toml-f/toml-f/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['435f6c06dd7392ef282ed7567c9245ca64b8456d62cbf814ada9cbad60f21c00'] + +builddependencies = [ + ('CMake', '3.24.3'), +] + +sanity_check_paths = { + 'files': ['lib/libtoml-f.a'], + 'dirs': ['include/toml-f', 'lib/pkgconfig', 'share'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/t/TOML-Fortran/TOML-Fortran-0.4.1-intel-compilers-2022.2.1.eb b/easybuild/easyconfigs/t/TOML-Fortran/TOML-Fortran-0.4.1-intel-compilers-2022.2.1.eb new file mode 100644 index 00000000000..7e039bdaac6 --- /dev/null +++ b/easybuild/easyconfigs/t/TOML-Fortran/TOML-Fortran-0.4.1-intel-compilers-2022.2.1.eb @@ -0,0 +1,24 @@ +easyblock = 'CMakeMake' + +name = 'TOML-Fortran' +version = '0.4.1' + +homepage = 'https://github.com/toml-f/toml-f' +description = 'TOML parser for Fortran projects' + +toolchain = {'name': 'intel-compilers', 'version': '2022.2.1'} + +source_urls = ['https://github.com/toml-f/toml-f/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['435f6c06dd7392ef282ed7567c9245ca64b8456d62cbf814ada9cbad60f21c00'] + +builddependencies = [ + ('CMake', '3.24.3'), +] + +sanity_check_paths = { + 'files': ['lib/libtoml-f.a'], + 'dirs': ['include/toml-f', 'lib/pkgconfig', 'share'], +} + +moduleclass = 'tools' 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' diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.13.0-foss-2022b.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.13.0-foss-2022b.eb index 584cd28c94e..b980d259a0b 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.13.0-foss-2022b.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.13.0-foss-2022b.eb @@ -77,7 +77,9 @@ exts_list = [ }), ('grpcio', '1.56.2', { 'modulename': 'grpc', - 'preinstallopts': "GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS=%(parallel)s " + + # patch hardcoded /usr paths to prefix them with alternate sysroot path (if defined) + 'preinstallopts': "sed -i 's@/usr@%(sysroot)s/usr@g' setup.py && " + + "GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS=%(parallel)s " + " ".join(["GRPC_PYTHON_BUILD_SYSTEM_%s=True" % i for i in ( 'OPENSSL', diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.13.0-foss-2023a.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.13.0-foss-2023a.eb index e8b966a5b8b..ff2e32b03f4 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.13.0-foss-2023a.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.13.0-foss-2023a.eb @@ -80,7 +80,9 @@ exts_list = [ }), ('grpcio', '1.57.0', { 'modulename': 'grpc', - 'preinstallopts': "GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS=%(parallel)s " + + # patch hardcoded /usr paths to prefix them with alternate sysroot path (if defined) + 'preinstallopts': "sed -i 's@/usr@%(sysroot)s/usr@g' setup.py && " + + "GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS=%(parallel)s " + # Required to avoid building with non-default C++ standard but keep other flags, # see https://github.com/grpc/grpc/issues/34256 "GRPC_PYTHON_CFLAGS='-fvisibility=hidden -fno-wrapv -fno-exceptions' " + 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) + + diff --git a/easybuild/easyconfigs/t/tabix/tabix-0.2.6-GCCcore-11.3.0.eb b/easybuild/easyconfigs/t/tabix/tabix-0.2.6-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..7b219ea3fbc --- /dev/null +++ b/easybuild/easyconfigs/t/tabix/tabix-0.2.6-GCCcore-11.3.0.eb @@ -0,0 +1,47 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# Swiss Institute of Bioinformatics +# Biozentrum - University of Basel +# Author: Jens Timmerman, Ghent University +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# uploaded by J. Sassmannshausen +# updated to newer toolchain + +easyblock = 'MakeCp' + +name = 'tabix' +version = '0.2.6' + +homepage = 'https://samtools.sourceforge.net' +description = """ Generic indexer for TAB-delimited genome position files """ + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = [('https://sourceforge.net/projects/samtools/files/', 'download')] +sources = [SOURCE_TAR_BZ2] +checksums = ['e4066be7101bae83bec62bc2bc6917013f6c2875b66eb5055fbb013488d68b73'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [('zlib', '1.2.12')] + +buildopts = 'CC="$CC" CFLAGS="$CFLAGS -L$EBROOTZLIB/lib"' + +files_to_copy = [ + (["tabix", "bgzip", "tabix.py"], "bin"), + (["tabix.1"], "man/man1"), + (["libtabix.a"], "lib64"), + (["*.h"], "include"), + "example.gtf.gz", + "example.gtf.gz.tbi", + "NEWS", + "ChangeLog" +] + +sanity_check_paths = { + 'files': ["bin/tabix", "bin/bgzip", "bin/tabix.py", "lib/libtabix.a"], + 'dirs': ["include"], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/tbb/tbb-2021.11.0-GCCcore-12.3.0.eb b/easybuild/easyconfigs/t/tbb/tbb-2021.11.0-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..5b1b8e4f707 --- /dev/null +++ b/easybuild/easyconfigs/t/tbb/tbb-2021.11.0-GCCcore-12.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'tbb' +version = '2021.11.0' + +homepage = 'https://github.com/oneapi-src/oneTBB' +description = """Intel(R) Threading Building Blocks (Intel(R) TBB) lets you easily write parallel C++ programs that + take full advantage of multicore performance, that are portable, composable and have future-proof scalability.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +# The following option is needed to supress the "stringop-overflow error". +# See https://github.com/oneapi-src/oneTBB/issues/1180#issuecomment-1690958371 for details. +toolchainopts = {'extra_cxxflags': '-Wno-error=stringop-overflow'} + +source_urls = ['https://github.com/oneapi-src/oneTBB/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['782ce0cab62df9ea125cdea253a50534862b563f1d85d4cda7ad4e77550ac363'] + +builddependencies = [ + ('binutils', '2.40'), + ('CMake', '3.26.3'), +] + +dependencies = [('hwloc', '2.9.1')] + +sanity_check_paths = { + 'files': ['lib/libtbb.%s' % SHLIB_EXT, 'lib/libtbbmalloc.%s' % SHLIB_EXT], + 'dirs': ['lib', 'include', 'share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/tensorflow-probability/tensorflow-probability-0.19.0-foss-2022a.eb b/easybuild/easyconfigs/t/tensorflow-probability/tensorflow-probability-0.19.0-foss-2022a.eb new file mode 100644 index 00000000000..5f95682889d --- /dev/null +++ b/easybuild/easyconfigs/t/tensorflow-probability/tensorflow-probability-0.19.0-foss-2022a.eb @@ -0,0 +1,48 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Authors:: Dugan Witherick (University of Warwick) +# License:: MIT/GPL +# $Id$ +# +# Updated to 0.19.0 +# Author: J. Sassmannshausen (Imperial College London/UK) +## + +easyblock = 'PythonBundle' + +name = 'tensorflow-probability' +version = '0.19.0' + +homepage = 'https://www.tensorflow.org/probability' +description = """TensorFlow Probability (TFP) is a library for probabilistic reasoning and statistical analysis.""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'usempi': True, 'pic': True} + +dependencies = [ + ('Python', '3.10.4'), + ('TensorFlow', '2.11.0'), + ('dm-tree', '0.1.8'), +] + +use_pip = True + +exts_list = [ + ('cloudpickle', '2.2.0', { + 'checksums': ['3f4219469c55453cfe4737e564b67c2a149109dabf7f242478948b895f61106f'], + }), + (name, version, { + 'installopts': '--install-option="--release"', + 'modulename': 'tensorflow_probability', + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/tensorflow/probability/archive/'], + 'checksums': ['b32d2ae211ec727df9791b501839619f5389134bd6d4fe951570f500b0e75f55'], + }), +] + +sanity_check_commands = ["python -c 'import tensorflow; import tensorflow_probability'"] + +sanity_pip_check = True + +moduleclass = 'lib' 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..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 @@ -1,4 +1,4 @@ -easyblock = 'PythonBundle' +easyblock = 'CargoPythonBundle' name = 'timm' version = '0.6.13' @@ -27,6 +27,89 @@ 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'), +] +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 exts_list = [ diff --git a/easybuild/easyconfigs/t/tokenizers/tokenizers-0.13.3-GCCcore-12.2.0.eb b/easybuild/easyconfigs/t/tokenizers/tokenizers-0.13.3-GCCcore-12.2.0.eb index a1a6dc421fc..ff29dc8e672 100644 --- a/easybuild/easyconfigs/t/tokenizers/tokenizers-0.13.3-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/t/tokenizers/tokenizers-0.13.3-GCCcore-12.2.0.eb @@ -1,4 +1,4 @@ -easyblock = 'PythonPackage' +easyblock = 'CargoPythonPackage' name = 'tokenizers' version = '0.13.3' @@ -8,8 +8,566 @@ description = "Fast State-of-the-Art Tokenizers optimized for Research and Produ toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +crates = [ + ('addr2line', '0.21.0'), + ('adler', '1.0.2'), + ('aes', '0.8.3'), + ('aho-corasick', '0.7.20'), + ('aho-corasick', '1.1.2'), + ('anstream', '0.3.2'), + ('anstyle', '1.0.1'), + ('anstyle-parse', '0.2.1'), + ('anstyle-query', '1.0.0'), + ('anstyle-wincon', '1.0.1'), + ('atty', '0.2.14'), + ('autocfg', '1.1.0'), + ('backtrace', '0.3.69'), + ('base64', '0.13.1'), + ('base64', '0.21.5'), + ('base64ct', '1.6.0'), + ('bitflags', '1.3.2'), + ('bitflags', '2.4.1'), + ('block-buffer', '0.10.4'), + ('bumpalo', '3.14.0'), + ('byteorder', '1.5.0'), + ('bytes', '1.5.0'), + ('bzip2', '0.4.4'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cached-path', '0.6.1'), + ('cc', '1.0.83'), + ('cfg-if', '1.0.0'), + ('cipher', '0.4.4'), + ('clap', '4.3.8'), + ('clap_builder', '4.3.8'), + ('clap_derive', '4.3.2'), + ('clap_lex', '0.5.0'), + ('colorchoice', '1.0.0'), + ('console', '0.15.7'), + ('constant_time_eq', '0.1.5'), + ('core-foundation', '0.9.3'), + ('core-foundation-sys', '0.8.4'), + ('cpufeatures', '0.2.8'), + ('crc32fast', '1.3.2'), + ('crossbeam-deque', '0.8.3'), + ('crossbeam-epoch', '0.9.15'), + ('crossbeam-utils', '0.8.16'), + ('crypto-common', '0.1.6'), + ('darling', '0.14.4'), + ('darling_core', '0.14.4'), + ('darling_macro', '0.14.4'), + ('derive_builder', '0.12.0'), + ('derive_builder_core', '0.12.0'), + ('derive_builder_macro', '0.12.0'), + ('digest', '0.10.7'), + ('dirs', '4.0.0'), + ('dirs-sys', '0.3.7'), + ('either', '1.9.0'), + ('encode_unicode', '0.3.6'), + ('encoding_rs', '0.8.33'), + ('env_logger', '0.7.1'), + ('errno', '0.3.8'), + ('esaxx-rs', '0.1.10'), + ('fastrand', '2.0.1'), + ('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'), + ('fs2', '0.4.3'), + ('futures-channel', '0.3.29'), + ('futures-core', '0.3.29'), + ('futures-io', '0.3.29'), + ('futures-sink', '0.3.29'), + ('futures-task', '0.3.29'), + ('futures-util', '0.3.29'), + ('generic-array', '0.14.7'), + ('getrandom', '0.2.10'), + ('gimli', '0.28.1'), + ('glob', '0.3.1'), + ('h2', '0.3.20'), + ('hashbrown', '0.12.3'), + ('heck', '0.4.1'), + ('hermit-abi', '0.1.19'), + ('hermit-abi', '0.3.3'), + ('hmac', '0.12.1'), + ('http', '0.2.11'), + ('http-body', '0.4.5'), + ('httparse', '1.8.0'), + ('httpdate', '1.0.3'), + ('humantime', '1.3.0'), + ('hyper', '0.14.27'), + ('hyper-tls', '0.5.0'), + ('ident_case', '1.0.1'), + ('idna', '0.5.0'), + ('indexmap', '1.9.3'), + ('indicatif', '0.15.0'), + ('indicatif', '0.16.2'), + ('indoc', '1.0.9'), + ('inout', '0.1.3'), + ('ipnet', '2.8.0'), + ('is-terminal', '0.4.9'), + ('itertools', '0.8.2'), + ('itertools', '0.9.0'), + ('itoa', '1.0.9'), + ('jobserver', '0.1.26'), + ('js-sys', '0.3.66'), + ('lazy_static', '1.4.0'), + ('libc', '0.2.147'), + ('libredox', '0.0.1'), + ('linux-raw-sys', '0.4.11'), + ('lock_api', '0.4.11'), + ('log', '0.4.20'), + ('macro_rules_attribute', '0.1.3'), + ('macro_rules_attribute-proc_macro', '0.1.3'), + ('matrixmultiply', '0.2.4'), + ('matrixmultiply', '0.3.8'), + ('memchr', '2.6.4'), + ('memoffset', '0.8.0'), + ('memoffset', '0.9.0'), + ('mime', '0.3.17'), + ('minimal-lexical', '0.2.1'), + ('miniz_oxide', '0.7.1'), + ('mio', '0.8.8'), + ('monostate', '0.1.6'), + ('monostate-impl', '0.1.6'), + ('native-tls', '0.2.11'), + ('ndarray', '0.13.1'), + ('ndarray', '0.15.6'), + ('nom', '7.1.3'), + ('num-complex', '0.2.4'), + ('num-complex', '0.4.4'), + ('num-integer', '0.1.45'), + ('num-traits', '0.2.17'), + ('num_cpus', '1.16.0'), + ('number_prefix', '0.3.0'), + ('number_prefix', '0.4.0'), + ('numpy', '0.18.0'), + ('object', '0.32.1'), + ('once_cell', '1.18.0'), + ('onig', '6.4.0'), + ('onig_sys', '69.8.1'), + ('openssl', '0.10.55'), + ('openssl-macros', '0.1.1'), + ('openssl-probe', '0.1.5'), + ('openssl-sys', '0.9.90'), + ('parking_lot', '0.12.1'), + ('parking_lot_core', '0.9.9'), + ('password-hash', '0.4.2'), + ('paste', '1.0.14'), + ('pbkdf2', '0.11.0'), + ('percent-encoding', '2.3.1'), + ('pin-project-lite', '0.2.13'), + ('pin-utils', '0.1.0'), + ('pkg-config', '0.3.27'), + ('ppv-lite86', '0.2.17'), + ('proc-macro2', '1.0.63'), + ('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'), + ('quick-error', '1.2.3'), + ('quote', '1.0.30'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rawpointer', '0.2.1'), + ('rayon', '1.8.0'), + ('rayon-cond', '0.1.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.4.3'), + ('regex-syntax', '0.6.29'), + ('regex-syntax', '0.8.2'), + ('reqwest', '0.11.22'), + ('rustc-demangle', '0.1.23'), + ('rustc-hash', '1.1.0'), + ('rustix', '0.38.13'), + ('ryu', '1.0.15'), + ('schannel', '0.1.22'), + ('scopeguard', '1.2.0'), + ('security-framework', '2.9.2'), + ('security-framework-sys', '2.9.1'), + ('serde', '1.0.168'), + ('serde_derive', '1.0.168'), + ('serde_json', '1.0.99'), + ('serde_urlencoded', '0.7.1'), + ('sha1', '0.10.5'), + ('sha2', '0.10.7'), + ('slab', '0.4.9'), + ('smallvec', '1.11.2'), + ('socket2', '0.4.9'), + ('socket2', '0.5.4'), + ('spm_precompiled', '0.1.4'), + ('strsim', '0.10.0'), + ('subtle', '2.5.0'), + ('syn', '1.0.109'), + ('syn', '2.0.22'), + ('system-configuration', '0.5.1'), + ('system-configuration-sys', '0.5.0'), + ('tar', '0.4.40'), + ('target-lexicon', '0.12.8'), + ('tempfile', '3.8.0'), + ('termcolor', '1.4.0'), + ('thiserror', '1.0.40'), + ('thiserror-impl', '1.0.40'), + ('time', '0.3.22'), + ('time-core', '0.1.1'), + ('tinyvec', '1.6.0'), + ('tinyvec_macros', '0.1.1'), + ('tokio', '1.33.0'), + ('tokio-native-tls', '0.3.1'), + ('tokio-util', '0.7.10'), + ('tower-service', '0.3.2'), + ('tracing', '0.1.40'), + ('tracing-core', '0.1.32'), + ('try-lock', '0.2.4'), + ('typenum', '1.17.0'), + ('unicode-bidi', '0.3.13'), + ('unicode-ident', '1.0.12'), + ('unicode-normalization', '0.1.22'), + ('unicode-normalization-alignments', '0.1.12'), + ('unicode-segmentation', '1.10.1'), + ('unicode-width', '0.1.11'), + ('unicode_categories', '0.1.1'), + ('unindent', '0.1.11'), + ('url', '2.5.0'), + ('utf8parse', '0.2.1'), + ('vcpkg', '0.2.15'), + ('version_check', '0.9.4'), + ('want', '0.3.1'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.89'), + ('wasm-bindgen-backend', '0.2.89'), + ('wasm-bindgen-futures', '0.4.39'), + ('wasm-bindgen-macro', '0.2.89'), + ('wasm-bindgen-macro-support', '0.2.89'), + ('wasm-bindgen-shared', '0.2.89'), + ('web-sys', '0.3.66'), + ('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'), + ('winreg', '0.50.0'), + ('xattr', '1.0.1'), + ('zip', '0.6.6'), + ('zstd', '0.11.2+zstd.1.5.2'), + ('zstd-safe', '5.0.2+zstd.1.5.2'), + ('zstd-sys', '2.0.9+zstd.1.5.5'), +] sources = [SOURCE_TAR_GZ] -checksums = ['2e546dbb68b623008a5442353137fbb0123d311a6d7ba52f2667c8862a75af2e'] +checksums = [ + {'tokenizers-0.13.3.tar.gz': '2e546dbb68b623008a5442353137fbb0123d311a6d7ba52f2667c8862a75af2e'}, + {'addr2line-0.21.0.tar.gz': '8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb'}, + {'adler-1.0.2.tar.gz': 'f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe'}, + {'aes-0.8.3.tar.gz': 'ac1f845298e95f983ff1944b728ae08b8cebab80d684f0a832ed0fc74dfa27e2'}, + {'aho-corasick-0.7.20.tar.gz': 'cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac'}, + {'aho-corasick-1.1.2.tar.gz': 'b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0'}, + {'anstream-0.3.2.tar.gz': '0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163'}, + {'anstyle-1.0.1.tar.gz': '3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd'}, + {'anstyle-parse-0.2.1.tar.gz': '938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333'}, + {'anstyle-query-1.0.0.tar.gz': '5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b'}, + {'anstyle-wincon-1.0.1.tar.gz': '180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188'}, + {'atty-0.2.14.tar.gz': 'd9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8'}, + {'autocfg-1.1.0.tar.gz': 'd468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa'}, + {'backtrace-0.3.69.tar.gz': '2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837'}, + {'base64-0.13.1.tar.gz': '9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8'}, + {'base64-0.21.5.tar.gz': '35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9'}, + {'base64ct-1.6.0.tar.gz': '8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bitflags-2.4.1.tar.gz': '327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07'}, + {'block-buffer-0.10.4.tar.gz': '3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71'}, + {'bumpalo-3.14.0.tar.gz': '7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'bytes-1.5.0.tar.gz': 'a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223'}, + {'bzip2-0.4.4.tar.gz': 'bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cached-path-0.6.1.tar.gz': '097968e38f1319207f057d0f4d76452e4f4f847a5de61c5215379f297fa034f3'}, + {'cc-1.0.83.tar.gz': 'f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'cipher-0.4.4.tar.gz': '773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad'}, + {'clap-4.3.8.tar.gz': 'd9394150f5b4273a1763355bd1c2ec54cc5a2593f790587bcd6b2c947cfa9211'}, + {'clap_builder-4.3.8.tar.gz': '9a78fbdd3cc2914ddf37ba444114bc7765bbdcb55ec9cbe6fa054f0137400717'}, + {'clap_derive-4.3.2.tar.gz': 'b8cd2b2a819ad6eec39e8f1d6b53001af1e5469f8c177579cdaeb313115b825f'}, + {'clap_lex-0.5.0.tar.gz': '2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b'}, + {'colorchoice-1.0.0.tar.gz': 'acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7'}, + {'console-0.15.7.tar.gz': 'c926e00cc70edefdc64d3a5ff31cc65bb97a3460097762bd23afb4d8145fccf8'}, + {'constant_time_eq-0.1.5.tar.gz': '245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc'}, + {'core-foundation-0.9.3.tar.gz': '194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146'}, + {'core-foundation-sys-0.8.4.tar.gz': 'e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa'}, + {'cpufeatures-0.2.8.tar.gz': '03e69e28e9f7f77debdedbaafa2866e1de9ba56df55a8bd7cfc724c25a09987c'}, + {'crc32fast-1.3.2.tar.gz': 'b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d'}, + {'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'}, + {'darling-0.14.4.tar.gz': '7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850'}, + {'darling_core-0.14.4.tar.gz': '109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0'}, + {'darling_macro-0.14.4.tar.gz': 'a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e'}, + {'derive_builder-0.12.0.tar.gz': '8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8'}, + {'derive_builder_core-0.12.0.tar.gz': 'c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f'}, + {'derive_builder_macro-0.12.0.tar.gz': 'ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e'}, + {'digest-0.10.7.tar.gz': '9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292'}, + {'dirs-4.0.0.tar.gz': 'ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059'}, + {'dirs-sys-0.3.7.tar.gz': '1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6'}, + {'either-1.9.0.tar.gz': 'a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07'}, + {'encode_unicode-0.3.6.tar.gz': 'a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f'}, + {'encoding_rs-0.8.33.tar.gz': '7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1'}, + {'env_logger-0.7.1.tar.gz': '44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36'}, + {'errno-0.3.8.tar.gz': 'a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245'}, + {'esaxx-rs-0.1.10.tar.gz': 'd817e038c30374a4bcb22f94d0a8a0e216958d4c3dcde369b1439fec4bdda6e6'}, + {'fastrand-2.0.1.tar.gz': '25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5'}, + {'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'}, + {'fs2-0.4.3.tar.gz': '9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213'}, + {'futures-channel-0.3.29.tar.gz': 'ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb'}, + {'futures-core-0.3.29.tar.gz': 'eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c'}, + {'futures-io-0.3.29.tar.gz': '8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa'}, + {'futures-sink-0.3.29.tar.gz': 'e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817'}, + {'futures-task-0.3.29.tar.gz': 'efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2'}, + {'futures-util-0.3.29.tar.gz': 'a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104'}, + {'generic-array-0.14.7.tar.gz': '85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a'}, + {'getrandom-0.2.10.tar.gz': 'be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427'}, + {'gimli-0.28.1.tar.gz': '4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253'}, + {'glob-0.3.1.tar.gz': 'd2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b'}, + {'h2-0.3.20.tar.gz': '97ec8491ebaf99c8eaa73058b045fe58073cd6be7f596ac993ced0b0a0c01049'}, + {'hashbrown-0.12.3.tar.gz': '8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'hermit-abi-0.1.19.tar.gz': '62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33'}, + {'hermit-abi-0.3.3.tar.gz': 'd77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7'}, + {'hmac-0.12.1.tar.gz': '6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e'}, + {'http-0.2.11.tar.gz': '8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb'}, + {'http-body-0.4.5.tar.gz': 'd5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1'}, + {'httparse-1.8.0.tar.gz': 'd897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904'}, + {'httpdate-1.0.3.tar.gz': 'df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9'}, + {'humantime-1.3.0.tar.gz': 'df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f'}, + {'hyper-0.14.27.tar.gz': 'ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468'}, + {'hyper-tls-0.5.0.tar.gz': 'd6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905'}, + {'ident_case-1.0.1.tar.gz': 'b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39'}, + {'idna-0.5.0.tar.gz': '634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6'}, + {'indexmap-1.9.3.tar.gz': 'bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99'}, + {'indicatif-0.15.0.tar.gz': '7baab56125e25686df467fe470785512329883aab42696d661247aca2a2896e4'}, + {'indicatif-0.16.2.tar.gz': '2d207dc617c7a380ab07ff572a6e52fa202a2a8f355860ac9c38e23f8196be1b'}, + {'indoc-1.0.9.tar.gz': 'bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306'}, + {'inout-0.1.3.tar.gz': 'a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5'}, + {'ipnet-2.8.0.tar.gz': '28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6'}, + {'is-terminal-0.4.9.tar.gz': 'cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b'}, + {'itertools-0.8.2.tar.gz': 'f56a2d0bc861f9165be4eb3442afd3c236d8a98afd426f65d92324ae1091a484'}, + {'itertools-0.9.0.tar.gz': '284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b'}, + {'itoa-1.0.9.tar.gz': 'af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38'}, + {'jobserver-0.1.26.tar.gz': '936cfd212a0155903bcbc060e316fb6cc7cbf2e1907329391ebadc1fe0ce77c2'}, + {'js-sys-0.3.66.tar.gz': 'cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'libc-0.2.147.tar.gz': 'b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3'}, + {'libredox-0.0.1.tar.gz': '85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8'}, + {'linux-raw-sys-0.4.11.tar.gz': '969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829'}, + {'lock_api-0.4.11.tar.gz': '3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45'}, + {'log-0.4.20.tar.gz': 'b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f'}, + {'macro_rules_attribute-0.1.3.tar.gz': 'cf0c9b980bf4f3a37fd7b1c066941dd1b1d0152ce6ee6e8fe8c49b9f6810d862'}, + {'macro_rules_attribute-proc_macro-0.1.3.tar.gz': + '58093314a45e00c77d5c508f76e77c3396afbbc0d01506e7fae47b018bac2b1d'}, + {'matrixmultiply-0.2.4.tar.gz': '916806ba0031cd542105d916a97c8572e1fa6dd79c9c51e7eb43a09ec2dd84c1'}, + {'matrixmultiply-0.3.8.tar.gz': '7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2'}, + {'memchr-2.6.4.tar.gz': 'f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167'}, + {'memoffset-0.8.0.tar.gz': 'd61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1'}, + {'memoffset-0.9.0.tar.gz': '5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c'}, + {'mime-0.3.17.tar.gz': '6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a'}, + {'minimal-lexical-0.2.1.tar.gz': '68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a'}, + {'miniz_oxide-0.7.1.tar.gz': 'e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7'}, + {'mio-0.8.8.tar.gz': '927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2'}, + {'monostate-0.1.6.tar.gz': '0230b703f1ac35df1e24f6d0d2255472bcccaf657ecdfa4f1fcbcad1ad5bb98a'}, + {'monostate-impl-0.1.6.tar.gz': '8795add3e14028f11f8e848bd3294898a8294767b3776b6f733560d33bd2530b'}, + {'native-tls-0.2.11.tar.gz': '07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e'}, + {'ndarray-0.13.1.tar.gz': 'ac06db03ec2f46ee0ecdca1a1c34a99c0d188a0d83439b84bf0cb4b386e4ab09'}, + {'ndarray-0.15.6.tar.gz': 'adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32'}, + {'nom-7.1.3.tar.gz': 'd273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a'}, + {'num-complex-0.2.4.tar.gz': 'b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95'}, + {'num-complex-0.4.4.tar.gz': '1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214'}, + {'num-integer-0.1.45.tar.gz': '225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9'}, + {'num-traits-0.2.17.tar.gz': '39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c'}, + {'num_cpus-1.16.0.tar.gz': '4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43'}, + {'number_prefix-0.3.0.tar.gz': '17b02fc0ff9a9e4b35b3342880f48e896ebf69f2967921fe8646bf5b7125956a'}, + {'number_prefix-0.4.0.tar.gz': '830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3'}, + {'numpy-0.18.0.tar.gz': '96b0fee4571867d318651c24f4a570c3f18408cf95f16ccb576b3ce85496a46e'}, + {'object-0.32.1.tar.gz': '9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0'}, + {'once_cell-1.18.0.tar.gz': 'dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d'}, + {'onig-6.4.0.tar.gz': '8c4b31c8722ad9171c6d77d3557db078cab2bd50afcc9d09c8b315c59df8ca4f'}, + {'onig_sys-69.8.1.tar.gz': '7b829e3d7e9cc74c7e315ee8edb185bf4190da5acde74afd7fc59c35b1f086e7'}, + {'openssl-0.10.55.tar.gz': '345df152bc43501c5eb9e4654ff05f794effb78d4efe3d53abc158baddc0703d'}, + {'openssl-macros-0.1.1.tar.gz': 'a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c'}, + {'openssl-probe-0.1.5.tar.gz': 'ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf'}, + {'openssl-sys-0.9.90.tar.gz': '374533b0e45f3a7ced10fcaeccca020e66656bc03dac384f852e4e5a7a8104a6'}, + {'parking_lot-0.12.1.tar.gz': '3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f'}, + {'parking_lot_core-0.9.9.tar.gz': '4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e'}, + {'password-hash-0.4.2.tar.gz': '7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700'}, + {'paste-1.0.14.tar.gz': 'de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c'}, + {'pbkdf2-0.11.0.tar.gz': '83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917'}, + {'percent-encoding-2.3.1.tar.gz': 'e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e'}, + {'pin-project-lite-0.2.13.tar.gz': '8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58'}, + {'pin-utils-0.1.0.tar.gz': '8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184'}, + {'pkg-config-0.3.27.tar.gz': '26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964'}, + {'ppv-lite86-0.2.17.tar.gz': '5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de'}, + {'proc-macro2-1.0.63.tar.gz': '7b368fba921b0dce7e60f5e04ec15e565b3303972b42bcfde1d0713b881959eb'}, + {'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'}, + {'quick-error-1.2.3.tar.gz': 'a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0'}, + {'quote-1.0.30.tar.gz': '5907a1b7c277254a8b15170f6e7c97cfa60ee7872a3217663bb81151e48184bb'}, + {'rand-0.8.5.tar.gz': '34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404'}, + {'rand_chacha-0.3.1.tar.gz': 'e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88'}, + {'rand_core-0.6.4.tar.gz': 'ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c'}, + {'rawpointer-0.2.1.tar.gz': '60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3'}, + {'rayon-1.8.0.tar.gz': '9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1'}, + {'rayon-cond-0.1.0.tar.gz': 'fd1259362c9065e5ea39a789ef40b1e3fd934c94beb7b5ab3ac6629d3b5e7cb7'}, + {'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.4.3.tar.gz': '5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f'}, + {'regex-syntax-0.6.29.tar.gz': 'f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1'}, + {'regex-syntax-0.8.2.tar.gz': 'c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f'}, + {'reqwest-0.11.22.tar.gz': '046cd98826c46c2ac8ddecae268eb5c2e58628688a5fc7a2643704a73faba95b'}, + {'rustc-demangle-0.1.23.tar.gz': 'd626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76'}, + {'rustc-hash-1.1.0.tar.gz': '08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2'}, + {'rustix-0.38.13.tar.gz': 'd7db8590df6dfcd144d22afd1b83b36c21a18d7cbc1dc4bb5295a8712e9eb662'}, + {'ryu-1.0.15.tar.gz': '1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741'}, + {'schannel-0.1.22.tar.gz': '0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88'}, + {'scopeguard-1.2.0.tar.gz': '94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49'}, + {'security-framework-2.9.2.tar.gz': '05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de'}, + {'security-framework-sys-2.9.1.tar.gz': 'e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a'}, + {'serde-1.0.168.tar.gz': 'd614f89548720367ded108b3c843be93f3a341e22d5674ca0dd5cd57f34926af'}, + {'serde_derive-1.0.168.tar.gz': 'd4fe589678c688e44177da4f27152ee2d190757271dc7f1d5b6b9f68d869d641'}, + {'serde_json-1.0.99.tar.gz': '46266871c240a00b8f503b877622fe33430b3c7d963bdc0f2adc511e54a1eae3'}, + {'serde_urlencoded-0.7.1.tar.gz': 'd3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd'}, + {'sha1-0.10.5.tar.gz': 'f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3'}, + {'sha2-0.10.7.tar.gz': '479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8'}, + {'slab-0.4.9.tar.gz': '8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67'}, + {'smallvec-1.11.2.tar.gz': '4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970'}, + {'socket2-0.4.9.tar.gz': '64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662'}, + {'socket2-0.5.4.tar.gz': '4031e820eb552adee9295814c0ced9e5cf38ddf1e8b7d566d6de8e2538ea989e'}, + {'spm_precompiled-0.1.4.tar.gz': '5851699c4033c63636f7ea4cf7b7c1f1bf06d0cc03cfb42e711de5a5c46cf326'}, + {'strsim-0.10.0.tar.gz': '73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623'}, + {'subtle-2.5.0.tar.gz': '81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc'}, + {'syn-1.0.109.tar.gz': '72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237'}, + {'syn-2.0.22.tar.gz': '2efbeae7acf4eabd6bcdcbd11c92f45231ddda7539edc7806bd1a04a03b24616'}, + {'system-configuration-0.5.1.tar.gz': 'ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7'}, + {'system-configuration-sys-0.5.0.tar.gz': 'a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9'}, + {'tar-0.4.40.tar.gz': 'b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb'}, + {'target-lexicon-0.12.8.tar.gz': '1b1c7f239eb94671427157bd93b3694320f3668d4e1eff08c7285366fd777fac'}, + {'tempfile-3.8.0.tar.gz': 'cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef'}, + {'termcolor-1.4.0.tar.gz': 'ff1bc3d3f05aff0403e8ac0d92ced918ec05b666a43f83297ccef5bea8a3d449'}, + {'thiserror-1.0.40.tar.gz': '978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac'}, + {'thiserror-impl-1.0.40.tar.gz': 'f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f'}, + {'time-0.3.22.tar.gz': 'ea9e1b3cf1243ae005d9e74085d4d542f3125458f3a81af210d901dcd7411efd'}, + {'time-core-0.1.1.tar.gz': '7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb'}, + {'tinyvec-1.6.0.tar.gz': '87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50'}, + {'tinyvec_macros-0.1.1.tar.gz': '1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20'}, + {'tokio-1.33.0.tar.gz': '4f38200e3ef7995e5ef13baec2f432a6da0aa9ac495b2c0e8f3b7eec2c92d653'}, + {'tokio-native-tls-0.3.1.tar.gz': 'bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2'}, + {'tokio-util-0.7.10.tar.gz': '5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15'}, + {'tower-service-0.3.2.tar.gz': 'b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52'}, + {'tracing-0.1.40.tar.gz': 'c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef'}, + {'tracing-core-0.1.32.tar.gz': 'c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54'}, + {'try-lock-0.2.4.tar.gz': '3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed'}, + {'typenum-1.17.0.tar.gz': '42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825'}, + {'unicode-bidi-0.3.13.tar.gz': '92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'unicode-normalization-0.1.22.tar.gz': '5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921'}, + {'unicode-normalization-alignments-0.1.12.tar.gz': + '43f613e4fa046e69818dd287fdc4bc78175ff20331479dab6e1b0f98d57062de'}, + {'unicode-segmentation-1.10.1.tar.gz': '1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36'}, + {'unicode-width-0.1.11.tar.gz': 'e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85'}, + {'unicode_categories-0.1.1.tar.gz': '39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e'}, + {'unindent-0.1.11.tar.gz': 'e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c'}, + {'url-2.5.0.tar.gz': '31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633'}, + {'utf8parse-0.2.1.tar.gz': '711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'version_check-0.9.4.tar.gz': '49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f'}, + {'want-0.3.1.tar.gz': 'bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wasm-bindgen-0.2.89.tar.gz': '0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e'}, + {'wasm-bindgen-backend-0.2.89.tar.gz': '1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826'}, + {'wasm-bindgen-futures-0.4.39.tar.gz': 'ac36a15a220124ac510204aec1c3e5db8a22ab06fd6706d881dc6149f8ed9a12'}, + {'wasm-bindgen-macro-0.2.89.tar.gz': '0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2'}, + {'wasm-bindgen-macro-support-0.2.89.tar.gz': 'f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283'}, + {'wasm-bindgen-shared-0.2.89.tar.gz': '7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f'}, + {'web-sys-0.3.66.tar.gz': '50c24a44ec86bb68fbecd1b3efed7e85ea5621b39b35ef2766b66cd984f8010f'}, + {'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'}, + {'winreg-0.50.0.tar.gz': '524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1'}, + {'xattr-1.0.1.tar.gz': 'f4686009f71ff3e5c4dbcf1a282d0a44db3f021ba69350cd42086b3e5f1c6985'}, + {'zip-0.6.6.tar.gz': '760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261'}, + {'zstd-0.11.2+zstd.1.5.2.tar.gz': '20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4'}, + {'zstd-safe-5.0.2+zstd.1.5.2.tar.gz': '1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db'}, + {'zstd-sys-2.0.9+zstd.1.5.5.tar.gz': '9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656'}, +] builddependencies = [ ('binutils', '2.39'), diff --git a/easybuild/easyconfigs/t/topaz/topaz-0.2.5.20230926-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/t/topaz/topaz-0.2.5.20230926-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 00000000000..045f43bbb15 --- /dev/null +++ b/easybuild/easyconfigs/t/topaz/topaz-0.2.5.20230926-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,55 @@ +# Thomas Hoffman, EMBL Heidelberg, structures-it@embl.de, 2023/11 +easyblock = 'PythonPackage' + +name = 'topaz' +_mainversion = '0.2.5' +_commitdate = '20230926' +_commit = 'dadfe725efa9181e55864054f492a41b4abe8c1c' +version = '%s.%s' % (_mainversion, _commitdate) +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'http://cb.csail.mit.edu/cb/topaz/' + +description = """Particle picking software for single particle cryo-electron microscopy using +convolutional neural networks and positive-unlabeled learning. Includes methods +for micrograph denoising.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +use_pip = True + +dependencies = [ + ('CUDA', '11.7.0', '', SYSTEM), + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('PyTorch', '1.12.0', versionsuffix), + ('scikit-learn', '1.1.2'), + ('torchvision', '0.13.1', versionsuffix), +] + +source_urls = [ + 'https://github.com/tbepler/topaz/archive', +] +sources = [{ + 'download_filename': '%s.tar.gz' % _commit, + 'filename': '%(name)s-%(version)s.tar.gz' +}] +patches = [ + 'topaz-0.2.5_install_relion3_wrappers.patch', +] +checksums = [ + {'topaz-0.2.5.20230926.tar.gz': 'd0d6a36c106b565f9623fb2fada7494cc3e5bbde0925dad39794e8791dfad14f'}, + {'topaz-0.2.5_install_relion3_wrappers.patch': '0fe23a0ecaf887aaa89641a7e7cf37fafd3134384b0a8f46acb4e17537d1a151'}, +] + +download_dep_fail = True +sanity_pip_check = True +options = {'modulename': 'topaz'} +_relion3_wrappers = ['denoise', 'pick', 'train', 'train_denoise'] +sanity_check_commands = ['run_topaz_%s.py --help' % x for x in _relion3_wrappers] + ['topaz --help'] +sanity_check_paths = { + 'files': ["bin/run_topaz_%s.py" % x for x in _relion3_wrappers], + 'dirs': [], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/t/topaz/topaz-0.2.5_install_relion3_wrappers.patch b/easybuild/easyconfigs/t/topaz/topaz-0.2.5_install_relion3_wrappers.patch new file mode 100644 index 00000000000..533e6e11b93 --- /dev/null +++ b/easybuild/easyconfigs/t/topaz/topaz-0.2.5_install_relion3_wrappers.patch @@ -0,0 +1,14 @@ +# Thomas Hoffmann, EMBL Heidelberg, structures-it@embl.de, 2023/11 +# install relion3 wrappers into bin +diff -ru topaz-0.2.5/setup.py topaz-0.2.5_install_relion3_wrappers/setup.py +--- topaz-0.2.5/setup.py 2022-03-11 02:33:01.000000000 +0100 ++++ topaz-0.2.5_install_relion3_wrappers/setup.py 2023-11-13 17:46:28.306807471 +0100 +@@ -30,7 +30,7 @@ + #package_dir = {'': 'topaz'}, + entry_points = {'console_scripts': ['topaz = topaz.main:main']}, + include_package_data = True, +- ++ scripts=['relion_run_topaz/run_topaz_%s.py' % x for x in ['denoise','pick','train','train_denoise']], + install_requires=[ + 'torch>=1.0.0', + 'torchvision', 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' 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..87bd4a020ed --- /dev/null +++ b/easybuild/easyconfigs/v/VSCode/VSCode-1.85.0.eb @@ -0,0 +1,30 @@ +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] +checksums = ['01669d69e567a5290336b1d2f7b2f0f1816e9d7099004b81a26f8f40ee17c9fc'] + +modaliases = {'vscode': '%(installdir)s/bin/code'} + +sanity_check_paths = { + 'files': ['code', 'bin/code'], + 'dirs': ['bin', 'locales', 'resources'] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/v/VSEARCH/VSEARCH-2.25.0-GCC-12.3.0.eb b/easybuild/easyconfigs/v/VSEARCH/VSEARCH-2.25.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..dc48a4d3d45 --- /dev/null +++ b/easybuild/easyconfigs/v/VSEARCH/VSEARCH-2.25.0-GCC-12.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'VSEARCH' +version = '2.25.0' + +homepage = 'https://github.com/torognes/vsearch' +description = """VSEARCH supports de novo and reference based chimera detection, + clustering, full-length and prefix dereplication, rereplication, + reverse complementation, masking, all-vs-all pairwise global alignment, + exact and global alignment searching, shuffling, subsampling and sorting. + It also supports FASTQ file analysis, filtering, + conversion and merging of paired-end reads.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/torognes/vsearch/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['b7e25638924e56591d7c6ac3a959795000439937f5b566be7f06457bb31f91a9'] + +builddependencies = [ + ('Autotools', '20220317'), +] + +dependencies = [ + ('zlib', '1.2.13'), + ('bzip2', '1.0.8'), +] + +preconfigopts = './autogen.sh &&' + +configopts = '--disable-pdfman ' + +sanity_check_paths = { + 'files': ['bin/vsearch'], + 'dirs': [], +} + +sanity_check_commands = ['vsearch --help'] + +moduleclass = 'bio' 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' 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..9d18ff59c28 --- /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', SYSTEM), + ('MUSCLE', '3.8.31'), + ('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..5270c708249 --- /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', '6.10.0'), +] + +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' 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' diff --git a/easybuild/easyconfigs/v/vaeda/vaeda-0.0.30-foss-2022a.eb b/easybuild/easyconfigs/v/vaeda/vaeda-0.0.30-foss-2022a.eb new file mode 100644 index 00000000000..81be3ccd7c0 --- /dev/null +++ b/easybuild/easyconfigs/v/vaeda/vaeda-0.0.30-foss-2022a.eb @@ -0,0 +1,40 @@ +easyblock = 'PythonBundle' + +name = 'vaeda' +# recent vaeda version are also available via https://test.pypi.org/project/vaeda, +# but downloading from there doesn't seem like a good idea... +local_commit = '36cdc53' +version = '0.0.30' + +homepage = 'https://github.com/kostkalab/vaeda' +description = """vaeda (variaitonal auto-encoder (vae) for doublet annotation (da)) is a Python package for doublet +annotation in single cell RNA-sequencing.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('scikit-learn', '1.1.2'), + ('scanpy', '1.9.1'), + ('TensorFlow', '2.11.0'), + ('tensorflow-probability', '0.19.0'), +] + +use_pip = True + +exts_list = [ + ('kneed', '0.8.1', { + 'preinstallopts': "sed -i 's/install_requires = .*/install_requires = numpy;scipy/g' setup.cfg && ", + 'checksums': ['6addebca6a3742e51a173f4f40f789c704677c49bc0b02666e7d71152ca0e473'], + }), + (name, version, { + 'source_urls': ['https://github.com/kostkalab/vaeda/archive/'], + 'sources': [{'download_filename': '36cdc53.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['bef23d0496944a5b9c41645de0442db99ddb26e3fb69bda3437c00339832295e'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/v/virtualenv/virtualenv-20.24.6-GCCcore-13.2.0.eb b/easybuild/easyconfigs/v/virtualenv/virtualenv-20.24.6-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..a0b9921fb5c --- /dev/null +++ b/easybuild/easyconfigs/v/virtualenv/virtualenv-20.24.6-GCCcore-13.2.0.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonBundle' + +name = 'virtualenv' +version = '20.24.6' + +homepage = 'https://github.com/pypa/virtualenv' +description = "A tool for creating isolated virtual python environments." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('binutils', '2.40'), + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.5'), +] + +exts_default_options = { + 'download_dep_fail': True, + 'sanity_pip_check': True, + 'use_pip': True, +} + +exts_list = [ + ('distlib', '0.3.7', { + 'checksums': ['9dafe54b34a028eafd95039d5e5d4851a13734540f1331060d31c9916e7147a8'], + }), + ('filelock', '3.13.0', { + 'checksums': ['63c6052c82a1a24c873a549fbd39a26982e8f35a3016da231ead11a5be9dad44'], + }), + ('platformdirs', '3.11.0', { + 'checksums': ['cf8ee52a3afdb965072dcc652433e0c7e3e40cf5ea1477cd4b3b1d2eb75495b3'], + }), + (name, version, { + 'checksums': ['02ece4f56fbf939dbbc33c0715159951d6bf14aaf5457b092e4548e1382455af'], + }), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(namelower)s'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2022a.eb b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2022a.eb index de04e74ec1c..e3bdcb00894 100644 --- a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2022a.eb +++ b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2022a.eb @@ -31,6 +31,11 @@ dependencies = [ ('Python', '3.10.4'), ] +# Without this, the wrong (system) python is picked up by cmake +# in cases where the system python is newer than the one used in these EasyConfigs +# See PR # 19119 +configopts = '-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' + sanity_check_paths = { 'files': ['include/wscleaninterface.h', 'bin/wsclean'], 'dirs': ['bin'], diff --git a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2023a.eb b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2023a.eb new file mode 100644 index 00000000000..336ac8a3895 --- /dev/null +++ b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2023a.eb @@ -0,0 +1,35 @@ +easyblock = 'MakeCp' + +name = 'Wannier90' +version = '3.1.0' + +homepage = 'http://www.wannier.org' +description = """A tool for obtaining maximally-localised Wannier functions""" + +toolchain = {'name': 'gomkl', 'version': '2023a'} +toolchainopts = {'usempi': True} + +github_account = 'wannier-developers' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +patches = ['Wannier90_3x_ignore_makeinc.patch'] +checksums = [ + '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz + '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch +] + +# The -fallow-argument-mismatch allows MPI communication calls to be +# called with arrays of different types at different places in the +# code. This otherwise cause an error in GCC 10.X +buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS -fallow-argument-mismatch" LDOPTS="$FFLAGS" ' +buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' +buildopts += 'COMMS=mpi' + +files_to_copy = [(['wannier90.x', 'postw90.x'], 'bin'), (['libwannier.a'], 'lib')] + +sanity_check_paths = { + 'files': ['bin/wannier90.x', 'bin/postw90.x', 'lib/libwannier.a'], + 'dirs': [] +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/w/Wayland/Wayland-1.22.0-GCCcore-13.2.0.eb b/easybuild/easyconfigs/w/Wayland/Wayland-1.22.0-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..dac0641eed7 --- /dev/null +++ b/easybuild/easyconfigs/w/Wayland/Wayland-1.22.0-GCCcore-13.2.0.eb @@ -0,0 +1,63 @@ +# Author: Jasper Grimm (UoY) +# URL of Wayland download changed to GitLab due to changes upstream +# Author: J. Sassmannshausen (Imperial College London/UK) +easyblock = 'Bundle' + +name = 'Wayland' +version = '1.22.0' + +homepage = 'https://wayland.freedesktop.org/' +description = """ +Wayland is a project to define a protocol for a compositor to talk to + its clients as well as a library implementation of the protocol. The + compositor can be a standalone display server running on Linux kernel + modesetting and evdev input devices, an X application, or a wayland + client itself. The clients can be traditional applications, X servers + (rootless or fullscreen) or other display servers. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('CMake', '3.27.6'), + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('pkgconf', '2.0.3'), + ('binutils', '2.40'), +] + +dependencies = [ + ('libffi', '3.4.4'), + ('expat', '2.5.0'), + ('libxml2', '2.11.5'), +] + +default_easyblock = 'MesonNinja' +default_component_specs = { + 'start_dir': '%(namelower)s-%(version)s', +} + +components = [ + ('wayland', version, { + 'source_urls': ['https://gitlab.freedesktop.org/wayland/%(namelower)s/-/releases/%(version)s/downloads'], + 'checksums': ['1540af1ea698a471c2d8e9d288332c7e0fd360c8f1d12936ebb7e7cbc2425842'], + 'sources': [SOURCE_TAR_XZ], + 'configopts': "-Ddocumentation=false", + }), + ('wayland-protocols', '1.32', { + 'source_urls': ['https://gitlab.freedesktop.org/wayland/%(namelower)s/-/releases/%(version)s/downloads'], + 'checksums': ['7459799d340c8296b695ef857c07ddef24c5a09b09ab6a74f7b92640d2b1ba11'], + 'sources': [SOURCE_TAR_XZ], + 'preconfigopts': "PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH " + }), +] + +_libs = ['lib/libwayland-%s.%s' % (x, SHLIB_EXT) for x in ['client', 'cursor', 'egl', 'server']] +sanity_check_paths = { + 'files': ['bin/wayland-scanner'] + _libs, + 'dirs': ['lib'], +} + +sanity_check_commands = ["wayland-scanner --help", "wayland-scanner --version"] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2021a.eb b/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2021a.eb new file mode 100644 index 00000000000..b033fcf10d9 --- /dev/null +++ b/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1-foss-2021a.eb @@ -0,0 +1,48 @@ +# easyconfig file for waLBerla v6.1 +easyblock = 'CMakeMake' + +name = 'waLBerla' +version = '6.1' + +homepage = "https://walberla.net/index.html" +description = """Widely applicable Lattics-Boltzmann from Erlangen is a +block-structured high-performance framework for multiphysics simulations""" + +toolchain = {'name': 'foss', 'version': '2021a'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = ['https://i10git.cs.fau.de/walberla/walberla/-/archive/v6.1'] +sources = ['%(name)s-v%(version)s.tar.gz'] +patches = ['waLBerla-6.1_fix_cmakelist_for_easybuild.patch'] +checksums = [ + {'waLBerla-v6.1.tar.gz': 'f0acdd9ad6543bc9306c8aae953dd5065986271d4398916ae0469db8b21c007a'}, + {'waLBerla-6.1_fix_cmakelist_for_easybuild.patch': + '057066d07294e8f159c2545d2d5f9138d439dbb54bc70eb75eca1f82ae650c47'}, +] + +builddependencies = [('CMake', '3.20.1')] + +dependencies = [ + ('pybind11', '2.6.2'), + ('Python', '3.9.5'), + ('Boost.MPI', '1.76.0'), + ('SciPy-bundle', '2021.05'), +] + +parallel = 1 + +configopts = "-DWALBERLA_BUILD_WITH_PYTHON=ON " +configopts += "-DWALBERLA_BUILD_SHOWCASES=OFF " +configopts += "-DWALBERLA_BUILD_DOC=OFF " +configopts += "-DPython_ROOT_DIR=$EBROOTPYTHON " + +modextrapaths = {'PYTHONPATH': ['pythonmodule']} + +sanity_check_paths = { + 'files': ['waLBerlaDefinitions.h', 'pythonmodule/walberla_cpp.cpython-39-x86_64-linux-gnu.so'], + 'dirs': ['pythonmodule'] +} + +sanity_check_commands = [('python', "-c 'import waLBerla'")] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1_fix_cmakelist_for_easybuild.patch b/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1_fix_cmakelist_for_easybuild.patch new file mode 100644 index 00000000000..c5b275b6fe3 --- /dev/null +++ b/easybuild/easyconfigs/w/waLBerla/waLBerla-6.1_fix_cmakelist_for_easybuild.patch @@ -0,0 +1,16 @@ +diff -ruN walberla-v6.1.orig/CMakeLists.txt walberla-v6.1/CMakeLists.txt +--- walberla-v6.1.orig/CMakeLists.txt 2023-10-17 13:06:02.619565000 +0200 ++++ walberla-v6.1/CMakeLists.txt 2023-10-26 19:28:03.622447001 +0200 +@@ -1313,8 +1313,10 @@ + configure_file ( src/waLBerlaDefinitions.in.h + src/waLBerlaDefinitions.h ) + +-install( FILES ${walberla_BINARY_DIR}/src/waLBerlaDefinitions.h DESTINATION walberla/ ) +- ++install( FILES ${walberla_BINARY_DIR}/src/waLBerlaDefinitions.h DESTINATION . ) ++install( DIRECTORY ${walberla_BINARY_DIR}/apps/pythonmodule/ DESTINATION pythonmodule/ ) ++install( DIRECTORY ${walberla_BINARY_DIR}/apps/benchmarks/ DESTINATION benchmarks/ ) ++install( DIRECTORY ${walberla_BINARY_DIR}/apps/tutorials/ DESTINATION tutorials/ ) + + # test + if ( WALBERLA_BUILD_TESTS ) 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' diff --git a/easybuild/easyconfigs/x/XGBoost/XGBoost-2.0.2-gfbf-2023a.eb b/easybuild/easyconfigs/x/XGBoost/XGBoost-2.0.2-gfbf-2023a.eb new file mode 100644 index 00000000000..49a3b33a0a2 --- /dev/null +++ b/easybuild/easyconfigs/x/XGBoost/XGBoost-2.0.2-gfbf-2023a.eb @@ -0,0 +1,29 @@ +easyblock = 'PythonPackage' + +name = 'XGBoost' +version = '2.0.2' + +homepage = 'https://github.com/dmlc/xgboost' +description = """XGBoost is an optimized distributed gradient boosting library designed to be highly efficient, + flexible and portable.""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['55b5188e6da1d61f02f30a5dd8daffc3a6b5bb975a7249bf381dc1754dc89688'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('hatchling', '1.18.0'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'ai' 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' diff --git a/easybuild/easyconfigs/x/Xvfb/Xvfb-21.1.9-GCCcore-13.2.0.eb b/easybuild/easyconfigs/x/Xvfb/Xvfb-21.1.9-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..740256850ac --- /dev/null +++ b/easybuild/easyconfigs/x/Xvfb/Xvfb-21.1.9-GCCcore-13.2.0.eb @@ -0,0 +1,126 @@ +easyblock = 'Bundle' + +name = 'Xvfb' +version = '21.1.9' + +homepage = 'https://www.x.org/releases/X11R7.6/doc/man/man1/Xvfb.1.xhtml' +description = """Xvfb is an X server that can run on machines with no display hardware and no physical input devices. + It emulates a dumb framebuffer using virtual memory.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '2.0.3'), + ('Python', '3.11.5'), + ('Meson', '1.2.3'), + ('Ninja', '1.11.1'), + ('libxslt', '1.1.38'), + ('gettext', '0.22'), + ('Bison', '3.8.2'), +] + +dependencies = [ + ('X11', '20231019'), + ('pixman', '0.42.2'), + ('libdrm', '2.4.117'), + ('Mesa', '23.1.9'), + ('nettle', '3.9.1'), + ('libunwind', '1.6.2'), + ('XZ', '5.4.4'), +] + +default_easyblock = 'ConfigureMake' + +local_xvfb_configopts = "--enable-xvfb --disable-xorg --disable-xnest --disable-xwin " +local_xvfb_configopts += "--disable-dri --disable-dri2 --disable-dri3 --disable-libunwind " +local_xvfb_configopts += "--with-fontrootdir=%(installdir)s/share/fonts/X11" + +# use 'make V=1' to see compiler commands +local_xvfb_buildopts = "V=1 " + +# use static libraries for nettle & libunwind, so avoid errors like "No rule to make target '-lnettle'" +local_xvfb_buildopts += 'SHA1_LIBS="$EBROOTNETTLE/lib*/libnettle.a" ' +local_xvfb_buildopts += 'LIBUNWIND_LIBS="$EBROOTLIBUNWIND/lib*/libunwind.a $EBROOTXZ/lib*/liblzma.a"' + +default_component_specs = { + 'sources': [SOURCE_TAR_GZ], + 'start_dir': '%(name)s-%(version)s', +} + +local_font_misc_preconfigopts = "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && " +local_font_misc_preconfigopts += "export PATH=%(installdir)s/bin:$PATH && " + +components = [ + ('mkfontscale', '1.2.2', { + 'source_urls': ['https://www.x.org/archive/individual/app/'], + 'checksums': ['4a5af55e670713024639a7f7d10826d905d86faf574cd77e0f5aef2d00e70168'], + }), + ('mkfontdir', '1.0.7', { + 'source_urls': ['https://www.x.org/archive/individual/app/'], + 'checksums': ['bccc5fb7af1b614eabe4a22766758c87bfc36d66191d08c19d2fa97674b7b5b7'], + }), + ('bdftopcf', '1.1', { + 'source_urls': ['https://www.x.org/archive/individual/app/'], + 'checksums': ['699d1a62012035b1461c7f8e3f05a51c8bd6f28f348983249fb89bbff7309b47'], + }), + ('font-util', '1.4.1', { + 'source_urls': ['https://www.x.org/archive/individual/font/'], + 'checksums': ['f029ae80cdd75d89bee7f7af61c21e07982adfb9f72344a158b99f91f77ef5ed'], + }), + ('font-misc-misc', '1.1.3', { + 'source_urls': ['https://www.x.org/archive/individual/font/'], + 'checksums': ['bece4a9482b3cb6f7fad2164fd3b394d22dfe1ad2f96f60030a703bcff30f5a5'], + 'preconfigopts': local_font_misc_preconfigopts, + }), + ('xkbcomp', '1.4.6', { + 'source_urls': ['https://www.x.org/archive/individual/app/'], + 'checksums': ['b216a2c8c0eab83f3dc4a3d5ee2bdf7827b30e49c8907035d0f222138eca0987'], + }), + ('xkeyboard-config', '2.40', { + 'easyblock': 'MesonNinja', + 'source_urls': ['https://www.x.org/archive/individual/data/xkeyboard-config/'], + 'sources': [SOURCE_TAR_XZ], + 'checksums': ['7a3dba1bec7dc7191432da021242d17c9cf6c89690e6c57b0de048ff8c9d2ae3'], + 'configopts': '-Dxorg-rules-symlinks=true', + }), + ('xauth', '1.1.2', { + 'source_urls': ['https://www.x.org/releases/individual/app/'], + 'checksums': ['84d27a1023d8da524c134f424b312e53cb96e08871f96868aa20316bfcbbc054'], + }), + ('libxcvt', '0.1.2', { + 'easyblock': 'MesonNinja', + 'source_urls': ['https://www.x.org/archive/individual/lib/'], + 'sources': [SOURCE_TAR_XZ], + 'checksums': ['0561690544796e25cfbd71806ba1b0d797ffe464e9796411123e79450f71db38'], + }), + (name, version, { + 'source_urls': ['https://www.x.org/releases/individual/xserver/'], + 'sources': ['xorg-server-%(version)s.tar.gz'], + 'patches': [('xvfb-run', '.')], + 'checksums': [ + '455ac22c411b3e74adb4d1b3fd48b9037b6b5ba9260247c59b669f67a08fd26e', # xorg-server-21.1.9.tar.gz + 'fd6d13182b77871d4f65fccdaebb8a72387a726426066d3f8e6aa26b010ea0e8', # xvfb-run + ], + 'start_dir': 'xorg-server-%(version)s', + 'configopts': local_xvfb_configopts, + 'buildopts': local_xvfb_buildopts, + 'installopts': local_xvfb_buildopts, + }), +] + +# enable exec permissions for xvfb-run after copying; +# need to also enable user write permissions on xvfb-run to ensure that copying with preserved permissions works +postinstallcmds = ["chmod u+w xvfb-run && cp -a xvfb-run %(installdir)s/bin/ && chmod a+x %(installdir)s/bin/xvfb-run"] + +sanity_check_paths = { + 'files': ['bin/Xvfb', 'bin/xvfb-run'], + 'dirs': ['lib/xorg', 'share/fonts/X11/misc', 'share/fonts/X11/util'], +} + +sanity_check_commands = [ + "xvfb-run --help", + "xvfb-run --error-file %(builddir)s/xvfb-run-test.err echo hello", +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/x/xprop/xprop-1.2.6-GCCcore-12.3.0.eb b/easybuild/easyconfigs/x/xprop/xprop-1.2.6-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..beb0c5358fd --- /dev/null +++ b/easybuild/easyconfigs/x/xprop/xprop-1.2.6-GCCcore-12.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'xprop' +version = '1.2.6' + +homepage = "https://www.x.org/wiki/" +description = """The xprop utility is for displaying window and font properties in an X server. + One window or font is selected using the command line arguments or possibly + in the case of a window, by clicking on the desired window. A list of + properties is then given, possibly with formatting information.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://ftp.x.org/archive/individual/app/'] +sources = [SOURCE_TAR_GZ] +checksums = ['58ee5ee0c47fa454d3b16312e778c3f549605a8ad0fd0daafc70d2d6174b116d'] + +builddependencies = [ + ('binutils', '2.40'), + ('pkgconf', '1.9.5'), +] + +dependencies = [ + ('X11', '20230603'), +] + +sanity_check_paths = { + 'files': ['bin/xprop'], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/x/xproto/xproto-7.0.31-GCCcore-13.2.0.eb b/easybuild/easyconfigs/x/xproto/xproto-7.0.31-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..a1cf4fe28c7 --- /dev/null +++ b/easybuild/easyconfigs/x/xproto/xproto-7.0.31-GCCcore-13.2.0.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'xproto' +version = '7.0.31' + +homepage = 'https://www.freedesktop.org/wiki/Software/xlibs' +description = "X protocol and ancillary headers" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = [XORG_PROTO_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['6d755eaae27b45c5cc75529a12855fed5de5969b367ed05003944cf901ed43c7'] + +builddependencies = [ + ('binutils', '2.40'), + ('xorg-macros', '1.20.0'), +] + +sanity_check_paths = { + 'files': ['include/X11/%s' % x for x in ['ap_keysym.h', 'HPkeysym.h', 'keysym.h', 'Xalloca.h', 'Xatom.h', + 'XF86keysym.h', 'Xfuncs.h', 'Xmd.h', 'Xos.h', 'Xpoll.h', 'Xprotostr.h', + 'Xw32defs.h', 'Xwindows.h', 'DECkeysym.h', 'keysymdef.h', 'Sunkeysym.h', + 'Xarch.h', 'Xdefs.h', 'Xfuncproto.h', 'X.h', 'Xosdefs.h', 'Xos_r.h', + 'Xproto.h', 'Xthreads.h', 'XWDFile.h', 'Xwinsock.h']], + 'dirs': [] +} + +moduleclass = 'devel' 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..9b68c99495d --- /dev/null +++ b/easybuild/easyconfigs/x/xtb/xtb-6.6.0-intel-2022a.eb @@ -0,0 +1,46 @@ +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 --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' diff --git a/easybuild/easyconfigs/x/xtb/xtb-6.6.1-foss-2023a.eb b/easybuild/easyconfigs/x/xtb/xtb-6.6.1-foss-2023a.eb new file mode 100644 index 00000000000..2c7121360de --- /dev/null +++ b/easybuild/easyconfigs/x/xtb/xtb-6.6.1-foss-2023a.eb @@ -0,0 +1,41 @@ +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': 'foss', 'version': '2023a'} + +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', '1.1.1'), + ('Ninja', '1.11.1'), + ('pkgconf', '1.9.5'), +] + +configopts = "-Dlapack='custom' " +configopts += "-Dcustom_libraries='flexiblas' " +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/xxHash/xxHash-0.8.1-GCCcore-10.2.0.eb b/easybuild/easyconfigs/x/xxHash/xxHash-0.8.1-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..d659f1192dd --- /dev/null +++ b/easybuild/easyconfigs/x/xxHash/xxHash-0.8.1-GCCcore-10.2.0.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'xxHash' +version = '0.8.1' + +homepage = 'https://cyan4973.github.io/xxHash' +description = "xxHash is an extremely fast non-cryptographic hash algorithm, working at RAM speed limit." + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +source_urls = ['https://github.com/Cyan4973/xxHash/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['3bb6b7d6f30c591dd65aaaff1c8b7a5b94d81687998ca9400082c739a690436c'] + +builddependencies = [ + ('binutils', '2.35'), +] + +skipsteps = ['configure'] + +installopts = "PREFIX=%(installdir)s" + +sanity_check_paths = { + 'files': ['bin/xxhsum', 'include/xxh3.h', 'include/xxhash.h', + 'lib/libxxhash.a', 'lib/libxxhash.%s' % SHLIB_EXT, 'lib/pkgconfig/libxxhash.pc'], + 'dirs': ['share/man'], +} + +sanity_check_commands = ["xxhsum --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/x/xxHash/xxHash-0.8.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/x/xxHash/xxHash-0.8.1-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..0fb9485c66e --- /dev/null +++ b/easybuild/easyconfigs/x/xxHash/xxHash-0.8.1-GCCcore-11.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'xxHash' +version = '0.8.1' + +homepage = 'https://cyan4973.github.io/xxHash' +description = "xxHash is an extremely fast non-cryptographic hash algorithm, working at RAM speed limit." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/Cyan4973/xxHash/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['3bb6b7d6f30c591dd65aaaff1c8b7a5b94d81687998ca9400082c739a690436c'] + +builddependencies = [ + ('binutils', '2.38'), +] + +skipsteps = ['configure'] + +installopts = "PREFIX=%(installdir)s" + +sanity_check_paths = { + 'files': ['bin/xxhsum', 'include/xxh3.h', 'include/xxhash.h', + 'lib/libxxhash.a', 'lib/libxxhash.%s' % SHLIB_EXT, 'lib/pkgconfig/libxxhash.pc'], + 'dirs': ['share/man'], +} + +sanity_check_commands = ["xxhsum --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/x/xxd/xxd-9.0.2112-GCCcore-12.3.0.eb b/easybuild/easyconfigs/x/xxd/xxd-9.0.2112-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..f5a4419d3c2 --- /dev/null +++ b/easybuild/easyconfigs/x/xxd/xxd-9.0.2112-GCCcore-12.3.0.eb @@ -0,0 +1,37 @@ +# Last 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 = 'MakeCp' + +name = 'xxd' +version = '9.0.2112' + +homepage = 'https://www.vim.org' +description = """xxd is part of the VIM package and this will only install xxd, not vim! +xxd converts to/from hexdumps of binary files.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/vim/vim/archive/refs/tags'] +sources = ['v%(version)s.tar.gz'] +checksums = ['1967127c825a6c32dfd21f419a0e11cbcc20b796d861b1483507ddf19b2c5df0'] + +builddependencies = [ + ('binutils', '2.40'), +] + +start_dir = 'src/xxd' + +files_to_copy = [ + (['xxd'], 'bin'), +] + +sanity_check_paths = { + 'files': ['bin/xxd'], + 'dirs': [], +} + +sanity_check_commands = ["xxd -h 2>&1 | grep -A 4 '^Usage:'"] + +moduleclass = 'tools' 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) 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' diff --git a/setup.py b/setup.py index 1aaee4d4aab..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.8.2' +VERSION = '4.9.0' MAJ_VER = VERSION.split('.')[0] MAJMIN_VER = '.'.join(VERSION.split('.')[0:2]) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index 27461af560f..f041f7f7b7d 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 @@ -380,12 +379,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 +403,55 @@ 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 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 + 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 @@ -503,6 +505,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', @@ -625,12 +630,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 +857,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 +883,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.""" @@ -983,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'] = [] @@ -1049,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) @@ -1107,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) @@ -1144,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,