diff --git a/easybuild/easyconfigs/a/Advisor/Advisor-2025.0.0.eb b/easybuild/easyconfigs/a/Advisor/Advisor-2025.0.0.eb new file mode 100644 index 00000000000..1f057b7f100 --- /dev/null +++ b/easybuild/easyconfigs/a/Advisor/Advisor-2025.0.0.eb @@ -0,0 +1,27 @@ +name = 'Advisor' +version = '2025.0.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/advisor.html' +description = """Vectorization Optimization and Thread Prototyping + - Vectorize & thread code or performance “dies” + - Easy workflow + data + tips = faster code faster + - Prioritize, Prototype & Predict performance gain + """ + +toolchain = SYSTEM + +source_urls = [ + 'https://registrationcenter-download.intel.com/akdlm/IRC_NAS/fe95ae4a-3692-4e31-919d-3e7bdf5832f1/'] +sources = ['intel-advisor-%(version)s.798_offline.sh'] +checksums = ['bf85d4b0bd199a2babdff6b4bd3885ce569a3ad0e992b99b2e14dbb30af88cd4'] + +dontcreateinstalldir = True + +sanity_check_paths = { + 'files': ['%(namelower)s/%(version_major_minor)s/bin64/advisor'], + 'dirs': ['%(namelower)s/%(version_major_minor)s/bin64', + '%(namelower)s/%(version_major_minor)s/lib64', + '%(namelower)s/%(version_major_minor)s/include/intel64'] +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/a/absl-py/absl-py-2.1.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/a/absl-py/absl-py-2.1.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..fb76611558b --- /dev/null +++ b/easybuild/easyconfigs/a/absl-py/absl-py-2.1.0-GCCcore-13.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonBundle' + +name = 'absl-py' +version = '2.1.0' + +homepage = 'https://github.com/abseil/abseil-py' +description = """absl-py is a collection of Python library code for building Python +applications. The code is collected from Google's own Python code base, and has +been extensively tested and used in production.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] + +dependencies = [('Python', '3.12.3')] + +use_pip = True + +exts_list = [ + ('absl-py', version, { + 'modulename': 'absl', + 'checksums': ['7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff'], + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/b/BGEN-enkre/BGEN-enkre-1.1.7-GCC-12.3.0.eb b/easybuild/easyconfigs/b/BGEN-enkre/BGEN-enkre-1.1.7-GCC-12.3.0.eb new file mode 100644 index 00000000000..bf5a35b052b --- /dev/null +++ b/easybuild/easyconfigs/b/BGEN-enkre/BGEN-enkre-1.1.7-GCC-12.3.0.eb @@ -0,0 +1,73 @@ +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# uploaded by J. Sassmannshausen +# we recommend to use --download-timeout=1000 when fetching the files + +easyblock = 'CmdCp' + +name = 'BGEN-enkre' +version = '1.1.7' + +homepage = 'https://enkre.net/cgi-bin/code/bgen/dir?ci=trunk' +description = """This repository contains a reference implementation +of the BGEN format, written in C++. The library can be used as the +basis for BGEN support in other software, or as a reference for +developers writing their own implementations of the BGEN format. +Please cite: +Band, G. and Marchini, J., "BGEN: a binary file format for imputed genotype and haplotype data", +bioArxiv 308296; doi: https://doi.org/10.1101/308296 +""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://code.enkre.net/bgen/tarball/v%(version)s/'] +sources = ['v%(version)s.tgz'] +patches = [ + '3rd-party-removal.patch', + 'BGEN-enkre_streampos.patch', +] + +checksums = [ + ('6476b077af6c8e98e85fd7e09f58cb3fdf143ff91850c984248fd4dc2d74a8c3', # v1.1.7.tgz + 'b922ac22c1c0e365d0de6054f6ce2ad911bc81db5bcd8ca915bae750f57bd0a7'), + '0269b91d21976f38a9cf9bf7811375d16bf35be587d903ab1d846b2001b7d767', # 3rd-party-removal.patch + '61c05ae5f7363d5b7b6015f0a015b93f149dbda4b23b9f48f9517a6ce93d5869', # BGEN-enkre_streampos.patch +] + +builddependencies = [ + ('Python', '3.11.3'), +] + +dependencies = [ + ('SQLite', '3.42.0'), + ('zstd', '1.5.5'), + ('Boost', '1.55.0'), +] + +cmds_map = [ + ('.*', "./waf configure && echo LIB_zstd = [\\'zstd\\'] >> build/c4che/_cache.py &&" + " echo LIB_sqlite3 = [\\'sqlite3\\'] >> build/c4che/_cache.py &&" + "echo LIB_boost = [\\'boost_system\\', \\'boost_filesystem\\', \\'boost_thread\\', \\'boost_timer\\'] " + " >> build/c4che/_cache.py && ./waf"), +] + +files_to_copy = [ + (['build/apps/edit-bgen', 'build/apps/bgenix', 'build/apps/cat-bgen'], 'bin'), + (['build/db/libdb.a', 'build/libbgen.a'], 'lib'), + (['genfile/include/*', 'db/include/*'], 'include'), +] + +postinstallcmds = ['./build/test/unit/test_bgen'] + +sanity_check_paths = { + 'files': ['bin/edit-bgen', 'bin/bgenix', 'bin/cat-bgen'], + 'dirs': ['bin', 'lib', 'include'], +} + +sanity_check_commands = [ + 'bgenix -help', + 'cat-bgen -help', + 'edit-bgen -help', +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/Bazel/Bazel-7.4.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/b/Bazel/Bazel-7.4.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..1fc72e512e2 --- /dev/null +++ b/easybuild/easyconfigs/b/Bazel/Bazel-7.4.1-GCCcore-13.3.0.eb @@ -0,0 +1,26 @@ +name = 'Bazel' +version = '7.4.1' + +homepage = 'https://bazel.io/' +description = """Bazel is a build tool that builds code quickly and reliably. +It is used to build the majority of Google's software.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/bazelbuild/%(namelower)s/releases/download/%(version)s'] +sources = ['%(namelower)s-%(version)s-dist.zip'] +checksums = ['83386618bc489f4da36266ef2620ec64a526c686cf07041332caff7c953afaf5'] + +builddependencies = [ + ('binutils', '2.42'), + ('Python', '3.12.3'), + ('Zip', '3.0'), +] +dependencies = [ + ('Java', '21.0.2', '', SYSTEM), +] + +runtest = True +testopts = "-- //examples/cpp:hello-success_test //examples/py/... //examples/py_native:test //examples/shell/..." + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/BindCraft/BindCraft-1.1.0-foss-2023a.eb b/easybuild/easyconfigs/b/BindCraft/BindCraft-1.1.0-foss-2023a.eb new file mode 100644 index 00000000000..49345e486d8 --- /dev/null +++ b/easybuild/easyconfigs/b/BindCraft/BindCraft-1.1.0-foss-2023a.eb @@ -0,0 +1,89 @@ +easyblock = 'Tarball' + +name = 'BindCraft' +version = '1.1.0' + +homepage = 'https://github.com/martinpacesa/BindCraft' +description = """Simple binder design pipeline using AlphaFold2 backpropagation, MPNN, and PyRosetta. + Select your target and let the script do the rest of the work and finish once you have enough designs to order!""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/martinpacesa/BindCraft/archive/refs/tags/'] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}] +checksums = ['c682f59501f0bcfbb8289fd066362dcea37ed8553cdff5c794a2baa6d4149ce7'] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Biopython', '1.83'), + ('Seaborn', '0.13.2'), + ('tqdm', '4.66.1'), + ('OpenMM', '8.0.0'), + ('FFmpeg', '6.0'), + ('matplotlib', '3.7.2'), + ('PyRosetta', '4.release-387'), + ('jax', '0.4.25'), + ('dm-haiku', '0.0.13'), + ('dm-tree', '0.1.8'), + ('ml-collections', '0.1.1'), + ('Optax', '0.2.2'), + ('py3Dmol', '2.1.0'), + ('JupyterLab', '4.0.5'), + ('hatchling', '1.18.0'), + ('Flax', '0.8.4'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'download_dep_fail': True, + 'use_pip': True, + 'sanity_pip_check': True, +} +exts_list = [ + ('PDBFixer', '1.9', { + 'source_urls': ['https://github.com/openmm/pdbfixer/archive/'], + 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['88b9a77e50655f89d0eb2075093773e82c27a4cef842cb7d735c877b20cd39fb'], + }), + ('jupyter_console', '6.6.3', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485'], + }), + # older version compatible with `jupyterlab-4.0.5` + ('notebook', '7.0.8', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['7f421b3fd46a17d91830e724b94e8e9ae922af152ebfd48b1e13ae4a07d8193c'], + }), + ('jupyter', '1.1.1', { + 'source_tmpl': SOURCE_WHL, + 'checksums': ['7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83'], + }), + ('immutabledict', '4.2.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['d728b2c2410d698d95e6200237feb50a695584d20289ad3379a439aa3d90baba'], + }), + ('colabdesign', '1.1.1', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['8f556fb575d2bbef79fa1789698d55221f2cc51df38f2cc054f38cb6ecc08e27'], + }), +] + +fix_python_shebang_for = ['bindcraft.py'] + +postinstallcmds = ['chmod a+x %(installdir)s/bindcraft.py'] + +modextrapaths = { + 'PATH': '', + 'PYTHONPATH': ['', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_paths = { + 'files': ['bindcraft.py'], + 'dirs': [], +} + +sanity_check_commands = ["bindcraft.py --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/Boost/Boost-1.55.0-GCC-12.3.0.eb b/easybuild/easyconfigs/b/Boost/Boost-1.55.0-GCC-12.3.0.eb new file mode 100644 index 00000000000..e7cdaf16fbd --- /dev/null +++ b/easybuild/easyconfigs/b/Boost/Boost-1.55.0-GCC-12.3.0.eb @@ -0,0 +1,21 @@ +name = 'Boost' +version = '1.55.0' + +homepage = 'http://www.boost.org/' +description = """Boost provides free peer-reviewed portable C++ source libraries.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} +toolchainopts = {'pic': True} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['%%(namelower)s_%s.tar.gz' % '_'.join(version.split('.'))] +checksums = ['19c4305cd6669f2216260258802a7abc73c1624758294b2cad209d45cc13a767'] + +dependencies = [ + ('bzip2', '1.0.8'), + ('zlib', '1.2.13'), +] + +configopts = '--without-libraries=python' + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/bamtofastq/bamtofastq-1.4.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/b/bamtofastq/bamtofastq-1.4.1-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..8759374058b --- /dev/null +++ b/easybuild/easyconfigs/b/bamtofastq/bamtofastq-1.4.1-GCCcore-12.3.0.eb @@ -0,0 +1,220 @@ +easyblock = 'Cargo' + +name = 'bamtofastq' +version = '1.4.1' + +homepage = 'https://github.com/10XGenomics/bamtofastq' +description = """Convert 10x BAM files to the original FASTQs compatible with 10x pipelines.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/10XGenomics/bamtofastq/archive/refs/tags'] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] + +builddependencies = [ + ('binutils', '2.40'), + ('Rust', '1.75.0'), + ('CMake', '3.26.3'), +] + +dependencies = [('bzip2', '1.0.8')] + +crates = [ + ('addr2line', '0.17.0'), + ('adler', '1.0.2'), + ('aho-corasick', '0.7.18'), + ('anyhow', '1.0.53'), + ('autocfg', '1.0.1'), + ('backtrace', '0.3.63'), + ('bincode', '1.3.3'), + ('bio-types', '0.12.0'), + ('bitflags', '1.3.2'), + ('bstr', '0.2.17'), + ('byteorder', '1.4.3'), + ('bzip2-sys', '0.1.11+1.0.8'), + ('cc', '1.0.71'), + ('cfg-if', '1.0.0'), + ('cmake', '0.1.45'), + ('crc32fast', '1.2.1'), + ('crossbeam-channel', '0.5.1'), + ('crossbeam-utils', '0.8.5'), + ('csv', '1.1.6'), + ('csv-core', '0.1.10'), + ('curl-sys', '0.4.49+curl-7.79.1'), + ('custom_derive', '0.1.7'), + ('derive-new', '0.5.9'), + ('docopt', '1.1.1'), + ('either', '1.6.1'), + ('fastrand', '1.7.0'), + ('flate2', '1.0.22'), + ('form_urlencoded', '1.0.1'), + ('fs-utils', '1.1.4'), + ('gimli', '0.26.0'), + ('glob', '0.3.0'), + ('heck', '0.3.3'), + ('hts-sys', '2.0.2'), + ('idna', '0.2.3'), + ('ieee754', '0.2.6'), + ('instant', '0.1.12'), + ('itertools', '0.10.3'), + ('itoa', '0.4.8'), + ('jobserver', '0.1.24'), + ('lazy_static', '1.4.0'), + ('libc', '0.2.103'), + ('libdeflate-sys', '0.5.0'), + ('libz-sys', '1.1.3'), + ('linear-map', '1.2.0'), + ('log', '0.4.14'), + ('lz4', '1.23.2'), + ('lz4-sys', '1.9.2'), + ('lzma-sys', '0.1.17'), + ('matches', '0.1.9'), + ('memchr', '2.4.1'), + ('min-max-heap', '1.3.0'), + ('miniz_oxide', '0.4.4'), + ('newtype_derive', '0.1.6'), + ('object', '0.27.1'), + ('openssl-src', '111.16.0+1.1.1l'), + ('openssl-sys', '0.9.67'), + ('percent-encoding', '2.1.0'), + ('pkg-config', '0.3.20'), + ('proc-macro2', '1.0.29'), + ('quick-error', '1.2.3'), + ('quote', '1.0.10'), + ('redox_syscall', '0.2.10'), + ('regex', '1.5.4'), + ('regex-automata', '0.1.10'), + ('regex-syntax', '0.6.25'), + ('remove_dir_all', '0.5.3'), + ('rust-htslib', '0.38.2'), + ('rustc-demangle', '0.1.21'), + ('rustc_version', '0.1.7'), + ('ryu', '1.0.5'), + ('semver', '0.1.20'), + ('serde', '1.0.135'), + ('serde_bytes', '0.11.5'), + ('serde_derive', '1.0.135'), + ('shardio', '0.8.2'), + ('strsim', '0.10.0'), + ('strum_macros', '0.20.1'), + ('syn', '1.0.80'), + ('tempfile', '3.3.0'), + ('thiserror', '1.0.29'), + ('thiserror-impl', '1.0.29'), + ('tinyvec', '1.5.0'), + ('tinyvec_macros', '0.1.0'), + ('unicode-bidi', '0.3.7'), + ('unicode-normalization', '0.1.19'), + ('unicode-segmentation', '1.8.0'), + ('unicode-xid', '0.2.2'), + ('url', '2.2.2'), + ('vcpkg', '0.2.15'), + ('winapi', '0.3.9'), + ('winapi-i686-pc-windows-gnu', '0.4.0'), + ('winapi-x86_64-pc-windows-gnu', '0.4.0'), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +sanity_check_commands = ["%(namelower)s --help"] + +checksums = [ + {'bamtofastq-1.4.1.tar.gz': 'cebf968b0eff8911df65102e2be5884e6cd7312f1cb0aba6718bfc2d9407d543'}, + {'addr2line-0.17.0.tar.gz': 'b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b'}, + {'adler-1.0.2.tar.gz': 'f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe'}, + {'aho-corasick-0.7.18.tar.gz': '1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f'}, + {'anyhow-1.0.53.tar.gz': '94a45b455c14666b85fc40a019e8ab9eb75e3a124e05494f5397122bc9eb06e0'}, + {'autocfg-1.0.1.tar.gz': 'cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a'}, + {'backtrace-0.3.63.tar.gz': '321629d8ba6513061f26707241fa9bc89524ff1cd7a915a97ef0c62c666ce1b6'}, + {'bincode-1.3.3.tar.gz': 'b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad'}, + {'bio-types-0.12.0.tar.gz': '3f79d996fbffc59cbaeec4c831f9c1bbf6debdfadd9bb02ff4caf70507159c63'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bstr-0.2.17.tar.gz': 'ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223'}, + {'byteorder-1.4.3.tar.gz': '14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610'}, + {'bzip2-sys-0.1.11+1.0.8.tar.gz': '736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc'}, + {'cc-1.0.71.tar.gz': '79c2681d6594606957bbb8631c4b90a7fcaaa72cdb714743a437b156d6a7eedd'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'cmake-0.1.45.tar.gz': 'eb6210b637171dfba4cda12e579ac6dc73f5165ad56133e5d72ef3131f320855'}, + {'crc32fast-1.2.1.tar.gz': '81156fece84ab6a9f2afdb109ce3ae577e42b1228441eded99bd77f627953b1a'}, + {'crossbeam-channel-0.5.1.tar.gz': '06ed27e177f16d65f0f0c22a213e17c696ace5dd64b14258b52f9417ccb52db4'}, + {'crossbeam-utils-0.8.5.tar.gz': 'd82cfc11ce7f2c3faef78d8a684447b40d503d9681acebed6cb728d45940c4db'}, + {'csv-1.1.6.tar.gz': '22813a6dc45b335f9bade10bf7271dc477e81113e89eb251a0bc2a8a81c536e1'}, + {'csv-core-0.1.10.tar.gz': '2b2466559f260f48ad25fe6317b3c8dac77b5bdb5763ac7d9d6103530663bc90'}, + {'curl-sys-0.4.49+curl-7.79.1.tar.gz': 'e0f44960aea24a786a46907b8824ebc0e66ca06bf4e4978408c7499620343483'}, + {'custom_derive-0.1.7.tar.gz': 'ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9'}, + {'derive-new-0.5.9.tar.gz': '3418329ca0ad70234b9735dc4ceed10af4df60eff9c8e7b06cb5e520d92c3535'}, + {'docopt-1.1.1.tar.gz': '7f3f119846c823f9eafcf953a8f6ffb6ed69bf6240883261a7f13b634579a51f'}, + {'either-1.6.1.tar.gz': 'e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457'}, + {'fastrand-1.7.0.tar.gz': 'c3fcf0cee53519c866c09b5de1f6c56ff9d647101f81c1964fa632e148896cdf'}, + {'flate2-1.0.22.tar.gz': '1e6988e897c1c9c485f43b47a529cef42fde0547f9d8d41a7062518f1d8fc53f'}, + {'form_urlencoded-1.0.1.tar.gz': '5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191'}, + {'fs-utils-1.1.4.tar.gz': '6fc7a9dc005c944c98a935e7fd626faf5bf7e5a609f94bc13e42fc4a02e52593'}, + {'gimli-0.26.0.tar.gz': '81a03ce013ffccead76c11a15751231f777d9295b845cc1266ed4d34fcbd7977'}, + {'glob-0.3.0.tar.gz': '9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574'}, + {'heck-0.3.3.tar.gz': '6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c'}, + {'hts-sys-2.0.2.tar.gz': '72c443906f4bac8b8cfe67e4e9d9ca83a454b70a092e1764133d19d5c5c7c1e2'}, + {'idna-0.2.3.tar.gz': '418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8'}, + {'ieee754-0.2.6.tar.gz': '9007da9cacbd3e6343da136e98b0d2df013f553d35bdec8b518f07bea768e19c'}, + {'instant-0.1.12.tar.gz': '7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c'}, + {'itertools-0.10.3.tar.gz': 'a9a9d19fa1e79b6215ff29b9d6880b706147f16e9b1dbb1e4e5947b5b02bc5e3'}, + {'itoa-0.4.8.tar.gz': 'b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4'}, + {'jobserver-0.1.24.tar.gz': 'af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'libc-0.2.103.tar.gz': 'dd8f7255a17a627354f321ef0055d63b898c6fb27eff628af4d1b66b7331edf6'}, + {'libdeflate-sys-0.5.0.tar.gz': '21e39efa87b84db3e13ff4e2dfac1e57220abcbd7fe8ec44d238f7f4f787cc1f'}, + {'libz-sys-1.1.3.tar.gz': 'de5435b8549c16d423ed0c03dbaafe57cf6c3344744f1242520d59c9d8ecec66'}, + {'linear-map-1.2.0.tar.gz': 'bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee'}, + {'log-0.4.14.tar.gz': '51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710'}, + {'lz4-1.23.2.tar.gz': 'aac20ed6991e01bf6a2e68cc73df2b389707403662a8ba89f68511fb340f724c'}, + {'lz4-sys-1.9.2.tar.gz': 'dca79aa95d8b3226213ad454d328369853be3a1382d89532a854f4d69640acae'}, + {'lzma-sys-0.1.17.tar.gz': 'bdb4b7c3eddad11d3af9e86c487607d2d2442d185d848575365c4856ba96d619'}, + {'matches-0.1.9.tar.gz': 'a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f'}, + {'memchr-2.4.1.tar.gz': '308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a'}, + {'min-max-heap-1.3.0.tar.gz': '2687e6cf9c00f48e9284cf9fd15f2ef341d03cc7743abf9df4c5f07fdee50b18'}, + {'miniz_oxide-0.4.4.tar.gz': 'a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b'}, + {'newtype_derive-0.1.6.tar.gz': 'ac8cd24d9f185bb7223958d8c1ff7a961b74b1953fd05dba7cc568a63b3861ec'}, + {'object-0.27.1.tar.gz': '67ac1d3f9a1d3616fd9a60c8d74296f22406a238b6a72f5cc1e6f314df4ffbf9'}, + {'openssl-src-111.16.0+1.1.1l.tar.gz': '7ab2173f69416cf3ec12debb5823d244127d23a9b127d5a5189aa97c5fa2859f'}, + {'openssl-sys-0.9.67.tar.gz': '69df2d8dfc6ce3aaf44b40dec6f487d5a886516cf6879c49e98e0710f310a058'}, + {'percent-encoding-2.1.0.tar.gz': 'd4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e'}, + {'pkg-config-0.3.20.tar.gz': '7c9b1041b4387893b91ee6746cddfc28516aff326a3519fb2adf820932c5e6cb'}, + {'proc-macro2-1.0.29.tar.gz': 'b9f5105d4fdaab20335ca9565e106a5d9b82b6219b5ba735731124ac6711d23d'}, + {'quick-error-1.2.3.tar.gz': 'a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0'}, + {'quote-1.0.10.tar.gz': '38bc8cc6a5f2e3655e0899c1b848643b2562f853f114bfec7be120678e3ace05'}, + {'redox_syscall-0.2.10.tar.gz': '8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff'}, + {'regex-1.5.4.tar.gz': 'd07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461'}, + {'regex-automata-0.1.10.tar.gz': '6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132'}, + {'regex-syntax-0.6.25.tar.gz': 'f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b'}, + {'remove_dir_all-0.5.3.tar.gz': '3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7'}, + {'rust-htslib-0.38.2.tar.gz': '2aca6626496389f6e015e25433b85e2895ad3644b44de91167d847bf2d8c1a1c'}, + {'rustc-demangle-0.1.21.tar.gz': '7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342'}, + {'rustc_version-0.1.7.tar.gz': 'c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084'}, + {'ryu-1.0.5.tar.gz': '71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e'}, + {'semver-0.1.20.tar.gz': 'd4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac'}, + {'serde-1.0.135.tar.gz': '2cf9235533494ea2ddcdb794665461814781c53f19d87b76e571a1c35acbad2b'}, + {'serde_bytes-0.11.5.tar.gz': '16ae07dd2f88a366f15bd0632ba725227018c69a1c8550a927324f8eb8368bb9'}, + {'serde_derive-1.0.135.tar.gz': '8dcde03d87d4c973c04be249e7d8f0b35db1c848c487bd43032808e59dd8328d'}, + {'shardio-0.8.2.tar.gz': '669590a22936d55698744e4096bc46fc8f935f492fe86b2f09cbdbb6d937b65a'}, + {'strsim-0.10.0.tar.gz': '73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623'}, + {'strum_macros-0.20.1.tar.gz': 'ee8bc6b87a5112aeeab1f4a9f7ab634fe6cbefc4850006df31267f4cfb9e3149'}, + {'syn-1.0.80.tar.gz': 'd010a1623fbd906d51d650a9916aaefc05ffa0e4053ff7fe601167f3e715d194'}, + {'tempfile-3.3.0.tar.gz': '5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4'}, + {'thiserror-1.0.29.tar.gz': '602eca064b2d83369e2b2f34b09c70b605402801927c65c11071ac911d299b88'}, + {'thiserror-impl-1.0.29.tar.gz': 'bad553cc2c78e8de258400763a647e80e6d1b31ee237275d756f6836d204494c'}, + {'tinyvec-1.5.0.tar.gz': 'f83b2a3d4d9091d0abd7eba4dc2710b1718583bd4d8992e2190720ea38f391f7'}, + {'tinyvec_macros-0.1.0.tar.gz': 'cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c'}, + {'unicode-bidi-0.3.7.tar.gz': '1a01404663e3db436ed2746d9fefef640d868edae3cceb81c3b8d5732fda678f'}, + {'unicode-normalization-0.1.19.tar.gz': 'd54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9'}, + {'unicode-segmentation-1.8.0.tar.gz': '8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b'}, + {'unicode-xid-0.2.2.tar.gz': '8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3'}, + {'url-2.2.2.tar.gz': 'a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'winapi-0.3.9.tar.gz': '5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419'}, + {'winapi-i686-pc-windows-gnu-0.4.0.tar.gz': 'ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6'}, + {'winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz': '712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f'}, +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/CASTEP/CASTEP-24.1-foss-2023b.eb b/easybuild/easyconfigs/c/CASTEP/CASTEP-24.1-foss-2023b.eb new file mode 100644 index 00000000000..678f4e7df25 --- /dev/null +++ b/easybuild/easyconfigs/c/CASTEP/CASTEP-24.1-foss-2023b.eb @@ -0,0 +1,49 @@ +easyblock = 'ConfigureMake' + +name = 'CASTEP' +version = '24.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': '2023b'} + +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 = ['97d77a4f3ce3f5c5b87e812f15a2c2cb23918acd7034c91a872b6d66ea0f7dbb'] + +dependencies = [ + ('Perl', '5.38.0'), + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), # 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/CDO/CDO-2.4.4-gompi-2024a.eb b/easybuild/easyconfigs/c/CDO/CDO-2.4.4-gompi-2024a.eb new file mode 100644 index 00000000000..57b6de8e609 --- /dev/null +++ b/easybuild/easyconfigs/c/CDO/CDO-2.4.4-gompi-2024a.eb @@ -0,0 +1,57 @@ +# updated to version 2.0.6, based on the previous 2.0.5 version +# J. Sassmannshausen (Imperial College London, UK) +# Alex Domingo (Vrije Universiteit Brussel, BE) +# Maxim Masterov (SURF, NL) + +easyblock = 'ConfigureMake' + +name = 'CDO' +version = '2.4.4' + + +homepage = 'https://code.zmaw.de/projects/cdo' +description = """CDO is a collection of command line Operators to manipulate and analyse Climate and NWP model Data.""" + +toolchain = {'name': 'gompi', 'version': '2024a'} +toolchainopts = {'cstd': 'c++20', 'usempi': True} + +source_urls = ['https://code.mpimet.mpg.de/attachments/download/29649/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['49f50bd18dacd585e9518cfd4f55548f692426edfb3b27ddcd1c653eab53d063'] + +builddependencies = [ + ('pkgconf', '2.2.0'), +] + +dependencies = [ + ('cURL', '8.7.1'), + ('ecCodes', '2.38.3'), + ('FFTW', '3.3.10'), + ('HDF5', '1.14.5'), + ('libxml2', '2.12.7'), + ('netCDF', '4.9.2'), + ('PROJ', '9.4.1'), + ('Szip', '2.1.1'), + ('UDUNITS', '2.2.28'), + ('util-linux', '2.40'), +] + +# Build libcdi +configopts = "--enable-cdi-lib " + +# Use dependencies from EasyBuild +configopts += "--with-curl=$EBROOTCURL --with-eccodes=$EBROOTECCODES --with-fftw3 --with-hdf5=$EBROOTHDF5 " +configopts += "--with-netcdf=$EBROOTNETCDF --with-proj=$EBROOTPROJ --with-szlib=$EBROOTSZIP " +configopts += "--with-udunits2=$EBROOTUDUNITS --with-util-linux-uuid=$EBROOTUTILMINLINUX " + +# Make sure that right Fortran compiler is used, also on non-x86_64 architectures +configopts += 'CPPFLAGS="$CPPFLAGS -DgFortran" ' + +sanity_check_paths = { + 'files': ['bin/cdo', 'lib/libcdi.a', 'lib/libcdi.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +sanity_check_commands = ["cdo --version 2>&1 | grep 'Climate Data Operators version %(version)s'"] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/c/CVXOPT/CVXOPT-1.3.2-foss-2023a.eb b/easybuild/easyconfigs/c/CVXOPT/CVXOPT-1.3.2-foss-2023a.eb new file mode 100644 index 00000000000..d6793ad49bb --- /dev/null +++ b/easybuild/easyconfigs/c/CVXOPT/CVXOPT-1.3.2-foss-2023a.eb @@ -0,0 +1,49 @@ +easyblock = 'PythonPackage' + +name = 'CVXOPT' +version = '1.3.2' + +homepage = 'https://cvxopt.org' +description = """CVXOPT is a free software package for convex optimization based on the Python programming language. + Its main purpose is to make the development of software for convex optimization applications straightforward by + building on Python's extensive standard library and on the strengths of Python as a high-level programming language. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'pic': True} + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] + +patches = ['CVXOPT-1.3.1_fix-setup-py.patch'] + +checksums = [ + '3461fa42c1b2240ba4da1d985ca73503914157fc4c77417327ed6d7d85acdbe6', # cvxopt-1.3.2.tar.gz + '350904c0427d4652fc73b95b7e0d78a17c917cb94ed6c356dbbbfb07f2173849', # CVXOPT-1.3.1_fix-setup-py.patch +] + +dependencies = [ + ('Python', '3.11.3'), + ('SuiteSparse', '7.1.0'), + ('GSL', '2.7'), +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +preinstallopts = " ".join([ + 'CVXOPT_BUILD_FFTW=1', + 'CVXOPT_BUILD_GSL=1', + 'CVXOPT_BLAS_EXTRA_LINK_ARGS="$LIBBLAS"', + 'CVXOPT_LAPACK_EXTRA_LINK_ARGS="$LIBLAPACK"', + 'CVXOPT_FFTW_EXTRA_LINK_ARGS="$LIBFFT"', + 'CVXOPT_SUITESPARSE_LIB_DIR=$EBROOTSUITESPARSE/lib', + 'CVXOPT_SUITESPARSE_INC_DIR=$EBROOTSUITESPARSE/include', +]) + +installopts = ' --no-binary cvxopt' + +sanity_check_commands = ['cd %(builddir)s/%(namelower)s-%(version)s && python -m unittest discover -s tests'] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/c/Circuitscape/Circuitscape-5.12.3-Julia-1.9.2.eb b/easybuild/easyconfigs/c/Circuitscape/Circuitscape-5.12.3-Julia-1.9.2.eb index a6649359df9..8e8e7e2f86b 100644 --- a/easybuild/easyconfigs/c/Circuitscape/Circuitscape-5.12.3-Julia-1.9.2.eb +++ b/easybuild/easyconfigs/c/Circuitscape/Circuitscape-5.12.3-Julia-1.9.2.eb @@ -403,6 +403,10 @@ exts_list = [ }), ] -sanity_check_commands = ["julia -e 'using Pkg;Pkg.test(\"Circuitscape\")'"] +_julia_env = "%(installdir)s/environments/v" + '.'.join(_julia_ver.split('.')[:2]) + +sanity_check_commands = [ + """julia -e 'using Pkg; Pkg.activate("%s"); Pkg.test("%%(name)s")'""" % _julia_env, +] moduleclass = 'lib' diff --git a/easybuild/easyconfigs/c/cppyy/cppyy-3.1.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/c/cppyy/cppyy-3.1.2-GCCcore-13.2.0.eb index bcd242d9d23..89c6bc40e3d 100644 --- a/easybuild/easyconfigs/c/cppyy/cppyy-3.1.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/c/cppyy/cppyy-3.1.2-GCCcore-13.2.0.eb @@ -21,7 +21,7 @@ dependencies = [ exts_list = [ ('cppyy-cling', '6.30.0', { 'modulename': False, - 'preinstallopts': "export STDCXX=14 && ", + 'preinstallopts': 'MAKE_NPROCS=%(parallel)s', 'checksums': ['5d9e0551a4cb618eb3392001b3dc2c6294f02257f02fcd4d868999ba04f92af1'], }), ('cppyy-backend', '1.15.2', { diff --git a/easybuild/easyconfigs/c/cuDNN/cuDNN-9.5.0.50-CUDA-12.6.0.eb b/easybuild/easyconfigs/c/cuDNN/cuDNN-9.5.0.50-CUDA-12.6.0.eb new file mode 100644 index 00000000000..76340a4e654 --- /dev/null +++ b/easybuild/easyconfigs/c/cuDNN/cuDNN-9.5.0.50-CUDA-12.6.0.eb @@ -0,0 +1,37 @@ +name = 'cuDNN' +version = '9.5.0.50' +versionsuffix = '-CUDA-%(cudaver)s' +homepage = 'https://developer.nvidia.com/cudnn' +description = """The NVIDIA CUDA Deep Neural Network library (cuDNN) is +a GPU-accelerated library of primitives for deep neural networks.""" + +toolchain = SYSTEM + +# note: cuDNN is tied to specific to CUDA versions, +# see also https://docs.nvidia.com/deeplearning/cudnn/support-matrix/index.html#cudnn-cuda-hardware-versions +local_short_ver = '.'.join(version.split('.')[:3]) +local_cuda_major = '12' + +source_urls = [ + 'https://developer.download.nvidia.com/compute/cudnn/redist/cudnn/linux-%(cudnnarch)s/' +] +sources = ['%%(namelower)s-linux-%%(cudnnarch)s-%%(version)s_cuda%s-archive.tar.xz' % local_cuda_major] +checksums = [{ + '%%(namelower)s-linux-sbsa-%%(version)s_cuda%s-archive.tar.xz' % local_cuda_major: + '494b640a69feb40ce806a726aa63a1de6b2ec459acbe6a116ef6fe3e6b27877d', + '%%(namelower)s-linux-x86_64-%%(version)s_cuda%s-archive.tar.xz' % local_cuda_major: + '86e4e4f4c09b31d3850b402d94ea52741a2f94c2f717ddc8899a14aca96e032d', +}] + +dependencies = [('CUDA', '12.6.0')] + +sanity_check_paths = { + 'files': [ + 'include/cudnn.h', 'lib64/libcudnn_adv_static.a', 'lib64/libcudnn_cnn_static.a', + 'lib64/libcudnn_engines_precompiled_static.a', 'lib64/libcudnn_engines_runtime_compiled_static.a', + 'lib64/libcudnn_graph_static.a', 'lib64/libcudnn_heuristic_static.a', 'lib64/libcudnn_ops_static.a', + ], + 'dirs': ['include', 'lib64'], +} + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/c/cuTENSOR/cuTENSOR-2.0.2.5-CUDA-12.6.0.eb b/easybuild/easyconfigs/c/cuTENSOR/cuTENSOR-2.0.2.5-CUDA-12.6.0.eb new file mode 100644 index 00000000000..fe7b69ac9b0 --- /dev/null +++ b/easybuild/easyconfigs/c/cuTENSOR/cuTENSOR-2.0.2.5-CUDA-12.6.0.eb @@ -0,0 +1,40 @@ +easyblock = 'Tarball' + +name = 'cuTENSOR' +version = '2.0.2.5' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://developer.nvidia.com/cutensor' +description = """The cuTENSOR Library is a GPU-accelerated tensor linear algebra library providing tensor contraction, + reduction and elementwise operations.""" + +toolchain = SYSTEM + +source_urls = [ + 'https://developer.download.nvidia.com/compute/cutensor/redist/libcutensor/linux-%(arch)s/' +] +sources = ['libcutensor-linux-%(arch)s-%(version)s-archive.tar.xz'] + +checksums = [{ + 'libcutensor-linux-sbsa-%(version)s-archive.tar.xz': + '5163dd40f11f328e469a6d9b0056c8346f5d59ed538c18d6b954e4ae657c69cc', + 'libcutensor-linux-x86_64-%(version)s-archive.tar.xz': + '0e957ae7b352f599de34b6fa1ba999b0617887f885d7436ac5737d71a6b83baa', +}] + +local_cudamajver = '12' +dependencies = [('CUDA', '12.6.0')] + +sanity_check_paths = { + 'files': ['include/cutensor.h', 'include/cutensor/types.h', + 'lib/%s/libcutensor.%s' % (local_cudamajver, SHLIB_EXT), + 'lib/%s/libcutensor_static.a' % local_cudamajver], + 'dirs': [], +} + +modextrapaths = { + 'LD_LIBRARY_PATH': ['lib/%s' % local_cudamajver], + 'LIBRARY_PATH': ['lib/%s' % local_cudamajver], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/d/DFT-D4/DFT-D4-3.7.0-gomkl-2023b.eb b/easybuild/easyconfigs/d/DFT-D4/DFT-D4-3.7.0-gomkl-2023b.eb new file mode 100644 index 00000000000..02f10d2d9dc --- /dev/null +++ b/easybuild/easyconfigs/d/DFT-D4/DFT-D4-3.7.0-gomkl-2023b.eb @@ -0,0 +1,45 @@ +easyblock = 'MesonNinja' + +name = 'DFT-D4' +version = '3.7.0' + +homepage = 'https://www.chemie.uni-bonn.de/pctc/mulliken-center/software/dftd4' +description = """Generally Applicable Atomic-Charge Dependent London Dispersion Correction.""" + +toolchain = {'name': 'gomkl', 'version': '2023b'} + +source_urls = ['https://github.com/dftd4/dftd4/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +patches = ['DFT-D4-3.2.0-remove_module_id.patch'] +checksums = [ + {'v3.7.0.tar.gz': 'f00b244759eff2c4f54b80a40673440ce951b6ddfa5eee1f46124297e056f69c'}, + {'DFT-D4-3.2.0-remove_module_id.patch': '8c3c81338cb57972580e4cf3db307aa2e44b8b3f6d1ba7ae24fa9d807490a93b'}, +] + +builddependencies = [ + ('CMake', '3.27.6'), + ('Ninja', '1.11.1'), + ('Meson', '1.2.3'), + ('pkgconf', '2.0.3'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('cffi', '1.15.1'), + ('mstore', '0.3.0'), + ('mctc-lib', '0.3.1'), + ('multicharge', '0.3.0'), +] + +configopts = '-Dpython=true -Dapi_v2=true ' +# if not intel compiler used, lapack mkl is not found. +configopts += '-Dlapack=mkl ' + +sanity_check_paths = { + 'files': ['bin/dftd4', 'lib/libdftd4.a', 'lib/libdftd4.%s' % SHLIB_EXT, 'include/dftd4.mod'], + 'dirs': [], +} + +sanity_check_commands = ["dftd4 --version"] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.13-foss-2023a.eb b/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.13-foss-2023a.eb new file mode 100644 index 00000000000..532f9092e79 --- /dev/null +++ b/easybuild/easyconfigs/d/dm-haiku/dm-haiku-0.0.13-foss-2023a.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'dm-haiku' +version = '0.0.13' + +homepage = 'https://github.com/deepmind/dm-haiku' +description = """Haiku is a simple neural network library for JAX developed by some of the authors of Sonnet, a neural +network library for TensorFlow.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('jax', '0.4.25'), # required by jmp, also provides absl-py +] + +use_pip = True + +exts_list = [ + ('jmp', '0.0.4', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['6aa7adbddf2bd574b28c7faf6e81a735eb11f53386447896909c6968dc36807d'], + }), + ('dm_haiku', version, { + 'modulename': 'haiku', + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['ee9562c68a059f146ad07f555ca591cb8c11ef751afecc38353863562bd23f43'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/e/EvidentialGene/EvidentialGene-2018.01.01-gompi-2023a.eb b/easybuild/easyconfigs/e/EvidentialGene/EvidentialGene-2018.01.01-gompi-2023a.eb new file mode 100644 index 00000000000..15d8b4dc07c --- /dev/null +++ b/easybuild/easyconfigs/e/EvidentialGene/EvidentialGene-2018.01.01-gompi-2023a.eb @@ -0,0 +1,40 @@ +easyblock = "PackedBinary" + +name = "EvidentialGene" +version = '2018.01.01' +local_month = ['', 'jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec'] +local_dlver = version.split('.')[0][-2:] + local_month[int(version.split('.')[1])] + version.split('.')[2] + +homepage = 'http://arthropods.eugenes.org/EvidentialGene/' +description = """EvidentialGene is a genome informatics project for + "Evidence Directed Gene Construction for Eukaryotes", + for constructing high quality, accurate gene sets for + animals and plants (any eukaryotes), being developed by + Don Gilbert at Indiana University, gilbertd at indiana edu.""" + +toolchain = {'name': 'gompi', 'version': '2023a'} + +source_urls = [ + 'http://arthropods.eugenes.org/EvidentialGene/other/evigene_old/', + 'http://arthropods.eugenes.org/EvidentialGene/other/evigene_old/evigene_older/', +] +sources = ['evigene%s.tar' % local_dlver] +checksums = ['6972108112cdb1fb106da11321d06b09f518b544e4739d0bf19da1984131e221'] + +dependencies = [ + ('Perl', '5.36.1'), + ('Exonerate', '2.4.0'), + ('CD-HIT', '4.8.1'), + ('BLAST+', '2.14.1'), +] + +fix_perl_shebang_for = ['scripts/*.pl', 'scripts/*/*.pl', 'scripts/*/*/*.pl'] + +sanity_check_paths = { + 'files': [], + 'dirs': ['scripts/'], +} + +modextravars = {'evigene': '%(installdir)s'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/ecCodes/ecCodes-2.38.3-gompi-2024a.eb b/easybuild/easyconfigs/e/ecCodes/ecCodes-2.38.3-gompi-2024a.eb new file mode 100644 index 00000000000..2aa0915ea2e --- /dev/null +++ b/easybuild/easyconfigs/e/ecCodes/ecCodes-2.38.3-gompi-2024a.eb @@ -0,0 +1,46 @@ +easyblock = 'CMakeMake' + +name = 'ecCodes' +version = '2.38.3' + +homepage = 'https://software.ecmwf.int/wiki/display/ECC/ecCodes+Home' +description = """ecCodes is a package developed by ECMWF which provides an application programming interface and + a set of tools for decoding and encoding messages in the following formats: WMO FM-92 GRIB edition 1 and edition 2, + WMO FM-94 BUFR edition 3 and edition 4, WMO GTS abbreviated header (only decoding).""" + +toolchain = {'name': 'gompi', 'version': '2024a'} +toolchainopts = {'usempi': False} + +source_urls = ['https://github.com/ecmwf/eccodes/archive/refs/tags/'] +sources = [{'download_filename': '%(version)s.tar.gz', 'filename': '%(namelower)s-%(version)s.tar.gz'}] +checksums = ['2f13adc4fbdfa3ea11f75ce4ed8937bf40a8fcedd760a519b15e4e17dedc9424'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('ecBuild', '3.8.5'), +] +dependencies = [ + ('netCDF', '4.9.2'), + ('JasPer', '4.2.4'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.43'), + ('zlib', '1.3.1'), + ('libaec', '1.1.3'), +] + +# Python bindings are provided by a separate package 'eccodes-python' +configopts = "-DENABLE_NETCDF=ON -DENABLE_PNG=ON -DENABLE_PYTHON=OFF -DENABLE_JPG=ON " +configopts += "-DENABLE_JPG_LIBJASPER=ON -DENABLE_ECCODES_THREADS=ON" + + +sanity_check_paths = { + 'files': ['bin/bufr_compare', 'bin/bufr_copy', 'bin/bufr_dump', 'bin/bufr_filter', 'bin/bufr_get', 'bin/bufr_ls', + 'bin/grib_compare', 'bin/grib_copy', 'bin/grib_dump', 'bin/grib_filter', 'bin/grib_get', 'bin/grib_ls', + 'bin/gts_compare', 'bin/gts_copy', 'bin/gts_dump', 'bin/gts_filter', 'bin/gts_get', 'bin/gts_ls', + 'bin/metar_compare', 'bin/metar_copy', 'bin/metar_dump', 'bin/metar_filter', 'bin/metar_get', + 'bin/metar_ls', 'bin/codes_count', 'bin/codes_info', 'bin/codes_split_file', + 'lib/libeccodes_f90.%s' % SHLIB_EXT, 'lib/libeccodes.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/e/edlib/edlib-1.3.9.post1-GCC-13.3.0.eb b/easybuild/easyconfigs/e/edlib/edlib-1.3.9.post1-GCC-13.3.0.eb new file mode 100644 index 00000000000..96672c2751b --- /dev/null +++ b/easybuild/easyconfigs/e/edlib/edlib-1.3.9.post1-GCC-13.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonBundle' + +name = 'edlib' +version = '1.3.9.post1' + +homepage = 'https://martinsos.github.io/edlib' +description = "Lightweight, super fast library for sequence alignment using edit (Levenshtein) distance." + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('cogapp', '3.4.1', { + 'checksums': ['a806d5db9e318a1a2d3fce988008179168e7db13e5e55b19b79763f9bb9d2982'], + }), + (name, version, { + 'checksums': ['b0fb6e85882cab02208ccd6daa46f80cb9ff1d05764e91bf22920a01d7a6fbfa'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GLPK/GLPK-5.0-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/GLPK/GLPK-5.0-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..ad96183a02b --- /dev/null +++ b/easybuild/easyconfigs/g/GLPK/GLPK-5.0-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'GLPK' +version = '5.0' + +homepage = 'https://www.gnu.org/software/glpk/' +description = """The GLPK (GNU Linear Programming Kit) package is intended for + solving large-scale linear programming (LP), + mixed integer programming (MIP), and other related problems. + It is a set of routines written in ANSI C + and organized in the form of a callable library.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['4a1013eebb50f728fc601bdd833b0b2870333c3b3e5a816eeba921d95bec6f15'] + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('GMP', '6.3.0'), +] + +configopts = '--with-gmp' + + +sanity_check_paths = { + 'files': ['bin/glpsol', 'include/%(namelower)s.h', 'lib/libglpk.a', 'lib/libglpk.%s' % SHLIB_EXT], + 'dirs': [], +} + +sanity_check_commands = ["glpsol --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/GROMACS-LS/GROMACS-LS-2016.3-foss-2023a.eb b/easybuild/easyconfigs/g/GROMACS-LS/GROMACS-LS-2016.3-foss-2023a.eb new file mode 100644 index 00000000000..e47a07b97f8 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS-LS/GROMACS-LS-2016.3-foss-2023a.eb @@ -0,0 +1,49 @@ +easyblock = 'EB_GROMACS' + +name = 'GROMACS-LS' +version = '2016.3' + +homepage = 'https://vanegaslab.org/software' +description = """ +GROMACS-LS and the MDStress library enable the calculation of local +stress fields from molecular dynamics simulations. + +This is a double precision only CPU only build. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = ['https://vanegaslab.org/files'] +sources = ['gromacs-ls-2016.3-12282019.tar.gz'] +patches = [ + 'GROMACS-LS-2016.3_fix_typo.patch', +] +checksums = [ + {'gromacs-ls-2016.3-12282019.tar.gz': '20f4d4f255800432be188abe41b7fec923cacc5fc895914b3beac0808ddf1919'}, + {'GROMACS-LS-2016.3_fix_typo.patch': '4b9945476405a358bc64784984c51f08ab1aa3a598fb981b2dad8e0c61665fe0'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('MDStress', '20191228'), +] + +# GROMACS-LS can only be built with double precision +single_precision = False + +# GROMACS-LS can only handle hwloc version < 2 +configopts = '-DGMX_HWLOC=OFF' + +# The tests have not been rewritten to handle the mdstress changes +skipsteps = ['test'] + +sanity_check_paths = { + 'files': ['bin/gmx_LS', 'lib/libgromacs_LS.a'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS-LS/GROMACS-LS-2016.3_fix_typo.patch b/easybuild/easyconfigs/g/GROMACS-LS/GROMACS-LS-2016.3_fix_typo.patch new file mode 100644 index 00000000000..2529da617ed --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS-LS/GROMACS-LS-2016.3_fix_typo.patch @@ -0,0 +1,38 @@ +Fix a couple of smaller problems + +Åke Sandgren, 2024-11-07 +diff -ru gromacs-ls-2016.3.orig/cmake/gmxTestCXX11.cmake gromacs-ls-2016.3/cmake/gmxTestCXX11.cmake +--- gromacs-ls-2016.3.orig/cmake/gmxTestCXX11.cmake 2019-12-28 15:42:21.000000000 +0100 ++++ gromacs-ls-2016.3/cmake/gmxTestCXX11.cmake 2024-11-07 10:45:40.060210373 +0100 +@@ -49,7 +49,7 @@ + elseif(CYGWIN) + set(CXX11_CXX_FLAG "-std=gnu++0x") #required for strdup + else() +- set(CXX11_CXX_FLAG "-std=c++0x") ++ set(CXX11_CXX_FLAG "-std=c++11") + endif() + CHECK_CXX_COMPILER_FLAG("${CXX11_CXX_FLAG}" CXXFLAG_STD_CXX0X) + if(NOT CXXFLAG_STD_CXX0X) +diff -ru gromacs-ls-2016.3.orig/src/gromacs/mdlib/minimize.cpp gromacs-ls-2016.3/src/gromacs/mdlib/minimize.cpp +--- gromacs-ls-2016.3.orig/src/gromacs/mdlib/minimize.cpp 2019-12-28 15:42:28.000000000 +0100 ++++ gromacs-ls-2016.3/src/gromacs/mdlib/minimize.cpp 2024-11-07 10:55:06.668206192 +0100 +@@ -54,6 +54,7 @@ + + #include + #include ++#include + + #include "gromacs/commandline/filenm.h" + #include "gromacs/domdec/domdec.h" +diff -ru gromacs-ls-2016.3.orig/src/programs/mdrun/runner.cpp gromacs-ls-2016.3/src/programs/mdrun/runner.cpp +--- gromacs-ls-2016.3.orig/src/programs/mdrun/runner.cpp 2019-12-28 15:42:30.000000000 +0100 ++++ gromacs-ls-2016.3/src/programs/mdrun/runner.cpp 2024-11-07 10:33:22.588969615 +0100 +@@ -175,7 +175,7 @@ + int localsspatialatom; + int localsdispcor; + int localspbc; +- real localsmindihang; ++ real localsmindihangle; + unsigned long Flags; + }; + diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.4-foss-2023a.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.4-foss-2023a.eb new file mode 100644 index 00000000000..e8c0d929bd9 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2023.4-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.4' + +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.4.tar.gz': 'e5d6c4d9e7ccacfaccb0888619bd21b5ea8911f82b410e68d6db5d40f695f231'}, + {'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.4.tar.gz', + 'start_dir': 'python_packaging/gmxapi', + 'checksums': ['e5d6c4d9e7ccacfaccb0888619bd21b5ea8911f82b410e68d6db5d40f695f231'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0-PLUMED-2.9.2.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0-PLUMED-2.9.2.eb new file mode 100644 index 00000000000..1fc7764f5a7 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0-PLUMED-2.9.2.eb @@ -0,0 +1,98 @@ +# 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 = '2024.4' +local_plumedver = '2.9.2' +versionsuffix = '-CUDA-%%(cudaver)s-PLUMED-%s' % local_plumedver + +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': '2023b'} +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', + 'GROMACS-2023.3_skip_test_for_plumed.patch', +] +checksums = [ + {'gromacs-2024.4.tar.gz': 'ac618ece2e58afa86b536c5a2c4fcb937f0760318f12d18f10346b6bdebd86a8'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': + '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': + '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, + {'GROMACS-2023.3_skip_test_for_plumed.patch': '6c541ee74f71f6a63950134d9d0e3afb176a2e25e76e017b4d1986a59163c083'}, +] + +builddependencies = [ + ('CMake', '3.27.6'), + ('scikit-build-core', '0.9.3'), +] + +dependencies = [ + ('CUDA', '12.4.0', '', SYSTEM), + ('UCX-CUDA', '1.15.0', '-CUDA-%(cudaver)s'), + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('networkx', '3.2.1'), + ('mpi4py', '3.1.5'), + ('PLUMED', local_plumedver), +] + +# be a bit more forgiving w.r.t. timeouts for GROMACS test suite, +# see also https://gitlab.com/gromacs/gromacs/-/issues/5062 +configopts = "-DGMX_TEST_TIMEOUT_FACTOR=3" + +# PLUMED 2.9.2 is compatible with GROMACS 2024.2; 2024.4 seems to work fine too +ignore_plumed_version_check = True + +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" && ', + 'checksums': ['c746c6498c73a75913d7fcb01c13cc001d4bcb82999e9bf91d63578565ed1a1f'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0.eb new file mode 100644 index 00000000000..d93065bbed6 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-CUDA-12.4.0.eb @@ -0,0 +1,91 @@ +# 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 = '2024.4' +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': '2023b'} +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-2024.4.tar.gz': 'ac618ece2e58afa86b536c5a2c4fcb937f0760318f12d18f10346b6bdebd86a8'}, + {'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.27.6'), + ('scikit-build-core', '0.9.3'), +] + +dependencies = [ + ('CUDA', '12.4.0', '', SYSTEM), + ('UCX-CUDA', '1.15.0', versionsuffix), + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('networkx', '3.2.1'), + ('mpi4py', '3.1.5'), +] + +# be a bit more forgiving w.r.t. timeouts for GROMACS test suite, +# see also https://gitlab.com/gromacs/gromacs/-/issues/5062 +configopts = "-DGMX_TEST_TIMEOUT_FACTOR=3" + +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" && ', + 'checksums': ['c746c6498c73a75913d7fcb01c13cc001d4bcb82999e9bf91d63578565ed1a1f'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-PLUMED-2.9.2.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-PLUMED-2.9.2.eb new file mode 100644 index 00000000000..5920405282c --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b-PLUMED-2.9.2.eb @@ -0,0 +1,97 @@ +# 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 = '2024.4' +local_plumedver = '2.9.2' +versionsuffix = '-PLUMED-%s' % local_plumedver + +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': '2023b'} +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', + 'GROMACS-2023.3_skip_test_for_plumed.patch', +] +checksums = [ + {'gromacs-2024.4.tar.gz': 'ac618ece2e58afa86b536c5a2c4fcb937f0760318f12d18f10346b6bdebd86a8'}, + {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch': + '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'}, + {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch': + '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'}, + {'GROMACS-2023.3_skip_test_for_plumed.patch': '6c541ee74f71f6a63950134d9d0e3afb176a2e25e76e017b4d1986a59163c083'}, +] + +builddependencies = [ + ('CMake', '3.27.6'), + ('scikit-build-core', '0.9.3'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('networkx', '3.2.1'), + ('mpi4py', '3.1.5'), + ('PLUMED', local_plumedver), +] + +# PLUMED 2.9.2 is compatible with GROMACS 2024.2; 2024.4 seems to work fine too +ignore_plumed_version_check = True + +# be a bit more forgiving w.r.t. timeouts for GROMACS test suite, +# see also https://gitlab.com/gromacs/gromacs/-/issues/5062 +configopts = "-DGMX_TEST_TIMEOUT_FACTOR=3" + +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" && ', + 'checksums': ['c746c6498c73a75913d7fcb01c13cc001d4bcb82999e9bf91d63578565ed1a1f'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b.eb new file mode 100644 index 00000000000..778af16ba08 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2023b.eb @@ -0,0 +1,89 @@ +# 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 = '2024.4' + +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': '2023b'} +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-2024.4.tar.gz': 'ac618ece2e58afa86b536c5a2c4fcb937f0760318f12d18f10346b6bdebd86a8'}, + {'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.27.6'), + ('scikit-build-core', '0.9.3'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('networkx', '3.2.1'), + ('mpi4py', '3.1.5'), +] + +# be a bit more forgiving w.r.t. timeouts for GROMACS test suite, +# see also https://gitlab.com/gromacs/gromacs/-/issues/5062 +configopts = "-DGMX_TEST_TIMEOUT_FACTOR=3" + +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" && ', + 'checksums': ['c746c6498c73a75913d7fcb01c13cc001d4bcb82999e9bf91d63578565ed1a1f'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/Greenlet/Greenlet-3.1.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/Greenlet/Greenlet-3.1.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..b54b7ecfcc3 --- /dev/null +++ b/easybuild/easyconfigs/g/Greenlet/Greenlet-3.1.1-GCCcore-13.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'Greenlet' +version = '3.1.1' + +homepage = 'https://github.com/python-greenlet/greenlet' + +description = """The greenlet package is a spin-off of Stackless, a version of CPython that +supports micro-threads called "tasklets". Tasklets run pseudo-concurrently (typically in a single +or a few OS-level threads) and are synchronized with data exchanges on "channels". +A "greenlet", on the other hand, is a still more primitive notion of micro-thread with no implicit +scheduling; coroutines, in other words. This is useful when you want to control exactly when your code runs. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] +dependencies = [('Python', '3.12.3')] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['4ce3ac6cdb6adf7946475d7ef31777c26d94bccc377e070a7986bd2d5c515467'] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/gnuplot/gnuplot-6.0.1-GCCcore-13.3.0.eb b/easybuild/easyconfigs/g/gnuplot/gnuplot-6.0.1-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..e27fc37776f --- /dev/null +++ b/easybuild/easyconfigs/g/gnuplot/gnuplot-6.0.1-GCCcore-13.3.0.eb @@ -0,0 +1,51 @@ +easyblock = 'ConfigureMake' + +name = 'gnuplot' +version = '6.0.1' + +homepage = 'http://gnuplot.sourceforge.net' +description = "Portable interactive, function plotting utility" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [('https://sourceforge.net/projects/%(name)s/files/%(name)s/%(version)s', 'download')] +sources = [SOURCE_TAR_GZ] +checksums = ['e85a660c1a2a1808ff24f7e69981ffcbac66a45c9dcf711b65610b26ea71379a'] + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), + ('Autotools', '20231222'), +] +dependencies = [ + ('ncurses', '6.5'), + ('cairo', '1.18.0'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.43'), + ('libgd', '2.3.3'), + ('Pango', '1.54.0'), + ('libcerf', '2.4'), + ('X11', '20240607'), + ('Qt6', '6.7.2'), + ('Lua', '5.4.7'), +] + +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" && ' + +# fix undefined reference to symbol 'libiconv_open' +preconfigopts += ' export LDFLAGS="-Wl,--copy-dt-needed-entries" && ' + +configopts = "--without-latex --disable-wxwidgets" + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +# make sure that pdf terminal type is available +sanity_check_commands = ["%(name)s -e 'set terminal pdf'"] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/gomkl/gomkl-2023b.eb b/easybuild/easyconfigs/g/gomkl/gomkl-2023b.eb new file mode 100644 index 00000000000..d5b856a6fe9 --- /dev/null +++ b/easybuild/easyconfigs/g/gomkl/gomkl-2023b.eb @@ -0,0 +1,19 @@ +easyblock = "Toolchain" + +name = 'gomkl' +version = '2023b' + +homepage = '(none)' +description = """GNU Compiler Collection (GCC) based compiler toolchain with OpenMPI and MKL""" + +toolchain = SYSTEM + +local_comp = ('GCC', '13.2.0') + +dependencies = [ + local_comp, + ('OpenMPI', '4.1.6', '', local_comp), + ('imkl', '2023.2.0', '', ('gompi', version)), +] + +moduleclass = 'toolchain' diff --git a/easybuild/easyconfigs/h/HTSplotter/HTSplotter-2.11-foss-2023a.eb b/easybuild/easyconfigs/h/HTSplotter/HTSplotter-2.11-foss-2023a.eb index 5a631178a6b..75808cd8e7a 100644 --- a/easybuild/easyconfigs/h/HTSplotter/HTSplotter-2.11-foss-2023a.eb +++ b/easybuild/easyconfigs/h/HTSplotter/HTSplotter-2.11-foss-2023a.eb @@ -50,8 +50,12 @@ exts_list = [ }), (name, version, { 'modulename': 'HTSplotter', - 'source_tmpl': SOURCE_PY3_WHL, - 'checksums': ['6067735d14f15ca2fd35963701a96e39edaf0899742bfa7ccc8f9867a0279346'], + # Fixes the following error. + # `TypeError: rv_generic_interval() missing 1 required positional argument: 'confidence'` + # see https://github.com/KatherLab/marugoto/issues/14 + # see also scipy release notes https://docs.scipy.org/doc/scipy/release/1.9.0-notes.html#deprecated-features + 'preinstallopts': "sed -i 's/alpha/confidence/g' HTSplotter/save_hdf5brfiles.py && ", + 'checksums': ['51c0cee4e8eeecfd03f32dd707e0fa433cec91abb9334ec1d28e7f82615dbe29'], }), ] diff --git a/easybuild/easyconfigs/i/Inspector/Inspector-2024.2.0.eb b/easybuild/easyconfigs/i/Inspector/Inspector-2024.2.0.eb new file mode 100644 index 00000000000..0d345bc2c5e --- /dev/null +++ b/easybuild/easyconfigs/i/Inspector/Inspector-2024.2.0.eb @@ -0,0 +1,19 @@ + +name = 'Inspector' +version = '2024.2.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/inspector.html' +description = """Intel Inspector is a dynamic memory and threading error + checking tool for users developing serial and parallel applications""" + +toolchain = SYSTEM + +source_urls = ['https://registrationcenter-download.intel.com/akdlm/IRC_NAS/1549c5b3-cf23-4595-9593-b5d0460a8dcd/'] +sources = ['l_inspector_oneapi_p_%(version)s.22_offline.sh'] +checksums = ['e2aab9b1b428d0c23184beae8caac55fa3d3f973ac51a6b6908eb38b0d9097ed'] + +dontcreateinstalldir = True + +requires_runtime_license = False + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/i/imgaug/imgaug-0.4.1-foss-2023a.eb b/easybuild/easyconfigs/i/imgaug/imgaug-0.4.1-foss-2023a.eb new file mode 100644 index 00000000000..2b1f0c837e5 --- /dev/null +++ b/easybuild/easyconfigs/i/imgaug/imgaug-0.4.1-foss-2023a.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'imgaug' +version = '0.4.1' + +homepage = 'https://imgaug.readthedocs.io/en/latest/' +description = """ This python library helps you with augmenting images for your machine learning projects. + It converts a set of input images into a new, much larger set of slightly altered images. """ + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Pillow', '10.0.0'), + ('matplotlib', '3.7.2'), + ('scikit-image', '0.22.0'), + ('OpenCV', '4.8.1', '-contrib'), + ('Shapely', '2.0.1'), + ('imageio', '2.33.1'), +] + +source_urls = ['https://github.com/nsetzer/imgaug/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['imgaug-0.4.1_openvc_requirement.patch'] +checksums = [ + {'0.4.1.tar.gz': 'dd9655f8d871da35c37cf674ba35c76175a77aeac517e8dafe6673c8f853115f'}, + {'imgaug-0.4.1_openvc_requirement.patch': '0e0993322184c56115ea04262f8eacef4a86a9aa7b26c8cd67258ccaa441d8a7'}, +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/i/imkl/imkl-2023.2.0-gompi-2023b.eb b/easybuild/easyconfigs/i/imkl/imkl-2023.2.0-gompi-2023b.eb new file mode 100644 index 00000000000..e194f389253 --- /dev/null +++ b/easybuild/easyconfigs/i/imkl/imkl-2023.2.0-gompi-2023b.eb @@ -0,0 +1,18 @@ +name = 'imkl' +version = '2023.2.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': '2023b'} + +# 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/adb8a02c-4ee7-4882-97d6-a524150da358/'] +sources = ['l_onemkl_p_%(version)s.49497_offline.sh'] +checksums = ['4a0d93da85a94d92e0ad35dc0fc3b3ab7f040bd55ad374c4d5ec81a57a2b872b'] + +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/j/JAGS/JAGS-4.3.2-foss-2024a.eb b/easybuild/easyconfigs/j/JAGS/JAGS-4.3.2-foss-2024a.eb new file mode 100644 index 00000000000..1077c8fc2a9 --- /dev/null +++ b/easybuild/easyconfigs/j/JAGS/JAGS-4.3.2-foss-2024a.eb @@ -0,0 +1,38 @@ +# 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 + +easyblock = 'ConfigureMake' + +name = 'JAGS' +version = '4.3.2' + +homepage = 'http://mcmc-jags.sourceforge.net/' +description = """JAGS is Just Another Gibbs Sampler. It is a program for analysis + of Bayesian hierarchical models using Markov Chain Monte Carlo (MCMC) simulation """ + +toolchain = {'name': 'foss', 'version': '2024a'} + +source_urls = [ + ('https://sourceforge.net/projects/mcmc-%(namelower)s/files/%(name)s/%(version_major)s.x/Source/', 'download'), +] +sources = [SOURCE_TAR_GZ] +checksums = ['871f556af403a7c2ce6a0f02f15cf85a572763e093d26658ebac55c4ab472fc8'] + +configopts = ' --with-blas="$LIBBLAS" --with-lapack="$LIBLAPACK"' + + +sanity_check_paths = { + 'files': ['bin/%(namelower)s', 'libexec/%(namelower)s-terminal', 'lib/libjags.%s' % SHLIB_EXT], + 'dirs': [], +} + +sanity_check_commands = ["echo 'list modules' | %(namelower)s"] + +modextrapaths = { + 'JAGS_INCLUDE': 'include/%(name)s', + 'JAGS_LIB': 'lib', +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/j/Java/Java-21.0.5.eb b/easybuild/easyconfigs/j/Java/Java-21.0.5.eb new file mode 100644 index 00000000000..932318fd336 --- /dev/null +++ b/easybuild/easyconfigs/j/Java/Java-21.0.5.eb @@ -0,0 +1,32 @@ +name = 'Java' +version = '21.0.5' +local_build = '11' + +homepage = 'https://openjdk.org' +description = """Java Platform, Standard Edition (Java SE) lets you develop and deploy +Java applications on desktops and servers.""" + +toolchain = SYSTEM + +local_tarball_tmpl = 'OpenJDK%%(version_major)sU-jdk_%s_linux_hotspot_%%(version)s_%s.tar.gz' + +# Using the Adoptium Eclipse Temurin builds, recommended by https://whichjdk.com/#distributions + +source_urls = ['https://github.com/adoptium/temurin%%(version_major)s-binaries/releases/download/jdk-%%(version)s+%s/' + % local_build] +sources = [local_tarball_tmpl % ('%(jdkarch)s', local_build)] + +checksums = [ + { + local_tarball_tmpl % ('x64', local_build): + '3c654d98404c073b8a7e66bffb27f4ae3e7ede47d13284c132d40a83144bfd8c', + local_tarball_tmpl % ('aarch64', local_build): + '6482639ed9fd22aa2e704cc366848b1b3e1586d2bf1213869c43e80bca58fe5c', + local_tarball_tmpl % ('ppc64le', local_build): + '3c6f4c358facfb6c19d90faf02bfe0fc7512d6b0e80ac18146bbd7e0d01deeef', + local_tarball_tmpl % ('riscv64', local_build): + '2f1b3e401e36de803398dfb9818861f9f14ca8ae7db650ea0946ab048fefe3b9', + } +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Java/Java-21.eb b/easybuild/easyconfigs/j/Java/Java-21.eb index 46e84105b35..c7aef391c20 100644 --- a/easybuild/easyconfigs/j/Java/Java-21.eb +++ b/easybuild/easyconfigs/j/Java/Java-21.eb @@ -9,6 +9,6 @@ Java applications on desktops and servers.""" toolchain = SYSTEM -dependencies = [('Java', '%(version)s.0.2')] +dependencies = [('Java', '%(version)s.0.5')] moduleclass = 'lang' diff --git a/easybuild/easyconfigs/l/LightGBM/LightGBM-4.5.0-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/l/LightGBM/LightGBM-4.5.0-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..638330e8866 --- /dev/null +++ b/easybuild/easyconfigs/l/LightGBM/LightGBM-4.5.0-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,56 @@ +easyblock = 'PythonBundle' + +name = "LightGBM" +version = "4.5.0" +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = "https://lightgbm.readthedocs.io" +description = """A fast, distributed, high performance gradient boosting (GBT, GBDT, GBRT, GBM +or MART) framework based on decision tree algorithms, used for ranking, +classification and many other machine learning tasks.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('scikit-build-core', '0.9.3'), + ('wget', '1.24.5'), +] + +dependencies = [ + ('CUDA', '12.1.1', '', SYSTEM), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Arrow', '14.0.1'), # optional + ('dask', '2023.9.2'), # optional + ('scikit-learn', '1.3.1'), # optional +] + +use_pip = True + +# example files are not distributed with the sources +_test_repo_url = "https://raw.githubusercontent.com/microsoft/LightGBM/refs/tags/v%(version)s/examples" +_test_cmds_pre = " && ".join([ + "mkdir regression", + "wget -P regression %s/regression/regression.test" % _test_repo_url, + "wget -P regression %s/regression/regression.train" % _test_repo_url, + "mkdir test", + "cd test", + "wget %s/python-guide/simple_example.py" % _test_repo_url, + "", +]) + +exts_list = [ + ('lightgbm', version, { + 'checksums': ['e1cd7baf0318d4e308a26575a63a4635f08df866ad3622a9d8e3d71d9637a1ba'], + 'installopts': "--config-settings=cmake.define.USE_CUDA=ON", + 'use_pip_extras': "arrow,dask,pandas,scikit-learn", + 'pretestopts': _test_cmds_pre, + 'runtest': 'python', + 'testopts': "simple_example.py", + 'testinstall': True, + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/l/LightGBM/LightGBM-4.5.0-foss-2023a.eb b/easybuild/easyconfigs/l/LightGBM/LightGBM-4.5.0-foss-2023a.eb new file mode 100644 index 00000000000..b6a03faf9ca --- /dev/null +++ b/easybuild/easyconfigs/l/LightGBM/LightGBM-4.5.0-foss-2023a.eb @@ -0,0 +1,54 @@ +easyblock = 'PythonBundle' + +name = "LightGBM" +version = "4.5.0" + +homepage = "https://lightgbm.readthedocs.io" +description = """A fast, distributed, high performance gradient boosting (GBT, GBDT, GBRT, GBM +or MART) framework based on decision tree algorithms, used for ranking, +classification and many other machine learning tasks.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +builddependencies = [ + ('scikit-build-core', '0.9.3'), + ('wget', '1.24.5'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('Arrow', '14.0.1'), # optional + ('dask', '2023.9.2'), # optional + ('scikit-learn', '1.3.1'), # optional +] + +use_pip = True + +# example files are not distributed with the sources +_test_repo_url = "https://raw.githubusercontent.com/microsoft/LightGBM/refs/tags/v%(version)s/examples" +_test_cmds_pre = " && ".join([ + "mkdir regression", + "wget -P regression %s/regression/regression.test" % _test_repo_url, + "wget -P regression %s/regression/regression.train" % _test_repo_url, + "mkdir test", + "cd test", + "wget %s/python-guide/simple_example.py" % _test_repo_url, + "", +]) + +exts_list = [ + ('lightgbm', version, { + 'checksums': ['e1cd7baf0318d4e308a26575a63a4635f08df866ad3622a9d8e3d71d9637a1ba'], + 'installopts': "--config-settings=cmake.define.USE_MPI=ON", + 'use_pip_extras': "arrow,dask,pandas,scikit-learn", + 'pretestopts': _test_cmds_pre, + 'runtest': 'python', + 'testopts': "simple_example.py", + 'testinstall': True, + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/l/Lightning/Lightning-2.2.1-foss-2023a.eb b/easybuild/easyconfigs/l/Lightning/Lightning-2.2.1-foss-2023a.eb new file mode 100644 index 00000000000..5635e783f7c --- /dev/null +++ b/easybuild/easyconfigs/l/Lightning/Lightning-2.2.1-foss-2023a.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'Lightning' +version = '2.2.1' + +homepage = 'https://github.com/Lightning-AI/pytorch-lightning' +description = """ +The deep learning framework to pretrain, finetune and deploy AI models. +Lightning has 4 core packages: + PyTorch Lightning: Train and deploy PyTorch at scale. + Lightning Fabric: Expert control. + Lightning Data: Blazing fast, distributed streaming of training data from cloud storage. + Lightning Apps: Build AI products and ML workflows. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['b3e46d596b32cafd1fb9b21fdba1b1767df97b1af5cc702693d1c51df60b19aa'] + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch', '2.1.2'), + ('PyTorch-Lightning', version), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/l/Lua/Lua-5.4.7-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/Lua/Lua-5.4.7-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..98e622129cd --- /dev/null +++ b/easybuild/easyconfigs/l/Lua/Lua-5.4.7-GCCcore-13.3.0.eb @@ -0,0 +1,28 @@ +name = 'Lua' +version = '5.4.7' + +homepage = 'https://www.lua.org/' +description = """Lua is a powerful, fast, lightweight, embeddable scripting language. + Lua combines simple procedural syntax with powerful data description constructs based + on associative arrays and extensible semantics. Lua is dynamically typed, + runs by interpreting bytecode for a register-based virtual machine, + and has automatic memory management with incremental garbage collection, + making it ideal for configuration, scripting, and rapid prototyping.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.%(namelower)s.org/ftp/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['9fbf5e28ef86c69858f6d3d34eccc32e911c1a28b4120ff3e84aaa70cfbf1e30'] + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('ncurses', '6.5'), + ('libreadline', '8.2'), +] + + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/l/libaec/libaec-1.1.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libaec/libaec-1.1.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..267acc5aa3d --- /dev/null +++ b/easybuild/easyconfigs/l/libaec/libaec-1.1.3-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Denis Kristak +easyblock = 'CMakeMake' + +name = 'libaec' +version = '1.1.3' + +homepage = 'https://gitlab.dkrz.de/k202009/libaec' +description = """Libaec provides fast lossless compression of 1 up to 32 bit wide signed or unsigned integers +(samples). The library achieves best results for low entropy data as often encountered in space imaging +instrument data or numerical model output from weather or climate simulations. While floating point representations +are not directly supported, they can also be efficiently coded by grouping exponents and mantissa.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://gitlab.dkrz.de/k202009/%(namelower)s/-/archive/v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +patches = ["libaec-1.1.3_install_binary.patch"] + +checksums = ['453de44eb6ea2500843a4cf4d2e97d1be251d2df7beae6c2ebe374edcb11e378', + '52fcdeacd9c27108dffafd8109012902fa63fb2e39803670a3ba16f313628f4c'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('binutils', '2.42'), +] + +sanity_check_paths = { + 'files': ['bin/graec', 'include/%(name)s.h', 'include/szlib.h', + 'lib/libaec.a', 'lib/libaec.%s' % SHLIB_EXT], + 'dirs': [], +} + +sanity_check_commands = ['graec --help'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libaec/libaec-1.1.3_install_binary.patch b/easybuild/easyconfigs/l/libaec/libaec-1.1.3_install_binary.patch new file mode 100644 index 00000000000..29d7f8e0c7b --- /dev/null +++ b/easybuild/easyconfigs/l/libaec/libaec-1.1.3_install_binary.patch @@ -0,0 +1,11 @@ +# The binary is not installed by default which caused the sanity check to fail +# @author Stefan Wolfsheimer, SURF + +diff -uNr libaec-v1.1.3.orig/src/CMakeLists.txt libaec-v1.1.3/src/CMakeLists.txt +--- libaec-v1.1.3.orig/src/CMakeLists.txt 2024-11-15 14:21:05.177185441 +0100 ++++ libaec-v1.1.3/src/CMakeLists.txt 2024-11-15 14:21:39.702841450 +0100 +@@ -76,3 +76,4 @@ + COMPILE_DEFINITIONS "${libaec_COMPILE_DEFINITIONS}") + + install(TARGETS aec_static aec_shared sz_static sz_shared) ++install(TARGETS graec RUNTIME DESTINATION bin) diff --git a/easybuild/easyconfigs/l/libgd/libgd-2.3.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libgd/libgd-2.3.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..2c03aa92105 --- /dev/null +++ b/easybuild/easyconfigs/l/libgd/libgd-2.3.3-GCCcore-13.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'libgd' +version = '2.3.3' + +homepage = 'https://libgd.github.io' +description = "GD is an open source code library for the dynamic creation of images by programmers." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/%(name)s/%(name)s/releases/download/gd-%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['dd3f1f0bb016edcc0b2d082e8229c822ad1d02223511997c80461481759b1ed2'] + +builddependencies = [ + ('binutils', '2.42'), +] +dependencies = [ + ('fontconfig', '2.15.0'), + ('libjpeg-turbo', '3.0.1'), + ('libpng', '1.6.43'), + ('zlib', '1.3.1'), +] + +configopts = "--with-fontconfig=$EBROOTFONTCONFIG --with-jpeg=$EBROOTLIBJPEGMINTURBO " +configopts += "--with-png=$EBROOTLIBPNG --with-zlib=$EBROOTZLIB" + +sanity_check_paths = { + 'files': ['lib/%(name)s.a', 'lib/%(name)s.so'], + 'dirs': ['bin', 'include'], +} + +sanity_check_commands = ['webpng --help'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libxc/libxc-6.2.2-GCC-13.2.0-nofhc.eb b/easybuild/easyconfigs/l/libxc/libxc-6.2.2-GCC-13.2.0-nofhc.eb new file mode 100644 index 00000000000..709703f2949 --- /dev/null +++ b/easybuild/easyconfigs/l/libxc/libxc-6.2.2-GCC-13.2.0-nofhc.eb @@ -0,0 +1,53 @@ +easyblock = 'CMakeMake' + +name = 'libxc' +version = '6.2.2' +versionsuffix = '-nofhc' + +homepage = 'https://libxc.gitlab.io' +description = """Libxc is a library of exchange-correlation functionals for density-functional theory. + The aim is to provide a portable, well tested and reliable set of exchange and correlation functionals.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +source_urls = ['https://gitlab.com/libxc/libxc/-/archive/%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = [('a0f6f1bba7ba5c0c85b2bfe65aca1591025f509a7f11471b4cd651a79491b045', + '3b0523924579cf494cafc6fea92945257f35692b004217d3dfd3ea7ca780e8dc')] + +builddependencies = [ + ('CMake', '3.27.6'), + ('Perl', '5.38.0'), +] + +local_common_configopts = "-DENABLE_FORTRAN=ON -DENABLE_XHOST=OFF " + +# don't disable building of third and fourth derivates, since it's required by some software that depends on libxc +# (like ABINIT, which requires "3rd derivatives of energy") +# see also https://github.com/pyscf/pyscf/issues/1103 +local_common_configopts += "-DDISABLE_KXC=OFF -DDISABLE_LXC=OFF" + +# Disable fhc, this needs to support codes (like VASP) relying on the projector augmented wave (PAW) approach +local_common_configopts += ' -DDISABLE_FHC=ON' + +# perform iterative build to get both static and shared libraries +configopts = [ + local_common_configopts + ' -DBUILD_SHARED_LIBS=OFF', + local_common_configopts + ' -DBUILD_SHARED_LIBS=ON', +] + +# make sure that built libraries (libxc*.so*) in build directory are picked when running tests +# this is required when RPATH linking is used +pretestopts = "export LD_LIBRARY_PATH=%(builddir)s/easybuild_obj:$LD_LIBRARY_PATH && " + +runtest = 'test' + +sanity_check_paths = { + 'files': ['bin/xc-info'] + + ['lib/libxc%s.%s' % (x, y) for x in ['', 'f03', 'f90'] for y in ['a', SHLIB_EXT]], + 'dirs': ['include', 'lib/pkgconfig', 'lib/cmake/Libxc'], +} + +sanity_check_commands = ['xc-info 1'] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/likwid/likwid-5.3.0-GCC-13.3.0.eb b/easybuild/easyconfigs/l/likwid/likwid-5.3.0-GCC-13.3.0.eb new file mode 100644 index 00000000000..b9d22fc36dc --- /dev/null +++ b/easybuild/easyconfigs/l/likwid/likwid-5.3.0-GCC-13.3.0.eb @@ -0,0 +1,54 @@ +easyblock = 'ConfigureMake' + +name = 'likwid' +version = '5.3.0' + +homepage = 'https://github.com/RRZE-HPC/likwid' + +description = """ +Likwid stands for Like I knew what I am doing. This project contributes easy +to use command line tools for Linux to support programmers in developing high +performance multi threaded programs. +""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/RRZE-HPC/%(name)s/archive/'] +sources = ['v%(version)s.tar.gz'] + +checksums = ['c290e554c4253124ac2ab8b056e14ee4d23966b8c9fbfa10ba81f75ae543ce4e'] + +builddependencies = [ + ('Perl', '5.38.2'), +] +dependencies = [ + ('hwloc', '2.10.0'), +] + +skipsteps = ['configure'] + +# include_GCC.mk is using ifort by default. +# Changing it to gfortran, to be consistent with GCC toolchain +prebuildopts = """sed -i 's@FC = ifort@FC = gfortran@g' make/include_GCC.mk && """ +prebuildopts += """sed -i 's@FCFLAGS = -module ./ # ifort@FCFLAGS = -J ./ -fsyntax-only #gfortran@g' """ +prebuildopts += """ make/include_GCC.mk && """ + +buildopts = 'CC="$CC" CFLAGS="$CFLAGS -std=c99" PREFIX=%(installdir)s BUILDFREQ="" ACCESSMODE=perf_event ' +buildopts += 'FORTRAN_INTERFACE=true ' +buildopts += 'CFG_FILE_PATH=%(installdir)s/etc/likwid.cfg TOPO_FILE_PATH=%(installdir)s/etc/likwid_topo.cfg ' +buildopts += 'HWLOC_INCLUDE_DIR=$EBROOTHWLOC/include HWLOC_LIB_DIR=$EBROOTHWLOC/lib HWLOC_LIB_NAME=hwloc ' + +maxparallel = 1 + +installopts = buildopts + 'INSTALL_CHOWN="" ' + +sanity_check_paths = { + 'files': ['bin/likwid-memsweeper', 'bin/likwid-mpirun', 'bin/likwid-perfctr', + 'bin/likwid-perfscope', 'bin/likwid-pin', 'bin/likwid-powermeter', + 'bin/likwid-topology', 'lib/liblikwidpin.%s' % SHLIB_EXT, + 'lib/liblikwid.%s' % SHLIB_EXT, 'include/likwid.mod'], + 'dirs': ['man/man1'] +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/m/MATLAB/MATLAB-2024b.eb b/easybuild/easyconfigs/m/MATLAB/MATLAB-2024b.eb new file mode 100644 index 00000000000..c53c320205f --- /dev/null +++ b/easybuild/easyconfigs/m/MATLAB/MATLAB-2024b.eb @@ -0,0 +1,28 @@ +name = 'MATLAB' +version = '2024b' + +homepage = 'https://www.mathworks.com/products/matlab' +description = """MATLAB is a high-level language and interactive environment + that enables you to perform computationally intensive tasks faster than with + traditional programming languages such as C, C++, and Fortran.""" + +toolchain = SYSTEM + +sources = ['R%s_Linux.iso' % (version)] +checksums = ['4e4499d93b4909b750ee2a6444af107cd5c1c62e75020c3e1625e946c6693573'] + +download_instructions = 'Download %s from mathworks.com' % sources[0] + +java_options = '-Xmx2048m' + +osdependencies = [('p7zip-plugins', 'p7zip-full')] # for extracting iso-files + +# Use EB_MATLAB_KEY environment variable or uncomment and modify license key +# key = '00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000' + +# Use EB_MATLAB_LICENSE_SERVER and EB_MATLAB_LICENSE_SERVER_PORT environment variables or +# uncomment and modify the following variables for installation with floating license server +# license_file = 'my-license-file' +# license_server_port = 'XXXXX' + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/MDStress/MDStress-20191228-gfbf-2023a.eb b/easybuild/easyconfigs/m/MDStress/MDStress-20191228-gfbf-2023a.eb new file mode 100644 index 00000000000..7be20fe7e5b --- /dev/null +++ b/easybuild/easyconfigs/m/MDStress/MDStress-20191228-gfbf-2023a.eb @@ -0,0 +1,41 @@ +easyblock = 'CMakeMake' + +name = 'MDStress' +version = '20191228' + +homepage = 'https://vanegaslab.org/software' +description = """MDStress library enable the calculation of local stress +fields from molecular dynamics simulations""" + +toolchain = {'name': 'gfbf', 'version': '2023a'} + +source_urls = ['https://vanegaslab.org/files'] +sources = ['mdstress-library-12282019.tar.gz'] +patches = [ + 'MDStress-20191228_use_external_voro++_and_EB_lapack.patch', +] +checksums = [ + {'mdstress-library-12282019.tar.gz': 'abea62dca77ca4645463415bec219a42554146cc0eefd480c760222e423c7db3'}, + {'MDStress-20191228_use_external_voro++_and_EB_lapack.patch': + '566c181f9a6784c81b04226d360ed71d96f99310a231a88919e7fac37e515e92'}, +] + +builddependencies = [ + ('CMake', '3.26.3'), +] + +dependencies = [ + ('Voro++', '0.4.6'), + ('Python', '3.11.3'), +] + +sanity_check_paths = { + 'files': ['bin/tensortools', 'include/mdstress/mds_basicops.h', 'lib/libmdstress.%s' % SHLIB_EXT], + 'dirs': [], +} + +modextrapaths = { + 'PYTHONPATH': 'bin', +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/m/MDStress/MDStress-20191228_use_external_voro++_and_EB_lapack.patch b/easybuild/easyconfigs/m/MDStress/MDStress-20191228_use_external_voro++_and_EB_lapack.patch new file mode 100644 index 00000000000..fd2458812bc --- /dev/null +++ b/easybuild/easyconfigs/m/MDStress/MDStress-20191228_use_external_voro++_and_EB_lapack.patch @@ -0,0 +1,80 @@ +use external EB Voro++ and flexi/openblas as needed + +Åke Sandgren, 2024-11-07 +diff -ru mdstress-library.orig/CMakeLists.txt mdstress-library/CMakeLists.txt +--- mdstress-library.orig/CMakeLists.txt 2019-12-28 15:48:10.000000000 +0100 ++++ mdstress-library/CMakeLists.txt 2024-11-07 11:19:48.125912695 +0100 +@@ -1,4 +1,5 @@ +-cmake_minimum_required(VERSION 2.8) ++cmake_minimum_required(VERSION 3.0) ++project('MDStress') + + enable_language(C) + enable_language(CXX) +@@ -27,42 +28,28 @@ + # COMMAND tar xaf voro++-0.4.6.tar.gz + # WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/contrib) + #endif() +-FILE(GLOB VORO_SOURCES_HH include/voro++/*.hh) +-FILE(GLOB VORO_SOURCES_CC contrib/voro++/src/*.cc) +-#FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/voro++) +-#FILE(COPY ${VORO_SOURCES_HH} DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/include/voro++) +-LIST(REMOVE_ITEM VORO_SOURCES_CC ${CMAKE_CURRENT_SOURCE_DIR}/contrib/voro++/src/voro++.cc) +-LIST(REMOVE_ITEM VORO_SOURCES_CC ${CMAKE_CURRENT_SOURCE_DIR}/contrib/voro++/src/v_base_wl.cc) ++#FILE(GLOB VORO_SOURCES_HH include/voro++/*.hh) ++#FILE(GLOB VORO_SOURCES_CC contrib/voro++/src/*.cc) ++##FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/voro++) ++##FILE(COPY ${VORO_SOURCES_HH} DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/include/voro++) ++#LIST(REMOVE_ITEM VORO_SOURCES_CC ${CMAKE_CURRENT_SOURCE_DIR}/contrib/voro++/src/voro++.cc) ++#LIST(REMOVE_ITEM VORO_SOURCES_CC ${CMAKE_CURRENT_SOURCE_DIR}/contrib/voro++/src/v_base_wl.cc) + +-SET(MDSTRESS_SOURCES ${MDSTRESS_SOURCES_CPP} ${MDSTRESS_SOURCES_H} ${VORO_SOURCES_CC} ${VORO_SOURCES_HH}) ++SET(MDSTRESS_SOURCES ${MDSTRESS_SOURCES_CPP} ${MDSTRESS_SOURCES_H}) + + INCLUDE_DIRECTORIES(include/mdstress) +-INCLUDE_DIRECTORIES(include/voro++) ++#INCLUDE_DIRECTORIES(include/voro++) + + # attempt to find LAPACK library +-FIND_LIBRARY(LAPACK_LIBRARY_SYS NAMES lapack liblapack HINTS /usr/lib REQUIRED) +-if (NOT LAPACK_LIBRARY_SYS) +- UNSET(LAPACK_LIBRARY_SYS-NOTFOUND) +- UNSET(LAPACK_LIBRARY_SYS) +- # check to see if we need to download LAPACK +- SET(LAPACK_URL http://www.netlib.org/lapack/lapack-3.8.0.tar.gz) +- SET(LAPACK_DOWNLOAD_PATH ${CMAKE_CURRENT_SOURCE_DIR}/contrib/lapack-3.8.0.tar.gz) +- FILE(DOWNLOAD ${LAPACK_URL} ${LAPACK_DOWNLOAD_PATH}) +- EXECUTE_PROCESS( +- COMMAND tar xaf lapack-3.8.0.tar.gz +- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/contrib) +- ADD_SUBDIRECTORY(contrib/lapack-3.8.0) +-else() +- FIND_LIBRARY(LAPACK_LIBRARY NAMES lapack liblapack HINTS /usr/lib REQUIRED) +-endif() ++FIND_LIBRARY(LAPACK_LIBRARY NAMES flexiblas openblas lapack liblapack REQUIRED) + + ADD_LIBRARY(mdstress SHARED ${MDSTRESS_SOURCES}) +-TARGET_LINK_LIBRARIES(mdstress ${LAPACK_LIBRARY} ${PYTHON_LIBRARIES}) ++TARGET_LINK_LIBRARIES(mdstress ${LAPACK_LIBRARY} ${PYTHON_LIBRARIES} voro++) + +-INSTALL(TARGETS mdstress RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib/static) ++INSTALL(TARGETS mdstress RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib) + + INSTALL(FILES ${MDSTRESS_SOURCES_H} DESTINATION include/mdstress) +-INSTALL(FILES ${VORO_SOURCES_HH} DESTINATION include/voro++) ++#INSTALL(FILES ${VORO_SOURCES_HH} DESTINATION include/voro++) + + # only process python bindings if requested + if(MDS_BOOSTPYTHON) +diff -ru mdstress-library.orig/src/mds_stressgrid.cpp mdstress-library/src/mds_stressgrid.cpp +--- mdstress-library.orig/src/mds_stressgrid.cpp 2019-12-28 15:48:10.000000000 +0100 ++++ mdstress-library/src/mds_stressgrid.cpp 2024-11-07 09:08:35.761694010 +0100 +@@ -21,7 +21,7 @@ + =========================================================================*/ + + #include "mds_stressgrid.h" +-#include "voro++.hh" ++#include "voro++/voro++.hh" + + using namespace mds; + diff --git a/easybuild/easyconfigs/m/multicharge/multicharge-0.3.0-gomkl-2023b.eb b/easybuild/easyconfigs/m/multicharge/multicharge-0.3.0-gomkl-2023b.eb new file mode 100644 index 00000000000..298e08395e3 --- /dev/null +++ b/easybuild/easyconfigs/m/multicharge/multicharge-0.3.0-gomkl-2023b.eb @@ -0,0 +1,39 @@ +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeNinja' + +name = 'multicharge' +version = '0.3.0' + +homepage = 'https://github.com/grimme-lab/multicharge' +description = """Electronegativity equilibration model for atomic partial charges.""" + +toolchain = {'name': 'gomkl', 'version': '2023b'} + +github_account = 'grimme-lab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['2fcc1f80871f404f005e9db458ffaec95bb28a19516a0245278cd3175b63a6b2'] + +builddependencies = [ + ('CMake', '3.27.6'), + ('Ninja', '1.11.1'), + ('binutils', '2.40'), +] + +dependencies = [ + ('mctc-lib', '0.3.1'), + ('mstore', '0.3.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/n/NCCL/NCCL-2.22.3-GCCcore-13.3.0-CUDA-12.6.0.eb b/easybuild/easyconfigs/n/NCCL/NCCL-2.22.3-GCCcore-13.3.0-CUDA-12.6.0.eb new file mode 100644 index 00000000000..0534e538faa --- /dev/null +++ b/easybuild/easyconfigs/n/NCCL/NCCL-2.22.3-GCCcore-13.3.0-CUDA-12.6.0.eb @@ -0,0 +1,26 @@ +name = 'NCCL' +version = '2.22.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://developer.nvidia.com/nccl' +description = """The NVIDIA Collective Communications Library (NCCL) implements multi-GPU and multi-node collective +communication primitives that are performance optimized for NVIDIA GPUs.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +github_account = 'NVIDIA' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s-1.tar.gz'] +checksums = ['45151629a9494460e73375281e8b0fe379141528879301899ece9b776faca024'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [ + ('CUDA', '12.6.0', '', SYSTEM), + ('UCX-CUDA', '1.16.0', 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'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/NECI/NECI-20230620-foss-2023a.eb b/easybuild/easyconfigs/n/NECI/NECI-20230620-foss-2023a.eb new file mode 100644 index 00000000000..09dce5c1aab --- /dev/null +++ b/easybuild/easyconfigs/n/NECI/NECI-20230620-foss-2023a.eb @@ -0,0 +1,52 @@ +easyblock = 'CMakeMakeCp' +name = 'NECI' +version = '20230620' +_commit = '558e88c5ae6c30d0505a9badbc69111be0866ba1' + +homepage = 'https://github.com/ghb24/NECI_STABLE' +description = """Standalone NECI codebase designed for FCIQMC and other stochastic quantum +chemistry methods.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +toolchainopts = {'usempi': True} + +sources = [{ + 'git_config': { + 'url': 'https://github.com/ghb24', + 'repo_name': 'NECI_STABLE', + 'recursive': True, + 'commit': _commit, + }, + 'filename': SOURCE_TAR_GZ, +}] +patches = ['NECI-20230620_segfault.patch'] +checksums = [ + None, + 'f0b5f62e115a1e07d6b90bc66ee9957a5f5d686bef65beba9c2be4bd8f29f0e4', +] + +builddependencies = [ + ('CMake', '3.26.3'), + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), +] + +dependencies = [ + ('HDF5', '1.14.0'), +] + +# enable support for HDF5 +configopts = "-DENABLE_HDF5=ON" + +test_cmd = 'ctest' +runtest = '-j' + +files_to_copy = ['bin', 'lib', (['modules'], 'include')] + +_binaries = ['dneci', 'kdneci', 'kmneci', 'kneci', 'mneci', 'neci'] +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _binaries] + ['lib/lib%s.a' % x for x in _binaries], + 'dirs': ['include'], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/n/NECI/NECI-20230620_segfault.patch b/easybuild/easyconfigs/n/NECI/NECI-20230620_segfault.patch new file mode 100644 index 00000000000..0a63b605dd3 --- /dev/null +++ b/easybuild/easyconfigs/n/NECI/NECI-20230620_segfault.patch @@ -0,0 +1,21 @@ +Fixes SEGFAULT error in tests. +See https://github.com/ghb24/NECI_STABLE/issues/18 +Author: Petr Král (INUITS) +--- unit_tests/back_spawn_excit_gen/test_back_spawn_excit_gen.F90.orig 2023-06-20 10:15:17.000000000 +0200 ++++ unit_tests/back_spawn_excit_gen/test_back_spawn_excit_gen.F90 2024-11-21 14:58:46.602604509 +0100 +@@ -64,6 +64,7 @@ + nmaxy = 2 + nmaxz = 2 + allocate(KPointToBasisFn(-nmaxx:nmaxx, -nmaxy:nmaxy, -nmaxz:nmaxz, 2)) ++ KPointToBasisFn = -1 + tOrbECutoff = .false. + + allocate(projedet(nel,1)); projedet(:,1) = [1,2] +@@ -403,6 +404,7 @@ + tOrbECutoff = .false. + niftot = 1 + allocate(KPointToBasisFn(-nmaxx:nmaxx, -nmaxy:nmaxy, -nmaxz:nmaxz, 2)) ++ KPointToBasisFn = -1 + + t_back_spawn_flex = .true. + occ_virt_level = 0 diff --git a/easybuild/easyconfigs/n/NVHPC/NVHPC-24.11-CUDA-12.6.0.eb b/easybuild/easyconfigs/n/NVHPC/NVHPC-24.11-CUDA-12.6.0.eb new file mode 100644 index 00000000000..546b28e7147 --- /dev/null +++ b/easybuild/easyconfigs/n/NVHPC/NVHPC-24.11-CUDA-12.6.0.eb @@ -0,0 +1,73 @@ +name = 'NVHPC' +version = '24.11' +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_2024_%%(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': + 'f2f64e5dec5e90dad5e12a31a992172b0aa19abf872ef1c54a1a437c7008eefb', + local_tarball_tmpl % 'x86_64': + '0c27d66ed0e2d3007d30ac904922a9abf96475197dc0f4dcc6316d235a1dc0c3', + } +] + +local_gccver = '13.3.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.42', '', ('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.18', '', ('GCCcore', local_gccver)), + ('CUDA', '12.6.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/netCDF-C++4/netCDF-C++4-4.3.1-gompi-2024a.eb b/easybuild/easyconfigs/n/netCDF-C++4/netCDF-C++4-4.3.1-gompi-2024a.eb new file mode 100644 index 00000000000..909bd06a674 --- /dev/null +++ b/easybuild/easyconfigs/n/netCDF-C++4/netCDF-C++4-4.3.1-gompi-2024a.eb @@ -0,0 +1,28 @@ +easyblock = 'ConfigureMake' + +name = 'netCDF-C++4' +version = '4.3.1' + +homepage = 'https://www.unidata.ucar.edu/software/netcdf/' +description = """NetCDF (network Common Data Form) is a set of software libraries + and machine-independent data formats that support the creation, access, and sharing of array-oriented + scientific data.""" + +toolchain = {'name': 'gompi', 'version': '2024a'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/Unidata/netcdf-cxx4/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e3fe3d2ec06c1c2772555bf1208d220aab5fee186d04bd265219b0bc7a978edc'] + +dependencies = [ + ('netCDF', '4.9.2'), +] + + +sanity_check_paths = { + 'files': ['include/netcdf', 'lib/libnetcdf_c++4.a', 'lib/libnetcdf_c++4.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.6.1-gompi-2024a.eb b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.6.1-gompi-2024a.eb new file mode 100644 index 00000000000..2bc6e207794 --- /dev/null +++ b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.6.1-gompi-2024a.eb @@ -0,0 +1,28 @@ +name = 'netCDF-Fortran' +version = '4.6.1' + +homepage = 'https://www.unidata.ucar.edu/software/netcdf/' +description = """NetCDF (network Common Data Form) is a set of software libraries + and machine-independent data formats that support the creation, access, and sharing of array-oriented + scientific data.""" + +toolchain = {'name': 'gompi', 'version': '2024a'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/Unidata/%(namelower)s/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['40b534e0c81b853081c67ccde095367bd8a5eead2ee883431331674e7aa9509f'] + +builddependencies = [ + ('M4', '1.4.19'), +] +dependencies = [ + ('netCDF', '4.9.2'), + ('bzip2', '1.0.8'), +] + +# (too) parallel build fails, but single-core build is fairly quick anyway (~1min) +parallel = 1 + + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/netCDF/netCDF-4.9.2-gompi-2024a.eb b/easybuild/easyconfigs/n/netCDF/netCDF-4.9.2-gompi-2024a.eb new file mode 100644 index 00000000000..95e48775eeb --- /dev/null +++ b/easybuild/easyconfigs/n/netCDF/netCDF-4.9.2-gompi-2024a.eb @@ -0,0 +1,54 @@ +name = 'netCDF' +version = '4.9.2' + +homepage = 'https://www.unidata.ucar.edu/software/netcdf/' +description = """NetCDF (network Common Data Form) is a set of software libraries + and machine-independent data formats that support the creation, access, and sharing of array-oriented + scientific data.""" + +toolchain = {'name': 'gompi', 'version': '2024a'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/Unidata/%(namelower)s-c/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['%(name)s-%(version_major_minor)s.0_skip-nasa-test.patch'] +checksums = [ + {'v4.9.2.tar.gz': 'bc104d101278c68b303359b3dc4192f81592ae8640f1aee486921138f7f88cb7'}, + {'%(name)s-%(version_major_minor)s.0_skip-nasa-test.patch': + '19d99e03c048b037dc01f03f5b8ddc910ebaceb076d0f050540d348f26dfcd2a'}, +] + +builddependencies = [ + ('Autotools', '20231222'), + ('CMake', '3.29.3'), + ('Doxygen', '1.11.0'), +] +dependencies = [ + ('HDF5', '1.14.5'), + ('cURL', '8.7.1'), + ('Szip', '2.1.1'), + ('zstd', '1.5.6'), + ('bzip2', '1.0.8'), + ('libxml2', '2.12.7'), +] + +# disable Szip, zlib parallel I/O tests, since these can hang on some systems, e.g. generoso +# see: https://github.com/easybuilders/easybuild-easyconfigs/pull/16834 +# and https://github.com/easybuilders/easybuild-easyconfigs/pull/17107#issuecomment-1432947172 +preconfigopts = ("sed -i -e 's|@MPIEXEC@ -n 4 ./tst_parallel5|echo \"skipped by EasyBuild\"|g'" + " -e 's|@MPIEXEC@ -n 4 ./tst_parallel_zlib|echo \"skipped by EasyBuild\"|g'" + " -e 's|@MPIEXEC@ -n 4 ./tst_parallel_compress|echo \"skipped by EasyBuild\"|g'" + " %(builddir)s/%(namelower)s-c-%(version)s/nc_test4/run_par_test.sh.in &&") + +# make sure both static and shared libs are built +# and disable "remote" tests that access a unreliable external test server over internet +configopts = [ + "-DENABLE_DAP_REMOTE_TESTS=OFF -DBUILD_SHARED_LIBS=OFF", + "-DENABLE_DAP_REMOTE_TESTS=OFF -DBUILD_SHARED_LIBS=ON", +] + +# some tests try to start 16 MPI ranks, so we need to allow oversubscription to avoid failing tests +pretestopts = "PRTE_MCA_rmaps_default_mapping_policy=:oversubscribe " +runtest = 'test' + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2-foss-2024a.eb b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2-foss-2024a.eb new file mode 100644 index 00000000000..912e23a55b7 --- /dev/null +++ b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2-foss-2024a.eb @@ -0,0 +1,58 @@ +easyblock = 'PythonBundle' + +name = 'netcdf4-python' +version = '1.7.1.post2' + + +homepage = 'https://unidata.github.io/netcdf4-python/' +description = "Python/numpy interface to netCDF." + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'usempi': True} + +builddependencies = [ + ('Cython', '3.0.10'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('SciPy-bundle', '2024.05'), + ('netCDF', '4.9.2'), + ('cURL', '8.7.1'), + ('mpi4py', '4.0.1'), +] + +fix_python_shebang_for = ['bin/*'] +sanity_pip_check = True +use_pip = True + +exts_list = [ + ('cftime', '1.6.4', { + 'checksums': ['e325406193758a7ed67308deb52e727782a19e384e183378e7ff62098be0aedc'], + }), + (name, version, { + 'patches': [ + 'netcdf4-python-1.7.1.post2_relax_tolerance_compression_test.patch', + ], + 'source_tmpl': 'netcdf4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/n/netCDF4'], + 'checksums': [ + {'netcdf4-1.7.1.post2.tar.gz': '37d557e36654889d7020192bfb56f9d5f93894cb32997eb837ae586c538fd7b6'}, + {'netcdf4-python-1.7.1.post2_relax_tolerance_compression_test.patch': + '7faa7e839ad1e816ffd0153e4b76b43ebce3e14d35f0534f812168dfaa78316c'}, + ], + }), +] + +sanity_check_paths = { + 'files': ['bin/nc3tonc4', 'bin/nc4tonc3', 'bin/ncinfo'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "nc4tonc3 --help", + "nc3tonc4 --help", + "ncinfo --help", +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2_relax_tolerance_compression_test.patch b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2_relax_tolerance_compression_test.patch new file mode 100644 index 00000000000..be4deb77f96 --- /dev/null +++ b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.7.1.post2_relax_tolerance_compression_test.patch @@ -0,0 +1,15 @@ +# Relax tolerance in the compression_szip test to avoid fails on some systems. +# author: maxim-masterov (SURF) +# +diff -Nru netcdf4-1.7.1.post2.orig/test/test_compression_szip.py netcdf4-1.7.1.post2/test/test_compression_szip.py +--- netcdf4-1.7.1.post2.orig/test/test_compression_szip.py 2024-10-07 16:01:21.276893761 +0200 ++++ netcdf4-1.7.1.post2/test/test_compression_szip.py 2024-10-07 16:27:47.424436617 +0200 +@@ -35,7 +35,7 @@ + assert_almost_equal(datarr,f.variables['data'][:]) + assert f.variables['data'].filters() ==\ + {'zlib':False,'szip':False,'zstd':False,'bzip2':False,'blosc':False,'shuffle':False,'complevel':0,'fletcher32':False} +- assert_almost_equal(datarr,f.variables['data_szip'][:]) ++ assert_almost_equal(datarr,f.variables['data_szip'][:], 6) + dtest = {'zlib': False, 'szip': {'coding': 'ec', 'pixels_per_block': 32}, 'zstd': False, 'bzip2': False, 'blosc': False, 'shuffle': False, 'complevel': 0, 'fletcher32': False} + assert f.variables['data_szip'].filters() == dtest + f.close() diff --git a/easybuild/easyconfigs/o/ORCA/ORCA-6.0.1-gompi-2023a-avx2.eb b/easybuild/easyconfigs/o/ORCA/ORCA-6.0.1-gompi-2023a-avx2.eb new file mode 100644 index 00000000000..bc34fff4fe8 --- /dev/null +++ b/easybuild/easyconfigs/o/ORCA/ORCA-6.0.1-gompi-2023a-avx2.eb @@ -0,0 +1,24 @@ +name = 'ORCA' +version = '6.0.1' +versionsuffix = '-avx2' + +homepage = 'https://orcaforum.kofo.mpg.de' +description = """ +ORCA is a flexible, efficient and easy-to-use general purpose tool for quantum +chemistry with specific emphasis on spectroscopic properties of open-shell +molecules. It features a wide variety of standard quantum chemical methods +ranging from semiempirical methods to DFT to single- and multireference +correlated ab initio methods. It can also treat environmental and relativistic +effects.""" + +toolchain = {'name': 'gompi', 'version': '2023a'} + +download_instructions = "Shared build of ORCA: download from https://orcaforum.kofo.mpg.de" +# mostly dynamically linked (SCALAPACK, OpenBLAS are still embedded) +sources = ['%%(namelower)s_%s_linux_%%(orcaarch)s_shared_openmpi416_avx2.tar.xz' % version.replace('.', '_')] +checksums = [ + # orca_6_0_1_linux_x86-64_shared_openmpi416_avx2.tar.xz + 'f31f98256a0c6727b6ddfe50aa3ac64c45549981138d670a57e90114b4b9c9d2', +] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/o/ORCA/ORCA-6.0.1-gompi-2023b-avx2.eb b/easybuild/easyconfigs/o/ORCA/ORCA-6.0.1-gompi-2023b-avx2.eb new file mode 100644 index 00000000000..6194413a4f1 --- /dev/null +++ b/easybuild/easyconfigs/o/ORCA/ORCA-6.0.1-gompi-2023b-avx2.eb @@ -0,0 +1,24 @@ +name = 'ORCA' +version = '6.0.1' +versionsuffix = '-avx2' + +homepage = 'https://orcaforum.kofo.mpg.de' +description = """ +ORCA is a flexible, efficient and easy-to-use general purpose tool for quantum +chemistry with specific emphasis on spectroscopic properties of open-shell +molecules. It features a wide variety of standard quantum chemical methods +ranging from semiempirical methods to DFT to single- and multireference +correlated ab initio methods. It can also treat environmental and relativistic +effects.""" + +toolchain = {'name': 'gompi', 'version': '2023b'} + +download_instructions = "Shared build of ORCA: download from https://orcaforum.kofo.mpg.de" +# mostly dynamically linked (SCALAPACK, OpenBLAS are still embedded) +sources = ['%%(namelower)s_%s_linux_%%(orcaarch)s_shared_openmpi416_avx2.tar.xz' % version.replace('.', '_')] +checksums = [ + # orca_6_0_1_linux_x86-64_shared_openmpi416_avx2.tar.xz + 'f31f98256a0c6727b6ddfe50aa3ac64c45549981138d670a57e90114b4b9c9d2', +] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/o/OpenMM/OpenMM-8.1.2-foss-2023b.eb b/easybuild/easyconfigs/o/OpenMM/OpenMM-8.1.2-foss-2023b.eb new file mode 100644 index 00000000000..7b4e30add53 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMM/OpenMM-8.1.2-foss-2023b.eb @@ -0,0 +1,60 @@ +# 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 = '8.1.2' + +homepage = 'https://openmm.org' +description = "OpenMM is a toolkit for molecular simulation." + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'opt': True} + +source_urls = ['https://github.com/openmm/openmm/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['afc888a4e46486d8d68dac4d403e2b0b28f51b95e52e821e34c38e8b428e040e'] + +builddependencies = [ + ('CMake', '3.27.6'), + ('Doxygen', '1.9.8'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('SWIG', '4.1.1'), +] + +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/OpenMPI/OpenMPI-5.0.3-NVHPC-24.9-CUDA-12.6.0.eb b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-5.0.3-NVHPC-24.9-CUDA-12.6.0.eb new file mode 100644 index 00000000000..e6c772bf64e --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-5.0.3-NVHPC-24.9-CUDA-12.6.0.eb @@ -0,0 +1,63 @@ +name = 'OpenMPI' +version = '5.0.3' + +homepage = 'https://www.open-mpi.org/' +description = """The Open MPI Project is an open source MPI-3 implementation.""" + +toolchain = {'name': 'NVHPC', 'version': '24.9-CUDA-12.6.0'} + +source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] +sources = [SOURCELOWER_TAR_BZ2] +patches = [ + 'OpenMPI-5.0.3_fix_hle_make_errors.patch', + 'OpenMPI-5.0.3_disable_opal_path_nfs_test.patch', + ('OpenMPI-5.0.2_build-with-internal-cuda-header.patch', 1) +] +checksums = [ + {'openmpi-5.0.3.tar.bz2': + '990582f206b3ab32e938aa31bbf07c639368e4405dca196fabe7f0f76eeda90b'}, + {'OpenMPI-5.0.3_fix_hle_make_errors.patch': + '881c907a9f5901d5d6af41cd33dffdcecba4a67a9e5123e602542aea57a80895'}, + {'OpenMPI-5.0.3_disable_opal_path_nfs_test.patch': + '75d4417e35252ea3a19b2792f1b06e9aeb408c253aa4921d77226d57b71dee45'}, + {'OpenMPI-5.0.2_build-with-internal-cuda-header.patch': + 'f52dc470543f35efef10d651dd159c771ae25f8f76a420d20d87abf4dc769ed7'}, +] + +builddependencies = [ + ('pkgconf', '2.2.0'), + ('Perl', '5.38.2'), + ('Autotools', '20231222'), +] + +dependencies = [ + ('zlib', '1.3.1'), + ('hwloc', '2.10.0'), + ('libevent', '2.1.12'), + ('UCX', '1.16.0'), + ('UCX-CUDA', '1.16.0', '-CUDA-%(cudaver)s'), + ('libfabric', '1.21.0'), + ('PMIx', '5.0.2'), + ('PRRTE', '3.0.5'), + ('UCC', '1.3.0'), + ('UCC-CUDA', '1.3.0', '-CUDA-%(cudaver)s'), +] + +# CUDA related patches and custom configure option can be removed if CUDA support isn't wanted. +preconfigopts = 'nvc -Iopal/mca/cuda/include -shared opal/mca/cuda/lib/cuda.c -o opal/mca/cuda/lib/libcuda.so && ' +# Update configure to include changes from the "disable_opal_path_nfs_test" patch +preconfigopts += './autogen.pl --force && ' + +configopts = '--with-cuda=%(start_dir)s/opal/mca/cuda ' +# Required to prevent internal compiler error in opal. +configopts += '--enable-alt-short-float=no ' +# Set PGI compilers manually, as NVHPC compilers are not correctly detected +configopts += 'CC=pgcc CXX=pgc++ FC=pgfortran ' + +# site specific options +# configopts += '--without-psm2 ' +# configopts += '--disable-oshmem ' +# configopts += '--with-gpfs ' +configopts += '--with-slurm ' + +moduleclass = 'mpi' diff --git a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-5.0.3_disable_opal_path_nfs_test.patch b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-5.0.3_disable_opal_path_nfs_test.patch new file mode 100644 index 00000000000..09d9f829f06 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-5.0.3_disable_opal_path_nfs_test.patch @@ -0,0 +1,33 @@ +Disable opal_path_nfs test in OpenMPI 5.0.3 as this test can easily fail on some systems, +when NFS mounts are used. Generally, this test is flaky, which may prevent users +from installing OpenMPI for no apparent reason. + +diff --git a/test/util/Makefile.am b/test/util/Makefile.am +index e5ad472..33d63c4 100644 +--- a/test/util/Makefile.am ++++ b/test/util/Makefile.am +@@ -38,7 +38,6 @@ AM_CPPFLAGS = -I$(top_srcdir)/test/support + + check_PROGRAMS = \ + opal_bit_ops \ +- opal_path_nfs \ + bipartite_graph \ + opal_sha256 + +@@ -80,11 +79,11 @@ opal_bit_ops_LDADD = \ + $(top_builddir)/test/support/libsupport.a + opal_bit_ops_DEPENDENCIES = $(opal_path_nfs_LDADD) + +-opal_path_nfs_SOURCES = opal_path_nfs.c +-opal_path_nfs_LDADD = \ +- $(top_builddir)/opal/lib@OPAL_LIB_NAME@.la \ +- $(top_builddir)/test/support/libsupport.a +-opal_path_nfs_DEPENDENCIES = $(opal_path_nfs_LDADD) ++# opal_path_nfs_SOURCES = opal_path_nfs.c ++# opal_path_nfs_LDADD = \ ++# $(top_builddir)/opal/lib@OPAL_LIB_NAME@.la \ ++# $(top_builddir)/test/support/libsupport.a ++# opal_path_nfs_DEPENDENCIES = $(opal_path_nfs_LDADD) + + #opal_os_path_SOURCES = opal_os_path.c + #opal_os_path_LDADD = \ diff --git a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-5.0.3_fix_hle_make_errors.patch b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-5.0.3_fix_hle_make_errors.patch new file mode 100644 index 00000000000..dc9b0671658 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-5.0.3_fix_hle_make_errors.patch @@ -0,0 +1,25 @@ +On JUWELS, building OpenMPI 5.0.5 with NVHPC 24.9 fails with errors +related to `__ATOMIC_HLE_ACQUIRE` and `__ATOMIC_HLE_RELEASE` not being +defined. Add an additional macro check to let the build succeed. + +--- a/opal/include/opal/sys/gcc_builtin/atomic.h 2024-07-23 01:23:20.567556032 +0200 ++++ a/opal/include/opal/sys/gcc_builtin/atomic.h 2024-10-02 12:19:53.130698758 +0200 +@@ -187,7 +187,7 @@ + * + *********************************************************************/ + +-#if defined(__HLE__) ++#if defined(__HLE__) && defined(__ATOMIC_HLE_ACQUIRE) && defined(__ATOMIC_HLE_RELEASE) + + # include + +@@ -225,7 +225,7 @@ + __ATOMIC_RELEASE | __ATOMIC_HLE_RELEASE); + } + +-#else /* #if defined(__HLE__) */ ++#else /* #if defined(__HLE__) && defined(__ATOMIC_HLE_ACQUIRE) && defined(__ATOMIC_HLE_RELEASE) */ + + #include "opal/sys/atomic_impl_spinlock.h" + + diff --git a/easybuild/easyconfigs/p/POT/POT-0.9.3-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/p/POT/POT-0.9.3-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..1eddcba72f5 --- /dev/null +++ b/easybuild/easyconfigs/p/POT/POT-0.9.3-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonBundle' + +name = 'POT' +version = '0.9.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/rflamary/POT' +description = """POT (Python Optimal Transport) is a Python library provide several solvers for optimization problems + related to Optimal Transport for signal, image processing and machine learning.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('matplotlib', '3.7.2'), + ('scikit-learn', '1.3.1'), + ('CUDA', '12.1.1', '', SYSTEM), + ('PyTorch', '2.1.2', versionsuffix), + ('jax', '0.4.25', versionsuffix), + ('CVXOPT', '1.3.2'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('autograd', '1.7.0', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['49680300f842f3a8722b060ac0d3ed7aca071d1ad4d3d38c9fdadafdcc73c30b'], + }), + ('versioneer', '0.29', { + 'source_tmpl': SOURCE_PY3_WHL, + 'checksums': ['0f1a137bb5d6811e96a79bb0486798aeae9b9c6efc24b389659cebb0ee396cb9'], + }), + ('pymanopt', '2.2.1', { + # Requirements forbid some versions of `scipy` which are known to have a bug but we have fixed it. + # see `scipy-1.11.1_vectorization_error.patch` + 'preinstallopts': """sed -i 's/"scipy>=1.0[^"]*"/"scipy>=1.0"/g' pyproject.toml && """, + 'checksums': ['c784929a436eb06d73371b53ae5db3cdc19c5e60280f8131553bc805cbf7a1da'], + }), + (name, version, { + 'modulename': 'ot', + 'checksums': ['eecf2394390a73472e727ef75f7c801fc47509039f00c40f8fc64fdeea617c86'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..85f8b20972c --- /dev/null +++ b/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5-GCCcore-13.3.0.eb @@ -0,0 +1,44 @@ +# 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 = 'CMakeMakeCp' + +name = 'PRSice' +version = '2.3.5' + +homepage = 'https://choishingwan.github.io/PRSice/' +description = """PRSice (pronounced 'precise') is a Polygenic Risk +Score software for calculating, applying, evaluating and +plotting the results of polygenic risk scores (PRS) analyses.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/choishingwan/%(name)s/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['PRSice-2.3.5_remove_sysctl.patch'] +checksums = [ + '0a7e649ddebe4e969cd8400c5ad977a7b900be4f5c920a84483cb8930367354d', # 2.3.5.tar.gz + 'ab8286e8a0700ea163f552de66458e409c396e06b57c9adfff3b7f63083f7798', # PRSice-2.3.5_remove_sysctl.patch +] + +builddependencies = [ + ('CMake', '3.29.3'), + ('binutils', '2.42'), + ('Eigen', '3.4.0'), +] + +files_to_copy = [ + (['bin/%(name)s'], 'bin'), + 'README.md', + 'LICENSE', +] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = ['%(name)s --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5_remove_sysctl.patch b/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5_remove_sysctl.patch new file mode 100644 index 00000000000..04a71e26a8b --- /dev/null +++ b/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5_remove_sysctl.patch @@ -0,0 +1,194 @@ +# What: sysctl.h is removed in glibc v2.32. This patch is based on the following commits +# from https://github.com/choishingwan/PRSice: +# f285b243856b857a461d9a2b27e1f2f0ac25216e +# 53641c11750a7e0bdd06a925fbf28c1e3978ee72 +# Also see issue https://github.com/choishingwan/PRSice/issues/338 and PR https://github.com/choishingwan/PRSice/pull/243 +# Author: maxim-masterov (SURF) + +diff -Nru PRSice-2.3.5.orig/inc/misc.hpp PRSice-2.3.5/inc/misc.hpp +--- PRSice-2.3.5.orig/inc/misc.hpp 2024-10-23 18:13:58.539539000 +0200 ++++ PRSice-2.3.5/inc/misc.hpp 2024-10-23 18:14:29.383991502 +0200 +@@ -38,7 +38,6 @@ + #include + #include + #include +-#include + #elif defined _WIN32 + #include + // psapi must go after windows, or will generate error +@@ -48,7 +47,6 @@ + #include "stdlib.h" + #include "string.h" + #include +-#include + #include + #include + #endif +@@ -86,9 +84,6 @@ + #include + #include + #include +-#if defined(BSD) +-#include +-#endif + + #else + #error "Unable to define getMemorySize( ) for an unknown OS." +@@ -170,73 +165,7 @@ + // TODO: Delete this, doesn't seems to give robust answer + inline size_t current_ram_usage() { return 0; } + // TODO: Delete this, doesn't seems to give robust answer +-inline size_t total_ram_available() +-{ +-#ifdef __APPLE__ +- int32_t mib[2]; +- size_t sztmp; +-#endif +- unsigned char* bigstack_ua = nullptr; // ua = unaligned +- int64_t llxx; +- intptr_t default_alloc_mb; +- intptr_t malloc_size_mb = 0; +-#ifdef __APPLE__ +- mib[0] = CTL_HW; +- mib[1] = HW_MEMSIZE; +- llxx = 0; +- +- sztmp = sizeof(int64_t); +- sysctl(mib, 2, &llxx, &sztmp, nullptr, 0); +- llxx /= 1048576; +-#else +-#ifdef _WIN32 +- MEMORYSTATUSEX memstatus; +- memstatus.dwLength = sizeof(memstatus); +- GlobalMemoryStatusEx(&memstatus); +- llxx = memstatus.ullTotalPhys / 1048576; +-#else +- llxx = ((uint64_t) sysconf(_SC_PHYS_PAGES)) +- * ((size_t) sysconf(_SC_PAGESIZE)) / 1048576; +-#endif +-#endif +- if (!llxx) { default_alloc_mb = BIGSTACK_DEFAULT_MB; } +- else if (llxx < (BIGSTACK_MIN_MB * 2)) +- { +- default_alloc_mb = BIGSTACK_MIN_MB; +- } +- else +- { +- default_alloc_mb = llxx / 2; +- } +- if (!malloc_size_mb) { malloc_size_mb = default_alloc_mb; } +- else if (malloc_size_mb < BIGSTACK_MIN_MB) +- { +- malloc_size_mb = BIGSTACK_MIN_MB; +- } +- std::string message = ""; +-#ifndef __LP64__ +- if (malloc_size_mb > 2047) { malloc_size_mb = 2047; } +-#endif +- bigstack_ua = +- (unsigned char*) malloc(malloc_size_mb * 1048576 * sizeof(char)); +- // if fail, return nullptr which will then get into the while loop +- while (!bigstack_ua) +- { +- malloc_size_mb = (malloc_size_mb * 3) / 4; +- if (malloc_size_mb < BIGSTACK_MIN_MB) +- { malloc_size_mb = BIGSTACK_MIN_MB; } +- bigstack_ua = +- (unsigned char*) malloc(malloc_size_mb * 1048576 * sizeof(char)); +- if (bigstack_ua) {} +- else if (malloc_size_mb == BIGSTACK_MIN_MB) +- { +- throw std::runtime_error("Failed to allocate required memory"); +- } +- } +- free(bigstack_ua); +- bigstack_ua = nullptr; +- return malloc_size_mb * 1024 * 1024; +-} ++ + // function from John D.Cook + // https://www.johndcook.com/blog/standard_deviation/ + class RunningStat +@@ -1398,82 +1327,5 @@ + return (size_t) 0L; /* Unsupported. */ + #endif + } +- +- +-/** +- * Returns the size of physical memory (RAM) in bytes. +- */ +-inline size_t getMemorySize() +-{ +-#if defined(_WIN32) && (defined(__CYGWIN__) || defined(__CYGWIN32__)) +- /* Cygwin under Windows. ------------------------------------ */ +- /* New 64-bit MEMORYSTATUSEX isn't available. Use old 32.bit */ +- MEMORYSTATUS status; +- status.dwLength = sizeof(status); +- GlobalMemoryStatus(&status); +- return (size_t) status.dwTotalPhys; +- +-#elif defined(_WIN32) +- /* Windows. ------------------------------------------------- */ +- /* Use new 64-bit MEMORYSTATUSEX, not old 32-bit MEMORYSTATUS */ +- MEMORYSTATUSEX status; +- status.dwLength = sizeof(status); +- GlobalMemoryStatusEx(&status); +- return (size_t) status.ullTotalPhys; +- +-#elif defined(__unix__) || defined(__unix) || defined(unix) \ +- || (defined(__APPLE__) && defined(__MACH__)) +- /* UNIX variants. ------------------------------------------- */ +- /* Prefer sysctl() over sysconf() except sysctl() HW_REALMEM and HW_PHYSMEM +- */ +- +-#if defined(CTL_HW) && (defined(HW_MEMSIZE) || defined(HW_PHYSMEM64)) +- int mib[2]; +- mib[0] = CTL_HW; +-#if defined(HW_MEMSIZE) +- mib[1] = HW_MEMSIZE; /* OSX. --------------------- */ +-#elif defined(HW_PHYSMEM64) +- mib[1] = HW_PHYSMEM64; /* NetBSD, OpenBSD. --------- */ +-#endif +- int64_t size = 0; /* 64-bit */ +- size_t len = sizeof(size); +- if (sysctl(mib, 2, &size, &len, NULL, 0) == 0) return (size_t) size; +- return 0L; /* Failed? */ +- +-#elif defined(_SC_AIX_REALMEM) +- /* AIX. ----------------------------------------------------- */ +- return (size_t) sysconf(_SC_AIX_REALMEM) * (size_t) 1024L; +- +-#elif defined(_SC_PHYS_PAGES) && defined(_SC_PAGESIZE) +- /* FreeBSD, Linux, OpenBSD, and Solaris. -------------------- */ +- return (size_t) sysconf(_SC_PHYS_PAGES) * (size_t) sysconf(_SC_PAGESIZE); +- +-#elif defined(_SC_PHYS_PAGES) && defined(_SC_PAGE_SIZE) +- /* Legacy. -------------------------------------------------- */ +- return (size_t) sysconf(_SC_PHYS_PAGES) * (size_t) sysconf(_SC_PAGE_SIZE); +- +-#elif defined(CTL_HW) && (defined(HW_PHYSMEM) || defined(HW_REALMEM)) +- /* DragonFly BSD, FreeBSD, NetBSD, OpenBSD, and OSX. -------- */ +- int mib[2]; +- mib[0] = CTL_HW; +-#if defined(HW_REALMEM) +- mib[1] = HW_REALMEM; /* FreeBSD. ----------------- */ +-#elif defined(HW_PYSMEM) +- mib[1] = HW_PHYSMEM; /* Others. ------------------ */ +-#endif +- unsigned int size = 0; /* 32-bit */ +- size_t len = sizeof(size); +- if (sysctl(mib, 2, &size, &len, NULL, 0) == 0) return (size_t) size; +- return 0L; /* Failed? */ +-#endif /* sysctl and sysconf variants */ +- +-#else +- return 0L; /* Unknown OS. */ +-#endif + } + +-inline unsigned long long remain_memory(const double& adjFactor = 0.8) +-{ +- return (misc::getMemorySize() * adjFactor - getCurrentRSS()); +-} +-} diff --git a/easybuild/easyconfigs/p/ParaView/ParaView-5.11.1-foss-2022b-CUDA-12.2.0.eb b/easybuild/easyconfigs/p/ParaView/ParaView-5.11.1-foss-2022b-CUDA-12.2.0.eb index 8f312f89318..340952c3338 100644 --- a/easybuild/easyconfigs/p/ParaView/ParaView-5.11.1-foss-2022b-CUDA-12.2.0.eb +++ b/easybuild/easyconfigs/p/ParaView/ParaView-5.11.1-foss-2022b-CUDA-12.2.0.eb @@ -44,7 +44,7 @@ dependencies = [ _copts = [ # Basic configuration - '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON' + '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON', '-DPARAVIEW_BUILD_SHARED_LIBS=ON', '-DPARAVIEW_USE_MPI=ON', '-DPARAVIEW_ENABLE_FFMPEG=ON', diff --git a/easybuild/easyconfigs/p/Paraver/Paraver-4.11.4-GCC-12.3.0.eb b/easybuild/easyconfigs/p/Paraver/Paraver-4.11.4-GCC-12.3.0.eb new file mode 100644 index 00000000000..72f3e310448 --- /dev/null +++ b/easybuild/easyconfigs/p/Paraver/Paraver-4.11.4-GCC-12.3.0.eb @@ -0,0 +1,21 @@ +name = 'Paraver' +version = '4.11.4' + +homepage = 'https://tools.bsc.es/paraver' +description = """A very powerful performance visualization and analysis tool based on + traces that can be used to analyse any information that is expressed on its input trace format. + Traces for parallel MPI, OpenMP and other programs can be genereated with Extrae.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://ftp.tools.bsc.es/wxparaver/'] +sources = ['wxparaver-%(version)s-src.tar.bz2'] +checksums = ['8f65fbeacaef003b544ecc0244a4ed9a99e9521cdd027889106fbce0b052fd8d'] + +dependencies = [ + ('zlib', '1.2.13'), + ('Boost', '1.82.0'), + ('wxWidgets', '3.2.2.1'), +] + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/p/PnetCDF/PnetCDF-1.13.0-gompi-2024a.eb b/easybuild/easyconfigs/p/PnetCDF/PnetCDF-1.13.0-gompi-2024a.eb new file mode 100644 index 00000000000..b586cfd0da4 --- /dev/null +++ b/easybuild/easyconfigs/p/PnetCDF/PnetCDF-1.13.0-gompi-2024a.eb @@ -0,0 +1,35 @@ +easyblock = 'ConfigureMake' + +name = 'PnetCDF' +version = '1.13.0' + +homepage = 'https://parallel-netcdf.github.io/' +description = "Parallel netCDF: A Parallel I/O Library for NetCDF File Access" + +toolchain = {'name': 'gompi', 'version': '2024a'} + +source_urls = ['https://parallel-netcdf.github.io/Release'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['aba0f1c77a51990ba359d0f6388569ff77e530ee574e40592a1e206ed9b2c491'] + +builddependencies = [ + ('Autotools', '20231222'), + ('Perl', '5.38.2'), +] + +preconfigopts = "autoreconf -f -i && " +configopts = [ + '', + '--enable-shared', +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['ncmpidiff', 'ncmpidump', 'ncmpigen', 'ncoffsets', + 'ncvalidator', 'pnetcdf-config', 'pnetcdf_version']] + + ['lib/lib%(namelower)s.a', 'lib/lib%%(namelower)s.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +modextrapaths = {'PNETCDF': ''} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/p/PyBioLib/PyBioLib-1.1.2250-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/PyBioLib/PyBioLib-1.1.2250-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..02c4c54ce07 --- /dev/null +++ b/easybuild/easyconfigs/p/PyBioLib/PyBioLib-1.1.2250-GCCcore-12.3.0.eb @@ -0,0 +1,54 @@ +easyblock = "PythonBundle" + +name = 'PyBioLib' +version = '1.1.2250' + +homepage = 'https://biolib.com/' +description = """PyBioLib is a Python package for running BioLib applications from Python +scripts and the command line. +BioLib is a library of biological data science applications. Applications on +BioLib range from small bioinformatics utilities to state-of-the-art machine +learning algorithms for predicting characteristics of biological molecules.""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('poetry', '1.5.1'), +] + +dependencies = [ + ('Python', '3.11.3'), + ('Python-bundle-PyPI', '2023.06'), + ('Flask', '2.3.3'), + ('PyYAML', '6.0'), +] + +use_pip = True + +exts_list = [ + ('websocket_client', '1.8.0', { + 'modulename': 'websocket', + 'checksums': ['3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da'], + }), + ('docker', '7.1.0', { + 'checksums': ['ad8c70e6e3f8926cb8a92619b832b4ea5299e2831c14284663184e200546fa6c'], + }), + ('PyJWT', '2.9.0', { + 'modulename': 'jwt', + 'source_tmpl': SOURCELOWER_TAR_GZ, + 'checksums': ['7e1e5b56cc735432a7369cbfa0efe50fa113ebecdc04ae6922deba8b84582d0c'], + }), + ('gunicorn', '23.0.0', { + 'checksums': ['f014447a0101dc57e294f6c18ca6b40227a4c90e9bdb586042628030cba004ec'], + }), + ('pybiolib', version, { + 'modulename': 'biolib', + 'preinstallopts': "sed -i 's/< 8.1.0/< 8.2.0/' pyproject.toml &", + 'checksums': ['1a0fb4a0256bfa8345b881ac9697cf94a50bcab2caa9ad063689dfc0035fe5a2'], + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/PyRosetta/PyRosetta-4.release-387-gompi-2023a.eb b/easybuild/easyconfigs/p/PyRosetta/PyRosetta-4.release-387-gompi-2023a.eb new file mode 100644 index 00000000000..c37102d5a81 --- /dev/null +++ b/easybuild/easyconfigs/p/PyRosetta/PyRosetta-4.release-387-gompi-2023a.eb @@ -0,0 +1,38 @@ +easyblock = 'PythonBundle' + +name = 'PyRosetta' +version = '4.release-387' + +homepage = 'https://www.pyrosetta.org/' +description = """ +PyRosetta is an interactive Python-based interface to the powerful Rosetta molecular modeling +suite. It enables users to design their own custom molecular modeling algorithms using Rosetta +sampling methods and energy functions. +""" + +toolchain = {'name': 'gompi', 'version': '2023a'} +toolchainopts = {'usempi': True} + +builddependencies = [('binutils', '2.40')] + +dependencies = [ + ('Python', '3.11.3'), +] + +use_pip = True + +local_source_tmpl = '%(name)s%(version_major)s.Release.python%(pymajver)s%(pyminver)s.linux.%(version_minor)s.tar.bz2' +local_source_urls = 'https://graylab.jhu.edu/download/PyRosetta4/archive/release/PyRosetta4.Release.python311.linux/' + +exts_list = [ + (name, version, { + 'source_tmpl': local_source_tmpl, + 'source_urls': [local_source_urls], + 'start_dir': 'setup', + 'checksums': ['42a10efd16cba7739d87a5c4035a2cd8792bc193804963fc26bb2f82f7ac2a1a'], + }), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PySCF/PySCF-2.7.0-foss-2023a.eb b/easybuild/easyconfigs/p/PySCF/PySCF-2.7.0-foss-2023a.eb new file mode 100644 index 00000000000..d2efdfa6e27 --- /dev/null +++ b/easybuild/easyconfigs/p/PySCF/PySCF-2.7.0-foss-2023a.eb @@ -0,0 +1,138 @@ +easyblock = 'CMakeMakeCp' +name = 'PySCF' +version = '2.7.0' + +homepage = 'http://www.pyscf.org' +description = "PySCF is an open-source collection of electronic structure modules powered by Python." + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/pyscf/pyscf/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['f2f94e6dae8556085bb765eb5250f61589e977b4f12540c748241101d40da241'] + +builddependencies = [ + ('CMake', '3.26.3'), + ('pybind11', '2.11.1'), # needed by zquatev +] + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), # for numpy, scipy + ('h5py', '3.9.0'), + ('libcint', '5.4.0'), + ('libxc', '6.2.2'), + ('XCFun', '2.1.1'), + ('CPPE', '0.3.1'), # extra + ('PyBerny', '0.6.3'), # extra + ('PyCheMPS2', '1.8.12'), # needed by dmrgscf + ('Block', '1.5.3-20200525'), # needed by dmrgscf + ('NECI', '20230620'), # needed by fciqmc + ('Dice', '20240702'), # needed by icmpspt + ('tblis', '20230422'), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'download_dep_fail': True, + 'use_pip': True, + 'modulename': 'pyscf.%(name)s', + 'source_urls': ['https://github.com/pyscf/%(name)s/archive/'], + 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], +} + +# The following list of extensions is equivalent to installing PySCF with extras: +# all + dmrgscf + fciqmcscf + hci + mbd + tblis + zquatev +exts_list = [ + ('dftd3', '94091d8', { + 'checksums': ['a69ae44b3d02d2c06fd531373f20ee1251ef27fc932d40a7cafea6c09d8784fc'], + }), + ('doci', '08079a9', { + 'checksums': ['f492ba45dfe50c9b459e53a946a677528af0dc2097ff77ea3767aa4f46c5d9ba'], + }), + ('icmpspt', '50c386e', { + 'patches': [('PySCF-2.1.1_icmpspt-exe-path.patch', 0)], + 'checksums': [ + {'icmpspt-50c386e.tar.gz': '08029863ae8740939a730fe5e104661c67d8dd0b8a8555b603fc8a0777096d48'}, + {'PySCF-2.1.1_icmpspt-exe-path.patch': 'e972e377b34b964c48a99909301bf21a9c73d8eb9ecb96a889621d71471c56c9'}, + ], + }), + ('properties', '8b94d8d', { + 'modulename': 'pyscf.prop', + 'checksums': ['b40e071472a6bdfcaec8cd358c7c58c58748c59d8b188fdca09d6eca63329914'], + }), + ('qsdopt', '3ad2c02', { + 'checksums': ['cc639150e5f9efad8ffe496b3dccd2952a1f60fdad51f611cffba701892b384e'], + }), + ('semiempirical', '470d716', { + 'checksums': ['0bbe304867fd053ed647445ac84c4c76787ad23def9f72415aec297740121eef'], + }), + ('shciscf', '7edb54d', { + 'checksums': ['ae54265f6600b73a350b00274c95bb0de940ddcd6e1b47b434594e18136b1bed'], + }), + ('MCfun', '0.2.3', { + 'modulename': 'mcfun', + 'source_urls': ['https://github.com/Multi-collinear/%(name)s/archive/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['3741b49b839df0fde891d51292520ed9094fa1d3c9b5d9c042d4f26087cf6a13'], + }), + ('pyqmc', '0.6.0', { + 'modulename': 'pyqmc', + 'source_urls': ['https://github.com/WagnerGroup/%(name)s/archive/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['6e9f612c2d0bf2198154520e01dce57cf3a6e474840c1892466de3171eaeb7db'], + }), + ('dmrgscf', 'a03f7b6', { + 'patches': [('PySCF-2.1.1_dmrgscf-settings.patch', 0)], + 'checksums': [ + {'dmrgscf-a03f7b6.tar.gz': 'dee40abe3d2aebab7a2d0eade4e464a6ae851b4c2b49a2cde4c3aa88f0651b04'}, + {'PySCF-2.1.1_dmrgscf-settings.patch': 'a0310a2a90e96bd64d1560b2cc73a805717e129d2921e91cc5e6038b9f153677'}, + ], + }), + ('fciqmc', 'ee98fb4', { + 'modulename': 'pyscf.fciqmcscf', + 'checksums': ['b2f081ac295df0e622c6d1b3bff6d7834f97131f1f0fc87ec8bcff2137ef4199'], + }), + ('mbd', '485c18c', { + 'patches': [('PySCF-2.1.1_mbd-fix-init.patch', 0)], + 'checksums': [ + {'mbd-485c18c.tar.gz': 'de1fb14650fcb87909cae33dc318d2e213653ac4393ced7e070dfa6308d95846'}, + {'PySCF-2.1.1_mbd-fix-init.patch': '4f8e4b2e39b77428187851c4b6ced39401561bc81f4f3a4605da5d5c7b798cbc'}, + ], + }), + ('naive-hci', '0c28d6e', { + 'modulename': 'pyscf.hci', + 'checksums': ['de247d17b80133655df5966341e5adb691b0df150cd9b0f1980cf62ec55229d5'], + }), + ('tblis', 'c67c8af', { + 'modulename': 'pyscf.tblis_einsum', + # Use our `tblis`. + 'preinstallopts': 'CMAKE_CONFIGURE_ARGS="-DVENDOR_TBLIS=off" ', + 'source_urls': ['https://github.com/pyscf/pyscf-tblis/archive/'], + 'checksums': ['9a40a760e3be1d0b7f49faab5897388dcdf75094f75e06b4c344b3642a0401d6'], + }), + ('zquatev', '4eb41b1', { + 'modulename': 'zquatev', + 'preinstallopts': "sed -i 's/add_subdirectory(pybind11)/find_package(pybind11 REQUIRED)/' CMakeLists.txt && ", + 'source_urls': ['https://github.com/sunqm/%(name)s/archive/'], + 'checksums': ['4caf08e3831a5d86e6bc22f3b4028cc159101cb9658d09de16e382e268a5a2e9'], + }), +] + +start_dir = 'pyscf/lib' +configopts = "-DBUILD_LIBCINT=OFF -DBUILD_LIBXC=OFF -DBUILD_XCFUN=OFF" +prebuildopts = "export PYSCF_INC_DIR=$EBROOTQCINT/include:$EBROOTLIBXC/lib && " + +_py_site_packages = 'lib/python%(pyshortver)s/site-packages' +files_to_copy = [(['pyscf'], _py_site_packages)] + +sanity_check_paths = { + 'files': [_py_site_packages + '/pyscf/__init__.py'], + 'dirs': [_py_site_packages + d for d in ['/pyscf/data', '/pyscf/lib']], +} + +sanity_check_commands = ["python -c 'import pyscf'"] + +modextrapaths = {'PYTHONPATH': _py_site_packages} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/p/Pysam/Pysam-0.22.1-GCC-13.3.0.eb b/easybuild/easyconfigs/p/Pysam/Pysam-0.22.1-GCC-13.3.0.eb new file mode 100644 index 00000000000..2920aeda78e --- /dev/null +++ b/easybuild/easyconfigs/p/Pysam/Pysam-0.22.1-GCC-13.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'Pysam' +version = '0.22.1' + +homepage = 'https://github.com/pysam-developers/pysam' +description = """Pysam is a python module for reading and manipulating Samfiles. + It's a lightweight wrapper of the samtools C-API. Pysam also includes an interface for tabix.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +source_urls = ['https://github.com/pysam-developers/pysam/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e4981524d7627c53fa0d3f8cbec2bd65c2ea7520092f25e1029af12cb7b82ff6'] + +builddependencies = [ + ('Cython', '3.0.10') +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('ncurses', '6.5'), + ('cURL', '8.7.1'), + ('XZ', '5.4.5'), +] + +download_dep_fail = True +use_pip = True + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/p7zip/p7zip-17.05-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/p7zip/p7zip-17.05-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..f691f95e191 --- /dev/null +++ b/easybuild/easyconfigs/p/p7zip/p7zip-17.05-GCCcore-13.3.0.eb @@ -0,0 +1,47 @@ +easyblock = 'MakeCp' + +name = 'p7zip' +version = '17.05' + +homepage = 'https://github.com/p7zip-project/p7zip/' +description = """p7zip is a quick port of 7z.exe and 7za.exe (CLI version of +7zip) for Unix. 7-Zip is a file archiver with highest compression ratio.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['d2788f892571058c08d27095c22154579dfefb807ebe357d145ab2ddddefb1a6'] + +builddependencies = [ + ('binutils', '2.42'), +] + +prebuildopts = "cp makefile.linux_amd64 makefile.linux &&" +buildopts = 'all3 CC="$CC" CXX="$CXX" OPTFLAGS="$CFLAGS"' + +github_account = '%(name)s-project' +# put script in place for 7z, since it *must* be called full path, to ensure that 7z.so is found in the same directory +# see also http://sourceforge.net/p/p7zip/discussion/383044/thread/5e4085ab/ +postinstallcmds = [ + """echo '#!/bin/sh +%(installdir)s/libexec/7z $@' > %(installdir)s/bin/7z""", + "chmod +x %(installdir)s/bin/7z", # set execution bits according to current umask +] +files_to_copy = [ + (['bin/7za', 'bin/7zr', 'bin/7zCon.sfx'], 'bin'), # stand-alone binaries + (['bin/7z', 'bin/7z.so', 'bin/Codecs'], 'libexec'), +] # 7z requires 7z.so plugin in same directory + +sanity_check_paths = { + 'files': ['bin/7z', 'bin/7za', 'bin/7zCon.sfx', 'bin/7zr', 'libexec/7z', 'libexec/7z.%s' % SHLIB_EXT], + 'dirs': ['libexec/Codecs'], +} + +sanity_check_commands = [ + "7z --help", + "7z x || test $? -gt 0", + """! 7z i | grep -q "Can't load" """, +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/picard/picard-3.3.0-Java-17.eb b/easybuild/easyconfigs/p/picard/picard-3.3.0-Java-17.eb new file mode 100644 index 00000000000..8aafd645195 --- /dev/null +++ b/easybuild/easyconfigs/p/picard/picard-3.3.0-Java-17.eb @@ -0,0 +1,62 @@ +## +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +# +# This is a contribution from Phoenix HPC Service, The University of Adelaide, Australia +# Homepage: https://www.adelaide.edu.au/phoenix/ +# +# Copyright:: adelaide.edu.au/phoenix +# Authors:: Robert Qiao , Exe Escobedo +# License:: MIT +# +# 2.10.1: +# Adam Huffman +# The Francis Crick Institute +# 2.18.11: +# Jonas Demeulemeester +# The Francis Crick Institute +# 2.21.1 +# Pavel Grochal (INUITS) +# 2.25.1 +# J. Sassmannshausen (GSTT) +# 2.25.5 +# Erica Bianco (HPCNow!) +# 2.26.10 +# Christoph Siegert (Leipzig University) +# 3.0.0 +# Graham Derryberry (UTK) +# 3.3.0 +# Emik Lin (HKUMed CPOS) +## + +easyblock = 'JAR' + +name = 'picard' +version = '3.3.0' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://broadinstitute.github.io/picard/' +description = """A set of tools (in Java) for working with next generation sequencing data in the BAM format.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/broadinstitute/picard/releases/download/%(version)s'] +sources = [{ + 'filename': '%(name)s-%(version)s.jar', + 'download_filename': '%(name)s.jar', +}] +checksums = ['58819a7660646b74b34e282f5d4d21c8dbaea22ddeff96e3258755dafa0f86dc'] + +postinstallcmds = ["mv %(installdir)s/%(name)s-%(version)s.jar %(installdir)s/%(name)s.jar"] + +dependencies = [('Java', '17')] + +sanity_check_commands = ['java -jar $EBROOTPICARD/picard.jar 2>&1 | grep USAGE'] + +sanity_check_paths = { + 'files': ['picard.jar'], + 'dirs': [], +} + +modloadmsg = "To execute picard run: java -jar $EBROOTPICARD/%(name)s.jar" + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pmt/pmt-1.3.1-GCCcore-13.3.0-CUDA-12.6.0.eb b/easybuild/easyconfigs/p/pmt/pmt-1.3.1-GCCcore-13.3.0-CUDA-12.6.0.eb new file mode 100644 index 00000000000..695a90190e0 --- /dev/null +++ b/easybuild/easyconfigs/p/pmt/pmt-1.3.1-GCCcore-13.3.0-CUDA-12.6.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CMakeMake' + +name = 'pmt' +version = '1.3.1' +versionsuffix = '-CUDA-%(cudaver)s' + +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': '13.3.0'} + +source_urls = ['https://git.astron.nl/RD/pmt/-/archive/%(version)s'] +sources = ['pmt-%(version)s.tar.gz'] +checksums = ['cf8c669ffb0fda4cb594550fb233f9654252db50671b59147826eadc0a3d5565'] + +builddependencies = [ + ('CMake', '3.29.3'), + ('binutils', '2.42'), +] + +dependencies = [ + ('CUDA', '12.6.0', '', SYSTEM) +] + +configopts = '-DPMT_BUILD_RAPL=1 -DPMT_BUILD_NVML=1 -DPMT_BUILD_NVIDIA=1' + +sanity_check_paths = { + 'files': ["lib/libpmt.%s" % SHLIB_EXT, "include/pmt/NVIDIA.h", "include/pmt/Rapl.h", "include/pmt/NVML.h"], + 'dirs': ["lib", "include"], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/psycopg/psycopg-3.2.3-GCCcore-13.3.0.eb b/easybuild/easyconfigs/p/psycopg/psycopg-3.2.3-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..28b9128ff66 --- /dev/null +++ b/easybuild/easyconfigs/p/psycopg/psycopg-3.2.3-GCCcore-13.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'psycopg' +version = '3.2.3' + +homepage = 'https://psycopg.org/' +description = "Psycopg is the most popular PostgreSQL adapter for the Python programming language." + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['a5764f67c27bec8bfac85764d23c534af2c27b893550377e37ce59c12aac47a2'] + +builddependencies = [('binutils', '2.42')] +dependencies = [ + ('Python', '3.12.3'), + ('PostgreSQL', '16.4'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/r/R2jags/R2jags-0.8-9-foss-2023a-R-4.3.2.eb b/easybuild/easyconfigs/r/R2jags/R2jags-0.8-9-foss-2023a-R-4.3.2.eb new file mode 100644 index 00000000000..0784b3e87c1 --- /dev/null +++ b/easybuild/easyconfigs/r/R2jags/R2jags-0.8-9-foss-2023a-R-4.3.2.eb @@ -0,0 +1,29 @@ +easyblock = 'RPackage' + +name = 'R2jags' +version = '0.8-9' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://cran.r-project.org/web/packages/R2jags' +description = "Providing wrapper functions to implement Bayesian analysis in JAGS." + +toolchain = {'name': 'foss', 'version': '2023a'} + +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 +] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['df06b8f919eed8dd65bca29bbe7e337718142734d6a31818ce1e49db8faee14c'] + +dependencies = [ + ('R', '4.3.2'), + ('rjags', '4-15', versionsuffix), +] + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.2.2-GCC-13.2.0.eb b/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.2.2-GCC-13.2.0.eb new file mode 100644 index 00000000000..a181d6523c8 --- /dev/null +++ b/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.2.2-GCC-13.2.0.eb @@ -0,0 +1,53 @@ +# EasyBuild easyconfig +# +# Contributed from Fred Hutchinson Cancer Research Center, Seattle WA, US +# John Dey jfdey@fredhutch.org +# +easyblock = 'CMakeMake' + +name = 'RAxML-NG' +version = '1.2.2' + +homepage = 'https://github.com/amkozlov/raxml-ng' +description = """RAxML-NG is a phylogenetic tree inference tool which uses maximum-likelihood (ML) + optimality criterion. Its search heuristic is based on iteratively performing a series of Subtree + Pruning and Regrafting (SPR) moves, which allows to quickly navigate to the best-known ML tree.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} + +sources = [{ + 'filename': '%(version)s.tar.gz', + 'git_config': { + 'url': 'https://github.com/amkozlov', + 'repo_name': '%(namelower)s', + 'tag': '%(version)s', + 'recursive': True, + 'keep_git_dir': True, + } +}] +checksums = [None] + +builddependencies = [ + ('CMake', '3.27.6'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('googletest', '1.14.0'), +] + +dependencies = [ + ('GMP', '6.3.0'), +] + +preconfigopts = "sed -i 's/c++11/c++14/g' %(builddir)s/raxml-ng/CMakeLists.txt && " +configopts = '-DUSE_GMP=ON ' + +runtest = 'test ' + +sanity_check_paths = { + 'files': ['bin/raxml-ng'], + 'dirs': [], +} + +sanity_check_commands = ["raxml-ng --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/RCall/RCall-0.13.17-foss-2022a-R-4.2.1-Julia-1.9.2.eb b/easybuild/easyconfigs/r/RCall/RCall-0.13.17-foss-2022a-R-4.2.1-Julia-1.9.2.eb index a7789bd8358..bb9b6221bf8 100644 --- a/easybuild/easyconfigs/r/RCall/RCall-0.13.17-foss-2022a-R-4.2.1-Julia-1.9.2.eb +++ b/easybuild/easyconfigs/r/RCall/RCall-0.13.17-foss-2022a-R-4.2.1-Julia-1.9.2.eb @@ -16,8 +16,6 @@ dependencies = [ ('Julia', local_juliaver, '-linux-%s' % ARCH, SYSTEM), ] -preinstallopts = "export LD_LIBRARY_PATH=$EBROOTJULIA/lib/julia:$LD_LIBRARY_PATH && " - exts_default_options = { 'source_tmpl': 'v%(version)s.tar.gz', } @@ -224,17 +222,15 @@ exts_list = [ }), ] -sanity_check_commands = ["julia -e 'using Pkg;Pkg.test(\"%(name)s\")'"] +local_julia_env = "%(installdir)s/environments/v" + '.'.join(local_juliaver.split('.')[:2]) + +sanity_check_commands = [ + """julia -e 'using Pkg; Pkg.activate("%s"); Pkg.test("%%(name)s")'""" % local_julia_env, +] sanity_check_paths = { 'files': [], 'dirs': ['packages/%(name)s'], } -# When loading R and Julia, there seems to be a library collision and Julia (namely Pkg module) doesn't work properly -# This is a workaround to make Julia find the correct libraries -modluafooter = """ -prepend_path("LD_LIBRARY_PATH", os.getenv("EBROOTJULIA") .. "/lib/julia") -""" - moduleclass = 'tools' diff --git a/easybuild/easyconfigs/r/ResistanceGA/ResistanceGA-4.2-5-foss-2022a-R-4.2.1-Julia-1.9.2.eb b/easybuild/easyconfigs/r/ResistanceGA/ResistanceGA-4.2-5-foss-2022a-R-4.2.1-Julia-1.9.2.eb index 83987de1e5a..03e40a493f2 100644 --- a/easybuild/easyconfigs/r/ResistanceGA/ResistanceGA-4.2-5-foss-2022a-R-4.2.1-Julia-1.9.2.eb +++ b/easybuild/easyconfigs/r/ResistanceGA/ResistanceGA-4.2-5-foss-2022a-R-4.2.1-Julia-1.9.2.eb @@ -14,8 +14,9 @@ toolchain = {'name': 'foss', 'version': '2022a'} dependencies = [ ('R', '4.2.1'), ('Julia', local_juliaver, '-linux-%s' % ARCH, SYSTEM), + ('RCall', '0.13.17', versionsuffix), # order matters! RCall must be loaded before Circuitscape (#19281) ('Circuitscape', '5.12.3', '-Julia-%s' % local_juliaver, SYSTEM), - ('RCall', '0.13.17', versionsuffix), + ('Suppressor', '0.2.4', '-Julia-%s' % local_juliaver, SYSTEM), ] exts_defaultclass = 'RPackage' @@ -31,14 +32,6 @@ exts_default_options = { } exts_list = [ - ('Suppressor', '0.2.4', { - 'easyblock': 'JuliaPackage', - 'exts_filter': ("julia -e 'using %(ext_name)s'", ''), - 'preinstallopts': "export LD_LIBRARY_PATH=$EBROOTJULIA/lib/julia:$LD_LIBRARY_PATH && ", - 'source_tmpl': 'v%(version)s.tar.gz', - 'source_urls': ['https://github.com/JuliaIO/Suppressor.jl/archive/'], - 'checksums': ['5075b06ed6aa0956c786e5b5fe3d77571a4dd34e6d63b45e113c312729384cf4'], - }), ('GA', '3.2.2', { 'checksums': ['6245c634a11b8414bde7ed326b8c615512645489b19969619484c865e900bf8c'], }), @@ -73,12 +66,6 @@ modextrapaths = { 'R_LIBS_SITE': '', } -# When loading R and Julia, there seems to be a library collision and Julia (namely Pkg module) doesn't work properly -# This is a workaround to make Julia find the correct libraries -modluafooter = """ -prepend_path("LD_LIBRARY_PATH", os.getenv("EBROOTJULIA") .. "/lib/julia") -""" - sanity_check_paths = { 'files': [], 'dirs': ['%(name)s'], diff --git a/easybuild/easyconfigs/r/rapidNJ/rapidNJ-2.3.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/r/rapidNJ/rapidNJ-2.3.3-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..5a6e44436d9 --- /dev/null +++ b/easybuild/easyconfigs/r/rapidNJ/rapidNJ-2.3.3-GCCcore-12.3.0.eb @@ -0,0 +1,41 @@ +# This seems to be actively maintained version of the code by the looks of it. +# See issue #5 +# https://github.com/somme89/rapidNJ/issues/5 +# why -march=native will not be used +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'MakeCp' + +name = 'rapidNJ' +version = '2.3.3' + +homepage = 'https://github.com/somme89/rapidNJ' +description = """RapidNJ is an algorithmic engineered implementation of canonical +neighbour-joining. It uses an efficient search heuristic to speed-up the core +computations of the neighbour-joining method that enables RapidNJ to +outperform other state-of-the-art neighbour-joining implementations.""" + +citing = """Rapid Neighbour Joining. Martin Simonsen, Thomas Mailund and Christian N. S. Pedersen. +In: Proceedings of the 8th Workshop in Algorithms in Bioinformatics (WABI), LNBI 5251, 113-122, +Springer Verlag, October 2008. +doi: 10.1007/978-3-540-87361-7_10""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://github.com/somme89/rapidNJ/archive/'] +sources = [{'filename': 'v%(version)s.tar.gz', 'download_filename': 'latest.tar.gz'}] +checksums = ['662f864cc3e5bc68aea23129f02e0062cac9ebd37e414b54c5c5e616ff4f245d'] + +builddependencies = [('binutils', '2.40')] + +files_to_copy = [(['bin/rapidnj'], 'bin')] + +# That is returning 1 instead of 0, so disabled for now +# sanity_check_commands = ['rapidnj --help'] + +sanity_check_paths = { + 'files': ['bin/rapidnj'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/rclone/rclone-1.68.1.eb b/easybuild/easyconfigs/r/rclone/rclone-1.68.1.eb new file mode 100644 index 00000000000..12c72ff4ab8 --- /dev/null +++ b/easybuild/easyconfigs/r/rclone/rclone-1.68.1.eb @@ -0,0 +1,34 @@ +easyblock = 'GoPackage' + +name = 'rclone' +version = '1.68.1' + +homepage = 'https://rclone.org' + +description = """ + Rclone is a command line program to sync files and directories to and from + a variety of online storage services +""" + +toolchain = SYSTEM + +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['26259526855a12499d00e3a3135ee95e7aeb3ecf2f85886d8c837a2e7b236226'] + +builddependencies = [('Go', '1.22.1', '', SYSTEM)] + +postinstallcmds = [ + "mkdir -p %(installdir)s/share/{doc,man/man1}", + "cp README.* MANUAL.* %(installdir)s/share/doc/", + "cp rclone.1 %(installdir)s/share/man/man1/", +] + +sanity_check_paths = { + 'files': ['bin/rclone', 'share/doc/README.md', 'share/man/man1/rclone.1'], + 'dirs': [] +} + +sanity_check_commands = ['rclone --version'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0-gompi-2023b.eb b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0-gompi-2023b.eb new file mode 100644 index 00000000000..bf9aa5e5827 --- /dev/null +++ b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0-gompi-2023b.eb @@ -0,0 +1,35 @@ +easyblock = 'ConfigureMake' + +name = 'SPRNG' +version = '5.0' + +homepage = 'http://www.sprng.org/' +description = "Scalable Parallel Pseudo Random Number Generators Library" + +toolchain = {'name': 'gompi', 'version': '2023b'} +toolchainopts = {'pic': True, 'opt': True, 'usempi': True, 'cstd': 'c++14'} + +source_urls = ['http://www.sprng.org/Version%(version)s/'] +sources = ['%(namelower)s%(version_major)s.tar.bz2'] +patches = ['%(name)s-%(version)s_MPI-lmpi.patch'] +checksums = [ + {'sprng5.tar.bz2': '696ef452bdd998d2e66586e73d81dac875082e35d08de419cede1a1bb2555b59'}, + {'SPRNG-5.0_MPI-lmpi.patch': 'a6bb936b2e7cf9efd74e0bf06702bf444c98ecb11877492308a3551c5b9dff5c'}, +] + +builddependencies = [ + ('Autotools', '20220317'), + ('TestU01', '1.2.3'), +] + +preconfigopts = 'autoreconf -f -i && ' +configopts = '--with-fortran=yes --with-mpi=yes --with-testu01=$EBROOTTESTU01' + +sanity_check_paths = { + 'files': ['bin/checksprng', 'include/sprng.h', 'include/sprng_f.h', 'lib/libsprng.a'], + 'dirs': ['bin', 'include', 'lib', 'share'], +} + +sanity_check_commands = ['cd %(builddir)s/sprng5/check && checksprng'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0-iimpi-2023b.eb b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0-iimpi-2023b.eb new file mode 100644 index 00000000000..ea7f852cd44 --- /dev/null +++ b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0-iimpi-2023b.eb @@ -0,0 +1,35 @@ +easyblock = 'ConfigureMake' + +name = 'SPRNG' +version = '5.0' + +homepage = 'http://www.sprng.org/' +description = "Scalable Parallel Pseudo Random Number Generators Library" + +toolchain = {'name': 'iimpi', 'version': '2023b'} +toolchainopts = {'pic': True, 'opt': True, 'usempi': True, 'cstd': 'c++14'} + +source_urls = ['http://www.sprng.org/Version%(version)s/'] +sources = ['%(namelower)s%(version_major)s.tar.bz2'] +patches = ['%(name)s-%(version)s_MPI-lmpicxx.patch'] +checksums = [ + {'sprng5.tar.bz2': '696ef452bdd998d2e66586e73d81dac875082e35d08de419cede1a1bb2555b59'}, + {'SPRNG-5.0_MPI-lmpicxx.patch': 'fc0903d81886a76a8cf2af73930b0347e3bcc047ad32215fdafd5a936f519545'}, +] + +builddependencies = [ + ('Autotools', '20220317'), + ('TestU01', '1.2.3'), +] + +preconfigopts = 'autoreconf -f -i && ' +configopts = '--with-fortran=yes --with-mpi=yes --with-testu01=$EBROOTTESTU01' + +sanity_check_paths = { + 'files': ['bin/checksprng', 'include/sprng.h', 'include/sprng_f.h', 'lib/libsprng.a'], + 'dirs': ['bin', 'include', 'lib', 'share'], +} + +sanity_check_commands = ['cd %(builddir)s/sprng5/check && checksprng'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0_MPI-lmpi.patch b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0_MPI-lmpi.patch new file mode 100644 index 00000000000..c09f74fa073 --- /dev/null +++ b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0_MPI-lmpi.patch @@ -0,0 +1,12 @@ +diff -Nru sprng5-orig/configure.ac sprng5/configure.ac +--- sprng5-orig/configure.ac 2021-06-08 18:37:02.000000000 +0200 ++++ sprng5/configure.ac 2024-08-29 19:21:40.393998554 +0200 +@@ -89,7 +89,7 @@ + + if test $use_mpi = y; then + MPI_DEF="-DSPRNG_MPI" +- MPI_CXXLIB="-lmpi_cxx" ++ MPI_CXXLIB="-lmpi" + else + MPI_DEF="" + MPI_CXXLIB="" diff --git a/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0_MPI-lmpicxx.patch b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0_MPI-lmpicxx.patch new file mode 100644 index 00000000000..a45691c9b04 --- /dev/null +++ b/easybuild/easyconfigs/s/SPRNG/SPRNG-5.0_MPI-lmpicxx.patch @@ -0,0 +1,12 @@ +diff -Nru sprng5-orig/configure.ac sprng5/configure.ac +--- sprng5-orig/configure.ac 2021-06-08 18:37:02.000000000 +0200 ++++ sprng5/configure.ac 2024-08-29 19:18:56.124716693 +0200 +@@ -89,7 +89,7 @@ + + if test $use_mpi = y; then + MPI_DEF="-DSPRNG_MPI" +- MPI_CXXLIB="-lmpi_cxx" ++ MPI_CXXLIB="-lmpicxx" + else + MPI_DEF="" + MPI_CXXLIB="" diff --git a/easybuild/easyconfigs/s/SQLAlchemy/SQLAlchemy-2.0.36-GCCcore-13.3.0.eb b/easybuild/easyconfigs/s/SQLAlchemy/SQLAlchemy-2.0.36-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..293b3bf2452 --- /dev/null +++ b/easybuild/easyconfigs/s/SQLAlchemy/SQLAlchemy-2.0.36-GCCcore-13.3.0.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'SQLAlchemy' +version = '2.0.36' + +homepage = 'https://www.sqlalchemy.org/' +description = """SQLAlchemy is the Python SQL toolkit and Object Relational Mapper that gives +application developers the full power and flexibility of SQL. SQLAlchemy +provides a full suite of well known enterprise-level persistence patterns, +designed for efficient and high-performing database access, adapted into a +simple and Pythonic domain language.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +builddependencies = [('binutils', '2.42')] + +dependencies = [ + ('Python', '3.12.3'), + ('Greenlet', '3.1.1'), + ('psycopg', '3.2.3'), # optional, postgresql extra + ('Mako', '1.3.5'), # needed by alembic +] + +use_pip = True + +exts_list = [ + ('async-timeout', '5.0.1', { + 'sources': ['async_timeout-%(version)s.tar.gz'], + 'checksums': ['d9321a7a3d5a6a5e187e824d2fa0793ce379a202935782d555d6e9d2735677d3'], + }), + ('asyncpg', '0.30.0', { + 'checksums': ['c551e9928ab6707602f44811817f82ba3c446e018bfe1d3abecc8ba5f3eac851'], + }), + ('sqlalchemy', version, { + 'use_pip_extras': 'asyncio,postgresql,postgresql_asyncpg', + 'checksums': ['7f2767680b6d2398aea7082e45a774b2b0767b5c8d8ffb9c8b683088ea9b29c5'], + }), + ('alembic', '1.14.0', { + 'checksums': ['b00892b53b3642d0b8dbedba234dbf1924b69be83a9a769d5a624b01094e304b'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/Safetensors/Safetensors-0.4.4-gfbf-2023b.eb b/easybuild/easyconfigs/s/Safetensors/Safetensors-0.4.4-gfbf-2023b.eb new file mode 100644 index 00000000000..50ead1b54c1 --- /dev/null +++ b/easybuild/easyconfigs/s/Safetensors/Safetensors-0.4.4-gfbf-2023b.eb @@ -0,0 +1,153 @@ +easyblock = "CargoPythonBundle" + +name = 'Safetensors' +version = '0.4.4' +_rustver = '1.76.0' + +homepage = 'https://huggingface.co/docs/safetensors' +description = """Safetensors is a new simple format for storing tensors safely (as opposed to +pickle) and that is still fast (zero-copy). Safetensors is really fast. + +This variant of Safetensors is installed with support for numpy and PyTorch +""" + +toolchain = {'name': 'gfbf', 'version': '2023b'} + +builddependencies = [ + ('Rust', _rustver), + ('maturin', '1.5.0', '-Rust-' + _rustver), +] + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), +] + +# crates generated on 2024-08-21 from directories savetensors/ and bindings/python/ +crates = [ + ('aho-corasick', '1.1.3'), + ('anes', '0.1.6'), + ('anstyle', '1.0.8'), + ('autocfg', '1.3.0'), + ('bit-set', '0.5.3'), + ('bit-vec', '0.6.3'), + ('bitflags', '2.6.0'), + ('bumpalo', '3.16.0'), + ('byteorder', '1.5.0'), + ('cast', '0.3.0'), + ('cfg-if', '1.0.0'), + ('ciborium', '0.2.2'), + ('ciborium-io', '0.2.2'), + ('ciborium-ll', '0.2.2'), + ('clap', '4.5.16'), + ('clap_builder', '4.5.15'), + ('clap_lex', '0.7.2'), + ('criterion', '0.5.1'), + ('criterion-plot', '0.5.0'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-utils', '0.8.20'), + ('crunchy', '0.2.2'), + ('either', '1.13.0'), + ('errno', '0.3.9'), + ('fastrand', '2.1.0'), + ('fnv', '1.0.7'), + ('getrandom', '0.2.15'), + ('half', '2.4.1'), + ('heck', '0.5.0'), + ('hermit-abi', '0.4.0'), + ('indoc', '2.0.5'), + ('is-terminal', '0.4.13'), + ('itertools', '0.10.5'), + ('itoa', '1.0.11'), + ('js-sys', '0.3.70'), + ('lazy_static', '1.5.0'), + ('libc', '0.2.155'), + ('libc', '0.2.158'), + ('libm', '0.2.8'), + ('linux-raw-sys', '0.4.14'), + ('log', '0.4.22'), + ('memchr', '2.7.4'), + ('memmap2', '0.9.4'), + ('memoffset', '0.9.1'), + ('num-traits', '0.2.19'), + ('once_cell', '1.19.0'), + ('oorandom', '11.1.4'), + ('plotters', '0.3.6'), + ('plotters-backend', '0.3.6'), + ('plotters-svg', '0.3.6'), + ('portable-atomic', '1.7.0'), + ('ppv-lite86', '0.2.20'), + ('proc-macro2', '1.0.86'), + ('proptest', '1.5.0'), + ('pyo3', '0.22.2'), + ('pyo3-build-config', '0.22.2'), + ('pyo3-ffi', '0.22.2'), + ('pyo3-macros', '0.22.2'), + ('pyo3-macros-backend', '0.22.2'), + ('quick-error', '1.2.3'), + ('quote', '1.0.36'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rand_xorshift', '0.3.0'), + ('rayon', '1.10.0'), + ('rayon-core', '1.12.1'), + ('regex', '1.10.6'), + ('regex-automata', '0.4.7'), + ('regex-syntax', '0.8.4'), + ('rustix', '0.38.34'), + ('rusty-fork', '0.3.0'), + ('ryu', '1.0.18'), + ('same-file', '1.0.6'), + ('serde', '1.0.204'), + ('serde', '1.0.208'), + ('serde_derive', '1.0.204'), + ('serde_derive', '1.0.208'), + ('serde_json', '1.0.122'), + ('serde_json', '1.0.125'), + ('syn', '2.0.72'), + ('syn', '2.0.75'), + ('target-lexicon', '0.12.16'), + ('tempfile', '3.12.0'), + ('tinytemplate', '1.2.1'), + ('unarray', '0.1.4'), + ('unicode-ident', '1.0.12'), + ('unindent', '0.2.3'), + ('wait-timeout', '0.2.0'), + ('walkdir', '2.5.0'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.93'), + ('wasm-bindgen-backend', '0.2.93'), + ('wasm-bindgen-macro', '0.2.93'), + ('wasm-bindgen-macro-support', '0.2.93'), + ('wasm-bindgen-shared', '0.2.93'), + ('web-sys', '0.3.70'), + ('winapi-util', '0.1.9'), + ('windows-sys', '0.52.0'), + ('windows-sys', '0.59.0'), + ('windows-targets', '0.52.6'), + ('windows_aarch64_gnullvm', '0.52.6'), + ('windows_aarch64_msvc', '0.52.6'), + ('windows_i686_gnu', '0.52.6'), + ('windows_i686_gnullvm', '0.52.6'), + ('windows_i686_msvc', '0.52.6'), + ('windows_x86_64_gnu', '0.52.6'), + ('windows_x86_64_gnullvm', '0.52.6'), + ('windows_x86_64_msvc', '0.52.6'), + ('zerocopy', '0.7.35'), + ('zerocopy-derive', '0.7.35'), +] + + +use_pip = True + +exts_list = [ + ('safetensors', version, { + 'checksums': ['5fe3e9b705250d0172ed4e100a811543108653fb2b66b9e702a088ad03772a07'], + }), +] + +sanity_pip_check = True + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/s/SlurmViewer/SlurmViewer-1.0.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/s/SlurmViewer/SlurmViewer-1.0.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..371a8d85eea --- /dev/null +++ b/easybuild/easyconfigs/s/SlurmViewer/SlurmViewer-1.0.1-GCCcore-13.2.0.eb @@ -0,0 +1,56 @@ +easyblock = 'PythonBundle' + +name = 'SlurmViewer' +version = '1.0.1' + +homepage = 'https://gitlab.com/lkeb/slurm_viewer' +description = """View the status of a Slurm cluster, including nodes and queue.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [ + ('binutils', '2.40'), + ('hatchling', '1.18.0'), + ('poetry', '1.6.1'), +] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('pydantic', '2.7.4'), +] + +use_pip = True + +exts_list = [ + ('plotext', '5.2.8', { + 'checksums': ['319a287baabeb8576a711995f973a2eba631c887aa6b0f33ab016f12c50ffebe'], + }), + ('textual', '0.85.2', { + 'checksums': ['2a416995c49d5381a81d0a6fd23925cb0e3f14b4f239ed05f35fa3c981bb1df2'], + }), + ('textual-plotext', '0.2.1', { + 'source_tmpl': 'textual_plotext-%(version)s.tar.gz', + 'checksums': ['bc6f2d75d8e20dda6321f8254dc3decda8f41f60e6e70a3ddd83b652b890c081'], + }), + ('asyncssh', '2.18.0', { + 'checksums': ['1a322161c01f60b9719dc8f39f80db71e61f3f5e04abbc3420ce503126d87123'], + }), + ('slurm-viewer', version, { + 'source_tmpl': 'slurm_viewer-%(version)s-py3-none-any.whl', + 'checksums': ['2e42662881458701a09770a52062cb065527e30a39aac35165056f4ccf288f52'], + }), +] + +sanity_check_paths = { + 'files': ['bin/slurm-viewer', 'bin/slurm-viewer-init'], + 'dirs': ['lib'] +} + +sanity_pip_check = True + +modloadmsg = """Slurm Viewer requires a configuration file. +You can make a default settings file in your home directory by running slurm-viewer-init, +or you can point to a settings file by setting the environment variable $SLURM_VIEW_CONFIG.""" + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/Sniffles/Sniffles-2.4-GCC-13.3.0.eb b/easybuild/easyconfigs/s/Sniffles/Sniffles-2.4-GCC-13.3.0.eb new file mode 100644 index 00000000000..ad8e962950a --- /dev/null +++ b/easybuild/easyconfigs/s/Sniffles/Sniffles-2.4-GCC-13.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'PythonBundle' + +name = 'Sniffles' +version = '2.4' + +homepage = 'https://github.com/fritzsedlazeck/Sniffles' +description = """A fast structural variant caller for long-read sequencing, + Sniffles2 accurately detect SVs on germline, somatic and population-level for PacBio and Oxford Nanopore read data.""" + +toolchain = {'name': 'GCC', 'version': '13.3.0'} + +dependencies = [ + ('Python', '3.12.3'), + ('Pysam', '0.22.1'), + ('edlib', '1.3.9.post1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'sources': [SOURCELOWER_TAR_GZ], + 'checksums': ['e3c2f552105cd5f5941d6291b9ee9dbfe634ad19b5e7a64fa26b9e2daa6547d4'], + }), +] + +sanity_check_paths = { + 'files': ['bin/sniffles'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -c 'from sniffles import sv'", + "sniffles --help", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/Suppressor/Suppressor-0.2.4-Julia-1.9.2.eb b/easybuild/easyconfigs/s/Suppressor/Suppressor-0.2.4-Julia-1.9.2.eb new file mode 100644 index 00000000000..5b443b3fac5 --- /dev/null +++ b/easybuild/easyconfigs/s/Suppressor/Suppressor-0.2.4-Julia-1.9.2.eb @@ -0,0 +1,22 @@ +easyblock = 'JuliaPackage' + +name = 'Suppressor' +version = '0.2.4' +_julia_ver = '1.9.2' +versionsuffix = "-Julia-%s" % _julia_ver + +homepage = 'https://github.com/JuliaIO/Suppressor.jl' +description = """Julia macros for suppressing and/or capturing output (STDOUT), +warnings (STDERR) or both streams at the same time.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/JuliaIO/Suppressor.jl/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['5075b06ed6aa0956c786e5b5fe3d77571a4dd34e6d63b45e113c312729384cf4'] + +dependencies = [ + ('Julia', _julia_ver, '-linux-%s' % ARCH, SYSTEM), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a-CUDA-12.1.1.eb index cb33b614f6f..bcabab4cc73 100644 --- a/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a-CUDA-12.1.1.eb +++ b/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a-CUDA-12.1.1.eb @@ -10,6 +10,10 @@ description = """Single-cell architecture surgery (scArches) is a package for re toolchain = {'name': 'foss', 'version': '2023a'} +builddependencies = [ + ('hatchling', '1.18.0'), +] + dependencies = [ ('Python', '3.11.3'), ('SciPy-bundle', '2023.07'), diff --git a/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a.eb b/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a.eb index bdcb1ab880c..e6b6f8d4e59 100644 --- a/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a.eb +++ b/easybuild/easyconfigs/s/scArches/scArches-0.6.1-foss-2023a.eb @@ -9,6 +9,10 @@ description = """Single-cell architecture surgery (scArches) is a package for re toolchain = {'name': 'foss', 'version': '2023a'} +builddependencies = [ + ('hatchling', '1.18.0'), +] + dependencies = [ ('Python', '3.11.3'), ('SciPy-bundle', '2023.07'), diff --git a/easybuild/easyconfigs/s/scTIE/scTIE-20231205-foss-2023a-CUDA-12.1.1.eb b/easybuild/easyconfigs/s/scTIE/scTIE-20231205-foss-2023a-CUDA-12.1.1.eb new file mode 100644 index 00000000000..375e693aeba --- /dev/null +++ b/easybuild/easyconfigs/s/scTIE/scTIE-20231205-foss-2023a-CUDA-12.1.1.eb @@ -0,0 +1,46 @@ +easyblock = 'Tarball' + +name = 'scTIE' +version = '20231205' +local_commit = '044d91a' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/SydneyBioX/scTIE' +description = """scTIE (single-cell Temporal Integration and inference of multimodal Experiments) + is an autoencoder-based method for integrating multimodal profiling of scRNA-seq and scATAC-seq + data over a time course and inferring cell-type specific GRNs. scTIE projects cells from all time + points into a common embedding space, followed by extracting interpretable information from this + space to predict cell trajectories.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +github_account = 'SydneyBioX' +source_urls = [GITHUB_SOURCE] +sources = ['%s.tar.gz' % local_commit] +checksums = ['bcbf7c846539d0f04e7bbf3cc6ae2fe075a4ba11e3a4388c29def943d39af53e'] + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch', '2.1.2', versionsuffix), + ('SciPy-bundle', '2023.07'), + ('CUDA', '12.1.1', '', SYSTEM), + ('POT', '0.9.3', versionsuffix), +] + +postinstallcmds = ['cd %(installdir)s && mkdir bin && ln -r -s main.py bin/sctie && chmod a+x main.py'] + +fix_python_shebang_for = ['main.py'] + +modextrapaths = { + 'PATH': '', + 'PYTHONPATH': '', +} + +sanity_check_paths = { + 'files': ['bin/sctie'], + 'dirs': [], +} + +sanity_check_commands = ['sctie --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.9.3-GCCcore-12.3.0.eb b/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.9.3-GCCcore-12.3.0.eb new file mode 100644 index 00000000000..a17cdb279fe --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-build-core/scikit-build-core-0.9.3-GCCcore-12.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'scikit-build-core' +version = '0.9.3' + +homepage = 'https://scikit-build.readthedocs.io/en/latest/' +description = """Scikit-build-core is a complete ground-up rewrite of scikit-build on top of +modern packaging APIs. It provides a bridge between CMake and the Python build +system, allowing you to make Python modules with CMake.""" + +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'), + ('CMake', '3.26.3'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('pyproject-metadata', '0.8.0', { + 'sources': ['pyproject_metadata-%(version)s.tar.gz'], + 'checksums': ['376d5a00764ac29440a54579f88e66b7d9cb7e629d35c35a1c7248bfebc9b455'], + }), + ('scikit_build_core', version, { + 'checksums': ['341d113e473a5409dc62522e8b1b1b8b1647a0b95557ad15f6be2a36071fd390'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.5.2-gfbf-2024a.eb b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.5.2-gfbf-2024a.eb new file mode 100644 index 00000000000..be9c3fd844c --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.5.2-gfbf-2024a.eb @@ -0,0 +1,39 @@ +easyblock = 'PythonBundle' + +name = 'scikit-learn' +version = '1.5.2' + +homepage = 'https://scikit-learn.org/stable/index.html' +description = """Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, +building upon numpy, scipy, and matplotlib. As a machine-learning module, +it provides versatile tools for data mining and analysis in any field of science and engineering. +It strives to be simple and efficient, accessible to everybody, and reusable in various contexts.""" + +toolchain = {'name': 'gfbf', 'version': '2024a'} + +builddependencies = [ + ('Cython', '3.0.10'), + ('meson-python', '0.16.0'), +] + +dependencies = [ + ('Python', '3.12.3'), + ('Python-bundle-PyPI', '2024.06'), + ('SciPy-bundle', '2024.05'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'modulename': 'sklearn', + 'sources': ['scikit_learn-%(version)s.tar.gz'], + 'checksums': ['b4237ed7b3fdd0a4882792e68ef2545d5baa50aca3bb45aa7df468138ad8f94d'], + }), + ('sklearn', '0.0', { + 'checksums': ['e23001573aa194b834122d2b9562459bf5ae494a2d59ca6b8aa22c85a44c0e31'], + }), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/snpEff/snpEff-5.2c-GCCcore-12.3.0-Java-11.eb b/easybuild/easyconfigs/s/snpEff/snpEff-5.2c-GCCcore-12.3.0-Java-11.eb new file mode 100644 index 00000000000..c9f29979a1d --- /dev/null +++ b/easybuild/easyconfigs/s/snpEff/snpEff-5.2c-GCCcore-12.3.0-Java-11.eb @@ -0,0 +1,37 @@ +easyblock = 'Tarball' + +name = 'snpEff' +version = '5.2c' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://pcingola.github.io/SnpEff/' +description = """SnpEff is a variant annotation and effect prediction tool. + It annotates and predicts the effects of genetic variants (such as amino acid changes).""" + +toolchain = {'name': 'GCCcore', 'version': '12.3.0'} + +source_urls = ['https://snpeff.blob.core.windows.net/versions/'] +sources = ['%%(name)s_v%s_core.zip' % version.replace('.', '_')] +checksums = ['9926f600662707e85478940abc283ef120a909f1d41c32a036f01d958cd51232'] + +dependencies = [ + # ignore website claim that Java 12+ is required, nothing is compiled for + # anything newer than Java 11 + ('Java', '11', '', SYSTEM), + ('Python', '3.11.3'), + ('Perl', '5.36.1'), +] + +fix_perl_shebang_for = ['scripts/*.pl'] +fix_python_shebang_for = ['scripts/*.py'] + +sanity_check_paths = { + 'files': ['%(name)s.jar', 'SnpSift.jar', 'scripts/%(name)s'], + 'dirs': [], +} + +sanity_check_commands = ["%(name)s -version"] + +modextrapaths = {'PATH': 'scripts'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/subset-bam/subset-bam-1.1.0.eb b/easybuild/easyconfigs/s/subset-bam/subset-bam-1.1.0.eb new file mode 100644 index 00000000000..f9e6778cec2 --- /dev/null +++ b/easybuild/easyconfigs/s/subset-bam/subset-bam-1.1.0.eb @@ -0,0 +1,24 @@ +easyblock = 'Binary' + +name = 'subset-bam' +version = '1.1.0' + +homepage = 'https://github.com/10XGenomics/subset-bam' +description = """subset-bam is a tool to subset a 10x Genomics BAM file based on a tag, +most commonly the cell barcode tag.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/10XGenomics/subset-bam/releases/download/v%(version)s/'] + +sources = [{'download_filename': 'subset-bam_linux', 'filename': name}] +checksums = ['05496ea56d52becdb7972528af0a486be1d52c1749e35bea9ae4c41215ed0a1b'] + +sanity_check_paths = { + 'dirs': [], + 'files': [name], +} + +sanity_check_commands = ["%(name)s --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/TEtranscripts/TEtranscripts-2.2.3-foss-2023a.eb b/easybuild/easyconfigs/t/TEtranscripts/TEtranscripts-2.2.3-foss-2023a.eb new file mode 100644 index 00000000000..ab7aa3071a8 --- /dev/null +++ b/easybuild/easyconfigs/t/TEtranscripts/TEtranscripts-2.2.3-foss-2023a.eb @@ -0,0 +1,42 @@ +easyblock = 'PythonPackage' + +name = 'TEtranscripts' +version = '2.2.3' + +homepage = 'https://github.com/mhammell-laboratory/TEtranscripts' +description = """TEtranscripts and TEcount takes RNA-seq (and similar data) and annotates reads +to both genes & transposable elements. +TEtranscripts then performs differential analysis using DESeq2.""" + +sources = [SOURCE_TAR_GZ] +checksums = ['e53577e8e73e41c6495fb819977e3e537bbeac7b2fa1635029201a37ee0bf7b8'] + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('Pysam', '0.22.0'), + ('R', '4.3.2'), + ('R-bundle-Bioconductor', '3.18', '-R-%(rver)s'), +] + +use_pip = True +download_dep_fail = True + +options = {'modulename': 'TEToolkit'} + +fix_python_shebang_for = ['bin/*'] + +sanity_check_paths = { + 'files': ['bin/TEtranscripts', 'bin/TEcount'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + 'TEtranscripts --version', + 'TEcount --version', +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/TestU01/TestU01-1.2.3-GCCcore-13.2.0.eb b/easybuild/easyconfigs/t/TestU01/TestU01-1.2.3-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..08b769c2f8d --- /dev/null +++ b/easybuild/easyconfigs/t/TestU01/TestU01-1.2.3-GCCcore-13.2.0.eb @@ -0,0 +1,23 @@ +easyblock = 'ConfigureMake' + +name = 'TestU01' +version = '1.2.3' + +homepage = 'https://simul.iro.umontreal.ca/testu01/tu01.html' +description = "Utilities for the empirical statistical testing of uniform random number generators" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://simul.iro.umontreal.ca/testu01/'] +sources = ['%(name)s.zip'] +checksums = ['bc1d1dd2aea7ed3b3d28eaad2c8ee55913f11ce67aec8fe4f643c1c0d2ed1cac'] + +builddependencies = [('binutils', '2.40')] + +sanity_check_paths = { + 'files': ['bin/tcode', 'lib/libmylib.%s' % SHLIB_EXT, + 'lib/libprobdist.%s' % SHLIB_EXT, 'lib/libtestu01.%s' % SHLIB_EXT], + 'dirs': ['bin', 'include', 'lib', 'share/TestU01/doc'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/t/TransDecoder/TransDecoder-5.7.1-GCC-12.3.0.eb b/easybuild/easyconfigs/t/TransDecoder/TransDecoder-5.7.1-GCC-12.3.0.eb new file mode 100644 index 00000000000..3f1bbc6fe83 --- /dev/null +++ b/easybuild/easyconfigs/t/TransDecoder/TransDecoder-5.7.1-GCC-12.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'Tarball' + +name = 'TransDecoder' +version = '5.7.1' + +homepage = 'https://github.com/TransDecoder/TransDecoder/wiki' +description = """TransDecoder identifies candidate coding regions within transcript sequences, + such as those generated by de novo RNA-Seq transcript assembly using Trinity, + or constructed based on RNA-Seq alignments to the genome using + Tophat and Cufflinks.""" + +toolchain = {'name': 'GCC', 'version': '12.3.0'} + +source_urls = ['https://github.com/TransDecoder/TransDecoder/archive/'] +sources = ['TransDecoder-v%(version)s.tar.gz'] +checksums = ['41dd5e95f6ba946ff21340417d867e5e99f123b4035779b25d3cffd20b828a30'] + +dependencies = [ + ('Perl', '5.36.1'), + ('CD-HIT', '4.8.1'), +] + +sanity_check_paths = { + 'files': ['TransDecoder.LongOrfs', 'TransDecoder.Predict'], + 'dirs': ['PerlLib', 'sample_data', 'util'], +} + +sanity_check_commands = [] + +modextrapaths = { + 'PATH': '', + 'PERL5LIB': 'PerlLib', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/Transformers/Transformers-4.44.0-gfbf-2023b.eb b/easybuild/easyconfigs/t/Transformers/Transformers-4.44.0-gfbf-2023b.eb new file mode 100644 index 00000000000..94a257d4b18 --- /dev/null +++ b/easybuild/easyconfigs/t/Transformers/Transformers-4.44.0-gfbf-2023b.eb @@ -0,0 +1,36 @@ +easyblock = 'PythonBundle' + +name = 'Transformers' +version = '4.44.0' + +homepage = 'https://github.com/huggingface/transformers' +description = """State-of-the-art Natural Language Processing for PyTorch and TensorFlow 2.0""" + +toolchain = {'name': 'gfbf', 'version': '2023b'} + +dependencies = [ + ('Python', '3.11.5'), + ('SciPy-bundle', '2023.11'), + ('PyYAML', '6.0.1'), + ('tqdm', '4.66.2'), + ('tokenizers', '0.19.1'), # tokenizers>=0.19,<0.20 + ('Safetensors', '0.4.4'), # safetensors>=0.4.1 +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('regex', '2024.7.24', { + 'checksums': ['9cfd009eed1a46b27c14039ad5bbc5e71b6367c5b2e6d5f5da0ea91600817506'], + }), + ('transformers', version, { + 'checksums': ['75699495e30b7635ca444d8d372e138c687ab51a875b387e33f1fb759c37f196'], + }), +] + +sanity_check_commands = [ + "python -c 'from transformers import AutoTokenizer'", +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/t/Trinotate/Trinotate-4.0.2-foss-2023a.eb b/easybuild/easyconfigs/t/Trinotate/Trinotate-4.0.2-foss-2023a.eb new file mode 100644 index 00000000000..b5c3d27e371 --- /dev/null +++ b/easybuild/easyconfigs/t/Trinotate/Trinotate-4.0.2-foss-2023a.eb @@ -0,0 +1,55 @@ +easyblock = 'Tarball' +name = 'Trinotate' +version = '4.0.2' + +homepage = 'https://github.com/Trinotate/Trinotate/wiki' +description = """Trinotate is a comprehensive annotation suite designed for automatic functional +annotation of transcriptomes, particularly de novo assembled transcriptomes, +from model or non-model organisms. Trinotate makes use of a number of different +well referenced methods for functional annotation including homology search to +known sequence data (BLAST+/SwissProt), protein domain identification +(HMMER/PFAM), protein signal peptide and transmembrane domain prediction +(signalP/tmHMM), and leveraging various annotation databases (eggNOG/GO/Kegg +databases). All functional annotation data derived from the analysis of +transcripts is integrated into a SQLite database which allows fast efficient +searching for terms with specific qualities related to a desired scientific +hypothesis or a means to create a whole annotation report for a transcriptome.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +github_account = '%(name)s' +source_urls = [GITHUB_SOURCE] +sources = ['%(name)s-v%(version)s.tar.gz'] +checksums = ['2f633df2e05e5d22e19159aa147060be7884a057314cad3e6db91dba8910fad1'] + +# # for reference, list of dependencies in the container image used upstream: +# # https://github.com/Trinotate/Trinotate/blob/master/Docker/Dockerfile +dependencies = [ + ('Perl', '5.36.1'), + ('Python', '3.11.3'), + ('Trinity', '2.15.2'), + ('BLAST+', '2.14.1'), + ('DIAMOND', '2.1.8'), + ('eggnog-mapper', '2.1.12'), + ('HMMER', '3.4'), + ('Infernal', '1.1.5'), + ('PyBioLib', '1.1.2250'), + ('SAMtools', '1.18'), + ('TransDecoder', '5.7.1'), +] + +sanity_check_paths = { + 'files': ['Trinotate', 'run_TrinotateWebserver.pl'], + 'dirs': ['PerlLib', 'resources', 'testing', 'util'], +} + +sanity_check_commands = [ + 'Trinotate --help 2>&1 | grep -q "Trinotate --db "', +] + +modextrapaths = { + 'PATH': '', + 'PERL5LIB': 'PerlLib', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/tblis/tblis-20230422-foss-2023a.eb b/easybuild/easyconfigs/t/tblis/tblis-20230422-foss-2023a.eb new file mode 100644 index 00000000000..77e022aa0cf --- /dev/null +++ b/easybuild/easyconfigs/t/tblis/tblis-20230422-foss-2023a.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'tblis' +version = '20230422' +local_commit = '4de1919' + +homepage = "https://github.com/devinamatthews/tblis" +description = """TBLIS is a library and framework for performing tensor + operations, especially tensor contraction, using native algorithms.""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +source_urls = ['https://github.com/devinamatthews/tblis/archive/'] +sources = ['%s.tar.gz' % local_commit] +checksums = ['85b72884022edd2612e3a0b3ed12aa6237d3989b581091d21f58124a7450aaeb'] + +sanity_check_paths = { + 'files': [ + 'include/tblis/tblis.h', + 'lib/libtblis.%s' % SHLIB_EXT, + ], + 'dirs': [] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/timm/timm-1.0.8-foss-2023a.eb b/easybuild/easyconfigs/t/timm/timm-1.0.8-foss-2023a.eb new file mode 100644 index 00000000000..a954aa9e443 --- /dev/null +++ b/easybuild/easyconfigs/t/timm/timm-1.0.8-foss-2023a.eb @@ -0,0 +1,42 @@ +easyblock = 'PythonBundle' + +name = 'timm' +version = '1.0.8' + +homepage = 'https://huggingface.co/docs/timm' +description = """ +timm is a library containing SOTA computer vision models, layers, utilities, +optimizers, schedulers, data-loaders, augmentations, and training/evaluation +scripts. It comes packaged with >700 pretrained models, and is designed to be +flexible and easy to use. +""" + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('PyTorch', '2.1.2'), + ('PyYAML', '6.0'), + ('tqdm', '4.66.1'), + ('torchvision', '0.16.0'), + ('Safetensors', '0.4.3'), +] + +builddependencies = [ + ('PDM', '2.12.4'), +] + +use_pip = True + +exts_list = [ + ('huggingface_hub', '0.24.5', { + 'checksums': ['7b45d6744dd53ce9cbf9880957de00e9d10a9ae837f1c9b7255fc8fa4e8264f3'], + }), + (name, version, { + 'checksums': ['f54a579f1cc39c43d99a4b03603e39c4cee87d4f0a08aba9c22e19064b30bf95'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/tokenizers/tokenizers-0.19.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/t/tokenizers/tokenizers-0.19.1-GCCcore-13.2.0.eb new file mode 100644 index 00000000000..3b5675b24df --- /dev/null +++ b/easybuild/easyconfigs/t/tokenizers/tokenizers-0.19.1-GCCcore-13.2.0.eb @@ -0,0 +1,567 @@ +easyblock = 'CargoPythonBundle' + +name = 'tokenizers' +version = '0.19.1' + +homepage = 'https://github.com/huggingface/tokenizers' +description = "Fast State-of-the-Art Tokenizers optimized for Research and Production" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +crates = [ + ('adler2', '2.0.0'), + ('aho-corasick', '1.1.3'), + ('anes', '0.1.6'), + ('anstream', '0.6.13'), + ('anstyle', '1.0.6'), + ('anstyle', '1.0.8'), + ('anstyle-parse', '0.2.3'), + ('anstyle-query', '1.0.2'), + ('anstyle-wincon', '3.0.2'), + ('assert_approx_eq', '1.1.0'), + ('autocfg', '1.2.0'), + ('autocfg', '1.3.0'), + ('base64', '0.13.1'), + ('base64', '0.22.1'), + ('bit-set', '0.5.3'), + ('bit-vec', '0.6.3'), + ('bitflags', '1.3.2'), + ('bitflags', '2.5.0'), + ('bitflags', '2.6.0'), + ('bumpalo', '3.16.0'), + ('byteorder', '1.5.0'), + ('cast', '0.3.0'), + ('cc', '1.0.94'), + ('cc', '1.1.13'), + ('cfg-if', '1.0.0'), + ('ciborium', '0.2.2'), + ('ciborium-io', '0.2.2'), + ('ciborium-ll', '0.2.2'), + ('clap', '4.5.16'), + ('clap_builder', '4.5.15'), + ('clap_lex', '0.7.2'), + ('colorchoice', '1.0.0'), + ('console', '0.15.8'), + ('core-foundation', '0.9.4'), + ('core-foundation-sys', '0.8.7'), + ('crc32fast', '1.4.2'), + ('criterion', '0.5.1'), + ('criterion-plot', '0.5.0'), + ('crossbeam-deque', '0.8.5'), + ('crossbeam-epoch', '0.9.18'), + ('crossbeam-utils', '0.8.19'), + ('crossbeam-utils', '0.8.20'), + ('crunchy', '0.2.2'), + ('darling', '0.20.8'), + ('darling', '0.20.10'), + ('darling_core', '0.20.8'), + ('darling_core', '0.20.10'), + ('darling_macro', '0.20.8'), + ('darling_macro', '0.20.10'), + ('derive_builder', '0.20.0'), + ('derive_builder_core', '0.20.0'), + ('derive_builder_macro', '0.20.0'), + ('dirs', '5.0.1'), + ('dirs-sys', '0.4.1'), + ('either', '1.11.0'), + ('either', '1.13.0'), + ('encode_unicode', '0.3.6'), + ('env_filter', '0.1.0'), + ('env_logger', '0.11.3'), + ('errno', '0.3.8'), + ('errno', '0.3.9'), + ('esaxx-rs', '0.1.10'), + ('fancy-regex', '0.13.0'), + ('fastrand', '2.0.2'), + ('fastrand', '2.1.0'), + ('flate2', '1.0.32'), + ('fnv', '1.0.7'), + ('foreign-types', '0.3.2'), + ('foreign-types-shared', '0.1.1'), + ('form_urlencoded', '1.2.1'), + ('getrandom', '0.2.14'), + ('getrandom', '0.2.15'), + ('half', '2.4.1'), + ('heck', '0.4.1'), + ('hermit-abi', '0.4.0'), + ('hf-hub', '0.3.2'), + ('humantime', '2.1.0'), + ('ident_case', '1.0.1'), + ('idna', '0.5.0'), + ('indicatif', '0.17.8'), + ('indoc', '2.0.5'), + ('instant', '0.1.12'), + ('instant', '0.1.13'), + ('is-terminal', '0.4.13'), + ('itertools', '0.10.5'), + ('itertools', '0.11.0'), + ('itertools', '0.12.1'), + ('itoa', '1.0.11'), + ('js-sys', '0.3.70'), + ('lazy_static', '1.4.0'), + ('lazy_static', '1.5.0'), + ('libc', '0.2.153'), + ('libc', '0.2.158'), + ('libredox', '0.1.3'), + ('linux-raw-sys', '0.4.13'), + ('linux-raw-sys', '0.4.14'), + ('lock_api', '0.4.11'), + ('log', '0.4.21'), + ('log', '0.4.22'), + ('macro_rules_attribute', '0.2.0'), + ('macro_rules_attribute-proc_macro', '0.2.0'), + ('matrixmultiply', '0.3.8'), + ('memchr', '2.7.2'), + ('memchr', '2.7.4'), + ('memoffset', '0.9.1'), + ('minimal-lexical', '0.2.1'), + ('miniz_oxide', '0.8.0'), + ('monostate', '0.1.12'), + ('monostate', '0.1.13'), + ('monostate-impl', '0.1.12'), + ('monostate-impl', '0.1.13'), + ('native-tls', '0.2.12'), + ('ndarray', '0.15.6'), + ('nom', '7.1.3'), + ('num-complex', '0.4.5'), + ('num-integer', '0.1.46'), + ('num-traits', '0.2.18'), + ('num-traits', '0.2.19'), + ('number_prefix', '0.4.0'), + ('numpy', '0.21.0'), + ('once_cell', '1.19.0'), + ('onig', '6.4.0'), + ('onig_sys', '69.8.1'), + ('oorandom', '11.1.4'), + ('openssl', '0.10.66'), + ('openssl-macros', '0.1.1'), + ('openssl-probe', '0.1.5'), + ('openssl-sys', '0.9.103'), + ('option-ext', '0.2.0'), + ('parking_lot', '0.12.1'), + ('parking_lot_core', '0.9.9'), + ('paste', '1.0.14'), + ('paste', '1.0.15'), + ('percent-encoding', '2.3.1'), + ('pkg-config', '0.3.30'), + ('plotters', '0.3.6'), + ('plotters-backend', '0.3.6'), + ('plotters-svg', '0.3.6'), + ('portable-atomic', '1.6.0'), + ('portable-atomic', '1.7.0'), + ('ppv-lite86', '0.2.17'), + ('ppv-lite86', '0.2.20'), + ('proc-macro2', '1.0.81'), + ('proc-macro2', '1.0.86'), + ('pyo3', '0.21.2'), + ('pyo3-build-config', '0.21.2'), + ('pyo3-ffi', '0.21.2'), + ('pyo3-macros', '0.21.2'), + ('pyo3-macros-backend', '0.21.2'), + ('quote', '1.0.36'), + ('rand', '0.8.5'), + ('rand_chacha', '0.3.1'), + ('rand_core', '0.6.4'), + ('rawpointer', '0.2.1'), + ('rayon', '1.10.0'), + ('rayon-cond', '0.3.0'), + ('rayon-core', '1.12.1'), + ('redox_syscall', '0.4.1'), + ('redox_users', '0.4.6'), + ('regex', '1.10.4'), + ('regex', '1.10.6'), + ('regex-automata', '0.4.6'), + ('regex-automata', '0.4.7'), + ('regex-syntax', '0.8.3'), + ('regex-syntax', '0.8.4'), + ('ring', '0.17.8'), + ('rustc-hash', '1.1.0'), + ('rustix', '0.38.34'), + ('rustix', '0.38.32'), + ('rustls', '0.23.12'), + ('rustls-pki-types', '1.8.0'), + ('rustls-webpki', '0.102.6'), + ('ryu', '1.0.17'), + ('ryu', '1.0.18'), + ('same-file', '1.0.6'), + ('schannel', '0.1.23'), + ('scopeguard', '1.2.0'), + ('security-framework', '2.11.1'), + ('security-framework-sys', '2.11.1'), + ('serde', '1.0.198'), + ('serde', '1.0.208'), + ('serde_derive', '1.0.198'), + ('serde_derive', '1.0.208'), + ('serde_json', '1.0.116'), + ('serde_json', '1.0.125'), + ('shlex', '1.3.0'), + ('smallvec', '1.13.2'), + ('spin', '0.9.8'), + ('spm_precompiled', '0.1.4'), + ('strsim', '0.10.0'), + ('strsim', '0.11.1'), + ('subtle', '2.6.1'), + ('syn', '2.0.60'), + ('syn', '2.0.75'), + ('target-lexicon', '0.12.14'), + ('tempfile', '3.10.1'), + ('tempfile', '3.12.0'), + ('thiserror', '1.0.58'), + ('thiserror', '1.0.63'), + ('thiserror-impl', '1.0.58'), + ('thiserror-impl', '1.0.63'), + ('tinytemplate', '1.2.1'), + ('tinyvec', '1.8.0'), + ('tinyvec_macros', '0.1.1'), + ('unicode-bidi', '0.3.15'), + ('unicode-ident', '1.0.12'), + ('unicode-normalization', '0.1.23'), + ('unicode-normalization-alignments', '0.1.12'), + ('unicode-segmentation', '1.11.0'), + ('unicode-width', '0.1.11'), + ('unicode-width', '0.1.13'), + ('unicode_categories', '0.1.1'), + ('unindent', '0.2.3'), + ('untrusted', '0.9.0'), + ('ureq', '2.10.1'), + ('url', '2.5.2'), + ('utf8parse', '0.2.1'), + ('vcpkg', '0.2.15'), + ('walkdir', '2.5.0'), + ('wasi', '0.11.0+wasi-snapshot-preview1'), + ('wasm-bindgen', '0.2.93'), + ('wasm-bindgen-backend', '0.2.93'), + ('wasm-bindgen-macro', '0.2.93'), + ('wasm-bindgen-macro-support', '0.2.93'), + ('wasm-bindgen-shared', '0.2.93'), + ('web-sys', '0.3.70'), + ('webpki-roots', '0.26.3'), + ('winapi-util', '0.1.9'), + ('windows-sys', '0.48.0'), + ('windows-sys', '0.52.0'), + ('windows-sys', '0.59.0'), + ('windows-targets', '0.48.5'), + ('windows-targets', '0.52.5'), + ('windows-targets', '0.52.6'), + ('windows_aarch64_gnullvm', '0.48.5'), + ('windows_aarch64_gnullvm', '0.52.5'), + ('windows_aarch64_gnullvm', '0.52.6'), + ('windows_aarch64_msvc', '0.48.5'), + ('windows_aarch64_msvc', '0.52.5'), + ('windows_aarch64_msvc', '0.52.6'), + ('windows_i686_gnu', '0.48.5'), + ('windows_i686_gnu', '0.52.5'), + ('windows_i686_gnu', '0.52.6'), + ('windows_i686_gnullvm', '0.52.5'), + ('windows_i686_gnullvm', '0.52.6'), + ('windows_i686_msvc', '0.48.5'), + ('windows_i686_msvc', '0.52.5'), + ('windows_i686_msvc', '0.52.6'), + ('windows_x86_64_gnu', '0.48.5'), + ('windows_x86_64_gnu', '0.52.5'), + ('windows_x86_64_gnu', '0.52.6'), + ('windows_x86_64_gnullvm', '0.48.5'), + ('windows_x86_64_gnullvm', '0.52.5'), + ('windows_x86_64_gnullvm', '0.52.6'), + ('windows_x86_64_msvc', '0.48.5'), + ('windows_x86_64_msvc', '0.52.5'), + ('windows_x86_64_msvc', '0.52.6'), + ('zerocopy', '0.7.35'), + ('zerocopy-derive', '0.7.35'), + ('zeroize', '1.8.1'), +] +sources = [SOURCE_TAR_GZ] +checksums = [ + {'tokenizers-0.19.1.tar.gz': 'ee59e6680ed0fdbe6b724cf38bd70400a0c1dd623b07ac729087270caeac88e3'}, + {'adler2-2.0.0.tar.gz': '512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627'}, + {'aho-corasick-1.1.3.tar.gz': '8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916'}, + {'anes-0.1.6.tar.gz': '4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299'}, + {'anstream-0.6.13.tar.gz': 'd96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb'}, + {'anstyle-1.0.6.tar.gz': '8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc'}, + {'anstyle-1.0.8.tar.gz': '1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1'}, + {'anstyle-parse-0.2.3.tar.gz': 'c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c'}, + {'anstyle-query-1.0.2.tar.gz': 'e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648'}, + {'anstyle-wincon-3.0.2.tar.gz': '1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7'}, + {'assert_approx_eq-1.1.0.tar.gz': '3c07dab4369547dbe5114677b33fbbf724971019f3818172d59a97a61c774ffd'}, + {'autocfg-1.2.0.tar.gz': 'f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80'}, + {'autocfg-1.3.0.tar.gz': '0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0'}, + {'base64-0.13.1.tar.gz': '9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8'}, + {'base64-0.22.1.tar.gz': '72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6'}, + {'bit-set-0.5.3.tar.gz': '0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1'}, + {'bit-vec-0.6.3.tar.gz': '349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb'}, + {'bitflags-1.3.2.tar.gz': 'bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a'}, + {'bitflags-2.5.0.tar.gz': 'cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1'}, + {'bitflags-2.6.0.tar.gz': 'b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de'}, + {'bumpalo-3.16.0.tar.gz': '79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c'}, + {'byteorder-1.5.0.tar.gz': '1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b'}, + {'cast-0.3.0.tar.gz': '37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5'}, + {'cc-1.0.94.tar.gz': '17f6e324229dc011159fcc089755d1e2e216a90d43a7dea6853ca740b84f35e7'}, + {'cc-1.1.13.tar.gz': '72db2f7947ecee9b03b510377e8bb9077afa27176fdbff55c51027e976fdcc48'}, + {'cfg-if-1.0.0.tar.gz': 'baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd'}, + {'ciborium-0.2.2.tar.gz': '42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e'}, + {'ciborium-io-0.2.2.tar.gz': '05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757'}, + {'ciborium-ll-0.2.2.tar.gz': '57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9'}, + {'clap-4.5.16.tar.gz': 'ed6719fffa43d0d87e5fd8caeab59be1554fb028cd30edc88fc4369b17971019'}, + {'clap_builder-4.5.15.tar.gz': '216aec2b177652e3846684cbfe25c9964d18ec45234f0f5da5157b207ed1aab6'}, + {'clap_lex-0.7.2.tar.gz': '1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97'}, + {'colorchoice-1.0.0.tar.gz': 'acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7'}, + {'console-0.15.8.tar.gz': '0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb'}, + {'core-foundation-0.9.4.tar.gz': '91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f'}, + {'core-foundation-sys-0.8.7.tar.gz': '773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b'}, + {'crc32fast-1.4.2.tar.gz': 'a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3'}, + {'criterion-0.5.1.tar.gz': 'f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f'}, + {'criterion-plot-0.5.0.tar.gz': '6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1'}, + {'crossbeam-deque-0.8.5.tar.gz': '613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d'}, + {'crossbeam-epoch-0.9.18.tar.gz': '5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e'}, + {'crossbeam-utils-0.8.19.tar.gz': '248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345'}, + {'crossbeam-utils-0.8.20.tar.gz': '22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80'}, + {'crunchy-0.2.2.tar.gz': '7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7'}, + {'darling-0.20.8.tar.gz': '54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391'}, + {'darling-0.20.10.tar.gz': '6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989'}, + {'darling_core-0.20.8.tar.gz': '9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f'}, + {'darling_core-0.20.10.tar.gz': '95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5'}, + {'darling_macro-0.20.8.tar.gz': 'a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f'}, + {'darling_macro-0.20.10.tar.gz': 'd336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806'}, + {'derive_builder-0.20.0.tar.gz': '0350b5cb0331628a5916d6c5c0b72e97393b8b6b03b47a9284f4e7f5a405ffd7'}, + {'derive_builder_core-0.20.0.tar.gz': 'd48cda787f839151732d396ac69e3473923d54312c070ee21e9effcaa8ca0b1d'}, + {'derive_builder_macro-0.20.0.tar.gz': '206868b8242f27cecce124c19fd88157fbd0dd334df2587f36417bafbc85097b'}, + {'dirs-5.0.1.tar.gz': '44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225'}, + {'dirs-sys-0.4.1.tar.gz': '520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c'}, + {'either-1.11.0.tar.gz': 'a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2'}, + {'either-1.13.0.tar.gz': '60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0'}, + {'encode_unicode-0.3.6.tar.gz': 'a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f'}, + {'env_filter-0.1.0.tar.gz': 'a009aa4810eb158359dda09d0c87378e4bbb89b5a801f016885a4707ba24f7ea'}, + {'env_logger-0.11.3.tar.gz': '38b35839ba51819680ba087cd351788c9a3c476841207e0b8cee0b04722343b9'}, + {'errno-0.3.8.tar.gz': 'a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245'}, + {'errno-0.3.9.tar.gz': '534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba'}, + {'esaxx-rs-0.1.10.tar.gz': 'd817e038c30374a4bcb22f94d0a8a0e216958d4c3dcde369b1439fec4bdda6e6'}, + {'fancy-regex-0.13.0.tar.gz': '531e46835a22af56d1e3b66f04844bed63158bc094a628bec1d321d9b4c44bf2'}, + {'fastrand-2.0.2.tar.gz': '658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984'}, + {'fastrand-2.1.0.tar.gz': '9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a'}, + {'flate2-1.0.32.tar.gz': '9c0596c1eac1f9e04ed902702e9878208b336edc9d6fddc8a48387349bab3666'}, + {'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'}, + {'getrandom-0.2.14.tar.gz': '94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c'}, + {'getrandom-0.2.15.tar.gz': 'c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7'}, + {'half-2.4.1.tar.gz': '6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888'}, + {'heck-0.4.1.tar.gz': '95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8'}, + {'hermit-abi-0.4.0.tar.gz': 'fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc'}, + {'hf-hub-0.3.2.tar.gz': '2b780635574b3d92f036890d8373433d6f9fc7abb320ee42a5c25897fc8ed732'}, + {'humantime-2.1.0.tar.gz': '9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4'}, + {'ident_case-1.0.1.tar.gz': 'b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39'}, + {'idna-0.5.0.tar.gz': '634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6'}, + {'indicatif-0.17.8.tar.gz': '763a5a8f45087d6bcea4222e7b72c291a054edf80e4ef6efd2a4979878c7bea3'}, + {'indoc-2.0.5.tar.gz': 'b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5'}, + {'instant-0.1.12.tar.gz': '7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c'}, + {'instant-0.1.13.tar.gz': 'e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222'}, + {'is-terminal-0.4.13.tar.gz': '261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b'}, + {'itertools-0.10.5.tar.gz': 'b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473'}, + {'itertools-0.11.0.tar.gz': 'b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57'}, + {'itertools-0.12.1.tar.gz': 'ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569'}, + {'itoa-1.0.11.tar.gz': '49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b'}, + {'js-sys-0.3.70.tar.gz': '1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a'}, + {'lazy_static-1.4.0.tar.gz': 'e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646'}, + {'lazy_static-1.5.0.tar.gz': 'bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe'}, + {'libc-0.2.153.tar.gz': '9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd'}, + {'libc-0.2.158.tar.gz': 'd8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439'}, + {'libredox-0.1.3.tar.gz': 'c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d'}, + {'linux-raw-sys-0.4.13.tar.gz': '01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c'}, + {'linux-raw-sys-0.4.14.tar.gz': '78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89'}, + {'lock_api-0.4.11.tar.gz': '3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45'}, + {'log-0.4.21.tar.gz': '90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c'}, + {'log-0.4.22.tar.gz': 'a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24'}, + {'macro_rules_attribute-0.2.0.tar.gz': '8a82271f7bc033d84bbca59a3ce3e4159938cb08a9c3aebbe54d215131518a13'}, + {'macro_rules_attribute-proc_macro-0.2.0.tar.gz': + 'b8dd856d451cc0da70e2ef2ce95a18e39a93b7558bedf10201ad28503f918568'}, + {'matrixmultiply-0.3.8.tar.gz': '7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2'}, + {'memchr-2.7.2.tar.gz': '6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d'}, + {'memchr-2.7.4.tar.gz': '78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3'}, + {'memoffset-0.9.1.tar.gz': '488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a'}, + {'minimal-lexical-0.2.1.tar.gz': '68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a'}, + {'miniz_oxide-0.8.0.tar.gz': 'e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1'}, + {'monostate-0.1.12.tar.gz': 'a20fffcd8ca4c69d31e036a71abc400147b41f90895df4edcb36497a1f8af8bf'}, + {'monostate-0.1.13.tar.gz': '0d208407d7552cd041d8cdb69a1bc3303e029c598738177a3d87082004dc0e1e'}, + {'monostate-impl-0.1.12.tar.gz': 'bf307cbbbd777a9c10cec88ddafee572b3484caad5cce0c9236523c3803105a6'}, + {'monostate-impl-0.1.13.tar.gz': 'a7ce64b975ed4f123575d11afd9491f2e37bbd5813fbfbc0f09ae1fbddea74e0'}, + {'native-tls-0.2.12.tar.gz': 'a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466'}, + {'ndarray-0.15.6.tar.gz': 'adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32'}, + {'nom-7.1.3.tar.gz': 'd273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a'}, + {'num-complex-0.4.5.tar.gz': '23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6'}, + {'num-integer-0.1.46.tar.gz': '7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f'}, + {'num-traits-0.2.18.tar.gz': 'da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a'}, + {'num-traits-0.2.19.tar.gz': '071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841'}, + {'number_prefix-0.4.0.tar.gz': '830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3'}, + {'numpy-0.21.0.tar.gz': 'ec170733ca37175f5d75a5bea5911d6ff45d2cd52849ce98b685394e4f2f37f4'}, + {'once_cell-1.19.0.tar.gz': '3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92'}, + {'onig-6.4.0.tar.gz': '8c4b31c8722ad9171c6d77d3557db078cab2bd50afcc9d09c8b315c59df8ca4f'}, + {'onig_sys-69.8.1.tar.gz': '7b829e3d7e9cc74c7e315ee8edb185bf4190da5acde74afd7fc59c35b1f086e7'}, + {'oorandom-11.1.4.tar.gz': 'b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9'}, + {'openssl-0.10.66.tar.gz': '9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1'}, + {'openssl-macros-0.1.1.tar.gz': 'a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c'}, + {'openssl-probe-0.1.5.tar.gz': 'ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf'}, + {'openssl-sys-0.9.103.tar.gz': '7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6'}, + {'option-ext-0.2.0.tar.gz': '04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d'}, + {'parking_lot-0.12.1.tar.gz': '3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f'}, + {'parking_lot_core-0.9.9.tar.gz': '4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e'}, + {'paste-1.0.14.tar.gz': 'de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c'}, + {'paste-1.0.15.tar.gz': '57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a'}, + {'percent-encoding-2.3.1.tar.gz': 'e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e'}, + {'pkg-config-0.3.30.tar.gz': 'd231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec'}, + {'plotters-0.3.6.tar.gz': 'a15b6eccb8484002195a3e44fe65a4ce8e93a625797a063735536fd59cb01cf3'}, + {'plotters-backend-0.3.6.tar.gz': '414cec62c6634ae900ea1c56128dfe87cf63e7caece0852ec76aba307cebadb7'}, + {'plotters-svg-0.3.6.tar.gz': '81b30686a7d9c3e010b84284bdd26a29f2138574f52f5eb6f794fc0ad924e705'}, + {'portable-atomic-1.6.0.tar.gz': '7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0'}, + {'portable-atomic-1.7.0.tar.gz': 'da544ee218f0d287a911e9c99a39a8c9bc8fcad3cb8db5959940044ecfc67265'}, + {'ppv-lite86-0.2.17.tar.gz': '5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de'}, + {'ppv-lite86-0.2.20.tar.gz': '77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04'}, + {'proc-macro2-1.0.81.tar.gz': '3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba'}, + {'proc-macro2-1.0.86.tar.gz': '5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77'}, + {'pyo3-0.21.2.tar.gz': 'a5e00b96a521718e08e03b1a622f01c8a8deb50719335de3f60b3b3950f069d8'}, + {'pyo3-build-config-0.21.2.tar.gz': '7883df5835fafdad87c0d888b266c8ec0f4c9ca48a5bed6bbb592e8dedee1b50'}, + {'pyo3-ffi-0.21.2.tar.gz': '01be5843dc60b916ab4dad1dca6d20b9b4e6ddc8e15f50c47fe6d85f1fb97403'}, + {'pyo3-macros-0.21.2.tar.gz': '77b34069fc0682e11b31dbd10321cbf94808394c56fd996796ce45217dfac53c'}, + {'pyo3-macros-backend-0.21.2.tar.gz': '08260721f32db5e1a5beae69a55553f56b99bd0e1c3e6e0a5e8851a9d0f5a85c'}, + {'quote-1.0.36.tar.gz': '0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7'}, + {'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.10.0.tar.gz': 'b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa'}, + {'rayon-cond-0.3.0.tar.gz': '059f538b55efd2309c9794130bc149c6a553db90e9d99c2030785c82f0bd7df9'}, + {'rayon-core-1.12.1.tar.gz': '1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2'}, + {'redox_syscall-0.4.1.tar.gz': '4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa'}, + {'redox_users-0.4.6.tar.gz': 'ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43'}, + {'regex-1.10.4.tar.gz': 'c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c'}, + {'regex-1.10.6.tar.gz': '4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619'}, + {'regex-automata-0.4.6.tar.gz': '86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea'}, + {'regex-automata-0.4.7.tar.gz': '38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df'}, + {'regex-syntax-0.8.3.tar.gz': 'adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56'}, + {'regex-syntax-0.8.4.tar.gz': '7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b'}, + {'ring-0.17.8.tar.gz': 'c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d'}, + {'rustc-hash-1.1.0.tar.gz': '08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2'}, + {'rustix-0.38.34.tar.gz': '70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f'}, + {'rustix-0.38.32.tar.gz': '65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89'}, + {'rustls-0.23.12.tar.gz': 'c58f8c84392efc0a126acce10fa59ff7b3d2ac06ab451a33f2741989b806b044'}, + {'rustls-pki-types-1.8.0.tar.gz': 'fc0a2ce646f8655401bb81e7927b812614bd5d91dbc968696be50603510fcaf0'}, + {'rustls-webpki-0.102.6.tar.gz': '8e6b52d4fda176fd835fdc55a835d4a89b8499cad995885a21149d5ad62f852e'}, + {'ryu-1.0.17.tar.gz': 'e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1'}, + {'ryu-1.0.18.tar.gz': 'f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f'}, + {'same-file-1.0.6.tar.gz': '93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502'}, + {'schannel-0.1.23.tar.gz': 'fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534'}, + {'scopeguard-1.2.0.tar.gz': '94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49'}, + {'security-framework-2.11.1.tar.gz': '897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02'}, + {'security-framework-sys-2.11.1.tar.gz': '75da29fe9b9b08fe9d6b22b5b4bcbc75d8db3aa31e639aa56bb62e9d46bfceaf'}, + {'serde-1.0.198.tar.gz': '9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc'}, + {'serde-1.0.208.tar.gz': 'cff085d2cb684faa248efb494c39b68e522822ac0de72ccf08109abde717cfb2'}, + {'serde_derive-1.0.198.tar.gz': 'e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9'}, + {'serde_derive-1.0.208.tar.gz': '24008e81ff7613ed8e5ba0cfaf24e2c2f1e5b8a0495711e44fcd4882fca62bcf'}, + {'serde_json-1.0.116.tar.gz': '3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813'}, + {'serde_json-1.0.125.tar.gz': '83c8e735a073ccf5be70aa8066aa984eaf2fa000db6c8d0100ae605b366d31ed'}, + {'shlex-1.3.0.tar.gz': '0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64'}, + {'smallvec-1.13.2.tar.gz': '3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67'}, + {'spin-0.9.8.tar.gz': '6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67'}, + {'spm_precompiled-0.1.4.tar.gz': '5851699c4033c63636f7ea4cf7b7c1f1bf06d0cc03cfb42e711de5a5c46cf326'}, + {'strsim-0.10.0.tar.gz': '73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623'}, + {'strsim-0.11.1.tar.gz': '7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f'}, + {'subtle-2.6.1.tar.gz': '13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292'}, + {'syn-2.0.60.tar.gz': '909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3'}, + {'syn-2.0.75.tar.gz': 'f6af063034fc1935ede7be0122941bafa9bacb949334d090b77ca98b5817c7d9'}, + {'target-lexicon-0.12.14.tar.gz': 'e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f'}, + {'tempfile-3.10.1.tar.gz': '85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1'}, + {'tempfile-3.12.0.tar.gz': '04cbcdd0c794ebb0d4cf35e88edd2f7d2c4c3e9a5a6dab322839b321c6a87a64'}, + {'thiserror-1.0.58.tar.gz': '03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297'}, + {'thiserror-1.0.63.tar.gz': 'c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724'}, + {'thiserror-impl-1.0.58.tar.gz': 'c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7'}, + {'thiserror-impl-1.0.63.tar.gz': 'a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261'}, + {'tinytemplate-1.2.1.tar.gz': 'be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc'}, + {'tinyvec-1.8.0.tar.gz': '445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938'}, + {'tinyvec_macros-0.1.1.tar.gz': '1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20'}, + {'unicode-bidi-0.3.15.tar.gz': '08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75'}, + {'unicode-ident-1.0.12.tar.gz': '3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b'}, + {'unicode-normalization-0.1.23.tar.gz': 'a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5'}, + {'unicode-normalization-alignments-0.1.12.tar.gz': + '43f613e4fa046e69818dd287fdc4bc78175ff20331479dab6e1b0f98d57062de'}, + {'unicode-segmentation-1.11.0.tar.gz': 'd4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202'}, + {'unicode-width-0.1.11.tar.gz': 'e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85'}, + {'unicode-width-0.1.13.tar.gz': '0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d'}, + {'unicode_categories-0.1.1.tar.gz': '39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e'}, + {'unindent-0.2.3.tar.gz': 'c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce'}, + {'untrusted-0.9.0.tar.gz': '8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1'}, + {'ureq-2.10.1.tar.gz': 'b74fc6b57825be3373f7054754755f03ac3a8f5d70015ccad699ba2029956f4a'}, + {'url-2.5.2.tar.gz': '22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c'}, + {'utf8parse-0.2.1.tar.gz': '711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a'}, + {'vcpkg-0.2.15.tar.gz': 'accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426'}, + {'walkdir-2.5.0.tar.gz': '29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b'}, + {'wasi-0.11.0+wasi-snapshot-preview1.tar.gz': '9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423'}, + {'wasm-bindgen-0.2.93.tar.gz': 'a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5'}, + {'wasm-bindgen-backend-0.2.93.tar.gz': '9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b'}, + {'wasm-bindgen-macro-0.2.93.tar.gz': '585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf'}, + {'wasm-bindgen-macro-support-0.2.93.tar.gz': 'afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836'}, + {'wasm-bindgen-shared-0.2.93.tar.gz': 'c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484'}, + {'web-sys-0.3.70.tar.gz': '26fdeaafd9bd129f65e7c031593c24d62186301e0c72c8978fa1678be7d532c0'}, + {'webpki-roots-0.26.3.tar.gz': 'bd7c23921eeb1713a4e851530e9b9756e4fb0e89978582942612524cf09f01cd'}, + {'winapi-util-0.1.9.tar.gz': 'cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb'}, + {'windows-sys-0.48.0.tar.gz': '677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9'}, + {'windows-sys-0.52.0.tar.gz': '282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d'}, + {'windows-sys-0.59.0.tar.gz': '1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b'}, + {'windows-targets-0.48.5.tar.gz': '9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c'}, + {'windows-targets-0.52.5.tar.gz': '6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb'}, + {'windows-targets-0.52.6.tar.gz': '9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973'}, + {'windows_aarch64_gnullvm-0.48.5.tar.gz': '2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8'}, + {'windows_aarch64_gnullvm-0.52.5.tar.gz': '7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263'}, + {'windows_aarch64_gnullvm-0.52.6.tar.gz': '32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3'}, + {'windows_aarch64_msvc-0.48.5.tar.gz': 'dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc'}, + {'windows_aarch64_msvc-0.52.5.tar.gz': '9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6'}, + {'windows_aarch64_msvc-0.52.6.tar.gz': '09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469'}, + {'windows_i686_gnu-0.48.5.tar.gz': 'a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e'}, + {'windows_i686_gnu-0.52.5.tar.gz': '88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670'}, + {'windows_i686_gnu-0.52.6.tar.gz': '8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b'}, + {'windows_i686_gnullvm-0.52.5.tar.gz': '87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9'}, + {'windows_i686_gnullvm-0.52.6.tar.gz': '0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66'}, + {'windows_i686_msvc-0.48.5.tar.gz': '8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406'}, + {'windows_i686_msvc-0.52.5.tar.gz': 'db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf'}, + {'windows_i686_msvc-0.52.6.tar.gz': '240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66'}, + {'windows_x86_64_gnu-0.48.5.tar.gz': '53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e'}, + {'windows_x86_64_gnu-0.52.5.tar.gz': '4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9'}, + {'windows_x86_64_gnu-0.52.6.tar.gz': '147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78'}, + {'windows_x86_64_gnullvm-0.48.5.tar.gz': '0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc'}, + {'windows_x86_64_gnullvm-0.52.5.tar.gz': '852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596'}, + {'windows_x86_64_gnullvm-0.52.6.tar.gz': '24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d'}, + {'windows_x86_64_msvc-0.48.5.tar.gz': 'ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538'}, + {'windows_x86_64_msvc-0.52.5.tar.gz': 'bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0'}, + {'windows_x86_64_msvc-0.52.6.tar.gz': '589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec'}, + {'zerocopy-0.7.35.tar.gz': '1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0'}, + {'zerocopy-derive-0.7.35.tar.gz': 'fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e'}, + {'zeroize-1.8.1.tar.gz': 'ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde'}, +] + +_rust_ver = '1.76.0' +builddependencies = [ + ('binutils', '2.40'), + ('Rust', _rust_ver), + ('maturin', '1.5.0', '-Rust-%s' % _rust_ver), +] + +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), # fsspec, filelock used by hf-hub + ('PyYAML', '6.0.1'), # used by hf-hub + ('tqdm', '4.66.2'), # used by hf-hub +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('huggingface-hub', '0.24.6', { + 'source_tmpl': 'huggingface_hub-%(version)s.tar.gz', + 'checksums': ['cc2579e761d070713eaa9c323e3debe39d5b464ae3a7261c39a9195b27bb8000'], + }), + (name, version, { + 'checksums': ['ee59e6680ed0fdbe6b724cf38bd70400a0c1dd623b07ac729087270caeac88e3'], + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/trusTEr/trusTEr-0.1.1-20241025-foss-2023a.eb b/easybuild/easyconfigs/t/trusTEr/trusTEr-0.1.1-20241025-foss-2023a.eb new file mode 100644 index 00000000000..3bea1107bfc --- /dev/null +++ b/easybuild/easyconfigs/t/trusTEr/trusTEr-0.1.1-20241025-foss-2023a.eb @@ -0,0 +1,36 @@ +easyblock = 'PythonPackage' + +name = 'trusTEr' +version = '0.1.1-20241025' +local_commit = '6358eef' + +homepage = 'https://github.com/raquelgarza/truster' +description = """Takes fastq files from 10x single cell RNA sequencing, clusters cells using Seurat, +and can be used to produce read count matrices in a cluster level. +You can also quantify reads per cluster having predefined clusters.""" + +source_urls = ['https://github.com/raquelgarza/truster/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['ef6f454a73f545e5f90a28a80d388afb763a43ac1256f3c182bf947728b4e39a'] + +toolchain = {'name': 'foss', 'version': '2023a'} + +dependencies = [ + ('Python', '3.11.3'), + ('SciPy-bundle', '2023.07'), + ('CellRanger', '8.0.1', '', SYSTEM), + ('R', '4.3.2'), + ('R-bundle-CRAN', '2023.12'), + ('Seurat', '5.1.0', '-R-%(rver)s'), + ('STAR', '2.7.11a'), + ('velocyto', '0.17.17'), + ('TEtranscripts', '2.2.3'), + ('bamtofastq', '1.4.1'), + ('subset-bam', '1.1.0', '', SYSTEM), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.3.0-GCCcore-13.3.0-CUDA-12.6.0.eb b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.3.0-GCCcore-13.3.0-CUDA-12.6.0.eb new file mode 100644 index 00000000000..a0b4865a721 --- /dev/null +++ b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.3.0-GCCcore-13.3.0-CUDA-12.6.0.eb @@ -0,0 +1,55 @@ +easyblock = 'ConfigureMake' + +name = 'UCC-CUDA' +version = '1.3.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.openucx.org/' +description = """UCC (Unified Collective Communication) is a collective +communication operations API and library that is flexible, complete, and +feature-rich for current and emerging programming models and runtimes. + +This module adds the UCC CUDA support. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucc/archive/refs/tags'] +sources = ['v%(version)s.tar.gz'] +patches = [ + '%(name)s-%(version)s_link_against_existing_UCC_libs.patch', +] +checksums = [ + {'v1.3.0.tar.gz': 'b56379abe5f1c125bfa83be305d78d81a64aa271b7b5fff0ac17b86725ff3acf'}, + {'UCC-CUDA-1.3.0_link_against_existing_UCC_libs.patch': + '758228357ce2a6ae50fb26a0b43e9176feaf379e266365f38205ce679267fc0d'}, +] + +builddependencies = [ + ('binutils', '2.42'), + ('Autotools', '20231222'), +] + +dependencies = [ + ('UCC', version), + ('CUDA', '12.6.0', '', SYSTEM), + ('UCX-CUDA', '1.16.0', '-CUDA-%(cudaver)s'), + ('NCCL', '2.22.3', '-CUDA-%(cudaver)s'), +] + +preconfigopts = "./autogen.sh && " + +buildopts = '-C src/components/mc/cuda V=1 && make -C src/components/tl/nccl V=1' +installopts = '-C src/components/mc/cuda && make -C src/components/tl/nccl install' + +sanity_check_paths = { + 'files': ['lib/ucc/libucc_mc_cuda.%s' % SHLIB_EXT, 'lib/ucc/libucc_tl_nccl.%s' % SHLIB_EXT], + 'dirs': ['lib'] +} + +sanity_check_commands = ["ucc_info -c"] + +modextrapaths = {'EB_UCC_EXTRA_COMPONENT_PATH': 'lib/ucc'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.3.0_link_against_existing_UCC_libs.patch b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.3.0_link_against_existing_UCC_libs.patch new file mode 100644 index 00000000000..5d005e067f7 --- /dev/null +++ b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.3.0_link_against_existing_UCC_libs.patch @@ -0,0 +1,27 @@ +Make CUDA/NCCL plugins link against the existing ucc libraries. + +Bart Oldeman, 2022-08-02 +Mikael OEhman, 2023-06-16 +diff -ur ucc-1.3.0.orig/src/components/mc/cuda/Makefile.am ucc-1.3.0/src/components/ec/cuda/Makefile.am +--- ucc-1.3.0.orig/src/components/mc/cuda/Makefile.am.orig 2023-06-16 12:56:53.205939925 +0200 ++++ ucc-1.3.0/src/components/mc/cuda/Makefile.am 2023-06-16 13:02:21.716110609 +0200 +@@ -14,7 +14,7 @@ + libucc_mc_cuda_la_CFLAGS = $(BASE_CFLAGS) + libucc_mc_cuda_la_LDFLAGS = -version-info $(SOVERSION) --as-needed $(CUDA_LDFLAGS) + libucc_mc_cuda_la_LIBADD = $(CUDA_LIBS) \ +- $(UCC_TOP_BUILDDIR)/src/libucc.la ++ -lucc + + include $(top_srcdir)/config/module.am + endif +diff -ur ucc-1.0.0.orig/src/components/tl/nccl/Makefile.am ucc-1.0.0/src/components/tl/nccl/Makefile.am +--- ucc-1.0.0.orig/src/components/tl/nccl/Makefile.am 2022-04-15 12:43:33.000000000 +0000 ++++ ucc-1.0.0/src/components/tl/nccl/Makefile.am 2022-08-02 12:13:59.334795989 +0000 +@@ -21,6 +21,6 @@ + libucc_tl_nccl_la_CPPFLAGS = $(AM_CPPFLAGS) $(BASE_CPPFLAGS) $(CUDA_CPPFLAGS) $(NCCL_CPPFLAGS) + libucc_tl_nccl_la_CFLAGS = $(BASE_CFLAGS) + libucc_tl_nccl_la_LDFLAGS = -version-info $(SOVERSION) --as-needed $(CUDA_LDFLAGS) $(NCCL_LDFLAGS) +-libucc_tl_nccl_la_LIBADD = $(CUDA_LIBS) $(NCCL_LIBADD) $(UCC_TOP_BUILDDIR)/src/libucc.la ++libucc_tl_nccl_la_LIBADD = $(CUDA_LIBS) $(NCCL_LIBADD) -lucc + + include $(top_srcdir)/config/module.am diff --git a/easybuild/easyconfigs/u/UDUNITS/UDUNITS-2.2.28-GCCcore-13.3.0.eb b/easybuild/easyconfigs/u/UDUNITS/UDUNITS-2.2.28-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..12a51d8afd4 --- /dev/null +++ b/easybuild/easyconfigs/u/UDUNITS/UDUNITS-2.2.28-GCCcore-13.3.0.eb @@ -0,0 +1,44 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2013 University of Luxembourg, Ghent University +# Authors:: Fotis Georgatos , Kenneth Hoste (Ghent University) +# 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-97.html +## + +easyblock = 'ConfigureMake' + +name = 'UDUNITS' +version = '2.2.28' + +homepage = 'https://www.unidata.ucar.edu/software/udunits/' +description = """UDUNITS supports conversion of unit specifications between formatted and binary forms, + arithmetic manipulation of units, and conversion of values between compatible scales of measurement.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'https://artifacts.unidata.ucar.edu/repository/downloads-udunits/%(version)s/', + 'https://sources.easybuild.io/u/UDUNITS/', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['590baec83161a3fd62c00efa66f6113cec8a7c461e3f61a5182167e0cc5d579e'] + +builddependencies = [('binutils', '2.42')] + +dependencies = [('expat', '2.6.2')] + +sanity_check_paths = { + 'files': ['bin/udunits2', 'include/converter.h', 'include/udunits2.h', 'include/udunits.h', + 'lib/libudunits2.a', 'lib/libudunits2.%s' % SHLIB_EXT], + 'dirs': ['share'], +} + +parallel = 1 + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/v/VTune/VTune-2024.3.0.eb b/easybuild/easyconfigs/v/VTune/VTune-2024.3.0.eb new file mode 100644 index 00000000000..a7340fe52b8 --- /dev/null +++ b/easybuild/easyconfigs/v/VTune/VTune-2024.3.0.eb @@ -0,0 +1,25 @@ + +name = 'VTune' +version = '2024.3.0' + +homepage = 'https://www.intel.com/content/www/us/en/developer/tools/oneapi/vtune-profiler.html' +description = """Intel® VTune™ Profiler optimizes application performance, system performance, + and system configuration for HPC, cloud, IoT, media, storage, and more.""" + +toolchain = SYSTEM + +# By downloading, you accept the Intel End User License Agreement +# (https://software.intel.com/content/www/us/en/develop/articles/end-user-license-agreement.html) +# accept_eula = True +source_urls = ['https://registrationcenter-download.intel.com/akdlm/IRC_NAS/d7e1fdb1-cfc7-40fb-bf46-3719e9372d67/'] +sources = ['l_oneapi_vtune_p_%(version)s.31_offline.sh'] +checksums = ['da9f45ee4a5ea337756e85e58e40b235417cffbca6813cf224db49061947253d'] + +sanity_check_paths = { + 'files': ['%(namelower)s/%(version_major_minor)s/bin64/amplxe-perf'], + 'dirs': ['%(namelower)s/%(version_major_minor)s/bin64', + '%(namelower)s/%(version_major_minor)s/lib64', + '%(namelower)s/%(version_major_minor)s/include/intel64'] +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/v/VTune/VTune-2025.0.0.eb b/easybuild/easyconfigs/v/VTune/VTune-2025.0.0.eb new file mode 100644 index 00000000000..1be37c7d69e --- /dev/null +++ b/easybuild/easyconfigs/v/VTune/VTune-2025.0.0.eb @@ -0,0 +1,24 @@ +name = 'VTune' +version = '2025.0.0' + +homepage = 'https://software.intel.com/en-us/vtune' +description = """Intel VTune Amplifier XE is the premier performance profiler for C, C++, C#, Fortran, + Assembly and Java.""" + +toolchain = SYSTEM + +# By downloading, you accept the Intel End User License Agreement +# (https://software.intel.com/content/www/us/en/develop/articles/end-user-license-agreement.html) +# accept_eula = True +source_urls = ['https://registrationcenter-download.intel.com/akdlm/IRC_NAS/e7797b12-ce87-4df0-aa09-df4a272fc5d9/'] +sources = ['intel-vtune-%(version)s.1130_offline.sh'] +checksums = ['6742e5c6b1cd6e4efb794bde5d995ba738be1a991ac84678e0efca04fc080074'] + +sanity_check_paths = { + 'files': ['%(namelower)s/%(version_major_minor)s/bin64/amplxe-perf'], + 'dirs': ['%(namelower)s/%(version_major_minor)s/bin64', + '%(namelower)s/%(version_major_minor)s/lib64', + '%(namelower)s/%(version_major_minor)s/include/intel64'] +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/v/Valgrind/Valgrind-3.24.0-gompi-2024a.eb b/easybuild/easyconfigs/v/Valgrind/Valgrind-3.24.0-gompi-2024a.eb new file mode 100644 index 00000000000..2c2922383b6 --- /dev/null +++ b/easybuild/easyconfigs/v/Valgrind/Valgrind-3.24.0-gompi-2024a.eb @@ -0,0 +1,46 @@ +easyblock = 'ConfigureMake' + +name = 'Valgrind' +version = '3.24.0' + +homepage = 'https://valgrind.org' +description = "Valgrind: Debugging and profiling tools" + +toolchain = {'name': 'gompi', 'version': '2024a'} +toolchainopts = {'optarch': True} + +source_urls = [ + 'https://sourceware.org/pub/valgrind/', + 'https://www.mirrorservice.org/sites/sourceware.org/pub/valgrind/', +] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['71aee202bdef1ae73898ccf7e9c315134fa7db6c246063afc503aef702ec03bd'] + +dependencies = [ + ('Perl', '5.38.2'), + ('Python', '3.12.3'), +] + +configopts = ' --with-mpicc="$MPICC"' + +local_binaries = [ + 'callgrind_annotate', 'callgrind_control', 'cg_annotate', 'cg_diff', + 'cg_merge', 'ms_print', 'valgrind', 'valgrind-listener', 'vgdb' +] +local_archs = ('amd64', 'arm64', 'ppc64le') + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_binaries] + + [['lib/valgrind/libmpiwrap-%s-linux.%s' % (a, SHLIB_EXT) for a in local_archs]], + 'dirs': [] +} + +sanity_check_commands = [ + 'callgrind_annotate --version 2>&1 | grep "%(version)s"', + 'cg_annotate --help', + 'ms_print --version 2>&1 | grep "%(version)s"', + 'valgrind --help', + 'vgdb --help', +] + +moduleclass = 'debugger' diff --git a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2023b.eb b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2023b.eb new file mode 100644 index 00000000000..e1bedb6ba07 --- /dev/null +++ b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2023b.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': '2023b'} +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/x/Xvfb/Xvfb-21.1.14-GCCcore-13.3.0.eb b/easybuild/easyconfigs/x/Xvfb/Xvfb-21.1.14-GCCcore-13.3.0.eb new file mode 100644 index 00000000000..1ee18273171 --- /dev/null +++ b/easybuild/easyconfigs/x/Xvfb/Xvfb-21.1.14-GCCcore-13.3.0.eb @@ -0,0 +1,126 @@ +easyblock = 'Bundle' + +name = 'Xvfb' +version = '21.1.14' + +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.3.0'} + +builddependencies = [ + ('binutils', '2.42'), + ('pkgconf', '2.2.0'), + ('Python', '3.12.3'), + ('Meson', '1.4.0'), + ('Ninja', '1.12.1'), + ('libxslt', '1.1.42'), + ('gettext', '0.22.5'), + ('Bison', '3.8.2'), +] + +dependencies = [ + ('X11', '20240607'), + ('pixman', '0.43.4'), + ('libdrm', '2.4.122'), + ('Mesa', '24.1.3'), + ('nettle', '3.10'), + ('libunwind', '1.8.1'), + ('XZ', '5.4.5'), +] + +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.3', { + 'source_urls': ['https://www.x.org/archive/individual/app/'], + 'checksums': ['3a026b468874eb672a1d0a57dbd3ddeda4f0df09886caf97d30097b70c2df3f8'], + }), + ('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.7', { + 'source_urls': ['https://www.x.org/archive/individual/app/'], + 'checksums': ['00cecc490fcbe2f789cf13c408c459673c2c33ab758d802677321cffcda35373'], + }), + ('xkeyboard-config', '2.43', { + 'easyblock': 'MesonNinja', + 'source_urls': ['https://www.x.org/archive/individual/data/xkeyboard-config/'], + 'sources': [SOURCE_TAR_XZ], + 'checksums': ['c810f362c82a834ee89da81e34cd1452c99789339f46f6037f4b9e227dd06c01'], + 'configopts': '-Dxorg-rules-symlinks=true', + }), + ('xauth', '1.1.3', { + 'source_urls': ['https://www.x.org/releases/individual/app/'], + 'checksums': ['88c288e0a30bf071631118644f5232cae3a79713a7c82dd31a236e8e2c6fca15'], + }), + ('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': [ + 'b79dbaf668c67da25c4eb5b395eec60f2593240519aefdd3e8645023ef46226f', # xorg-server-21.1.14.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/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index 8279a98c16b..4b1c4dd770e 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -1212,12 +1212,12 @@ def test_pr_sanity_check_paths(self): """Make sure a custom sanity_check_paths value is specified for easyconfigs that use a generic easyblock.""" # some generic easyblocks already have a decent customised sanity_check_paths, - # including CargoPythonPackage, CMakePythonPackage, GoPackage, JuliaBundle, PerlBundle, + # including CargoPythonPackage, CMakePythonPackage, GoPackage, JuliaBundle & JuliaPackage, PerlBundle, # PythonBundle & PythonPackage; # BuildEnv, ModuleRC and Toolchain easyblocks doesn't install anything so there is nothing to check. whitelist = ['BuildEnv', 'CargoPythonBundle', 'CargoPythonPackage', 'CMakePythonPackage', - 'ConfigureMakePythonPackage', 'CrayToolchain', 'GoPackage', 'JuliaBundle', 'ModuleRC', - 'PerlBundle', 'PythonBundle', 'PythonPackage', 'Toolchain'] + 'ConfigureMakePythonPackage', 'CrayToolchain', 'GoPackage', 'JuliaBundle', 'JuliaPackage', + '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,